/* ============================================================
   VALOR FAMILY INSURANCE — Design System v3
   Modern premium fintech · light mode · navy + gold
   ============================================================ */
:root{
  --navy:#0A2E5C;
  --navy-dark:#061D3D;
  --navy-deep:#04142B;
  --navy-mid:#0E4B8F;
  --blue:#1063C4;
  --blue-bright:#2D7FE0;
  --blue-pale:#EAF2FC;
  --sky:#F4F8FD;
  --gold:#C9992F;
  --gold-bright:#E8B93B;
  --gold-pale:#FBF3DC;
  --ink:#0F1B2D;
  --muted:#54657E;
  --line:#DFE7F0;
  --line-soft:#E9EFF6;
  --bg:#FFFFFF;
  --green:#159A57;
  --grad-navy:linear-gradient(135deg,#0A2E5C 0%,#0E4B8F 60%,#1063C4 100%);
  --grad-gold:linear-gradient(135deg,#E8B93B 0%,#C9992F 100%);
  --grad-section:linear-gradient(180deg,#F7FAFE 0%,#EDF4FB 100%);
  --shadow-sm:0 1px 2px rgba(10,46,92,.06),0 6px 20px -8px rgba(10,46,92,.12);
  --shadow-md:0 4px 12px rgba(10,46,92,.07),0 18px 44px -14px rgba(10,46,92,.22);
  --shadow-lg:0 8px 24px rgba(10,46,92,.09),0 32px 72px -18px rgba(10,46,92,.30);
  --shadow-gold:0 8px 28px -8px rgba(201,153,47,.5);
  --r-sm:10px; --r-md:16px; --r-lg:22px;
  --sans:'Inter',-apple-system,'Segoe UI',Arial,sans-serif;
  --serif:'Plus Jakarta Sans',-apple-system,'Segoe UI',Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased;background:
  radial-gradient(1200px 700px at 100% 18%, rgba(16,99,196,.05), transparent 60%),
  radial-gradient(1000px 600px at 0% 55%, rgba(232,185,59,.05), transparent 60%),
  linear-gradient(180deg,#F8FAFD 0%,#F2F6FB 100%);
  background-attachment:fixed}
img{max-width:100%;display:block}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2{font-family:var(--serif);font-weight:800;color:var(--navy-dark);letter-spacing:-.025em}
h3,h4{color:var(--navy-dark)}
.container{max-width:1180px;margin:0 auto;padding:0 28px}
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.eyebrow::before{content:"";width:28px;height:2px;border-radius:2px;background:var(--gold-bright)}
.section-head:not(.left) .eyebrow::after{content:"";width:28px;height:2px;border-radius:2px;background:var(--gold-bright)}

/* ---------- Reveal on scroll ---------- */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.rv{opacity:1;transform:none;transition:none}}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--sans);font-weight:700;font-size:15.5px;padding:15px 30px;border-radius:100px;border:1.5px solid transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s;white-space:nowrap;text-decoration:none;position:relative}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-primary{background:var(--grad-navy);color:#fff;box-shadow:0 8px 24px -8px rgba(16,99,196,.55)}
.btn-primary:hover{box-shadow:0 14px 32px -8px rgba(16,99,196,.65)}
.btn-gold{background:var(--grad-gold);color:var(--navy-deep);box-shadow:var(--shadow-gold)}
.btn-gold:hover{box-shadow:0 14px 34px -8px rgba(201,153,47,.6)}
.btn-outline{background:#fff;color:var(--navy);border-color:#C4D4E8}
.btn-outline:hover{border-color:var(--navy);background:var(--blue-pale)}
.btn-white{background:#fff;color:var(--navy);box-shadow:0 8px 24px -10px rgba(4,20,43,.5)}
.btn-white:hover{background:var(--gold-pale)}
.btn-ghost-light{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.4);backdrop-filter:blur(6px)}
.btn-ghost-light:hover{background:rgba(255,255,255,.16);border-color:#fff}
.btn-lg{padding:18px 38px;font-size:16.5px}
.text-link{font-weight:700;color:var(--blue)}
.text-link::after{content:" →";transition:margin .15s}
.text-link:hover::after{margin-left:3px}

/* ---------- Utility bar ---------- */
.utility{background:var(--navy-deep);color:#9FB4CE;font-size:13px;position:relative}
.utility::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(232,185,59,.5),transparent)}
.utility-inner{display:flex;justify-content:space-between;align-items:center;height:40px}
.utility b{color:#fff;font-weight:600}
.utility a{color:var(--gold-bright);font-weight:700}
.utility .right{display:flex;gap:22px;align-items:center}

/* ---------- Header ---------- */
header.site{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(223,231,240,.7);transition:box-shadow .25s ease}
header.site.scrolled{box-shadow:0 10px 34px -14px rgba(10,46,92,.22)}
.nav{display:flex;align-items:center;justify-content:space-between;height:82px;gap:28px;transition:height .25s ease}
header.site.scrolled .nav{height:68px}
.logo-img{height:52px;width:auto;transition:height .25s ease}
header.site.scrolled .logo-img{height:44px}
.nav-links{display:flex;gap:32px;font-size:15px;font-weight:600}
.nav-links a{white-space:nowrap;color:#42536B;padding:6px 0;position:relative;transition:color .18s}
.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:2.5px;border-radius:2px;background:var(--grad-gold);transition:right .25s ease}
.nav-links a:hover{color:var(--navy);text-decoration:none}
.nav-links a:hover::after{right:0}
.nav-links a.active{color:var(--navy)}
.nav-links a.active::after{right:0}
.nav-right{display:flex;align-items:center;gap:18px}
/* ---------- Mobile menu ---------- */
.menu-btn{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:12px;min-width:48px;min-height:48px}
.menu-btn span{width:24px;height:2.5px;background:var(--navy);border-radius:2px;transition:transform .25s ease,opacity .2s}
.menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
.mobile-menu{position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 24px 48px -18px rgba(10,46,92,.35);border-bottom:1px solid var(--line);padding:10px 24px 24px;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .22s ease,transform .22s ease;z-index:99}
.mobile-menu.open{opacity:1;transform:none;pointer-events:auto}
.mobile-menu nav a{display:block;padding:15px 4px;font-weight:700;font-size:16.5px;color:var(--navy-dark);border-bottom:1px solid var(--line-soft)}
.mobile-menu nav a:hover{text-decoration:none;color:var(--blue)}
.mobile-menu .btn{width:100%;margin-top:14px}
@media(max-width:1020px){.menu-btn{display:flex}}
@media(min-width:1021px){.menu-btn,.mobile-menu{display:none}}
.nav-phone{text-align:right;line-height:1.25}
.nav-phone .lbl{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.nav-phone a{font-size:17px;font-weight:800;color:var(--navy)}
.nav-right .btn{padding:13px 26px}

/* ---------- Breadcrumb ---------- */
.crumbs{background:var(--sky);border-bottom:1px solid var(--line-soft);font-size:13px;color:var(--muted);padding:11px 0}
.crumbs a{color:var(--muted)}
.crumbs b{color:var(--navy);font-weight:700}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;background:var(--navy-deep);display:flex;align-items:center;min-height:700px}
.hero-media{position:absolute;inset:0;z-index:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:72% 28%}
.hero-media::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(4,20,43,.97) 0%,rgba(4,20,43,.88) 34%,rgba(4,20,43,.5) 64%,rgba(4,20,43,.22) 100%),
  linear-gradient(180deg,rgba(4,20,43,.3) 0%,transparent 30%,transparent 65%,rgba(4,20,43,.6) 100%)}
.hero-grid{display:block;padding:108px 0 118px;position:relative;z-index:1;width:100%}
.hero-grid>div:first-child{max-width:620px}
.hero .eyebrow{color:var(--gold-bright)}
.hero .eyebrow::before{background:var(--gold-bright)}
.hero h1{color:#fff;font-size:clamp(38px,4.9vw,62px);line-height:1.07;margin:22px 0 22px;text-shadow:0 2px 24px rgba(4,20,43,.4)}
.hero h1 em{font-style:normal;color:#fff;background-image:linear-gradient(180deg,transparent 70%,rgba(232,185,59,.65) 70%,rgba(232,185,59,.65) 94%,transparent 94%)}
.hero .lede{font-size:18.5px;color:#C6D5E8;max-width:540px;margin-bottom:32px}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px}
.hero-checks{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:14px;color:#DAE5F2;font-weight:600}
.hero-checks span{display:inline-flex;align-items:center;gap:8px}
.hero .hero-checks svg path,.page-hero .hero-checks svg path{stroke:var(--gold-bright)}
.quick-start{margin-top:36px}
.quick-start .qs-label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8FA6C2;margin-bottom:12px}
.quick-chips{display:flex;gap:10px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:100px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px);border:1.5px solid rgba(255,255,255,.3);font-weight:700;font-size:14px;color:#fff;transition:transform .18s,border-color .18s,background .18s;cursor:pointer}
.chip:hover{transform:translateY(-2px);border-color:var(--gold-bright);background:rgba(255,255,255,.15);text-decoration:none}
.chip svg{flex-shrink:0}
/* stagger reveals inside grids */
.policy-grid>.rv:nth-child(2),.steps>.rv:nth-child(2),.testi-grid>.rv:nth-child(2){transition-delay:.12s}
.policy-grid>.rv:nth-child(3),.steps>.rv:nth-child(3),.testi-grid>.rv:nth-child(3){transition-delay:.24s}
.glance>.rv:nth-child(2){transition-delay:.08s}
.glance>.rv:nth-child(3){transition-delay:.16s}
.glance>.rv:nth-child(4){transition-delay:.24s}
.points .rv:nth-child(2){transition-delay:.08s}
.points .rv:nth-child(3){transition-delay:.16s}
.points .rv:nth-child(4){transition-delay:.24s}

/* ---------- Stat band (dark) ---------- */
.statband{background:var(--navy-deep);position:relative;overflow:hidden}
.statband::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 300px at 50% -80%, rgba(16,99,196,.35), transparent 70%)}
.statband-inner{display:grid;grid-template-columns:repeat(4,1fr);padding:34px 0;position:relative}
.statitem{display:flex;align-items:center;gap:16px;padding:8px 30px;border-left:1px solid rgba(255,255,255,.1)}
.statitem:first-child{border-left:none;padding-left:0}
.statitem .num{font-family:var(--serif);font-size:32px;font-weight:700;background:linear-gradient(135deg,#E8B93B,#F6D87E);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.1}
.statitem .lbl{font-size:13px;color:#9FB4CE;line-height:1.4}

/* ---------- Sections ---------- */
.section{padding:104px 0;position:relative}
.section.alt{background:transparent;border:none}
.section-head{max-width:700px;margin:0 auto 60px;text-align:center}
.section-head h2{font-size:clamp(30px,3.6vw,44px);line-height:1.14;margin:18px 0 16px}
.section-head p{color:var(--muted);font-size:17px}
.section-head.left{text-align:left;margin:0 0 44px}

/* ---------- Policy cards ---------- */
.policy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.pcard{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;position:relative}
.pcard::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--grad-navy)}
.pcard:nth-child(2)::before{background:var(--grad-gold)}
.pcard:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px)}
.pcard:nth-child(2){border-color:#EFDFAE;box-shadow:0 4px 12px rgba(201,153,47,.08),0 18px 44px -14px rgba(201,153,47,.28)}
.pcard-top{padding:34px 30px 0}
.pcard .tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--navy-mid);background:var(--blue-pale);border-radius:100px;padding:6px 14px;margin-bottom:16px}
.pcard .tag.gold{color:#8A6A15;background:var(--gold-pale)}
.pcard h3{font-family:var(--serif);font-size:25px;margin-bottom:9px;font-weight:700}
.pcard .desc{font-size:14.5px;color:var(--muted);margin-bottom:18px}
.pcard ul{list-style:none;margin:0 30px;border-top:1px solid var(--line-soft);padding:8px 0}
.pcard li{display:flex;gap:11px;font-size:14px;padding:9px 0;color:#33465F}
.pcard li svg{flex-shrink:0;margin-top:4px}
.pcard-foot{margin-top:auto;padding:22px 30px 30px;display:flex;flex-direction:column;gap:13px}
.pcard-foot .btn{width:100%}
.pcard-foot .text-link{text-align:center;font-size:14.5px}

/* ---------- Dark "Why Valor" band with edge-bleed photo ---------- */
.section.alt#why{background:
  radial-gradient(900px 500px at 100% 0%, rgba(16,99,196,.25), transparent 60%),
  radial-gradient(700px 400px at 0% 100%, rgba(232,185,59,.10), transparent 60%),
  var(--navy-deep);
  border:none;color:#DCE7F3;overflow:hidden}
.section.alt#why .eyebrow{color:var(--gold-bright)}
.section.alt#why .eyebrow::before{background:var(--gold-bright)}
.section.alt#why h2{color:#fff}
.section.alt#why .lede{color:#9FB4CE}
.section.alt#why .point h4{color:#fff}
.section.alt#why .point p{color:#9FB4CE}
.section.alt#why .point .ic{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14)}
.section.alt#why .point .ic svg path, .section.alt#why .point .ic svg rect{stroke:var(--gold-bright)}
.why-media{position:absolute;left:0;top:0;bottom:0;width:47%}
.why-media img{width:100%;height:100%;object-fit:cover}
.why-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,43,.12) 30%,rgba(4,20,43,.72) 82%,#04142B 100%)}
.why-content{margin-left:53%;position:relative;z-index:1}
.why-content h2{font-size:clamp(28px,3.4vw,41px);line-height:1.15;margin:18px 0 16px}
.why-content .lede{font-size:16.5px;margin-bottom:28px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}
/* ---------- "What happens next" panel ---------- */
.next-steps{display:flex;flex-direction:column;gap:14px;margin-top:6px}
.ns{display:flex;gap:14px;align-items:flex-start;background:rgba(255,255,255,.85);backdrop-filter:blur(6px);border:1px solid var(--line-soft);border-radius:var(--r-md);padding:18px 20px;box-shadow:var(--shadow-sm)}
.ns .ns-n{width:34px;height:34px;flex-shrink:0;border-radius:50%;background:var(--grad-navy);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px -6px rgba(16,99,196,.5)}
.ns b{display:block;color:var(--navy-dark);font-size:15px;margin-bottom:1px}
.ns span{font-size:13.5px;color:var(--muted);line-height:1.5}
.split h2{font-size:clamp(28px,3.3vw,40px);margin:18px 0 16px;line-height:1.16}
.split .lede{color:var(--muted);margin-bottom:30px;font-size:16.5px}
.points{display:flex;flex-direction:column;gap:14px}
.point{display:flex;gap:16px;padding:16px 18px;border-radius:var(--r-md);transition:background .2s}
.point:hover{background:rgba(255,255,255,.05)}
.point .ic{width:46px;height:46px;flex-shrink:0;border-radius:14px;background:var(--blue-pale);display:flex;align-items:center;justify-content:center}
.point h4{font-size:16.5px;margin-bottom:3px}
.point p{font-size:14.5px;color:var(--muted)}

/* ---------- Steps ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:s}
.stepcard{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-lg);padding:36px 32px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.stepcard:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.stepcard::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(16,99,196,.08),transparent 70%)}
.stepcard .n{font-family:var(--serif);width:46px;height:46px;border-radius:50%;background:var(--grad-navy);color:#fff;font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;box-shadow:0 8px 20px -6px rgba(16,99,196,.5)}
.stepcard h3{font-size:19.5px;margin-bottom:8px;font-family:var(--serif);font-weight:700}
.stepcard p{font-size:14.5px;color:var(--muted)}
.stepcard .time{display:inline-block;margin-top:16px;font-size:12.5px;font-weight:700;color:var(--green);background:#E6F6EE;padding:5px 13px;border-radius:100px}

/* ---------- Testimonials ---------- */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.testi{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-lg);padding:34px 30px 28px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;position:relative;transition:transform .25s,box-shadow .25s}
.testi:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.testi::before{content:"“";position:absolute;top:6px;right:22px;font-family:var(--serif);font-size:88px;line-height:1;color:var(--gold-pale);font-weight:700}
.stars{color:var(--gold-bright);letter-spacing:2.5px;font-size:16px;margin-bottom:14px;text-shadow:0 1px 0 rgba(201,153,47,.25)}
.testi p{font-size:14.8px;color:#33465F;margin-bottom:20px;flex:1;position:relative}
.who{display:flex;align-items:center;gap:12px;font-size:13.5px;border-top:1px solid var(--line-soft);padding-top:16px}
.who .av{width:42px;height:42px;border-radius:50%;background:var(--grad-navy);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 3px #fff,0 0 0 4.5px var(--gold-bright)}
.who .nm{font-weight:800;color:var(--navy-dark)}
.who .rl{color:var(--muted);font-size:12.5px}

/* ---------- Comparison table ---------- */
.cmp{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-sm);font-size:14.5px}
.cmp th,.cmp td{padding:15px 20px;text-align:left;border-bottom:1px solid var(--line-soft)}
.cmp thead th{background:var(--grad-navy);color:#fff;font-weight:700;font-size:14px;border-bottom:none}
.cmp thead th:first-child{width:26%}
.cmp tbody tr:nth-child(even){background:var(--sky)}
.cmp tbody tr:last-child td{border-bottom:none}
.cmp td:first-child{font-weight:700;color:var(--navy-dark)}
.cmp .hl{background:var(--gold-pale)!important;font-weight:600}
.table-wrap{overflow-x:auto}

/* ---------- FAQ ---------- */
.faq-wrap{max-width:800px;margin:0 auto}
details{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-md);margin-bottom:12px;box-shadow:var(--shadow-sm);transition:box-shadow .2s}
details:hover{box-shadow:var(--shadow-md)}
details[open]{border-color:#C7DBF3}
summary{cursor:pointer;padding:21px 26px;font-weight:700;font-size:16px;color:var(--navy-dark);list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:24px;font-weight:400;color:#fff;background:var(--grad-navy);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .25s;line-height:1}
details[open] summary::after{transform:rotate(45deg)}
details .ans{padding:0 26px 22px;font-size:15px;color:var(--muted)}

/* ---------- Quote form ---------- */
.quote-wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.quote-card{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden}
.quote-head{background:var(--grad-navy);color:#fff;padding:26px 32px;position:relative;overflow:hidden}
.quote-head::after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(232,185,59,.3),transparent 70%)}
.quote-head h3{color:#fff;font-family:var(--serif);font-size:22px;margin-bottom:4px;position:relative}
.quote-head p{font-size:13.5px;color:#BCD1EA;position:relative}
.progress{display:flex;gap:7px;padding:18px 32px 0}
.progress span{height:5px;flex:1;border-radius:10px;background:var(--line-soft);transition:background .3s}
.progress span.active{background:var(--grad-gold)}
.form-body{padding:20px 32px 30px}
.step{display:none}
.step.active{display:block;animation:fadeUp .35s cubic-bezier(.16,1,.3,1)}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.step-label{font-size:17px;font-weight:700;color:var(--navy-dark);margin-bottom:15px}
.step-label .sc{display:block;font-size:11.5px;font-weight:800;color:var(--gold);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}
.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.option-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.opt{border:1.5px solid var(--line);border-radius:var(--r-md);padding:15px 12px;text-align:center;cursor:pointer;transition:all .18s;font-weight:700;font-size:14px;background:#fff;color:var(--ink)}
.opt small{display:block;font-weight:500;font-size:11.5px;color:var(--muted);margin-top:3px}
.opt:hover{border-color:var(--blue-bright);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.opt.selected{border-color:var(--navy);background:var(--blue-pale);box-shadow:inset 0 0 0 1.5px var(--navy),var(--shadow-sm)}
.field{margin-bottom:13px}
.field label{display:block;font-size:12.5px;font-weight:700;color:var(--navy-dark);margin-bottom:6px}
.field input,.field select{width:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;font-size:15px;font-family:inherit;color:var(--ink);background:#fff;transition:border .15s,box-shadow .15s}
.field input:focus,.field select:focus{outline:none;border-color:var(--blue-bright);box-shadow:0 0 0 4px rgba(45,127,224,.14)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-nav{display:flex;gap:10px;margin-top:18px}
.btn-back{background:var(--sky);color:var(--navy);flex:0 0 auto;padding:15px 22px;border-color:var(--line)}
.btn-next{flex:1}
.assure{display:flex;align-items:flex-start;justify-content:center;gap:7px;font-size:12px;color:var(--muted);margin-top:14px;text-align:center}
.error-msg{color:#C0392B;font-size:12.5px;margin-top:8px;display:none;font-weight:700}
.success-wrap{text-align:center;padding:8px 0 4px}
.success-icon{width:62px;height:62px;border-radius:50%;background:#E6F6EE;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 0 0 8px rgba(21,154,87,.08)}
.success-wrap h4{font-family:var(--serif);font-size:23px;margin-bottom:7px}
.success-wrap p{font-size:14.5px;color:var(--muted);margin-bottom:20px}
.success-actions{display:flex;flex-direction:column;gap:11px}

/* ---------- CTA band ---------- */
.ctaband{background:var(--navy-deep);color:#fff;padding:92px 0;position:relative;overflow:hidden}
.cta-media{position:absolute;inset:0}
.cta-media img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.cta-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,43,.97) 35%,rgba(4,20,43,.72) 100%)}
.ctaband::before{content:"";position:absolute;inset:0;z-index:1;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(180deg,transparent,black 60%);pointer-events:none}
.ctaband .container{position:relative;z-index:2}
.ctaband .inner{display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap;position:relative}
.ctaband h2{color:#fff;font-size:clamp(27px,3.2vw,38px);line-height:1.18;max-width:600px}
.ctaband p{color:#9FB4CE;margin-top:10px;max-width:540px;font-size:16px}
.ctaband .actions{display:flex;gap:14px;flex-wrap:wrap}

/* ---------- Page hero (interior) ---------- */
.page-hero{position:relative;overflow:hidden;background:var(--navy-deep);display:flex;align-items:center;min-height:520px;padding:0}
.page-hero .hero-grid{padding:92px 0 110px}
.page-hero .eyebrow{color:var(--gold-bright)}
.page-hero .eyebrow::before{background:var(--gold-bright)}
.page-hero h1{color:#fff;font-size:clamp(34px,4.2vw,52px);line-height:1.08;margin:20px 0 18px;text-shadow:0 2px 24px rgba(4,20,43,.4)}
.page-hero .lede{color:#C6D5E8;font-size:17.5px;max-width:540px;margin-bottom:30px}
.page-hero .hero-checks{color:#DAE5F2}
.glance{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:-38px;position:relative;z-index:2}
.glance .g{background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border:1px solid var(--line-soft);border-radius:var(--r-md);padding:20px 22px;box-shadow:var(--shadow-md)}
.glance .g .k{font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--gold);margin-bottom:5px}
.glance .g .v{font-weight:700;color:var(--navy-dark);font-size:16px;line-height:1.35}
.prose h2{font-size:29px;margin:42px 0 14px}
.prose h3{font-size:19px;margin:28px 0 8px;font-family:var(--sans);font-weight:800}
.prose p{color:#33465F;margin-bottom:15px;font-size:15.8px}
.prose ul{margin:0 0 15px 22px;color:#33465F;font-size:15.8px}
.prose li{margin-bottom:7px}
.callout{background:linear-gradient(135deg,var(--blue-pale),#F3F8FE);border:1px solid #C7DBF3;border-left:5px solid var(--blue);border-radius:var(--r-md);padding:20px 24px;margin:26px 0;font-size:15.5px;color:var(--navy-dark);box-shadow:var(--shadow-sm)}
.callout b{color:var(--navy)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:26px 0}
.goodbad{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-md);padding:26px 28px;box-shadow:var(--shadow-sm)}
.goodbad h4{font-size:15.5px;margin-bottom:12px;display:flex;align-items:center;gap:9px}
.goodbad ul{list-style:none;margin:0}
.goodbad li{font-size:14.3px;color:#33465F;padding:8px 0;border-top:1px dashed var(--line)}
.goodbad li svg{vertical-align:-2px;margin-right:8px}

/* ---------- Footer ---------- */
footer.site{background:var(--navy-deep);color:#8AA0BC;padding:64px 0 40px;font-size:14px;position:relative}
footer.site::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(232,185,59,.55),transparent)}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;margin-bottom:42px}
.foot-grid h5{color:#fff;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px}
.foot-grid a{display:block;padding:5px 0;color:#8AA0BC;transition:color .15s}
.foot-grid a:hover{color:var(--gold-bright);text-decoration:none}
.foot-logo{background:#fff;border-radius:var(--r-sm);padding:10px 14px;display:inline-block;margin-bottom:18px;box-shadow:0 8px 24px -10px rgba(0,0,0,.5)}
.foot-logo img{height:46px}
.foot-legal{border-top:1px solid rgba(255,255,255,.08);padding-top:24px;font-size:11.5px;line-height:1.7;color:#5B7290}

/* ---------- Mobile sticky ---------- */
.sticky-call{display:none;position:fixed;bottom:0;left:0;right:0;z-index:200;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(10,46,92,.14);padding:10px 14px;gap:10px}
.sticky-call .btn{flex:1;padding:13px 10px;font-size:14px}

/* ---------- Responsive ---------- */
@media(max-width:1020px){
  .split,.quote-wrap{grid-template-columns:1fr;gap:48px}
  .policy-grid,.steps,.testi-grid{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}
  .statband-inner,.glance{grid-template-columns:repeat(2,1fr);gap:16px}
  .statitem{border-left:none;padding:8px 0}
  .nav-links{display:none}
  .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
  .hero{min-height:0}
  .page-hero{min-height:0}
  .hero-grid{padding:80px 0 92px}
  .hero-media::after{background:linear-gradient(90deg,rgba(4,20,43,.94) 0%,rgba(4,20,43,.86) 55%,rgba(4,20,43,.62) 100%)}
  .hero-grid>div:first-child{max-width:none}
  .why-media{position:relative;width:100%;height:320px}
  .why-media::after{background:linear-gradient(180deg,rgba(4,20,43,.05) 40%,#04142B 100%)}
  .why-content{margin-left:0}
  .cta-media::after{background:linear-gradient(180deg,rgba(4,20,43,.96) 40%,rgba(4,20,43,.85))}
}
@media(max-width:640px){
  .container{padding:0 20px}
  .nav-right .btn{display:none}
  .nav-phone{display:none}
  .nav{height:70px}
  .logo-img{height:44px}
  .section{padding:56px 0}
  .hero-grid{padding:68px 0 80px}
  .hero-ctas{flex-direction:column}
  .hero-ctas .btn{width:100%}
  .btn-lg{padding:16px 26px;font-size:16px}
  .quick-chips .chip{padding:12px 18px}
  .field-row,.option-grid.cols-3{grid-template-columns:1fr}
  .field input,.field select{font-size:16px;padding:15px 16px}
  .opt{padding:16px 12px;font-size:15px}
  .quote-head{padding:22px 22px}
  .form-body{padding:18px 22px 26px}
  .progress{padding:16px 22px 0}
  .two-col{grid-template-columns:1fr}
  .glance{grid-template-columns:1fr 1fr;gap:12px}
  .glance .g{padding:16px 16px}
  .glance .g .v{font-size:14.5px}
  .statitem .num{font-size:26px}
  .statband-inner{padding:26px 0}
  .pcard-top{padding:28px 24px 0}
  .pcard ul{margin:0 24px}
  .pcard-foot{padding:20px 24px 26px}
  summary{padding:18px 20px;font-size:15px}
  details .ans{padding:0 20px 18px;font-size:14.5px}
  .prose h2{font-size:24px}
  .prose p,.prose ul{font-size:15px}
  .ctaband{padding:64px 0}
  .ctaband .actions{width:100%}
  .ctaband .actions .btn{width:100%}
  .sticky-call{display:flex;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
  body{padding-bottom:70px}
  .utility .right span.hrs{display:none}
  .utility{font-size:12px}
  .utility-inner>div:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:62%}
  .foot-grid{grid-template-columns:1fr}
  .ctaband .inner{flex-direction:column;align-items:flex-start}
  .next-steps .ns{padding:15px 16px}
  .table-wrap{-webkit-overflow-scrolling:touch}
  .cmp th,.cmp td{padding:12px 14px;font-size:13.5px}
}
