/* Claim Resolution Center – generated by scripts/build.py */

@font-face{font-family:Fraunces;font-style:normal;font-weight:500 800;font-display:swap;src:url(/assets/fonts/fraunces-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Outfit;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/outfit-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--brand:#0E4F57;--brand-2:#13707A;--brand-dark:#0B1F2A;--accent:#E8A33D;--accent-hover:#F2B45A;--accent-ink:#1B1307;
--glow-1:rgba(232,163,61,.34);--glow-2:rgba(19,112,122,.5);--tag-on-dark:#F6CF94;
--bg:#F4F6F5;--surface:#fff;--ink:#0F1D24;--muted:#46555C;--line:#D9E2E1;--soft:#E7EFED;
--head:Fraunces,Georgia,'Times New Roman',serif;--body:Outfit,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
--radius:24px;--hero-img:url(/assets/img/hero-1920.jpg);--hero-img-webp:url(/assets/img/hero-1920.webp);
--hero-img-sm:url(/assets/img/hero-960.jpg);--hero-img-sm-webp:url(/assets/img/hero-960.webp)}
.site h1,.site h2{font-weight:620;letter-spacing:-.022em;font-optical-sizing:auto}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h,64px) + 32px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.site img{max-width:100%;height:auto;display:block}
.site a{color:var(--brand);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.site a:hover{color:var(--brand-2)}
.btn,.gnav a,.site .btn,.site .gnav a{text-decoration:none}
.site h1,.site h2,.site h3{font-family:var(--head);color:inherit;line-height:1.12;margin:0 0 .5em;text-wrap:balance}
.site h1{font-size:clamp(2.3rem,5vw,3.8rem)}
.site h2{font-size:clamp(1.85rem,3.6vw,2.7rem)}
.site h3{font-size:1.15rem;font-family:var(--body);font-weight:700;letter-spacing:0;line-height:1.3}
.site p{margin:0 0 1em;text-wrap:pretty}
.wrap{width:min(1200px,100% - 40px);margin-inline:auto}
.narrow{width:min(860px,100% - 40px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:10px 14px;z-index:100;border-radius:8px}
.skip:focus{left:10px;top:10px}
:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px var(--brand);border-radius:6px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- top disclaimer ---------- */
.topbar{background:#06121A;color:#fff;font-size:13px;line-height:1.45;position:relative;z-index:70}
.topbar p{margin:0;padding:8px 0}
@media (max-width:600px){.topbar{font-size:12px}.topbar p{padding:7px 0}}

/* ---------- glass pill navbar ----------
   Floating pill (rgba white .15, blur, 1px light border). White text over the darkened hero, then
   solid white with dark text once the hero is gone so contrast stays WCAG AA.
   The wrap is a zero-height sticky strip in normal flow right under the disclaimer: the pill starts
   below the disclaimer and docks near the top once it scrolls away. Hero and page heads reserve
   room for it via --nav-h (real bar height, set by main.js; CSS fallback below), so it never
   covers the brand or any hero text. */
.gnav-wrap{position:sticky;z-index:80;top:2px;height:0;display:flex;justify-content:center;align-items:flex-start;pointer-events:none}
.gnav{pointer-events:auto;position:relative;margin-top:10px;width:min(1120px,max(80%,1000px),100% - 32px);display:flex;align-items:center;gap:8px;
  padding:8px 8px 8px 20px;border-radius:30px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.5);
  -webkit-backdrop-filter:blur(10px) saturate(160%);backdrop-filter:blur(10px) saturate(160%);
  box-shadow:0 8px 32px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.28);transition:box-shadow .3s,border-color .3s,background .3s}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.gnav{background:rgba(8,22,30,.92)}}
