:root{
  --pinktint-100:#120910;
  --pinktint-200:#180e13;
  --pinktint-300:#281018;
  --pinktint-deep:#34161f;
  --mauve:#110b11;
  --mauve-alt:#1c1321;

  --card:#1a0f14;
  --card-tint:#21131b;
  --card-alt:#2b1a24;

  --rose:#f5347a;
  --rose-hover:#ff2d6e;
  --pink-ink:#ff719a;
  --coral:#fd4c5d;
  --coral-alt:#fd3c50;
  --amber:#fd7b3d;
  --amber-alt:#ff6a24;
  --heart:#ff3b4b;
  --periwinkle:#9aa0e2;
  --promo-hover:linear-gradient(95deg,var(--amber),var(--coral) 55%,var(--rose));

  --copy:#f5eff1;
  --copy-tint:#b5aab1;
  --dim:#897d82;
  --line:#3a2530;

  --flip:#fffffe;
  --pure:#fffffe;
  --positive:#91c8ab;
  --line-tint:rgba(255,255,254,.04);
  --card-surface:rgba(16,11,16,.83);
  --overlay:rgba(0,2,0,.64);
  --ft-surface:#100508;
  --ft:#c9bdc2;
  --ft-alt:#f5eff1;
  --ft-tint:#887d84;
  --ft-border:rgba(255,255,254,.08);

  --ro-sm:14px;
  --ro-md:20px;
  --ro-lg:28px;
  --ro-xl:36px;
  --ro-pill:999px;

  --sh-sm:0 6px 16px -8px rgba(0,2,0,.55);
  --sh-md:0 18px 38px -18px rgba(0,2,0,.62);
  --sh-lg:0 30px 60px -24px rgba(0,2,0,.66);

  --heading:"Trebuchet MS","Segoe UI",system-ui,-apple-system,"Helvetica Neue",sans-serif;
  --font:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;

  --wrap:1200px;
  --inset:24px;
  --vgap:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  line-height:1.6;background:
    radial-gradient(1200px 700px at 85% -8%, var(--pinktint-300) 0%, transparent 55%),
    radial-gradient(900px 600px at -10% 8%, var(--mauve) 0%, transparent 55%),
    linear-gradient(180deg, var(--pinktint-100) 0%, var(--card-tint) 40%, var(--pinktint-100) 100%);font-family:var(--font);background-attachment:fixed;
  margin:0;
  -webkit-font-smoothing:antialiased;color:var(--copy);
}
img{display:block;max-width:100%}

.app-banner{border-bottom:1px solid var(--line);top:0;position:sticky;z-index:60;background:var(--card)}
.app-banner__inner{display:flex;padding-block:12px;min-height:74px;gap:20px;justify-content:space-between;align-items:center}
svg{display:block}
button{font-family:inherit}
.lead{margin-top:14px;font-size:1.06rem;color:var(--copy-tint)}
.menu-entry{font-weight:600;transition:background .18s,color .18s;border-radius:var(--ro-pill);color:var(--copy);font-size:.96rem;padding:9px 14px}
.menu-entry:hover{color:var(--rose-hover);background:var(--card-alt)}
.menu-twinkle{position:relative;align-items:center;font-weight:600;border:none;font-size:.96rem;cursor:pointer;display:inline-flex;border-radius:var(--ro-pill);color:var(--copy);text-decoration:none;padding:9px 12px;background:none;transition:background .18s ease,color .18s ease;gap:7px}
.menu-twinkle:hover{background:var(--card-alt);color:var(--rose-hover)}
.menu-twinkle svg{height:20px;width:20px;color:var(--rose)}
.menu-twinkle:hover svg{color:var(--rose-hover)}
.menu-twinkle__body{white-space:nowrap}
.menu-twinkle .messaging-status{top:auto;right:auto;position:static}
.menu-twinkle-mob{cursor:pointer;font-weight:600;padding:14px 2px;text-align:left;background:none;display:flex;gap:9px;width:100%;align-items:center;border:none;border-bottom:1px solid var(--line);text-decoration:none;color:var(--copy);font-size:15px}
.menu-twinkle-mob:hover{color:var(--rose-hover)}
.menu-twinkle-mob svg{height:18px;color:var(--rose);width:18px}

