/* =========================================================
   GROW SYSTEM V1
   Global design system
   ========================================================= */

:root{
    --grow-bg:#030712;
    --grow-surface:#07111f;
    --grow-surface-soft:#0b1628;
    --grow-text:#ffffff;
    --grow-muted:#d7e4fb;
    --grow-blue:#007BFF;
    --grow-cyan:#00A3FF;

    --grow-radius-sm:16px;
    --grow-radius-md:24px;
    --grow-radius-lg:32px;
    --grow-radius-pill:999px;

    --grow-container:1180px;
    --grow-section-y:96px;
    --grow-section-y-mobile:70px;

    --grow-font-ui:'Inter', Arial, sans-serif;
    --grow-font-brand:'Glacial Indifference', Arial, sans-serif;
}

html,
body{
    background:var(--grow-bg);
    color:var(--grow-text);
    font-family:var(--grow-font-ui);
}

.grow-container{
    width:100%;
    max-width:var(--grow-container);
    margin:0 auto;
    padding:0 6%;
}

.grow-section{
    padding:var(--grow-section-y) 0;
}

.grow-section-dark{
    background:var(--grow-bg);
    color:var(--grow-text);
}

.grow-section-light{
    background:#f5f8ff;
    color:#07111f;
}

.grow-title-xl,
.grow-title-lg,
.grow-title-md{
    font-family:var(--grow-font-brand);
    letter-spacing:-.055em;
}

.grow-title-xl{
    font-size:clamp(44px,6vw,82px);
    line-height:.96;
}

.grow-title-lg{
    font-size:clamp(36px,4.4vw,58px);
    line-height:1;
}

.grow-title-md{
    font-size:clamp(28px,3vw,38px);
    line-height:1.05;
}

.grow-text{
    color:var(--grow-muted);
    font-size:18px;
    line-height:1.65;
}

.grow-actions{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
}

.grow-btn{
    min-height:54px;
    padding:0 28px;
    border-radius:var(--grow-radius-pill);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
    font-weight:900;
    line-height:1;
    text-decoration:none !important;
    border:1px solid transparent;
}

.grow-btn-primary{
    background:linear-gradient(135deg,var(--grow-cyan),#006BFF);
    color:#fff !important;
    border-color:rgba(0,163,255,.65);
    box-shadow:0 0 30px rgba(0,123,255,.42);
}

.grow-btn-secondary{
    background:rgba(255,255,255,.045);
    color:#fff !important;
    border-color:rgba(255,255,255,.30);
}

.grow-card{
    border-radius:var(--grow-radius-lg);
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.055);
}

@media(max-width:900px){
    .grow-container{
        padding:0 24px;
    }

    .grow-section{
        padding:var(--grow-section-y-mobile) 0;
    }

    .grow-actions{
        flex-direction:column;
        align-items:center;
    }

    .grow-btn{
        width:100%;
        max-width:330px;
        min-height:52px;
        font-size:15px;
    }
}

/* =========================================================
   FOOTER SYSTEM V1
   ========================================================= */

.grow-footer{
    background:#030712;
    color:#ffffff;
    border-top:1px solid rgba(255,255,255,.08);
    padding:86px 6% 34px;
}

.grow-footer__container{
    width:100%;
    max-width:1180px;
    margin:0 auto;
    display:grid;
    grid-template-columns:1.1fr 1.4fr;
    gap:70px;
    align-items:flex-start;
}

.grow-footer__brand p{
    margin-top:22px;
    max-width:420px;
    color:#d7e4fb;
    font-size:17px;
    line-height:1.7;
}

.grow-footer__logo{
    display:inline-flex;
    flex-direction:column;
    align-items:flex-start;
    text-decoration:none !important;
    font-family:'Glacial Indifference', Arial, sans-serif;
}

.grow-footer__logo > span{
    color:#ffffff;
    font-size:52px;
    font-weight:900;
    line-height:.82;
    letter-spacing:-.08em;
}

.grow-footer__logo > b{
    color:#007BFF;
    font-size:58px;
    line-height:.7;
    margin-top:-42px;
    margin-left:132px;
    font-style:normal;
}

.grow-footer__logo small{
    margin-top:12px;
    display:flex;
    align-items:center;
    gap:4px;
    color:#ffffff;
    font-size:18px;
    font-weight:800;
    line-height:1;
}

.grow-footer__logo small i{
    color:#007BFF;
    font-style:normal;
}

.grow-footer__nav{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:34px;
}

.grow-footer__col h4{
    margin:0 0 18px;
    color:#ffffff;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
}

.grow-footer__col a,
.grow-footer__col p{
    display:block;
    margin:0 0 12px;
    color:#b9c7df;
    font-size:15px;
    line-height:1.6;
    text-decoration:none !important;
}

.grow-footer__col a:hover{
    color:#ffffff;
}

.grow-footer__bottom{
    width:100%;
    max-width:1180px;
    margin:58px auto 0;
    padding-top:24px;
    border-top:1px solid rgba(255,255,255,.08);
    display:flex;
    justify-content:space-between;
    gap:24px;
    color:#7f90ad;
    font-size:13px;
    line-height:1.5;
}

