:root{
  --c-paper:#F3EEE7; /* Page background (Sand) */
  --c-surface:#FFFFFF; /* Cards, sheets, inputs */
  --c-surface-2:#EAE3D8; /* Quiet panels, chips, New here */
  --c-ink:#1E1C1A; /* Text, primary buttons, logo */
  --c-ink-2:#5E5850; /* Secondary text (AA on paper and surface) */
  --c-rule:#E3DBD0; /* Hairlines, card borders */
  --c-rule-strong:#CBBFAE; /* Input borders, overlay edges */
  --c-clay:#A9542F; /* Thursday clay: logo seam, cue labels, stamp day, Reader pick. AA on paper */
  --c-clay-ink:#94461F; /* Clay text under 14px */
  --c-sage:#7C8B6F; /* Fills only: fallback art, realtor chrome. Never small text */
  --c-sage-ink:#4F5C45; /* Text on paper that needs sage */
  --c-paid:#EADFD2; /* Oat. Sponsored panels only, never anything else */
  --c-changed:#8A5300; /* Time changed, moved, cancelled */
  --c-ok:#2E6B3F; /* Form success only */
  --c-error:#A12C1C; /* Form errors only */
  --c-focus:#2F5BD3; /* Focus ring, 2px, offset 2px */
  --f-ui:'Plus Jakarta Sans', system-ui, sans-serif;
  --f-voice:'Newsreader', Georgia, serif;
  --f-cue:'Archivo', 'Arial Narrow', sans-serif;
  --f-data:'IBM Plex Mono', ui-monospace, monospace;
  --t-display-xl:72px; --lh-display-xl:1.02; --w-display-xl:700; --tr-display-xl:-0.03em;
  --t-display-l:52px; --lh-display-l:1.05; --w-display-l:700; --tr-display-l:-0.025em;
  --t-h1:36px; --lh-h1:1.1; --w-h1:700; --tr-h1:-0.02em;
  --t-h2:26px; --lh-h2:1.15; --w-h2:700; --tr-h2:-0.015em;
  --t-h3:20px; --lh-h3:1.25; --w-h3:700; --tr-h3:-0.01em;
  --t-voice-l:26px; --lh-voice-l:1.3; --w-voice-l:400; --tr-voice-l:0;
  --t-voice:19px; --lh-voice:1.4; --w-voice:400; --tr-voice:0;
  --t-body:16px; --lh-body:1.55; --w-body:400; --tr-body:0;
  --t-ui:15px; --lh-ui:1.4; --w-ui:600; --tr-ui:0;
  --t-small:13px; --lh-small:1.45; --w-small:500; --tr-small:0;
  --t-cue:12px; --lh-cue:1.2; --w-cue:800; --tr-cue:0.08em;
  --t-data:13px; --lh-data:1.4; --w-data:400; --tr-data:0;
  --s-1:4px;
  --s-2:8px;
  --s-3:12px;
  --s-4:16px;
  --s-5:20px;
  --s-6:24px;
  --s-7:32px;
  --s-8:40px;
  --s-9:56px;
  --s-10:80px;
  --r-sm:6px;
  --r-md:14px;
  --r-lg:20px;
  --r-pill:999px;
  --rule:1px solid var(--c-rule); --tap:44px; --max:1200px; --gutter:24px; --margin:40px;
}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){
  --c-paper:#171614;
  --c-surface:#211F1C;
  --c-surface-2:#2B2824;
  --c-ink:#F1ECE4;
  --c-ink-2:#B3AA9E;
  --c-rule:#36322D;
  --c-rule-strong:#4A443D;
  --c-clay:#E08A63;
  --c-clay-ink:#E9A07E;
  --c-sage:#A3B394;
  --c-sage-ink:#B9C7AA;
  --c-paid:#2E2721;
  --c-changed:#E0A54A;
  --c-ok:#7FC08F;
  --c-error:#F08070;
  --c-focus:#8FA9FF;
}}
[data-theme=dark]{
  --c-paper:#171614;
  --c-surface:#211F1C;
  --c-surface-2:#2B2824;
  --c-ink:#F1ECE4;
  --c-ink-2:#B3AA9E;
  --c-rule:#36322D;
  --c-rule-strong:#4A443D;
  --c-clay:#E08A63;
  --c-clay-ink:#E9A07E;
  --c-sage:#A3B394;
  --c-sage-ink:#B9C7AA;
  --c-paid:#2E2721;
  --c-changed:#E0A54A;
  --c-ok:#7FC08F;
  --c-error:#F08070;
  --c-focus:#8FA9FF;
}
@media (max-width:640px){:root{--t-display-xl:44px; --t-display-l:36px; --t-h1:30px; --t-h2:22px; --t-voice-l:21px; --margin:16px; --gutter:12px;}}
/* Roles */
.t-voice{font-family:var(--f-voice);font-style:italic;font-size:var(--t-voice);line-height:var(--lh-voice)}
.t-cue{font-family:var(--f-cue);font-stretch:72%;font-weight:800;font-size:var(--t-cue);letter-spacing:var(--tr-cue);text-transform:uppercase;color:var(--c-clay)}
.t-data{font-family:var(--f-data);font-size:var(--t-data);font-variant-numeric:tabular-nums}
/* No gradients, glows or content shadows anywhere. Overlays use --c-rule-strong and a solid scrim. */

/* The Rounds site, Soft lifestyle with radio signatures (BRAND_HANDOFF.md, final Oct 17 2026).
   brand/tokens.css is prepended to this file at build. Flat: no shadows, glows or gradients.
   Five signatures: the ring (logo, stamp, week dial), the dated stamp, the announcer voice line,
   cue labels, rundown numbers on photo plates. Sponsored is the only thing on Oat. */

