:root{
  --ink:#13251D;
  --oak-deep:#122A22;
  --brass:#A8852E;
  --brass-bright:#C09A3E;
  --paper:#F7F5EE;
  --paper-warm:#EFECE1;
  --stone:#5A6A60;
  --line:rgba(19,37,29,.14);
  --line-brass:rgba(168,133,46,.45);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Figtree',sans-serif;font-size:18px;line-height:1.7;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
/* THE SERIF IS FOR h1 AND h2 ONLY. Changed 2026-08-19 (owner: "please have
   one font"). h3 was in this rule, so every subheading inside an article
   rendered in Marcellus while the labels and body around it were Figtree,
   which read as two designs stacked rather than one. Individual pages had
   started overriding it one at a time; this is the single place it belongs. */
h1,h2,.serif{font-family:'Marcellus',serif;font-weight:400;line-height:1.2}
h3{font-family:'Figtree',sans-serif;font-weight:600;font-size:19px;line-height:1.35;color:var(--ink)}
a{color:inherit}
.wrap{max-width:720px;margin:0 auto;padding:0 24px}
.eyebrow{font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--brass);font-weight:600;display:block;margin-bottom:18px}

header.site{border-bottom:1px solid var(--line);background:var(--paper)}
header.site .wrap{max-width:1080px;display:flex;align-items:center;justify-content:space-between;height:78px}
.mark{font-family:'Marcellus',serif;font-size:20px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.mark span{color:var(--brass)}
.head-cta{font-size:15px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--line-brass);padding-bottom:2px}
.head-cta:hover{color:var(--brass)}

.crumb{font-size:13px;letter-spacing:.04em;color:var(--stone);margin:40px 0 0}
.crumb a{color:var(--stone);text-decoration:none}
.crumb a:hover{color:var(--brass)}

article{padding:8px 0 64px}
article h1{font-size:clamp(32px,5vw,46px);margin:18px 0 20px;letter-spacing:.005em}
.lede{font-size:21px;color:var(--stone);margin-bottom:40px;line-height:1.6}
article h2{font-size:clamp(24px,3vw,30px);margin:44px 0 14px}
article p{margin-bottom:20px}
article p strong{font-weight:600}
article ul{margin:0 0 24px 0;list-style:none;counter-reset:aeitem}
article li{position:relative;padding:8px 0 8px 34px;border-bottom:1px solid var(--line);counter-increment:aeitem}
article li::before{content:counter(aeitem) ".";position:absolute;left:2px;top:8px;font-family:'Figtree',sans-serif;font-size:15px;font-weight:600;color:var(--brass);line-height:1.65}
article a.inline{color:var(--oak-deep);text-decoration:underline;text-decoration-color:var(--line-brass);text-underline-offset:3px}
article a.inline:hover{text-decoration-color:var(--brass)}

.callout{background:var(--paper-warm);border:1px solid var(--line);border-radius:0;padding:24px 28px;margin:32px 0}
.callout .lbl{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);font-weight:600;display:block;margin-bottom:8px}
.callout p{margin:0;font-size:17px}

