:root{--ink:#101828;--muted:#667085;--line:#e4e7ec;--paper:#fff;--soft:#f5f8fc;--blue:#155eef;--blue2:#0b3fa8;--dark:#07111f;--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}a{text-decoration:none;color:inherit}.container{width:min(1140px,92%);margin:auto}.site-header{height:78px;border-bottom:1px solid rgba(16,24,40,.08);background:rgba(255,255,255,.94);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:39px;height:39px;border-radius:11px;background:var(--blue);color:white;display:grid;place-items:center;font-size:13px;font-weight:800;letter-spacing:-1px}.brand strong,.brand small{display:block;line-height:1.1}.brand strong{font-size:15px}.brand small{font-size:11px;color:var(--muted);margin-top:4px}.nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}.nav a{color:#344054}.nav a:hover{color:var(--blue)}.nav .nav-cta{background:var(--ink);color:white;padding:10px 17px;border-radius:10px}.nav-toggle{display:none;border:0;background:none;font-size:25px}.hero{position:relative;overflow:hidden;background:linear-gradient(145deg,#f7faff 0%,#fff 55%,#eef5ff 100%);padding:92px 0 75px}.hero-glow{position:absolute;width:550px;height:550px;border-radius:50%;right:-180px;top:-220px;background:rgba(21,94,239,.08);filter:blur(5px)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center;position:relative}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.7px;color:var(--blue);display:inline-block;margin-bottom:13px}.hero h1,.page-hero h1{font-size:clamp(42px,6vw,72px);line-height:1.03;letter-spacing:-3px;margin:0 0 23px}.hero h1 span{color:var(--blue)}.hero-copy>p{font-size:18px;color:#475467;max-width:650px}.hero-actions{display:flex;gap:12px;margin:29px 0 35px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;cursor:pointer;border-radius:11px;padding:13px 20px;font-weight:750;font-size:14px}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 8px 22px rgba(21,94,239,.18)}.btn-primary:hover{background:var(--blue2)}.btn-ghost{background:white;border:1px solid var(--line);color:var(--ink)}.hero-trust{display:flex;gap:28px}.hero-trust div{display:flex;gap:9px;align-items:center}.hero-trust strong{font-size:12px;color:var(--blue)}.hero-trust span{font-size:11px;color:#667085;line-height:1.35}.hero-card{background:#0a1423;border:1px solid #1d2b40;border-radius:20px;box-shadow:0 30px 70px rgba(5,20,40,.22);overflow:hidden;transform:rotate(1deg)}.terminal-top{height:46px;display:flex;align-items:center;gap:7px;padding:0 17px;border-bottom:1px solid #1c2a3d;color:#8190a5;font-size:11px}.terminal-top span{width:8px;height:8px;border-radius:50%;background:#667085}.terminal-top b{margin-left:auto;font-weight:500}.code{padding:28px 28px 15px;color:#c9d6e8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;line-height:1.9;min-height:280px}.code p{margin:0}.code i{color:#7dd3fc}.code em{color:#c084fc;font-style:normal}.code strong{color:#86efac}.code .accent{color:#67e8f9}.code .muted{color:#607089}.status{margin:0 18px 18px;padding:10px 12px;border-radius:9px;background:#111e30;color:#91a0b5;font-size:11px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c55e;margin-right:8px}.section{padding:92px 0}.section-head{max-width:730px;margin-bottom:42px}.section-head h2,.split h2,.cta-box h2{font-size:42px;line-height:1.12;letter-spacing:-1.7px;margin:0 0 14px}.section-head p,.split p{color:var(--muted);font-size:16px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{padding:27px;border:1px solid var(--line);border-radius:18px;background:#fff;min-height:315px;position:relative}.service-card.featured{background:#0d1b2d;color:#fff;border-color:#0d1b2d;transform:translateY(-10px)}.service-card.featured p,.service-card.featured .service-no{color:#a9b8cb}.service-card .service-no{position:absolute;right:23px;top:24px;color:#98a2b3;font-size:11px;font-weight:800}.icon{font-size:31px;color:var(--blue);margin:22px 0}.service-card h3{font-size:20px;line-height:1.2;margin:0 0 12px}.service-card p{color:var(--muted);font-size:14px}.service-card a{position:absolute;bottom:25px;font-size:13px;font-weight:750;color:var(--blue)}.dark-band{background:var(--dark);color:#fff;padding:75px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split p{color:#aeb9c8}.text-link{color:var(--blue);font-weight:750;font-size:14px}.cta-section{padding-top:70px}.cta-box{border:1px solid var(--line);border-radius:22px;padding:44px 50px;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-box h2{margin-bottom:7px}.cta-box p{margin:0;color:var(--muted)}.page-hero{background:var(--soft);padding:75px 0 70px}.page-hero h1{font-size:clamp(40px,5vw,61px);max-width:850px}.page-hero p{max-width:680px;color:var(--muted);font-size:17px}.about-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:center}.about-grid h2{font-size:44px;letter-spacing:-1.5px;line-height:1.1}.about-grid p{color:var(--muted)}.about-panel{background:#0d1b2d;color:white;border-radius:22px;padding:50px;text-align:center}.big-mark{width:110px;height:110px;border-radius:30px;background:var(--blue);display:grid;place-items:center;margin:auto auto 25px;font-size:31px;font-weight:900}.about-panel h3{margin:0}.about-panel p{color:#d4deea;font-size:18px}.light-section{background:var(--soft)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.steps>div{border-top:2px solid var(--ink);padding-top:18px}.steps b{color:var(--blue);font-size:12px}.steps h3{margin:12px 0 5px}.steps p{color:var(--muted);font-size:14px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:20px;overflow:hidden}.stats div{padding:30px;border-right:1px solid var(--line)}.stats div:last-child{border-right:0}.stats strong{font-size:40px;display:block;line-height:1}.stats span{color:var(--muted);font-size:13px}.service-list{display:grid;gap:18px}.service-list article{display:grid;grid-template-columns:100px 1fr;gap:35px;padding:36px;border:1px solid var(--line);border-radius:19px}.service-icon{font-size:42px;color:var(--blue)}.service-list h2{margin:0 0 10px;font-size:29px}.service-list p,.service-list li{color:var(--muted)}.service-list ul{padding-left:20px}.cta-inline{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-inline h2{margin:0;font-size:32px}.cta-inline p{color:#aeb9c8}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}.project-visual{height:230px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff}.project-visual span{font-size:10px;letter-spacing:1.5px;font-weight:800;margin-bottom:12px}.project-visual strong{font-size:27px;line-height:1.1}.web-app{background:linear-gradient(135deg,#12305a,#1769d1)}.website{background:linear-gradient(135deg,#202b3b,#68758a)}.research{background:linear-gradient(135deg,#172b2c,#2f7773)}.project h3{font-size:18px;margin:20px 22px 7px}.project p{font-size:13px;color:var(--muted);margin:0 22px 24px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact-info h2{font-size:42px;line-height:1.1;letter-spacing:-1.5px}.contact-item{border-top:1px solid var(--line);padding:18px 0}.contact-item b{font-size:12px;color:var(--blue);text-transform:uppercase;letter-spacing:1px}.contact-item p{margin:5px 0;color:var(--muted)}.contact-form{padding:32px;border:1px solid var(--line);border-radius:20px}.contact-form label,.login-card label{display:block;font-size:13px;font-weight:700;margin-bottom:17px}.contact-form input,.contact-form select,.contact-form textarea,.login-card input{width:100%;margin-top:7px;padding:13px 14px;border:1px solid #d0d5dd;border-radius:9px;font:inherit;outline:none;background:#fff}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.login-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(21,94,239,.08)}.alert{padding:12px 14px;border-radius:9px;font-size:13px;margin-bottom:18px}.success{background:#ecfdf3;color:#027a48}.error{background:#fef3f2;color:#b42318}.footer{background:#08111e;color:#d4dbe5;padding:60px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}.footer-brand{color:white}.footer p{color:#8f9baa;font-size:13px}.footer h4{color:#fff;margin:0 0 14px}.footer a{display:block;color:#8f9baa;font-size:13px;margin:8px 0}.copyright{border-top:1px solid #1d2938;text-align:center;color:#718096;font-size:11px;padding:20px;margin-top:45px}.admin-page{background:var(--soft);min-height:100vh}.login-card{width:min(430px,92%);margin:10vh auto;background:#fff;border:1px solid var(--line);border-radius:20px;padding:35px;box-shadow:0 20px 50px rgba(16,24,40,.08)}.login-card h1{margin:30px 0 20px}.login-card .btn{width:100%}.back-link{display:block;text-align:center;margin-top:20px;color:var(--muted);font-size:13px}.admin-shell{min-height:100vh}.admin-head{height:78px;background:#fff;border-bottom:1px solid var(--line);padding:0 4%;display:flex;align-items:center;justify-content:space-between}.admin-main{width:min(1200px,92%);margin:45px auto}.dash-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.dash-title h1{margin:0}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:15px}table{width:100%;border-collapse:collapse;min-width:850px}th,td{text-align:left;padding:15px;border-bottom:1px solid var(--line);font-size:12px;vertical-align:top}th{background:var(--soft);font-size:11px;text-transform:uppercase;letter-spacing:.6px}@media(max-width:900px){.hero-grid,.about-grid,.contact-grid,.split{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.portfolio-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.hero-card{max-width:650px}.cta-box{display:block}.cta-box .btn{margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.site-header{height:68px}.nav-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:68px;background:#fff;border-bottom:1px solid var(--line);padding:20px 4%;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.hero{padding:60px 0}.hero h1,.page-hero h1{letter-spacing:-2px}.hero-trust{gap:12px;flex-wrap:wrap}.service-grid,.portfolio-grid,.steps,.stats{grid-template-columns:1fr}.service-card.featured{transform:none}.service-list article{grid-template-columns:1fr;gap:10px}.cta-inline{display:block}.footer-grid{grid-template-columns:1fr}.stats div{border-right:0;border-bottom:1px solid var(--line)}.stats div:last-child{border-bottom:0}.contact-form{padding:22px}.section{padding:65px 0}}
/* Brand imagery upgrade */
.site-logo{width:250px;height:auto;display:block}.footer-logo{width:230px;height:auto;filter:brightness(0) invert(1);opacity:.95}.hero-photo{position:absolute;right:0;top:0;width:49%;height:100%;overflow:hidden;z-index:0}.hero-photo img{width:100%;height:100%;object-fit:cover;opacity:.88}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f7faff 0%,rgba(247,250,255,.22) 34%,rgba(7,17,31,.08) 100%)}.hero-grid{z-index:1}.image-about-band{padding:85px 0;background:#f7f9fc}.image-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.image-frame{border-radius:22px;overflow:hidden;box-shadow:0 25px 55px rgba(16,24,40,.13)}.image-frame img{display:block;width:100%;height:360px;object-fit:cover}.image-about-grid h2{font-size:42px;line-height:1.12;letter-spacing:-1.6px;margin:0 0 15px}.image-about-grid p{color:var(--muted)}.about-image{width:100%;height:210px;object-fit:cover;border-radius:14px;margin-bottom:25px}.project-image{height:230px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.project:hover .project-image img{transform:scale(1.04)}
@media(max-width:900px){.hero-photo{position:relative;width:100%;height:260px;order:2;margin-top:30px;border-radius:20px}.hero-photo:after{background:linear-gradient(180deg,rgba(247,250,255,0),rgba(7,17,31,.1))}.hero-grid{display:flex;flex-direction:column}.hero-card{display:none}.image-about-grid{grid-template-columns:1fr}.site-logo{width:210px}}
@media(max-width:650px){.site-logo{width:190px}.footer-logo{width:200px}.image-frame img{height:260px}.image-about-grid h2{font-size:34px}}

/* User-supplied Brainstorm Technologies Consult logo */
.site-logo,
.footer-logo {
    width: 78px;
    height: 78px;
    object-fit: cover;
    border-radius: 10px;
    background: #16075c;
}
.site-logo { display: block; }
.footer-logo { width: 92px; height: 92px; }
@media (max-width: 768px) {
    .site-logo { width: 62px; height: 62px; }
    .footer-logo { width: 76px; height: 76px; }
}

/* =========================================
   WHATSAPP BUTTONS
   ========================================= */

/* CTA BUTTON AREA */
.cta-actions {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
}


/* WHATSAPP CTA BUTTON */
.btn-whatsapp {
    background: #25D366;
    color: #ffffff !important;
    border: 1px solid #25D366;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.btn-whatsapp:hover {
    background: #1ebe5d;
    border-color: #1ebe5d;
    color: #ffffff !important;
    transform: translateY(-2px);
}


/* FLOATING WHATSAPP BUTTON */
.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    right: 25px;
    bottom: 25px;

    background: #25D366;
    color: #ffffff;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    text-decoration: none;

    font-size: 30px;
    font-weight: bold;

    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);

    z-index: 9999;

    transition:
        transform 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}