@font-face{font-family:'Plus Jakarta Sans';src:url(fonts/jakarta.woff2) format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:'Newsreader';src:url(fonts/newsreader-italic.woff2) format('woff2');font-weight:200 800;font-style:italic;font-display:swap}
@font-face{font-family:'Archivo';src:url(fonts/archivo.woff2) format('woff2');font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(fonts/plexmono-400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(fonts/plexmono-500.woff2) format('woff2');font-weight:500 600;font-style:normal;font-display:swap}

/* Aliases so older inline styles map to the new roles */
:root{--f-text:var(--f-ui);--f-display:var(--f-ui);--c-ink-3:var(--c-ink-2);--c-stamp-text:var(--c-clay-ink);--c-link:var(--c-ink);--c-paper-2:var(--c-surface-2);--c-manila:var(--c-paid);color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark}}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--c-paper);color:var(--c-ink);font-family:var(--f-ui);font-size:var(--t-body);line-height:var(--lh-body);font-variant-ligatures:no-contextual}
a{color:var(--c-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--c-focus);outline-offset:2px}
h1,h2,h3{text-wrap:balance;margin:0;font-weight:700}
p{margin:0}
img{max-width:100%}
figure{margin:0}
address{font-style:normal}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--c-ink);color:var(--c-paper);padding:8px 14px;border-radius:var(--r-pill);z-index:9}
.skip:focus{left:16px}
.wrap{max-width:calc(var(--max) + 80px);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
@media (min-width:720px){.wrap{padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}}

/* ---------- type roles */
.disp{font-weight:700;letter-spacing:-.02em;line-height:1.08}
.h-xxl{font-size:var(--t-display-xl);letter-spacing:var(--tr-display-xl);line-height:var(--lh-display-xl);font-weight:700}
.h-xl{font-size:var(--t-display-l);letter-spacing:var(--tr-display-l);line-height:var(--lh-display-l);font-weight:700}
.h-1{font-size:var(--t-h1);letter-spacing:var(--tr-h1);line-height:var(--lh-h1);font-weight:700}
.h-2{font-size:var(--t-h2);letter-spacing:var(--tr-h2);line-height:var(--lh-h2);font-weight:700}
.h-3{font-size:var(--t-h3);letter-spacing:var(--tr-h3);line-height:var(--lh-h3);font-weight:700}
.voice{font-family:var(--f-voice);font-style:italic;font-size:var(--t-voice);line-height:var(--lh-voice);font-weight:400;color:var(--c-ink)}
.voice.l{font-size:var(--t-voice-l);line-height:var(--lh-voice-l)}
.voice.mute{color:var(--c-ink-2)}
.cue,.t-label{font-family:var(--f-cue);font-stretch:72%;font-weight:800;font-size:var(--t-cue);letter-spacing:var(--tr-cue);text-transform:uppercase;color:var(--c-clay-ink);line-height:1.2}
.cue.ink{color:var(--c-ink-2)}
.cue time{font:inherit;color:inherit}
.data,.mono,.t-data{font-family:var(--f-data);font-size:var(--t-data);font-variant-numeric:tabular-nums}
.sm{font-size:var(--t-small);line-height:var(--lh-small)}
.mute{color:var(--c-ink-2)}
.note{font-size:13px;line-height:1.45;color:var(--c-ink-2)}
.dek{font-family:var(--f-voice);font-style:italic;font-size:21px;line-height:1.35;color:var(--c-ink-2);max-width:60ch}
.prose p,.prose li{font-size:17px;line-height:1.6;max-width:68ch}
.prose p+p{margin-top:12px}
.lnk{font-weight:600}
.tn{white-space:nowrap}

/* ---------- preview ribbon: honest about what this build is */
.ribbon{background:var(--c-surface-2);font-family:var(--f-data);font-size:12px;color:var(--c-ink-2)}
.ribbon .wrap{display:flex;gap:4px 16px;flex-wrap:wrap;padding-block:7px}
.ribbon b{color:var(--c-ink);font-weight:500}

/* ---------- masthead: proof bar, lockup, four links, Advertise, Get it Thursday */
.proofbar{border-bottom:1px solid var(--c-rule);font-family:var(--f-data);font-size:12px;color:var(--c-ink-2)}
.proofbar .wrap{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;padding-block:8px}
.proofbar .rg{width:14px;height:14px}
.proofbar .pf{display:inline-flex;align-items:center;gap:8px}
.proofbar b{color:var(--c-ink);font-weight:500}
.townsw{margin-left:auto}
.townsw a{color:var(--c-ink-2);text-decoration:none}
.townsw a:hover{text-decoration:underline}
.townsw a[aria-current=page]{color:var(--c-ink);font-weight:500;text-decoration:underline}
.mast{display:flex;align-items:center;gap:22px;padding-block:16px}
.lock{display:flex;align-items:center;gap:12px;color:var(--c-ink);text-decoration:none;min-width:0}
.lock .wm{height:28px;width:auto;display:block;flex:none}
.lock .wm-s{display:none}
.lock .bar{width:1px;height:26px;background:var(--c-rule-strong);flex:none}
.lock .town{font-weight:700;font-size:17px;letter-spacing:-.01em;line-height:1.15}
.nav{display:flex;gap:20px}
.nav a{font-weight:600;font-size:15px;text-decoration:none}
.nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.mast .sp{flex:1}
.mast .adv{font-size:13px;color:var(--c-ink-2);text-decoration:none}
.mast .adv:hover{text-decoration:underline}
.menu{position:relative;display:none}
.menu summary{list-style:none;cursor:pointer}
.menu summary::-webkit-details-marker{display:none}
.menu-p{position:absolute;right:0;top:calc(100% + 8px);z-index:5;width:min(320px,calc(100vw - 32px));background:var(--c-surface);border:1px solid var(--c-rule-strong);border-radius:var(--r-lg);padding:10px}
.menu-p a{display:flex;min-height:44px;align-items:center;padding:0 10px;border-radius:var(--r-md);text-decoration:none;font-weight:600}
.menu-p a:hover{background:var(--c-surface-2)}
.menu-p .cue{padding:10px 10px 4px}
.subnav{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:6px}
.subnav::-webkit-scrollbar{display:none}
.subnav a{flex:none;display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--c-rule-strong);background:var(--c-surface);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}
.subnav a[aria-current=page]{background:var(--c-ink);color:var(--c-paper);border-color:var(--c-ink)}
@media (max-width:900px){
 .nav,.mast .adv,.mast .getit{display:none}
 .menu{display:block}
 .mast{gap:10px;padding-block:12px}
 .lock .wm:not(.wm-s){display:none}.lock .wm-s{display:block;height:18px}.lock .bar{height:18px}.lock .town{font-size:14px}
 .townsw{margin-left:0;width:100%}
}

/* ---------- layout */
main{padding-bottom:20px}
.main{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;margin-top:24px;align-items:start}
.stack{display:flex;flex-direction:column;gap:32px;min-width:0}
.cols2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.page-head{padding-top:18px}
.page-head .voice{margin-top:10px;max-width:60ch}
.crumb{font-size:13px;color:var(--c-ink-2);margin-bottom:12px}
.crumb a{color:var(--c-ink-2)}
.mob-only{display:none}
@media (max-width:980px){.main{grid-template-columns:minmax(0,1fr)}.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.desk-only{display:none}.mob-only{display:block}}
@media (max-width:720px){.cols2,.grid3{grid-template-columns:minmax(0,1fr)}.hide-s{display:none}}
@media (max-width:520px){.grid4{grid-template-columns:minmax(0,1fr)}}

/* ---------- section header: cue, title, voice; dial on the right */
.shd{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}
.shd-l{min-width:0}
.shd .sh-t{font-size:var(--t-h2);letter-spacing:var(--tr-h2);line-height:var(--lh-h2);margin-top:6px}
.shd.lg .sh-t{font-size:var(--t-h1);letter-spacing:var(--tr-h1)}
.shd .voice{margin-top:6px;font-size:18px}
.secr{display:flex;align-items:center;gap:8px;font:12px var(--f-data);color:var(--c-ink-2);text-align:right;flex:none;max-width:45%}
.secr a{color:var(--c-ink-2)}
.dialsvg{width:26px;height:26px;color:var(--c-ink);flex:none}
@media (max-width:520px){.shd{flex-direction:column;align-items:flex-start;gap:8px}.secr{max-width:none;text-align:left}}