@media(max-width:900px){

    .grow-footer{
        padding:64px 24px 32px;
    }

    .grow-footer__container{
        grid-template-columns:1fr;
        gap:42px;
    }

    .grow-footer__nav{
        grid-template-columns:1fr;
        gap:30px;
    }

    .grow-footer__bottom{
        margin-top:42px;
        flex-direction:column;
        gap:12px;
    }
}



/* =========================================================
   HEADER / NAV SYSTEM - SINGLE SOURCE
   ========================================================= */

.header{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:96px !important;
    padding:0 6% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:36px !important;
    background:rgba(3,7,18,.72) !important;
    backdrop-filter:blur(18px) !important;
    -webkit-backdrop-filter:blur(18px) !important;
    z-index:9999 !important;
}

.header .mini-logo{
    flex:0 0 auto !important;
    text-decoration:none !important;
    color:#fff !important;
}

.header nav{
    flex:1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:26px !important;
}

.header nav a{
    color:rgba(255,255,255,.82) !important;
    font-size:15px !important;
    font-weight:900 !important;
    line-height:1 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
}

.header nav a:hover,
.header nav a.active{
    color:#ffffff !important;
}

.header nav a.active::after{
    content:"/" !important;
    color:#007BFF !important;
    margin-left:7px !important;
}

.header nav .nav-analysis-cta{
    height:48px !important;
    min-height:48px !important;
    max-height:48px !important;
    padding:0 24px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#00A3FF,#006BFF) !important;
    color:#ffffff !important;
    box-shadow:0 0 24px rgba(0,123,255,.38) !important;
}

.header nav .nav-analysis-cta::after{
    content:"/" !important;
    color:#8fd8ff !important;
    margin-left:8px !important;
}

.menu-toggle{
    display:none !important;
}

@media(max-width:900px){

    .header{
        height:96px !important;
        padding:0 24px !important;
    }

    .header nav{
        position:fixed !important;
        top:112px !important;
        left:24px !important;
        right:24px !important;
        display:none !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:flex-start !important;
        gap:8px !important;
        padding:20px !important;
        background:rgba(3,7,18,.96) !important;
        border:1px solid rgba(255,255,255,.12) !important;
        border-radius:28px !important;
        box-shadow:0 28px 80px rgba(0,0,0,.45) !important;
    }

    .header nav.open{
        display:flex !important;
    }

    .header nav a{
        width:100% !important;
        min-height:54px !important;
        padding:0 18px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        border-radius:18px !important;
        font-size:18px !important;
    }

    .header nav .nav-analysis-cta{
        width:100% !important;
        height:58px !important;
        min-height:58px !important;
        max-height:58px !important;
        margin-top:8px !important;
        padding:0 20px !important;
        font-size:18px !important;
    }

    .menu-toggle{
        width:54px !important;
        height:54px !important;
        border:1px solid rgba(255,255,255,.16) !important;
        border-radius:999px !important;
        background:rgba(255,255,255,.06) !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        flex-direction:column !important;
        gap:7px !important;
        cursor:pointer !important;
        flex:0 0 54px !important;
    }

    .menu-toggle span{
        width:22px !important;
        height:2px !important;
        background:#ffffff !important;
        border-radius:999px !important;
    }

    .menu-toggle.open span:first-child{
        transform:translateY(4.5px) rotate(45deg) !important;
    }

    .menu-toggle.open span:last-child{
        transform:translateY(-4.5px) rotate(-45deg) !important;
    }
}

/* =========================================================
   PAGE HERO SYSTEM V1
   Reusable internal page hero
   ========================================================= */

.grow-page-hero{
    position:relative;
    overflow:hidden;
    background:#030712;
    color:#ffffff;
    padding:150px 0 96px;
}

.grow-page-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 78% 34%, rgba(0,123,255,.34), transparent 34%),
        radial-gradient(circle at 18% 78%, rgba(0,183,255,.10), transparent 28%);
    pointer-events:none;
}

.grow-page-hero__container{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding:0 6%;
}

.grow-page-hero__eyebrow{
    display:inline-flex;
    align-items:center;
    color:#00A3FF;
    font-size:13px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    margin-bottom:24px;
}

.grow-page-hero__eyebrow::after{
    content:"/";
    margin-left:8px;
    color:#007BFF;
}

.grow-page-hero__title{
    max-width:920px;
    margin:0;
    color:#ffffff;
    font-family:'Glacial Indifference', Arial, sans-serif;
    font-size:clamp(48px,6vw,86px);
    line-height:.96;
    letter-spacing:-.065em;
}

.grow-page-hero__text{
    max-width:720px;
    margin:28px 0 0;
    color:#d7e4fb;
    font-size:20px;
    line-height:1.65;
}

.grow-page-actions{
    margin-top:34px;
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
}

@media(max-width:900px){

    .grow-page-hero{
        padding:126px 0 72px;
    }

    .grow-page-hero__container{
        padding:0 24px;
    }

    .grow-page-hero__title{
        font-size:42px;
        line-height:1;
    }

    .grow-page-hero__text{
        font-size:17px;
        line-height:1.6;
    }

    .grow-page-actions{
        flex-direction:column;
        align-items:flex-start;
    }
}

