/* CBWS hub + editorial reskin: websage-inspired white mode, teal + #ff3b64.
   Loaded AFTER default.css. DOM untouched. City pages excluded (script never touches them). */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{
  --hub-paper:#f7f7f3; --hub-ink:#222222; --hub-soft:#3a3d38; --hub-muted:#5f635b;
  --hub-line:#e3e6df; --hub-coral:#ff3b64; --hub-coral-dark:#d61f47; --hub-coral-soft:#ffe0e8;
  --hub-teal:#0f766e; --hub-teal-dark:#0b5e57; --hub-teal-soft:#d9f2ef;
}
body{font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;background:var(--hub-paper)!important;color:var(--hub-ink)!important}
h1,h2,h3,h4{font-family:"Space Grotesk","IBM Plex Sans",sans-serif!important;letter-spacing:-.02em}
/* sticky glass header */
header.bg-white{position:sticky!important;top:0;z-index:900;background:rgba(255,255,255,.88)!important;backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid var(--hub-line)!important;box-shadow:none!important}
/* hero: dark gradient -> light */
section.bg-gradient-to-br{background:radial-gradient(circle at 50% 0%,#ffffff 0%,var(--hub-paper) 72%)!important}
section.bg-gradient-to-br h1{color:var(--hub-ink)!important}
section.bg-gradient-to-br p{color:var(--hub-muted)!important}
section.bg-gradient-to-br p .font-bold,section.bg-gradient-to-br .font-bold{color:var(--hub-teal-dark)!important}
/* hero + CTA buttons: white/blue -> coral solid + ink outline */
section.bg-gradient-to-br a.bg-white,section.bg-blue-600 a.bg-white{background:var(--hub-coral)!important;color:#fff!important;border:1px solid var(--hub-coral)!important;border-radius:10px!important}
section.bg-gradient-to-br a.bg-white:hover,section.bg-blue-600 a.bg-white:hover{background:var(--hub-coral-dark)!important;transform:translateY(-2px)}
section.bg-gradient-to-br a.border-white,section.bg-blue-600 a.border-white{border:2px solid var(--hub-ink)!important;color:var(--hub-ink)!important;border-radius:10px!important}
section.bg-gradient-to-br a.border-white:hover,section.bg-blue-600 a.border-white:hover{background:var(--hub-ink)!important;color:#fff!important}
/* CTA band: blue -> light teal tint */
section.bg-blue-600{background:var(--hub-teal-soft)!important}
section.bg-blue-600 h2{color:var(--hub-ink)!important}
section.bg-blue-600 p{color:var(--hub-soft)!important}
/* content sections */
section.bg-gray-50{background:#fff!important;border-top:1px solid var(--hub-line);border-bottom:1px solid var(--hub-line)}
/* footer: near-black -> white */
footer.bg-gray-900{background:#fff!important;color:var(--hub-ink)!important;border-top:1px solid var(--hub-ink)}
footer.bg-gray-900 h3,footer.bg-gray-900 h4{color:var(--hub-ink)!important}
footer.bg-gray-900 p,footer.bg-gray-900 ul,footer.bg-gray-900 li{color:var(--hub-muted)!important}
footer.bg-gray-900 a{color:var(--hub-soft)!important}
footer.bg-gray-900 a:hover{color:var(--hub-teal-dark)!important}
/* links + accents */
a:hover{color:var(--hub-teal-dark)}
.text-blue-600{color:var(--hub-teal-dark)!important}
/* cards: subtle lift */
.shadow-lg,.shadow-xl{box-shadow:none!important}
.rounded-2xl,.rounded-xl{border:1px solid var(--hub-line)!important}
/* ============ EDITORIAL TEMPLATE (indigo/slate) -> light ============ */
body.bg-slate-50{background:var(--hub-paper)!important}
header.bg-gradient-to-br.from-indigo-700{background:radial-gradient(circle at 50% 0%,#ffffff 0%,var(--hub-paper) 72%)!important}
header.bg-gradient-to-br.from-indigo-700 h1{color:var(--hub-ink)!important}
header.bg-gradient-to-br.from-indigo-700 p{color:var(--hub-muted)!important}
.text-indigo-100{color:var(--hub-muted)!important}
.text-indigo-200{color:var(--hub-teal-dark)!important}
.text-indigo-700{color:var(--hub-teal-dark)!important}
a.bg-indigo-700{background:var(--hub-coral)!important;color:#fff!important;border:1px solid var(--hub-coral)!important;border-radius:10px!important}
a.bg-indigo-700:hover{background:var(--hub-coral-dark)!important}
footer.bg-slate-950{background:#fff!important;color:var(--hub-ink)!important;border-top:1px solid var(--hub-ink)}
footer.bg-slate-950 p,footer.bg-slate-950 .text-slate-300{color:var(--hub-muted)!important}
footer.bg-slate-950 a{color:var(--hub-soft)!important}
footer.bg-slate-950 a:hover{color:var(--hub-teal-dark)!important}
footer.bg-slate-950 .text-white{color:var(--hub-ink)!important}
/* shared CTA band (injected): light, coral + ink buttons */.cbws-hub-cta{background:#fff;border-top:1px solid var(--hub-line);padding:3.5rem 0;text-align:center}
.cbws-hub-cta-in{width:min(820px,calc(100% - 48px));margin:0 auto}
.cbws-hub-cta h2{font-size:clamp(1.7rem,3.4vw,2.5rem);color:var(--hub-ink);margin-bottom:.6rem}
.cbws-hub-cta p{color:var(--hub-muted);margin-bottom:1.6rem}
.cbws-hub-cta-btns{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center}
.cbws-hub-cta-btns a{display:inline-flex;align-items:center;gap:.5rem;min-height:52px;padding:.85rem 1.8rem;border-radius:10px;font-weight:700;font-size:.9rem;text-decoration:none}
.cbws-hub-cta-btns a:first-child{background:var(--hub-coral);border:1px solid var(--hub-coral);color:#fff}
.cbws-hub-cta-btns a:first-child:hover{background:var(--hub-coral-dark)}
.cbws-hub-cta-btns a:last-child{background:transparent;border:1px solid var(--hub-ink);color:var(--hub-ink)}
.cbws-hub-cta-btns a:last-child:hover{background:var(--hub-ink);color:#fff}
/* hub enrichment sections (injected by upgrade): light, teal + coral */
.cbws-hub-more{background:#fff;border-top:1px solid #e3e6df;padding:3.5rem 0}
.cbws-hub-more-in{width:min(1180px,calc(100% - 48px));margin:0 auto}
.cbws-hub-more .eyebrow{color:#0f766e;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:2rem 0 .9rem}
.cbws-hub-more .eyebrow:first-child{margin-top:0}
.cbws-hub-more h2{font-family:"Space Grotesk","IBM Plex Sans",sans-serif;font-size:clamp(1.6rem,3vw,2.3rem);color:#222;margin-bottom:.5rem}
.cbws-hub-more-sub{color:#5f635b;max-width:44rem;margin-bottom:1.4rem}
.cbws-hub-chips{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.5rem}
.cbws-hub-chip{background:#f7f7f3;border:1px solid #222;border-radius:999px;padding:.5rem 1.1rem;font-size:.86rem;font-weight:600;color:#222;text-decoration:none}
.cbws-hub-chip:hover{background:#0f766e;border-color:#0f766e;color:#fff}
.cbws-hub-rels{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin-bottom:.5rem}
.cbws-hub-rel{background:#f7f7f3;border:1px solid #222;border-radius:12px;padding:1rem 1.2rem;display:flex;justify-content:space-between;align-items:center;font-weight:600;color:#222;text-decoration:none}
.cbws-hub-rel:hover{background:#ffe0e8;border-color:#ff3b64}
.cbws-hub-ctas{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.6rem 0 .5rem}
.cbws-hub-ctas a{background:#ff3b64;border:1px solid #ff3b64;color:#fff!important;border-radius:10px;padding:.75rem 1.5rem;font-weight:700;font-size:.88rem;text-decoration:none}
.cbws-hub-ctas a:hover{background:#d61f47}
.cbws-hub-faqlist{display:flex;flex-direction:column;gap:.8rem}
.cbws-hub-faq{background:#f7f7f3;border:1px solid #222;border-radius:12px;overflow:hidden}
.cbws-hub-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;cursor:pointer;font-weight:700;color:#222}
.cbws-hub-faq summary::-webkit-details-marker{display:none}
.cbws-hub-faq-ico{color:#0f766e;flex-shrink:0}
.cbws-hub-faq-ico .fa-minus{display:none}
.cbws-hub-faq[open] .fa-minus{display:inline}
.cbws-hub-faq[open] .fa-plus{display:none}
.cbws-hub-faq div{border-top:1px solid #e3e6df;padding:1rem 1.2rem;color:#3a3d38}
.cbws-hub-faq div p{margin:0}
.cbws-hub-faq div a{color:#0b5e57;font-weight:600}
@media(max-width:768px){.cbws-hub-rels{grid-template-columns:1fr}}