/* ---------- the ring and the dated stamp */
.rg{width:16px;height:16px;flex:none;color:var(--c-ink)}
.stamp{display:inline-flex;align-items:flex-start;gap:7px;font-size:13px;line-height:1.35;color:var(--c-ink-2);margin-top:8px}
.stamp .rg{margin-top:1px}
.stamp b{color:var(--c-ink);font-weight:600}
.stamp .data{font-size:12px}
.stamp .cknote{display:block;color:var(--c-ink-2);margin-top:2px}
.stamp.chg,.stamp.chg b{color:var(--c-changed)}
.stamp.sbox{display:flex;border:1px solid var(--c-rule);background:var(--c-surface);border-radius:var(--r-md);padding:10px 12px;width:100%;margin-top:14px;align-items:center}
.stamp.sbox .rg{width:22px;height:22px;margin-top:0}
.ck.cp{display:inline-block;font-size:13px;color:var(--c-ink-2);margin-top:8px}
.removed{text-decoration:line-through;color:var(--c-ink-2)}
.flag{display:inline-block;font:500 11px var(--f-data);letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:var(--r-sm);background:var(--c-surface-2);color:var(--c-ink);margin-bottom:4px}
.flag.ch{color:var(--c-changed)}

/* ---------- buttons and chips */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--tap);padding:0 18px;border-radius:var(--r-pill);font:600 15px var(--f-ui);white-space:nowrap;border:1px solid var(--c-rule-strong);background:var(--c-surface);color:var(--c-ink);text-decoration:none;cursor:pointer}
.btn:hover{border-color:var(--c-ink)}
.btn.pri,.btn.tix{background:var(--c-ink);color:var(--c-paper);border-color:var(--c-ink)}
.btn.sm,.btn.s{min-height:36px;font-size:13px;padding:0 14px}
.btn.link{border:0;background:none;padding:0;min-height:0;text-decoration:underline;text-underline-offset:3px}
.btn .ic{flex:none}
.bt{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chips button,.chip{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--c-rule-strong);font:600 13px var(--f-ui);background:var(--c-surface);color:var(--c-ink);cursor:pointer}
.chips button[aria-pressed=true],.chip.on{background:var(--c-ink);color:var(--c-paper);border-color:var(--c-ink)}
.chips .t-label{color:var(--c-ink-2)}

/* ---------- cards and panels */
.card{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg);padding:18px}
.card.flush{padding:10px}
.panel{background:var(--c-surface-2);border-radius:var(--r-lg);padding:18px}
.card h2,.panel h2,.card h3,.panel h3{margin-top:6px}
a.card{display:block;text-decoration:none}
a.card:hover{border-color:var(--c-rule-strong)}

/* ---------- photos: placeholder chip, rundown number, fallback art */
.ph{position:relative;overflow:hidden;border-radius:var(--r-md);background:var(--c-surface-2)}
.ph img{width:100%;height:100%;object-fit:cover;display:block}
.ph picture{display:block;width:100%;height:100%}
.phl{position:absolute;right:8px;bottom:8px;max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 10px var(--f-data);letter-spacing:.04em;background:var(--c-surface);color:var(--c-ink);padding:2px 6px;border-radius:var(--r-sm);text-transform:uppercase}
.ph img.fit-contain{object-fit:contain}
.ph.top .phl{top:8px;bottom:auto}
.ph.nolab .phl{display:none}
.no{position:absolute;left:8px;top:8px;font:500 12px var(--f-data);background:var(--c-surface);color:var(--c-ink);padding:3px 7px;border-radius:var(--r-sm)}

/* ---------- events: row (.er), card (.ec), feature (.feat) */
.er{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:14px;background:var(--c-surface);border:1px solid var(--c-rule);border-radius:18px;padding:10px;margin-bottom:10px;align-items:start}
.er .ph{aspect-ratio:1/1}
.er h3{font-size:18px;letter-spacing:-.01em;line-height:1.25;margin:4px 0 2px}
.er h3 a{text-decoration:none}
.er h3 a:hover{text-decoration:underline}
.er .where{font-size:13px;line-height:1.45;color:var(--c-ink-2)}
.er .voice{font-size:16px;margin-top:3px}
.er .act{padding:4px 4px 0 0}
.er .stamp{margin-top:6px}
@media (max-width:640px){.er{grid-template-columns:72px minmax(0,1fr)}.er .act{grid-column:2;padding:0}}
.ec{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg);padding:10px;display:flex;flex-direction:column}
.ec .ph{aspect-ratio:4/3}
.ec .b{padding:12px 6px 6px;display:flex;flex-direction:column;flex:1}
.ec h3{font-size:var(--t-h3);letter-spacing:-.01em;line-height:1.2;margin:6px 0 3px}
.ec h3 a{text-decoration:none}
.ec .voice{font-size:17px;margin-top:4px}
.meta{display:flex;gap:10px;align-items:center;margin-top:8px;flex-wrap:wrap}
.meta .data{background:var(--c-surface-2);padding:2px 8px;border-radius:var(--r-sm)}
.feat{display:grid;grid-template-columns:1.25fr 1fr;gap:28px;padding:12px;align-items:center;margin-bottom:20px;background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg)}
.feat .ph{aspect-ratio:3/2}
.feat h3{font-size:clamp(30px,4vw,var(--t-display-l));letter-spacing:var(--tr-display-l);line-height:1.05;margin:8px 0 6px}
.feat h3 a{text-decoration:none}
.feat .txt{padding-right:16px}
@media (max-width:820px){.feat{grid-template-columns:minmax(0,1fr);gap:14px}.feat .txt{padding:0 6px 8px}}
.dayhead{font-family:var(--f-cue);font-stretch:72%;font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-ink);margin:22px 0 10px}

/* hero */
.hero{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center;padding:28px 0 24px}
.hero .ph{aspect-ratio:5/4}
.hero h1{margin:12px 0 10px}
.hero .voice{max-width:470px}
@media (max-width:820px){.hero{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:6px}.hero .ph{aspect-ratio:4/3;order:-1}}

/* ---------- older data rows (games, sign-ups, holidays, every week): same card shape, date plate on the left */
.ev{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:14px;background:var(--c-surface);border:1px solid var(--c-rule);border-radius:18px;padding:10px;margin-bottom:10px;align-items:start}
.ev.past{opacity:.7}
.evd{background:var(--c-surface-2);border-radius:var(--r-md);text-align:center;padding:8px 4px;font:500 11px/1.3 var(--f-data);text-transform:uppercase;color:var(--c-ink-2);display:flex;flex-direction:column;gap:2px}
.evd b{font:700 16px/1.15 var(--f-ui);color:var(--c-ink);letter-spacing:-.01em}
.evb{min-width:0}
.evt{font-size:18px;letter-spacing:-.01em;line-height:1.25;margin:2px 0}
.evt a{text-decoration:none}
.evt a:hover{text-decoration:underline}
.evw{font-size:14px;color:var(--c-ink-2);line-height:1.45}
.evb .voice{font-size:16px;margin-top:3px}
.eva{padding-top:4px}
@media (max-width:640px){.ev{grid-template-columns:64px minmax(0,1fr)}.eva{grid-column:2;padding:0}}