/* HOVER EFFECT */
.whatsapp-float:hover {
    background: #1ebe5d;
    color: #ffffff;

    transform: scale(1.1);

    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}


/* ICON */
.whatsapp-float span {
    line-height: 1;
}


/* MOBILE */
@media (max-width: 600px) {

    .cta-actions {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }

    .cta-actions .btn {
        width: 100%;
        text-align: center;
    }

    .whatsapp-float {
        width: 55px;
        height: 55px;
        right: 18px;
        bottom: 18px;
        font-size: 27px;
    }

/* =========================================
   PRODUCTS SECTION
========================================= */

.products-section {
    padding: 90px 0;
    background: #f7f9fc;
}

.section-heading {
    max-width: 750px;
    margin: 0 auto 50px;
    text-align: center;
}

.section-heading .eyebrow {
    display: inline-block;
    margin-bottom: 12px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.section-heading h2 {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.2;
}

.section-heading p {
    margin: 0;
    color: #667085;
    font-size: 17px;
    line-height: 1.7;
}


/* PRODUCT GRID */

.products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}


/* PRODUCT CARD */

.product-card {
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #e8edf3;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
}

.product-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
}


/* PRODUCT IMAGE */

.product-image {
    width: 100%;
    height: 210px;
    overflow: hidden;
    background: #eef2f6;
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}

