/* Disability Atlas, shared stylesheet. Built into site/assets/atlas.css by build_pages.py,
   which fills the area color block below from atlas.config.json. Token names match the
   Disability Search pages, so ported forms (Update a Listing, Sponsor) style themselves. */
:root{
  color-scheme:light dark;
  --ink:#06222E;--ink-2:#2E4752;--ink-3:#4A6370;
  --ground:#FFFFFF;--surface:#FFFFFF;--sunk:#F1F7FA;--line:#CFE2EB;--line-soft:#E3EEF3;--field:#6B8794;
  --brand:#29AAE3;--brand-deep:#0B5F87;--navy:#06222E;
  --accent:#06222E;--accent-deep:#0B5F87;--accent-wash:#E3F4FC;--on-accent:#FFFFFF;
  --sun:#FFC93C;--sun-wash:#FFF4D6;--pink:#FF9EBB;--pink-wash:#FFE3EC;--mint-wash:#DDF0E9;
  --rust:#A0461C;--rust-wash:#F7E9E1;--ok:#2A6B43;--ok-wash:#E2EFE6;--warn:#7A5A06;--warn-wash:#FFF4D6;
  --stop:#8E2F26;--stop-wash:#F7E5E2;--bad:#B3261E;--focus:#06222E;
  --lv-plat:#4E5F7A;--lv-plat-wash:#E8ECF3;--lv-gold:#7A5A06;--lv-gold-wash:#FFF4D6;--lv-silver:#6B7681;--lv-silver-wash:#EEF2F5;
  --area:#0B5F87;--area-ink:#074A68;--area-wash:#E3F4FC;--area-2:#29AAE3;--area-solid:#0B5F87;
  --hero-bg:#29AAE3;--hero-ink:#06222E;
  --display:"Bricolage Grotesque","Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;
  --head:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --serif:var(--head);
  --r:18px;--r-lg:26px;--r-xl:36px;--pagemax:1240px;--measure:70ch;--shadow:0 2px 4px rgba(6,34,46,.06),0 10px 28px rgba(6,34,46,.08);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --ink:#EAF4F8;--ink-2:#C3D6DF;--ink-3:#9DB4BF;
    --ground:#061B24;--surface:#0B2631;--sunk:#04141B;--line:#1E4250;--line-soft:#14323E;--field:#7E9DAA;
    --accent:#29AAE3;--accent-deep:#7FD0F2;--accent-wash:#0E3343;--on-accent:#06222E;
    --sun-wash:#3A2F0E;--pink-wash:#3B1C27;--mint-wash:#12302A;
    --rust:#E39A74;--rust-wash:#3A2216;--ok:#7CC79A;--ok-wash:#14301F;--warn:#E3C06A;--warn-wash:#34290C;
    --stop:#F0958A;--stop-wash:#3A1915;--bad:#F2A097;--focus:#7FD0F2;
    --lv-plat:#AEBBD3;--lv-plat-wash:#1E2632;--lv-gold:#E3C155;--lv-gold-wash:#30280D;--lv-silver:#BFC6CD;--lv-silver-wash:#22272C;
    --area:#7FD0F2;--area-ink:#9ADAF6;--area-wash:#0E3343;
    --shadow:0 2px 4px rgba(0,0,0,.3),0 10px 28px rgba(0,0,0,.3);
  }
}
:root[data-theme="dark"]{
  --ink:#EAF4F8;--ink-2:#C3D6DF;--ink-3:#9DB4BF;
  --ground:#061B24;--surface:#0B2631;--sunk:#04141B;--line:#1E4250;--line-soft:#14323E;--field:#7E9DAA;
  --accent:#29AAE3;--accent-deep:#7FD0F2;--accent-wash:#0E3343;--on-accent:#06222E;
  --sun-wash:#3A2F0E;--pink-wash:#3B1C27;--mint-wash:#12302A;--focus:#7FD0F2;
  --area:#7FD0F2;--area-ink:#9ADAF6;--area-wash:#0E3343;
}
.area-idd,.door.a-idd{--area:#B4461B;--area-ink:#943916;--area-wash:#F6E9E4;--area-2:#FFFFFF;--area-solid:#B4461B;--hero-bg:#B4461B;--hero-ink:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .area-idd,:root:not([data-theme=light]) .door.a-idd{--on-area:#061B24;--area:#CE876B;--area-ink:#DDAC98;--area-wash:#372721;--area-solid:#B4461B}}
.area-idd .abar{background:#B4461B}
.area-mental-health,.door.a-mbh{--area:#6B3FA0;--area-ink:#583483;--area-wash:#EDE8F4;--area-2:#FFFFFF;--area-solid:#6B3FA0;--hero-bg:#6B3FA0;--hero-ink:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .area-mental-health,:root:not([data-theme=light]) .door.a-mbh{--on-area:#061B24;--area:#9F82C1;--area-ink:#BCA9D4;--area-wash:#222547;--area-solid:#6B3FA0}}
.area-mental-health .abar{background:#6B3FA0}
.area-physical,.door.a-phy{--area:#A8234E;--area-ink:#8A1D40;--area-wash:#F5E5EA;--area-2:#FFFFFF;--area-solid:#A8234E;--hero-bg:#A8234E;--hero-ink:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .area-physical,:root:not([data-theme=light]) .door.a-phy{--on-area:#061B24;--area:#C6708C;--area-ink:#D89CAF;--area-wash:#331D30;--area-solid:#A8234E}}
.area-physical .abar{background:#A8234E}
.area-sensory,.door.a-sen{--area:#00756F;--area-ink:#00605B;--area-wash:#E0EEEE;--area-2:#FFFFFF;--area-solid:#00756F;--hero-bg:#00756F;--hero-ink:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .area-sensory,:root:not([data-theme=light]) .door.a-sen{--on-area:#061B24;--area:#59A5A1;--area-ink:#8CC1BE;--area-wash:#043439;--area-solid:#00756F}}
.area-sensory .abar{background:#00756F}
.area-neurological,.door.a-neu{--area:#3B7A1F;--area-ink:#306419;--area-wash:#E7EFE4;--area-2:#FFFFFF;--area-solid:#3B7A1F;--hero-bg:#3B7A1F;--hero-ink:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .area-neurological,:root:not([data-theme=light]) .door.a-neu{--on-area:#061B24;--area:#80A96D;--area-ink:#A7C39A;--area-wash:#153623;--area-solid:#3B7A1F}}
.area-neurological .abar{background:#3B7A1F}
.area-veterans,.door.a-vet{--area:#1F3A5F;--area-ink:#19304E;--area-wash:#E4E7EC;--area-2:#C9A227;--area-solid:#1F3A5F;--hero-bg:#1F3A5F;--hero-ink:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .area-veterans,:root:not([data-theme=light]) .door.a-vet{--on-area:#061B24;--area:#6D7F97;--area-ink:#9AA6B7;--area-wash:#0D2435;--area-solid:#1F3A5F}}
.area-veterans .abar{background:#1F3A5F}
:root{--shop:#E8A317}
.clin,.door.cl{--area:#8C5A0B;--area-ink:#734A09;--area-wash:#F1EBE2;--area-2:#FFFFFF;--area-solid:#8C5A0B;--hero-bg:#8C5A0B;--hero-ink:#FFFFFF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .clin{--on-area:#061B24;--area:#B49460;--area-ink:#CBB591;--area-wash:#2C2D1D;--area-solid:#8C5A0B}}

*,*::before,*::after{box-sizing:border-box}
[hidden]:not([hidden=until-found i]){display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:16px}
body{margin:0;background:var(--ground);color:var(--ink);font:400 17px/1.6 var(--head);overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--accent-deep);text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
/* Two-ring focus: a dark (or light, in dark mode) ring plus a sun ring, so it shows on white, on the blue panels and on every area color. */
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 7px var(--sun)}
h1,h2,h3{font-family:var(--display);font-weight:800;letter-spacing:-.025em;line-height:1.1;color:var(--ink);text-wrap:balance}
h3{font-weight:700;letter-spacing:-.015em;line-height:1.2}
p{text-wrap:pretty}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--navy);color:#fff;padding:10px 16px;border-radius:12px;font-weight:700}
.skip:focus{left:12px}
.wrap{max-width:var(--pagemax);margin:0 auto;padding:0 20px}
.kick{font:700 15px/1.3 var(--head);color:var(--area-ink);margin:0 0 10px;letter-spacing:.01em}
.lede{font-family:var(--head);font-size:19px;line-height:1.55;color:var(--ink-2);max-width:var(--measure)}
.muted{color:var(--ink-3)}
.num{font-variant-numeric:tabular-nums}

/* buttons: 14px corners, 2px borders, ink primary */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 16px/1.2 var(--head);padding:12px 20px;min-height:48px;border-radius:14px;border:2px solid var(--ink);background:var(--surface);color:var(--ink);cursor:pointer;text-decoration:none}
.btn:hover{background:var(--sunk)}
.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.btn.primary:hover{filter:brightness(1.15)}
.btn.area{background:var(--area-solid);border-color:var(--area-solid);color:#fff}
.btn.area:hover{filter:brightness(1.1)}
.btn.ghost{border-color:var(--line);color:var(--ink)}
.btn.sun{background:var(--sun);border-color:var(--sun);color:#06222E}
.btn[disabled]{opacity:.6;cursor:progress}
.cbtn{display:inline-flex;align-items:center;min-height:40px;padding:7px 14px;border-radius:12px;border:2px solid var(--line);color:var(--accent-deep);font:700 14.5px/1.2 var(--head);text-decoration:none;background:var(--surface)}
.cbtn:hover{border-color:var(--ink)}

/* ---------------- announcement bar ---------------- */
.announce{background:var(--sun);color:#06222E;text-align:center;font:400 16px/1.45 var(--head);padding:11px 20px}
.announce a{color:#06222E;font-weight:700}
.announce b{font-weight:700}

/* ---------------- global bar ---------------- */
.gbar{background:var(--surface);border-bottom:1px solid var(--line-soft);position:relative;z-index:20}
.gbar-in{max-width:var(--pagemax);margin:0 auto;padding:14px 20px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);margin-right:auto;min-width:0}
.brand svg{width:46px;height:46px;flex:none}
.brand .bn{display:block;font:800 26px/1 var(--display);letter-spacing:-.025em}
.brand .bp{display:block;font:400 14px/1.3 var(--head);color:var(--ink-3);margin-top:3px}
.gnav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.gnav a{display:inline-flex;align-items:center;min-height:44px;padding:6px 12px;border-radius:12px;color:var(--ink);text-decoration:none;font:700 16px/1.2 var(--head)}
.gnav a:hover{background:var(--sunk)}
.gnav a[aria-current="page"]{background:var(--accent-wash);color:var(--ink);box-shadow:inset 0 -3px 0 var(--brand)}
.gnav a.gorg{flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.1;border:2px solid var(--line)}
.gnav a.gorg small{font:400 12.5px/1.2 var(--head);color:var(--ink-3)}
.gnav a.acct{border:2px solid var(--ink);margin-left:4px}
.menubtn{display:none;font:700 16px var(--head);min-height:48px;padding:8px 16px;border-radius:14px;border:2px solid var(--ink);background:var(--surface);color:var(--ink);cursor:pointer}
@media (max-width:980px){
  .menubtn{display:inline-flex;align-items:center;gap:8px}
  .gnav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:6px 0 4px}
  .gnav.open{display:flex}
  .gnav a{min-height:48px;border-bottom:1px solid var(--line-soft);border-radius:0}
  .gnav a.gorg,.gnav a.acct{border:0;border-bottom:1px solid var(--line-soft);margin:0}
}
@media (max-width:520px){.brand .bn{font-size:22px}.brand svg{width:40px;height:40px}}

/* ---------------- area bar ---------------- */
.abar{background:var(--area-solid);color:#fff;position:relative;z-index:15}
.abar-in{max-width:var(--pagemax);margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-height:56px}
.aname{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:800 20px/1.2 var(--display);letter-spacing:-.015em;padding:10px 0;margin-right:auto}
.aname .adot{width:14px;height:14px;border-radius:50%;background:var(--area-2,#fff);box-shadow:0 0 0 3px rgba(255,255,255,.35)}
.atabs{display:flex;gap:2px;align-self:stretch}
.atabs a{display:flex;align-items:center;padding:0 14px;color:#fff;text-decoration:none;font:700 16px var(--head);border-bottom:5px solid transparent}
.atabs a:hover{background:rgba(255,255,255,.12)}
.atabs a[aria-current="page"]{border-bottom-color:var(--sun)}
.aswitch{position:relative}
.aswitch summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:6px 14px;border-radius:12px;border:2px solid #fff;font:700 15px var(--head)}
.aswitch summary::-webkit-details-marker{display:none}
.aswitch summary::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.aswitch ul{position:absolute;right:0;top:calc(100% + 6px);list-style:none;margin:0;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);min-width:290px;z-index:30}
.aswitch li a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:var(--ink);text-decoration:none;font:600 15px var(--head)}
.aswitch li a:hover{background:var(--sunk)}
.aswitch li a i{width:12px;height:12px;border-radius:50%;flex:none}
.aswitch li.all{border-top:1px solid var(--line-soft);margin-top:6px;padding-top:6px}
@media (max-width:760px){
  .abar-in{gap:0 10px;padding:0 16px}
  .aname{font-size:16px;flex:1 1 auto}
  .atabs{order:3;width:100%;overflow-x:auto;scrollbar-width:none}
  .atabs a{padding:10px 12px;white-space:nowrap;font-size:14.5px}
  .aswitch ul{right:-8px;min-width:260px}
}

/* crisis band (Mental health, Veterans) */
.crisis{background:var(--pink-wash);border-bottom:1px solid var(--line-soft)}
.crisis p{max-width:var(--pagemax);margin:0 auto;padding:10px 20px;font-size:15px;color:var(--ink)}
.crisis a{font-weight:700}

/* ---------------- heroes: rounded color panels ---------------- */
.hero{padding:22px 20px 8px}
.hero-in{position:relative;overflow:hidden;isolation:isolate;max-width:var(--pagemax);margin:0 auto;padding:52px 52px 46px;border-radius:var(--r-xl);background:var(--accent-wash);color:var(--ink)}
.hero-in::before{content:"";position:absolute;z-index:-1;width:240px;height:240px;border-radius:50%;background:var(--sun);right:-70px;top:-90px}
.hero h1{font-size:clamp(34px,5.4vw,64px);margin:0 0 16px;max-width:17ch;letter-spacing:-.035em;line-height:1.02}
.hero .lede{margin:0 0 26px;color:inherit}
.hero .kick{display:inline-block;background:#fff;color:#06222E;border-radius:999px;padding:6px 16px;font-size:15px}
.hero .kick a{color:#06222E}
.hero .hmeta{display:flex;flex-wrap:wrap;gap:8px 26px;margin:22px 0 0;padding:0;list-style:none;font-size:15.5px;color:inherit}
.hero .hmeta b{font:800 26px/1.1 var(--display);display:block;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
/* the home panel: brand blue with sun and pink circles */
.hero.home .hero-in{background:var(--brand);color:#06222E}
.hero.home .hero-in::after{content:"";position:absolute;z-index:-1;width:150px;height:150px;border-radius:50%;background:var(--pink);left:44%;bottom:-70px}
.hero.home h1,.hero.home .lede,.hero.home .hmeta{color:#06222E}
/* area panels: the area color, white text */
.hero.area .hero-in{background:var(--hero-bg);color:var(--hero-ink)}
.hero.area .hero-in::before{background:rgba(255,255,255,.14);width:320px;height:320px}
.hero.area .hero-in::after{content:"";position:absolute;z-index:-1;width:90px;height:90px;border-radius:50%;background:var(--sun);left:46%;bottom:-40px}
.hero.area h1,.hero.area .lede,.hero.area .hmeta{color:var(--hero-ink)}
.hero.area .lede a{color:inherit}
.sbox{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;background:var(--surface);border:2px solid var(--line);border-radius:22px;padding:12px;box-shadow:var(--shadow);max-width:960px;color:var(--ink)}
.hero .sbox{border-color:transparent;box-shadow:0 14px 34px rgba(6,34,46,.18)}
.sbox label.sl{flex:1 0 100%;font:700 15px/1.3 var(--head);color:var(--ink);margin:2px 6px 0}
.sbox input[type=search],.sbox input[type=text]{flex:1 1 300px;min-width:0;font:inherit;font-size:18px;padding:12px 14px;border:2px solid var(--field);border-radius:14px;background:var(--surface);color:var(--ink)}
.sbox select{flex:0 1 230px;min-width:0;font:inherit;font-size:17px;padding:11px 12px;border:2px solid var(--field);border-radius:14px;background:var(--surface);color:var(--ink)}
.sbox .btn{min-height:52px}
.sbox .hint{flex:1 0 100%;margin:2px 6px;font-size:15px;color:var(--ink-2)}
.sbox .hint button{background:none;border:0;padding:0;font:inherit;color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media (max-width:640px){.sbox select,.sbox .btn{flex:1 1 100%}.hero{padding:14px 12px 4px}.hero-in{padding:34px 22px 30px;border-radius:26px}.hero-in::before{width:150px;height:150px;right:-60px;top:-60px}}

/* ---------------- sections ---------------- */
.sec{padding:44px 0}
.sec h2{font-size:clamp(28px,3.4vw,44px);margin:0 0 10px;letter-spacing:-.03em}
.sec .sub{color:var(--ink-2);margin:0 0 24px;max-width:var(--measure)}
.grid{display:grid;gap:18px}
.g2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.card{background:var(--surface);border:2px solid var(--line-soft);border-radius:var(--r-lg);padding:24px 26px;min-width:0}
.card h3{margin:0 0 8px;font-size:22px}
.card p{margin:0 0 12px;color:var(--ink-2)}
.card.soon{border-style:dashed;border-color:var(--line);background:transparent}
.card .tag{margin-bottom:10px}
.card.link{display:block;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}
.card.link:hover{border-color:var(--ink);box-shadow:var(--shadow);transform:translateY(-2px)}
/* tinted cards (home: Shop Inclusive, State of Support, For organizations) */
.tcard{display:block;border-radius:var(--r-lg);padding:32px 34px;text-decoration:none;color:var(--ink);background:var(--accent-wash);transition:transform .15s,box-shadow .15s}
.tcard:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.tcard h3{margin:0 0 10px;font-size:30px;letter-spacing:-.02em}
.tcard p{margin:0;color:var(--ink-2)}
.tcard.pink{background:var(--pink-wash)}.tcard.mint{background:var(--mint-wash)}.tcard.sun{background:var(--sun-wash)}

/* area tiles: solid area color, white text, an arrow button */
.doors{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr))}
.door{position:relative;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:#fff;background:var(--area-solid);border:0;border-radius:var(--r-lg);padding:28px 28px 30px;min-height:240px;transition:box-shadow .15s,transform .15s}
.door:hover{box-shadow:0 14px 30px rgba(6,34,46,.22);transform:translateY(-3px)}
.door h3{margin:0;font:800 29px/1.08 var(--display);letter-spacing:-.025em;color:inherit;max-width:13em}
.door p{margin:0;color:inherit;font-size:16px;max-width:30em}
.door .dn{margin-top:auto;padding-right:66px;font:400 16px/1.4 var(--head);color:inherit}
.door .dn b{font:800 34px/1.05 var(--display);letter-spacing:-.02em;color:inherit;font-variant-numeric:tabular-nums}
.door .dn b{display:block}
.door::after{content:"";position:absolute;right:24px;bottom:26px;width:54px;height:54px;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306222E' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/24px no-repeat}
.door .door-img{display:none}
.door.all{background:var(--brand);color:#06222E;grid-column:1/-1;min-height:0}
.door.all p{max-width:44em}
.door.all::after{background-color:#06222E;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")}
@media (max-width:640px){.door{min-height:0;padding:24px 22px 26px}.door h3{font-size:25px}.door::after{width:46px;height:46px;right:18px;bottom:20px}}

/* states grid */
.stgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;list-style:none;margin:0;padding:0}
.stgrid a{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:10px 14px;border:2px solid var(--line-soft);border-radius:14px;background:var(--surface);text-decoration:none;color:var(--ink);font:700 16px var(--head)}
.stgrid a:hover{border-color:var(--ink);background:var(--sunk)}
.stgrid a span{color:var(--ink-3);font-weight:400;font-size:14px;font-variant-numeric:tabular-nums}

/* tiles and chips */
.tiles{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));list-style:none;margin:0;padding:0}
.tiles a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:52px;padding:12px 16px;border:2px solid var(--line-soft);border-left:8px solid var(--area-solid);border-radius:14px;background:var(--surface);text-decoration:none;color:var(--ink);font:700 16px/1.3 var(--head)}
.tiles a:hover{border-color:var(--area-solid);background:var(--area-wash)}
.tiles a span{color:var(--ink-3);font:400 14px var(--head);font-variant-numeric:tabular-nums;white-space:nowrap}
.pills{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.pills a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border-radius:12px;border:2px solid var(--area-solid);color:var(--ink);text-decoration:none;font:700 15.5px var(--head);background:var(--surface)}
.pills a:hover{background:var(--area-wash)}
.kpis{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));list-style:none;margin:0;padding:0}
.kpis li{background:var(--accent-wash);border-radius:18px;padding:16px 18px}
.kpis b{display:block;font:800 30px/1.1 var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kpis span{font-size:15px;color:var(--ink-2)}

/* tags on cards */
.tag{display:inline-flex;align-items:center;gap:5px;font:700 13.5px/1.2 var(--head);padding:4px 10px;border-radius:999px;border:1px solid transparent;color:var(--ink-2);background:var(--sunk);white-space:nowrap}
.tag.t-reg{background:var(--lv-silver-wash);color:var(--ink-2);border-color:var(--line)}
.tag.t-prof{background:var(--accent-wash);color:var(--accent-deep)}
.tag.t-sv{background:var(--brand);color:#06222E}
.tag.t-nat{background:var(--lv-plat-wash);color:var(--lv-plat)}
.tag.t-ind{background:var(--warn-wash);color:var(--warn)}
.tag.t-unver{background:var(--warn-wash);color:var(--warn)}
.tag.t-closed{background:var(--stop-wash);color:var(--stop)}
.tag.t-soon{background:var(--sun-wash);color:var(--warn)}
.adots{display:inline-flex;gap:6px;flex-wrap:wrap}
.adot-l{display:inline-flex;align-items:center;gap:5px;font:700 13.5px var(--head);color:var(--ink-2);text-decoration:none}
.adot-l i{width:11px;height:11px;border-radius:50%;display:inline-block}

/* ---------------- search layout ---------------- */
.shead{padding:18px 20px 0}
.shead-in{position:relative;overflow:hidden;isolation:isolate;max-width:var(--pagemax);margin:0 auto;padding:30px 34px 28px;border-radius:var(--r-xl);background:var(--hero-bg);color:var(--hero-ink)}
.shead-in::before{content:"";position:absolute;z-index:-1;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.16);right:-60px;top:-80px}
.shead h1{font-size:clamp(28px,3.8vw,44px);margin:0 0 8px;color:inherit;letter-spacing:-.03em}
.shead .lede{font-size:17.5px;margin:0 0 18px;color:inherit}
.shead .kick{display:inline-block;background:#fff;color:#06222E;border-radius:999px;padding:5px 14px;font-size:14.5px}
.shead .sbox{border-color:transparent}
@media (max-width:640px){.shead{padding:12px 12px 0}.shead-in{padding:24px 18px;border-radius:24px}}
.slayout{max-width:var(--pagemax);margin:0 auto;padding:24px 20px 60px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;align-items:start}
.filters{background:var(--surface);border:2px solid var(--line-soft);border-radius:22px;padding:6px 14px 14px;position:sticky;top:10px;max-height:calc(100vh - 20px);overflow:auto}
.filters h2{font-size:20px;margin:12px 0 4px;display:flex;justify-content:space-between;align-items:center}
.filters h2 button{font:600 13.5px var(--head);background:none;border:0;color:var(--accent-deep);text-decoration:underline;cursor:pointer;padding:4px}
.fg{border:0;border-top:1px solid var(--line-soft);margin:0;padding:12px 0 8px}
.fg legend{font:800 14.5px/1.3 var(--head);color:var(--ink);padding:0;margin:0 0 6px;float:left;width:100%}
.fg legend+*{clear:both}
.fg .fhint{font-size:13px;color:var(--ink-3);margin:2px 0 6px}
.opt{display:flex;align-items:flex-start;gap:9px;padding:5px 2px;font-size:14.5px;line-height:1.35;cursor:pointer;border-radius:6px}
.opt:hover{background:var(--sunk)}
.opt input{width:18px;height:18px;margin:1px 0 0;flex:none;accent-color:var(--area)}
.opt .lbl{flex:1;min-width:0}
.opt .n{color:var(--ink-3);font-size:12.5px;font-variant-numeric:tabular-nums;margin-left:auto;padding-left:6px}
.opt.is-zero .lbl,.opt.is-zero .n{color:var(--ink-3)}
.opt i.sw{width:11px;height:11px;border-radius:50%;flex:none;margin-top:4px}
.fg .more{background:none;border:0;padding:6px 2px;color:var(--accent-deep);font:600 13.5px var(--head);text-decoration:underline;cursor:pointer}
.fg select{width:100%;font:inherit;font-size:15px;padding:9px 10px;border:1.5px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}
.fg .ctyst{font:700 12.5px var(--head);color:var(--ink-3);margin:8px 0 2px;text-transform:uppercase;letter-spacing:.04em}
details.morefil{border-top:1px solid var(--line-soft);margin-top:4px}
details.morefil>summary{cursor:pointer;font:800 14.5px var(--head);padding:12px 0;color:var(--accent-deep)}
.ftoggle{display:none}
.results{min-width:0}
.rbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 12px}
.rcount{font:800 22px var(--display);letter-spacing:-.015em;margin:0}
.rcount span{font-weight:500;color:var(--ink-3);font-size:15px}
.rbar .sp{flex:1}
.achips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 12px;padding:0}
.achips button{display:inline-flex;align-items:center;gap:6px;font:700 14px var(--head);min-height:36px;padding:5px 12px;border-radius:999px;border:2px solid var(--area-solid);background:var(--area-wash);color:var(--ink);cursor:pointer}
.achips button::after{content:"\00d7";font-size:16px;line-height:1;color:var(--ink-3)}
.regbox{display:flex;gap:10px;align-items:flex-start;background:var(--sunk);border:2px solid var(--line-soft);border-radius:16px;padding:12px 14px;margin:0 0 12px;font-size:14.5px}
.regbox input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--area)}
.regbox b{display:block}
.regbox .muted{font-size:13.5px}
.loadnote{background:var(--accent-wash);border-radius:14px;padding:10px 14px;margin:0 0 12px;font-size:14.5px}
.thinnote{background:var(--sun-wash);border-radius:16px;padding:12px 16px;margin:0 0 12px}
.thinnote p{margin:0 0 8px}
.empty{background:var(--sunk);border:2px dashed var(--line);border-radius:22px;padding:26px;text-align:center}
.empty h2{font-size:20px;margin:0 0 6px}
.loadmore{display:flex;justify-content:center;margin:16px 0}
@media (max-width:900px){
  .slayout{grid-template-columns:1fr;padding:14px 16px 50px}
  .filters{position:static;max-height:none;display:none}
  .filters.open{display:block}
  .ftoggle{display:inline-flex}
}

/* sponsor band */
.spband{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;background:var(--surface);border:2px solid var(--line-soft);border-radius:18px;padding:10px 14px;margin:0 0 12px}
.sp-badge{font:800 11px/1 var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--line);border-radius:999px;padding:4px 8px}
.sp-grp{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sp-k{margin:0;font:700 13px var(--head);color:var(--ink-3)}
.sp-logos{display:flex;gap:10px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.sp-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--line-soft);border-radius:8px;padding:4px 10px;min-height:44px}
.sp-mark{max-height:36px;width:auto}
.sp-name{font:700 14px var(--head);color:#101820}
.sp-note{flex:1 0 100%;margin:0;font-size:12.5px;color:var(--ink-3)}

/* ---------------- listing cards ---------------- */
.list{display:grid;gap:12px}
.org{background:var(--surface);border:2px solid var(--line-soft);border-left:8px solid var(--area-c,var(--line));border-radius:18px;padding:18px 20px 16px;min-width:0}
.org.is-reg{border-left-color:var(--line)}
.org.is-sv{border-color:var(--brand);border-left-color:var(--brand)}
.org-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 4px}
.org h2{font-size:22px;margin:0;flex:1 1 100%;letter-spacing:-.015em}
.org h2 a{color:var(--ink);text-decoration:none}
.org h2 a:hover{text-decoration:underline}
.org .alt{margin:0;font-size:13.5px;color:var(--ink-3)}
.org .kind{margin:4px 0 0;font-size:13.5px;color:var(--ink-3)}
.org .blurb{margin:8px 0;font-size:15px;color:var(--ink-2)}
.org .place{margin:6px 0;font-size:14.5px;color:var(--ink-2)}
.org .act{display:flex;gap:8px;margin:6px 0;font-size:13.5px;color:var(--ok)}
.org .act.none{color:var(--ink-3)}
.org .act-dot{width:9px;height:9px;border-radius:50%;background:currentColor;flex:none;margin-top:6px}
.contact{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0 6px}
.cphone{font:700 15px var(--head);margin-right:4px;font-variant-numeric:tabular-nums}
.nocontact{font-size:13.5px;color:var(--ink-3);margin:8px 0}
.chiprow{display:flex;gap:8px;align-items:baseline;margin:6px 0;flex-wrap:wrap}
.chiprow .k{font:700 12.5px var(--head);color:var(--ink-3);min-width:64px}
.chips{display:flex;flex-wrap:wrap;gap:5px;list-style:none;margin:0;padding:0}
.chip{font-size:14px;padding:3px 10px;border-radius:999px;background:var(--sunk);color:var(--ink-2)}
.chip.pay{background:var(--ok-wash);color:var(--ok)}
.org details{margin-top:8px;border-top:1px solid var(--line-soft);padding-top:6px}
.org summary{cursor:pointer;font:700 14px var(--head);color:var(--accent-deep);padding:4px 0}
.dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 14px;margin:8px 0;font-size:14px}
.dl dt{font-weight:700;color:var(--ink-3)}
.dl dd{margin:0;overflow-wrap:anywhere}
.dl dd.mono{font-variant-numeric:tabular-nums}
.org-fix{display:flex;flex-wrap:wrap;gap:6px 16px;margin:8px 0 0;font-size:14px}
.svb{display:inline-flex;align-items:center;gap:5px;font:700 13.5px var(--head);color:#06222E;background:#BFE6F7;border-radius:999px;padding:3px 9px 3px 4px}
.svs{width:18px;height:18px}.svs-bg{fill:#29AAE3}.svs-ring{fill:none;stroke:#fff;stroke-width:1.3}.svs-ck{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.lic{margin:8px 0;font-size:14.5px}.lic p{margin:0 0 4px}.lic-src{font-size:12.5px;color:var(--ink-3)}
.col-dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:3px 12px;font-size:14px;margin:8px 0}
.col-dl dt{font-weight:700;color:var(--ink-3)}.col-dl dd{margin:0}
.col-note{font-size:12.5px;color:var(--ink-3)}

/* toast */
.toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:var(--ink);color:var(--ground);padding:12px 18px;border-radius:12px;max-width:min(92vw,560px);z-index:90;font-size:15px;box-shadow:var(--shadow)}
.toast.bad{background:var(--stop);color:#fff}

/* ---------------- Ask ---------------- */
.ask-out{margin:14px 0 0;background:var(--surface);color:var(--ink);border:2px solid var(--line-soft);border-radius:22px;padding:16px 18px;max-width:960px}
.ask-q{font:600 13.5px/1.4 var(--head);color:var(--ink-3);margin:0 0 8px}
.ask-a p{margin:0 0 10px;line-height:1.6}
.ask-a ul{margin:0 0 10px;padding-left:20px}
.ask-err{color:var(--bad);margin:0}
.ask-act{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.ask-d{margin:12px 0 0;font-size:14px}.ask-d summary{cursor:pointer;font-weight:700;color:var(--accent-deep)}
.ask-t{overflow-x:auto;margin:8px 0}.ask-t table{border-collapse:collapse;font-size:13.5px}
.ask-t caption{text-align:left;font-weight:700;padding:0 0 4px}
.ask-t th,.ask-t td{border-bottom:1px solid var(--line-soft);padding:4px 12px 4px 0;text-align:left;vertical-align:top}
.ask-note{font-size:12.5px;color:var(--ink-3);margin:10px 0 0}
.ask-read{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:6px 0 10px;padding:0}
.ask-read li{font-size:13.5px;padding:3px 10px;border-radius:999px;background:var(--area-wash);color:var(--ink)}
.ask-read li b{color:var(--ink-3);font-weight:600}
.ask-x{float:right;background:none;border:0;font:inherit;font-size:13.5px;color:var(--ink-3);cursor:pointer;text-decoration:underline}

/* ---------------- profile page ---------------- */
main.prof{max-width:1000px;margin:0 auto;padding:30px 20px 60px}
.prof .crumbs{font-size:14px;margin:0 0 12px}
.prof h1{font-size:clamp(30px,4.2vw,48px);margin:0 0 10px;letter-spacing:-.03em}
.prof .ptags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.prof .pgrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}
.prof aside .card{margin:0 0 14px}
.prof aside h2,.prof .card h2{font-size:20px;margin:0 0 10px}
@media (max-width:820px){.prof .pgrid{grid-template-columns:1fr}}

/* key contacts (Resources and data) */
.kgroup{margin:0 0 18px}
.kgroup h3{font-size:17px;margin:0 0 4px}
.kgroup .kdesc{margin:0 0 8px;color:var(--ink-2);font-size:14.5px}
.klist{list-style:none;margin:0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.klist li{background:var(--surface);border:2px solid var(--line-soft);border-radius:16px;padding:10px 12px;font-size:14.5px;min-width:0}
.klist li a.kn{font-weight:700;color:var(--ink);text-decoration:none}
.klist li a.kn:hover{text-decoration:underline}
.klist .km{color:var(--ink-3);font-size:13.5px;overflow-wrap:anywhere}
.grade{display:inline-grid;place-items:center;min-width:64px;height:64px;padding:0 10px;border-radius:50%;background:var(--sun);font:800 30px var(--display);color:#06222E}
.pgrades{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px;list-style:none;margin:10px 0 0;padding:0}
.pgrades li{display:flex;justify-content:space-between;gap:8px;font-size:14px;border:1px solid var(--line-soft);border-radius:8px;padding:6px 10px;background:var(--surface)}
.pgrades b{font-variant-numeric:tabular-nums}

/* table */
.tbl{width:100%;border-collapse:collapse;font-size:14.5px;background:var(--surface)}
.tbl th,.tbl td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line-soft);vertical-align:top}
.tbl th{font:700 14px var(--head);color:var(--ink-3);background:var(--sunk);position:sticky;top:0}
.tbl td.n{text-align:right;font-variant-numeric:tabular-nums}
.tblwrap{overflow-x:auto;border:2px solid var(--line-soft);border-radius:18px}

/* Family Journey component */
.journey{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;background:var(--sun-wash);border:0;border-radius:var(--r-lg);padding:22px 24px}
.journey h3{margin:0 0 6px;font-size:22px}
.journey p{margin:0;color:var(--ink-2)}
.journey ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:10px 0 0;padding:0}
.journey ol li a{display:inline-flex;padding:6px 12px;border-radius:12px;background:var(--surface);color:var(--ink);text-decoration:none;font:700 14.5px var(--head)}
@media (max-width:640px){.journey{grid-template-columns:1fr}}

/* trust levels */
.tiers{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.tiers .card{border:0;background:var(--accent-wash)}
.tiers .card.prof{background:var(--mint-wash)}
.tiers .card.reg{background:var(--sunk);border:2px dashed var(--line)}
/* questions that open (home, How do I know a listing is right?) */
.faq{display:grid;gap:12px;max-width:920px}
.faq details{background:var(--accent-wash);border-radius:20px;padding:0 24px}
.faq details.lv-prof{background:var(--mint-wash)}
.faq details.lv-reg{background:var(--sunk)}
.faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:14px;min-height:64px;padding:16px 0;font:700 21px/1.25 var(--display);letter-spacing:-.015em;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .tag{font-family:var(--head);letter-spacing:0}
.faq summary::after{content:"+";margin-left:auto;flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--surface);color:var(--ink);font:700 22px/1 var(--head)}
.faq details[open] summary::after{content:"\2212"}
.faq details p{margin:0 0 20px;color:var(--ink-2);max-width:var(--measure)}

/* ---------------- footer ---------------- */
.foot{background:#06222E;color:#CFE3EC;margin-top:48px}
.foot a{color:#FFFFFF}
.foot a:focus-visible{outline-color:#FFFFFF}
.foot-in{max-width:var(--pagemax);margin:0 auto;padding:52px 20px 28px;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}
.foot h2{font:700 17px var(--head);letter-spacing:0;color:#fff;margin:0 0 12px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:16px}
.foot p{font-size:16px;margin:0 0 12px}
.foot .fbrand{display:flex;align-items:center;gap:12px;color:#fff;font:800 26px var(--display);letter-spacing:-.025em;text-decoration:none;margin:0 0 12px}
.foot .fbrand svg{width:44px;height:44px}
.legalbar{border-top:1px solid #1B4252}
.legalbar-in{max-width:var(--pagemax);margin:0 auto;padding:16px 20px 26px;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14.5px;color:#A9C4D0}
@media (max-width:860px){.foot-in{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-in{grid-template-columns:1fr}}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.gbar,.abar,.filters,.foot,.sbox,.ask-out,.spband{display:none!important}.slayout{display:block}}

/* ---------- photos ---------- */
.hero.ph .hero-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:center}
.hero.ph h1{max-width:16ch}
/* hero photos sit in the signature blob: round on three corners, tight on one */
.hfig{margin:0;position:relative;justify-self:center;width:100%;max-width:470px;aspect-ratio:1/1;border-radius:50% 50% 50% 22px;overflow:hidden;border:8px solid #fff;background:var(--sunk)}
.hfig img,.pimg img,.door-img img,.pband img,.jcard img{display:block;width:100%;height:100%;object-fit:cover}
.hstat{position:absolute;right:max(0px,calc(50% - 250px));bottom:28px;margin:0;background:#06222E;color:#fff;border-radius:20px;padding:14px 18px;font:400 16px/1.3 var(--head);box-shadow:0 10px 24px rgba(6,34,46,.25)}
.hstat b{display:block;font:800 30px/1.05 var(--display);letter-spacing:-.02em}
.hfigw{position:relative;display:grid}
@media (max-width:860px){.hero.ph .hero-in{grid-template-columns:1fr;gap:22px}.hfig,.hfigw{order:-1}.hfig{max-width:none;aspect-ratio:16/9;border-radius:24px;border-width:6px}.hstat{right:12px;bottom:12px;padding:10px 14px}.hstat b{font-size:24px}}
.shead.ph .shead-in{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;align-items:center}
.shead.ph .pimg{margin:0;justify-self:center;width:100%;max-width:280px;aspect-ratio:1/1;border-radius:50% 50% 50% 18px;overflow:hidden;background:var(--sunk);border:6px solid #fff}
@media (max-width:900px){.shead.ph .shead-in{grid-template-columns:1fr}.shead.ph .pimg{display:none}}
.pband{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:0;background:var(--area-wash);border:0;border-radius:var(--r-xl);overflow:hidden;margin:6px 0}
.pband figure{margin:0;min-height:280px}
.pband .bt{padding:34px 36px;display:flex;flex-direction:column;justify-content:center}
.pband .bt h1,.pband .bt h2,.pband .bt h3{margin:0 0 10px}
.pband .bt p{color:var(--ink-2);margin:0 0 14px}
.pband .bt .kick{display:inline-block;align-self:flex-start;background:var(--surface);color:var(--ink);border-radius:999px;padding:5px 14px}
.pband.flip figure{order:2}
@media (max-width:760px){.pband{grid-template-columns:1fr;border-radius:26px}.pband figure{min-height:200px;max-height:240px}.pband.flip figure{order:0}.pband .bt{padding:24px 22px}}
.photorow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 6px}
.photorow figure{margin:0;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3;background:var(--sunk)}
.photorow img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:640px){.photorow{grid-template-columns:1fr 1fr}.photorow figure:nth-child(3){display:none}}
.card.pc{padding:0;overflow:hidden}
.card.pc .pimg{margin:0;height:180px;overflow:hidden;background:var(--sunk)}
.card.pc .pimg img{width:100%;height:100%;object-fit:cover;display:block}
.card.pc .ct{padding:20px 24px 22px}

/* ---------- maps ---------- */
.usmap{position:relative;background:var(--sunk);border:0;border-radius:var(--r-lg);padding:20px 20px 14px;margin:0 0 20px}
.usmap svg{display:block;width:100%;height:auto}
.usmap path{fill:var(--area-solid,var(--brand));stroke:var(--sunk);stroke-width:.8;transition:fill-opacity .15s}
.usmap a:hover path,.usmap a:focus path{fill-opacity:1!important;stroke:var(--ink);stroke-width:1.4}
.usmap a:focus{outline:none}
.usmap a:focus-visible path{stroke:var(--focus);stroke-width:2.5}
.usmap text{font:700 10px var(--head);fill:var(--ink);pointer-events:none;paint-order:stroke;stroke:var(--sunk);stroke-width:2.5px}
.usmap .q0{fill-opacity:.16}.usmap .q1{fill-opacity:.32}.usmap .q2{fill-opacity:.5}.usmap .q3{fill-opacity:.7}.usmap .q4{fill-opacity:.9}
.mlegend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font:400 15px var(--head);color:var(--ink-2);margin:6px 4px 0}
.mlegend .ramp{display:inline-flex;gap:2px;vertical-align:middle}
.mlegend .ramp i{width:24px;height:12px;background:var(--area-solid,var(--brand));border-radius:3px}
.mtip{position:absolute;pointer-events:none;background:var(--ink);color:var(--surface);font:600 13px/1.3 var(--head);padding:6px 9px;border-radius:8px;white-space:nowrap;transform:translate(-50%,-120%);z-index:3}
.vtabs{display:inline-flex;border:2px solid var(--ink);border-radius:14px;overflow:hidden;background:var(--surface)}
.vtabs button{font:700 15px var(--head);border:0;background:transparent;color:var(--ink);min-height:44px;padding:8px 16px;cursor:pointer}
.vtabs button[aria-pressed="true"]{background:var(--ink);color:var(--ground)}
.smap{background:var(--surface);border:2px solid var(--line-soft);border-radius:22px;padding:12px;margin:0 0 14px}
.smap svg{display:block;width:100%;height:auto;max-height:70vh;touch-action:manipulation}
.smap .cty{fill:var(--sunk);stroke:var(--line);stroke-width:1.2;cursor:pointer}
.smap .cty.has{fill:var(--area-wash,var(--accent-wash))}
.smap .cty:hover{fill:var(--area-wash,var(--accent-wash));stroke:var(--ink-3)}
.smap .cty.on{fill:var(--area-solid,var(--brand));fill-opacity:.35;stroke:var(--area-ink,var(--accent-deep));stroke-width:2.2}
.smap .outline{fill:none;stroke:var(--ink-3);stroke-width:2}
/* Strokes stay the same on screen when the map zooms to picked counties. */
.smap .cty,.smap .outline,.smap .dot{vector-effect:non-scaling-stroke}
.smap .dot{fill:var(--area-solid,var(--brand-deep));fill-opacity:.78;stroke:var(--surface);stroke-width:1.5;cursor:pointer}
.smap .dot.reg{fill:var(--ink-3);fill-opacity:.55}
.smap .dot:hover,.smap .dot.sel{fill-opacity:1;stroke:var(--ink);stroke-width:2}
.smap .mhead{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;margin:0 4px 8px}
.smap .mhead h3{margin:0;font-size:20px}
.smap .mhead p{margin:0;color:var(--ink-3);font-size:14px}
.mpick{display:grid;gap:10px}
.mpanel{margin:0 0 14px}
.mpanel h3{font-size:17px;margin:0 0 8px}

/* ---------- Family Journey surfaces: the sun band ---------- */
.jband{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:8px;background:var(--sun);color:#06222E;border:0;border-radius:var(--r-xl);overflow:hidden;padding:12px}
.jband figure{margin:0;min-height:320px;order:2;border-radius:var(--r-lg)}
.jband .bt{padding:32px 30px 32px 36px}
.jband h2,.jband h3{margin:0 0 12px;color:#06222E;font-size:clamp(30px,3.6vw,46px);letter-spacing:-.03em;line-height:1.04}
.jband p{color:#06222E}
.jband .kick{display:inline-block;background:#fff;color:#06222E!important;border-radius:999px;padding:5px 14px}
.jband a:not(.btn){color:#06222E}
.jband .btn{border-color:#06222E;color:#06222E;background:transparent}
.jband .btn.area{background:#06222E;border-color:#06222E;color:#fff}
.jband .btn:focus-visible{box-shadow:0 0 0 7px #fff}
.jstages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;list-style:none;padding:0;margin:16px 0 22px;counter-reset:js}
.jstages a{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border-radius:14px;background:#fff;color:#06222E;text-decoration:none;font:700 15px/1.2 var(--head);counter-increment:js}
.jstages a::before{content:counter(js);flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#06222E;color:#fff;font-size:13px}
.jstages a:hover{outline:2px solid #06222E}
@media (max-width:860px){.jband{grid-template-columns:1fr;border-radius:26px}.jband figure{min-height:200px;max-height:260px;order:0}.jband .bt{padding:22px 16px 18px}.jstages{grid-template-columns:repeat(2,minmax(0,1fr))}}
.jbanner{display:flex;gap:14px;align-items:center;background:var(--sun-wash);border:0;border-radius:20px;padding:14px 18px;margin:0 0 14px}
.jbanner p{margin:0;flex:1;color:var(--ink)}
.jbanner img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:none}
@media (max-width:520px){.jbanner img{display:none}}
.jband figure,.pband figure{position:relative;overflow:hidden;background:var(--sunk)}
.jband figure img,.pband figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* ---------- richer profiles ---------- */
.prof .claim{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;background:var(--accent-wash);border:0;border-radius:20px;padding:12px 16px;margin:0 0 12px}
.prof .claim p{margin:0;flex:1 1 320px}
.prof .pacts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.prof .card.ask ul{margin:0 0 10px;padding-left:20px;display:grid;gap:6px}
.prof .pmap svg{display:block;width:100%;height:auto}
.prof .pmap .cty{fill:var(--sunk);stroke:var(--line);stroke-width:1.5}
.prof .pmap .cty.on{fill:var(--area-wash,var(--accent-wash));stroke:var(--area,var(--accent));stroke-width:3}
.prof .pmap .outline{fill:none;stroke:var(--ink-3);stroke-width:2.5}
.prof .pmap .pin{fill:var(--area,var(--accent));fill-opacity:.25}
.prof .pmap .pin-c{fill:var(--area,var(--accent));stroke:var(--surface);stroke-width:2}
.nearby{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:10px}
.nearby li{display:flex;flex-direction:column;gap:2px;border:2px solid var(--line-soft);border-radius:16px;padding:10px 12px;background:var(--surface)}
.nearby a{font:700 15px/1.3 var(--head)}
.nearby span{font-size:13.5px;color:var(--ink-3)}
.nearby small{font-size:13px;color:var(--ink-2)}
.prof .card{margin:0 0 14px}
@media print{.prof .claim,.prof .pacts,.prof .pmap,#spband{display:none!important}.prof .pgrid{display:block}}
/* How to get enrolled (2026-10-09) */
.en-card{background:var(--surface);border:2px solid var(--line-soft);border-radius:18px;padding:0 18px;margin:0 0 10px}
.en-card>summary{cursor:pointer;padding:14px 0;min-height:56px;list-style:none;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font:700 17px/1.35 var(--head)}
.en-card>summary::-webkit-details-marker{display:none}
.en-card>summary::before{content:"+";display:inline-flex;width:28px;height:28px;border-radius:50%;border:2px solid var(--ink);align-items:center;justify-content:center;font-weight:700;color:var(--ink-3);flex:none}
.en-card[open]>summary::before{content:"\2212"}
.en-card[open]{padding-bottom:12px}
.en-card p{margin:6px 0}.en-card ol,.en-card ul{margin:4px 0 8px;padding-left:22px}.en-card li{margin:3px 0}
.en-med{border-color:transparent;background:var(--mint-wash)}
.en-tag{font:700 12px/1 var(--head);text-transform:uppercase;letter-spacing:.04em;background:var(--ok);color:var(--surface);padding:5px 8px;border-radius:999px}
.en-k{font:700 13px/1.3 var(--head);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin:12px 0 4px!important;display:block}
.en-how{font-weight:600}
.en-wl{font:600 12px/1.2 var(--head);padding:4px 8px;border-radius:999px;background:var(--sunk);color:var(--ink-2)}
.en-wl-yes{background:var(--warn-wash);color:var(--warn)}.en-wl-no{background:var(--ok-wash);color:var(--ok)}
.en-off{margin:10px 0;padding:10px 12px;border:1px dashed var(--line);border-radius:10px}
.en-off select{min-height:40px;max-width:100%;margin:4px 0 6px;font:inherit;padding:6px 10px;border-radius:8px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink)}
.en-o{padding:6px 0;border-top:1px solid var(--line-soft)}.en-o:first-child{border-top:0}
.en-links{font-size:15px}.en-note{font-size:14px;color:var(--ink-3)}
.en-h{font-size:20px;margin:0 0 8px}
.en-box{margin:0 0 16px}
.en-group h3{margin:22px 0 10px;font-size:18px}
.en-prof{margin:10px 0;padding:10px 12px;border-radius:10px;background:var(--ok-wash)}
.en-state{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 14px}
.en-state select{min-height:44px;font:inherit;padding:8px 12px;border-radius:8px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);max-width:100%}

/* 9 Oct 2026: profile hours, languages, and how to get started */
table.hours{border-collapse:collapse;width:100%;font-size:14.5px;margin:4px 0 8px}
table.hours th{text-align:left;font-weight:700;color:var(--ink-3);padding:3px 14px 3px 0;white-space:nowrap;vertical-align:top}
table.hours td{padding:3px 0;overflow-wrap:anywhere}
.steps{margin:6px 0 10px;padding-left:22px}
.steps li{margin:0 0 6px;line-height:1.5}
.hours-missing{font-size:13.5px;line-height:1.5;color:var(--ink-3);margin:10px 0 0}

/* County pages and the Funding Atlas (2026-10-09) */
.cdet>summary{list-style:none;display:inline-flex;margin:0 0 10px}
.cdet>summary::-webkit-details-marker{display:none}
.ctgrid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.ctgrid a{font-weight:600;font-size:14.5px}
.ctiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:8px}
.ctiles a b{font-variant-numeric:tabular-nums;color:var(--ink-2)}
.fa .fstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:12px 0 16px}
.fa .fstat{display:flex;flex-direction:column;gap:2px;background:var(--accent-wash);border:0;border-radius:18px;padding:10px 12px;min-width:0}
.fa .fstat .l{font:700 12.5px var(--head);color:var(--ink-3);letter-spacing:.02em}
.fa .fstat .v{font:800 26px var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink)}
.fa .fstat .d{font-size:13px;color:var(--ink-2);line-height:1.4}
.ftags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ftag{font:600 13px var(--head);padding:4px 10px;border-radius:999px;background:var(--area-wash);color:var(--ink)}
.fpill,.fa .pill{display:inline-block;font:700 12.5px var(--head);padding:2px 9px;border-radius:999px;white-space:nowrap;background:var(--sunk);color:var(--ink-2)}
.f-ok,.fa .pill.good{background:var(--ok-wash);color:var(--ok)}
.f-warn,.fa .pill.mid,.fa .pill.warn{background:var(--warn-wash);color:var(--warn)}
.f-stop,.fa .pill.bad{background:var(--stop-wash);color:var(--stop)}
.fa .pill.unk{font-style:italic;font-weight:600}
.fa .comp{background:var(--warn-wash);border-left:4px solid var(--warn);padding:10px 12px;border-radius:0 8px 8px 0;margin:0 0 12px;max-width:var(--measure)}
.fa .fa-bd{min-width:0;overflow-wrap:anywhere}
.fa .fa-bd th{overflow-wrap:normal}
.fa .fa-bd h3{font-size:20px;margin:22px 0 6px}
.fa .fa-bd h4{font:800 14px var(--head);margin:16px 0 4px;color:var(--ink-2)}
.fa .fa-bd p,.fa .fa-bd li{max-width:var(--measure)}
.fa .fa-bd .tw,.fa .fa-bd .tblwrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;margin:8px 0 14px}
.fa .fa-bd table{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface)}
.fa .fa-bd > table,.fa .fa-bd div:not(.tw):not(.tblwrap) > table{display:block;overflow-x:auto;max-width:100%}
.fa .fa-bd th,.fa .fa-bd td{text-align:left;padding:7px 9px;border-bottom:1px solid var(--line-soft);vertical-align:top}
.fa .fa-bd th{font:800 12.5px var(--head);color:var(--ink-3);background:var(--sunk)}
.fa .fa-bd .na{color:var(--ink-3);font-style:italic}
.fa .fa-bd .sep{color:var(--ink-3)}
.fa .fa-bd .np{font:700 11px var(--head);text-transform:uppercase;padding:1px 6px;border-radius:4px;background:var(--sunk);color:var(--ink-3);margin-right:4px}
.fa .fa-bd .sublbl{font-size:13px;color:var(--ink-2)}
.fa .fa-bd .gsheet .lab{font:700 12px var(--head);color:var(--ink-3);margin-right:6px}
.fa .fa-bd ul,.fa .fa-bd ol{padding-left:20px}
.fmeth{margin:12px 0}
.fmeth>summary{list-style:none;display:inline-flex}
.fmeth>summary::-webkit-details-marker{display:none}
.fmeth[open]>summary{margin-bottom:10px}
.fagency{background:var(--surface);border:2px solid var(--line-soft);border-left:8px solid var(--area-solid);border-radius:20px;padding:16px 18px;margin:0 0 14px;min-width:0}
.fagency h3{margin:0}
.fa .tbl .km{font-size:13px;color:var(--ink-3)}
@media (max-width:640px){.fa .fstat .v{font-size:18px}.ctiles{grid-template-columns:1fr}}

.en-pv{background:var(--warn-wash);border-left:4px solid var(--warn);padding:8px 12px;border-radius:0 8px 8px 0;font-size:14.5px}

/* ---------------- clinician choice (Mental Health and Physical, Oct 2026) ---------------- */
.whoseg{border:2px solid var(--line-soft);background:var(--sunk);border-radius:16px;padding:12px 14px 10px;margin:0 0 14px;min-width:0}
.whoseg legend{font:700 15px/1.2 var(--head);color:var(--ink);padding:0 4px}
.whoseg .seg{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}
.whoseg label{position:relative;flex:1 1 auto;display:flex}
.whoseg input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.whoseg label span{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:8px 14px;border:2px solid var(--ink);border-radius:12px;background:var(--surface);color:var(--ink);font:700 15px/1.25 var(--head);cursor:pointer}
.whoseg label:hover span{background:var(--area-wash)}
.whoseg input:checked+span{background:var(--area-solid);border-color:var(--area-solid);color:#fff}
.whoseg input:checked+span::before{content:"";display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:currentColor}
.whoseg input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 7px var(--sun)}
.whoseg p{margin:0;font-size:14px}
@media (max-width:560px){.whoseg label{flex-basis:100%}}
.cldoor{padding-top:28px}
.cldoor-in{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px 32px;align-items:center;background:var(--area-wash);border-radius:var(--r-lg);padding:28px 30px}
.cldoor h2{margin:0 0 10px;font-size:clamp(24px,3vw,32px)}
.cldoor p{margin:0 0 8px;color:var(--ink-2)}
.cldoor .muted{color:var(--ink-3);font-size:15px;margin:0}
.cl-form{display:flex;flex-direction:column;gap:8px}
.cl-form label{font-weight:700}
.cl-form select{font:400 17px var(--head);min-height:48px;padding:8px 12px;border:2px solid var(--field);border-radius:12px;background:var(--surface);color:var(--ink)}
@media (max-width:760px){.cldoor-in{grid-template-columns:1fr;padding:22px 18px}}

/* ---------------- Sponsors (13 Oct 2026): top bar link and the native /sponsors/ page ---------------- */
.gnav a.gspon{gap:8px;background:var(--pink-wash);color:var(--ink)}
.gnav a.gspon:hover{background:var(--pink);color:#06222E}
.gnav a.gspon:hover .gi path{fill:#fff}
.gnav a.gspon[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--pink)}
.gnav .gi{flex:none;width:22px;height:22px}
@media (max-width:980px){.gnav a.gspon{background:transparent}}
.spx-hero .hero-in{background:var(--pink-wash)}
.spx-hero .hero-in::before{background:var(--pink)}
.spx-h{font-size:24px;margin:28px 0 4px}
.spx-note{color:var(--ink-2);margin:0 0 14px;max-width:var(--measure)}
.spwall{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.spc{min-width:0}
.spc-a{display:flex;flex-direction:column;gap:6px;height:100%;padding:14px 14px 18px;border:2px solid var(--line-soft);border-radius:var(--r-lg);background:var(--surface);color:var(--ink);text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}
.spc-a:hover{border-color:var(--brand);box-shadow:var(--shadow);transform:translateY(-2px)}
.spc-logo{display:flex;align-items:center;justify-content:center;height:130px;margin:0 0 8px;padding:12px;border-radius:14px;background:#fff;border:1px solid var(--line-soft)}
.spc-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.spc-mono{background:var(--accent-wash)}
.spc-mono b{font:800 40px/1 var(--display);color:var(--ink);letter-spacing:-.02em}
.spc-name{font:800 20px/1.2 var(--display);letter-spacing:-.015em}
.spc-tier{font-size:15px;color:var(--ink-2)}
.spc-tag{font-size:15px;color:var(--ink-2);font-style:italic}
.spc-open .spc-a{border-style:dashed;border-color:var(--line);background:transparent}
.spc-open .spc-mono{background:transparent;border-style:dashed;border-color:var(--line)}
.spc-open .spc-mono b{color:var(--ink-3)}
.spx-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.spx-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 28px;background:var(--sun);color:#06222E;border-radius:var(--r-xl);padding:32px 36px}
.spx-cta h2{font-size:clamp(26px,3vw,38px);margin:0 0 8px;color:#06222E}
.spx-cta p{margin:0;color:#06222E}
.spx-cta a:not(.btn){color:#06222E;font-weight:700}
.spx-cta .btn{border-color:#06222E;background:#fff;color:#06222E}
@media (max-width:600px){.spx-cta{padding:24px 22px}.spc-logo{height:110px}}
/* On phones the Sponsors link stays visible beside the Menu button. */
.gspon-m{display:none}
@media (max-width:980px){
  .gspon-m{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:8px 12px;border-radius:14px;background:var(--pink-wash);color:var(--ink);text-decoration:none;font:700 15px/1 var(--head)}
  .gspon-m .gi{width:22px;height:22px}
  .gnav a.gspon{display:none}
}
@media (max-width:520px){.gbar-in{gap:10px}.gspon-m{padding:8px 11px}.gspon-m span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}}
@media (max-width:380px){.brand{gap:8px}.brand svg{width:36px;height:36px}.brand .bn{font-size:20px}.brand .bp{font-size:12.5px}.menubtn{padding:8px 12px}}
@media (min-width:981px) and (max-width:1180px){.gbar-in{gap:12px}.gnav{gap:2px}.gnav a{padding:6px 8px;font-size:15px}.gnav a.gorg small{font-size:12px}.brand svg{width:40px;height:40px}.brand .bn{font-size:23px}}

/* ---------------- home page, 16 Oct 2026 ----------------
   Shorter hero: photo up in the corner over the sun circle, the three numbers under it.
   Nine tiles in three rows (six areas, then Clinicians, Search by state, Search everything).
   The Family Journey band: even space around the photo. Full-width level questions. Cards in their destinations' colors. */
.hero.home .hero-in{grid-template-columns:minmax(0,1.32fr) minmax(0,.68fr);gap:32px;align-items:start;padding:40px 44px 38px}
.hero.home h1{font-size:clamp(34px,4.4vw,56px);max-width:none;margin:0 0 14px}
.hero.home .lede{margin:0 0 22px;max-width:60ch}
.hero.home .hside{display:flex;flex-direction:column;align-items:center;margin:-18px -16px 0 0}
.hero.home .hfigw{width:min(100%,330px)}
.hero.home .hfig{max-width:none}
.hero.home .hstat{right:-12px;bottom:16px;padding:10px 14px}
.hero.home .hstat b{font-size:24px}
.hero.home .hmeta{justify-content:center;gap:6px 24px;margin:16px 0 0;text-align:center}
.hero.home .hmeta b{font-size:24px}
.hero.home .hero-in::after{left:52%;bottom:-86px}
@media (max-width:860px){
  .hero.home .hero-in{grid-template-columns:1fr;gap:20px;padding:30px 24px 28px}
  .hero.home .hside{display:contents}
  .hero.home .hfigw{order:-1;width:100%}
  .hero.home .hmeta{order:2;justify-content:flex-start;text-align:left;margin:0}
  .hero.home .hstat{right:12px;bottom:12px}
  .hero.home .hero-in::after{left:auto;right:-60px;bottom:-90px}
}
@media (max-width:640px){.hero.home .hero-in{padding:26px 20px 24px}.hero.home .hmeta{flex-wrap:nowrap;gap:18px}.hero.home .hmeta b{font-size:21px}.hero.home .hmeta li{font-size:14.5px}}

.doors.d9{grid-template-columns:repeat(3,minmax(0,1fr))}
.doors.d9 .door{min-height:220px}
.doors.d9 .door.all{grid-column:auto;min-height:220px}
@media (max-width:1000px){.doors.d9{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.doors.d9{grid-template-columns:1fr}.doors.d9 .door,.doors.d9 .door.all{min-height:0}}
.door.st{background:var(--pink);color:#06222E}
.door.st:hover{transform:none;box-shadow:none}
.door.st::after{display:none}
.door.st .dn{padding-right:0}
.door.st .dn a{color:#06222E;font-weight:700}
.stjump{display:flex;gap:8px;margin-top:4px}
.stjump select{flex:1;min-width:0;min-height:48px;padding:10px 12px;border:2px solid #06222E;border-radius:14px;background:#fff;color:#06222E;font:400 16px var(--head)}
.stjump .btn{border-color:#06222E;background:#06222E;color:#fff}
.stjump select:focus-visible,.stjump .btn:focus-visible{outline:3px solid #06222E;outline-offset:2px}

.jband{padding:40px;gap:40px;align-items:stretch}
.jband .bt{padding:0;align-self:center}
.jband figure{min-height:300px}
@media (max-width:860px){.jband{padding:20px;gap:20px}.jband figure{min-height:200px}}

.faq{max-width:none}

.tcard.shop{background:var(--sun);color:#06222E}
.tcard.shop h3,.tcard.shop p{color:#06222E}
.tcard.sos{background:#5B3A9E;color:#fff}
.tcard.sos h3,.tcard.sos p{color:#fff}
.tcard.orgs{background:var(--accent-wash)}