/* ---------- compact lists */
.nh{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:12px;padding:10px 0;border-top:1px solid var(--c-rule);font-size:15px;align-items:baseline}
.nh:first-of-type{border-top:0}
.nh>span:first-child{font-family:var(--f-data);font-size:12px;color:var(--c-ink-2);text-transform:uppercase}
.nh a{font-weight:600}
.nh .mono{color:var(--c-ink-2);font-size:12px}
.ar{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--c-rule);font-size:15px}
.ar:first-of-type{border-top:0}

/* ---------- directory rows (restaurants, churches, party places, neighborhoods) */
.dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;background:var(--c-surface);border:1px solid var(--c-rule);border-radius:18px;padding:12px 14px;margin-bottom:10px;align-items:start}
.dl.th{grid-template-columns:88px minmax(0,1fr) auto;padding:10px}
.dl.th .ph{aspect-ratio:1/1}
.dl .n{font-size:18px;letter-spacing:-.01em;line-height:1.25}
.dl .a{font-size:13px;color:var(--c-ink-2);margin-top:2px}
.dl .times{font-family:var(--f-data);font-size:13px;margin-top:6px}
.dl .kids{font-size:13px;margin-top:4px}
.dl .ln{font-size:15px;margin-top:4px}
.dl .r{display:flex;flex-direction:column;align-items:flex-end;gap:8px;text-align:right;font-size:13px}
@media (max-width:640px){.dl,.dl.th{grid-template-columns:minmax(0,1fr)}.dl.th{grid-template-columns:64px minmax(0,1fr)}.dl .r{align-items:flex-start;text-align:left;grid-column:1/-1}.dl.th .r{grid-column:2}}
.tagx{display:inline-block;font:500 11px var(--f-data);text-transform:uppercase;letter-spacing:.04em;background:var(--c-surface-2);border-radius:var(--r-sm);padding:2px 6px;margin-left:6px;vertical-align:3px}
.srcl{font-size:12px;color:var(--c-ink-2)}
.tags{display:inline-flex;gap:6px;margin-left:8px;vertical-align:3px}
.tag{font:500 11px var(--f-data);text-transform:uppercase;background:var(--c-surface-2);border-radius:var(--r-sm);padding:1px 6px}

/* ---------- Sponsored: Oat only, ink tag, who paid, Why this. Never a ring, a stamp or a number. */
.spon,.spons{background:var(--c-paid);border-radius:var(--r-lg);overflow:hidden}
.slab,.sptag{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 14px;font-size:12px;border-bottom:1px solid var(--c-rule-strong)}
.slab b,.sptag b{font:500 11px var(--f-data);letter-spacing:.06em;text-transform:uppercase;background:var(--c-ink);color:var(--c-paper);padding:2px 7px;border-radius:var(--r-sm)}
.slab a,.sptag a{margin-left:auto;font-weight:600}
.spon .sb,.spons>.sp-t{padding:14px 16px 0}
.spon .sb{padding-bottom:16px}
.spons>.sp-d{padding:4px 16px 0}
.spons>.btn,.spons>a.btn{margin:12px 16px 16px}
.spons>.magent,.spons>p{margin-left:16px;margin-right:16px}
.spon .ph{margin:12px 12px 0;aspect-ratio:16/9}
.sp-t{font-size:var(--t-h3);font-weight:700;letter-spacing:-.01em;line-height:1.2}
.sp-d{font-size:14px;margin-top:4px;line-height:1.5}
.spon .cue{color:var(--c-ink-2)}
.agent-open .magent{margin-top:14px}

/* ---------- reader pick, lists, poll */
.pick{flex:none}
.pickrow{display:flex;gap:14px;align-items:flex-start}
.listrow{display:flex;gap:12px;align-items:center;background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg);padding:12px;text-decoration:none;color:var(--c-ink)}
a.listrow:hover{border-color:var(--c-rule-strong)}
.listrow b{display:block;font-size:17px}
.poll{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg);padding:18px}
.poll .opt{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 14px;border:1px solid var(--c-rule);border-radius:var(--r-md);margin-top:8px;background:var(--c-surface);font:500 15px var(--f-ui);color:var(--c-ink);cursor:pointer;text-align:left}
.poll .opt .rad{width:22px;height:22px;border:1.5px solid var(--c-ink);border-radius:50%;display:inline-grid;place-items:center;flex:none}
.poll .opt[aria-pressed=true]{border-color:var(--c-ink)}
.poll .opt[aria-pressed=true] .rad:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--c-ink)}
.poll .v{display:none}
.msg{margin-top:10px;font-size:14px;color:var(--c-ink-2)}
.msg.ok{color:var(--c-ok)}

/* ---------- New here panel */
.newhere-p{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;align-items:center;padding:10px}
.newhere-p .ph{aspect-ratio:3/2}
.newhere-p .txt{padding:8px 14px 8px 0}
@media (max-width:820px){.newhere-p{grid-template-columns:minmax(0,1fr)}.newhere-p .txt{padding:4px 8px 8px}}

/* ---------- forms */
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font-size:13px;font-weight:600}
.field input,.field select,.field textarea,.subbox input{min-height:48px;border:1px solid var(--c-rule-strong);border-radius:var(--r-md);background:var(--c-surface);padding:0 14px;font:400 16px var(--f-ui);color:var(--c-ink);width:100%}
.field textarea{min-height:110px;padding:12px 14px}
.field input[aria-invalid=true],.subbox input[aria-invalid=true]{border-color:var(--c-error)}
.field .e{color:var(--c-error);font-weight:500}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.subbox{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.subbox input{flex:1 1 220px;width:auto}

/* ---------- tables, facts */
.tbwrap{overflow-x:auto;background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg)}
.tb{width:100%;border-collapse:collapse;font-size:14px;min-width:420px}
.tb th{text-align:left;font-family:var(--f-cue);font-stretch:72%;font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-clay);padding:12px 14px;border-bottom:1px solid var(--c-rule)}
.tb td{padding:10px 14px;border-top:1px solid var(--c-rule);vertical-align:top}
.tb tr:first-child td{border-top:0}
.tb .m{font-family:var(--f-data);font-size:13px}
.tb .tot td{background:var(--c-surface-2)}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.fact{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-md);padding:12px 14px}
.fact dt{font-family:var(--f-cue);font-stretch:72%;font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-clay)}
.fact dd{margin:4px 0 0}
.fact dd b{display:block;font-size:20px;letter-spacing:-.01em}
.fact dd span{display:block;font-size:13px;color:var(--c-ink-2)}
@media (max-width:520px){.facts{grid-template-columns:minmax(0,1fr)}}