.bestbox{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);margin:32px 0}
.bestbox div{padding:22px 24px}
.bestbox div:first-child{border-right:1px solid var(--line)}
.bestbox .lbl{font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;display:block;margin-bottom:10px}
.bestbox .yes .lbl{color:#0F6E56}
.bestbox .no .lbl{color:#993C1D}
.bestbox p{margin:0;font-size:16px;color:var(--stone)}
@media(max-width:560px){.bestbox{grid-template-columns:1fr}.bestbox div:first-child{border-right:none;border-bottom:1px solid var(--line)}}

.faq-block{margin:48px 0 0;padding-top:36px;border-top:1px solid var(--line)}
.faq-block .eyebrow{margin-bottom:20px}
.faq-item{padding:18px 0;border-bottom:1px solid var(--line)}
.faq-item:last-child{border-bottom:none}
.faq-item h3{font-size:18px;margin-bottom:6px;font-family:'Figtree',sans-serif;font-weight:600;color:var(--ink)}
.faq-item p{margin:0;font-size:16px;color:var(--stone)}

.related{margin:48px 0 0;padding-top:36px;border-top:1px solid var(--line)}
.related .eyebrow{margin-bottom:20px}
.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:560px){.related-grid{grid-template-columns:1fr}}
.related a{display:block;text-decoration:none;color:inherit;border:1px solid var(--line);padding:22px 22px;transition:transform .3s ease,box-shadow .3s ease;background:#FFFEFA}
.related a:hover{transform:translateY(-4px);box-shadow:0 12px 26px -18px rgba(19,37,29,.35)}
.related h3{font-size:19px;margin-bottom:6px}
.related span{font-size:14.5px;color:var(--stone)}

.cta{background:var(--oak-deep);color:var(--paper);margin-top:56px;padding:56px 0;position:relative}
.cta .wrap{position:relative}
.cta .eyebrow{color:var(--brass-bright)}
.cta h2{font-size:clamp(26px,3.4vw,34px);margin-bottom:14px;color:var(--paper)}
.cta p{color:rgba(247,245,238,.8);font-size:18px;margin-bottom:28px;max-width:52ch}
.btn{display:inline-block;background:var(--brass);color:#fff;font-family:'Figtree',sans-serif;font-size:17px;font-weight:600;letter-spacing:.02em;padding:16px 34px;border:1px solid var(--brass);border-radius:2px;text-decoration:none;transition:background .25s,color .25s,letter-spacing .3s;cursor:pointer}
.btn:hover{background:var(--paper);color:var(--oak-deep);border-color:var(--paper);letter-spacing:.045em}

form.capture{margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:640px}
form.capture input{grid-column:span 1;background:rgba(247,245,238,.07);border:1px solid rgba(247,245,238,.3);color:var(--paper);font-family:'Figtree',sans-serif;font-size:17px;padding:16px 18px;border-radius:2px}
form.capture input::placeholder{color:rgba(247,245,238,.55)}
form.capture input:focus-visible{outline:2px solid var(--brass-bright);outline-offset:1px}
form.capture .full{grid-column:1/-1}
form.capture button{grid-column:1/-1}
form.capture select{width:100%;background:rgba(247,245,238,.07);border:1px solid rgba(247,245,238,.3);color:var(--paper);font-family:'Figtree',sans-serif;font-size:17px;padding:16px 18px;border-radius:2px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23C09A3E' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center}
form.capture select:focus-visible{outline:2px solid var(--brass-bright);outline-offset:1px}
form.capture select option{color:var(--ink);background:var(--paper)}
.phone-err{display:block;grid-column:1/-1;font-size:14px;color:#E24B4A;margin-top:-6px}
.phone-err[hidden]{display:none}
.addr-err{display:block;grid-column:1/-1;font-size:14px;color:#E24B4A;margin-top:-6px}
.addr-err[hidden]{display:none}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.fstep{display:grid;grid-template-columns:1fr 1fr;gap:14px;grid-column:1/-1}
.fstep[hidden]{display:none}
.flabel{display:block;font-size:14px;color:rgba(247,245,238,.7);letter-spacing:.02em}
.flabel input,.flabel select{margin-top:8px;width:100%}
.fprog{grid-column:1/-1;height:2px;background:rgba(247,245,238,.15);border-radius:1px;overflow:hidden}
.fprog i{display:block;height:100%;background:var(--brass-bright);width:8%;transition:width .9s ease}
.fdone-list{grid-column:1/-1;margin:0;padding-left:22px;display:grid;gap:12px;font-size:17px;color:rgba(247,245,238,.85)}
.fdone-list li{line-height:1.6}
.fdone-list strong{color:var(--brass-bright);font-weight:600}
.steplbl{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-bright);font-weight:600}
.s0hint{grid-column:1/-1;font-size:13.5px;color:rgba(247,245,238,.6);margin-top:-4px}
.fdone-resources{grid-column:1/-1;margin-top:6px;padding-top:22px;border-top:1px solid rgba(247,245,238,.15)}
.fdone-res-lbl{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-bright);font-weight:600;margin-bottom:14px}
.fdone-res-links{display:grid;gap:10px}
.fdone-res-link{display:block;color:rgba(247,245,238,.88);text-decoration:none;font-size:15.5px;padding:14px 16px;border:1px solid rgba(247,245,238,.18);border-radius:2px}
.fdone-res-link .arrow{color:var(--brass-bright);margin-left:4px}
.fdone-h{font-family:'Marcellus',serif;font-size:28px;grid-column:1/-1;margin:0}
.fdone-p{grid-column:1/-1;font-size:17px;color:rgba(247,245,238,.8);margin:0}
.fdone-p a{color:var(--brass-bright)}
.btn-back{background:transparent;border:1px solid rgba(255,255,255,.3);color:rgba(255,255,255,.6);font-family:'Figtree',sans-serif;font-size:15px;font-weight:500;padding:12px 24px;border-radius:2px;cursor:pointer;transition:border-color .25s,color .25s;margin-top:4px}
.btn-back:hover{border-color:rgba(255,255,255,.6);color:#fff}
.sms-consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;color:rgba(247,245,238,.65)}
.sms-consent input{width:auto;margin-top:3px;flex-shrink:0;accent-color:var(--brass-bright)}
.assure{display:block;margin-top:14px;font-size:14px;color:rgba(247,245,238,.6)}
@media(max-width:560px){.fstep{grid-template-columns:1fr}form.capture{grid-template-columns:1fr}form.capture input{grid-column:1/-1}}

footer.site{background:var(--ink);color:rgba(247,245,238,.55);font-size:14px;padding:36px 0}
footer.site .wrap{max-width:1080px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
footer.site a{color:rgba(247,245,238,.7);text-decoration:none}
footer.site a:hover{color:var(--paper)}
footer.site .mark{font-size:16px;color:var(--paper)}

.hub-list{margin:8px 0 0}
.hub-item{display:block;text-decoration:none;color:inherit;border-top:1px solid var(--line);padding:32px 0;transition:padding-left .3s ease}
.hub-item:last-child{border-bottom:1px solid var(--line)}
.hub-item:hover{padding-left:12px}
.hub-item .tag{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);font-weight:600}
.hub-item h2{font-size:26px;margin:8px 0 8px}
.hub-item p{color:var(--stone);font-size:17px;margin:0;max-width:60ch}
.hub-item .more{display:inline-block;margin-top:14px;font-size:14.5px;font-weight:600;color:var(--oak-deep)}

.expired-cta{background:var(--oak-deep);margin:48px 0;padding:44px 40px;position:relative;text-align:center}
.expired-cta::after{content:"";position:absolute;inset:10px;border:1px solid rgba(192,154,62,.28);pointer-events:none}
.expired-cta .wrap-inner{position:relative;max-width:46ch;margin:0 auto}
.expired-cta .lbl{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-bright);font-weight:600;display:block;margin-bottom:14px}
.expired-cta h3{font-family:'Marcellus',serif;font-size:clamp(24px,3vw,29px);color:var(--paper);margin-bottom:14px;line-height:1.3}
.expired-cta p{color:rgba(247,245,238,.72);font-size:16px;margin-bottom:26px}
.expired-cta .btn{background:var(--brass);border-color:var(--brass)}
.expired-cta .btn:hover{background:var(--paper);color:var(--oak-deep);border-color:var(--paper)}

.expired-banner{position:fixed;bottom:0;left:0;right:0;z-index:9998;background:var(--oak-deep);border-top:2px solid var(--brass);transform:translateY(100%);transition:transform .5s cubic-bezier(.2,.8,.2,1);box-shadow:0 -12px 30px -10px rgba(0,0,0,.35)}
.expired-banner.show{transform:translateY(0)}
.expired-banner-inner{max-width:1080px;margin:0 auto;display:flex;align-items:center;gap:24px;padding:18px 24px}
.expired-banner .eb-lbl{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-bright);font-weight:600;display:block;margin-bottom:4px}
.expired-banner h4{font-family:'Marcellus',serif;font-size:18px;color:var(--paper);margin:0 0 4px;line-height:1.25}
.expired-banner p{color:rgba(247,245,238,.72);font-size:14px;margin:0}
.expired-banner .eb-text{flex:1;min-width:0}
.expired-banner .btn{flex-shrink:0;padding:13px 24px;font-size:15px;white-space:nowrap}
.expired-banner .eb-close{position:absolute;top:8px;right:10px;background:none;border:none;color:rgba(247,245,238,.5);font-size:20px;line-height:1;cursor:pointer;padding:4px 8px}
.expired-banner .eb-close:hover{color:var(--paper)}
@media(max-width:680px){
  .expired-banner-inner{flex-direction:column;align-items:stretch;gap:14px;padding:20px 24px 18px}
  .expired-banner .btn{width:100%;text-align:center}
}

.cc-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--oak-deep);border-top:1px solid var(--line-brass);padding:18px 24px;transform:translateY(100%);transition:transform .4s ease;font-size:15px;color:rgba(247,245,238,.85)}
.cc-banner.show{transform:translateY(0)}
.cc-inner{max-width:1080px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cc-text{flex:1;min-width:280px;line-height:1.5}
.cc-text a{color:var(--brass-bright);text-decoration:none;border-bottom:1px solid var(--line-brass)}
.cc-btns{display:flex;gap:10px;flex-shrink:0}
.cc-btn{font-family:'Figtree',sans-serif;font-size:14px;font-weight:600;padding:10px 22px;border-radius:2px;cursor:pointer;border:none;letter-spacing:.01em}
.cc-accept{background:var(--brass);color:#fff}
.cc-accept:hover{background:var(--brass-bright)}
.cc-decline{background:transparent;color:rgba(247,245,238,.6);border:1px solid rgba(247,245,238,.25)}
.cc-decline:hover{color:var(--paper);border-color:rgba(247,245,238,.5)}
@media(max-width:680px){
  .cc-inner{flex-direction:column;text-align:center}
  .cc-btns{width:100%}
  .cc-btn{flex:1}
}

/* The last-updated line. Two separate agents flagged that this class had no rule
   at all, so it rendered at full body size in full ink and read as the article's
   first paragraph. One font, one colour, same as every other piece of supporting
   text on a page. */
.updated,.stat-updated{font-family:'Figtree',sans-serif;font-size:15px;line-height:1.6;color:var(--stone);margin:0 0 26px}

/* READABILITY, 2026-08-19. Owner: "I don't want these grayed out because it
   makes them hard to read, and our target audience is a little older." The
   muted supporting text inside cards and option blocks now carries the same
   ink as body copy. Only the small uppercase eyebrow labels stay brass. */
.callout p,.bestbox p,.faq-item p,.related span{color:var(--ink)}
.opt-row p,.opt p,.group p,.stat-src{color:var(--ink)}
.lbl{color:var(--ink)}
.eyebrow,.ae-tools-lbl,.stat-table caption{color:var(--brass)}

/* ---------------------------------------------------------------------------
   AUTHOR BYLINE. Added 2026-08-19.
   Google's 2026 generative-AI guidance rewards a "unique expert or experienced
   take" over commodity content, and its quality systems weigh who produced a
   page. Every article now names a licensed principal agent and links their
   profile, and the same person is the Person author in the Article JSON-LD.
   The structured data and the visible byline must always say the same thing:
   Google states flatly that structured data has to match visible content.
   One font, full contrast. The audience is older, so nothing here is greyed
   down past var(--stone).
   -------------------------------------------------------------------------- */
.byline{font-family:'Figtree',sans-serif;font-size:15px;line-height:1.6;color:var(--stone);margin:0 0 26px}
.byline a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.byline a:hover{color:var(--brass)}
/* The updated line and the byline are one unit, so close the gap between them
   without disturbing pages that carry an updated line on its own. */
.updated:has(+ .byline){margin-bottom:5px}
