:root{
    --navy:#071b3a;
    --navy-2:#0d2d5c;
    --blue:#1769d1;
    --blue-2:#2b8cff;
    --gold:#d9a62e;
    --gold-light:#f5d77a;
    --white:#ffffff;
    --text:#14213d;
    --muted:#61708a;
    --border:#e6ebf3;
    --bg:#f6f8fc;
    --shadow:0 24px 70px rgba(5,25,55,.16);
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
    color:var(--text);
    background:var(--bg);
    line-height:1.5;
}

a{
    text-decoration:none;
    color:inherit;
}

.container{
    width:min(1160px,92%);
    margin:0 auto;
}

/* HEADER */
.header{
    position:sticky;
    top:0;
    z-index:100;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(14px);
    border-bottom:1px solid rgba(230,235,243,.9);
}

.nav{
    min-height:78px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}

.brand{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
}

.brand-logo{
    width:58px;
    height:58px;
    object-fit:contain;
    flex:none;
}

.brand-text{
    display:flex;
    flex-direction:column;
    line-height:1.05;
}

.brand-name{
    font-size:22px;
    font-weight:900;
    letter-spacing:-.5px;
    color:var(--navy);
}

.brand-name span{
    color:#e67d24;
}

.brand-tagline{
    margin-top:5px;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.7px;
    color:#77839a;
}

.nav-links{
    display:flex;
    align-items:center;
    gap:24px;
    font-size:14px;
    font-weight:700;
    color:#516078;
}

.nav-links a:hover{
    color:var(--blue);
}

.nav-actions{
    display:flex;
    align-items:center;
    gap:10px;
}

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:0;
    cursor:pointer;
    border-radius:10px;
    padding:12px 19px;
    font-size:14px;
    font-weight:800;
    transition:.2s ease;
}

.btn-outline{
    color:var(--navy);
    background:#fff;
    border:1px solid #d9e0eb;
}

.btn-outline:hover{
    border-color:var(--blue);
    color:var(--blue);
}

.btn-primary{
    color:#fff;
    background:linear-gradient(135deg,var(--blue),var(--blue-2));
    box-shadow:0 10px 24px rgba(23,105,209,.24);
}

.btn-primary:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 30px rgba(23,105,209,.30);
}

.btn-gold{
    color:#2d2107;
    background:linear-gradient(135deg,var(--gold-light),var(--gold));
    box-shadow:0 10px 24px rgba(217,166,46,.22);
}

.btn-gold:hover{
    transform:translateY(-2px);
}

/* HERO */
.hero{
    position:relative;
    overflow:hidden;
    padding:72px 0 58px;
    background:
        radial-gradient(circle at 82% 22%,rgba(43,140,255,.23),transparent 28%),
        radial-gradient(circle at 8% 85%,rgba(217,166,46,.14),transparent 25%),
        linear-gradient(135deg,#06172f 0%,#0a2852 56%,#0c3970 100%);
}

.hero:before{
    content:"";
    position:absolute;
    inset:auto -10% -180px auto;
    width:560px;
    height:360px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    transform:rotate(-12deg);
}

.hero-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    align-items:center;
    gap:56px;
}

.eyebrow{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 12px;
    border:1px solid rgba(245,215,122,.28);
    background:rgba(255,255,255,.07);
    color:#f5d77a;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
    letter-spacing:1.1px;
    text-transform:uppercase;
    margin-bottom:18px;
}

.eyebrow-dot{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#54d889;
    box-shadow:0 0 0 5px rgba(84,216,137,.12);
}

.hero h1{
    color:#fff;
    font-size:clamp(42px,6vw,70px);
    line-height:.98;
    letter-spacing:-2.5px;
    margin-bottom:18px;
}

.hero h1 span{
    color:#f0b83b;
}

.hero-subtitle{
    color:#e1eaf7;
    font-size:21px;
    font-weight:700;
    margin-bottom:12px;
}

.hero-copy{
    max-width:650px;
    color:#aebed5;
    font-size:16px;
    line-height:1.75;
    margin-bottom:28px;
}

.hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.hero-note{
    margin-top:16px;
    color:#8fa4c1;
    font-size:12px;
}

.hero-card{
    display:flex;
    justify-content:center;
    align-items:center;
}

.logo-panel{
    width:min(390px,100%);
    padding:25px;
    background:rgba(255,255,255,.97);
    border:1px solid rgba(255,255,255,.5);
    border-radius:26px;
    box-shadow:var(--shadow);
    text-align:center;
}

.logo-panel img{
    width:100%;
    max-width:320px;
    height:auto;
    display:block;
    margin:auto;
}

