/* AutoAssures.com theme (loads after Bootstrap 5.3). Brand red #BE1E2D and black from the AutoAssures logo. */
@font-face{font-family:"Plus Jakarta Sans";src:url("../fonts/plus-jakarta-sans.woff2") format("woff2");font-weight:500 800;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("../fonts/source-sans-3.woff2") format("woff2");font-weight:300 800;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("../fonts/source-sans-3-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}

:root{
  --brand:#be1e2d; --brand-dark:#96161f; --brand-tint:#fcebed; --brand-soft:#f7d5d9;
  --ink:#15181d; --ink-2:#3b424d; --muted:#666e79; --line:#e2e5e9;
  --bg:#ffffff; --bg-alt:#f4f5f7; --bg-dark:#121418; --dark-2:#1b1f25; --on-dark:#c9ced6;
  --ok:#1f7a4d; --warn:#9a5b00;
  --display:"Plus Jakarta Sans","Segoe UI",Helvetica,Arial,sans-serif;
  --body:"Source Sans 3","Segoe UI",Helvetica,Arial,sans-serif;
  --r:14px; --r-sm:10px; --shadow:0 18px 40px -24px rgba(21,24,29,.35);
  --bs-body-font-family:var(--body); --bs-body-font-size:1.0625rem; --bs-body-line-height:1.65; --bs-body-color:var(--ink);
  --bs-link-color:var(--brand); --bs-link-color-rgb:190,30,45; --bs-link-hover-color:var(--brand-dark); --bs-link-hover-color-rgb:150,22,31;
  --bs-border-color:var(--line);
}
body{background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5{font-family:var(--display);font-weight:700;color:var(--ink);letter-spacing:-.01em;line-height:1.2;text-wrap:balance}
h1{font-size:clamp(2rem,4.2vw,3rem);font-weight:800}
h2{font-size:clamp(1.55rem,2.6vw,2.1rem)}
h3{font-size:1.2rem}
p{margin-bottom:1rem}
img{max-width:100%;height:auto}
a{text-underline-offset:3px}
:focus-visible{outline:3px solid var(--brand);outline-offset:2px}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:.6rem 1rem;z-index:2000}
.skip-link:focus{left:1rem;top:1rem}
.container{--bs-gutter-x:2rem}
.eyebrow{display:inline-block;font:700 .78rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin-bottom:.8rem}
.lede{font-size:1.2rem;color:var(--ink-2);max-width:62ch}

/* ---------- buttons ---------- */
.btn{--bs-btn-font-family:var(--display);--bs-btn-font-weight:700;--bs-btn-border-radius:999px;--bs-btn-padding-x:1.4rem;--bs-btn-padding-y:.72rem;--bs-btn-font-size:1rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1.2}
.btn svg{width:18px;height:18px;fill:currentColor;flex:none}
.btn-lg{--bs-btn-padding-x:1.8rem;--bs-btn-padding-y:.95rem;--bs-btn-font-size:1.08rem}
.btn-sm{--bs-btn-padding-x:1rem;--bs-btn-padding-y:.5rem;--bs-btn-font-size:.9rem}
.btn-brand{--bs-btn-bg:var(--brand);--bs-btn-color:#fff;--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:var(--brand-dark);--bs-btn-hover-border-color:var(--brand-dark);--bs-btn-hover-color:#fff;--bs-btn-active-bg:var(--brand-dark);--bs-btn-active-border-color:var(--brand-dark);--bs-btn-active-color:#fff;box-shadow:0 10px 22px -12px rgba(190,30,45,.8)}
.btn-outline-brand{--bs-btn-color:var(--brand);--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:var(--brand);--bs-btn-hover-color:#fff;--bs-btn-hover-border-color:var(--brand);--bs-btn-active-bg:var(--brand-dark);--bs-btn-active-color:#fff}
.btn-white{--bs-btn-bg:#fff;--bs-btn-color:var(--ink);--bs-btn-border-color:#fff;--bs-btn-hover-bg:var(--brand-tint);--bs-btn-hover-color:var(--ink);--bs-btn-hover-border-color:var(--brand-tint)}
.btn-ghost-light{--bs-btn-color:#fff;--bs-btn-border-color:rgba(255,255,255,.55);--bs-btn-hover-bg:rgba(255,255,255,.12);--bs-btn-hover-color:#fff;--bs-btn-hover-border-color:#fff}
.link-more{display:inline-flex;align-items:center;gap:.35rem;font:700 .95rem var(--display);text-decoration:none}
.link-more svg{width:16px;height:16px;fill:currentColor}

/* ---------- top bar + header ---------- */
.topbar{background:var(--bg-dark);color:var(--on-dark);font-size:.9rem}
.topbar .container{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:38px;flex-wrap:wrap}
.topbar a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:.45rem;font-weight:600}
.topbar svg{width:15px;height:15px;fill:var(--brand)}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1030}
.navbar{padding:.55rem 0}
.navbar-brand img{height:52px;width:auto}
.navbar-nav .nav-link{font:600 .98rem var(--display);color:var(--ink);padding:.6rem .85rem!important;border-radius:8px}
.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active{color:var(--brand)}
.navbar-nav .nav-link.active{box-shadow:inset 0 -2px 0 var(--brand);border-radius:0}
.dropdown-menu{--bs-dropdown-link-active-bg:var(--brand-tint);--bs-dropdown-link-active-color:var(--brand);--bs-dropdown-link-hover-bg:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--shadow);padding:.45rem;min-width:16rem}
.dropdown-item{border-radius:8px;padding:.5rem .8rem;font-size:.98rem}
.btn-nav{margin-left:.6rem}
@media (min-width:992px){.navbar-expand-lg .dropdown:hover>.dropdown-menu{display:block;margin-top:0}}
@media (max-width:991.98px){.navbar-collapse{padding:.8rem 0 1rem}.btn-nav{margin:.6rem 0 0;align-self:flex-start}.navbar-nav .nav-link.active{box-shadow:none}.navbar-brand img{height:44px}}

/* ---------- home hero ---------- */
.hero{position:relative;color:#fff;background:var(--bg-dark);overflow:hidden}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 60%}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,15,19,.92) 0%,rgba(13,15,19,.78) 45%,rgba(13,15,19,.35) 100%)}
.hero .container{position:relative;padding-block:clamp(4rem,9vw,7.5rem)}
.hero h1{color:#fff;font-size:clamp(2.2rem,5vw,3.6rem);max-width:17ch}
.hero .lede{color:#e3e6ea;max-width:52ch}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;align-items:center;margin-top:1.8rem}
.hero-call{display:inline-flex;align-items:center;gap:.6rem;color:#fff;text-decoration:none;font-weight:600}
.hero-call span.ic{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center}
.hero-call svg{width:18px;height:18px;fill:#fff}
.hero-note{margin-top:1.6rem;font-size:.92rem;color:#b9bec7;max-width:60ch}

/* ---------- page head ---------- */
.page-head{background:var(--bg-alt);border-bottom:1px solid var(--line)}
.page-head .container{display:grid;gap:2rem;padding-block:2.6rem 2.8rem;align-items:center}
.page-head.has-photo .container{grid-template-columns:1.25fr 1fr}
.breadcrumb{--bs-breadcrumb-divider:"›";font-size:.9rem;margin-bottom:.9rem}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--brand)}
.page-head .meta{color:var(--muted);font-size:.95rem;margin:0}
.ph-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--r);box-shadow:var(--shadow)}
@media (max-width:767.98px){.page-head.has-photo .container{grid-template-columns:1fr}.ph-photo{order:-1}}

/* ---------- sections ---------- */
.section{padding-block:clamp(3rem,6vw,5rem)}
.section-alt{background:var(--bg-alt)}
.section-dark{background:var(--bg-dark);color:var(--on-dark)}
.section-dark h2,.section-dark h3{color:#fff}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;flex-wrap:wrap;margin-bottom:2rem}
.section-head h2{margin:0}
.section-head p{margin:.5rem 0 0;color:var(--ink-2);max-width:60ch}
.center-head{text-align:center;max-width:720px;margin:0 auto 2.4rem}
.center-head p{color:var(--ink-2)}
.section-dark .center-head p{color:var(--on-dark)}

/* three features */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.feature{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.6rem;display:grid;gap:.6rem;align-content:start}
.feature .ic{width:52px;height:52px;border-radius:14px;background:var(--brand-tint);display:grid;place-items:center}
.feature .ic svg{width:26px;height:26px;fill:var(--brand)}
.feature h3{margin:.3rem 0 0}
.feature p{margin:0;color:var(--ink-2)}
@media (max-width:767.98px){.features{grid-template-columns:1fr}}

/* split text + image */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.split img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r);box-shadow:var(--shadow)}
.split.reverse>:first-child{order:2}
.sign{display:flex;align-items:center;gap:.8rem;margin-top:1.4rem;font-family:var(--display);font-weight:700}
.sign span{display:block;font:400 .95rem var(--body);color:var(--muted)}
@media (max-width:767.98px){.split{grid-template-columns:1fr}.split.reverse>:first-child{order:0}}

/* cards */
.card-grid{display:grid;gap:1.4rem}
.card-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.card-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.card-grid.cols-2{grid-template-columns:repeat(2,1fr)}
@media (max-width:991.98px){.card-grid.cols-4,.card-grid.cols-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:575.98px){.card-grid.cols-4,.card-grid.cols-3,.card-grid.cols-2{grid-template-columns:1fr}}
.info-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .18s,box-shadow .18s,border-color .18s;height:100%}
.info-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#d4d8dd;color:var(--ink)}
.card-img img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.card-body{padding:1.2rem 1.3rem 1.3rem;display:flex;flex-direction:column;gap:.45rem;flex:1}
.card-label{font:700 .74rem/1.3 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}
.info-card h3{font-size:1.1rem;margin:0}
.info-card p{margin:0;color:var(--ink-2);font-size:.98rem}
.blog-feature .card-grid>:first-child{grid-column:1/-1}
@media (min-width:768px){.blog-feature .card-grid>a:first-child{flex-direction:row}.blog-feature .card-grid>a:first-child .card-img{flex:0 0 44%}.blog-feature .card-grid>a:first-child .card-img img{height:100%;min-height:300px;aspect-ratio:auto}.blog-feature .card-grid>a:first-child .card-body{justify-content:center;padding:2rem 2.4rem;gap:.7rem}.blog-feature .card-grid>a:first-child h3{font-size:1.6rem}.blog-feature .card-grid>a:first-child p{font-size:1.08rem}.blog-feature .card-grid>a:first-child .card-more{margin-top:.6rem}}
.card-more{margin-top:auto;padding-top:.5rem;display:inline-flex;align-items:center;gap:.35rem;font:700 .92rem var(--display);color:var(--brand)}
.card-more svg{width:16px;height:16px;fill:currentColor}

/* steps (a real sequence) */
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;counter-reset:s}
.steps li{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.5rem;counter-increment:s}
.steps li::before{content:counter(s);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--brand);color:#fff;font:800 1.05rem var(--display);margin-bottom:.9rem}
.steps h3{margin:0 0 .4rem}
.steps p{margin:0;color:var(--ink-2)}
@media (max-width:767.98px){.steps{grid-template-columns:1fr}}

/* situations (in place of testimonials) */
.situations{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.situation{background:var(--dark-2);border:1px solid #2a3038;border-radius:var(--r);padding:1.6rem;display:grid;gap:.7rem;align-content:start}
.situation .who{font:700 .8rem var(--display);letter-spacing:.08em;text-transform:uppercase;color:#ff8a94}
.situation p{margin:0;color:var(--on-dark)}
.situation h3{margin:0;font-size:1.12rem}
@media (max-width:991.98px){.situations{grid-template-columns:1fr}}

/* CTA band */
.cta-band{background:var(--brand);color:#fff}
.cta-band .container{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:1.4rem;padding-block:2.6rem}
.cta-band h2{color:#fff;margin:0 auto;font-size:clamp(1.4rem,2.4vw,1.9rem);max-width:28ch}
.cta-band p{margin:.4rem 0 0;color:#fde3e6}
.cta-band .btn-brand{--bs-btn-bg:#fff;--bs-btn-color:var(--brand);--bs-btn-border-color:#fff;--bs-btn-hover-bg:var(--bg-dark);--bs-btn-hover-border-color:var(--bg-dark);--bs-btn-hover-color:#fff;box-shadow:none}

/* ---------- article / guide typography ---------- */
.article-wrap{max-width:780px;margin:0 auto}
.guide-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:3rem;align-items:start}
.guide-aside{position:sticky;top:100px;display:grid;gap:1rem}
.aside-card{background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r);padding:1.3rem}
.aside-card h2{font-size:1.05rem;margin:0 0 .7rem}
.aside-card ul{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}
.aside-card a{text-decoration:none;font-size:.97rem}
.aside-card.dark{background:var(--bg-dark);border-color:var(--bg-dark);color:var(--on-dark)}
.aside-card.dark h2{color:#fff}
@media (max-width:991.98px){.guide-layout{grid-template-columns:minmax(0,1fr)}.guide-aside{position:static}}
.guide-layout>*,.tool>*{min-width:0}
.guide-layout .faq-list{max-width:none}
.prose{font-size:1.09rem}
.prose h2{font-size:1.6rem;margin:2.2rem 0 .8rem}
.prose h3{font-size:1.22rem;margin:1.6rem 0 .5rem}
.prose ul,.prose ol{padding-left:1.25rem;margin-bottom:1.1rem}
.prose .steps{padding-left:0}
.prose .faq-q{margin:0}
.prose li{margin-bottom:.4rem}
.prose img{border-radius:var(--r);margin:1rem 0 1.4rem}
.prose>h2:first-child{margin-top:0}
.table-wrap{overflow-x:auto;margin:1.2rem 0 1.6rem;border:1px solid var(--line);border-radius:var(--r-sm)}
.table-wrap table{width:100%;border-collapse:collapse;font-size:.98rem;min-width:520px}
.table-wrap table.fit{min-width:0}
.table-wrap th,.table-wrap td{padding:.75rem .9rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.table-wrap thead th{background:var(--bg-alt);font:700 .82rem var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}
.table-wrap tbody tr:last-child td{border-bottom:0}
.callout{background:var(--brand-tint);border-left:4px solid var(--brand);border-radius:0 var(--r-sm) var(--r-sm) 0;padding:1rem 1.2rem;margin:1.4rem 0}
.callout p:last-child{margin:0}
.callout strong{color:var(--brand-dark)}
.note{background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r-sm);padding:1rem 1.2rem;font-size:.97rem;color:var(--ink-2)}
.article-note{margin-top:2.4rem;padding-top:1.2rem;border-top:1px solid var(--line);font-size:.93rem;color:var(--muted)}
.checklist{list-style:none;padding:0!important}
.checklist li{position:relative;padding-left:1.9rem}
.checklist li::before{content:"";position:absolute;left:0;top:.35rem;width:18px;height:18px;border-radius:50%;background:var(--brand-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23be1e2d' d='m9.5 16.2-4.2-4.2-1.4 1.4 5.6 5.6L21 7.5l-1.4-1.4z'/%3E%3C/svg%3E") center/13px no-repeat}

/* ---------- legal pages ---------- */
.legal{max-width:820px;margin:0 auto}
.legal h2{font-size:1.4rem;margin:2.2rem 0 .7rem}
.legal h2[id],.legal h3[id]{scroll-margin-top:100px}
.legal h3{font-size:1.1rem;margin:1.4rem 0 .4rem}
.legal .updated{color:var(--muted);font-size:.95rem}
.legal .toc{background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r);padding:1.2rem 1.4rem;margin:1.4rem 0 2rem}
.legal .toc ol{margin:0;padding-left:1.2rem;columns:2;column-gap:2rem}
@media (max-width:575.98px){.legal .toc ol{columns:1}}

/* ---------- tools ---------- */
.tool{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2rem;align-items:start}
@media (max-width:991.98px){.tool{grid-template-columns:minmax(0,1fr)}}
.tool-panel,.result-panel,.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.6rem;box-shadow:0 1px 0 rgba(21,24,29,.03)}
.tool-panel h2,.result-panel h2,.form-card h2,.tool-panel h3,.result-panel h3{font-size:1.25rem;margin:0 0 1rem}
.result-panel h3{color:#fff}
.result-panel{position:sticky;top:100px;background:var(--bg-dark);border-color:var(--bg-dark);color:var(--on-dark)}
.result-panel h2{color:#fff}
.result-big{font:800 clamp(2rem,4vw,2.8rem)/1.1 var(--display);color:#fff;font-variant-numeric:tabular-nums}
.result-sub{color:var(--on-dark);margin:.3rem 0 1.2rem}
.result-rows{display:grid;gap:.1rem;margin:0}
.result-rows div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid #2b3139}
.result-rows dt{font-weight:400;color:var(--on-dark)}
.result-rows dd{margin:0;font-weight:700;color:#fff;font-variant-numeric:tabular-nums}
.result-verdict{margin-top:1.2rem;padding:.9rem 1rem;border-radius:var(--r-sm);background:#232932;color:#e7eaee;font-size:.98rem}
.result-verdict.good{background:#15332a;color:#bff0d6}
.result-verdict.warn{background:#3a2c14;color:#ffe2a8}
.form-label{font:600 .95rem var(--display);color:var(--ink);margin-bottom:.35rem}
.form-text{color:var(--muted)}
.form-control,.form-select{border-color:#cfd4da;border-radius:var(--r-sm);padding:.62rem .8rem;font-size:1rem}
.form-control:focus,.form-select:focus{border-color:var(--brand);box-shadow:0 0 0 .2rem rgba(190,30,45,.18)}
.input-group-text{background:var(--bg-alt);border-color:#cfd4da;border-radius:var(--r-sm)}
.form-check-input{border-color:#9aa1ab}
.form-check-input:checked{background-color:var(--brand);border-color:var(--brand)}
.form-check-input:focus{box-shadow:0 0 0 .2rem rgba(190,30,45,.2);border-color:var(--brand)}
.consent{display:block;font-size:.93rem;color:var(--ink-2);background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r-sm);padding:.9rem 1rem .9rem 2.7rem;margin:0;cursor:pointer}
.consent .form-check-input{float:left;margin:.2rem 0 0 -1.7rem;width:1.15em;height:1.15em;border-color:#9aa1ab}
.form-success{display:none;background:#eaf6ef;border:1px solid #bfe3cd;color:#174d33;border-radius:var(--r);padding:1.4rem}
.form-success h3{color:#174d33;margin:0 0 .4rem}
.tool-list{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}
.tool-list label{display:flex;gap:.7rem;align-items:flex-start;padding:.7rem .9rem;border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;background:#fff}
.tool-list input{margin-top:.3rem}
.progress{height:10px;border-radius:999px;background:#e9ecef}
.progress-bar{background:var(--brand)}

/* ---------- plans ---------- */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;align-items:stretch}
.plan{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.8rem;display:flex;flex-direction:column;gap:1rem}
.plan.popular{border:2px solid var(--brand);box-shadow:var(--shadow)}
.plan .badge-pop{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:#fff;font:700 .74rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase;padding:.45rem .8rem;border-radius:999px;white-space:nowrap}
.plan h2{font-size:1.3rem;margin:0}
.plan .for{margin:0;color:var(--muted)}
.plan .price{font:800 2.6rem/1 var(--display);color:var(--ink);font-variant-numeric:tabular-nums}
.plan .price small{font:600 1rem var(--body);color:var(--muted)}
.plan ul{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}
.plan li{display:flex;gap:.6rem;align-items:flex-start}
.plan li svg{width:18px;height:18px;fill:var(--brand);flex:none;margin-top:.2rem}
.plan .btn{margin-top:auto}
@media (max-width:991.98px){.plans{grid-template-columns:1fr;max-width:520px;margin:0 auto}}

/* ---------- FAQ ---------- */
.faq-list{max-width:860px;margin:0 auto;display:grid;gap:.8rem}
.faq-item{border:1px solid var(--line);border-radius:var(--r-sm);background:#fff}
.faq-item summary{list-style:none;cursor:pointer;padding:1rem 1.2rem;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font:700 1.4rem/1 var(--display);color:var(--brand);flex:none}
.faq-item[open] summary::after{content:"\2212"}
.faq-q{font-size:1.05rem;margin:0}
.faq-a{padding:0 1.2rem 1.1rem;color:var(--ink-2)}
.faq-a p:last-child{margin:0}

/* ---------- library ---------- */
.library{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.library h2{font-size:1.2rem;margin:0 0 .8rem;padding-bottom:.6rem;border-bottom:2px solid var(--brand)}
.library ul{list-style:none;padding:0;margin:0;display:grid;gap:.9rem}
.library li a{font:700 1rem var(--display);text-decoration:none;color:var(--ink)}
.library li a:hover{color:var(--brand)}
.library li span{display:block;color:var(--muted);font-size:.93rem}
@media (max-width:991.98px){.library{grid-template-columns:1fr}}

/* ---------- contact ---------- */
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.4rem;display:grid;gap:.4rem}
.contact-card svg{width:26px;height:26px;fill:var(--brand)}
.contact-card h2{font-size:1.05rem;margin:.3rem 0 0}
.contact-card p,.contact-card a{margin:0;color:var(--ink-2);text-decoration:none;overflow-wrap:anywhere}
@media (max-width:767.98px){.contact-cards{grid-template-columns:1fr}}

/* ---------- footer ---------- */
.site-footer{background:var(--bg-dark);color:var(--on-dark);font-size:.97rem}
.footer-main{padding-block:3.4rem 2rem}
.footer-brand img{height:56px;width:auto;margin-bottom:1rem}
.site-footer h2{color:#fff;font-size:1rem;letter-spacing:.06em;text-transform:uppercase;margin:0 0 1rem}
.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}
.site-footer a{color:var(--on-dark);text-decoration:none}
.site-footer a:hover{color:#fff}
.site-footer .btn-brand,.site-footer .btn-brand:hover{color:#fff}
.site-footer .contact li{display:flex;gap:.6rem;align-items:flex-start}
.site-footer .contact svg{width:17px;height:17px;fill:var(--brand);flex:none;margin-top:.25rem}
.site-footer p{color:var(--on-dark)}
.footer-disclosure{border-top:1px solid #262b33;padding-block:1.4rem;font-size:.9rem}
.footer-disclosure p{margin:0}
.footer-disclosure strong{color:#fff}
.footer-bottom{border-top:1px solid #262b33;padding-block:1.1rem;display:flex;justify-content:space-between;gap:.6rem 1.4rem;flex-wrap:wrap;font-size:.88rem;color:#8c939d}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.section.pt-0{padding-top:0}
.form-error{background:#fcebed;border:1px solid #f1b8bf;color:#7a1019;border-radius:var(--r-sm);padding:.75rem 1rem;font-size:.97rem}