.product-card:hover .product-image img {
    transform: scale(1.05);
}


/* PRODUCT CONTENT */

.product-content {
    padding: 25px;
}

.product-code {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.product-content h3 {
    margin: 0 0 12px;
    font-size: 20px;
    line-height: 1.35;
}

.product-content p {
    margin: 0 0 20px;
    color: #667085;
    font-size: 14px;
    line-height: 1.7;
}

.product-link {
    text-decoration: none;
    font-weight: 700;
    font-size: 14px;
}

.product-link:hover {
    text-decoration: underline;
}


/* VIEW ALL BUTTON */

.products-button {
    text-align: center;
    margin-top: 45px;
}

.products-button .btn-primary {
    display: inline-block;
    padding: 14px 28px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
}


/* =========================================
   RESPONSIVE DESIGN
========================================= */

@media (max-width: 1100px) {

    .products-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


@media (max-width: 650px) {

    .products-section {
        padding: 60px 20px;
    }

    .section-heading h2 {
        font-size: 30px;
    }

    .products-grid {
        grid-template-columns: 1fr;
    }

    .product-image {
        height: 230px;
    }

}
}




/* =========================================================
   BRAINSTORM TECHNOLOGIES CONSULT
   PROFESSIONAL PRODUCTS PAGE
   ========================================================= */

/* ---------- GLOBAL PRODUCTS SETTINGS ---------- */

.pro-products-hero,
.pro-products-section,
.pro-why-section,
.pro-products-cta {
    position: relative;
    overflow: hidden;
}

.pro-products-hero *,
.pro-products-section *,
.pro-why-section *,
.pro-products-cta * {
    box-sizing: border-box;
}

.pro-products-hero .container,
.pro-products-section .container,
.pro-why-section .container,
.pro-products-cta .container {
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
    padding-left: 25px;
    padding-right: 25px;
}


/* =========================================================
   HERO SECTION
   ========================================================= */

.pro-products-hero {
    min-height: 720px;
    padding: 110px 0 55px;
    color: #ffffff;

    background:
        radial-gradient(
            circle at 80% 20%,
            rgba(37, 99, 235, 0.25),
            transparent 35%
        ),
        radial-gradient(
            circle at 10% 90%,
            rgba(6, 182, 212, 0.16),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #050b16 0%,
            #0b1730 48%,
            #0c2342 100%
        );
}


/* ---------- Hero Grid Pattern ---------- */

.pro-hero-grid {
    position: absolute;
    inset: 0;
    opacity: 0.18;
    background-image:
        linear-gradient(
            rgba(255,255,255,0.06) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,0.06) 1px,
            transparent 1px
        );
    background-size: 60px 60px;
    mask-image: linear-gradient(
        to bottom,
        black,
        transparent
    );
}