.logo-panel-line{
    height:1px;
    background:linear-gradient(90deg,transparent,#e1e7f0,transparent);
    margin:14px 0;
}

.logo-panel p{
    color:#68778e;
    font-size:12px;
    font-weight:700;
}

/* TRUST STRIP */
.trust-strip{
    background:#fff;
    border-bottom:1px solid var(--border);
}

.trust-grid{
    min-height:92px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    align-items:center;
}

.trust-item{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    padding:15px;
    border-right:1px solid var(--border);
    color:#40516b;
    font-size:13px;
    font-weight:800;
}

.trust-item:last-child{
    border-right:0;
}

.trust-icon{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:#edf5ff;
    color:var(--blue);
    font-size:17px;
}

/* FEATURES */
.section{
    padding:70px 0;
}

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

.section-kicker{
    color:var(--blue);
    font-size:12px;
    font-weight:900;
    letter-spacing:1.4px;
    text-transform:uppercase;
    margin-bottom:8px;
}

.section-heading h2{
    font-size:34px;
    line-height:1.15;
    letter-spacing:-1px;
    color:var(--navy);
    margin-bottom:10px;
}

.section-heading p{
    color:var(--muted);
    font-size:15px;
}

.feature-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.feature-card{
    background:#fff;
    border:1px solid var(--border);
    border-radius:18px;
    padding:26px;
    box-shadow:0 10px 30px rgba(18,39,70,.05);
    transition:.2s ease;
}

.feature-card:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 38px rgba(18,39,70,.10);
}

.feature-icon{
    width:50px;
    height:50px;
    border-radius:13px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#edf5ff;
    color:var(--blue);
    font-size:22px;
    margin-bottom:18px;
}

.feature-card:nth-child(2) .feature-icon{
    background:#fff7df;
    color:#b8830e;
}

.feature-card:nth-child(3) .feature-icon{
    background:#eaf9f0;
    color:#16834a;
}

.feature-card h3{
    font-size:18px;
    margin-bottom:8px;
    color:var(--navy);
}

.feature-card p{
    color:var(--muted);
    font-size:14px;
    line-height:1.65;
}

/* CTA */
.cta{
    padding:0 0 72px;
}

.cta-box{
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,#0a2248,#123d73);
    border-radius:22px;
    padding:38px 42px;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}

.cta-box:after{
    content:"";
    position:absolute;
    width:260px;
    height:260px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    right:-100px;
    top:-130px;
}

.cta-copy{
    position:relative;
    z-index:2;
}

.cta-copy h2{
    font-size:28px;
    margin-bottom:7px;
}

.cta-copy p{
    color:#b9c8dd;
    font-size:14px;
}

/* FOOTER */
.footer{
    background:#06162f;
    color:#9db0ca;
    padding:28px 0;
}

.footer-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.footer-brand{
    color:#fff;
    font-size:17px;
    font-weight:900;
}

.footer-brand span{
    color:#e6a13b;
}

.footer p{
    font-size:12px;
}

.footer-links{
    display:flex;
    gap:18px;
    font-size:12px;
}

.footer-links a:hover{
    color:#fff;
}

/* MOBILE */
@media(max-width:900px){
    .nav-links{
        display:none;
    }

    .hero-grid{
        grid-template-columns:1fr;
        gap:35px;
    }

    .hero{
        padding:55px 0 48px;
    }

    .hero-copy{
        max-width:none;
    }

    .hero-card{
        order:2;
    }

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

    .trust-item:nth-child(2){
        border-right:0;
    }

    .trust-item:nth-child(-n+2){
        border-bottom:1px solid var(--border);
    }

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

    .cta-box{
        flex-direction:column;
        align-items:flex-start;
        padding:30px;
    }
}

@media(max-width:560px){
    .nav{
        min-height:70px;
    }

    .brand-logo{
        width:46px;
        height:46px;
    }

    .brand-name{
        font-size:18px;
    }

    .brand-tagline{
        font-size:7px;
        letter-spacing:1.2px;
    }

    .nav-actions .btn-outline{
        display:none;
    }

    .hero h1{
        font-size:43px;
        letter-spacing:-1.5px;
    }

    .hero-subtitle{
        font-size:17px;
    }

    .hero-copy{
        font-size:14px;
    }

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

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

    .logo-panel{
        padding:18px;
    }

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

    .trust-item,
    .trust-item:nth-child(2){
        border-right:0;
        border-bottom:1px solid var(--border);
    }

    .trust-item:last-child{
        border-bottom:0;
    }

    .section{
        padding:55px 0;
    }

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

    .footer-inner{
        flex-direction:column;
        text-align:center;
    }
}

