:root{
  --navy:#1F3A5F;
  --navy-deep:#16293F;
  --steel:#2E5C8A;
  --silver:#9AA1A9;
  --silver-light:#C7CCD1;
  --slate:#3D4A57;
  --slate-bar:#4B5A6B;
  --paper:#F4F6F8;
  --cream:#F7F3EC;
  --gold:#C19A3E;
  --shadow-card:0 14px 36px rgba(22,41,63,.08);
  --shadow-card-hover:0 26px 54px rgba(22,41,63,.16);
  --line:#E2E6EA;
  --ok:#3E7C53;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Mulish',system-ui,sans-serif;
  color:var(--slate);
  background:#fff;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  padding-bottom:64px;
}
h1,h2,h3,h4{font-family:'Manrope',system-ui,sans-serif;margin:0;color:var(--navy);}
a{color:inherit;text-decoration:none;}
/* accessibility: visible keyboard-focus ring for all interactive elements (mouse clicks unaffected) */
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--gold);outline-offset:3px;border-radius:4px;}
img{max-width:100%;display:block;}
/* visual polish: uniform icon style site-wide — single-library look (one line weight, round caps/joins). The only chart on the site is a CSS conic-gradient donut, so no SVG chart is affected. */
svg{stroke-linecap:round;stroke-linejoin:round;}
svg *{stroke-width:2px;}