/* ---------- Hero Glow ---------- */

.pro-hero-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(50px);
    pointer-events: none;
}

.pro-glow-one {
    width: 300px;
    height: 300px;
    top: 80px;
    right: -100px;
    background: rgba(37, 99, 235, 0.20);
}

.pro-glow-two {
    width: 250px;
    height: 250px;
    bottom: 80px;
    left: -100px;
    background: rgba(6, 182, 212, 0.13);
}


/* ---------- Hero Container ---------- */

.pro-hero-container {
    position: relative;
    z-index: 2;
}


/* ---------- Hero Content ---------- */

.pro-hero-content {
    max-width: 780px;
    margin-bottom: 70px;
}

.pro-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 25px;
    padding: 9px 16px;

    border: 1px solid rgba(255,255,255,0.13);
    border-radius: 50px;

    background: rgba(255,255,255,0.06);

    color: #7dd3fc;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.7px;

    backdrop-filter: blur(10px);
}

.pro-status-dot {
    width: 8px;
    height: 8px;

    border-radius: 50%;
    background: #22c55e;

    box-shadow:
        0 0 0 4px rgba(34,197,94,0.12),
        0 0 15px rgba(34,197,94,0.5);
}


/* ---------- Hero Heading ---------- */

.pro-hero-content h1 {
    max-width: 850px;

    margin: 0 0 25px;

    font-size: clamp(45px, 6vw, 76px);
    line-height: 1.02;

    font-weight: 850;
    letter-spacing: -3px;

    color: #ffffff;
}

.pro-hero-content h1 span {
    display: block;

    background: linear-gradient(
        90deg,
        #38bdf8,
        #60a5fa,
        #818cf8
    );

    -webkit-background-clip: text;
    background-clip: text;

    color: transparent;
}


/* ---------- Hero Paragraph ---------- */

.pro-hero-content > p {
    max-width: 690px;

    margin: 0 0 32px;

    color: #b8c5d8;

    font-size: 17px;
    line-height: 1.85;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.pro-hero-actions,
.pro-cta-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 13px;
}

.pro-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-height: 50px;

    padding: 13px 21px;

    border-radius: 10px;

    text-decoration: none;

    font-size: 13px;
    font-weight: 800;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease;
}

.pro-btn:hover {
    transform: translateY(-3px);
}

.pro-btn-primary {
    border: 1px solid transparent;

    background: linear-gradient(
        135deg,
        #2563eb,
        #0284c7
    );

    color: #ffffff;

    box-shadow:
        0 12px 30px rgba(37,99,235,0.28);
}

.pro-btn-primary:hover {
    color: #ffffff;

    box-shadow:
        0 18px 38px rgba(37,99,235,0.40);
}