/* =========================================================
   LEGACY PAGE COMPATIBILITY + FINAL SITE CONSISTENCY
   ========================================================= */
.btn.primary{color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-2));box-shadow:0 10px 24px rgba(23,105,209,.20);border:0}
.btn.secondary{color:var(--navy);background:#fff;border:1px solid #d9e0eb}
.btn.primary:hover,.btn.secondary:hover{transform:translateY(-2px)}
.muted{color:var(--muted)!important}
.wrap{width:100%;max-width:1060px;margin:0 auto}
.page-content .wrap h2{color:var(--navy);font-size:28px;line-height:1.2;margin:0 0 12px}
.page-content .wrap .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 22px}
.page-content .wrap .grid>.card,.page-content .wrap .card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:24px;box-shadow:0 10px 28px rgba(18,39,70,.055)}
.page-content .wrap .card h3{color:#102b50;font-size:18px;margin-bottom:8px}
.page-content .wrap .card .tag{display:inline-block;padding:5px 9px;border-radius:999px;background:#edf5ff;color:var(--blue);font-size:10px;font-weight:900;margin:8px 6px 0 0}
.page-content .wrap .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.page-content .wrap .link{display:inline-block;color:var(--blue);font-weight:800;font-size:13px;margin:5px 12px 5px 0}
.page-content .wrap .notice{padding:16px 18px;border-left:4px solid var(--gold);background:#fffaf0;border-radius:12px;color:#5c4a1b;margin:16px 0}
.page-content .wrap table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:#fff}
.page-content .wrap th{background:#f1f5fa;color:var(--navy);text-align:left}
.page-content .wrap th,.page-content .wrap td{padding:12px 14px;border-bottom:1px solid var(--border);font-size:13px}
.page-content .wrap tr:last-child td{border-bottom:0}
@media(max-width:900px){.page-content .wrap .grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.page-content .wrap .grid{grid-template-columns:1fr}.page-content .wrap .grid>.card,.page-content .wrap .card{padding:19px}}

/* =========================================================
   SHARED EXAM-PAGE DESIGN
   Uses the same visual system as the original homepage.
   ========================================================= */
.page-shell{background:var(--bg);min-height:60vh;padding:0 0 72px}
.page-hero{position:relative;overflow:hidden;padding:54px 0 48px;background:radial-gradient(circle at 84% 18%,rgba(43,140,255,.20),transparent 28%),linear-gradient(135deg,#06172f 0%,#0a2852 56%,#0c3970 100%);color:#fff}
.page-hero:before{content:"";position:absolute;width:520px;height:320px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-170px;top:-210px;transform:rotate(-12deg)}
.page-hero .container{position:relative;z-index:2}
.page-hero .eyebrow{margin-bottom:12px}
.breadcrumb{font-size:12px;color:#afc1da;margin-bottom:14px}
.breadcrumb a{color:#dce8f7}
.page-hero h1{color:#fff;font-size:clamp(34px,5vw,54px);line-height:1.04;letter-spacing:-1.7px;margin:0 0 14px}
.page-hero p{max-width:790px;color:#dbe7f5;font-size:16px;line-height:1.7;margin:0}
.page-content{width:min(1060px,92%);margin:0 auto;padding-top:34px}
.page-content > section,.page-content > .wrap,.page-content > .container{margin-bottom:22px}
.page-content .section{padding:0}
.page-content .container{width:100%}
.page-content .section-heading{text-align:left;max-width:780px;margin:0 auto 24px 0}
.page-content .section-heading h2{font-size:30px}
.page-content .section-heading p{font-size:14px}
.page-content .card,.page-content article,.page-content .content-card,.page-content .info-card,.page-content .faq-item,.page-content .box,.page-content .rrb-content-card,.page-content .rrb-card,.page-content .ahc-card{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:0 10px 30px rgba(18,39,70,.055)}
.page-content .card,.page-content article,.page-content .content-card,.page-content .info-card,.page-content .faq-item,.page-content .box,.page-content .rrb-content-card{padding:24px}
.page-content h2{color:var(--navy);font-size:27px;line-height:1.2;margin:0 0 11px}
.page-content h3{color:#102b50;font-size:18px;line-height:1.3;margin:0 0 8px}
.page-content p,.page-content li{color:var(--muted);font-size:14px;line-height:1.75}
.page-content p{margin:0 0 12px}
.page-content ul{padding-left:20px}
.page-content li{margin:7px 0}
.page-content table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:14px;margin:16px 0}
.page-content th{background:#f1f5fa;color:var(--navy);font-weight:850;text-align:left}
.page-content th,.page-content td{padding:12px 14px;border-bottom:1px solid var(--border);font-size:14px}
.page-content tr:last-child td{border-bottom:0}
/* Internal hero blocks on legacy SEO pages become a compact consistent card. */
.page-content .hero,.page-content .seo-hero,.page-content .rrb-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#0a2248,#123d73);border-radius:20px;padding:30px 32px;color:#fff;box-shadow:0 14px 38px rgba(5,25,55,.12)}
.page-content .hero:before,.page-content .seo-hero:before,.page-content .rrb-hero:before{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:-130px;top:-160px}
.page-content .hero h1,.page-content .seo-hero h1,.page-content .rrb-hero h1,.page-content .hero h2,.page-content .seo-hero h2,.page-content .rrb-hero h2{color:#fff}
.page-content .hero p,.page-content .seo-hero p,.page-content .rrb-hero p{color:#cbd9eb}
.page-content .hero .container,.page-content .seo-hero .container,.page-content .rrb-hero .container{width:100%;position:relative;z-index:2}
.page-content .hero-grid,.page-content .rrb-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center}
.page-content .hero-actions,.page-content .actions,.page-content .seo-cta,.page-content .rrb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.page-content .hero .btn-outline,.page-content .seo-hero .btn-outline,.page-content .rrb-hero .btn-outline{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28)}
.page-content .rrb-summary{background:#fff;border-radius:16px;padding:22px;color:var(--navy);box-shadow:0 10px 28px rgba(0,0,0,.12)}
.page-content .rrb-summary p{color:var(--muted)}
.page-content .rrb-summary-top{font-size:11px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.page-content .rrb-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.page-content .rrb-stats>div{padding:12px 7px;text-align:center;background:#f5f8fc;border-radius:12px}
.page-content .rrb-stats strong{display:block;color:var(--navy);font-size:23px}
.page-content .rrb-stats span{font-size:10px;color:var(--muted);font-weight:800}
/* Avoid homepage styles leaking into nested exam heroes. */
.page-content .hero .eyebrow,.page-content .seo-hero .eyebrow,.page-content .rrb-hero .eyebrow{margin-bottom:10px}
.page-content .grid,.page-content .card-grid,.page-content .rrb-card-grid,.page-content .ahc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.page-content .two-col,.page-content .rrb-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.page-content .rrb-card{padding:22px}
.page-content .rrb-icon{width:46px;height:46px;border-radius:12px;background:#edf5ff;color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:900;margin-bottom:14px}
.page-content .rrb-icon.gold{background:#fff7df;color:#a8790a}.page-content .rrb-icon.green{background:#eaf9f0;color:#16834a}
.page-content .rrb-light-section{background:#eef3f9;padding:28px;border-radius:20px;margin-bottom:22px}
.page-content .faq-grid{display:grid;gap:10px}
.page-content details{background:#fff;border:1px solid var(--border);border-radius:14px;padding:15px 17px}
.page-content summary{cursor:pointer;color:var(--navy);font-weight:850;font-size:14px}
.page-content details p{margin:10px 0 0}
.page-content .cta{padding:0;margin:24px 0 0}
.page-content .cta-box{border-radius:20px;padding:30px 32px}
/* Some older pages have their own light sections. */
.page-content .seo-wrap,.page-content .ahc-main{width:100%;margin:0;padding:0}
.page-content .seo-wrap > .container,.page-content .ahc-main > .container{width:100%}
.page-content .wrap{width:100%;max-width:none;padding:0;margin:0}
.page-content .wrap > section,.page-content .wrap > div{margin-bottom:18px}
.page-content .wrap .hero{margin-bottom:18px}
@media(max-width:900px){
 .page-content .hero-grid,.page-content .rrb-hero-grid,.page-content .two-col,.page-content .rrb-two-col{grid-template-columns:1fr}
 .page-content .grid,.page-content .card-grid,.page-content .rrb-card-grid,.page-content .ahc-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .page-hero{padding:40px 0 36px}.page-hero h1{font-size:34px}.page-content{width:calc(100% - 28px);padding-top:24px}
 .page-content .hero,.page-content .seo-hero,.page-content .rrb-hero{padding:23px 20px;border-radius:16px}
 .page-content .grid,.page-content .card-grid,.page-content .rrb-card-grid,.page-content .ahc-grid{grid-template-columns:1fr}
 .page-content .rrb-stats{grid-template-columns:repeat(3,1fr)}
 .page-content .card,.page-content article,.page-content .content-card,.page-content .info-card,.page-content .faq-item,.page-content .box,.page-content .rrb-content-card{padding:19px}
}