.menu-btn{border:none;gap:5px;cursor:pointer;background:none;flex-direction:column;display:none;padding:6px;z-index:1105}
.menu-btn span{border-radius:2px;transition:transform .3s ease,opacity .3s ease;display:block;width:26px;height:3px;background:var(--copy)}
.menu-btn.current span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.menu-btn.current span:nth-child(2){opacity:0}
.menu-btn.current span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}
.pretitle{letter-spacing:.1em;color:var(--rose);margin-bottom:10px;font-weight:800;font-size:.8rem;text-transform:uppercase}
:focus-visible{border-radius:6px;outline:3px solid var(--rose);outline-offset:2px}
.member-tile{position:relative;background:var(--card);border-radius:var(--ro-lg);transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease;overflow:hidden;border:1px solid var(--line-tint);cursor:pointer}
.member-tile:hover{box-shadow:var(--sh-lg);transform:translateY(-8px) scale(1.02);z-index:3}
.member__portrait{overflow:hidden;aspect-ratio:3/4;display:block;background:linear-gradient(160deg,var(--pinktint-200),var(--mauve-alt));position:relative}
.member__portrait img{transition:transform .5s ease,filter .3s ease;object-fit:cover;display:block;width:100%;height:100%}
.member-tile:hover .member__portrait img{filter:brightness(.7);transform:scale(1.1)}
.member__status{padding:5px 9px;box-shadow:0 2px 8px rgba(0,2,0,.16);position:absolute;border:1px solid #5d9ad9;top:10px;letter-spacing:.05em;font-weight:800;align-items:center;background:linear-gradient(135deg,#0e2e48,#091b33);z-index:3;font-size:.68rem;right:10px;gap:6px;border-radius:var(--ro-pill);display:inline-flex;color:#e8f3ff}
.member__status .dot{box-shadow:0 0 6px rgba(145,200,171,.71);position:relative;background:var(--positive);height:8px;color:transparent;border-radius:50%;width:8px;font-size:0}
.member__status .dot::after{animation:swing 1.8s ease-out infinite;position:absolute;content:"";inset:0;background:var(--positive);border-radius:50%}
.member__inner{text-align:left;left:0;background:linear-gradient(to top,rgba(0,2,0,.93),rgba(0,2,0,.71) 55%,rgba(0,2,0,0));right:0;z-index:2;bottom:0;transition:opacity .3s ease;position:absolute;padding:20px 15px 15px}
.member-tile:hover .member__inner{opacity:0}
.member__second{box-shadow:0 2px 8px rgba(0,2,0,.16);align-items:center;border-radius:var(--ro-pill);border:1px solid rgba(72,119,109,.91);padding:4px 9px;color:#f0fef5;font-size:.68rem;display:inline-flex;font-weight:700;gap:5px;margin-bottom:8px;letter-spacing:.02em;background:rgba(21,48,42,.93)}
.member__second svg{color:#a5e4cd;width:14px;height:14px}
.member__name{font-family:var(--heading);line-height:1.2;color:#fffffe;font-weight:800;font-size:1.32rem}
.member__name span{font-weight:600;color:rgba(255,255,254,.83);font-size:.86rem}
.member__place{display:flex;margin-top:3px;color:rgba(255,255,254,.91);align-items:center;gap:6px;font-size:.82rem}
.member__place .tack svg{width:14px;height:14px;color:#fffffe}
.member__screen{inset:0;padding:20px;background:linear-gradient(to bottom,rgba(0,2,0,.12),rgba(0,2,0,.91));display:flex;justify-content:center;z-index:4;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;position:absolute;align-items:flex-end;opacity:0}
.member-tile:hover .member__screen{visibility:visible;opacity:1}
.member__box{width:100%;transition:transform .4s cubic-bezier(.175,.885,.32,1.275);text-align:center;transform:translateY(20px)}
.member-tile:hover .member__box{transform:translateY(0)}
.member__body{overflow:hidden;display:-webkit-box;font-size:.85rem;color:#fffffe;line-height:1.4;margin:0 0 12px;text-shadow:0 2px 4px rgba(0,2,0,.82);-webkit-box-orient:vertical;-webkit-line-clamp:2}
.member__messaging{transition:transform .3s ease,box-shadow .3s ease;align-items:center;border-radius:50%;color:var(--flip);box-shadow:0 4px 15px rgba(0,2,0,.3);width:50px;height:50px;justify-content:center;display:inline-flex;background:linear-gradient(135deg,var(--rose),var(--coral))}
.member__messaging svg{width:22px;height:22px}
.member__messaging:hover{box-shadow:var(--sh-md);transform:scale(1.1)}
.member__twinkle{transition:transform .2s ease,background .2s ease,color .2s ease;height:34px;color:#fffffe;width:34px;cursor:pointer;position:absolute;z-index:6;border-radius:50%;border:none;box-shadow:0 2px 8px rgba(0,2,0,.3);background:rgba(0,2,0,.42);top:10px;place-items:center;display:grid;left:10px}
.member__twinkle svg{height:18px;width:18px}
.member__twinkle:hover{transform:scale(1.1);background:rgba(0,2,0,.58)}
.member__twinkle.full{color:var(--flip);background:var(--coral)}
.member__twinkle.full svg{fill:currentColor}
p{margin:0}
h1,h2,h3,h4{line-height:1.12;color:var(--copy);letter-spacing:-.01em;font-family:var(--heading);margin:0}

.btn{
  text-align:center;font-weight:700;gap:9px;border:1.5px solid transparent;
  padding:14px 26px;display:inline-flex;justify-content:center;cursor:pointer;
  font-size:1rem;border-radius:var(--ro-pill);transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;white-space:nowrap;
  align-items:center;
}
.btn svg{height:18px;width:18px}
.btn--mini{padding:10px 18px;font-size:.9rem}
.btn--stretch{width:100%}
.btn--primary{color:var(--flip);box-shadow:0 14px 26px -12px rgba(250,76,101,.76);background:linear-gradient(95deg,var(--amber),var(--coral) 55%,var(--rose))}
.btn--primary:hover{color:var(--flip);box-shadow:0 20px 34px -12px rgba(250,76,101,.84);transform:translateY(-2px);background:var(--promo-hover)}
.btn--secondary{border-color:var(--line);background:var(--card);color:var(--rose)}
.btn--secondary:hover{background:var(--card-alt);color:var(--rose-hover);transform:translateY(-2px)}
.btn--pale{color:var(--rose-hover);background:var(--pure)}
.btn--pale:hover{color:var(--rose-hover);transform:translateY(-2px);box-shadow:var(--sh-md)}

.container{padding-inline:var(--inset);margin-inline:auto;max-width:var(--wrap)}
.aside-mob{box-shadow:-6px 0 30px rgba(40,36,49,.2);transition:right .3s ease;width:80%;height:100vh;overflow-y:auto;height:100dvh;padding:84px 22px 22px;z-index:1100;max-width:320px;background:var(--card);top:0;right:-100%;position:fixed}
.aside-mob.current{right:0}
.aside-mob nav{display:flex;flex-direction:column}
.aside-mob a:not(.btn){font-weight:600;padding:14px 2px;color:var(--copy);font-size:15px;border-bottom:1px solid var(--line)}
.aside-mob a:not(.btn):hover{color:var(--rose-hover)}
.aside-mob a.btn{margin-top:22px}
ul{list-style:none;padding:0;margin:0}
.block{padding-block:var(--vgap)}
.block--inv{background:var(--card-alt)}
figure{margin:0}
::selection{background:rgba(238,77,151,.23)}
.intro-head{max-width:640px;margin:0 auto 44px;text-align:center}
.intro-head .btn{margin-top:24px}
.trail a:hover{color:var(--rose-hover)}
.body-menu{align-items:center;gap:8px;display:flex;margin-left:auto}
.menu-screen{background:var(--overlay);position:fixed;z-index:1090;transition:opacity .3s ease;inset:0;opacity:0;visibility:hidden}
.menu-screen.current{visibility:visible;opacity:1}
.brand,.menu-entry,.aside-mob a,.btn,.trail a,.app-end a,.towns-list a,.member__messaging{text-decoration:none}
.ic-full svg{stroke:none;fill:currentColor}
.title-2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}

.status-chip{color:var(--rose);letter-spacing:.06em;border:1px solid var(--line);gap:8px;box-shadow:var(--sh-sm);background:var(--card);align-items:center;font-weight:700;padding:8px 16px;border-radius:var(--ro-pill);font-size:.82rem;display:inline-flex}
.status-chip svg{height:16px;width:16px;color:var(--coral)}
.pop{background:linear-gradient(92deg,var(--rose),var(--coral) 60%,var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent}
.brand{letter-spacing:-.02em;font-family:var(--heading);font-weight:800;font-size:1.28rem;align-items:center;gap:11px;display:flex;color:var(--copy)}
.brand:hover{color:var(--copy)}
.brand__mark{background:linear-gradient(135deg,var(--rose),var(--coral) 55%,var(--amber));align-items:center;flex-shrink:0;color:var(--flip);display:inline-flex;height:42px;border-radius:14px;box-shadow:0 8px 18px -8px rgba(238,77,151,.82);width:42px;justify-content:center}
.brand__mark svg{width:22px;height:22px}



.members-cols{gap:5px;display:grid;grid-template-columns:repeat(4,1fr)}
@media(max-width:768px){.member__screen{opacity:1;visibility:visible;inset:auto 7px 8px auto;width:auto;height:auto;padding:0;background:none}.member__box{width:auto;transform:none}.member__body{display:none}.member__messaging{width:34px;height:34px}.member__messaging svg{width:16px;height:16px}.member__twinkle{top:8px;left:8px;width:30px;height:30px}.member__twinkle svg{width:16px;height:16px}.member__status{top:8px;right:8px;gap:4px;padding:3px 7px;font-size:9.5px;letter-spacing:.03em}.member__status .dot{width:6px;height:6px}.member-tile .member__inner{padding:10px 9px 9px}.member__second{gap:3px;margin-bottom:5px;padding:3px 6px;font-size:9.5px}.member__second svg{width:12px;height:12px}.member__name{font-size:.92rem;line-height:1.2;padding-right:40px}.member__name span{font-size:.72rem;white-space:nowrap}.member__place{font-size:.72rem;gap:4px;margin-top:2px;padding-right:40px}.member__place .tack svg{width:12px;height:12px}}
@keyframes swing{0%{opacity:.6;transform:scale(1)}100%{opacity:0;transform:scale(2.4)}}

.editorial{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(28px,4vw,56px)}
.editorial__body>p:not(.pretitle){margin-top:16px;color:var(--copy-tint);font-size:1.04rem}
.editorial__second{font-family:var(--heading);font-size:1.1rem;margin-top:22px;color:var(--rose-hover);font-weight:800}

.search-form{border-radius:var(--ro-pill);border:1px solid var(--line-tint);padding:12px;background:var(--card);box-shadow:var(--sh-md);display:flex;margin:0 auto;gap:12px}
.search-form .entry{border:none;font-size:1.06rem;background:transparent;box-shadow:none}
.search-form .entry:focus{box-shadow:none}
.search-form+.towns{margin-top:40px}

.dot{color:var(--positive);line-height:1;font-size:.6rem}

.form{background:var(--card);padding:clamp(24px,3vw,40px);border-radius:var(--ro-lg);border:1px solid var(--line-tint);box-shadow:var(--sh-md)}
.form-cell{margin-bottom:18px;gap:7px;display:grid}
.form-cell label{font-weight:700;font-size:.92rem}
.end-cols{grid-template-columns:1.6fr 1fr 1fr;gap:40px;display:grid}
.end-brand{font-family:var(--heading);display:flex;gap:10px;align-items:center;color:var(--ft-alt);font-weight:800;font-size:1.2rem;margin-bottom:12px}
.end-column>p:not(.end-name){color:var(--ft-tint);font-size:.94rem;max-width:34ch}
.end-name{color:var(--ft-alt);font-size:1rem;margin-bottom:14px;font-weight:800}
.end-list{font-size:.94rem;display:grid;gap:10px}
.teaser-shot{display:block;object-fit:cover;width:100%;background:#000200;pointer-events:none;height:100%}
.teaser-dot{top:50%;font-size:.64rem;display:grid;height:28px;position:absolute;color:#fffffe;background:rgba(0,2,0,.55);padding-left:2px;transform:translate(-50%,-50%);box-shadow:var(--sh-sm);width:28px;place-items:center;border-radius:50%;line-height:1;left:50%;pointer-events:none}
.teaser-status{font-weight:700;position:absolute;padding:5px 9px;letter-spacing:.02em;box-shadow:var(--sh-sm);align-items:center;display:inline-flex;z-index:2;bottom:12px;font-size:.7rem;gap:4px;left:12px;color:#fffffe;background:rgba(0,2,0,.64);border-radius:var(--ro-pill)}
.editorial__body .btn{margin-top:26px}
.metric{border-radius:var(--ro-md);box-shadow:var(--sh-sm);border:1px solid var(--line-tint);align-items:center;background:var(--card);padding:14px 16px;display:flex;gap:12px}
.metric-ic{place-items:center;color:var(--rose);height:40px;background:var(--card-alt);border-radius:12px;flex:none;display:grid;width:40px}
.metric-ic svg{height:18px;width:18px}
.metric-body dt{text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;color:var(--dim)}
.metric-body dd{font-family:var(--heading);font-weight:800;font-size:.98rem;margin:2px 0 0}


.hook__box{padding:clamp(38px,5vw,64px);overflow:hidden;box-shadow:var(--sh-lg);position:relative;justify-content:space-between;border-radius:var(--ro-xl);background:linear-gradient(100deg,var(--rose-hover),var(--coral) 60%,var(--amber));gap:30px;flex-wrap:wrap;align-items:center;display:flex;color:var(--flip)}
.hook__shape{right:-90px;top:-120px;background:rgba(255,255,254,.12);height:320px;border-radius:50%;width:320px;position:absolute}
.hook__body{position:relative;z-index:2}
.hook__body h2{color:var(--flip);max-width:16ch}
.hook__body p{max-width:46ch;color:rgba(255,255,254,.93);margin-top:10px}
.hook__box .btn{position:relative;z-index:2}

.app-end{color:var(--ft);background:var(--ft-surface)}
.app-end .container{padding-block:56px 22px}
.app-end a{color:var(--ft)}
.app-end a:hover{color:var(--ft-alt)}
.editorial-block .trail{display:flex}.editorial-block .trail li{padding-left:0}.editorial-block .trail li::before{display:none}
.trail li:not(:last-child)::after{margin-left:6px;content:"\00203a";color:var(--dim)}
.trail a{color:var(--copy-tint)}
.entry-line{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.entry{padding:13px 16px;border-radius:var(--ro-sm);font-family:inherit;background:var(--card-tint);width:100%;border:1.5px solid var(--line);color:var(--copy);transition:border-color .16s,box-shadow .16s;font-size:1rem}
.entry:focus{box-shadow:0 0 0 3px rgba(238,77,151,.14);outline:none;border-color:var(--rose)}
textarea.entry{resize:vertical;min-height:140px}

.floater-tab{align-items:center;border-radius:50%;position:fixed;box-shadow:var(--sh-lg);right:22px;cursor:pointer;border:none;justify-content:center;bottom:22px;color:var(--flip);height:60px;background:linear-gradient(135deg,var(--rose),var(--coral));text-decoration:none;display:flex;z-index:80;width:60px}
.floater-tab svg{width:26px;fill:currentColor;height:26px;stroke:none}
.floater-tab--body{padding:13px 20px;max-width:calc(100vw - 44px);font-family:var(--heading);gap:9px;height:auto;font-weight:800;font-size:.95rem;width:auto;border-radius:var(--ro-pill)}
.floater-tab--body svg{width:20px;height:20px}
.floater-body{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.credits{padding-top:22px;margin-top:34px;border-top:1px solid var(--ft-border);font-size:.86rem;color:var(--ft-tint)}

.form-box{max-width:640px}
.form-ghost{height:1px;left:-9999px;width:1px;overflow:hidden;position:absolute}
.values-items{gap:10px;display:grid;margin-top:14px}
.values-items li{position:relative;padding-left:24px;color:var(--copy)}
.values-items li::before{height:10px;left:0;border-radius:50%;top:.5em;width:10px;background:var(--coral);position:absolute;content:""}
.opening{margin-top:10px;gap:4px;display:grid}
.info-town-hall{background:var(--card);border-radius:var(--ro-lg);padding:24px;border:1px solid var(--line-tint);box-shadow:var(--sh-md)}
.member-teaser-run{font-size:1.9rem;border-radius:50%;background:rgba(0,2,0,.49);top:50%;height:78px;place-items:center;position:absolute;color:#fffffe;cursor:pointer;border:none;line-height:1;z-index:3;padding-left:6px;transition:transform .15s ease,background .15s ease;width:78px;transform:translate(-50%,-50%);left:50%;display:grid;box-shadow:var(--sh-md)}
.member-teaser-run:hover{background:rgba(0,2,0,.71);transform:translate(-50%,-50%) scale(1.07)}
.member-aside{position:sticky;top:96px}
.member-intro{align-items:center;flex-wrap:wrap;margin-top:14px;display:flex;gap:12px}
.member-intro .status-chip{flex:none}
.member-lead{font-family:var(--heading);font-weight:800;font-size:clamp(1.7rem,3.2vw,2.3rem);line-height:1.1}
.member-lead span{font-weight:600;color:var(--dim);font-size:.62em}
.member-hint{font-size:1.02rem;margin-top:10px;gap:7px;align-items:center;display:flex;color:var(--copy-tint)}
.member-hint .tack svg{color:var(--rose);height:18px;width:18px}
.member-hint a{color:var(--rose-hover);border-bottom:1px solid transparent;text-decoration:none;font-weight:600;transition:border-color .15s ease}
.member-hint a:hover{border-bottom-color:currentColor}
.member-metrics{flex-wrap:wrap;display:flex;gap:8px;margin-top:16px}
.member-aside .lead{margin-top:18px}
.member-items{display:flex;margin-top:24px;flex-wrap:wrap;gap:12px}
.town-hall-name{font-family:var(--heading);margin-bottom:14px;font-weight:800}
.town-hall-line{display:flex;margin-top:10px;align-items:flex-start;gap:10px;color:var(--copy-tint);font-size:.94rem}
.town-hall-line .tack{flex:none;color:var(--rose)}
.town-hall-line .tack svg{width:16px;height:16px}
.editorial-block .trail,.trail:has(+ .intro-head){justify-content:center}
.form-hint{font-weight:700}
.form-hint--full{color:var(--positive)}
.form-hint--hidden{color:var(--rose-hover)}
.trail{gap:6px;justify-content:flex-start;margin-bottom:14px;color:var(--dim);font-size:.86rem;display:flex;flex-wrap:wrap}

.page-hero{padding-block:clamp(40px,6vw,80px) 20px}
.page-hero h1{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:800}
.page-hero p{color:var(--copy-tint);margin:16px auto 0;font-size:1.08rem}

.info{gap:clamp(28px,4vw,48px);align-items:start;grid-template-columns:1.2fr 1fr;display:grid}
.info-metrics{grid-template-columns:1fr 1fr;display:grid;gap:16px}
.member-shot__twinkle{height:46px;top:14px;right:14px;width:46px}
.member-shot__twinkle svg{width:21px;height:21px}
.member-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,52px);display:grid;margin-top:22px}
.member-column{min-width:0}
.member-shot{box-shadow:var(--sh-md);margin:0;border-radius:var(--ro-lg);overflow:hidden;background:linear-gradient(160deg,var(--pinktint-200),var(--mauve-alt));position:relative}
.member-shot img{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover}
.member-pager{z-index:2;transform:translateY(-50%);box-shadow:var(--sh-md);place-items:center;cursor:pointer;width:44px;border-radius:50%;border:none;color:var(--rose-hover);transition:transform .15s ease,background .15s ease;position:absolute;display:grid;height:44px;top:50%;background:var(--card-surface)}
.member-pager:hover{transform:translateY(-50%) scale(1.07);background:var(--card-surface)}
.member-pager svg{width:22px;height:22px}
.member-prev{left:12px}
.member-right{right:12px}
.member-rail{gap:10px;flex-wrap:wrap;display:flex;margin-top:12px}
.member-cell{padding:0;box-shadow:var(--sh-sm);flex:0 0 auto;transition:transform .15s ease,border-color .15s ease;width:72px;cursor:pointer;overflow:hidden;border:2px solid transparent;background:var(--card-alt);aspect-ratio:3/4;border-radius:var(--ro-sm)}
.member-cell img{width:100%;height:100%;display:block;object-fit:cover}
.member-cell:hover{transform:translateY(-2px)}
.member-cell.full{border-color:var(--rose)}
.member-column [hidden]{display:none!important}
.member-teaser{width:100%;object-fit:contain;background:#000200;height:auto;display:block;max-height:70vh}
.member-cell--teaser{position:relative}
.place-tile{border-radius:var(--ro-lg);background:var(--mauve);box-shadow:var(--sh-md);position:relative;aspect-ratio:4/3;border:1px solid var(--line-tint);overflow:hidden}
.place-tile.place-lazy{cursor:pointer}
.place-ghost{place-items:center;background:linear-gradient(160deg,var(--mauve-alt),var(--card-alt));text-align:center;gap:10px;inset:0;position:absolute;display:grid;padding:20px}
.place-ghost p{color:var(--copy);font-weight:700}
.place-tack{color:var(--coral);filter:drop-shadow(0 10px 12px rgba(250,76,101,.49))}
.place-tack svg{width:40px;height:40px;stroke:none;fill:currentColor}
.place-tile iframe{position:absolute;inset:0;border:0;width:100%;height:100%}
.place-tile.is-ready .place-ghost{display:none}

.editorial-block h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.editorial-block h2{color:var(--rose-hover);font-size:1.35rem;margin-top:34px;font-weight:800}
.editorial-block p{font-size:1.04rem;color:var(--copy-tint);margin-top:14px}
.editorial-block p a{font-weight:600}
.editorial-block ul{margin-top:14px;gap:10px;display:grid}
.editorial-block li{color:var(--copy-tint);padding-left:24px;position:relative}
.editorial-block li::before{width:10px;height:10px;background:var(--coral);left:0;top:.5em;content:"";position:absolute;border-radius:50%}

.towns{flex-direction:column;display:flex;gap:32px}
.towns-block h2{margin-bottom:16px;color:var(--copy);font-size:1.15rem;font-weight:800}
.towns-list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}
.towns-list a{color:var(--copy);font-size:.92rem;font-weight:600;gap:10px;box-shadow:var(--sh-sm);justify-content:space-between;border:1px solid var(--line);transition:transform .14s,box-shadow .14s,color .14s;align-items:center;display:flex;padding:13px 16px;border-radius:var(--ro-md);background:var(--card)}
.towns-list a:hover{transform:translateY(-3px);box-shadow:var(--sh-md);color:var(--rose-hover)}
.towns-list a .tack{color:var(--rose);display:grid;place-items:center;flex:none}
.towns-list a .tack svg{width:16px;height:16px}

.messaging-status{border-radius:var(--ro-pill);height:22px;place-items:center;font-size:.72rem;box-shadow:var(--sh-sm);top:-3px;font-weight:800;color:var(--flip);line-height:1;min-width:22px;background:var(--heart);padding:0 6px;display:grid;position:absolute;border:2px solid var(--card);right:-3px}
.messaging-status[hidden]{display:none}

.ghost{text-align:center;padding-block:clamp(60px,10vw,140px)}
.ghost__num{font-family:var(--heading);font-weight:800;line-height:.9;font-size:clamp(6rem,20vw,13rem)}
.ghost__block{gap:14px;display:flex;flex-wrap:wrap;margin-top:30px;justify-content:center}
.time{gap:12px;display:flex;justify-content:space-between;font-size:.9rem;color:var(--copy-tint)}

@media (max-width:980px){
  .members-cols{grid-template-columns:repeat(3,1fr)}
  .member-cols{grid-template-columns:1fr}
  .member-shot{width:100%;max-width:380px;justify-self:start}
  .member-aside{position:static}
  .editorial,.info{grid-template-columns:1fr}
  .end-cols{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .body-menu{display:none}
  .menu-btn{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .aside-mob,.menu-screen{display:none}
}
@media (max-width:600px){
  :root{--vgap:clamp(30px,7vw,48px);--inset:8px}
  .end-cols,.entry-line{grid-template-columns:1fr}
  .members-cols{grid-template-columns:repeat(2,1fr);gap:5px}
  .member-tile{border-radius:var(--ro-sm)}
  .member__inner{padding:16px 10px}
  .hook__box{flex-direction:column;align-items:stretch;padding:32px 24px}
  .hook__box .btn{width:100%;white-space:normal}
  .search-form{flex-direction:column;border-radius:var(--ro-lg)}
  .search-form .btn{width:100%}
  .block--member{padding-top:0}
  .member-shot img{aspect-ratio:1/1;max-height:46vh}
  .member-cols{margin-top:0}
  .member-aside{display:flex;flex-direction:column;margin-top:14px}
  .member-intro{order:1;margin-top:0}
  .member-hint{order:2}
  .member-items{order:3;margin-top:16px;gap:10px}
  .member-items .btn{flex:1 1 auto}
  .member-rail{display:none}
  .member-metrics{order:4}
  .member-aside .lead{order:5}
  .info-metrics{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .metric{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .metric-ic{width:34px;height:34px}
  .metric-body{min-width:0}
  .metric-body dd{font-size:.92rem;overflow-wrap:anywhere}
}