.pro-btn-outline {
    border: 1px solid rgba(255,255,255,0.18);

    background: rgba(255,255,255,0.06);

    color: #ffffff;

    backdrop-filter: blur(10px);
}

.pro-btn-outline:hover {
    color: #ffffff;
    background: rgba(255,255,255,0.12);
    border-color: rgba(255,255,255,0.30);
}


/* =========================================================
   HERO VISUAL
   ========================================================= */

.pro-hero-visual {
    position: absolute;

    width: 390px;
    height: 350px;

    top: 70px;
    right: 30px;

    pointer-events: none;
}

.pro-visual-card {
    position: absolute;

    width: 100%;

    top: 25px;
    right: 0;

    padding: 27px;

    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 24px;

    background: rgba(255,255,255,0.065);

    box-shadow:
        0 30px 80px rgba(0,0,0,0.30);

    backdrop-filter: blur(18px);

    animation: proVisualFloat 6s ease-in-out infinite;
}

.pro-visual-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 24px;

    color: #94a3b8;
}

.pro-visual-status {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.pro-visual-status span {
    width: 7px;
    height: 7px;

    border-radius: 50%;
    background: #22c55e;
}

.pro-visual-top > i {
    font-size: 15px;
}


.pro-visual-main-icon {
    width: 70px;
    height: 70px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 22px;

    border-radius: 19px;

    background: linear-gradient(
        135deg,
        #2563eb,
        #06b6d4
    );

    color: #ffffff;

    font-size: 28px;

    box-shadow:
        0 15px 35px rgba(37,99,235,0.30);
}

.pro-visual-card h3 {
    margin: 0 0 10px;

    color: #ffffff;

    font-size: 24px;
}

.pro-visual-card p {
    margin: 0 0 20px;

    color: #a9b7c9;

    font-size: 13px;
    line-height: 1.7;
}

.pro-visual-features {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.pro-visual-features span {
    display: inline-flex;
    align-items: center;
    gap: 6px;

    padding: 7px 9px;

    border-radius: 7px;

    background: rgba(255,255,255,0.06);

    color: #cbd5e1;

    font-size: 10px;
    font-weight: 700;
}

.pro-visual-features i {
    color: #38bdf8;
}


/* ---------- Floating Icons ---------- */

.pro-floating-icon {
    position: absolute;

    width: 53px;
    height: 53px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 16px;

    background: rgba(255,255,255,0.08);

    color: #7dd3fc;

    font-size: 19px;

    box-shadow:
        0 15px 35px rgba(0,0,0,0.20);

    backdrop-filter: blur(12px);

    animation: proIconFloat 5s ease-in-out infinite;
}

.pro-float-one {
    top: -5px;
    right: -25px;
}

.pro-float-two {
    left: -25px;
    bottom: 0;

    animation-delay: 1.5s;
}

@keyframes proVisualFloat {
    0%,100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-9px);
    }
}

@keyframes proIconFloat {
    0%,100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-13px) rotate(3deg);
    }
}


/* =========================================================
   HERO STATS
   ========================================================= */

.pro-hero-bottom {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 15px;

    max-width: 850px;
}

.pro-hero-stat {
    display: flex;
    align-items: center;
    gap: 13px;

    padding: 16px;

    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 15px;

    background: rgba(255,255,255,0.045);

    backdrop-filter: blur(10px);

    transition: all 0.3s ease;
}

.pro-hero-stat:hover {
    background: rgba(255,255,255,0.08);
    border-color: rgba(125,211,252,0.25);
    transform: translateY(-3px);
}

.pro-stat-icon {
    flex: 0 0 42px;

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 11px;

    background: rgba(37,99,235,0.18);

    color: #60a5fa;

    font-size: 16px;
}

.pro-hero-stat strong {
    display: block;

    margin-bottom: 3px;

    color: #ffffff;

    font-size: 16px;
    font-weight: 800;
}

.pro-hero-stat span {
    display: block;

    color: #8fa0b5;

    font-size: 10px;
    font-weight: 600;
}


/* =========================================================
   PRODUCTS SECTION
   ========================================================= */

.pro-products-section {
    padding: 105px 0;

    background:
        linear-gradient(
            180deg,
            #f8fafc 0%,
            #ffffff 100%
        );
}


/* ---------- Section Heading ---------- */

.pro-section-heading {
    display: grid;

    grid-template-columns: 1fr 0.75fr;

    gap: 70px;

    align-items: end;

    margin-bottom: 55px;
}

.pro-heading-left {
    max-width: 680px;
}

.pro-section-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 14px;

    color: #2563eb;

    font-size: 11px;
    font-weight: 850;

    letter-spacing: 1.6px;
}

.pro-section-label i {
    font-size: 12px;
}

.pro-section-heading h2 {
    margin: 0;

    color: #0f172a;

    font-size: clamp(33px, 4vw, 50px);

    line-height: 1.12;

    letter-spacing: -1.7px;
}

.pro-section-heading h2 span {
    color: #2563eb;
}

