:root{
  --navy:#0C1F35;
  --navy-2:#16304b;
  --blue:#0B63CE;
  --blue-pale:#EEF5FB;
  --red:#C63A22;
  --red-dark:#a82f1a;
  --slate:#46596E;
  --rule:#D9E1EA;
  --tint:#F4F7FA;
  --white:#FFFFFF;
  --measure:64ch;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

body{
  margin:0;background:var(--white);color:#10202F;
  font:400 18px/1.7 "Source Serif 4",Georgia,serif;
  padding-bottom:68px;-webkit-font-smoothing:antialiased;
}
h1,h2,h3,.ui{font-family:Archivo,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.narrow{max-width:768px}
a{color:var(--blue)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.tintbg{background:var(--tint);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}

/* ── header ── */
header.site{background:var(--navy);color:#fff}
header.site .wrap{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}
.brand{font-family:Archivo,sans-serif;font-weight:700;font-size:19px;letter-spacing:-.02em;color:#fff;text-decoration:none;line-height:1.15}
.brand span{display:block;font-weight:500;font-size:12px;color:#8FB3D9;letter-spacing:.02em}
header .spacer{flex:1}
.headcall{display:flex;align-items:center;gap:12px}
.headcall .avail{font:500 13px/1.3 Archivo,sans-serif;color:#8FA6BD;text-align:right}
.headcall a{background:var(--red);color:#fff;text-decoration:none;font:700 19px Archivo,sans-serif;padding:11px 20px;border-radius:3px;white-space:nowrap}
.headcall a:hover{background:var(--red-dark)}

/* ── 1 · hero ── */
.hero{background:var(--navy);color:#fff;padding:52px 0 58px;position:relative;z-index:1}
.hero .wrap{display:grid;grid-template-columns:1.25fr .9fr;column-gap:52px;row-gap:0;align-items:start}
.hero h1{font-size:clamp(32px,4.3vw,48px);line-height:1.08;letter-spacing:-.03em;font-weight:700;margin:0 0 18px;max-width:17ch}
.hero .lede{font-size:21px;line-height:1.55;color:#C9DCF0;margin:0 0 14px;max-width:47ch}
.hero .detail{font-size:17px;color:#8FA6BD;margin:0;max-width:47ch}
.herocall{display:inline-flex;align-items:baseline;gap:12px;margin-top:26px;background:var(--red);color:#fff;text-decoration:none;padding:16px 28px;border-radius:3px}
.herocall b{font:700 27px Archivo,sans-serif;letter-spacing:-.01em}
.herocall em{font:500 14px Archivo,sans-serif;font-style:normal;color:#F7CFC7}
.herocall:hover{background:var(--red-dark)}
.next{list-style:none;margin:26px 0 0;padding:0;max-width:46ch}
.next li{position:relative;padding:0 0 0 24px;margin-bottom:9px;font-size:16px;line-height:1.45;color:#A9BDD3}
.next li::before{content:"";position:absolute;left:0;top:.62em;width:9px;height:9px;border:2px solid var(--red);border-radius:50%}
.next li:last-child{margin-bottom:0}

.quote{background:var(--white);color:#10202F;border-radius:4px;padding:22px 22px 20px;box-shadow:0 18px 44px rgba(0,0,0,.3)}
.quote h2{margin:0 0 5px;font-size:20px;letter-spacing:-.01em}
.quote .sub{margin:0 0 14px;font:400 15px/1.5 "Source Serif 4",serif;color:var(--slate)}
.quote label{display:block;font:500 13px Archivo,sans-serif;color:var(--slate);margin-bottom:5px}
.quote input,.quote textarea{width:100%;padding:10px 12px;margin-bottom:11px;border:1px solid var(--rule);border-radius:3px;font:400 16px "Source Serif 4",serif;background:#fff;color:#10202F}
.quote textarea{resize:vertical}
.quote button{width:100%;background:var(--blue);color:#fff;border:0;padding:15px;border-radius:3px;font:600 17px Archivo,sans-serif;cursor:pointer}
.quote button:hover{background:#094fa6}
.quote .consent{margin:10px 0 0;font:400 11.5px/1.5 "Source Serif 4",serif;color:#6A7B8C}
.quote .consent a{color:#6A7B8C}
.quote .fineprint{margin:12px 0 0;font:400 13px/1.5 "Source Serif 4",serif;color:var(--slate);text-align:center}

/* ── 2 · trust row (inside hero) ── */
.trustrow{
  grid-column:1 / -1;margin-top:46px;padding-top:26px;
  border-top:1px solid rgba(255,255,255,.16);
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
}
.trustrow div{padding:0 24px 0 0;border-right:1px solid rgba(255,255,255,.13)}
.trustrow div:last-child{border-right:0;padding-right:0}
.trustrow div:not(:first-child){padding-left:24px}
.trustrow strong{display:block;font:700 16px Archivo,sans-serif;color:#fff;letter-spacing:-.01em;margin-bottom:3px}
.trustrow span{font-size:15px;color:#93AAC2;line-height:1.5;display:block}

/* ── shared section/* ── shared section ── */
section{padding:52px 0}
section > .wrap > h2{font-size:clamp(26px,3.1vw,35px);letter-spacing:-.025em;margin:0 0 12px;line-height:1.16;max-width:30ch}
.proc-main h2{font-size:clamp(26px,3.1vw,35px);letter-spacing:-.025em;margin:0 0 12px;line-height:1.16;max-width:24ch}
.standfirst{font-size:19px;color:var(--slate);margin:0 0 32px;max-width:var(--measure)}
.prose p{margin:0 0 18px;max-width:var(--measure)}
.prose p.first{font-size:20px}
.prose h3{font-size:20px;margin:30px 0 8px;letter-spacing:-.01em}

/* ── 3 · services ── */
.slist{display:grid;grid-template-columns:repeat(auto-fit,minmax(252px,1fr));gap:0;border-top:1px solid var(--rule)}
.slist a{display:block;padding:18px 22px 20px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:#10202F}
.slist a h3{margin:0 0 4px;font-size:17.5px;letter-spacing:-.01em}
.slist a p{margin:0;font-size:15.5px;color:var(--slate);line-height:1.55}
.slist a:hover h3{color:var(--blue)}

/* ── 5 · timeline ── */
.stages{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--rule)}
.stage{padding:22px 22px 26px 0;border-right:1px solid var(--rule);position:relative}
.stage:last-child{border-right:0;padding-right:0}
.stage:not(:first-child){padding-left:22px}
.stage::before{content:"";position:absolute;top:-1px;left:0;height:3px;background:var(--blue)}
.stage:nth-child(1)::before{width:18%}
.stage:nth-child(2)::before{width:46%}
.stage:nth-child(3)::before{width:78%;background:var(--red)}
.stage:nth-child(4)::before{width:100%;background:var(--red)}
.stage .mark{font:600 13px Archivo,sans-serif;color:var(--blue);display:block;margin-bottom:8px}
.stage:nth-child(3) .mark,.stage:nth-child(4) .mark{color:var(--red)}
.stage h3{font-size:18px;margin:0 0 7px;letter-spacing:-.01em;line-height:1.25}
.stage p{font-size:16px;line-height:1.6;color:var(--slate);margin:0}

/* ── 6 · process (real sequence, so numbered) ── */
.steps{list-style:none;counter-reset:s;padding:0;margin:10px 0 0;max-width:var(--measure)}
.steps li{counter-increment:s;display:grid;grid-template-columns:48px 1fr;column-gap:18px;padding:20px 0;border-top:1px solid var(--rule)}
.steps li::before{content:counter(s,decimal-leading-zero);grid-column:1;grid-row:1 / span 2;font:600 15px Archivo,sans-serif;color:var(--blue);padding-top:4px}
.steps li h3{grid-column:2;margin:0 0 5px;font-size:19px}
.steps li p{grid-column:2;margin:0;color:var(--slate);font-size:16.5px;max-width:none}

/* ── process layout ── */
.proc{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
.proc-main{min-width:0}
.proc-main .steps{max-width:none}
.proc-side{position:sticky;top:24px}
.proc-side .shot img{border:1px solid var(--rule)}
.sidecall{margin-top:22px;background:var(--navy);border-radius:4px;padding:22px}
.sidecall strong{display:block;font:700 18px Archivo,sans-serif;color:#fff;margin-bottom:6px;letter-spacing:-.01em}
.sidecall p{margin:0 0 14px;font-size:15.5px;line-height:1.5;color:#A5BCD4}
.sidecall a{display:block;text-align:center;background:var(--red);color:#fff;text-decoration:none;padding:13px;border-radius:3px;font:700 20px Archivo,sans-serif}
.sidecall a:hover{background:var(--red-dark)}

/* ── 7b · situations gallery ── */
.cases{padding-bottom:46px}
.casestrip{
  display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:14px;
  margin-top:6px;
}
.casestrip figure{margin:0;min-width:0}
.casestrip img{width:100%;height:auto;display:block;border-radius:3px;background:var(--tint)}
.casestrip figcaption{
  font:400 14px/1.45 "Source Serif 4",serif;color:var(--slate);margin-top:9px;
}
@media(max-width:1000px){
  .casestrip{
    display:flex;overflow-x:auto;scroll-snap-type:x mandatory;
    gap:12px;padding-bottom:10px;
    margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px;
    -webkit-overflow-scrolling:touch;
  }
  .casestrip figure{flex:0 0 190px;scroll-snap-align:start}
  .casestrip figcaption{font-size:13.5px}
}

/* ── 8 · insurance ── */
.pull{background:var(--white);border:1px solid var(--rule);border-left:4px solid var(--blue);padding:26px 30px;margin:30px 0;max-width:var(--measure);border-radius:0 4px 4px 0}
.pull h3{margin:0 0 10px;font-size:21px}
.pull p{margin:0 0 12px}
.pull p:last-child{margin:0}
.pull ul{margin:0 0 14px;padding-left:20px}
.pull li{margin-bottom:7px}

/* ── cta ── */
.midcta{background:var(--navy);color:#fff;padding:44px 34px;border-radius:4px;margin:44px 0 0;text-align:center}
.midcta h2{margin:0 auto 10px;font-size:clamp(24px,3vw,31px);letter-spacing:-.02em;max-width:24ch;line-height:1.2}
.midcta p{color:#A5BCD4;margin:0 auto 22px;max-width:52ch;font-size:17px}
.midcta a{display:inline-block;background:var(--red);color:#fff;text-decoration:none;padding:16px 34px;border-radius:3px;font:700 25px Archivo,sans-serif}
.midcta a:hover{background:var(--red-dark)}

/* ── 9 · faq ── */
.faq details{border-top:1px solid var(--rule);padding:18px 0}
.faq details:last-of-type{border-bottom:1px solid var(--rule)}
.faq summary{font:600 18.5px Archivo,sans-serif;cursor:pointer;list-style:none;display:flex;gap:14px;align-items:baseline}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";color:var(--blue);font-weight:600;flex:0 0 14px}
.faq details[open] summary::before{content:"–"}
.faq details p{margin:12px 0 0 28px;max-width:var(--measure);color:#1D3044}

/* ── 10 · areas ── */
.towns{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0;padding:0;list-style:none}
figure.shot{margin:0;padding:0}
figure.shot img{width:100%;height:auto;display:block;border-radius:4px;background:var(--tint)}
figure.shot figcaption{font:400 14px/1.5 "Source Serif 4",serif;color:var(--slate);margin-top:9px}
.shotband{padding:46px 0 0}
.shotband .wrap{max-width:1120px}
figure.inline{margin:30px 0;max-width:var(--measure)}
.towns li{font:500 14px Archivo,sans-serif;border:1px solid var(--rule);background:#fff;border-radius:3px;padding:7px 13px;color:var(--slate)}

/* ── footer ── */
footer.site{background:var(--navy);color:#8FA6BD;padding:44px 0 30px;font:400 15.5px/1.7 "Source Serif 4",serif}
footer.site a{color:#C9DCF0;text-decoration:none}
footer.site a:hover{text-decoration:underline}
footer.site .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:30px;margin-bottom:30px}
footer.site h3{color:#fff;font:600 14px Archivo,sans-serif;margin:0 0 12px}
footer.site ul{list-style:none;padding:0;margin:0}
footer.site li{margin-bottom:7px}
footer.site .bignum{font:700 23px Archivo,sans-serif;color:#fff;text-decoration:none}
footer.site .legal{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;font-size:13.5px;line-height:1.65}
footer.site .legal p{margin:0 0 6px;max-width:80ch}

/* ── sticky call bar ── */
.rail{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:55;display:flex;flex-direction:column;gap:2px;align-items:flex-end}
.rail a{display:block;text-decoration:none;font:700 15px Archivo,sans-serif;padding:14px 18px;border-radius:4px 0 0 4px;white-space:nowrap}
.rail-call{background:var(--red);color:#fff}
.rail-call:hover{background:var(--red-dark)}
.rail-quote{background:var(--navy);color:#fff;font-weight:600}
.rail-quote:hover{background:var(--navy-2)}
@media(max-width:1100px){.rail{display:none}}

.callbar{position:fixed;left:0;right:0;bottom:0;background:var(--red);z-index:60;box-shadow:0 -4px 16px rgba(0,0,0,.2)}
.callbar a{display:flex;justify-content:center;align-items:baseline;gap:11px;color:#fff;text-decoration:none;padding:18px 16px;font:700 20px Archivo,sans-serif}
.callbar a em{font:500 14px Archivo,sans-serif;font-style:normal;color:#F9DAD3}

@media(max-width:1000px){
  .proc{grid-template-columns:1fr;gap:32px}
  .proc-side{position:static;max-width:var(--measure)}
}
@media(max-width:900px){
  .hero .wrap{grid-template-columns:1fr;gap:34px}
  .stages{grid-template-columns:repeat(2,1fr)}
  .trustrow{grid-template-columns:repeat(2,1fr);row-gap:22px;margin-top:34px}
  .stage:nth-child(2){border-right:0}
  .trustrow div:nth-child(2){border-right:0}
  .stage:nth-child(3),.stage:nth-child(4){border-top:1px solid var(--rule)}
}
@media(max-width:620px){
  body{font-size:17px}
  section{padding:40px 0}
  .hero{padding:36px 0 40px}
  .headcall .avail{display:none}
  .stages{grid-template-columns:1fr}
  .trustrow{grid-template-columns:1fr;row-gap:18px}
  .stage{border-right:0;border-top:1px solid var(--rule);padding-left:0!important}
  .trustrow div{border-right:0;padding-left:0!important;padding-right:0}
  .stage:first-child{border-top:0}
  .midcta{padding:32px 22px}
  .midcta a{font-size:21px;padding:14px 24px}
}

/* ══════════════ primary navigation ══════════════ */
.mainnav{background:#091726;border-top:1px solid rgba(255,255,255,.07);position:relative;z-index:200}
.mainnav > .wrap{display:flex;align-items:stretch}

.mainnav .navlist{display:flex;align-items:stretch;flex:1;gap:2px}
.mainnav .navtoggle{display:none}

.mainnav .navlist a,
.mainnav .navlist button{
  font:600 15px Archivo,-apple-system,sans-serif;color:#C5D6E8;text-decoration:none;
  padding:14px 15px;display:flex;align-items:center;gap:6px;
  background:none;border:0;cursor:pointer;line-height:1.2;white-space:nowrap;
}
.mainnav .navlist a:hover,
.mainnav .navlist button:hover{color:#fff;background:rgba(255,255,255,.07)}
.mainnav .navlist a[aria-current="page"]{color:#fff;box-shadow:inset 0 -3px 0 var(--red)}
.mainnav .spacer{flex:1}
.mainnav .navlist a.navcta{
  background:var(--red);color:#fff;margin:7px 0 7px 10px;border-radius:3px;padding:0 18px;
}
.mainnav .navlist a.navcta:hover{background:var(--red-dark);color:#fff}

.has-drop{position:relative;display:flex}
.has-drop > button::after{
  content:"";width:6px;height:6px;flex:0 0 auto;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
}
.drop{
  position:absolute;top:100%;left:0;min-width:272px;background:#fff;
  border:1px solid var(--rule);border-radius:0 0 4px 4px;
  box-shadow:0 16px 34px rgba(8,22,38,.22);
  padding:6px;display:none;flex-direction:column;gap:1px;z-index:210;
}
.has-drop:hover > .drop,
.has-drop:focus-within > .drop{display:flex}
.mainnav .drop a{
  color:#16293C;font-weight:500;padding:10px 13px;border-radius:3px;display:block;
}
.mainnav .drop a:hover{background:var(--blue-pale);color:var(--blue)}

@media(max-width:960px){
  .mainnav > .wrap{display:block;padding-top:0;padding-bottom:0}
  .mainnav .navtoggle{
    display:flex;width:100%;justify-content:space-between;align-items:center;
    padding:15px 0;color:#C5D6E8;background:none;border:0;cursor:pointer;
    font:600 15px Archivo,sans-serif;
  }
  .navtoggle .bars{display:inline-flex;flex-direction:column;gap:4px}
  .navtoggle .bars i{display:block;width:22px;height:2px;background:currentColor}
  .mainnav .navlist{display:none;flex-direction:column;gap:0;padding-bottom:14px}
  .mainnav .navlist[data-open="true"]{display:flex}
  .mainnav .navlist > a,
  .mainnav .navlist .has-drop > button{
    width:100%;justify-content:space-between;padding:13px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
  }
  .mainnav .spacer{display:none}
  .has-drop{display:block;position:static}
  .has-drop > button{width:100%}
  .drop{
    position:static;display:none;box-shadow:none;border:0;background:transparent;
    padding:2px 0 8px 14px;min-width:0;
  }
  .has-drop:hover > .drop,
  .has-drop:focus-within > .drop{display:none}
  .drop[data-open="true"]{display:flex}
  .mainnav .drop a{color:#9FB6CC;padding:10px 0;border-radius:0}
  .mainnav .drop a:hover{background:transparent;color:#fff}
  .mainnav .navlist a.navcta{
    margin:14px 0 0;justify-content:center;padding:14px;border-bottom:0;
  }
}

/* service-page media */
.svcshot{margin:0 0 6px}
.svcshot img{width:100%;height:auto;display:block;border-radius:4px;background:var(--tint)}
.svcshot figcaption{font:400 14px/1.5 "Source Serif 4",serif;color:var(--slate);margin-top:9px}
.slist.compact a{padding:15px 20px 16px 0}
.slist.compact a h3{margin:0}
.crumbs{background:var(--tint);border-bottom:1px solid var(--rule);font:400 14px "Source Serif 4",serif}
.crumbs .wrap{padding-top:11px;padding-bottom:11px;color:var(--slate)}
.crumbs a{color:var(--slate)}
.crumbs span{color:#8A99AA;margin:0 2px}
.legalpage h1{font-size:clamp(28px,3.4vw,38px);letter-spacing:-.025em;margin:0 0 8px}
.legalpage .updated,.legalpage .muted-note{color:var(--slate);font-size:15px;margin:0 0 26px}

/* call card (shown when the form is off) */
.callcard .bigcall{
  display:block;text-align:center;background:var(--red);color:#fff;text-decoration:none;
  padding:17px 12px;border-radius:3px;font:700 27px Archivo,sans-serif;letter-spacing:-.01em;margin-bottom:16px;
}
.callcard .bigcall:hover{background:var(--red-dark)}
.callcard .ready{margin:0 0 8px;font:500 13px Archivo,sans-serif;color:var(--slate)}
.callcard .readylist{list-style:none;margin:0;padding:0}
.callcard .readylist li{
  position:relative;padding:0 0 0 18px;margin-bottom:7px;
  font:400 15px/1.5 "Source Serif 4",serif;color:#28394B;
}
.callcard .readylist li::before{
  content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;
  border:2px solid var(--red);border-radius:50%;
}
.callcard .readylist li:last-child{margin-bottom:0}

/* long-form guide extras */
.infographic{margin:30px 0;padding:0;max-width:none}
.infographic svg{display:block;width:100%;height:auto;
  border:1px solid var(--rule);border-radius:4px;background:#fff;padding:18px 16px}
.infographic figcaption{font:400 14px/1.5 "Source Serif 4",serif;color:var(--slate);margin-top:9px}
.prose ul{margin:0 0 18px;padding-left:22px;max-width:var(--measure)}
.prose li{margin-bottom:9px}
.prose a[target="_blank"]{text-decoration:underline;text-underline-offset:2px}
@media(max-width:700px){
  .infographic svg{padding:12px 10px}
}

/* ══════════════ guide / article template ══════════════ */
.guidehead{background:var(--tint);border-bottom:1px solid var(--rule);padding:34px 0 30px}
.guidehead .wrap{max-width:768px}
.guidecrumb{font:500 14px Archivo,sans-serif;color:var(--slate);margin:0 0 16px}
.guidecrumb a{color:var(--slate);text-decoration:none}
.guidecrumb a:hover{color:var(--blue);text-decoration:underline}
.guidecrumb span{color:#8A99AA;margin:0 6px}
.guidehead h1{
  font-size:clamp(30px,4.1vw,44px);line-height:1.12;letter-spacing:-.03em;
  font-weight:700;margin:0 0 16px;max-width:19ch;color:var(--navy);
}
.guidehead .standfirst{
  font:400 20px/1.6 "Source Serif 4",Georgia,serif;color:#24374A;margin:0 0 20px;max-width:58ch;
}
.guidemeta{
  display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;
  font:500 14px Archivo,sans-serif;color:var(--slate);
  border-top:1px solid var(--rule);padding-top:16px;
}
.guidemeta .dot{color:#A8B6C4}

.guidehero{margin:0}
.guidehero .wrap{max-width:1000px;padding-top:28px}
.guidehero img{width:100%;height:auto;display:block;border-radius:4px;background:var(--tint)}
.guidehero figcaption{font:400 14px/1.5 "Source Serif 4",serif;color:var(--slate);margin-top:10px}

.guidebody{padding:34px 0 10px}
.guidebody .wrap{max-width:768px}

/* table of contents */
.toc{
  border:1px solid var(--rule);border-radius:4px;background:#fff;
  padding:20px 22px;margin:0 0 34px;max-width:var(--measure);
}
.toc h2{font:700 15px Archivo,sans-serif;margin:0 0 12px;letter-spacing:0;color:var(--navy)}
.toc ol{margin:0;padding-left:20px}
.toc li{margin-bottom:7px;font:400 16.5px/1.5 "Source Serif 4",serif}
.toc a{color:#1B3549;text-decoration:none;border-bottom:1px solid var(--rule)}
.toc a:hover{color:var(--blue);border-bottom-color:var(--blue)}

/* quieter inline CTA for reading pages */
.guidecta{
  border:1px solid var(--rule);border-left:4px solid var(--red);border-radius:0 4px 4px 0;
  background:var(--tint);padding:22px 24px;margin:34px 0;max-width:var(--measure);
}
.guidecta strong{display:block;font:700 19px Archivo,sans-serif;color:var(--navy);margin-bottom:6px}
.guidecta p{margin:0 0 14px;font-size:17px}
.guidecta a{
  display:inline-block;background:var(--red);color:#fff;text-decoration:none;
  padding:12px 24px;border-radius:3px;font:700 19px Archivo,sans-serif;
}
.guidecta a:hover{background:var(--red-dark)}

/* key-takeaway callout */
.keytake{
  border:1px solid #CFE0F3;background:var(--blue-pale);border-radius:4px;
  padding:20px 22px;margin:30px 0;max-width:var(--measure);
}
.keytake strong{display:block;font:700 15px Archivo,sans-serif;color:var(--navy);margin-bottom:8px}
.keytake p{margin:0;font-size:17px}

/* section anchors */
.guidebody h2{scroll-margin-top:20px}

@media(max-width:700px){
  .guidehead{padding:24px 0 22px}
  .toc,.guidecta,.keytake{padding:16px 18px}
}

/* ── guides hub ─────────────────────────────────────────────── */
.guidegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:26px;padding:34px 0 8px}
.gcard{display:block;text-decoration:none;color:inherit;border:1px solid var(--rule);border-radius:4px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.gcard:hover{border-color:#B9C9D8;box-shadow:0 6px 22px rgba(12,31,53,.09)}
.gcard img{display:block;width:100%;height:190px;object-fit:cover}
.gcard-t{padding:18px 20px 20px}
.gcard-t h2{margin:0 0 8px;font:600 19px/1.32 "Archivo",system-ui,sans-serif;color:var(--navy);letter-spacing:-.01em}
.gcard-t p{margin:0 0 12px;font:400 15px/1.58 "Source Serif 4",Georgia,serif;color:var(--slate)}
.gcard-go{font:600 13px/1 "Archivo",system-ui,sans-serif;color:var(--blue);letter-spacing:.01em}
.gcard:hover .gcard-go{text-decoration:underline}
.drop a.dropall{border-top:1px solid var(--rule);font-weight:600;color:var(--blue)}

/* ── tables and source notes inside guide prose ─────────────── */
.prose table{width:100%;border-collapse:collapse;margin:24px 0;font:400 15px/1.5 "Archivo",system-ui,sans-serif}
.prose thead th{text-align:left;background:var(--tint);color:var(--navy);font-weight:600;font-size:13.5px;letter-spacing:.02em;text-transform:uppercase;padding:11px 14px;border-bottom:2px solid var(--rule)}
.prose tbody td{padding:12px 14px;border-bottom:1px solid var(--rule);color:var(--slate);vertical-align:top}
.prose tbody td strong{color:var(--navy)}
.prose tbody tr:last-child td{border-bottom:none}
.prose .srcnote{margin-top:30px;padding-top:18px;border-top:1px solid var(--rule);font:400 14px/1.7 "Archivo",system-ui,sans-serif;color:var(--slate)}
.prose .srcnote strong{color:var(--navy)}
@media(max-width:560px){
  .prose table{font-size:14px}
  .prose thead th,.prose tbody td{padding:9px 10px}
  .gcard img{height:165px}
}

/* ── nav fits at laptop widths: the header already carries the number ── */
@media(min-width:1001px) and (max-width:1219px){
  .mainnav .navlist a.navcta{display:none}
  .mainnav .navlist span.spacer{flex:1 1 auto}
}
/* ── the guides hub runs wider than an article column ── */
.hubbody .wrap{max-width:1120px}

/* first column of a comparison table should not wrap to two lines */
.prose tbody th,.prose tbody td:first-child{white-space:nowrap;font-weight:600;color:var(--navy)}
@media(max-width:560px){.prose tbody td:first-child{white-space:normal}}