/* ---------- Utility bar ---------- */
.utilbar{background:var(--navy-deep);color:#cdd6e0;font-family:'Manrope',sans-serif;}
.utilbar-inner{max-width:1340px;margin:0 auto;padding:0 26px;height:42px;display:flex;align-items:center;
  justify-content:space-between;gap:20px;}
.util-left{display:flex;align-items:center;gap:26px;}
.util-left a,.util-right a{font-size:13px;font-weight:600;color:#c2cedd;transition:color .15s;}
.util-left a:hover,.util-right a:hover{color:#fff;}
.util-login{display:inline-flex;align-items:center;gap:7px;}
.util-login svg{width:16px;height:16px;}
@media(max-width:760px){.util-left{display:none;}.utilbar-inner{justify-content:flex-end;}}

/* ---------- Header ---------- */
header.site{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid var(--line);}
.navitem.active>a{color:var(--steel);}
.navitem.active>a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:3px;background:var(--steel);border-radius:2px;}
.nav{display:grid;grid-template-columns:auto 1fr auto;align-items:stretch;min-height:100px;}
.brand{display:flex;align-items:center;gap:20px;padding:14px 30px;}
.brand img{height:74px;width:auto;}
.brand .tag{border-left:1px solid var(--silver-light);padding-left:20px;font-family:'Manrope',sans-serif;
  font-weight:600;font-size:15px;line-height:1.28;color:var(--slate);max-width:230px;text-wrap:balance;}
.navmenu{display:flex;align-items:stretch;justify-content:center;gap:30px;}
.navitem{position:relative;display:flex;align-items:stretch;}
.navitem>a{display:flex;align-items:center;gap:7px;font-family:'Manrope',sans-serif;font-weight:600;
  font-size:17px;color:var(--navy);padding:0 14px;cursor:pointer;transition:color .15s,background .15s;position:relative;white-space:nowrap;}
.navitem:hover>a{color:var(--steel);background:var(--cream);}
.navitem>a svg{width:11px;height:11px;transition:transform .2s;}
.navitem:hover>a svg{transform:rotate(180deg);}
.dropdown{position:absolute;top:100%;left:50%;transform:translateX(-50%);
  background:#fff;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:0 0 8px 8px;
  box-shadow:var(--shadow-card-hover);min-width:248px;padding:8px;opacity:0;visibility:hidden;
  transition:opacity .16s,visibility .16s;z-index:70;max-height:calc(100vh - 230px);overflow-y:scroll;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--silver) var(--paper);}
.dropdown::-webkit-scrollbar{width:10px;}
.dropdown::-webkit-scrollbar-track{background:var(--paper);border-radius:0 0 8px 0;}
.dropdown::-webkit-scrollbar-thumb{background:var(--silver);border-radius:6px;border:2px solid var(--paper);}
.dropdown::-webkit-scrollbar-thumb:hover{background:var(--slate);}
.dropdown.wide{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(6,auto);grid-auto-flow:column;gap:0 6px;min-width:440px;max-height:none;overflow:visible;}
.navitem:hover .dropdown{opacity:1;visibility:visible;}
.dropdown::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px;}
.dropdown a{display:block;padding:12px 14px;border-radius:8px;font-size:15px;font-weight:600;color:var(--slate);transition:background .12s,color .12s;}
.dropdown a:hover{background:var(--steel);color:#fff;}
.navactions{display:flex;align-items:stretch;}
.eligible-block{display:flex;align-items:center;gap:12px;margin-bottom:-1px;background:linear-gradient(135deg,var(--navy) 0%,var(--steel) 100%);
  color:#fff;font-family:'Manrope',sans-serif;font-weight:700;font-size:19px;padding:0 42px;cursor:pointer;
  transition:filter .2s;}
.eligible-block:hover{filter:brightness(1.08);color:#fff;}
.eligible-block svg{width:22px;height:22px;}
.navtoggle{display:none;align-items:center;justify-content:center;width:58px;background:#fff;border:0;border-left:1px solid var(--line);color:var(--navy);cursor:pointer;}
.navtoggle svg{width:26px;height:26px;}
.navcall{display:none;align-items:center;justify-content:center;gap:7px;padding:0 16px;min-width:58px;background:#fff;border-left:1px solid var(--line);color:var(--navy);font-family:'Manrope',sans-serif;font-weight:800;font-size:15px;-webkit-tap-highlight-color:transparent;}
.navcall svg{width:22px;height:22px;}
.navcall:hover,.navcall:active{background:var(--navy);color:#fff;}
footer p.fphone{margin:16px 0 0;display:flex;flex-direction:column;gap:4px;}
footer p.fphone a{color:#fff;font-family:'Manrope',sans-serif;font-weight:800;font-size:19px;}
footer p.fphone a:hover{color:var(--gold);}
footer p.fphone span{font-size:14px;color:#9fb0c4;}
.mobilemenu{display:none;}
.foot-legal{margin:10px 0 0;}
.foot-legal a{color:#9fb0c4;text-decoration:underline;text-underline-offset:2px;}
.foot-legal a:hover{color:#fff;}

/* ---------- Announcement bar ---------- */
.announce{background:var(--slate-bar);color:#fff;text-align:center;padding:9px 20px;
  display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;}
.announce .q{font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;}
.pill{display:inline-flex;align-items:center;background:#fff;color:var(--navy);font-family:'Manrope',sans-serif;
  font-weight:700;font-size:13.5px;padding:6px 18px;border-radius:44px;transition:.2s;white-space:nowrap;}
.announce .pill{background:var(--gold);color:#1E2B3A;box-shadow:0 1px 7px rgba(0,0,0,.22);}
.announce .pill:hover{background:#D4AC4A;transform:translateY(-1px);}
@media(max-width:560px){.announce{flex-wrap:nowrap;gap:10px;padding:8px 14px;}.announce .q{font-size:14px;}.announce .pill{font-size:12.5px;padding:6px 14px;}}

/* ---------- Hero ---------- */
.hero{position:relative;background:var(--navy-deep);overflow:hidden;}
.hero image-slot{position:absolute;inset:0;width:100%;height:100%;}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,41,63,.82) 0%,rgba(22,41,63,.55) 55%,rgba(22,41,63,.35) 100%);z-index:1;}
.hero-inner{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:64px 40px 72px;}
.hero h1{color:#fff;font-size:54px;line-height:1.12;font-weight:700;max-width:920px;letter-spacing:-.5px;
  text-shadow:0 2px 18px rgba(0,0,0,.35);}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:52px;}
.card{background:#fff;border-radius:12px;box-shadow:var(--shadow-card);padding:40px 30px 34px;
  text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px;cursor:pointer;
  transition:transform .2s, box-shadow .2s;border-top:4px solid transparent;}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);border-top-color:var(--navy);}
.card .ico{width:78px;height:78px;color:var(--steel);}
.card .ico svg{width:100%;height:100%;}
.card p{margin:0;font-family:'Manrope',sans-serif;font-weight:700;font-size:21px;line-height:1.32;color:var(--slate);}
.hero-spacer{height:120px;background:var(--navy-deep);position:relative;z-index:0;}
.hero-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 38px;margin-top:42px;}
.hero-trust span{display:inline-flex;align-items:center;gap:10px;color:#eef3f8;font-family:'Manrope',sans-serif;
  font-weight:600;font-size:16px;text-shadow:0 1px 8px rgba(0,0,0,.35);}
.hero-trust svg{width:22px;height:22px;color:#C19A3E;flex:none;}
@media(max-width:560px){.hero-trust{gap:12px 22px;}.hero-trust span{font-size:14px;}}

/* ---------- New split hero (home) ---------- */
.nhero{background:
    radial-gradient(120% 120% at 85% 112%, rgba(0,0,0,0.22) 0%, rgba(0,0,0,0) 55%),
    linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%);}
.nhero-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.02fr .98fr;}
.nhero-msg{padding:72px 56px 72px 40px;display:flex;flex-direction:column;justify-content:center;}
.nhero-eyebrow{font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--gold);margin:0 0 18px;}
.nhero-msg h1{color:#fff;font-size:46px;line-height:1.12;font-weight:700;letter-spacing:-.5px;margin:0;}
.nhero-lead{color:#fff;font-family:'Manrope',sans-serif;font-weight:600;font-size:23px;line-height:1.35;margin:18px 0 0;max-width:500px;}
.nhero-sub{color:#cdd9e6;font-size:19px;line-height:1.6;margin:18px 0 0;max-width:470px;}
.nhero-trust{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:32px;}
.nhero-trust span{display:inline-flex;align-items:center;gap:9px;color:#eef3f8;font-family:'Manrope',sans-serif;
  font-weight:600;font-size:16px;}
.nhero-trust svg{width:21px;height:21px;color:var(--gold);flex:none;}
.nhero-panel{padding:56px 40px 56px 20px;display:flex;align-items:center;}
.nhero-card{background:#fff;border-radius:12px;box-shadow:var(--shadow-card);padding:34px 32px;width:100%;}
.nhero-kick{font-family:'Manrope',sans-serif;font-weight:700;font-size:13.5px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--steel);margin:0;}
.nhero-q{font-family:'Manrope',sans-serif;font-weight:700;font-size:23px;color:var(--navy);margin:8px 0 20px;}
.nhero-primary{display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--gold);color:var(--navy-deep);
  font-family:'Manrope',sans-serif;font-weight:800;font-size:18.5px;padding:18px 22px;border-radius:12px;
  box-shadow:0 6px 18px rgba(196,158,74,.3);transition:filter .15s,transform .15s,box-shadow .15s;}
.nhero-primary:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 10px 24px rgba(196,158,74,.38);}
.nhero-primary svg{width:20px;height:20px;flex:none;}
.nhero-primary .ic{display:flex;flex:none;margin-right:-4px;}
.nhero-primary .ic svg{width:22px;height:22px;}
.nhero-primary span:not(.ic){flex:1;}
.nhero-primary-sub{font-size:15px;line-height:1.5;color:#5b6874;margin:11px 2px 0;}
.nhero-or{display:flex;align-items:center;gap:12px;font-family:'Manrope',sans-serif;font-weight:700;font-size:12.5px;
  letter-spacing:.09em;text-transform:uppercase;color:#8a949e;margin:22px 0 16px;}
.nhero-or:before,.nhero-or:after{content:"";flex:1;height:1px;background:var(--line);}
.nhero-opts{display:flex;flex-direction:column;gap:12px;}
.nhero-opt{display:flex;align-items:center;gap:16px;border:1.5px solid var(--line);border-radius:12px;
  padding:17px 18px;font-family:'Manrope',sans-serif;font-weight:600;font-size:17px;color:var(--slate);
  transition:border-color .15s,background .15s,box-shadow .15s;}
.nhero-opt:hover{border-color:var(--navy);background:#F8FAFC;box-shadow:0 0 0 3px rgba(31,58,95,.10);}
.nhero-opt .ic{width:40px;height:40px;border-radius:8px;background:var(--paper);color:var(--navy);flex:none;
  display:flex;align-items:center;justify-content:center;}
.nhero-opt:hover .ic{background:var(--navy);color:#fff;}
.nhero-opt .ic svg{width:22px;height:22px;}
.nhero-opt .tx{flex:1;line-height:1.3;}
.nhero-opt .arw{width:20px;height:20px;color:var(--steel);flex:none;}
.nhero-assure{text-align:center;font-size:15px;color:#52606c;margin:18px 0 0;}
/* process rail band */
.nhero-rail-band{background:#fff;border-top:1px solid var(--line);}
.nhero-rail{max-width:1040px;margin:0 auto;padding:34px 40px 38px;}
.nhero-rail-eyebrow{font-family:'Manrope',sans-serif;font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 22px;}
.nhero-steps{display:flex;align-items:flex-start;}
.nhero-step{flex:1;position:relative;display:flex;flex-direction:column;padding-right:24px;}
.nhero-step:last-child{padding-right:0;}
.nhero-step:not(:last-child)::after{content:"";position:absolute;top:28px;left:66px;right:6px;height:2px;background:var(--silver-light);z-index:0;}
.nhero-node{width:56px;height:56px;border-radius:50%;position:relative;z-index:1;background:#fff;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;}
.nhero-node svg{width:28px;height:28px;color:var(--navy);fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.nhero-num{position:absolute;bottom:-3px;right:-3px;width:21px;height:21px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Manrope',sans-serif;font-weight:700;font-size:11.5px;border:2px solid #fff;}
.nhero-stx{display:flex;flex-direction:column;margin-top:16px;}
.nhero-step .lab{font-family:'Manrope',sans-serif;font-weight:700;font-size:17px;color:var(--navy);}
.nhero-step .dsc{font-size:15px;color:#52606c;line-height:1.45;margin-top:3px;}
@media(max-width:960px){
  .nhero-grid{grid-template-columns:1fr;}
  .nhero-msg{padding:56px 32px 24px;text-align:center;align-items:center;}
  .nhero-msg h1{font-size:38px;}
  .nhero-lead{font-size:20px;}
  .nhero-trust{justify-content:center;}
  .nhero-panel{padding:8px 24px 48px;}
  .nhero-rail{padding:28px 30px 30px;}
  .nhero-steps{flex-direction:column;}
  .nhero-step{flex:none;flex-direction:row;align-items:flex-start;gap:16px;padding:0 0 24px;}
  .nhero-step:last-child{padding-bottom:0;}
  .nhero-step:not(:last-child)::after{top:62px;left:27px;right:auto;bottom:6px;width:2px;height:auto;}
  .nhero-stx{margin-top:9px;}
}

/* ---------- Page hero (subpages) ---------- */
.page-hero{text-align:center;padding:70px 40px 56px;background:#fff;}
.page-hero.tinted{background:var(--cream);border-bottom:1px solid var(--line);}
.page-hero .crumb{font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gold);
  margin-bottom:16px;}
.page-hero h1{font-family:'Manrope',sans-serif;font-weight:800;font-size:50px;line-height:1.12;color:var(--navy);
  max-width:900px;margin:0 auto;}
.page-hero p.intro{max-width:760px;margin:22px auto 0;font-size:19px;line-height:1.6;color:#5a6772;}

/* ---------- Image banner hero (select subpages) ---------- */
.hero-banner{position:relative;background:var(--navy-deep) center/cover no-repeat;overflow:hidden;min-height:340px;display:flex;align-items:center;}
.hero-banner image-slot{position:absolute;inset:0;width:100%;height:100%;}
.hero-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,41,63,.95) 0%,rgba(22,41,63,.9) 38%,rgba(22,41,63,.55) 72%,rgba(22,41,63,.3) 100%);z-index:1;}
.hero-banner .panel{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:56px 40px;width:100%;}
.hero-banner .crumb{color:var(--gold);font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px;padding-left:22px;}
.hero-banner h1{color:#fff;font-family:'Manrope',sans-serif;font-weight:800;font-size:44px;line-height:1.14;letter-spacing:-.5px;max-width:720px;margin:0;border-left:5px solid var(--steel);padding-left:22px;}
.hero-banner p.intro{color:#dbe3ee;max-width:660px;margin:18px 0 0;padding-left:22px;font-size:18px;line-height:1.6;}
@media(max-width:900px){.hero-banner h1{font-size:32px;}}

/* ---------- Service grid (Our Services) ---------- */
.service-grid{max-width:1180px;margin:0 auto;padding:10px 40px 86px;display:grid;
  grid-template-columns:repeat(3,1fr);gap:34px;}
.service-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;
  display:flex;flex-direction:column;box-shadow:var(--shadow-card);transition:transform .2s,box-shadow .2s;}
.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);}
.service-card image-slot,.service-card .imgwrap{width:100%;height:240px;display:block;}
.service-card .body{padding:30px 28px 34px;display:flex;flex-direction:column;flex:1;}
.service-card h3{font-family:'Manrope',sans-serif;font-weight:700;font-size:26px;color:var(--slate);line-height:1.2;}
.service-card p{margin:16px 0 26px;font-size:17px;line-height:1.6;color:#5a6772;flex:1;}
.service-card .btn-primary{align-self:flex-start;white-space:nowrap;}

/* ---------- FAQ / glossary / calculator ---------- */
.qa-wrap{max-width:920px;margin:0 auto;padding:34px 40px 86px;}
.qa{border-bottom:1px solid var(--line);}
.qa summary{cursor:pointer;list-style:none;padding:24px 48px 24px 4px;font-family:'Manrope',sans-serif;
  font-weight:700;font-size:20px;color:var(--navy);position:relative;}
.qa summary::-webkit-details-marker{display:none;}
.qa summary::after{content:"+";position:absolute;right:10px;top:18px;font-size:30px;color:var(--steel);font-weight:400;line-height:1;}
.qa[open] summary::after{content:"\2013";}
.qa .a{margin:0 4px 26px;font-size:17px;line-height:1.66;color:#52606c;}
.qa-cat{display:flex;align-items:center;gap:9px;font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--steel);margin:46px 0 6px;padding-bottom:2px;}
.qa-cat svg{width:19px;height:19px;color:var(--gold);flex:none;}
.qa-cat:first-child{margin-top:0;}
/* Key-takeaway callout (subtle) */
.callout{display:flex;gap:15px;align-items:flex-start;margin:26px 0;padding:20px 22px;background:var(--cream);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:10px;}
.callout .ci{flex:none;width:24px;height:24px;color:var(--gold);margin-top:2px;}
.callout .ct{font-family:'Manrope',sans-serif;font-weight:800;font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--steel);margin:0 0 5px;}
.callout p{margin:0;font-size:16px;line-height:1.6;color:#3d4a57;}
.gloss-intro{max-width:1040px;margin:0 auto;padding:0 40px;}
@media(max-width:560px){.gloss-intro{padding:0 20px;}}
/* FAQ alternating category bands */
.qa-group{padding:14px 22px 16px;border-radius:12px;}
.qa-group:nth-of-type(even){background:var(--cream);}
.qa-group + .qa-group{margin-top:8px;}
.qa .a a{color:var(--navy);font-weight:700;}
.glossary{max-width:1040px;margin:0 auto;padding:34px 40px 86px;display:grid;grid-template-columns:1fr 1fr;gap:0 54px;}
.term{padding:22px 0;border-bottom:1px solid var(--line);}
.term h4{font-family:'Manrope',sans-serif;font-weight:700;font-size:19px;color:var(--navy);margin-bottom:6px;}
.term p{margin:0;font-size:16px;line-height:1.55;color:#52606c;}
.calc{max-width:680px;margin:0 auto;padding:34px 40px 40px;}
.calc .field{margin-bottom:22px;}
.calc label{display:block;font-family:'Manrope',sans-serif;font-weight:600;font-size:15px;color:var(--slate);margin-bottom:8px;}
.calc input[type=number]{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:8px;font-size:18px;font-family:'Mulish',sans-serif;}
.calc input[type=range]{width:100%;accent-color:var(--navy);}
.calc .result{margin-top:30px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:34px;text-align:center;}
.calc .result .big{font-family:'Manrope',sans-serif;font-weight:800;font-size:48px;color:var(--navy);line-height:1;}
.calc .result .cap{font-size:15.5px;color:#52606c;margin-top:10px;line-height:1.5;}
.note{max-width:920px;margin:0 auto 70px;padding:0 40px;font-size:15px;color:#52606c;line-height:1.6;text-align:center;}
/* testimonials */
.tgrid{max-width:1180px;margin:0 auto;padding:34px 40px 80px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.tcard{background:#fff;border:1px solid var(--line);border-radius:12px;padding:32px 28px;display:flex;flex-direction:column;gap:18px;box-shadow:var(--shadow-card);}
.tcard .quote{font-size:17px;line-height:1.6;color:#46535f;font-style:italic;flex:1;}
.tcard .who{display:flex;align-items:center;gap:14px;}
.tcard .who image-slot{width:54px;height:54px;border-radius:50%;}
.tcard .who b{font-family:'Manrope',sans-serif;font-size:16px;color:var(--navy);}
@media(max-width:980px){.tgrid{grid-template-columns:1fr;}}

/* ---------- SSDI 101 band ---------- */
.ssdi101{background:linear-gradient(135deg,var(--navy) 0%,var(--steel) 100%);text-align:center;padding:80px 40px;}
.ssdi101 h2{color:#fff;font-family:'Manrope',sans-serif;font-weight:800;font-size:44px;line-height:1.12;}
.ssdi101 p{color:#dce6f2;font-size:20px;margin:18px auto 32px;max-width:620px;}
.ssdi101 .pill-lg{display:inline-flex;align-items:center;background:#fff;color:var(--navy);font-family:'Manrope',sans-serif;
  font-weight:700;font-size:18px;padding:15px 42px;border-radius:44px;transition:.2s;}
.ssdi101 .pill-lg:hover{background:var(--paper);transform:translateY(-2px);box-shadow:var(--shadow-card-hover);}

/* ---------- Services section heading (home) ---------- */
.services-head{max-width:1180px;margin:0 auto;padding:80px 40px 0;}

/* ---------- Content sections (Your SSDI / About) ---------- */
.prose{max-width:1080px;margin:0 auto;padding:20px 40px 80px;}
.prose-row{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:46px 0;
  border-bottom:1px solid var(--line);}
.prose-row:last-child{border-bottom:none;}
.prose-row.reverse .txt{order:2;}
.prose-row image-slot,.prose-row .imgwrap{width:100%;height:340px;border-radius:12px;overflow:hidden;
  box-shadow:var(--shadow-card);}
.prose-row h2{font-family:'Manrope',sans-serif;font-weight:700;font-size:34px;color:var(--navy);line-height:1.18;}
.prose-row p{font-size:18px;line-height:1.65;color:#52606c;margin:18px 0 0;}
.prose-row ul{margin:18px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:13px;}
.prose-row li{position:relative;padding-left:30px;font-size:17px;line-height:1.5;color:#52606c;}
.prose-row li::before{content:"";position:absolute;left:0;top:8px;width:13px;height:13px;border-radius:50%;background:var(--steel);}
.prose-row .btn-primary{margin-top:28px;}

.band{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.band .prose{padding:92px 40px;}

/* steps */
.steps{max-width:1080px;margin:0 auto;padding:20px 40px 30px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.step{text-align:center;padding:8px;}
.step .n{width:62px;height:62px;border-radius:50%;background:var(--navy);color:#fff;font-family:'Manrope',sans-serif;
  font-weight:800;font-size:26px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;}
.step h4{font-family:'Manrope',sans-serif;font-weight:700;font-size:19px;color:var(--slate);margin-bottom:8px;}
.step p{font-size:16px;line-height:1.5;color:#52606c;margin:0;}
.steps.cards{padding-top:46px;padding-bottom:20px;align-items:stretch;}
.steps.cards .step{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:14px;padding:38px 26px 32px;box-shadow:var(--shadow-card);transition:transform .2s,box-shadow .2s;}
.steps.cards .step:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);}
.steps.cards .step .n{background:linear-gradient(135deg,var(--navy),var(--steel));box-shadow:0 8px 20px rgba(22,41,63,.18);}
/* Section 1 — vertical process timeline (Our Approach) */
.appr-timeline{max-width:720px;margin:44px auto 0;padding:0 40px;}
.appr-step{position:relative;display:grid;grid-template-columns:64px 1fr;gap:26px;padding-bottom:42px;}
.appr-step:last-child{padding-bottom:0;}
.appr-step::before{content:"";position:absolute;left:31px;top:66px;bottom:-4px;width:2px;background:var(--gold);}
.appr-step:last-child::before{display:none;}
.appr-step .n{width:64px;height:64px;border-radius:50%;background:var(--navy);color:#fff;font-family:'Manrope',sans-serif;font-weight:800;font-size:24px;display:flex;align-items:center;justify-content:center;position:relative;z-index:2;}
.appr-step .ac{padding-top:12px;}
.appr-step .ac h4{font-family:'Manrope',sans-serif;font-weight:700;font-size:21px;color:var(--navy-deep);margin:0 0 8px;}
.appr-step .ac p{font-size:16.5px;line-height:1.6;color:#52606c;margin:0;max-width:520px;}
@media(max-width:560px){.appr-timeline{padding:0 20px;}.appr-step{grid-template-columns:52px 1fr;gap:18px;}.appr-step::before{left:25px;top:54px;}.appr-step .n{width:52px;height:52px;font-size:20px;}.appr-step .ac{padding-top:8px;}}
/* Section 2 — horizontal stage cards with progression arrows (What Happens Next) */
.stage-flow{display:flex;align-items:stretch;justify-content:center;max-width:1080px;margin:44px auto 0;padding:0 40px;}
.stage-card{flex:1;background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:12px;padding:30px 26px;box-shadow:var(--shadow-card);}
.stage-lab{font-family:'Manrope',sans-serif;font-weight:800;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--steel);margin:0 0 10px;}
.stage-card h4{font-family:'Manrope',sans-serif;font-weight:700;font-size:20px;color:var(--navy-deep);margin:0 0 8px;}
.stage-card p{font-size:16px;line-height:1.55;color:#52606c;margin:0;}
.stage-arrow{flex:none;display:flex;align-items:center;justify-content:center;width:52px;color:var(--gold);}
.stage-arrow svg{width:26px;height:26px;}
@media(max-width:760px){.stage-flow{flex-direction:column;padding:0 20px;}.stage-arrow{width:100%;height:44px;transform:rotate(90deg);}}
/* Section 3 — checklist rows (How We Prepare You) */
.prep-list{max-width:820px;margin:44px auto 0;padding:0 40px;display:flex;flex-direction:column;gap:16px;}
.prep-row{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;padding:24px 26px;box-shadow:var(--shadow-card);}
.prep-check{flex:none;width:38px;height:38px;border-radius:50%;background:#e6f0e8;color:#2f7d4f;display:flex;align-items:center;justify-content:center;}
.prep-check svg{width:20px;height:20px;}
.prep-row h4{font-family:'Manrope',sans-serif;font-weight:700;font-size:19px;color:var(--navy-deep);margin:0 0 6px;}
.prep-row p{font-size:16px;line-height:1.55;color:#52606c;margin:0;}
@media(max-width:560px){.prep-list{padding:0 20px;}.prep-row{padding:20px;gap:14px;}}

/* numbered step cards (application steps) */
.steps.steps-cards{grid-template-columns:repeat(5,1fr);gap:18px;max-width:1200px;align-items:stretch;}
.steps.steps-cards .step{text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:26px 22px 24px;box-shadow:0 8px 22px rgba(22,41,63,.06);display:flex;flex-direction:column;}
.steps.steps-cards .step .n{width:46px;height:46px;border-radius:13px;font-size:20px;margin:0 0 18px;}
.steps.steps-cards .step h4{font-size:17px;line-height:1.3;color:var(--navy);margin:0 0 10px;}
.steps.steps-cards .step p{font-size:14.5px;line-height:1.58;}
@media(max-width:1080px){.steps.steps-cards{grid-template-columns:repeat(3,1fr);}}
@media(max-width:760px){.steps.steps-cards{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.steps.steps-cards{grid-template-columns:1fr;}}

/* ---------- Section base ---------- */
section.block{max-width:1180px;margin:0 auto;padding:112px 40px;}
.eyebrow{position:relative;text-align:center;font-family:'Manrope',sans-serif;font-weight:800;font-size:42px;color:var(--navy);padding-bottom:24px;}
.eyebrow::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:64px;height:3px;border-radius:2px;background:var(--gold);}
.sub-h{text-align:center;font-family:'Manrope',sans-serif;font-weight:700;font-size:30px;color:var(--slate);margin-top:14px;}
.lede{text-align:center;max-width:760px;margin:18px auto 0;font-size:19px;line-height:1.6;color:#5a6772;}

/* stats */
.stats-band{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:54px;}
.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:40px 28px;text-align:center;
  box-shadow:var(--shadow-card);transition:transform .2s,box-shadow .2s;}
.stat:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);}
.stat .num{font-family:'Manrope',sans-serif;font-weight:800;font-size:58px;color:var(--navy);line-height:1;}
.stat .lab{margin-top:14px;font-size:17px;font-weight:600;color:var(--slate);line-height:1.4;}
.center-cta{display:flex;justify-content:center;margin-top:50px;}
.btn-primary{display:inline-flex;align-items:center;gap:10px;background:var(--navy);color:#fff;
  font-family:'Manrope',sans-serif;font-weight:700;font-size:18px;padding:16px 42px;border-radius:44px;
  border:none;cursor:pointer;transition:.2s;}
.btn-primary:hover{background:var(--steel);transform:translateY(-2px);box-shadow:var(--shadow-card-hover);}

/* referral strip */
.refstrip{background:linear-gradient(90deg,var(--steel),var(--navy));color:#fff;}
.refstrip .wrap{max-width:1280px;margin:0 auto;padding:14px 40px;display:flex;align-items:center;
  justify-content:center;gap:24px;flex-wrap:wrap;}
.refstrip p{margin:0;font-family:'Manrope',sans-serif;font-weight:700;font-size:19px;text-align:center;}
.refstrip .pill{font-size:15px;padding:10px 26px;}

/* comparison table */
.compare-wrap{background:#fff;}
.included{list-style:none;margin:50px auto 0;padding:0;max-width:720px;display:flex;flex-direction:column;gap:2px;}
.included li{display:flex;align-items:center;gap:18px;font-family:'Mulish',sans-serif;font-size:19px;font-weight:600;
  color:var(--navy);padding:20px 4px;border-bottom:1px solid var(--line);line-height:1.4;}
.included li:first-child{border-top:1px solid var(--line);}
.included .ic{flex:none;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border-radius:50%;background:#EAF2EC;color:#1F8A5B;}
.included .ic svg{width:19px;height:19px;}
table.compare{width:100%;border-collapse:collapse;margin-top:50px;background:#fff;
  border:1px solid var(--line);border-radius:12px;overflow:hidden;}
table.compare th,table.compare td{border:1px solid var(--line);padding:22px 16px;text-align:center;vertical-align:middle;}
table.compare thead th{font-family:'Manrope',sans-serif;font-weight:700;font-size:16px;color:var(--slate);width:16%;line-height:1.35;}
table.compare thead th:first-child{width:20%;font-size:24px;color:var(--navy);text-align:left;}
.rowlabel{font-family:'Manrope',sans-serif;font-weight:700;font-size:20px;color:var(--slate);text-align:center;}
.rowlabel img{height:44px;}
tr.civico td{background:#F8FAFB;}
.mark{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;
  color:#fff;font-weight:800;font-size:22px;}
.mark.yes{background:var(--ok);}
.mark.no{background:var(--slate);}
.mark.maybe{background:var(--steel);}

/* advocates */
.adv{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.adv image-slot{width:100%;height:380px;}
.videoframe{position:relative;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-card);}
.playbtn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;}
.playbtn span{width:84px;height:84px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;
  align-items:center;justify-content:center;box-shadow:var(--shadow-card);}
.playbtn svg{width:34px;height:34px;color:var(--navy);margin-left:5px;}
.adv h2{font-size:38px;line-height:1.15;color:var(--navy);font-weight:700;}
.adv .who{font-family:'Manrope',sans-serif;font-weight:700;font-size:24px;color:var(--slate);margin:22px 0 14px;}
.adv ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:16px;}
.adv li{position:relative;padding-left:32px;font-size:18px;line-height:1.5;color:#52606c;}
.adv li::before{content:"";position:absolute;left:0;top:8px;width:14px;height:14px;border-radius:50%;background:var(--steel);}
.adv .btn-primary{margin-top:34px;}

/* ---------- Footer ---------- */
footer.site{background:var(--navy-deep);color:#cdd6e0;padding:70px 40px 30px;border-top:3px solid var(--gold);}
.foot-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:44px;}
footer .logo-foot{height:52px;width:auto;margin-bottom:18px;background:#fff;padding:10px 16px;border-radius:8px;box-shadow:var(--shadow-card);}
footer p.fdesc{font-size:15px;line-height:1.6;color:#9fb0c4;max-width:300px;}
footer h4{color:#fff;font-size:17px;margin-bottom:18px;font-weight:700;}
footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;}
footer ul a{font-size:15px;color:#bcc8d6;}
footer ul a:hover{color:#fff;}
.foot-contact{font-size:15px;line-height:1.7;color:#bcc8d6;}
.foot-contact strong{color:#fff;}
.foot-bottom{max-width:1180px;margin:48px auto 0;border-top:1px solid rgba(255,255,255,.12);padding-top:24px;
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px;color:#8fa0b4;line-height:1.6;}
.disclaimer{max-width:760px;}

/* ---------- Sticky bottom bar ---------- */
body[data-hide-cta] .bottombar,body[data-hide-cta] .chatbubble,body[data-hide-cta] .callback{display:none!important;}
body[data-hide-cta]{padding-bottom:0!important;}
.bottombar{position:fixed;left:0;right:0;bottom:0;z-index:80;background:rgba(31,58,95,.80);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  display:flex;align-items:center;justify-content:center;gap:18px;padding:11px;
  box-shadow:0 -6px 24px rgba(0,0,0,.18);
}
/* Reserve room for the bar at every width, measured from the bar itself (--bb-h). */
body{padding-bottom:calc(var(--bb-h,74px) + env(safe-area-inset-bottom));}
.callback{bottom:calc(var(--bb-h,74px) + 74px + env(safe-area-inset-bottom));}
.bottombar .btn-out{background:#fff;color:var(--navy);border:2px solid #fff;font-family:'Manrope',sans-serif;
  font-weight:700;font-size:16px;padding:11px 30px;border-radius:44px;cursor:pointer;transition:.2s;}
.bottombar .btn-out:hover{background:var(--paper);}
.bottombar .btn-fill{background:var(--navy);color:#fff;border:2px solid var(--navy);font-family:'Manrope',sans-serif;
  font-weight:700;font-size:16px;padding:11px 30px;border-radius:44px;cursor:pointer;transition:.2s;}
.bottombar .btn-fill:hover{background:var(--steel);border-color:var(--steel);}
.bottombar .bb-prompt{margin:0;color:#fff;font-family:'Manrope',sans-serif;font-weight:600;font-size:16px;letter-spacing:.005em;}
.bottombar .bb-short{display:none;}
.chatbubble{flex:none;width:48px;height:48px;border-radius:50%;
  background:rgba(255,255,255,.13);border:1.5px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;}
.bottombar .chatbubble{margin-left:14px;}
.chatbubble:hover{background:rgba(255,255,255,.24);transform:translateY(-1px);}
.chatbubble svg{width:26px;height:26px;color:#fff;}
.chatbubble .cb-ic-close{display:none;}
.chatbubble.active .cb-ic-chat{display:none;}
.chatbubble.active .cb-ic-close{display:block;}
.chatbubble.active{background:var(--steel);}

/* ---- Callback widget ---- */
.callback{position:fixed;right:24px;bottom:82px;z-index:82;width:340px;max-width:calc(100vw - 36px);
  display:flex;flex-direction:column;max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);
  background:#fff;border-radius:12px;box-shadow:var(--shadow-card-hover);overflow:hidden;
  opacity:0;pointer-events:none;transform:translateY(14px) scale(.98);transform-origin:bottom right;transition:opacity .2s,transform .2s;}
.callback.open{opacity:1;pointer-events:auto;transform:translateY(0) scale(1);}
.callback .cb-head{flex:none;background:linear-gradient(135deg,var(--navy) 0%,var(--steel) 100%);color:#fff;padding:20px 22px;}
.callback .cb-title{font-family:'Manrope',sans-serif;font-weight:800;font-size:19px;margin:0;}
.callback .cb-sub{font-size:13px;margin:5px 0 0;color:#dce6f2;font-weight:600;}
.callback .cb-content{flex:1 1 auto;min-height:0;overflow-y:auto;padding:20px 22px 22px;}
.callback .cb-form{padding:0;display:flex;flex-direction:column;gap:13px;}
.callback .cb-choices{display:flex;flex-direction:column;gap:12px;}
.callback .cb-form[hidden],.callback .cb-choices[hidden]{display:none;}
.callback .cb-primary{position:relative;display:flex;flex-direction:column;gap:3px;text-align:left;background:linear-gradient(135deg,var(--navy) 0%,var(--steel) 100%);color:#fff;border:2px solid var(--gold);border-radius:12px;padding:17px 48px 17px 20px;transition:.2s;}
.callback .cb-primary:hover{filter:brightness(1.08);color:#fff;}
.callback .cb-p-top{font-family:'Manrope',sans-serif;font-weight:800;font-size:18px;}
.callback .cb-p-sub{font-size:13px;font-weight:600;color:#dce6f2;}
.callback .cb-arw{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:22px;height:22px;color:var(--gold);}
.callback .cb-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:transparent;border:0;cursor:pointer;color:var(--steel);font-family:'Manrope',sans-serif;font-weight:700;font-size:14.5px;padding:4px;transition:.15s;}
.callback .cb-secondary:hover{text-decoration:underline;}
.callback .cb-secondary svg{width:15px;height:15px;}
.callback .cb-back{align-self:flex-start;background:transparent;border:0;cursor:pointer;color:var(--slate);font-family:'Manrope',sans-serif;font-weight:700;font-size:13px;padding:0;transition:.15s;}
.callback .cb-back:hover{color:var(--steel);}
.callback .cb-field textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:12px 13px;font-size:15px;font-family:'Mulish',sans-serif;color:var(--slate);background:#fff;min-height:82px;resize:vertical;}
.callback .cb-field textarea:focus{outline:none;border-color:var(--steel);box-shadow:0 0 0 3px rgba(46,92,138,.18);}
.callback .cb-field{display:flex;flex-direction:column;gap:6px;}
.callback .cb-field span{font-family:'Manrope',sans-serif;font-weight:700;font-size:13px;color:var(--slate);}
.callback .cb-field input,.callback .cb-field select{width:100%;border:1px solid var(--line);border-radius:8px;
  padding:12px 13px;font-size:15px;font-family:'Mulish',sans-serif;color:var(--slate);background:#fff;}
.callback .cb-field input:focus,.callback .cb-field select:focus{outline:none;border-color:var(--steel);
  box-shadow:0 0 0 3px rgba(46,92,138,.18);}
.callback .cb-consent{font-size:12.5px;line-height:1.5;color:#5a6772;margin:0;}
.callback .cb-submit{background:var(--navy);color:#fff;border:none;border-radius:44px;padding:14px;cursor:pointer;
  font-family:'Manrope',sans-serif;font-weight:700;font-size:16px;transition:.2s;}
.callback .cb-submit:hover{background:var(--steel);}
.callback .cb-alt{text-align:center;font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;color:var(--steel);}
.callback .cb-alt:hover{text-decoration:underline;}
.callback .cb-confirm{text-align:center;padding:14px 6px 8px;}
.callback .cb-check{width:56px;height:56px;border-radius:50%;background:var(--ok);color:#fff;display:flex;
  align-items:center;justify-content:center;margin:0 auto 14px;}
.callback .cb-check svg{width:30px;height:30px;}
.callback .cb-ct{font-family:'Manrope',sans-serif;font-weight:800;font-size:19px;color:var(--navy);margin:0 0 8px;}
.callback .cb-cp{font-size:15px;line-height:1.55;color:#52606c;margin:0;}
.callback .cb-confirm .cb-cp+.cb-cp{margin-top:10px;}
.callback .cb-cta{display:inline-flex;align-items:center;gap:8px;margin-top:18px;background:var(--gold);color:#1E2B3A;font-family:'Manrope',sans-serif;font-weight:800;font-size:15px;padding:12px 26px;border-radius:44px;box-shadow:0 2px 10px rgba(0,0,0,.18);transition:.2s;}
.callback .cb-cta:hover{background:#D4AC4A;transform:translateY(-1px);}
/* ---------- Mobile: hide sticky CTA bar, reposition callback, fix heroes ---------- */
@media(max-width:760px){
  body{padding-bottom:calc(var(--bb-h,78px) + env(safe-area-inset-bottom));}
  .bottombar{gap:10px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(31,58,95,.80);border-top:1px solid rgba(255,255,255,.14);box-shadow:0 -4px 16px rgba(0,0,0,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
  .bottombar .btn-out,.bottombar .btn-fill{flex:1 1 0;max-width:none;height:46px;padding:0 12px;display:flex;align-items:center;justify-content:center;font-size:15px;border-radius:44px;white-space:nowrap;}
  .bottombar .btn-out{background:#fff;color:var(--navy);border:2px solid #fff;}
  .bottombar .btn-out:hover{background:#fff;}
  .bottombar .btn-fill{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.55);}
  .bottombar .btn-fill:hover{background:transparent;border-color:#fff;}
  .bottombar .bb-full{display:none;}
  .bottombar .bb-prompt{display:none;}
  .bottombar .bb-short{display:inline;}
  .chatbubble{width:42px;height:42px;}
  .chatbubble svg{width:22px;height:22px;}
  .callback{right:12px;bottom:calc(76px + env(safe-area-inset-bottom));}
  .hero-banner{min-height:320px;background-size:cover!important;background-position:var(--m-pos,right center)!important;}
  .hero-banner::after{background:linear-gradient(180deg,rgba(20,38,60,.72) 0%,rgba(20,38,60,.76) 50%,rgba(20,38,60,.9) 100%);}
  .hero-banner .panel{padding:36px 22px;}
  .hero-banner h1{font-size:30px;border-left-width:4px;padding-left:16px;text-shadow:0 2px 12px rgba(0,0,0,.55);}
  .hero-banner .crumb,.hero-banner p.intro{padding-left:16px;}
  .hero-banner p.intro{font-size:16.5px;text-shadow:0 1px 8px rgba(0,0,0,.5);}
}

/* ---------- Responsive ---------- */
/* Opening the drawer locks background scrolling with overflow:hidden, which takes the
   sticky header out of its stuck position (its top jumped to -scrollY, so the header
   vanished and page content showed through above the drawer). Pin the header for as long
   as the menu is open so it stays put, above the drawer. */
html.menu-open header.site{position:fixed;top:0;left:0;right:0;z-index:95;}
/* Hamburger drawer. Not gated to a breakpoint: the header decides when to collapse by
   MEASURING whether the nav fits (see fitNav in chrome.js), so the drawer must be usable
   at any width. It stays out of the way via the [hidden] attribute. */
  .mobilemenu{display:block;position:fixed;left:0;right:0;top:0;bottom:0;z-index:90;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 26px rgba(0,0,0,.16);padding:8px 20px 40px;}
  .mobilemenu[hidden]{display:none;}
  html.menu-open,html.menu-open body{overflow:hidden;}
  html.menu-open .bottombar,html.menu-open .chatbubble,html.menu-open .callback{display:none!important;}
  .mm-group{padding:12px 0;border-bottom:1px solid var(--line);}
  .mm-head{display:block;font-family:'Manrope',sans-serif;font-weight:800;font-size:17px;color:var(--navy);margin-bottom:6px;}
  .mm-group>a:not(.mm-head){display:block;padding:12px 10px;margin:0 -10px;border-radius:8px;color:var(--slate);font-size:16.5px;transition:background .12s,color .12s;}
  /* iOS paints its own translucent-blue tap overlay on links, which washed these rows out.
     Kill it so only our navy fill shows on press. */
  .mobilemenu a,.mm-cta,.mm-head{-webkit-tap-highlight-color:transparent;}
  /* .pressed is set on touchstart in chrome.js: iOS fires :active late (after its own
     scroll-intent delay), so the press felt sluggish. Instant, no transition. */
  .mm-group>a:not(.mm-head):hover,.mm-group>a:not(.mm-head):active,.mm-group>a:not(.mm-head):focus,.mm-group>a.pressed:not(.mm-head){background:var(--navy);color:#fff;}
  .mm-group>a.pressed:not(.mm-head){transition:none;}
  .mm-head{transition:color .12s;}
  .mm-head:hover{color:var(--steel);}
  .mm-cta{display:block;text-align:center;margin:2px 0 18px;background:var(--navy);color:#fff;font-family:'Manrope',sans-serif;font-weight:700;font-size:16px;padding:15px;border-radius:44px;}

@media(max-width:1080px){
  .nav{grid-template-columns:1fr auto;grid-auto-rows:auto;}
  .navactions{justify-content:flex-end;}
  .navmenu{display:none;}
  .navtoggle{display:flex;}
  .navcall{display:flex;}
  .eligible-block{padding:0 18px;font-size:15px;}
  .hero h1{font-size:40px;}
  .cards{grid-template-columns:1fr;transform:none;margin-top:36px;}
  .hero-spacer{display:none;}
  .adv{grid-template-columns:1fr;gap:30px;}
  .foot-grid{grid-template-columns:1fr 1fr;}
  table.compare thead th:first-child{font-size:18px;}
  table.compare th,table.compare td{padding:14px 8px;}
  .service-grid{grid-template-columns:1fr;}
  .prose-row{grid-template-columns:1fr;gap:26px;}
  .prose-row.reverse .txt{order:0;}
  .page-hero h1{font-size:38px;}
  .steps{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){
  body{overflow-x:hidden;}
  .brand .tag{display:none;}
  .brand{gap:10px;padding:10px 14px;}
  .brand img{height:62px;}
  .nav{min-height:78px;}
  .eligible-block{display:none;}
  .hero h1{font-size:30px;}
  .hero-inner{padding:44px 20px 52px;}
  .eyebrow{font-size:30px;}.sub-h{font-size:22px;}
  .stats{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr;}
  .refstrip p{font-size:17px;}
  .steps{grid-template-columns:1fr;}
  .page-hero h1{font-size:30px;}
  section.block{padding:60px 20px;}
  .service-grid,.tgrid,.qa-wrap{padding-left:20px;padding-right:20px;}
  .stories-inner,.repbio,.howitworks,.services-head{padding-left:20px;padding-right:20px;}
  .repbio.cream .inner{padding-left:20px;padding-right:20px;}
  .prose,.band .prose{padding-left:20px;padding-right:20px;}
  .band .prose{padding-top:64px;padding-bottom:64px;}
  .page-hero{padding-left:22px;padding-right:22px;}
  .ssdi101{padding:60px 22px;}
  .ssdi101 h2{font-size:30px;}
  .ssdi101 p{font-size:17px;}
  .prose-row h2{font-size:27px;}
  .adv h2{font-size:28px;}
  footer ul a{display:inline-block;padding:5px 0;}
  .closing{padding:60px 20px;}
}

/* ---------- Mobile audit: stack step rows (beats inline grid), glossary ---------- */
@media(max-width:820px){.steps:not(.steps-cards){grid-template-columns:1fr 1fr!important;}}
@media(max-width:640px){.glossary{grid-template-columns:1fr;}}
@media(max-width:540px){.steps:not(.steps-cards){grid-template-columns:1fr!important;}}

/* ====================================================================
   TRUST LAYER  (homepage social proof, rep bio, quiz booking handoff)
   ==================================================================== */

/* ---- Homepage client-stories band ---- */
.stories{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.stories-inner{max-width:1180px;margin:0 auto;padding:84px 40px;}
.stories .head{text-align:center;margin-bottom:18px;}
.stories .head .eyebrow{margin-bottom:14px;}
.stories .head .lede{margin-top:0;}
.tcard .stars{display:flex;gap:4px;color:#C19A3E;}
.tcard .stars svg{width:20px;height:20px;}
.tcard.home{background:#fff;box-shadow:var(--shadow-card);}
.tcard .who{align-items:center;}
.tcard .who .meta{display:flex;flex-direction:column;gap:2px;}
.tcard .who .loc{font-size:14.5px;font-weight:600;color:#52606c;font-family:'Manrope',sans-serif;}
.stories .center-cta{margin-top:50px;}
.stories .btn-ghost{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--navy);
  border:2px solid var(--navy);font-family:'Manrope',sans-serif;font-weight:700;font-size:17px;
  padding:14px 38px;border-radius:44px;transition:.2s;}
.stories .btn-ghost:hover{background:var(--navy);color:#fff;transform:translateY(-2px);}
.stories .proofnote{text-align:center;font-size:14.5px;color:#52606c;line-height:1.6;max-width:760px;margin:26px auto 0;}

/* ---- Homepage "what you can count on" trust cards ---- */
.trustgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding:42px 0 4px;}
.trustcard{background:#fff;border:1px solid var(--line);border-radius:12px;padding:34px 28px;
  box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:14px;transition:transform .2s,box-shadow .2s;}
.trustcard:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);}
.trustcard .t-ico{width:52px;height:52px;border-radius:12px;background:var(--paper);color:var(--steel);
  display:flex;align-items:center;justify-content:center;flex:none;}
.trustcard .t-ico svg{width:28px;height:28px;}
.trustcard h3{font-family:'Manrope',sans-serif;font-weight:700;font-size:20px;color:var(--navy);line-height:1.25;}
.trustcard p{margin:0;font-size:16px;line-height:1.58;color:#52606c;}
@media(max-width:1040px){.trustgrid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.trustgrid{grid-template-columns:1fr;}}

/* ---- Homepage representative bio ---- */
.repbio{max-width:1180px;margin:0 auto;padding:86px 40px;}
.repbio .inner{max-width:860px;margin:0 auto;}
.repbio .photo{position:relative;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-card);}
.repbio image-slot{width:100%;height:440px;display:block;}
.repbio .cred{position:absolute;left:22px;bottom:22px;background:rgba(255,255,255,.95);backdrop-filter:blur(4px);
  border-radius:8px;padding:14px 18px;box-shadow:var(--shadow-card);display:flex;align-items:center;gap:12px;}
.repbio .cred .seal{width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;display:flex;
  align-items:center;justify-content:center;flex:none;}
.repbio .cred .seal svg{width:22px;height:22px;}
.repbio .cred b{font-family:'Manrope',sans-serif;font-size:15px;color:var(--navy);line-height:1.2;}
.repbio .cred span{display:block;font-size:13.5px;font-weight:600;color:#52606c;}
.repbio .eyebrow{text-align:left;font-size:15px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--silver);padding-bottom:0;}
.repbio .eyebrow::after{display:none;}
.repbio h2{font-family:'Manrope',sans-serif;font-weight:800;font-size:40px;line-height:1.12;color:var(--navy);margin-top:12px;}
.repbio .role{font-family:'Manrope',sans-serif;font-weight:700;font-size:17px;color:var(--slate);margin:10px 0 0;}
.repbio p.bio{font-size:18px;line-height:1.66;color:#52606c;margin:20px 0 0;}
.repbio .reptags{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0;}
.repbio .reptags span{display:inline-flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line);
  border-radius:44px;padding:9px 18px;font-family:'Manrope',sans-serif;font-weight:600;font-size:14px;color:var(--slate);}
.repbio .reptags span::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--steel);}
.repbio .repcta{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;}
.repbio .btn-line{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--navy);
  border:2px solid var(--navy);font-family:'Manrope',sans-serif;font-weight:700;font-size:17px;
  padding:14px 34px;border-radius:44px;transition:.2s;}
.repbio .btn-line:hover{background:var(--navy);color:#fff;transform:translateY(-2px);}
@media(max-width:980px){
  .repbio .inner{grid-template-columns:1fr;gap:30px;}
  .repbio image-slot{height:360px;}
  .repbio h2{font-size:32px;}
}

/* ---- Quiz: book-a-call handoff ---- */
.eq-book{margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:12px;
  box-shadow:var(--shadow-card);padding:30px 30px 32px;text-align:left;}
.eq-book .bk-top{display:flex;align-items:center;gap:16px;margin-bottom:6px;}
.eq-book .bk-ic{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--steel));
  color:#fff;display:flex;align-items:center;justify-content:center;flex:none;}
.eq-book .bk-ic svg{width:26px;height:26px;}
.eq-book h3{font-family:'Manrope',sans-serif;font-weight:800;font-size:24px;color:var(--navy);line-height:1.15;margin:0;}
.eq-book .bk-sub{font-size:16.5px;line-height:1.55;color:#52606c;margin:14px 0 0;}
.eq-book .bk-label{font-family:'Manrope',sans-serif;font-weight:700;font-size:14.5px;letter-spacing:.02em;
  text-transform:uppercase;color:#5a6772;margin:24px 0 12px;}
.eq-book .bk-days{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.eq-book .bk-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;}
.eq-book .bk-opt{appearance:none;background:var(--paper);border:1.5px solid var(--line);border-radius:10px;
  padding:13px 10px;font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;color:var(--slate);
  cursor:pointer;transition:.15s;text-align:center;line-height:1.25;}
.eq-book .bk-opt small{display:block;font-size:12px;font-weight:600;color:#7c8893;margin-top:3px;}
.eq-book .bk-opt:hover{border-color:var(--steel);}
.eq-book .bk-opt[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff;}
.eq-book .bk-opt[aria-pressed="true"] small{color:#cdd6e0;}
.eq-book .bk-confirm{margin-top:22px;width:100%;justify-content:center;opacity:.5;pointer-events:none;}
.eq-book .bk-confirm.ready{opacity:1;pointer-events:auto;}
.eq-book .bk-or{display:flex;align-items:center;gap:14px;margin:22px 0 4px;color:#9aa1a9;font-size:13px;
  font-family:'Manrope',sans-serif;font-weight:700;letter-spacing:.08em;}
.eq-book .bk-or::before,.eq-book .bk-or::after{content:"";flex:1;height:1px;background:var(--line);}
.eq-book .bk-call{display:flex;align-items:center;justify-content:center;gap:10px;font-family:'Manrope',sans-serif;
  font-weight:700;font-size:18px;color:var(--navy);padding:6px;}
.eq-book .bk-call svg{width:20px;height:20px;}
.eq-booked{text-align:center;padding:6px 0 4px;}
.eq-booked .bk-check{width:64px;height:64px;border-radius:50%;background:var(--ok);color:#fff;display:flex;
  align-items:center;justify-content:center;margin:0 auto 18px;}
.eq-booked .bk-check svg{width:34px;height:34px;}
.eq-booked h3{font-family:'Manrope',sans-serif;font-weight:800;font-size:24px;color:var(--navy);margin:0 0 10px;}
.eq-booked p{font-size:16px;line-height:1.6;color:#52606c;margin:0 auto;max-width:440px;}
.eq-booked .bk-when{font-family:'Manrope',sans-serif;font-weight:800;color:var(--steel);}
@media(max-width:560px){
  .eq-book .bk-days,.eq-book .bk-slots{grid-template-columns:1fr;}
}

/* ---- Quiz: not-a-fit "explain your situation" box ---- */
.eq-situation{margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:12px;
  box-shadow:var(--shadow-card);padding:26px 28px 28px;text-align:left;}
.eq-situation .bk-label{display:block;font-family:'Manrope',sans-serif;font-weight:700;font-size:14.5px;
  letter-spacing:.02em;text-transform:uppercase;color:#5a6772;margin:0 0 12px;}
.eq-situation .eq-sit-text{width:100%;box-sizing:border-box;border:1.5px solid var(--line);border-radius:8px;
  padding:15px 16px;font-size:16px;font-family:'Mulish',sans-serif;color:var(--slate);background:#fff;
  line-height:1.55;resize:vertical;min-height:130px;}
.eq-situation .eq-sit-text::placeholder{color:#8a949e;}
.eq-situation .eq-sit-text:focus{outline:none;border-color:var(--steel);box-shadow:0 0 0 3px rgba(46,92,138,.18);}
.eq-situation #eq-sit-send{margin-top:16px;width:100%;justify-content:center;}
.eq-situation #eq-sit-send[disabled]{opacity:.6;pointer-events:none;}

/* ====================================================================
   AESTHETIC LAYER — warmth, motion, rhythm
   ==================================================================== */

/* Scroll reveal (subtle fade/rise; disabled for reduced-motion) */
@media (prefers-reduced-motion: no-preference){
  html.js-reveal .reveal{opacity:0;transform:translateY(14px);transition:opacity .3s ease-out,transform .3s ease-out;will-change:opacity,transform;}
  html.js-reveal .reveal.in{opacity:1;transform:none;}
}

/* Cream section wrappers for alternating rhythm */
.services-wrap{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-bottom:20px;}
.services-wrap .service-grid{padding-bottom:86px;}
.repbio.cream{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:none;padding-left:0;padding-right:0;}
.repbio.cream .inner{padding-left:40px;padding-right:40px;}

/* ---- How CIVICO works (vertical timeline) ---- */
.howitworks{max-width:1180px;margin:0 auto;padding:86px 40px 30px;}
.hiw-timeline{list-style:none;max-width:720px;margin:46px auto 0;padding:0;}
.hiw-step{position:relative;display:grid;grid-template-columns:66px 1fr;column-gap:30px;padding-bottom:46px;}
.hiw-step:last-child{padding-bottom:0;}
.hiw-step::before{content:"";position:absolute;left:33px;top:70px;bottom:-4px;width:2px;
  background:linear-gradient(var(--steel) 0%,var(--line) 100%);transform:translateX(-1px);}
.hiw-step:last-child::before{display:none;}
.hiw-marker{width:66px;height:66px;border-radius:50%;background:linear-gradient(135deg,var(--navy) 0%,var(--steel) 100%);
  box-shadow:var(--shadow-card);color:#fff;font-family:'Manrope',sans-serif;font-weight:800;font-size:27px;
  display:flex;align-items:center;justify-content:center;position:relative;z-index:1;}
.hiw-content{padding-top:9px;}
.hiw-content h4{font-family:'Manrope',sans-serif;font-weight:700;font-size:22px;color:var(--slate);margin:0 0 9px;}
.hiw-content p{font-size:16.5px;line-height:1.62;color:#52606c;margin:0;max-width:560px;}
@media(max-width:560px){
  .hiw-step{grid-template-columns:52px 1fr;column-gap:20px;}
  .hiw-step::before{left:26px;top:56px;}
  .hiw-marker{width:52px;height:52px;font-size:22px;}
}

/* ---- Closing invitation band ---- */
.closing{background:var(--cream);border-top:3px solid var(--gold);text-align:center;padding:88px 40px;}
.closing .inner{max-width:720px;margin:0 auto;}
.closing h2{font-family:'Manrope',sans-serif;font-weight:800;font-size:40px;line-height:1.14;color:var(--navy);}
.closing p{font-size:19px;line-height:1.62;color:#52606c;margin:20px auto 34px;max-width:600px;}
.closing .btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.closing .btn-line{display:inline-flex;align-items:center;gap:10px;background:transparent;color:var(--navy);
  border:2px solid var(--navy);font-family:'Manrope',sans-serif;font-weight:700;font-size:18px;
  padding:14px 36px;border-radius:44px;transition:.2s;}
.closing .btn-line:hover{background:var(--navy);color:#fff;transform:translateY(-2px);}
@media(max-width:560px){.closing h2{font-size:30px;}}

/* ---------- Mobile compact header (≤72px) ---------- */
@media(max-width:768px){
  .nav{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"brand call toggle" "cta cta cta";min-height:0;align-items:center;}
  .navactions{display:contents;}
  .brand{grid-area:brand;min-height:72px;padding:0 16px;gap:12px;}
  .brand img{height:46px;}
  .brand .tag{display:block;padding-left:12px;font-size:11.5px;line-height:1.25;max-width:150px;}
  .navtoggle{grid-area:toggle;display:flex;height:72px;width:64px;border-left:1px solid var(--line);}
  .navcall{grid-area:call;display:flex;height:72px;padding:0 14px;border-left:1px solid var(--line);}
  .navtoggle svg{width:26px;height:26px;}
  .eligible-block{display:none;}
}
@media(max-width:768px) and (orientation:landscape){
  .brand .tag{display:none;}
  .brand{min-height:60px;}
  .brand img{height:38px;}
  .navtoggle{height:60px;}
  .navcall{height:60px;}
  .eligible-block{padding:9px 18px;font-size:15px;}
}

/* Measured nav collapse. chrome.js adds .collapsed to .nav only when the brand, the three
   sections and the CTA cannot all fit on one row, so the sections stay visible whenever
   there is room and fold into the hamburger the moment they would crowd the logo. */
.nav.collapsed{grid-template-columns:1fr auto;}
.nav.collapsed .navmenu{display:none;}
.nav.collapsed .navtoggle{display:flex;}
.nav.collapsed .navactions{justify-content:flex-end;}

/* Path-to-decision chevron band (homepage hero foot). Chevrons are clip-path polygons;
   the first has a flat left edge. Label padding is keyed to the notch depth so text always
   clears the point. On narrow screens the row stays side-by-side and scrolls horizontally. */
.cvp-band{background:#fff;border-top:1px solid var(--line);}
.cvp{max-width:1180px;margin:0 auto;padding:60px 44px 66px;}
.cvp-eyebrow{font-family:'Manrope',sans-serif;font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 10px;}
.cvp-h{font-family:'Manrope',sans-serif;font-weight:800;font-size:38px;line-height:1.14;color:var(--navy);margin:0 0 42px;}
.cvp-times{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 11px;}
.cvp-time{justify-self:end;transform:translateX(16px);font-size:13.5px;font-weight:700;font-style:italic;color:#5A6672;}
.cvp-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.cvp-chev{--notch:clamp(16px,1.9vw,26px);height:86px;display:flex;align-items:center;justify-content:center;background:#2C4C74;clip-path:polygon(0 0,calc(100% - var(--notch)) 0,100% 50%,calc(100% - var(--notch)) 100%,0 100%,var(--notch) 50%);}
.cvp-step:first-child .cvp-chev{clip-path:polygon(0 0,calc(100% - var(--notch)) 0,100% 50%,calc(100% - var(--notch)) 100%,0 100%);}
.cvp-step:nth-child(4) .cvp-chev{background:#33598A;}
/* Hover lift matches the site's card vocabulary. box-shadow can't follow a clip-path,
   so the shadow comes from a drop-shadow filter on the step. */
.cvp-step{transition:transform .2s,filter .2s;}
.cvp-step:hover{transform:translateY(-6px);filter:drop-shadow(0 10px 18px rgba(22,41,63,.22));}
.cvp-chev,.cvp-cap{transition:background .2s,color .2s;}
.cvp-step:hover .cvp-chev{background:var(--navy);}
.cvp-step:hover.is-key .cvp-chev{background:#D4AC4A;}
.cvp-step:hover .cvp-cap{color:var(--navy);}
@media(prefers-reduced-motion:reduce){.cvp-step,.cvp-step:hover{transition:none;transform:none;}}
.cvp-step.is-key .cvp-chev{background:var(--gold);}
.cvp-chev .lab{font-family:'Manrope',sans-serif;font-weight:800;font-size:clamp(14px,1.35vw,20px);line-height:1.2;letter-spacing:-.01em;color:#fff;padding:0 calc(var(--notch) + 8px);text-align:center;}
.cvp-step.is-key .cvp-chev .lab{color:var(--navy-deep);}
.cvp-cap{margin:16px 6px 0;text-align:center;font-size:15.5px;line-height:1.5;color:#3A4650;text-wrap:balance;}
.cvp-mtime,.cvp-cap-in{display:none;}
@media(max-width:940px){
  .cvp{padding:40px 0 46px;}
  .cvp-eyebrow,.cvp-h{padding:0 24px;}
  .cvp-h{font-size:27px;margin-bottom:26px;}
  .cvp-times{display:none;}
  /* Phones: stack, but keep the arrow shape — the chevron points DOWN so the path still
     reads as a sequence and nothing is hidden behind a swipe. */
  .cvp-steps{display:flex;flex-direction:column;gap:10px;padding:0 24px;}
  .cvp-step{display:flex;flex-direction:column;}
  .cvp-chev{--notch:18px;height:auto;min-height:78px;flex-direction:column;justify-content:center;padding:16px 20px calc(16px + var(--notch));clip-path:polygon(0 0,100% 0,100% calc(100% - var(--notch)),50% 100%,0 calc(100% - var(--notch)));border-radius:4px 4px 0 0;}
  .cvp-step:first-child .cvp-chev{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--notch)),50% 100%,0 calc(100% - var(--notch)));}
  .cvp-step:last-child .cvp-chev{clip-path:none;padding-bottom:16px;border-radius:4px;}
  .cvp-chev .lab{font-size:18px;padding:0;}
  .cvp-chev .cvp-cap-in{display:block;margin:5px 0 0;font-size:14px;line-height:1.45;color:rgba(255,255,255,.86);text-align:center;}
  .cvp-step.is-key .cvp-chev .cvp-cap-in{color:rgba(22,41,63,.82);}
  .cvp-mtime{display:block;font-size:12px;font-weight:700;font-style:italic;color:#5A6672;margin:2px 0 6px;text-align:center;}
  .cvp-step:first-child .cvp-mtime{display:none;}
  .cvp-cap{display:none;}
}

/* Static (non-JS) Section 1140 disclaimer at the foot of every page. Mirrors the treatment
   of .disclaimer in the JS-injected footer; must stay visible if scripts do not run. */
.static-disclaimer{max-width:940px;margin:0 auto;padding:22px 24px 30px;font-size:12.5px;line-height:1.6;color:#6B7681;text-align:center;text-wrap:pretty;}

@media(max-width:640px){
  /* One trust point per line, ticks in a single left-aligned column. Centring them
     made the wrapped first item read as a stray line with a floating tick. */
  .nhero-msg{text-align:left;align-items:flex-start;}
  .nhero-sub{max-width:none;}
  .nhero-lead{max-width:none;}
  .nhero-trust{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:11px;margin-top:26px;}
  .nhero-trust span{align-items:flex-start;font-size:15.5px;line-height:1.35;}
  .nhero-trust svg{margin-top:1px;}
}

/* ---------- Skip link ---------- */
.skip-link{position:fixed;top:-100px;left:12px;z-index:200;background:var(--navy);color:#fff;
  font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;padding:12px 20px;border-radius:0 0 10px 10px;
  box-shadow:0 6px 20px rgba(0,0,0,.28);transition:top .18s ease;}
.skip-link:focus{top:0;color:#fff;outline:3px solid var(--gold);outline-offset:2px;}

/* The static compliance disclaimer is a no-JS fallback: every page carries it in HTML so
   the notice survives even if chrome.js never runs. Once the shared footer HAS rendered
   the same text, the duplicate is redundant, so hide it. */
body.chrome-ready .static-disclaimer{display:none;}

.midcta{max-width:820px;margin:34px auto 6px;padding:22px 26px;background:var(--paper,#F4F6F8);border:1px solid var(--line);border-radius:10px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;justify-content:space-between;}
.midcta p{margin:0;font-size:16.5px;line-height:1.55;color:#4a5865;flex:1 1 300px;}
.midcta a{flex:none;display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--navy-deep);font-family:'Manrope',sans-serif;font-weight:800;font-size:16px;padding:13px 24px;border-radius:40px;box-shadow:0 4px 14px rgba(196,158,74,.28);transition:filter .15s,transform .15s;}
.midcta a:hover{filter:brightness(1.06);transform:translateY(-2px);}
.midcta a svg{width:17px;height:17px;}
@media(max-width:560px){.midcta{margin:26px 22px 4px;padding:20px 22px;}.midcta a{width:100%;justify-content:center;}}

/* Narrow phones: icon-only Call and no tagline so brand + Call + menu fit one row. */
@media(max-width:480px){
  .navcall span{display:none;}
  .navcall{width:60px;min-width:60px;padding:0;}
  .brand .tag{display:none;}
}

/* Header call link: plain number beside the menu, not a boxed cell. */
@media(max-width:1080px){
  .navcall{border-left:0;background:transparent;padding:0 22px;gap:9px;font-weight:700;font-size:16px;letter-spacing:.01em;color:var(--navy);}
  .navcall svg{width:18px;height:18px;}
  .navcall:hover,.navcall:active{background:transparent;color:var(--steel);}
}
@media(max-width:768px){
  .navcall{border-left:0;padding:0 8px;width:auto;min-width:0;}
  .navcall span{display:none;}
  .navcall svg{width:19px;height:19px;padding:10px;box-sizing:content-box;border:1.5px solid var(--line);border-radius:50%;}
  .navcall:hover svg,.navcall:active svg{border-color:var(--navy);}
}

/* Touch tablets above 1080px (iPad landscape): compact header with the call number. */
@media(min-width:1081px) and (hover:none) and (pointer:coarse){
  .nav.collapsed .navcall{display:flex;border-left:0;background:transparent;padding:0 22px;gap:9px;font-weight:700;font-size:16px;letter-spacing:.01em;color:var(--navy);}
  .nav.collapsed .navcall svg{width:18px;height:18px;}
}

/* When the full call number shows (tablets / iPad, either orientation), drop the tagline
   so logo, number, menu and CTA sit on one clean row without overlapping. */
.nav.collapsed .navcall{white-space:nowrap;flex:none;}
.nav.collapsed .brand{min-width:0;}
@media(min-width:769px) and (max-width:1080px){ .brand .tag{display:none;} }
@media(min-width:1081px) and (hover:none) and (pointer:coarse){ .nav.collapsed .brand .tag{display:none;} }

/* Home hero: representative photo */
.nhero-rep{display:flex;align-items:center;gap:20px;margin:0 0 28px;color:#fff;align-self:flex-start;}
.nhero-rep img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:4px solid var(--gold);flex:none;display:block;}
.nhero-rep-tx{display:flex;flex-direction:column;gap:4px;text-align:left;}
.nhero-rep-name{font-family:'Manrope',sans-serif;font-weight:700;font-size:20px;color:#fff;}
.nhero-rep-role{font-size:15px;color:#cdd9e6;}
.nhero-rep-role a{color:#cdd9e6;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px;}
.nhero-rep-role a:hover{color:#fff;}
@media(max-width:760px){.nhero-rep{gap:16px;margin-bottom:22px;}.nhero-rep img{width:96px;height:96px;border-width:3px;}.nhero-rep-name{font-size:18px;}}
@media(max-width:960px){.nhero-rep{align-self:center;}}
@media(max-width:640px){.nhero-rep{align-self:flex-start;}}