/* ---------- quick answers (answer-first, dated) */
.qa{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg);padding:4px 18px}
.qa .q{border-top:1px solid var(--c-rule);padding:14px 0}
.qa .q:first-child{border-top:0}
.qa .ans{margin-top:6px;font-size:15px;line-height:1.6;max-width:90ch}

/* ---------- event page */
.evhead h1{margin:8px 0 4px}
.when{display:grid;grid-template-columns:90px minmax(0,1fr);margin:14px 0 0}
.when dt,.when dd{padding:10px 0;border-top:1px solid var(--c-rule);margin:0}
.when dt{font-family:var(--f-data);font-size:12px;color:var(--c-ink-2);text-transform:uppercase;padding-top:12px}
.when dd .rg{width:18px;height:18px;vertical-align:-4px;margin-left:6px}
.evphoto{aspect-ratio:16/9;margin-bottom:16px}
@media (max-width:640px){.evphoto{aspect-ratio:4/5}}
.bigaction{width:100%;justify-content:space-between;min-height:52px;margin-top:16px}
.actions3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}

/* ---------- advertise */
.freebar{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;background:var(--c-surface-2);border-radius:var(--r-lg);padding:14px 18px;margin-top:20px;font-size:15px}
.prods{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.prod{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:14px}
.prod-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.prod h3{font-size:var(--t-h3)}
.prod .who{font-size:13px;color:var(--c-ink-2);margin-top:4px}
.prod .price{text-align:right;flex:none}
.prod .price b{display:block;font-size:28px;line-height:1.1;letter-spacing:-.02em}
.prod .price span{font:12px var(--f-data);color:var(--c-ink-2)}
.prod>.btn{margin-top:auto;align-self:flex-start}
.gets{list-style:none;margin:0;padding:0}
.gets li{display:flex;gap:10px;padding:5px 0;font-size:14px;line-height:1.45}
.gets li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c-clay);margin-top:8px;flex:none}
.pv{background:var(--c-paper);border-radius:var(--r-md);padding:12px}
.pvw{font:11px var(--f-data);color:var(--c-ink-2);margin-bottom:8px}
.pv .spons,.pv .mrow,.pv .magent{font-size:13px}
.mrow{display:grid;grid-template-columns:60px minmax(0,1fr);gap:10px;background:var(--c-paid);border-radius:var(--r-md);padding:10px}
.mt{font-weight:700;font-size:15px;margin-top:4px}
.ml{font-size:13px;color:var(--c-ink-2);margin:2px 0 8px}
.mbar{display:flex;justify-content:space-between;gap:8px;align-items:center;background:var(--c-paid);border-radius:var(--r-md);padding:10px}
.pres{font-size:12px;display:inline-flex;gap:6px;align-items:center}
.logo-ph{width:18px;height:18px;border-radius:5px;background:var(--c-rule-strong);display:inline-block}
.mlines{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.mlines i{height:8px;border-radius:4px;background:var(--c-rule)}
.mlines i:nth-child(2){width:80%}.mlines i:nth-child(3){width:60%}
.magent{display:flex;gap:12px;align-items:center;background:var(--c-paid);border-radius:var(--r-md);padding:10px}
.magent i.ph{width:56px;height:56px;border-radius:16px;background:var(--c-sage);flex:none}
.mq{margin-top:8px;font-size:12px;background:var(--c-paid);border-radius:var(--r-md);padding:10px}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.steps>div{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-md);padding:12px}
@media (max-width:720px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.spot{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:4px 10px;align-items:center;background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-md);padding:12px 14px;cursor:pointer}
.spot:has(input:checked){border-color:var(--c-ink)}
.spot input{accent-color:var(--c-ink);width:18px;height:18px}
.spot .p{font-family:var(--f-data);font-size:14px}
.spot .s{grid-column:2/-1;font-size:12px;color:var(--c-ink-2)}

/* ---------- footer */
.foot{margin-top:56px;padding-block:0 40px}
.subpanel{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center;background:var(--c-surface-2);border-radius:var(--r-lg);padding:24px}
@media (max-width:720px){.subpanel{grid-template-columns:minmax(0,1fr)}}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px;margin-top:32px}
.foot ul{list-style:none;margin:0;padding:0}
.foot li{padding:5px 0;font-size:14px}
.foot .wm{height:20px;width:auto;color:var(--c-ink)}
.foot .close{margin-top:28px}
@media (max-width:720px){.foot .cols{grid-template-columns:minmax(0,1fr)}}

