/* Cardel Homes — First-Time Homebuyer Hub prototype
   Tokens follow the Cardel design system (Roboto / Roboto Slab, corporate red, navy, teal). */
:root{
  --c-red:#b2292d; --c-red-deep:#9d2f08; --c-navy:#021f3c; --c-teal:#3e97b5; --c-teal-deep:#0d5257;
  --c-olive:#778b5d; --c-orange:#e37e39; --c-ink:#222; --c-text:#535252; --c-muted:#707070;
  --c-line:#e0e0e0; --c-icy:#f1f7f9; --c-cream:#feffe6; --c-bg:#fff; --c-soft:#fafafa;
  --c-confirm:#b2292d; --c-confirm-bg:#fdf1f1; --c-note-bg:#f1f7f9; --c-tip-bg:#f4f7ee; --c-olive-text:#5f7146; --c-input-border:#767676; --c-line-strong:#d6e3e8;
  --f-body:"Roboto",system-ui,-apple-system,"Segoe UI",sans-serif; --f-display:"Roboto Slab",Georgia,serif;
  --s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;
  --r:4px;--r-lg:8px;--shadow:0 1px 3px rgba(2,31,60,.08),0 6px 18px rgba(2,31,60,.06);
  --t-fast:160ms;--t-med:260ms;--ease-out:cubic-bezier(.2,.8,.2,1);
  --measure:70ch;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:0ms!important;animation-duration:0ms!important}}