.pro-heading-right p {
    margin: 0;

    color: #64748b;

    font-size: 15px;

    line-height: 1.85;
}


/* =========================================================
   PRODUCT GRID
   ========================================================= */

.pro-product-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 28px;
}


/* =========================================================
   PRODUCT CARD
   ========================================================= */

.pro-product-card {
    position: relative;

    overflow: hidden;

    border: 1px solid #e2e8f0;
    border-radius: 23px;

    background: #ffffff;

    box-shadow:
        0 8px 30px rgba(15,23,42,0.055);

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}

.pro-product-card:hover {
    transform: translateY(-8px);

    border-color: #bfdbfe;

    box-shadow:
        0 25px 60px rgba(15,23,42,0.12);
}


/* ---------- Product Image ---------- */

.pro-card-image {
    position: relative;

    height: 260px;

    overflow: hidden;

    background: #0f172a;
}

.pro-card-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.65s ease;
}

.pro-product-card:hover .pro-card-image img {
    transform: scale(1.08);
}

.pro-card-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(2,6,23,0.15) 0%,
            rgba(2,6,23,0.20) 40%,
            rgba(2,6,23,0.85) 100%
        );
}


/* ---------- Product Number ---------- */

.pro-product-number {
    position: absolute;

    z-index: 3;

    top: 18px;
    left: 18px;

    width: 43px;
    height: 43px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255,255,255,0.20);
    border-radius: 12px;

    background: rgba(15,23,42,0.65);

    color: #ffffff;

    font-size: 12px;
    font-weight: 850;

    backdrop-filter: blur(10px);
}


/* ---------- Main Product Icon ---------- */

.pro-main-icon {
    position: absolute;

    z-index: 3;

    right: 18px;
    top: 18px;

    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 16px;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #0891b2
        );

    color: #ffffff;

    font-size: 23px;

    box-shadow:
        0 12px 30px rgba(37,99,235,0.35);
}


/* ---------- Image Label ---------- */

.pro-image-label {
    position: absolute;

    z-index: 4;

    left: 18px;
    bottom: 17px;

    display: inline-flex;
    align-items: center;
    gap: 7px;

    padding: 8px 12px;

    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 50px;

    background: rgba(15,23,42,0.65);

    color: #ffffff;

    font-size: 10px;
    font-weight: 750;

    backdrop-filter: blur(10px);
}

.pro-image-label i {
    color: #7dd3fc;
}


/* =========================================================
   PRODUCT BODY
   ========================================================= */

.pro-card-body {
    padding: 29px;
}

.pro-product-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    margin-bottom: 13px;
}

.pro-product-meta span {
    display: inline-flex;
    align-items: center;

    color: #64748b;

    font-size: 9px;
    font-weight: 850;

    letter-spacing: 1.3px;
}

.pro-product-meta strong {
    padding: 6px 9px;

    border-radius: 6px;

    background: #eff6ff;

    color: #2563eb;

    font-size: 10px;
    letter-spacing: 0.8px;
}


/* ---------- Product Title ---------- */

.pro-card-body h3 {
    margin: 0 0 14px;

    color: #0f172a;

    font-size: 22px;

    line-height: 1.3;

    letter-spacing: -0.5px;
}


/* ---------- Product Description ---------- */

.pro-card-body > p {
    margin: 0 0 22px;

    color: #64748b;

    font-size: 13.5px;

    line-height: 1.8;
}


/* =========================================================
   PRODUCT FEATURES
   ========================================================= */

.pro-feature-list {
    display: flex;

    flex-wrap: wrap;

    gap: 8px;

    margin-bottom: 24px;
}

.pro-feature-list span {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    padding: 8px 10px;

    border: 1px solid #e2e8f0;
    border-radius: 8px;

    background: #f8fafc;

    color: #475569;

    font-size: 10px;
    font-weight: 700;

    transition: all 0.25s ease;
}

.pro-feature-list span:hover {
    border-color: #bfdbfe;
    background: #eff6ff;
    color: #1e40af;
}

.pro-feature-list i {
    color: #2563eb;
    font-size: 11px;
}


/* =========================================================
   PRODUCT LINK
   ========================================================= */

.pro-product-link {
    display: flex;

    align-items: center;
    justify-content: space-between;

    width: 100%;

    padding-top: 19px;

    border-top: 1px solid #edf2f7;

    color: #2563eb;

    text-decoration: none;

    font-size: 12px;
    font-weight: 850;

    transition: color 0.25s ease;
}

.pro-product-link:hover {
    color: #0f766e;
}

.pro-link-icon {
    width: 33px;
    height: 33px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 9px;

    background: #eff6ff;

    transition:
        transform 0.25s ease,
        background 0.25s ease;
}

.pro-product-link:hover .pro-link-icon {
    transform: translateX(5px);

    background: #2563eb;

    color: #ffffff;
}


/* =========================================================
   WHY BRAINSTORM SECTION
   ========================================================= */

.pro-why-section {
    padding: 100px 0;

    background: #f8fafc;
}

.pro-centered-heading {
    align-items: center;
}