/* ---------- safety alert (fire, boil-water notice): first on the page, dated, official link */
.alert{background:var(--c-surface);border:1px solid var(--c-rule-strong);border-left:4px solid var(--c-changed);border-radius:var(--r-lg);padding:16px 18px;margin-top:18px}
.alert .cue{color:var(--c-changed)}
/* Phone: the first screen is for events (usability pass, Oct 18). One-line preview note, no proof line, no place photo or buttons in the hero. */
.townsw a{display:inline-block;padding:6px 1px}
@media (max-width:720px){
.ribbon .wrap{flex-wrap:nowrap;white-space:nowrap;overflow:hidden;padding-block:5px}
.ribbon .wrap span+span{display:none}
.proofbar .pf{display:none}
.proofbar:not(:has(.townsw a)){display:none}
.proofbar .wrap{flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;padding-block:2px}
.hero .ph,.hero .bt{display:none}
.hero{padding:2px 0 0;gap:8px}
}
.hero.solo{grid-template-columns:minmax(0,1fr)}
.newhere-p:not(:has(.ph)){grid-template-columns:minmax(0,1fr)}
@media (max-width:720px){.hero{padding-bottom:18px}}
.dl.rank{grid-template-columns:44px minmax(0,1fr) auto}
.dl.rank .rk{font:500 15px var(--f-data);color:var(--c-ink-2);padding-top:3px}
.dl .named{font-size:13px;color:var(--c-ink-2);margin-top:8px;line-height:1.5}
.dl .named .t-label{margin-right:6px}
@media (max-width:640px){.dl.rank{grid-template-columns:32px minmax(0,1fr)}.dl.rank .r{grid-column:2;align-items:flex-start}}
/* Flyers and posters: the whole poster, floated over a soft, darkened blur of itself (Oct 18). */
.ph.poster{background:var(--c-ink)}
.ph .ph-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(24px) saturate(1.2) brightness(.82);transform:scale(1.25);pointer-events:none}
.ph.poster picture,.ph.poster>img:not(.ph-bg){position:relative}
.ph.poster img.fit-contain{padding:6% 0;filter:drop-shadow(0 8px 20px rgba(0,0,0,.35))}
.er .ph.poster img.fit-contain,.dl .ph.poster img.fit-contain{padding:4px 0;filter:none}
.er .ph.poster img.fit-contain,.dl .ph.poster img.fit-contain{object-fit:cover;padding:0}
.er .ph.poster .ph-bg,.dl .ph.poster .ph-bg{display:none}
.alertbar{background:var(--c-changed);color:var(--c-paper);font-size:14px;line-height:1.4}
.alertbar .wrap{padding-block:8px}
.alertbar a{color:var(--c-paper);font-weight:600;white-space:nowrap}
.evnote{font-size:14px;color:var(--c-ink-2);margin-top:6px;line-height:1.45}
.proofbar:not(:has(.townsw a)){display:none}
.nh .ans{font-size:15px;line-height:1.5;margin-top:8px}
/* Announcements: icon, title, one line, bullets (Oct 18: no walls of text) */
.an{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px 0;border-top:1px solid var(--c-rule)}
.an:first-of-type{border-top:0;padding-top:10px}
.anic{width:34px;height:34px;border-radius:10px;background:var(--c-surface-2);color:var(--c-clay-ink);display:grid;place-items:center}
.an-t{font-weight:700;font-size:16px;line-height:1.3}
.an-l{font-size:15px;line-height:1.45;margin-top:3px;color:var(--c-ink)}
.an ul{margin:6px 0 0;padding-left:18px;font-size:14px;line-height:1.45;color:var(--c-ink-2)}
.an li{margin:3px 0}
.an .lnk{display:inline-block;margin-top:6px;font-size:14px;font-weight:600}
.alert .al-ul{margin:6px 0 0;padding-left:18px;font-size:15px;line-height:1.45;color:var(--c-ink-2)}
.alert .anic{background:var(--c-surface-2);color:var(--c-changed)}
/* Sponsor spotlight on one person (their real title; the badge never claims an award they did not win) */
.spf-in{display:grid;grid-template-columns:38% minmax(0,1fr);gap:4px;align-items:start}
.spf .spf-ph{margin:12px 0 12px 12px;aspect-ratio:4/5}
.spf-badge{display:inline-flex;align-items:center;gap:6px;font:600 11px var(--f-data);letter-spacing:.06em;text-transform:uppercase;color:var(--c-paper);background:var(--c-clay-ink);padding:3px 8px;border-radius:999px}
.spf-wrap{position:relative}
.spf-seal{position:absolute;left:4px;bottom:4px;width:72px;height:72px;border-radius:50%;background:var(--c-paper);border:3px solid var(--c-clay);box-shadow:0 0 0 3px var(--c-paper),0 4px 12px rgba(0,0,0,.18);display:grid;place-content:center;text-align:center;line-height:1.05}
.spf-seal b{font:800 13px var(--f-cue);font-stretch:72%;letter-spacing:.06em;text-transform:uppercase;color:var(--c-clay-ink)}
.spf-seal i{font:italic 13px var(--f-voice);color:var(--c-ink)}
/* Quick answers: an accordion of questions; each answer is one short line and a scannable list (Oct 18) */
.qd{border-top:1px solid var(--c-rule)}
.qd:first-child{border-top:0}
.qd summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;cursor:pointer}
.qd summary::-webkit-details-marker{display:none}
.qd summary h3{font-size:17px;line-height:1.3;font-weight:700;letter-spacing:-.01em}
.qd .chev{flex:none;width:10px;height:10px;border-right:2px solid var(--c-ink-2);border-bottom:2px solid var(--c-ink-2);transform:rotate(45deg);margin-right:4px;transition:transform .15s}
.qd[open] .chev{transform:rotate(-135deg)}
.qb{padding:0 0 14px}
.ql{font-size:15px;color:var(--c-ink-2);margin-bottom:6px}
.qlist{list-style:none;margin:0;padding:0}
.qlist li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;padding:7px 0;border-top:1px dashed var(--c-rule);font-size:15px}
.qlist li:first-child{border-top:0}
.qlist li a,.qlist li b{font-weight:600}
.qlist .m{color:var(--c-ink-2);font-size:14px;text-align:right}
.qb .lnk{display:inline-block;margin-top:8px;font-size:14px;font-weight:600}
@media (max-width:640px){.qlist li{grid-template-columns:minmax(0,1fr)}.qlist .m{text-align:left}}
/* Member cards: same Oat panel as Sponsored, labeled on the card; perk and disclosure lines */
.spon.mem .slab b,.spons.mem .sptag b{background:var(--c-clay-ink)}
.perk{margin:10px 0 0;font-size:14px;line-height:1.4;padding:8px 10px;border:1px dashed var(--c-rule-strong);border-radius:var(--r-sm);background:var(--c-paper)}
.perk b{display:block;font:600 11px var(--f-data);letter-spacing:.06em;text-transform:uppercase;color:var(--c-clay-ink);margin-bottom:2px}
.spons .perk{margin:8px 16px 0}
.disc{margin:10px 0 0;font-size:13px;line-height:1.4;color:var(--c-ink-2);padding-top:8px;border-top:1px solid var(--c-rule-strong)}

/* ================================================================
   Members (Oct 19): the native card, the reader perk, the Spotlight, and the self-serve builder.
   A Member card is built like the cards around it; the honesty is a small ink MEMBER tag on the photo and one foot line.
   ================================================================ */