body{margin:0;background:var(--c-bg);color:var(--c-text);font-family:var(--f-body);font-size:17px;line-height:1.6}
a{color:var(--c-teal-deep);text-underline-offset:3px}
a:hover{color:var(--c-red)}
:focus-visible{outline:3px solid var(--c-teal);outline-offset:2px;border-radius:var(--r)}
button{font:inherit;cursor:pointer}
img{max-width:100%;height:auto}
h1,h2,h3,h4{margin:0;line-height:1.2;color:var(--c-ink)}
h1{font-family:var(--f-body);font-weight:600;font-size:34px;color:var(--c-navy)}
h2{font-family:var(--f-body);font-weight:500;font-size:26px;color:var(--c-teal);text-transform:uppercase;letter-spacing:.02em}
h3{font-family:var(--f-display);font-weight:500;font-size:21px;color:var(--c-navy)}
h4{font-family:var(--f-body);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--c-muted)}
p{margin:0 0 var(--s-4)}
ul,ol{margin:0 0 var(--s-4);padding-left:22px}
li{margin-bottom:6px}
table{border-collapse:collapse;width:100%;font-size:15.5px;margin:0 0 var(--s-5)}
th,td{padding:10px 12px;border-bottom:1px solid var(--c-line);text-align:left;vertical-align:top}
th{background:var(--c-icy);color:var(--c-navy);font-weight:500}
.tbl-wrap{overflow-x:auto;margin:0 0 var(--s-5)}
.wrap{max-width:1180px;margin:0 auto;padding:0 var(--s-5)}
.measure{max-width:var(--measure)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.skip{position:absolute;left:-999px;top:8px;background:var(--c-navy);color:#fff;padding:10px 14px;border-radius:var(--r);z-index:100}
.skip:focus{left:8px}

/* proto banner */
.proto{background:var(--c-cream);border-bottom:1px solid #e6e2b8;font-size:13px;color:#5b5b2b;padding:6px 0}
.proto .wrap{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-4);align-items:center;justify-content:space-between}
.proto a{color:#5b5b2b;display:inline-flex;align-items:center;min-height:44px;padding:0 4px}

/* top bar */
.topbar{background:var(--c-navy);color:#fff}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);min-height:64px}
.brand{font-family:var(--f-display);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:15px;color:#fff;text-decoration:none;white-space:nowrap}
.brand small{display:block;font-family:var(--f-body);font-weight:400;letter-spacing:.02em;text-transform:none;font-size:12px;opacity:.8}
.regions{display:flex;gap:var(--s-1);align-items:center;flex-wrap:wrap;justify-content:flex-end}
.regions span{font-size:12px;opacity:.75;margin-right:6px;text-transform:uppercase;letter-spacing:.08em}
.regions a{color:#fff;text-decoration:none;font-size:14px;padding:10px 12px;min-height:44px;display:inline-flex;align-items:center;border-radius:var(--r);border:1px solid transparent;transition:background var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}
.regions a:hover{background:rgba(255,255,255,.08)}
.regions a[aria-current="true"]{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.1)}
.regions a:active{background:rgba(255,255,255,.16)}

/* hub subnav (sticky) */
.subnav{background:var(--c-icy);border-bottom:1px solid #d6e3e8;position:sticky;top:0;z-index:20}
.subnav .wrap{display:flex;flex-wrap:wrap;gap:0 2px;padding-top:2px;padding-bottom:2px}
.subnav a{color:var(--c-navy);text-decoration:none;font-size:14px;letter-spacing:.04em;text-transform:uppercase;padding:12px 12px;min-height:46px;display:inline-flex;align-items:center;white-space:nowrap;border-bottom:3px solid transparent;transition:color var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}
.subnav a:hover{color:var(--c-red)}
.subnav a[aria-current="page"]{color:var(--c-red);border-bottom-color:var(--c-red)}
.subnav a:active{color:var(--c-red-deep)}
/* all section links are always visible: the menu wraps onto extra rows on narrow screens (preliminary-review requirement);
   below 900px it is no longer sticky so a tall wrapped menu does not eat the viewport */
@media (max-width:900px){.subnav{position:static}.aside{position:static}}

/* hero */
.hero{display:flex;flex-wrap:wrap;min-height:360px}
.hero .side{flex:0 0 440px;background:var(--c-teal-deep);color:#fff;padding:var(--s-7) var(--s-6);display:flex;flex-direction:column;justify-content:center}
.hero .side .kicker{font-family:var(--f-display);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:12px;opacity:.9;margin-bottom:var(--s-3)}
.hero .side h1{color:#fff;font-size:32px}
.hero .side p{color:rgba(255,255,255,.9);margin-top:var(--s-3);font-size:17px}
.hero .side .cta{margin-top:var(--s-5);display:flex;flex-wrap:wrap;gap:var(--s-3)}
.hero .img{flex:1 1 400px;min-height:280px;background:var(--c-icy);outline:2px dashed var(--c-line-strong);outline-offset:-12px;position:relative;display:flex;align-items:center;justify-content:center;color:var(--c-muted);font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.hero.article .side{background:var(--c-navy)}
.hero.article .img{background:var(--c-soft)}
@media (max-width:820px){.hero .side{flex-basis:100%;padding:var(--s-6) var(--s-5)}.hero .img{min-height:180px}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;border-radius:5px;font-weight:500;font-size:14px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:2px solid transparent;transition:background var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}
.btn-primary{background:var(--c-red);color:#fff;border-color:var(--c-red)}
.btn-primary:hover{background:var(--c-red-deep);border-color:var(--c-red-deep);color:#fff}
.btn-primary:active{background:#7f2306}
.btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.btn-outline:hover{background:rgba(255,255,255,.12);color:#fff}
.btn-teal{background:var(--c-cream);color:var(--c-teal-deep);border-color:var(--c-teal)}
.btn-teal:hover{background:#f6f8d9;color:var(--c-teal-deep)}
.btn:disabled{opacity:.5;cursor:not-allowed}

/* layout */
.main{padding:var(--s-7) 0 var(--s-8)}
.article{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--s-7)}
@media (max-width:980px){.article{grid-template-columns:1fr}}
.content h2{margin:var(--s-7) 0 var(--s-4)}
.content h2:first-child{margin-top:0}
.content h3{margin:var(--s-5) 0 var(--s-3)}
.content .lede{font-size:19px;color:#444}
.content .figure{font-family:var(--f-display);font-weight:700;color:var(--c-navy)}
.aside{position:sticky;top:112px;align-self:start;display:grid;gap:var(--s-4)}
.card{background:var(--c-soft);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--s-4) var(--s-5)}
.card h4{margin-bottom:var(--s-3);color:var(--c-navy)}
.card ul{padding-left:18px;margin:0}
.card li{margin-bottom:8px;font-size:15px}
.card a{text-decoration:none;display:inline-flex;align-items:center;min-height:44px;padding:2px 0}
.card li{margin-bottom:0}
.card a:hover{text-decoration:underline}
.toc a{color:var(--c-navy)}
.on-this-page{font-size:14px}

/* callouts */
.callout{border-left:4px solid var(--c-teal);background:var(--c-note-bg);border-radius:var(--r);padding:var(--s-4) var(--s-5);margin:var(--s-5) 0}
.callout .h{display:block;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-teal-deep);margin-bottom:6px}
.callout p:last-child,.callout ul:last-child{margin-bottom:0}
.callout.tip{border-left-color:var(--c-olive);background:var(--c-tip-bg)}
.callout.tip .h{color:var(--c-olive-text)}
.callout.confirm{border-left-color:var(--c-confirm);background:var(--c-confirm-bg)}
.callout.confirm .h{color:var(--c-confirm)}
.tc{color:var(--c-confirm);font-weight:500;background:var(--c-confirm-bg);padding:0 4px;border-radius:2px}
.src{font-size:13px;color:var(--c-muted)}
.src a{color:var(--c-muted)}

/* calculator */
.calc{background:var(--c-white,#fff);border:1px solid var(--c-line);border-top:5px solid var(--c-teal);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:var(--s-5);margin:var(--s-6) 0}
.calc h3{margin-bottom:6px}
.calc .sub{font-size:14px;color:var(--c-muted);margin-bottom:var(--s-4)}
.calc .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s-4)}
.calc label{display:block;font-size:13px;font-weight:500;color:var(--c-navy);margin-bottom:4px}
.calc input,.calc select{width:100%;min-height:44px;font:inherit;font-size:16px;padding:8px 10px;border:1px solid var(--c-input-border);border-radius:var(--r);background:#fff;color:var(--c-ink)}
.calc input:focus,.calc select:focus{border-color:var(--c-teal);outline:3px solid rgba(62,151,181,.25)}
.calc .out{margin-top:var(--s-5);display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--s-3)}
.calc .kpi{background:var(--c-icy);border-radius:var(--r);padding:var(--s-3) var(--s-4)}
.calc .kpi .l{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--c-muted)}
.calc .kpi .v{font-family:var(--f-display);font-weight:700;font-size:24px;color:var(--c-navy);line-height:1.2}
.calc .kpi.hl{background:var(--c-cream)}
.calc .kpi.hl .v{color:var(--c-red)}
.calc .fine{font-size:12.5px;color:var(--c-muted);margin-top:var(--s-4)}
.calc table{font-size:14px;margin-top:var(--s-4)}
.calc .barlabel{font-size:12px;color:var(--c-muted);margin-top:16px}
.calc .bar{height:10px;background:#e6edf1;border-radius:999px;overflow:hidden;margin-top:6px}
.calc .bar i{display:block;height:100%;width:100%;background:var(--c-teal);transform:scaleX(0);transform-origin:left center;transition:transform var(--t-med) var(--ease-out)}

/* hub */
.spine{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--s-4)}
.step{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--s-5);position:relative;text-decoration:none;color:inherit;display:block;transition:border-color var(--t-fast) var(--ease-out),transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}
.step:hover{border-color:var(--c-teal);box-shadow:var(--shadow);transform:translateY(-2px);color:inherit}
.step:active{transform:none}
.step .no{font-family:var(--f-display);font-weight:700;color:var(--c-red);font-size:12px;letter-spacing:.14em}
.step h3{margin:6px 0 8px;font-size:19px}
.step p{font-size:15px;color:var(--c-text);margin:0 0 var(--s-3)}
.step .go{font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--c-red)}
.section{padding:var(--s-7) 0}
.section.alt{background:var(--c-soft);border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line)}
.section.dark{background:var(--c-teal-deep);color:#fff}
.section.dark h2{color:#fff}
.section.dark p{color:rgba(255,255,255,.9)}
.section h2{margin-bottom:var(--s-4)}
.section .lede{font-size:18px;color:#444;max-width:820px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-6);align-items:start}
@media (max-width:820px){.two{grid-template-columns:1fr}}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--s-4)}
.tile{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--s-5);text-decoration:none;color:inherit;display:block;transition:border-color var(--t-fast) var(--ease-out),box-shadow var(--t-fast) var(--ease-out)}
.tile:hover{border-color:var(--c-teal);box-shadow:var(--shadow);color:inherit}
.tile h3{font-size:18px;margin-bottom:6px}
.tile p{font-size:15px;margin:0}
.tile .from{font-family:var(--f-display);color:var(--c-red);font-weight:700;font-size:15px;margin-top:8px;display:block}
.faq details{border-bottom:1px solid var(--c-line);padding:var(--s-3) 0}
.faq summary{cursor:pointer;font-weight:500;color:var(--c-navy);font-size:17px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--s-3);min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;color:var(--c-teal);flex:0 0 auto;transition:transform var(--t-fast) var(--ease-out)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--c-red)}
.faq summary:active{color:var(--c-red-deep)}
.faq .a{padding:var(--s-2) 0 var(--s-3);color:var(--c-text)}
.faq .a p:last-child{margin-bottom:0}
.related .cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.cta-band{background:var(--c-navy);color:#fff;border-radius:var(--r-lg);padding:var(--s-6);display:flex;flex-wrap:wrap;gap:var(--s-5);align-items:center;justify-content:space-between;margin:var(--s-7) 0 0}
.cta-band h3{color:#fff;font-size:22px}
.cta-band p{color:rgba(255,255,255,.85);margin:6px 0 0}
.cta-band .btns{display:flex;flex-wrap:wrap;gap:var(--s-3)}

/* review notes (internal) */
.review{margin-top:var(--s-7);border:1px dashed #d1a3a3;border-radius:var(--r-lg);background:#fffafa}
.review summary{cursor:pointer;padding:var(--s-3) var(--s-4);font-weight:500;color:var(--c-red);list-style:none;display:flex;gap:8px;align-items:center;min-height:44px}
.review summary::-webkit-details-marker{display:none}
.review .body{padding:0 var(--s-4) var(--s-4);font-size:14px}
.review ul{margin:0}

/* footer */
footer{background:var(--c-navy);color:rgba(255,255,255,.85);padding:var(--s-7) 0 var(--s-6);margin-top:var(--s-8);font-size:14px}
footer h4{color:#fff;margin-bottom:var(--s-3)}
footer a{color:rgba(255,255,255,.85);text-decoration:none}
footer a:hover{color:#fff;text-decoration:underline}
footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s-6)}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin-bottom:6px}
footer .legal{border-top:1px solid rgba(255,255,255,.15);margin-top:var(--s-6);padding-top:var(--s-4);font-size:12.5px;color:rgba(255,255,255,.65)}
@media (max-width:640px){body{font-size:16px}h1{font-size:28px}.hero .side h1{font-size:26px}h2{font-size:22px}.wrap{padding:0 var(--s-4)}}
@media print{.topbar,.subnav,.proto,.review,footer{display:none}.aside{display:none}.article{grid-template-columns:1fr}}


/* ---- Root page: mirrors www.cardelhomes.com/sitemap/ header (logo + breadcrumb + light page header) and footer (navy About + disclaimer + copyright) ---- */
.dir{--dir-navy:#003b5c;--dir-navy-deep:#002a42;--dir-text:#333;--dir-muted:#666;--dir-light:#f8f9fa;color:var(--dir-text);line-height:1.6;font-family:var(--f-body)}
.dir .container-lg{max-width:1140px;margin:0 auto;padding:0 20px}
.dir .directory-logo{padding:16px 0}
.dir .directory-logo svg{width:131px;height:auto;display:block}
.dir .directory-breadcrumb{font-size:.78rem;letter-spacing:.5px;text-transform:uppercase;margin-bottom:24px}
.dir .directory-breadcrumb a{color:var(--dir-navy);text-decoration:none;font-weight:500;display:inline-flex;align-items:center;min-height:44px}
.dir .directory-breadcrumb a:hover{color:var(--c-red)}
.dir .directory-breadcrumb .sep{color:var(--dir-muted);margin:0 8px}
.dir .directory-breadcrumb .current{color:var(--dir-muted)}
.dir .directory-header{text-align:center;background:var(--dir-light);border-radius:6px;padding:24px 20px;margin-bottom:24px}
.dir .directory-header h1{font-size:2.4rem;font-weight:300;color:var(--dir-navy);text-transform:none;margin-bottom:16px;font-family:var(--f-body)}
.dir .directory-intro{color:var(--dir-muted);font-weight:300;font-size:.95rem;max-width:800px;margin:0 auto 24px}
.dir .directory-stats{text-transform:uppercase;margin-bottom:16px}
.dir .directory-stats .stat-item{color:var(--dir-navy);font-weight:500;font-size:.85rem;letter-spacing:1px}
.dir .directory-stats .stat-divider{color:#ccc;margin:0 12px}
.dir .region-title-divider{border:0;border-top:2px solid var(--dir-navy);width:100%;max-width:100%;margin:0 auto}
.dir .region-filter{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:48px}
.dir .region-filter .btn-dir{text-transform:uppercase;letter-spacing:1px;font-size:.8rem;font-weight:500;padding:8px 22px;min-height:44px;border-radius:3px;text-decoration:none;display:inline-flex;align-items:center;border:1px solid #ddd;color:var(--dir-muted);background:#fff;transition:background var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}
.dir .region-filter .btn-dir:hover{border-color:var(--dir-navy);color:var(--dir-navy)}
.dir .region-filter .btn-dir.primary{background:var(--dir-navy);border-color:var(--dir-navy);color:#fff}
.dir .region-filter .btn-dir.primary:hover{background:var(--dir-navy-deep);border-color:var(--dir-navy-deep)}
.dir .region-section{margin-bottom:40px}
.dir .region-title{font-size:1.5rem;font-weight:400;color:var(--dir-navy);text-transform:none;letter-spacing:0;font-family:var(--f-body);margin-bottom:8px}
.dir .region-intro{color:var(--dir-muted);font-size:.95rem;max-width:900px;margin:12px 0 20px}
.dir .communities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.dir .community-card{background:#fff;border:1px solid #e5e5e5;border-radius:6px;padding:20px 22px;text-decoration:none;color:inherit;display:block;transition:box-shadow var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}
.dir .community-card:hover{box-shadow:var(--shadow);border-color:#cfd8dc;color:inherit}
.dir .community-card .community-name{font-size:1.1rem;font-weight:500;color:var(--dir-navy);font-family:var(--f-body);margin-bottom:2px}
.dir .community-card .community-location{color:var(--dir-muted);font-size:.85rem;margin:0 0 10px}
.dir .community-card .go{display:block;margin-top:12px;color:var(--c-red);font-size:.8rem;letter-spacing:1px;text-transform:uppercase;font-weight:500}
.dir .directory-about-wrapper{background:var(--dir-navy);padding:50px 20px;margin-top:24px}
.dir .directory-about{max-width:900px;margin:0 auto}
.dir .directory-about h2{color:#fff;font-weight:300;font-size:1.75rem;margin-bottom:20px;text-transform:none;letter-spacing:0;font-family:var(--f-body)}
.dir .directory-about p{color:rgba(255,255,255,.85);font-size:.9rem;line-height:1.8}
.dir .directory-disclaimer{padding-top:2rem;font-size:.9rem;color:var(--dir-text)}
.dir .directory-disclaimer p{margin:0 0 .5rem}
.dir .directory-copyright{text-align:left;padding:10px 0 22px;font-size:.9rem;color:var(--dir-text)}
.dir .directory-copyright p{margin:0}
.dir .proto-note{font-size:.85rem;color:var(--dir-muted);border-top:1px solid #e5e5e5;padding-top:14px;margin-top:8px}
@media (max-width:768px){.dir .directory-header h1{font-size:1.6rem}}
@media (max-width:480px){.dir .directory-header h1{font-size:1.35rem}}


/* ---- Guided path (plain-language regions) ---- */
.rt{font-weight:400;opacity:.85}
.short{background:var(--c-cream);border:1px solid #e6e2b8;border-left:5px solid var(--c-olive-text);border-radius:var(--r-lg);padding:var(--s-4) var(--s-5);margin:0 0 var(--s-5)}
.short .short-h{font-family:var(--f-body);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-olive-text);margin:0 0 var(--s-2)}
.short ul{margin:0;padding-left:20px}
.short li{font-size:17px;color:var(--c-ink);margin-bottom:6px}
.jump{display:none;font-size:14px;color:var(--c-muted);margin:0 0 var(--s-5);line-height:2}
.jump a{display:inline-block;min-height:32px;padding:0 2px}
@media (max-width:980px){.jump{display:block}}
.stepbar{border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-soft);padding:var(--s-3) var(--s-4);margin:0 0 var(--s-6)}
.stepbar.bottom{margin:var(--s-7) 0 0}
.stepbar .step-now{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-teal-deep);margin-bottom:var(--s-2)}
.stepbar .step-now em{font-style:normal;font-weight:400;letter-spacing:0;text-transform:none;color:var(--c-muted)}
.stepbar .step-links{display:flex;flex-wrap:wrap;gap:var(--s-3);justify-content:space-between}
.stepbar a{flex:1 1 220px;display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--c-navy);background:#fff;border:1px solid var(--c-line);border-radius:var(--r);padding:10px 14px;min-height:56px;transition:border-color var(--t-fast) var(--ease-out),background var(--t-fast) var(--ease-out)}
.stepbar a:hover{border-color:var(--c-teal);background:var(--c-icy);color:var(--c-navy)}
.stepbar a:active{background:#e3eef2}
.stepbar a span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--c-muted)}
.stepbar a strong{font-weight:500}
.stepbar .step-next{text-align:right;align-items:flex-end}
.stepbar .step-next strong{color:var(--c-red)}
.glossary dl{margin:0}
.glossary dt{font-weight:700;color:var(--c-navy);font-size:14px;margin-top:8px}
.glossary dd{margin:2px 0 0;font-size:14px;color:var(--c-text)}
details.more{border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-soft);padding:0 var(--s-4);margin:0 0 var(--s-4)}
details.more>summary{cursor:pointer;list-style:none;font-weight:500;color:var(--c-teal-deep);min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:var(--s-3)}
details.more>summary::-webkit-details-marker{display:none}
details.more>summary::after{content:"+";font-size:22px;color:var(--c-teal);flex:0 0 auto;transition:transform var(--t-fast) var(--ease-out)}
details.more[open]>summary::after{transform:rotate(45deg)}
details.more>summary:hover{color:var(--c-red)}
details.more>*:not(summary){padding-bottom:var(--s-3)}
.starthere{background:var(--c-icy);border-bottom:1px solid #d6e3e8}
.starthere h2{margin-bottom:var(--s-4)}
.sh-q{margin-bottom:var(--s-4)}
.sh-q h3{font-family:var(--f-body);font-weight:500;font-size:18px;color:var(--c-navy);margin-bottom:var(--s-2)}
.sh-opts{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.btn-choice{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;background:#fff;border:1px solid var(--c-line);color:var(--c-navy);text-decoration:none;font-size:15px;transition:border-color var(--t-fast) var(--ease-out),background var(--t-fast) var(--ease-out)}
.btn-choice:hover{border-color:var(--c-teal);background:var(--c-cream);color:var(--c-navy)}
.btn-choice:active{background:#f6f8d9}