.pro-centered-heading p {
    margin: 0;

    color: #64748b;

    font-size: 15px;
    line-height: 1.85;
}


/* ---------- Benefits Grid ---------- */

.pro-benefits-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 20px;
}

.pro-benefit-card {
    position: relative;

    overflow: hidden;

    padding: 30px 26px;

    border: 1px solid #e2e8f0;
    border-radius: 19px;

    background: #ffffff;

    box-shadow:
        0 8px 25px rgba(15,23,42,0.035);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.pro-benefit-card:hover {
    transform: translateY(-7px);

    border-color: #bfdbfe;

    box-shadow:
        0 20px 45px rgba(15,23,42,0.09);
}


/* ---------- Benefit Icon ---------- */

.pro-benefit-icon {
    width: 55px;
    height: 55px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 22px;

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            #eff6ff,
            #ecfeff
        );

    color: #2563eb;

    font-size: 21px;
}


/* ---------- Benefit Number ---------- */

.pro-benefit-number {
    position: absolute;

    top: 25px;
    right: 23px;

    color: #e2e8f0;

    font-size: 30px;
    font-weight: 850;
}


/* ---------- Benefit Text ---------- */

.pro-benefit-card h3 {
    position: relative;
    z-index: 2;

    margin: 0 0 11px;

    color: #0f172a;

    font-size: 18px;
}

.pro-benefit-card p {
    position: relative;
    z-index: 2;

    margin: 0;

    color: #64748b;

    font-size: 13px;

    line-height: 1.75;
}


/* ---------- Benefit Bottom Line ---------- */

.pro-benefit-line {
    width: 35px;
    height: 3px;

    margin-top: 22px;

    border-radius: 10px;

    background:
        linear-gradient(
            90deg,
            #2563eb,
            #06b6d4
        );

    transition: width 0.3s ease;
}

.pro-benefit-card:hover .pro-benefit-line {
    width: 70px;
}


/* =========================================================
   CTA SECTION
   ========================================================= */

.pro-products-cta {
    padding: 100px 0;

    background:
        radial-gradient(
            circle at 80% 20%,
            rgba(37,99,235,0.22),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #07111f,
            #101e3a 55%,
            #0c2746
        );
}


/* ---------- CTA Pattern ---------- */

.pro-cta-pattern {
    position: absolute;
    inset: 0;

    opacity: 0.14;

    background-image:
        linear-gradient(
            rgba(255,255,255,0.08) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,0.08) 1px,
            transparent 1px
        );

    background-size: 55px 55px;
}


/* ---------- CTA Box ---------- */

.pro-cta-box {
    position: relative;
    z-index: 2;

    max-width: 900px;

    margin: 0 auto;

    padding: 65px 50px;

    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 28px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,0.08),
            rgba(255,255,255,0.035)
        );

    text-align: center;

    box-shadow:
        0 30px 80px rgba(0,0,0,0.20);

    backdrop-filter: blur(15px);
}


/* ---------- CTA Icon ---------- */

.pro-cta-icon {
    width: 65px;
    height: 65px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin: 0 auto 25px;

    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            #2563eb,
            #06b6d4
        );

    color: #ffffff;

    font-size: 25px;

    box-shadow:
        0 15px 35px rgba(37,99,235,0.28);
}

.pro-cta-box .pro-section-label {
    justify-content: center;

    color: #7dd3fc;
}


/* ---------- CTA Heading ---------- */

.pro-cta-box h2 {
    max-width: 700px;

    margin: 0 auto 18px;

    color: #ffffff;

    font-size: clamp(33px, 4vw, 52px);

    line-height: 1.12;

    letter-spacing: -1.5px;
}

.pro-cta-box h2 span {
    display: block;

    background:
        linear-gradient(
            90deg,
            #38bdf8,
            #60a5fa
        );

    -webkit-background-clip: text;
    background-clip: text;

    color: transparent;
}


/* ---------- CTA Description ---------- */

.pro-cta-box > p {
    max-width: 690px;

    margin: 0 auto 30px;

    color: #b5c2d4;

    font-size: 14px;

    line-height: 1.85;
}


/* ---------- CTA Actions ---------- */

.pro-cta-actions {
    justify-content: center;
}

.pro-cta-actions .pro-btn-primary {
    background: #ffffff;

    color: #0f172a;

    box-shadow: none;
}

.pro-cta-actions .pro-btn-primary:hover {
    color: #0f172a;

    box-shadow:
        0 15px 35px rgba(0,0,0,0.20);
}


/* ---------- WhatsApp ---------- */

.pro-whatsapp {
    border: 1px solid rgba(37,211,102,0.35);

    background: rgba(37,211,102,0.12);

    color: #86efac;
}

.pro-whatsapp:hover {
    background: #25d366;

    border-color: #25d366;

    color: #ffffff;
}

.pro-whatsapp i {
    font-size: 17px;
}


/* =========================================================
   RESPONSIVE DESIGN
   ========================================================= */