.mtag{display:inline-flex;align-items:center;height:22px;padding:0 8px;background:var(--c-ink);color:var(--c-paper);border-radius:var(--r-sm);font:500 10px var(--f-data);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.mc-phw{position:relative}
.mc-phw .ph{aspect-ratio:4/3}
.mc-phw .mtag{position:absolute;left:10px;top:10px;z-index:1}
.mmeta{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.mcat{font:700 11px var(--f-ui);letter-spacing:.1em;text-transform:uppercase}
.marea{font:500 11px var(--f-data);letter-spacing:.06em;text-transform:uppercase;color:var(--c-clay-ink)}
.mc-t{display:block;font-size:var(--t-h3);font-weight:700;letter-spacing:-.01em;line-height:1.2;margin:8px 0 3px}
.mc-l{display:block;font-size:15px;line-height:1.5}
.mc-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.mc-btns .btn.wide{flex:1 1 100%}
.mc-foot{font-size:12px;line-height:1.45;color:var(--c-ink-2);margin-top:10px}
.mc-foot a{color:var(--c-ink-2)}
.mc-where{font-size:13px;color:var(--c-ink-2);margin-top:10px}
.pills{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.pill{display:inline-flex;align-items:center;height:24px;padding:0 10px;border:1px solid var(--c-rule-strong);border-radius:999px;font:600 10px var(--f-ui);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}

.perkc{border:1.5px dashed var(--c-ink);border-radius:var(--r-lg);padding:7px}
.pk-in{background:var(--c-surface-2);border-radius:calc(var(--r-lg) - 6px);padding:14px 14px 16px}
.pk-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.pk-ctx{font:700 11px var(--f-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--c-clay-ink)}
.pk-in .ph{aspect-ratio:2/1;margin-top:12px}
.pk-k{font:700 11px var(--f-ui);letter-spacing:.14em;text-transform:uppercase;margin-top:14px}
.pk-o{font:800 26px/1.1 var(--f-ui);letter-spacing:-.02em;margin-top:4px}
.pk-how{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px;padding:10px 0;border-top:1px dashed var(--c-ink);border-bottom:1px dashed var(--c-ink);font:500 11px var(--f-data);letter-spacing:.05em;text-transform:uppercase}
.perkc>.mc-foot{padding:0 6px 4px}

.spot2{border-top:1px solid var(--c-ink);padding-top:12px}
.sp2-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.sp2-ed{font:500 11px var(--f-data);letter-spacing:.08em;text-transform:uppercase;color:var(--c-ink-2);text-align:right}
.spot2 .ph{aspect-ratio:4/5;margin-top:14px}
.sp2-n{font-size:clamp(32px,4.4vw,44px);line-height:1;letter-spacing:-.025em;margin-top:16px}
.sp2-c{font-size:.5em;letter-spacing:0;font-weight:600;color:var(--c-ink-2)}
.sp2-t{font:600 12px/1.45 var(--f-ui);letter-spacing:.06em;text-transform:uppercase;margin-top:10px}
.sp2-q{font:italic 22px/1.3 var(--f-voice);padding:14px 0;border-top:1px solid var(--c-ink);border-bottom:1px solid var(--c-ink);margin-top:16px}
.sp2-k{font:700 11px var(--f-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--c-clay-ink);margin-top:18px}
.sp2-f{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--c-rule)}
.sp2-f b{font:800 24px/1 var(--f-ui);letter-spacing:-.02em}
.sp2-f span{font-size:16px;line-height:1.4}

/* Advertise: plans, examples, the builder */
.plans3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){.plans3{grid-template-columns:minmax(0,1fr)}}
.pv-m{max-width:400px}
.bsteps{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.bsteps li{border-top:2px solid var(--c-ink);padding-top:8px;font-size:13px;line-height:1.35;font-weight:600}
.bsteps b{display:block;font:500 12px var(--f-data);color:var(--c-clay-ink)}
@media (max-width:720px){.bsteps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bgrid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-template-areas:"s1 pv" "s2 pv" "s3 pv" "s4 pv";gap:22px 36px;align-items:start}
.bgrid fieldset{border:0;margin:0;padding:0;min-width:0}
.bgrid legend{font:700 13px var(--f-ui);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;padding:0}
.bs1{grid-area:s1}.bs2{grid-area:s2}.bs3{grid-area:s3}.bs4{grid-area:s4}
.bprev{grid-area:pv;position:sticky;top:16px;max-width:420px}
@media (max-width:900px){.bgrid{grid-template-columns:minmax(0,1fr);grid-template-areas:"s1" "s2" "s3" "pv" "s4"}.bprev{position:static}}
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@media (max-width:520px){.plans{grid-template-columns:minmax(0,1fr)}}
.plan{display:grid;grid-template-columns:22px minmax(0,1fr);gap:2px 8px;align-items:center;border:1px solid var(--c-rule-strong);border-radius:var(--r-md);padding:12px;cursor:pointer;background:var(--c-surface)}
.plan input{accent-color:var(--c-ink);width:18px;height:18px;grid-row:1/span 3}
.plan b{font-size:14px;line-height:1.25}
.plan .p{font:500 18px var(--f-data)}
.plan .s{font-size:12px;color:var(--c-ink-2)}
.plan:has(input:checked){border-color:var(--c-ink);box-shadow:inset 0 0 0 1px var(--c-ink)}
.avail{margin:4px 0 10px}
.avail summary{cursor:pointer;font-weight:600;font-size:14px;min-height:36px;display:flex;align-items:center}
.avail .tbwrap{margin-top:8px}
.field textarea{font-family:var(--f-ui)}
.field input[type=file]{padding:10px 14px;min-height:48px}
.sp2-c::before{content:", "}
.pv .mc-phw .ph,.bprev .mc-phw .ph{aspect-ratio:16/10}
.pv .spot2 .ph,.bprev .spot2 .ph{aspect-ratio:4/3}
.avail summary{font-family:var(--f-ui)}

/* Advertise: three plain offers, one per kind of buyer (Oct 25) */
.proof{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px 28px}
.proof li{font-size:14px;color:var(--c-ink-2)}
.proof b{display:block;font-size:22px;line-height:1.15;color:var(--c-ink);letter-spacing:-.01em}
.offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
@media (max-width:980px){.offers{grid-template-columns:minmax(0,1fr)}}
.offer{background:var(--c-surface);border:1px solid var(--c-rule);border-radius:var(--r-lg);padding:20px;display:flex;flex-direction:column;gap:12px;min-width:0}
.offer .o-for{font:700 13px var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--c-clay-ink)}
.offer .o-price{margin:0}
.offer .o-price b{font-size:40px;line-height:1;letter-spacing:-.03em}
.offer .o-price span{font:13px var(--f-data);color:var(--c-ink-2)}
.offer .o-why{font-size:19px;line-height:1.35;font-weight:600;margin:0}
.offer .gets{margin:0}
.offer .o-open{font:12px var(--f-data);color:var(--c-ink-2);margin:auto 0 0}
.offer>.btn{align-self:flex-start}
.offer .o-more{font-size:13px;color:var(--c-ink-2);margin:0}
.flag.sp{background:var(--c-paid)}
.steps3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:720px){.steps3{grid-template-columns:minmax(0,1fr)}}
.plan .w{display:block;font-size:12px;color:var(--c-ink-2);font-weight:400;margin-top:2px;grid-column:2}
.plans .plan input{grid-row:1/span 4}
.bgrid3{grid-template-areas:"s1 pv" "s3 pv" "s4 pv"}
@media (max-width:900px){.bgrid3{grid-template-areas:"s1" "s3" "pv" "s4"}}
/* the agent who presents a Living in page */
.agentc{background:var(--c-paid);border-radius:var(--r-lg);overflow:hidden;padding-bottom:4px}
.agentc .ag-in{display:flex;gap:14px;align-items:center;padding:14px 16px 0}
.agentc .ag-ph{width:84px;height:84px;flex:none;border-radius:20px;overflow:hidden;margin:0}
.agentc .ag-ph img{width:100%;height:100%;object-fit:cover}
.agentc .ag-who{min-width:0}
.agentc .ag-n{font-weight:800;font-size:20px;line-height:1.2;margin:0}
.agentc .ag-b{font-size:14px;margin:2px 0 0}
.agentc .ag-lic{font:12px var(--f-data);color:var(--c-ink-2);margin:2px 0 0}
.agentc .ag-line{margin:10px 16px 0;font-size:15px}
.agentc .mc-btns{padding:12px 16px 0}
.agentc .mc-foot{padding:0 16px 10px}
.ask textarea{min-height:90px}