.gnav .logo{display:flex;align-items:center;text-decoration:none;flex:none}
.gnav .logo svg{height:38px;width:auto;display:block}
.gnav .logo .on-light{display:none}
.gnav-links{display:flex;align-items:center;gap:2px;margin-left:auto}
.gnav-links a.navlink{position:relative;color:#fff;font-weight:600;font-size:15px;text-decoration:none;padding:9px 14px;border-radius:999px;transition:background .2s}
.gnav-links a.navlink:hover{background:rgba(255,255,255,.16);color:#fff}
.gnav-links a.navlink::after{content:"";position:absolute;left:50%;top:-9px;width:28px;height:3px;border-radius:0 0 4px 4px;background:var(--accent);transform:translateX(-50%) scaleX(0);transition:transform .25s}
.gnav-links a.navlink:hover::after,.gnav-links a.navlink.active::after{transform:translateX(-50%) scaleX(1)}
.gnav > .btn{padding:11px 18px;font-size:15px;flex:none}
.nav-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;cursor:pointer;flex:none}
.nav-toggle svg{width:22px;height:22px}
.nav-toggle .icon-close{display:none}
.gnav.is-open .nav-toggle .icon-open{display:none}
.gnav.is-open .nav-toggle .icon-close{display:block}
.gnav.is-solid{background:#fff;border-color:rgba(15,29,36,.14);box-shadow:0 10px 28px rgba(15,29,36,.12);-webkit-backdrop-filter:none;backdrop-filter:none}
.gnav.is-solid .logo .on-dark{display:none}
.gnav.is-solid .logo .on-light{display:block}
.gnav.is-solid .gnav-links a.navlink{color:var(--ink)}
.gnav.is-solid .gnav-links a.navlink:hover{background:var(--soft);color:var(--ink)}
.gnav.is-solid .gnav-links a.navlink::after{background:var(--brand)}
.gnav.is-solid .nav-toggle{color:var(--ink)}
@media (max-width:1080px){
  /* one clean row: brand left (never shrinks or gets covered), compact CTA + menu button right */
  .gnav-wrap{padding:0 8px}
  .gnav{width:100%;padding:6px 6px 6px 14px}
  .gnav .logo{margin-right:auto}
  .gnav .logo svg{height:32px}
  .gnav > .btn{margin-left:auto;padding:9px 14px;font-size:14px;min-height:42px;white-space:nowrap}
  .nav-toggle{display:inline-flex}
  /* once pinned over page content, the pill becomes an opaque dark bar so the brand stays legible */
  .gnav.is-docked:not(.is-solid){background:rgba(8,22,30,.96);-webkit-backdrop-filter:none;backdrop-filter:none}
  .gnav-links{display:none;position:absolute;left:0;right:0;top:calc(100% + 8px);margin:0;flex-direction:column;align-items:stretch;gap:2px;padding:8px;border-radius:22px;background:#fff;border:1px solid rgba(15,29,36,.12);box-shadow:0 16px 40px rgba(15,29,36,.16)}
  .gnav.is-open .gnav-links{display:flex}
  .gnav-links a.navlink,.gnav.is-solid .gnav-links a.navlink{color:var(--ink);padding:12px 14px}
  .gnav-links a.navlink:hover,.gnav.is-solid .gnav-links a.navlink:hover{background:var(--soft);color:var(--ink)}
  .gnav-links a.navlink::after{display:none}
}
.cta-short{display:none}
@media (max-width:520px){.cta-full{display:none}.cta-short{display:inline}}
/* very narrow screens: the hero already has large CTAs, so drop the bar CTA. main.js also adds
   .is-tight if the brand and buttons would ever collide (e.g. enlarged system text). */
@media (max-width:419px){.gnav > .btn{display:none}}
.gnav.is-tight > .btn{display:none}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;padding:15px 26px;font:700 16px/1.2 var(--body);text-decoration:none;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s,color .2s;white-space:nowrap}
.btn svg{width:18px;height:18px;flex:none}
.btn--primary,.site .btn--primary,.site .btn--primary:hover{color:var(--accent-ink)}
.btn--primary{background:var(--accent);box-shadow:0 10px 30px -6px var(--glow-1),inset 0 1px 0 rgba(255,255,255,.35)}
.btn--primary:hover{background:var(--accent-hover);transform:translateY(-1px)}
.btn--glass,.site .btn--glass,.site .btn--glass:hover{color:#fff}
.btn--glass{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.btn--glass:hover{background:rgba(255,255,255,.2)}
.btn--block{width:100%;white-space:normal;text-align:center}
.btn--lg{padding:17px 30px;font-size:17px}
.btn[aria-busy=true]{opacity:.8;cursor:progress}
/* animated slide button (Gradient CTA Banner) */
.btn-slide{position:relative;padding:6px 64px 6px 28px;min-height:56px;overflow:hidden;white-space:normal;transition:padding .5s,background .2s}
.btn-slide .knob{position:absolute;right:6px;top:50%;margin-top:-22px;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--brand);display:grid;place-items:center;transition:right .5s,transform .5s}
.btn-slide:hover{padding:6px 28px 6px 64px}
.btn-slide:hover .knob{right:calc(100% - 50px);transform:rotate(-45deg)}

/* ---------- hero (Gradient Hero over a photo) ---------- */
.hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:var(--brand-dark)}
/* clip (not hidden) so the hero is not a scroll container: anchor jumps to #start must never scroll its contents */
@supports (overflow:clip){.hero,.page-head,.cta-card,.bento > *{overflow:clip}}
.hero-bg{position:absolute;inset:0;z-index:-3;background-image:var(--hero-img);background-size:cover;background-position:center}
@supports (background-image:image-set(url(a.webp) type("image/webp"))){.hero-bg{background-image:image-set(var(--hero-img-webp) type("image/webp"),var(--hero-img) type("image/jpeg"))}}
@media (max-width:760px){.hero-bg{background-image:var(--hero-img-sm);background-position:30% center}@supports (background-image:image-set(url(a.webp) type("image/webp"))){.hero-bg{background-image:image-set(var(--hero-img-sm-webp) type("image/webp"),var(--hero-img-sm) type("image/jpeg"))}}}
.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(to bottom,rgba(5,14,20,.86) 0,rgba(5,14,20,.55) 140px,rgba(5,14,20,.2) 260px,transparent 360px),linear-gradient(105deg,rgba(5,14,20,.92) 0%,rgba(6,24,32,.74) 48%,rgba(6,24,32,.5) 100%),linear-gradient(to top,rgba(5,14,20,.92),transparent 50%)}
@keyframes hero-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
.hero .hero-bg{animation:hero-drift 28s ease-in-out alternate infinite;transform-origin:center center}
.hero-glow{position:absolute;z-index:-1;border-radius:100%;filter:blur(70px);pointer-events:none}
.hero-glow.g1{left:-18%;bottom:-38%;width:80%;height:80%;background:radial-gradient(ellipse at center,var(--glow-2) 0%,transparent 70%)}
.hero-glow.g2{right:-12%;top:-20%;width:55%;height:70%;background:radial-gradient(ellipse at center,var(--glow-1) 0%,transparent 70%);opacity:.55}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);grid-template-areas:"copy card" "rest card";column-gap:56px;row-gap:8px;align-items:center;padding:max(112px,calc(var(--nav-h,60px) + 52px)) 0 84px;min-height:min(940px,100svh)}
.hero-copy{grid-area:copy;align-self:end}
.hero-rest{grid-area:rest;align-self:start;padding-top:14px}
.hero .agent-card{grid-area:card;align-self:start}
.badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:7px 16px;font-size:14px;font-weight:700;color:#fff;background:rgba(5,14,20,.45);border:1px solid rgba(255,255,255,.32);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 12px 40px rgba(0,0,0,.12);margin-bottom:22px}
.badge svg{width:16px;height:16px;color:var(--accent);flex:none}
.hero h1{color:#fff;line-height:1.05}
.hero .lead{font-size:clamp(1.05rem,1.6vw,1.2rem);color:rgba(255,255,255,.92);max-width:36em;margin-top:18px}
.hero .tagline{font-weight:700;color:var(--tag-on-dark);font-size:1.06rem}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 18px}
@media (max-width:640px){
  .hero h1{font-size:2.1rem}
  .hero .lead{font-size:1.05rem;margin-top:12px}
  .hero-ctas{flex-direction:column;align-items:stretch}
  .hero-ctas .btn{width:100%;white-space:normal}
}
.assure{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.assure li{display:flex;align-items:center;gap:7px;font-size:14px;color:#fff;padding:6px 12px;border-radius:999px;background:rgba(5,14,20,.5);border:1px solid rgba(255,255,255,.2)}
.assure svg{width:15px;height:15px;color:var(--accent)}
@media (max-width:960px){.hero .wrap{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "card" "rest";gap:24px;padding:calc(var(--nav-h,58px) + 40px) 0 52px;min-height:0}.hero-rest{padding-top:0}}

/* ---------- lead card (aside#start) ----------
   Works on its own: if the LeadBot widget never appears, the card still offers phone + email. */
.agent-card{position:relative;background:#fff;color:var(--ink);border-radius:28px;box-shadow:0 30px 80px -20px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.6),0 0 0 9px rgba(255,255,255,.10);display:flex;flex-direction:column}
.agent-card:focus{outline:none}
.agent-card:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.agent-card__head{display:flex;align-items:center;gap:14px;padding:20px 24px;border-bottom:1px solid var(--line)}
.agent-avatar{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--brand-2),var(--brand));color:#fff;display:grid;place-items:center;flex:none;box-shadow:0 8px 20px -6px var(--glow-2)}
.agent-avatar svg{width:28px;height:28px}
.site .agent-card__title{font-family:var(--head);font-weight:640;font-size:1.32rem;line-height:1.2;margin:0;letter-spacing:-.01em}
.agent-card__status{margin:2px 0 0;font-size:14px;color:var(--muted)}
.agent-card__body{padding:20px 24px 24px;display:flex;flex-direction:column;gap:14px;flex:1}
.agent-card__body p{margin:0}
.agent-steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.agent-steps li{display:flex;gap:12px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:11px 14px;font-weight:600;font-size:15.5px;line-height:1.4}
.agent-steps .n{flex:none;width:28px;height:28px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:800}
.agent-note{font-size:13.5px;color:var(--muted);line-height:1.5}
.agent-fallback{font-size:15px;background:#FFF4DF;border:1px solid #E9C27A;border-radius:12px;padding:12px 14px;color:#4A3300;line-height:1.5}
.site .agent-fallback a{color:#4A3300;font-weight:700}
.agent-contact{border-top:1px solid var(--line);padding-top:14px;display:grid;gap:8px}
.site .agent-contact__title{font-weight:700;font-size:15.5px}
.agent-contact ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.agent-contact a{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:1px solid var(--line);background:var(--bg);font-weight:600;font-size:15px;text-decoration:none;overflow-wrap:anywhere}
.site .agent-contact a{color:var(--brand);text-decoration:none}
.site .agent-contact a:hover{border-color:var(--brand-2);color:var(--brand)}
.agent-contact svg{width:17px;height:17px;flex:none}

/* ---------- state band ---------- */
.state-band{position:relative;z-index:3;margin-top:-30px}
.state-band .inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 14px;padding:16px 24px;text-align:center;font-size:16px;border-radius:999px;background:var(--surface);border:1px solid var(--line);box-shadow:0 18px 50px -18px rgba(11,31,42,.32)}
.state-band svg{width:20px;height:20px;color:var(--brand);flex:none}
@media (max-width:760px){.state-band .inner{border-radius:20px;font-size:15px}}

/* ---------- sections ---------- */
.section{padding:96px 0}
.section--alt{background:var(--surface);border-block:1px solid var(--line)}
.section-head{max-width:780px;margin-bottom:40px}
.section-head.center{margin-inline:auto;text-align:center}
.kicker{display:inline-block;text-transform:uppercase;letter-spacing:.16em;font-size:12.5px;font-weight:800;color:var(--brand-2);margin-bottom:12px}
.muted{color:var(--muted)}
@media (max-width:900px){.section{padding:68px 0}}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* ---------- bento (Feature Bento) ---------- */
.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(240px,auto);gap:18px}
.bento > *{border-radius:var(--radius);position:relative;overflow:hidden}
.b-hero{grid-column:span 2;grid-row:span 2;color:#fff;padding:40px;display:flex;flex-direction:column;justify-content:flex-end;min-height:540px;background:var(--brand-dark)}
.b-hero picture,.b-hero img.bg{position:absolute;inset:0;width:100%;height:100%}
.b-hero img.bg{object-fit:cover;transition:transform .9s}
.b-hero:hover img.bg{transform:scale(1.04)}
.b-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(5,14,20,.95) 0%,rgba(5,14,20,.86) 45%,rgba(5,14,20,.45) 75%,rgba(5,14,20,.2))}
.b-hero > .content{position:relative;z-index:1;max-width:640px}
.b-hero h2{color:#fff}
.b-hero p{color:rgba(255,255,255,.92)}
.b-hero p:last-child{margin:0}
.live{display:inline-flex;align-items:center;gap:8px;background:rgba(5,14,20,.55);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:6px 14px;font-size:13.5px;font-weight:700;margin-bottom:14px;color:#fff}
.live::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}
.b-stat{padding:30px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(140deg,var(--brand-2),var(--brand) 55%,var(--brand-dark))}
.b-stat::before{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.12);filter:blur(28px)}
.b-stat.alt{background:linear-gradient(140deg,#15303D,#08161E)}
.b-stat .ico{width:50px;height:50px;border-radius:16px;background:rgba(255,255,255,.14);display:grid;place-items:center;position:relative}
.b-stat .ico svg{width:24px;height:24px}
.b-stat .num{font-family:var(--head);font-size:3rem;font-weight:800;line-height:1;margin:18px 0 8px;letter-spacing:-.02em;color:#fff}
.b-stat p{margin:0;color:rgba(255,255,255,.92);font-size:15px;line-height:1.5}
.b-cta{box-sizing:border-box;cursor:pointer;padding:30px;border-radius:var(--radius);background:linear-gradient(140deg,#3A2508,#7A4A10);color:#fff;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;text-decoration:none}
.site a.b-cta,.site a.b-cta:hover{color:#fff;text-decoration:none}
.b-cta:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.b-cta .chip{align-self:flex-start;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:rgba(255,255,255,.16);padding:6px 12px;border-radius:999px}
.b-cta .arrow{position:absolute;top:24px;right:24px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center;transition:transform .35s,background .35s}
.b-cta .arrow svg{width:20px;height:20px}
.b-cta:hover .arrow{transform:rotate(-45deg);background:var(--accent);color:var(--accent-ink)}
.b-cta .t{font-family:var(--head);font-size:1.7rem;font-weight:700;line-height:1.15;margin-top:40px}
.sources{font-size:14px;color:var(--muted);margin-top:22px}
.sources ol{margin:.4em 0 0;padding-left:1.2em}
@media (min-width:961px){.b-cta{grid-column:span 2}}
@media (max-width:960px){.bento{grid-template-columns:1fr 1fr}.b-hero{grid-column:span 2;grid-row:auto;min-height:460px}}
@media (max-width:620px){.bento{grid-template-columns:1fr}.b-hero{grid-column:auto;padding:26px;min-height:0;padding-top:200px}}

/* ---------- how it works (How It Works Steps) ---------- */
.steps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;list-style:none;padding:0;margin:0}
.steps::before{content:"";position:absolute;left:12.5%;right:12.5%;top:34px;height:2px;background:linear-gradient(90deg,transparent,var(--line) 10%,var(--line) 90%,transparent)}
.steps li{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.step-circle{position:relative;z-index:1;width:68px;height:68px;border-radius:50%;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;color:var(--brand);box-shadow:0 10px 30px -12px rgba(11,31,42,.35)}
.step-circle svg{width:28px;height:28px}
.step-circle .no{position:absolute;top:-6px;right:-6px;min-width:26px;height:26px;border-radius:999px;background:var(--brand);color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center;padding:0 6px;font-variant-numeric:tabular-nums}
.steps p{color:var(--muted);margin:0;max-width:30ch}
@media (max-width:960px){.steps{grid-template-columns:1fr 1fr;row-gap:40px}.steps::before{display:none}}
@media (max-width:640px){.steps{grid-template-columns:1fr;gap:30px}.steps::before{display:block;left:33px;right:auto;top:34px;bottom:34px;width:2px;height:auto;background:var(--line)}.steps li{flex-direction:row;text-align:left;align-items:flex-start;gap:18px}.steps li > div{padding-top:6px}}
.how-media{margin-top:56px;display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch}
.how-media figure{margin:0;border-radius:var(--radius);overflow:hidden;position:relative}
.how-media img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.how-media .callout{border-radius:var(--radius);padding:34px;background:var(--soft);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;gap:16px}
.how-media .callout h3{font-family:var(--head);font-size:1.45rem;font-weight:640;margin:0}
.how-media .callout p{margin:0}
@media (max-width:860px){.how-media{grid-template-columns:1fr}}

/* ---------- split sections with image ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split.rev > :first-child{order:2}
@media (max-width:900px){.split{grid-template-columns:1fr;gap:30px}.split.rev > :first-child{order:0}}
.photo{border-radius:var(--radius);overflow:hidden;position:relative;box-shadow:0 30px 60px -28px rgba(11,31,42,.45);margin:0}
.photo img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.photo .tag{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;background:rgba(5,14,20,.82);border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:700}
.photo .tag svg{width:16px;height:16px;color:var(--accent)}
.feat{display:grid;gap:14px;list-style:none;padding:0;margin:0}
.feat li{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:18px;background:var(--surface);border:1px solid var(--line);transition:transform .25s,box-shadow .25s}
.section--alt .feat li{background:var(--bg)}
.feat li:hover{transform:translateY(-2px);box-shadow:0 18px 40px -24px rgba(11,31,42,.35)}
.feat .ico{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--brand-2),var(--brand))}
.feat .ico svg{width:24px;height:24px}
.feat h3{margin:2px 0 4px}
.feat p{margin:0;color:var(--muted);font-size:15.5px}
.notice{background:var(--soft);border-left:4px solid var(--brand);border-radius:12px;padding:16px 18px;font-size:15.5px}

/* ---------- eligibility checklist ---------- */
.checklist{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:12px}
.checklist li{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:16px;background:var(--bg);border:1px solid var(--line)}
.checklist .tick{flex:none;width:30px;height:30px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;margin-top:1px}
.checklist .tick svg{width:16px;height:16px}

/* ---------- FAQ accordion ---------- */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:22px 48px 22px 4px;font-weight:650;font-size:1.08rem;position:relative}
.faq summary:hover{color:var(--brand)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:8px;top:50%;width:10px;height:10px;border-right:2.5px solid var(--brand);border-bottom:2.5px solid var(--brand);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq .a{padding:0 4px 22px;color:var(--muted)}
.faq .a p:last-child{margin:0}
.help{margin-top:34px;border-radius:20px;padding:22px 24px;display:flex;gap:16px;align-items:flex-start;background:var(--surface);border:1px solid var(--line)}
.help svg{width:26px;height:26px;color:var(--brand);flex:none;margin-top:3px}
.help p{margin:0}

/* ---------- CTA card (Gradient CTA Banner) ---------- */
.cta-wrap{padding:24px 0 96px}
.cta-card{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;border:1px solid var(--line);min-height:380px;display:flex;align-items:center;justify-content:center;text-align:center;padding:64px 24px;background:var(--surface)}
.cta-card::before{content:"";position:absolute;z-index:-1;left:0;right:0;top:35%;height:75%;border-radius:999px;filter:blur(60px);opacity:.55;background:linear-gradient(90deg,var(--glow-2) 10%,rgba(255,255,255,.2) 55%,var(--glow-1) 90%)}
.cta-card h2{max-width:18ch;margin-inline:auto}
.cta-card p{max-width:620px;margin:0 auto 26px;color:var(--ink)}
.cta-card .alt-contact{margin:22px auto 0;font-size:15px}

/* ---------- footer (Agency Footer) ---------- */
.footer{background:var(--brand-dark);color:rgba(255,255,255,.86);font-size:15px;padding:72px 0 30px}
.site .footer a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.site .footer a.footer-logo{text-decoration:none}
.f-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;gap:40px}
@media (max-width:960px){.f-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.f-grid{grid-template-columns:1fr}}
.footer-logo{display:inline-block;margin-bottom:16px}
.footer-logo svg{height:42px;width:auto;display:block}
.footer .f-title{font-weight:800;color:#fff;margin:0 0 14px;font-size:15px}
.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.footer p{margin:0 0 .9em}
.f-legal{margin-top:46px;padding:26px 0 0;border-top:1px solid rgba(255,255,255,.18);display:grid;gap:12px;font-size:13.5px;color:rgba(255,255,255,.88)}
.f-legal p{margin:0}
.f-legal strong{color:#fff}
.copy{text-align:center;margin-top:24px;font-size:13px;color:rgba(255,255,255,.84)}

/* ---------- inner pages ---------- */
.page-head{position:relative;isolation:isolate;overflow:hidden;color:#fff;padding:max(140px,calc(var(--nav-h,60px) + 70px)) 0 56px;background:var(--brand-dark)}
.page-head .hero-bg{opacity:.5}
.page-head .hero-shade{background:linear-gradient(to bottom,rgba(5,14,20,.88),rgba(5,14,20,.72))}
.page-head h1{color:#fff;margin:0 0 8px;font-size:clamp(2.1rem,4.5vw,3.2rem)}
.page-head p{color:rgba(255,255,255,.9);margin:0}
.legal{padding:56px 0 80px}
.legal h2{font-size:1.55rem;margin-top:1.8em}
.legal h3{margin-top:1.4em}
.legal ul,.legal ol{padding-left:1.3em;margin:0 0 1em}
.legal li{margin-bottom:.35em}
.toc{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px 22px;font-size:15px;margin-bottom:1em}
.toc ol{margin:.4em 0 0}
.center{text-align:center}
.e404{padding:max(150px,calc(var(--nav-h,60px) + 80px)) 0 110px}
.site .e404 a:not(.btn){color:#fff}
.e404 .badge{margin-inline:auto}
.e404 .btn{margin:8px}
.fine{font-size:14px;color:var(--muted)}

/* LeadBot helpers: the widget's body colour is semi-transparent (set in the LeadBot dashboard); give it a neutral backing so
   its text stays legible over the hero photo if a valid token is added. This does not touch the snippet or its behaviour. */
.leadforms-form-body-wrapper{background-color:#999}