/* ---------- Large Tablet ---------- */

@media (max-width: 1150px) {

    .pro-hero-visual {
        position: relative;

        top: auto;
        right: auto;

        width: 390px;

        margin: 0 auto 50px;
    }

    .pro-hero-content {
        max-width: 800px;
        margin-left: auto;
        margin-right: auto;

        text-align: center;
    }

    .pro-hero-content > p {
        margin-left: auto;
        margin-right: auto;
    }

    .pro-hero-actions {
        justify-content: center;
    }

    .pro-hero-bottom {
        max-width: none;
    }

    .pro-section-heading {
        gap: 40px;
    }

    .pro-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* ---------- Tablet ---------- */

@media (max-width: 900px) {

    .pro-products-hero {
        min-height: auto;

        padding-top: 85px;
    }

    .pro-hero-content h1 {
        font-size: 53px;
    }

    .pro-section-heading {
        grid-template-columns: 1fr;

        gap: 20px;

        align-items: start;
    }

    .pro-product-grid {
        grid-template-columns: 1fr;
    }

    .pro-hero-bottom {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* ---------- Mobile ---------- */

@media (max-width: 600px) {

    .pro-products-hero .container,
    .pro-products-section .container,
    .pro-why-section .container,
    .pro-products-cta .container {
        padding-left: 17px;
        padding-right: 17px;
    }


    /* Hero */

    .pro-products-hero {
        padding: 70px 0 45px;
    }

    .pro-hero-content {
        margin-bottom: 45px;
    }

    .pro-hero-badge {
        font-size: 9px;

        letter-spacing: 1px;
    }

    .pro-hero-content h1 {
        font-size: 39px;

        letter-spacing: -1.8px;
    }

    .pro-hero-content > p {
        font-size: 14px;

        line-height: 1.75;
    }


    /* Buttons */

    .pro-hero-actions {
        flex-direction: column;

        width: 100%;
    }

    .pro-hero-actions .pro-btn {
        width: 100%;
    }


    /* Hero Visual */

    .pro-hero-visual {
        width: calc(100% - 35px);

        height: 310px;

        margin-bottom: 40px;
    }

    .pro-visual-card {
        padding: 22px;
    }

    .pro-visual-card h3 {
        font-size: 20px;
    }

    .pro-visual-card p {
        font-size: 12px;
    }

    .pro-floating-icon {
        width: 43px;
        height: 43px;

        font-size: 15px;
    }

    .pro-float-one {
        right: -10px;
    }

    .pro-float-two {
        left: -10px;
    }


    /* Stats */

    .pro-hero-bottom {
        grid-template-columns: 1fr;
    }

    .pro-hero-stat {
        padding: 14px;
    }


    /* Products */

    .pro-products-section {
        padding: 70px 0;
    }

    .pro-section-heading {
        margin-bottom: 38px;
    }

    .pro-section-heading h2 {
        font-size: 34px;

        letter-spacing: -1px;
    }

    .pro-heading-right p {
        font-size: 13px;
    }


    /* Cards */

    .pro-card-image {
        height: 220px;
    }

    .pro-card-body {
        padding: 23px;
    }

    .pro-card-body h3 {
        font-size: 20px;
    }

    .pro-card-body > p {
        font-size: 13px;
    }

    .pro-product-meta {
        align-items: flex-start;
    }

    .pro-product-meta span {
        font-size: 8px;
    }


    /* Benefits */

    .pro-why-section {
        padding: 70px 0;
    }

    .pro-benefits-grid {
        grid-template-columns: 1fr;
    }

    .pro-benefit-card {
        padding: 25px;
    }


    /* CTA */

    .pro-products-cta {
        padding: 65px 0;
    }

    .pro-cta-box {
        padding: 45px 22px;

        border-radius: 22px;
    }

    .pro-cta-box h2 {
        font-size: 34px;
    }

    .pro-cta-box > p {
        font-size: 13px;
    }

    .pro-cta-actions {
        flex-direction: column;
    }

    .pro-cta-actions .pro-btn {
        width: 100%;
    }
}


/* =========================================================
   EXTRA SMALL DEVICES
   ========================================================= */

@media (max-width: 380px) {

    .pro-hero-content h1 {
        font-size: 34px;
    }

    .pro-section-heading h2 {
        font-size: 30px;
    }

    .pro-card-image {
        height: 195px;
    }

    .pro-main-icon {
        width: 50px;
        height: 50px;

        font-size: 19px;
    }

    .pro-product-number {
        width: 38px;
        height: 38px;
    }

    .pro-image-label {
        font-size: 8px;
    }
}


/* =========================================================
   ACCESSIBILITY
   ========================================================= */

.pro-btn:focus,
.pro-product-link:focus {
    outline: 3px solid rgba(37,99,235,0.25);

    outline-offset: 3px;
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .pro-visual-card,
    .pro-floating-icon {
        animation: none;
    }

    .pro-product-card,
    .pro-benefit-card,
    .pro-btn,
    .pro-card-image img {
        transition: none;
    }
}