/* Advertise, Oct 27: make the three offers obvious. "Which one is you?" first, then where each spot goes, drawn in place. */
.chooser{margin-top:20px}
.ch-q{font:700 13px var(--f-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--c-clay-ink);margin:0 0 10px}
.ch-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media (max-width:760px){.ch-row{grid-template-columns:minmax(0,1fr);gap:8px}}
.ch-o{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:12px;align-items:center;min-height:64px;padding:14px 16px;
  border:1px solid var(--c-rule-strong);border-radius:var(--r-lg);background:var(--c-surface);color:var(--c-ink);text-decoration:none}
.ch-o b{font-size:17px;line-height:1.25}
.ch-o span{font:13px var(--f-data);color:var(--c-ink-2);grid-row:2}
.ch-o svg{grid-row:1/span 2;grid-column:2;color:var(--c-clay)}
.ch-o:hover{border-color:var(--c-ink)}
.ch-o:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
.offer{scroll-margin-top:16px}
.o-facts{margin:0;display:grid;gap:0;border-top:1px solid var(--c-rule)}
.o-facts>div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid var(--c-rule)}
.o-facts dt{font:11px/1.6 var(--f-data);text-transform:uppercase;letter-spacing:.06em;color:var(--c-ink-2)}
.o-facts dd{margin:0;font-size:15px;line-height:1.4}
.inplace{padding:0;overflow:hidden;border:1px solid var(--c-rule)}
.ip-bar{display:flex;align-items:center;gap:5px;padding:7px 10px;background:var(--c-surface-2);border-bottom:1px solid var(--c-rule)}
.ip-bar i{width:7px;height:7px;border-radius:50%;background:var(--c-rule-strong);flex:none}
.ip-bar span{font:10.5px var(--f-data);color:var(--c-ink-2);margin-left:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ip-pg{padding:12px;background:var(--c-paper)}
.ip-h{font-weight:700;font-size:14px;margin:0 0 10px}
.ip-sk{display:flex;gap:10px;align-items:center;padding:8px 0}
.ip-sk .d{width:34px;height:34px;border-radius:6px;background:var(--c-surface-2);flex:none}
.ip-sk span{flex:1;display:grid;gap:6px}
.ip-sk span i{height:8px;border-radius:4px;background:var(--c-surface-2);display:block}
.ip-sk span i.s{width:60%}
.ip-you{position:relative;outline:2px solid var(--c-clay);outline-offset:3px;border-radius:var(--r-md);margin:14px 3px 8px}
.ip-tag{position:absolute;top:-12px;right:8px;z-index:2;background:var(--c-clay);color:#fff;font:600 10.5px var(--f-ui);letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px}
.ip-u{zoom:.8}
.ip-see{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--c-ink);margin-top:-4px}
.ip-see svg{color:var(--c-clay)}
.tlist{list-style:none;margin:6px 0 10px;padding:0;border-top:1px solid var(--c-rule)}
.tlist li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:7px 0;border-bottom:1px solid var(--c-rule);font-size:15px}
.tlist .st{font:12px var(--f-data);color:var(--c-ink-2)}
.tlist .st.ok{color:var(--c-ok)}
.tlist a{font-size:14px;min-height:32px;display:inline-flex;align-items:center}
.role{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;margin:0 0 14px;font-size:15px}
.role span{font-weight:600}
.role label{display:inline-flex;gap:6px;align-items:center;min-height:36px;cursor:pointer}
.role input{width:18px;height:18px;accent-color:var(--c-ink)}
.wait{margin-top:18px;border:1px dashed var(--c-rule-strong);border-radius:var(--r-lg);padding:4px 16px}
.wait summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
.wait-f{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;padding:6px 0 14px}
@media (max-width:760px){.wait-f{grid-template-columns:minmax(0,1fr)}}
.wait-f .field{margin:0}
.wait-f .msg{grid-column:1/-1}
.field .warn{display:block;color:var(--c-error);font-size:13px;font-weight:500;margin-top:4px}
.field .warn:empty{display:none}
.field .cnt{display:block;font:12px var(--f-data);color:var(--c-ink-2);margin-top:4px;text-align:right}
.field .cnt:empty{display:none}
.backbar{margin:16px 0 0;padding:14px 18px;border-radius:var(--r-lg);background:var(--c-surface-2);font-size:16px;line-height:1.45}
.backbar.ok{background:var(--c-paid)}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.fprev .pv{padding:12px}
.mcard,.agentc,.perkc,.spot2,.mrow{overflow-wrap:anywhere}
.fprev{margin-top:14px;position:static}
.fprev .pv{background:var(--c-paper);border:1px solid var(--c-rule)}

/* An event's own poster, when there is no photo we can safely show: its date and name on a label over the category art. */
.ph.gen{container-type:inline-size}
/* Stand-in images: the tag sits top right, clear of the date and name label */
.phl.si{top:8px;right:8px;bottom:auto;background:color-mix(in srgb,var(--c-surface) 88%,transparent)}
@container (max-width:200px){.phl.si{display:none}}
/* Nothing to show yet: a calm picture and the next step */
.emptyp{display:grid;grid-template-columns:132px 1fr;gap:20px;align-items:center;padding:18px;margin:14px 0;border:1px solid var(--c-rule);border-radius:var(--r-lg);background:var(--c-surface)}
.emptyp .ph{aspect-ratio:1/1;margin:0}
.emptyp .bt{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
@media (max-width:520px){.emptyp{grid-template-columns:84px 1fr;gap:14px;padding:14px}}
.gen-l{position:absolute;left:7%;bottom:8%;max-width:86%;display:flex;gap:12px;align-items:center;background:var(--c-paper);color:var(--c-ink);
  border-radius:var(--r-md);padding:10px 14px 10px 12px;box-shadow:0 2px 0 rgba(0,0,0,.12)}
.gen-dt{display:grid;justify-items:center;line-height:1;flex:none;min-width:38px}
.gen-dt small{font:500 10.5px var(--f-data);letter-spacing:.08em}
.gen-dt b{font:800 30px/1.02 var(--f-ui);letter-spacing:-.02em;margin:2px 0}
.gen-t{font:700 15px/1.22 var(--f-ui);border-left:1px solid var(--c-rule-strong);padding-left:12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
@container (min-width:420px){.gen-t{font-size:19px}.gen-dt b{font-size:38px}.gen-l{padding:12px 18px 12px 14px}}
@container (max-width:200px){.gen-t,.gen-dt small:first-child{display:none}.gen-l{left:50%;bottom:6px;transform:translateX(-50%);padding:4px 8px 5px}.gen-dt{min-width:0}.gen-dt b{font-size:20px}.gen-dt small{font-size:9.5px}}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;margin:-2px 0 16px;cursor:pointer}
.chk input{width:20px;height:20px;flex:none;margin-top:1px;accent-color:var(--c-ink)}
.chk input[aria-invalid="true"]{outline:2px solid var(--c-error);outline-offset:2px}
