:root{--navy:#0a0f1e;--navy2:#111827;--slate:#334155;--slate2:#475569;--muted:#64748b;--border:#e2e8f0;--border2:#cbd5e1;--surface:#f8fafc;--surface2:#f1f5f9;--white:#fff;--accent:#0f4c81;--green:#065f46;--green-light:#d1fae5;--r:4px;--r2:8px;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;background:var(--white);color:var(--navy);line-height:1.6;overflow-x:hidden;}
.container{max-width:1200px;margin:0 auto;padding:0 40px;}
.section-eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--accent);margin-bottom:20px;}
.section-eyebrow::before{content:'';width:24px;height:1px;background:var(--accent);}
.topbar{background:var(--navy);padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.06);}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;}
.topbar-left{display:flex;gap:24px;}
.topbar-item{display:flex;align-items:center;gap:6px;font-size:11.5px;color:rgba(255,255,255,0.5);}
.topbar-item svg{width:12px;height:12px;stroke:rgba(255,255,255,0.4);}
.topbar-right{display:flex;align-items:center;gap:16px;}
.topbar-link{font-size:11.5px;color:rgba(255,255,255,0.45);text-decoration:none;transition:color .2s;}
.topbar-link:hover{color:rgba(255,255,255,0.8);}
.topbar-divider{width:1px;height:12px;background:rgba(255,255,255,0.15);}
nav{position:sticky;top:0;z-index:200;background:rgba(255,255,255,0.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);}
.nav-inner{display:flex;align-items:center;height:64px;}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:48px;flex-shrink:0;}
.nav-logo-mark{width:32px;height:32px;background:var(--navy);border-radius:var(--r);display:flex;align-items:center;justify-content:center;}
.nav-logo-mark svg{width:18px;height:18px;stroke:white;fill:none;}
.nav-logo-text{font-family:'Playfair Display',serif;font-size:17px;font-weight:600;color:var(--navy);}
.nav-logo-text span{color:var(--accent);}
.nav-menu{display:flex;align-items:center;gap:2px;flex:1;}
.nav-item{position:relative;}
.nav-link{display:flex;align-items:center;gap:5px;padding:8px 14px;font-size:13.5px;font-weight:500;color:var(--slate2);text-decoration:none;border-radius:var(--r);transition:all .15s;white-space:nowrap;}
.nav-link:hover,.nav-link.active{color:var(--navy);background:var(--surface2);}
.nav-link svg{width:13px;height:13px;stroke:currentColor;transition:transform .2s;}
.nav-item:hover .nav-link svg{transform:rotate(180deg);}
.nav-dropdown{position:absolute;top:calc(100% + 8px);left:0;background:white;border:1px solid var(--border);border-radius:var(--r2);box-shadow:0 8px 32px rgba(0,0,0,0.1);padding:8px;min-width:220px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:all .18s;z-index:300;}
.nav-item:hover .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0);}
.nav-drop-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:var(--r);text-decoration:none;transition:background .15s;}
.nav-drop-item:hover{background:var(--surface);}
.nav-drop-icon{width:28px;height:28px;background:var(--surface2);border-radius:var(--r);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;}
.nav-drop-icon svg{width:14px;height:14px;stroke:var(--accent);}
.nav-drop-title{font-size:13px;font-weight:500;color:var(--navy);}
.nav-drop-sub{font-size:11.5px;color:var(--muted);margin-top:2px;}
.nav-right{display:flex;align-items:center;gap:8px;margin-left:auto;}
.btn-ghost{padding:8px 16px;font-size:13px;font-weight:500;color:var(--slate);text-decoration:none;border-radius:var(--r);transition:all .15s;border:1px solid transparent;}
.btn-ghost:hover{background:var(--surface2);color:var(--navy);border-color:var(--border);}
.btn-nav-cta{padding:9px 20px;font-size:13px;font-weight:600;color:white;background:var(--navy);border-radius:var(--r);text-decoration:none;transition:all .15s;border:1px solid var(--navy);display:flex;align-items:center;gap:7px;}
.btn-nav-cta:hover{background:var(--accent);border-color:var(--accent);}
.btn-nav-cta svg{width:13px;height:13px;stroke:white;}
.page-hero{background:var(--navy);padding:72px 0 64px;position:relative;overflow:hidden;}
.page-hero-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.025) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;}
.page-hero-inner{position:relative;z-index:1;}
.page-hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:2px;padding:5px 12px;margin-bottom:24px;font-size:11px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.5);}
.page-hero h1{font-family:'Playfair Display',serif;font-size:clamp(32px,4vw,52px);font-weight:600;color:white;line-height:1.15;letter-spacing:-0.02em;margin-bottom:16px;}
.page-hero p{font-size:16px;color:rgba(255,255,255,0.55);line-height:1.75;font-weight:300;max-width:560px;}
.cta-band{padding:80px 0;background:var(--navy);position:relative;overflow:hidden;}
.cta-band-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.025) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;}
.cta-band-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;}
.cta-band-text h2{font-family:'Playfair Display',serif;font-size:clamp(28px,4vw,44px);font-weight:600;color:white;letter-spacing:-0.02em;line-height:1.15;margin-bottom:12px;}
.cta-band-text h2 em{font-style:italic;color:#93c5fd;}
.cta-band-text p{font-size:15px;color:rgba(255,255,255,0.5);font-weight:300;max-width:480px;}
.cta-band-actions{display:flex;flex-direction:column;gap:10px;min-width:220px;}
.btn-cta-p{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;background:white;color:var(--navy);font-size:14px;font-weight:700;border-radius:var(--r);text-decoration:none;transition:all .2s;}
.btn-cta-p:hover{background:#e2e8f0;}
.btn-cta-s{display:flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px;background:transparent;color:rgba(255,255,255,0.65);font-size:14px;font-weight:500;border-radius:var(--r);text-decoration:none;border:1px solid rgba(255,255,255,0.2);transition:all .2s;}
.btn-cta-s:hover{border-color:rgba(255,255,255,0.45);color:white;}
.cta-footnote{font-size:11.5px;color:rgba(255,255,255,0.25);text-align:center;}
footer{background:#060a14;border-top:1px solid rgba(255,255,255,0.06);}
.footer-main{padding:56px 0 48px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;}
.footer-brand .nav-logo-text{color:white;font-size:18px;}
.footer-brand .nav-logo-text span{color:#93c5fd;}
.footer-brand p{font-size:13px;color:rgba(255,255,255,0.3);margin-top:12px;line-height:1.7;font-weight:300;max-width:260px;}
.footer-contact-row{margin-top:20px;}
.footer-contact-row a{display:flex;align-items:center;gap:7px;font-size:12.5px;color:rgba(255,255,255,0.35);text-decoration:none;margin-bottom:7px;transition:color .15s;}
.footer-contact-row a:hover{color:rgba(255,255,255,0.65);}
.footer-contact-row a svg{width:13px;height:13px;stroke:currentColor;flex-shrink:0;}
.footer-col h4{font-size:10.5px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.25);margin-bottom:16px;}
.footer-col a{display:block;font-size:13.5px;color:rgba(255,255,255,0.4);text-decoration:none;margin-bottom:10px;font-weight:300;transition:color .15s;}
.footer-col a:hover{color:rgba(255,255,255,0.75);}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.06);padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.footer-bottom-left{font-size:12px;color:rgba(255,255,255,0.2);}
.footer-bottom-right{display:flex;gap:20px;}
.footer-bottom-right a{font-size:12px;color:rgba(255,255,255,0.2);text-decoration:none;transition:color .15s;}
.footer-bottom-right a:hover{color:rgba(255,255,255,0.5);}
.faq-item{border-bottom:1px solid var(--border);}
.faq-btn{width:100%;background:none;border:none;text-align:left;padding:20px 0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:'Inter',sans-serif;}
.faq-question{font-size:14.5px;font-weight:600;color:var(--navy);transition:color .15s;}
.faq-item.open .faq-question{color:var(--accent);}
.faq-toggle{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s;}
.faq-item.open .faq-toggle{background:var(--accent);border-color:var(--accent);transform:rotate(45deg);}
.faq-toggle svg{width:10px;height:10px;stroke:var(--muted);}
.faq-item.open .faq-toggle svg{stroke:white;}
.faq-answer{font-size:13.5px;color:var(--slate2);line-height:1.8;font-weight:300;padding-bottom:20px;display:none;max-width:600px;}
.faq-item.open .faq-answer{display:block;}
.chk{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;}
.chk.yes{background:var(--green-light);}
.chk.yes svg{width:9px;height:9px;stroke:var(--green);stroke-width:2.5;fill:none;}
.chk.no{background:var(--surface2);}
.chk.no::after{content:'';width:6px;height:1.5px;background:var(--border2);border-radius:1px;}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s ease;}
.reveal.visible{opacity:1;transform:none;}
.reveal-delay-1{transition-delay:.08s;}
.reveal-delay-2{transition-delay:.16s;}
.reveal-delay-3{transition-delay:.24s;}
@media(max-width:900px){.container{padding:0 20px;}.topbar{display:none;}.cta-band-inner{grid-template-columns:1fr;gap:32px;}.footer-main{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.footer-main{grid-template-columns:1fr;}.nav-menu{display:none;}}
