:root{
  --ds-blush-100:#fbeef2;
  --ds-blush-200:#fbdcea;
  --ds-blush-300:#f6c5da;
  --ds-blush-deep:#f4a8c7;
  --ds-lilac:#eae4f8;
  --ds-lilac-2:#d7def6;

  --ds-sheet:#fffffd;
  --ds-sheet-pale:#fcf2f9;
  --ds-sheet-2:#fbe7ee;

  --ds-rose:#ed4e98;
  --ds-rose-hover:#e12d7d;
  --ds-warm:#fa5d72;
  --ds-warm-2:#fc4a65;
  --ds-orange:#fb783a;
  --ds-orange-2:#f56c23;
  --ds-crush:#ff4e5c;
  --ds-periwinkle:#c9cef3;

  --ds-fg:#28252f;
  --ds-fg-pale:#6b6274;
  --ds-dim:#9a93a2;
  --ds-divider:#f1d9e2;

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

  --ds-sh-sm:0 6px 16px -8px rgba(237,78,152,.36);
  --ds-sh-md:0 18px 38px -18px rgba(237,78,152,.41);
  --ds-sh-lg:0 30px 60px -24px rgba(225,45,125,.43);

  --ds-display:"Trebuchet MS","Segoe UI",system-ui,-apple-system,"Helvetica Neue",sans-serif;
  --ds-face:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;

  --ds-container:1200px;
  --ds-pad:24px;
  --ds-sy:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--ds-face);color:var(--ds-fg);line-height:1.6;background:
    radial-gradient(1200px 700px at 85% -8%, var(--ds-blush-300) 0%, rgba(246,197,218,0) 55%),
    radial-gradient(900px 600px at -10% 8%, var(--ds-lilac) 0%, rgba(234,228,248,0) 55%),
    linear-gradient(180deg, var(--ds-blush-100) 0%, var(--ds-sheet-pale) 40%, var(--ds-blush-100) 100%);
  -webkit-font-smoothing:antialiased;
  margin:0;background-attachment:fixed;
}
img{max-width:100%;display:block}
.label,.menu-entry,.aside-mobile a,.ctl,.path a,.site-base a,.places-links a,.person__thread{text-decoration:none}

.persons-cols{gap:22px;display:grid;grid-template-columns:repeat(4,1fr)}

.wrapper{margin-inline:auto;padding-inline:var(--ds-pad);max-width:var(--ds-container)}
.eyebrow{margin-bottom:10px;color:var(--ds-rose);font-weight:800;text-transform:uppercase;font-size:.8rem;letter-spacing:.1em}
.sym-ticked svg{fill:currentColor;stroke:none}
.path a:hover{color:var(--ds-rose-hover)}

.stamp-chip{padding:8px 16px;align-items:center;box-shadow:var(--ds-sh-sm);font-weight:700;font-size:.82rem;gap:8px;border:1px solid var(--ds-divider);display:inline-flex;letter-spacing:.06em;color:var(--ds-rose);background:var(--ds-sheet);border-radius:var(--ds-r-pill)}
.stamp-chip svg{width:16px;color:var(--ds-warm);height:16px}
.label{letter-spacing:-.02em;font-family:var(--ds-display);font-weight:800;color:var(--ds-fg);font-size:1.28rem;align-items:center;display:flex;gap:11px}
.label:hover{color:var(--ds-fg)}
.label__pic{box-shadow:0 8px 18px -8px rgba(237,78,152,.82);border-radius:14px;background:linear-gradient(135deg,var(--ds-rose),var(--ds-warm) 55%,var(--ds-orange));flex-shrink:0;justify-content:center;color:#fffffd;display:inline-flex;height:42px;width:42px;align-items:center}
.label__pic svg{height:22px;width:22px}
button{font-family:inherit}
h1,h2,h3,h4{color:var(--ds-fg);font-family:var(--ds-display);letter-spacing:-.01em;line-height:1.12;margin:0}
p{margin:0}
.title-2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}
figure{margin:0}

.ctl{
  align-items:center;display:inline-flex;text-align:center;gap:9px;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;border:1.5px solid transparent;white-space:nowrap;font-weight:700;
  border-radius:var(--ds-r-pill);justify-content:center;font-size:1rem;padding:14px 26px;
  cursor:pointer;
}
.ctl svg{width:18px;height:18px}
.ctl--mini{font-size:.9rem;padding:10px 18px}
.ctl--big{padding:17px 32px;font-size:1.06rem}
.ctl--block{width:100%}
.ctl--cta{background:linear-gradient(95deg,var(--ds-orange),var(--ds-warm) 55%,var(--ds-rose));box-shadow:0 14px 26px -12px rgba(252,74,101,.75);color:#fffffd}
.ctl--cta:hover{color:#fffffd;transform:translateY(-2px);box-shadow:0 20px 34px -12px rgba(252,74,101,.87)}
.ctl--soft{background:var(--ds-sheet);border-color:var(--ds-divider);color:var(--ds-rose)}
.ctl--soft:hover{transform:translateY(-2px);color:var(--ds-rose-hover);background:var(--ds-sheet-2)}
.ctl--pale{color:var(--ds-rose-hover);background:#fffffd}
.ctl--pale:hover{color:var(--ds-rose-hover);transform:translateY(-2px);box-shadow:var(--ds-sh-md)}
.person__shine{box-shadow:var(--ds-sh-sm);color:var(--ds-warm);background:rgba(255,255,253,.9);border-radius:50%;z-index:2;height:36px;border:none;display:grid;width:36px;top:12px;transition:transform .16s,background .16s,color .16s;right:12px;place-items:center;cursor:pointer;position:absolute}
.person__shine svg{width:18px;height:18px}
.person__shine:hover{transform:scale(1.08)}
.person__shine.ticked{color:#fffffd;background:var(--ds-warm)}
.person__shine.ticked svg{fill:currentColor}
.person-view__shine{top:14px;height:46px;right:14px;width:46px}
.person-view__shine svg{width:21px;height:21px}
.person__inner{padding:16px 18px}
.person__heading{font-family:var(--ds-display);font-weight:800;font-size:1.12rem}
.person__heading a{text-decoration:none;outline-offset:3px;color:inherit}
.person__heading a::after{content:"";position:absolute;z-index:1;inset:0}
.person__heading span{font-weight:600;color:var(--ds-dim)}
.person__addr{font-size:.88rem;gap:6px;align-items:center;margin-top:4px;color:var(--ds-fg-pale);display:flex}
.person__addr .locator svg{height:14px;color:var(--ds-rose);width:14px}
.person__thread{border-radius:var(--ds-r-pill);width:100%;font-weight:700;margin-top:12px;align-items:center;background:linear-gradient(135deg,var(--ds-rose),var(--ds-warm));padding:9px 14px;display:inline-flex;color:#fffffd;position:relative;gap:7px;box-shadow:var(--ds-sh-sm);z-index:2;justify-content:center;font-size:.9rem;transition:transform .16s ease,box-shadow .16s ease}
.person__thread svg{width:16px;height:16px}
.person__thread:hover{box-shadow:var(--ds-sh-md);transform:translateY(-1px)}
.person-cols{display:grid;align-items:start;margin-top:22px;gap:clamp(24px,4vw,52px);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.person-column{min-width:0}
.person-view{box-shadow:var(--ds-sh-md);overflow:hidden;border-radius:var(--ds-r-lg);position:relative;margin:0;background:linear-gradient(160deg,var(--ds-blush-200),var(--ds-lilac-2))}
.person-view img{object-fit:cover;display:block;width:100%;aspect-ratio:4/5;height:auto}
.person-pager{height:44px;z-index:2;place-items:center;background:rgba(255,255,253,.9);color:var(--ds-rose-hover);box-shadow:var(--ds-sh-md);border-radius:50%;cursor:pointer;width:44px;position:absolute;top:50%;transform:translateY(-50%);transition:transform .15s ease,background .15s ease;border:none;display:grid}
.person-pager:hover{background:#fffffd;transform:translateY(-50%) scale(1.07)}
.person-pager svg{width:22px;height:22px}
.person-left{left:12px}
.person-next{right:12px}
.person-band{flex-wrap:wrap;margin-top:12px;display:flex;gap:10px}
.person-block{width:72px;cursor:pointer;padding:0;flex:0 0 auto;transition:transform .15s ease,border-color .15s ease;background:var(--ds-sheet-2);overflow:hidden;aspect-ratio:3/4;border:2px solid transparent;border-radius:var(--ds-r-sm);box-shadow:var(--ds-sh-sm)}
.person-block img{object-fit:cover;height:100%;display:block;width:100%}
.person-block:hover{transform:translateY(-2px)}
.person-block.ticked{border-color:var(--ds-rose)}
.person-aside{position:sticky;top:96px}
.person-intro{align-items:center;display:flex;margin-top:14px;gap:12px;flex-wrap:wrap}
.person-intro .stamp-chip{flex:none}
.person-hook{font-family:var(--ds-display);font-weight:800;line-height:1.1;font-size:clamp(1.7rem,3.2vw,2.3rem)}
.person-hook span{font-weight:600;color:var(--ds-dim);font-size:.62em}
.person-note{align-items:center;gap:7px;display:flex;margin-top:10px;font-size:1.02rem;color:var(--ds-fg-pale)}
.person-note .locator svg{height:18px;width:18px;color:var(--ds-rose)}
.person-note a{text-decoration:none;border-bottom:1px solid transparent;color:var(--ds-rose-hover);font-weight:600;transition:border-color .15s ease}
.person-note a:hover{border-bottom-color:currentColor}
.person-stats{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}
.person-aside .hook{margin-top:18px}
.person-items{flex-wrap:wrap;display:flex;gap:12px;margin-top:24px}
.led{color:#2eaf64;font-size:.6rem;line-height:1}
.block{padding-block:var(--ds-sy)}
.block--alt{background:var(--ds-sheet-2)}
.main-menu{gap:8px;display:flex;margin-left:auto;align-items:center}

.site-heading{border-bottom:1px solid var(--ds-divider);background:var(--ds-sheet);z-index:60;top:0;position:sticky}
.site-heading__inner{align-items:center;justify-content:space-between;min-height:74px;padding-block:12px;display:flex;gap:20px}
.aside-mobile{top:0;z-index:1100;box-shadow:-6px 0 30px rgba(40,37,47,.22);height:100vh;height:100dvh;transition:right .3s ease;padding:84px 22px 22px;width:80%;overflow-y:auto;right:-100%;position:fixed;background:var(--ds-sheet);max-width:320px}
.aside-mobile.current{right:0}
.aside-mobile nav{flex-direction:column;display:flex}
.aside-mobile a:not(.ctl){color:var(--ds-fg);font-weight:600;font-size:15px;border-bottom:1px solid var(--ds-divider);padding:14px 2px}
.aside-mobile a:not(.ctl):hover{color:var(--ds-rose-hover)}
.aside-mobile a.ctl{margin-top:22px}
svg{display:block}
.hook{font-size:1.06rem;margin-top:14px;color:var(--ds-fg-pale)}
::selection{background:rgba(237,78,152,.24)}
.person-card{border-radius:var(--ds-r-lg);border:1px solid rgba(255,255,253,.88);transition:transform .2s ease,box-shadow .2s ease;position:relative;background:var(--ds-sheet);overflow:hidden;box-shadow:var(--ds-sh-md)}
.person-card:hover{box-shadow:var(--ds-sh-lg);transform:translateY(-6px)}
.person__pic{position:relative;background:linear-gradient(160deg,var(--ds-blush-200),var(--ds-lilac-2));aspect-ratio:1/1;overflow:hidden}
.person__pic img{width:100%;height:100%;display:block;object-fit:cover}
.person__stamp{padding:5px 10px;gap:6px;top:12px;display:inline-flex;font-weight:700;background:rgba(255,255,253,.9);position:absolute;left:12px;font-size:.72rem;align-items:center;box-shadow:var(--ds-sh-sm);border-radius:var(--ds-r-pill);z-index:2;color:#2eaf64}
.pop{color:transparent;background:linear-gradient(92deg,var(--ds-rose),var(--ds-warm) 60%,var(--ds-orange));-webkit-background-clip:text;background-clip:text}
.menu-backdrop{position:fixed;z-index:1090;opacity:0;transition:opacity .3s ease;background:rgba(40,37,47,.5);visibility:hidden;inset:0}
.menu-backdrop.current{visibility:visible;opacity:1}
ul{list-style:none;margin:0;padding:0}
:focus-visible{outline:3px solid var(--ds-rose);outline-offset:2px;border-radius:6px}
.head-zone{max-width:640px;margin:0 auto 44px;text-align:center}
.thread{border-radius:var(--ds-r-lg);box-shadow:var(--ds-sh-lg);margin:0 auto;flex-direction:column;overflow:hidden;background:var(--ds-sheet);max-width:600px;border:1px solid rgba(255,255,253,.88);display:flex}
.thread__intro{border-bottom:1px solid var(--ds-divider);background:var(--ds-sheet);align-items:center;gap:14px;display:flex;padding:15px 20px}
.thread__column{flex:1;color:inherit;display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.thread__pic{position:relative;background:linear-gradient(160deg,var(--ds-blush-200),var(--ds-lilac-2));height:52px;box-shadow:var(--ds-sh-sm);border-radius:50%;overflow:hidden;width:52px;flex:none}
.thread__pic img{object-fit:cover;height:100%;width:100%}
.thread__pic::after{border-radius:50%;right:1px;bottom:1px;height:13px;position:absolute;content:"";border:2px solid var(--ds-sheet);width:13px;background:#2eaf64}
.thread__heading{line-height:1.15;font-family:var(--ds-display);font-weight:800;font-size:1.06rem;display:block;color:var(--ds-fg)}
.thread__heading span{font-weight:600;font-size:.84em;color:var(--ds-dim)}
.thread__subtitle{font-size:.82rem;color:var(--ds-fg-pale);display:block;margin-top:2px}
.thread__intro .stamp-chip{flex:none}
.thread__intro .stamp-chip .led{color:#2eaf64}
.thread__band{gap:12px;padding:24px 20px;flex-direction:column;background:linear-gradient(180deg,var(--ds-sheet-pale),var(--ds-blush-100));min-height:360px;max-height:56vh;display:flex;overflow-y:auto}
.thread__placeholder{text-align:center;align-self:center;font-size:.92rem;margin:auto 0;color:var(--ds-dim)}
.thread__block{align-self:flex-start;display:flex;max-width:82%}
.thread__block[hidden]{display:none}
.thread__block--alt{justify-content:flex-end;align-self:flex-end}
.thread__card{font-size:.98rem;border:1px solid var(--ds-divider);word-break:break-word;color:var(--ds-fg);border-radius:20px;padding:11px 15px 8px;box-shadow:var(--ds-sh-sm);line-height:1.5;position:relative;background:var(--ds-sheet);border-bottom-left-radius:7px}
.thread__block--alt .thread__card{border-color:transparent;background:linear-gradient(135deg,var(--ds-warm),var(--ds-rose));border-radius:20px;color:#fffffd;border-bottom-right-radius:7px}
.thread__when{margin-top:4px;color:var(--ds-dim);display:block;text-align:right;font-size:.66rem}
.thread__block--alt .thread__when{color:rgba(255,255,253,.82)}
.thread__lazy{padding:15px 17px;align-items:center;display:inline-flex;gap:5px}
.thread__lazy span{animation:bob 1.2s infinite ease-in-out;border-radius:50%;height:8px;background:var(--ds-blush-deep);width:8px}
.thread__lazy span:nth-child(2){animation-delay:.18s}
.thread__lazy span:nth-child(3){animation-delay:.36s}
.menu-entry{font-weight:600;font-size:.96rem;border-radius:var(--ds-r-pill);transition:background .18s,color .18s;padding:9px 14px;color:var(--ds-fg)}
.menu-entry:hover{background:var(--ds-sheet-2);color:var(--ds-rose-hover)}
.menu-shine{color:var(--ds-fg);cursor:pointer;gap:7px;background:none;position:relative;text-decoration:none;align-items:center;border:none;padding:9px 12px;border-radius:var(--ds-r-pill);transition:background .18s ease,color .18s ease;font-weight:600;font-size:.96rem;display:inline-flex}
.menu-shine:hover{color:var(--ds-rose-hover);background:var(--ds-sheet-2)}
.menu-shine svg{width:20px;height:20px;color:var(--ds-rose)}
.menu-shine:hover svg{color:var(--ds-rose-hover)}
.menu-shine__text{white-space:nowrap}
.menu-shine .thread-stamp{top:auto;position:static;right:auto}
.menu-shine-mobile{font-weight:600;gap:9px;cursor:pointer;align-items:center;padding:14px 2px;border:none;color:var(--ds-fg);background:none;display:flex;text-align:left;border-bottom:1px solid var(--ds-divider);width:100%;font-size:15px;text-decoration:none}
.menu-shine-mobile:hover{color:var(--ds-rose-hover)}
.menu-shine-mobile svg{height:18px;color:var(--ds-rose);width:18px}

.menu-btn{display:none;gap:5px;cursor:pointer;z-index:1105;padding:6px;flex-direction:column;border:none;background:none}
.menu-btn span{display:block;background:var(--ds-fg);height:3px;border-radius:2px;width:26px;transition:transform .3s ease,opacity .3s ease}
.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)}

.block.thread-page{padding-block:clamp(18px,3vw,38px)}
@keyframes bob{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-5px);opacity:1}}
.thread__ask{align-items:center;border-top:1px solid var(--ds-divider);background:var(--ds-sheet);padding:12px 16px;display:flex;gap:10px}
.thread__field{min-width:0;transition:border-color .16s,box-shadow .16s;padding:12px 16px;border:1.5px solid var(--ds-divider);flex:1;font-family:inherit;background:var(--ds-sheet-pale);color:var(--ds-fg);font-size:1rem;border-radius:var(--ds-r-pill)}
.thread__field:focus{outline:none;box-shadow:0 0 0 3px rgba(237,78,152,.17);border-color:var(--ds-rose)}
.thread__ctl{height:46px;border-radius:50%;transition:transform .15s ease,opacity .15s ease;color:#fffffd;border:none;display:grid;background:linear-gradient(135deg,var(--ds-warm),var(--ds-rose));cursor:pointer;box-shadow:0 10px 20px -10px rgba(252,74,101,.82);place-items:center;flex:none;width:46px}
.thread__ctl:hover{transform:translateY(-2px)}
.thread__ctl:disabled{cursor:default;opacity:.5;transform:none}
.thread__ctl svg{fill:currentColor;height:18px;stroke:none;width:18px}
.thread__note{padding:2px 20px 16px;color:var(--ds-dim);font-size:.8rem;text-align:center}
.thread__backdrop{padding:20px 22px 24px;flex-direction:column;text-align:center;gap:14px;align-items:center;border-top:1px solid var(--ds-divider);background:var(--ds-sheet);display:none}
.thread__backdrop-text{line-height:1.5;max-width:440px;color:var(--ds-fg-pale);font-size:.94rem;margin:0}
.thread__dialog{z-index:130;-webkit-backdrop-filter:blur(3px);position:fixed;display:none;padding:20px;justify-content:center;background:rgba(24,8,23,.55);inset:0;align-items:center;backdrop-filter:blur(3px)}
.thread__dialog-card{border:1px solid var(--ds-divider);text-align:center;width:100%;padding:32px 26px 28px;position:relative;box-shadow:var(--ds-sh-lg);background:var(--ds-sheet);max-width:420px;border-radius:22px}
.thread__dialog-close{top:10px;position:absolute;border:none;background:none;color:var(--ds-dim);padding:0;line-height:1;right:14px;cursor:pointer;font-size:1.6rem}
.thread__dialog-heading{color:var(--ds-fg);font-family:var(--ds-display);font-weight:800;font-size:1.22rem;margin:0 0 10px}
.thread__dialog-text{font-size:.96rem;color:var(--ds-fg-pale);line-height:1.5;margin:0 0 20px}
.thread-bubble{width:60px;text-decoration:none;z-index:80;display:grid;right:22px;background:linear-gradient(135deg,var(--ds-rose),var(--ds-warm));border-radius:50%;position:fixed;bottom:22px;height:60px;place-items:center;color:#fffffd;transition:transform .16s ease;box-shadow:var(--ds-sh-lg)}
.thread-bubble[hidden]{display:none}
.thread-bubble:hover{transform:translateY(-2px)}
.thread-bubble svg{width:26px;height:26px}
.thread-stamp{line-height:1;height:22px;min-width:22px;background:var(--ds-crush);padding:0 6px;box-shadow:var(--ds-sh-sm);color:#fffffd;border-radius:var(--ds-r-pill);top:-3px;right:-3px;font-size:.72rem;place-items:center;display:grid;border:2px solid var(--ds-sheet);font-weight:800;position:absolute}
.thread-stamp[hidden]{display:none}
.thread-bubble--block{align-items:center;border-radius:var(--ds-r-pill);padding:14px 22px;display:inline-flex;gap:9px;height:auto;width:auto}
.thread-bubble--block svg{width:20px;height:20px}
.thread-bubble__text{font-family:var(--ds-display);white-space:nowrap;font-weight:800;font-size:.98rem}
.thread-links{max-height:52vh;flex-direction:column;overflow-y:auto;gap:4px;margin-top:4px;display:flex}
.thread-row{border-radius:var(--ds-r-sm);transition:background .14s ease;text-decoration:none;gap:11px;display:flex;padding:9px 8px;color:var(--ds-fg);align-items:center}
.thread-row:hover{background:var(--ds-sheet-2)}
.thread-pic{background:linear-gradient(160deg,var(--ds-blush-200),var(--ds-lilac-2));height:42px;width:42px;overflow:hidden;border-radius:50%;flex:none}
.thread-pic img{object-fit:cover;width:100%;height:100%}
.thread-inner{min-width:0;flex:1}
.thread-inner strong{font-family:var(--ds-display);overflow:hidden;font-size:.96rem;text-overflow:ellipsis;font-weight:800;white-space:nowrap;display:block}
.thread-inner span{font-size:.82rem;overflow:hidden;text-overflow:ellipsis;color:var(--ds-fg-pale);white-space:nowrap;display:block}
.thread-row small{font-size:.7rem;flex:none;align-self:flex-start;color:var(--ds-dim)}
.bye-panel{padding:20px;display:none;justify-content:center;backdrop-filter:blur(3px);z-index:1200;position:fixed;inset:0;background:rgba(40,37,47,.55);align-items:center}
.bye-panel.ready{display:flex}
.bye-panel__card{position:relative;display:grid;color:var(--ds-fg);box-shadow:var(--ds-sh-lg);overflow:hidden;background:var(--ds-sheet);max-width:860px;border-radius:var(--ds-r-xl);grid-template-columns:.82fr 1fr;width:100%}
.bye-panel__aside{align-items:flex-start;padding:clamp(24px,4vw,40px);background:linear-gradient(160deg,var(--ds-rose),var(--ds-warm) 60%,var(--ds-orange));display:flex;color:#fffffd;justify-content:center;gap:8px;flex-direction:column;overflow:hidden;position:relative}
.bye-panel__aside::after{height:86%;content:"";border-radius:50%;right:-28%;width:86%;position:absolute;border:20px solid rgba(255,255,253,.12);bottom:-28%}
.bye-panel__aside img{border-radius:var(--ds-r-lg);width:100%;aspect-ratio:3/4;position:relative;object-fit:cover;box-shadow:var(--ds-sh-md);max-width:200px;border:3px solid rgba(255,255,253,.5)}
.bye-panel__aside .sym-ticked svg{height:64px;width:64px;fill:currentColor;stroke:none}
.bye-panel__aside p{font-size:1rem;max-width:200px;position:relative;font-weight:700}
.bye-panel__rank{position:relative;line-height:.85;font-family:var(--ds-display);font-weight:800;font-size:clamp(52px,8vw,88px)}
.bye-panel__main{position:relative;padding:clamp(24px,4vw,40px)}
.bye-panel__main .hook{margin-top:10px}
.bye-panel__main .ctl{margin-top:20px}
.bye-panel__main .thread-links{margin-top:18px;max-height:236px}
.bye-panel__close{height:38px;border-radius:50%;width:38px;top:14px;background:var(--ds-sheet);position:absolute;cursor:pointer;right:14px;border:1px solid var(--ds-divider);z-index:2;place-items:center;color:var(--ds-dim);display:grid;padding:0}
.bye-panel__close svg{width:15px;height:15px}
.bye-panel__close:hover{color:#fffffd;border-color:transparent;background:var(--ds-rose)}
.bye-panel__skip{width:fit-content;display:block;border:0;cursor:pointer;background:none;max-width:100%;text-decoration:underline;font-size:.84rem;margin:14px 0 0;color:var(--ds-dim)}
@media (max-width:600px){.bye-panel{padding:12px}.bye-panel__card{grid-template-columns:1fr}.bye-panel__aside{display:none}.bye-panel__main{padding:26px 22px}.bye-panel__main .ctl{width:100%}}

.blog{align-items:center;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);display:grid}
.blog__text>p:not(.eyebrow){font-size:1.04rem;color:var(--ds-fg-pale);margin-top:16px}
.blog__subtitle{color:var(--ds-rose-hover);margin-top:22px;font-family:var(--ds-display);font-size:1.1rem;font-weight:800}

.call__panel{flex-wrap:wrap;align-items:center;color:#fffffd;box-shadow:var(--ds-sh-lg);justify-content:space-between;position:relative;border-radius:var(--ds-r-xl);padding:clamp(38px,5vw,64px);gap:30px;overflow:hidden;background:linear-gradient(100deg,var(--ds-rose-hover),var(--ds-warm) 60%,var(--ds-orange));display:flex}
.call__blob{right:-90px;width:320px;border-radius:50%;height:320px;position:absolute;background:rgba(255,255,253,.13);top:-120px}
.call__text{z-index:2;position:relative}
.call__text h2{max-width:16ch;color:#fffffd}
.call__text p{max-width:46ch;margin-top:10px;color:rgba(255,255,253,.9)}
.call__panel .ctl{z-index:2;position:relative}

.site-base{color:#d7d1df;background:#28252f}
.site-base .wrapper{padding-block:56px 22px}
.site-base a{color:#d7d1df}
.site-base a:hover{color:#fffffd}

.bubble-call{right:22px;width:300px;padding:20px;max-width:calc(100vw - 44px);position:fixed;border-radius:var(--ds-r-lg);bottom:22px;box-shadow:var(--ds-sh-lg);z-index:80;border:1px solid rgba(255,255,253,.88);background:#fffffd}
.bubble-close{height:28px;place-items:center;cursor:pointer;padding:0;font-size:1.1rem;border-radius:50%;line-height:1;border:none;width:28px;display:grid;top:12px;color:var(--ds-fg-pale);right:12px;background:var(--ds-sheet-2);position:absolute}
.bubble-close:hover{color:#fffffd;background:var(--ds-rose)}
.bubble-heading{font-family:var(--ds-display);font-weight:800;padding-right:26px;font-size:1.04rem}
.bubble-text{margin-top:4px;font-size:.86rem;margin-bottom:14px;color:var(--ds-fg-pale)}
.bubble-opener{cursor:pointer;right:22px;position:fixed;z-index:80;color:#fffffd;display:none;width:60px;border-radius:50%;bottom:22px;align-items:center;height:60px;background:linear-gradient(135deg,var(--ds-rose),var(--ds-warm));box-shadow:var(--ds-sh-lg);border:none;justify-content:center}
.bubble-opener svg{height:26px;stroke:none;width:26px;fill:currentColor}
.hours{margin-top:10px;gap:4px;display:grid}
.path{font-size:.86rem;color:var(--ds-dim);gap:6px;justify-content:flex-start;margin-bottom:14px;display:flex;flex-wrap:wrap}
.strengths-items{display:grid;gap:10px;margin-top:14px}
.strengths-items li{color:var(--ds-fg);padding-left:24px;position:relative}
.strengths-items li::before{border-radius:50%;left:0;position:absolute;background:var(--ds-warm);content:"";top:.5em;width:10px;height:10px}

.page-cover{padding-block:clamp(40px,6vw,80px) 20px}
.page-cover h1{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:800}
.page-cover p{margin:16px auto 0;font-size:1.08rem;color:var(--ds-fg-pale)}
.stat{box-shadow:var(--ds-sh-sm);border-radius:var(--ds-r-md);align-items:center;border:1px solid rgba(255,255,253,.88);background:var(--ds-sheet);gap:12px;padding:14px 16px;display:flex}
.stat-sym{place-items:center;flex:none;border-radius:12px;color:var(--ds-rose);width:40px;background:var(--ds-sheet-2);height:40px;display:grid}
.stat-sym svg{width:18px;height:18px}
.stat-text dt{letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;color:var(--ds-dim)}
.stat-text dd{font-family:var(--ds-display);font-weight:800;margin:2px 0 0;font-size:.98rem}

.infos{display:grid;gap:clamp(28px,4vw,48px);grid-template-columns:1.2fr 1fr;align-items:start}
.infos-stats{gap:16px;grid-template-columns:1fr 1fr;display:grid}
.cityhall-heading{font-family:var(--ds-display);margin-bottom:14px;font-weight:800}
.cityhall-row{display:flex;font-size:.94rem;margin-top:10px;align-items:flex-start;gap:10px;color:var(--ds-fg-pale)}
.cityhall-row .locator{flex:none;color:var(--ds-rose)}
.cityhall-row .locator svg{width:16px;height:16px}
.topics-block{margin-bottom:14px;background:var(--ds-sheet);border-radius:var(--ds-r-md);overflow:hidden;border:1px solid var(--ds-divider);box-shadow:var(--ds-sh-sm)}
.topics-block summary{gap:16px;padding:20px 22px;font-family:var(--ds-display);justify-content:space-between;align-items:center;color:var(--ds-fg);list-style:none;font-weight:800;font-size:1.05rem;display:flex;cursor:pointer}
.topics-block summary::-webkit-details-marker{display:none}
.topics-block summary::after{color:var(--ds-rose);border-radius:50%;background:var(--ds-sheet-2);height:30px;transition:transform .25s ease;place-items:center;flex:none;font-size:1.2rem;width:30px;display:grid;content:"+"}
.topics-block[open] summary::after{background:var(--ds-rose);transform:rotate(45deg);color:#fffffd}
.topics-ans{color:var(--ds-fg-pale);padding:0 22px 20px}

.places{flex-direction:column;gap:32px;display:flex}
.places-set h2{font-size:1.15rem;margin-bottom:16px;font-weight:800;color:var(--ds-fg)}
.places-links{gap:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.places-links a{font-size:.92rem;gap:10px;box-shadow:var(--ds-sh-sm);transition:transform .14s,box-shadow .14s,color .14s;border:1px solid var(--ds-divider);border-radius:var(--ds-r-md);display:flex;color:var(--ds-fg);background:var(--ds-sheet);font-weight:600;align-items:center;justify-content:space-between;padding:13px 16px}
.places-links a:hover{transform:translateY(-3px);box-shadow:var(--ds-sh-md);color:var(--ds-rose-hover)}
.places-links a .locator{display:grid;color:var(--ds-rose);place-items:center;flex:none}
.places-links a .locator svg{height:16px;width:16px}
.credits{border-top:1px solid rgba(255,255,253,.08);padding-top:22px;color:#aa9daf;font-size:.86rem;margin-top:34px}
.blog__text .ctl{margin-top:26px}
.where-card{aspect-ratio:4/3;overflow:hidden;position:relative;border-radius:var(--ds-r-lg);border:1px solid rgba(255,255,253,.88);box-shadow:var(--ds-sh-md);background:var(--ds-lilac)}
.where-card.where-lazy{cursor:pointer}
.where-placeholder{inset:0;gap:10px;display:grid;background:linear-gradient(160deg,var(--ds-lilac-2),var(--ds-sheet-2));position:absolute;text-align:center;padding:20px;place-items:center}
.where-placeholder p{color:var(--ds-fg);font-weight:700}
.where-locator{color:var(--ds-warm);filter:drop-shadow(0 10px 12px rgba(252,74,101,.5))}
.where-locator svg{fill:currentColor;height:40px;stroke:none;width:40px}
.where-card iframe{position:absolute;inset:0;border:0;height:100%;width:100%}
.where-card.ready .where-placeholder{display:none}
.when{font-size:.9rem;gap:12px;color:var(--ds-fg-pale);justify-content:space-between;display:flex}
.infos-cityhall{border-radius:var(--ds-r-lg);background:var(--ds-sheet);padding:24px;box-shadow:var(--ds-sh-md);border:1px solid rgba(255,255,253,.88)}

.blog-block h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.blog-block h2{margin-top:34px;font-size:1.35rem;color:var(--ds-rose-hover);font-weight:800}
.blog-block p{margin-top:14px;color:var(--ds-fg-pale);font-size:1.04rem}
.blog-block p a{font-weight:600}
.blog-block ul{display:grid;margin-top:14px;gap:10px}
.blog-block li{color:var(--ds-fg-pale);padding-left:24px;position:relative}
.blog-block li::before{background:var(--ds-warm);left:0;position:absolute;content:"";width:10px;top:.5em;height:10px;border-radius:50%}
.blog-topics>.wrapper>h2{text-align:center;margin-bottom:28px}
.base-cols{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}
.base-label{align-items:center;color:#fffffd;margin-bottom:12px;display:flex;gap:10px;font-family:var(--ds-display);font-weight:800;font-size:1.2rem}
.base-column>p:not(.base-heading){font-size:.94rem;max-width:34ch;color:#aa9daf}
.base-heading{font-size:1rem;color:#fffffd;font-weight:800;margin-bottom:14px}
.base-links{gap:10px;font-size:.94rem;display:grid}
/* Fil d'Ariane robot placé dans l'article SEO : neutraliser les styles de liste de l'article (grille, retrait, puce). */
.blog-block .path{display:flex}.blog-block .path li{padding-left:0}.blog-block .path li::before{display:none}
.path li:not(:last-child)::after{content:"\00203a";margin-left:6px;color:var(--ds-dim)}
.path a{color:var(--ds-fg-pale)}

.ask{background:#fffffd;border-radius:var(--ds-r-lg);box-shadow:var(--ds-sh-md);border:1px solid rgba(255,255,253,.88);padding:clamp(24px,3vw,40px)}
.ask-block{display:grid;gap:7px;margin-bottom:18px}
.ask-block label{font-weight:700;font-size:.92rem}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{width:100%;padding:13px 16px;border-radius:var(--ds-r-sm);border:1.5px solid var(--ds-divider);background:var(--ds-sheet-pale);font-family:inherit;font-size:1rem;color:var(--ds-fg);transition:border-color .16s,box-shadow .16s}
.field:focus{outline:none;border-color:var(--ds-rose);box-shadow:0 0 0 3px rgba(237,78,152,.17)}
textarea.field{min-height:140px;resize:vertical}
.ask-note{font-weight:700}
.ask-note--ticked{color:#2eaf64}
.ask-note--hidden{color:var(--ds-rose-hover)}

.search-ask{margin:0 auto;display:flex;gap:12px;background:#fffffd;padding:12px;border-radius:var(--ds-r-pill);box-shadow:var(--ds-sh-md);border:1px solid rgba(255,255,253,.88)}
.search-ask .field{border:none;background:transparent;box-shadow:none;font-size:1.06rem}
.search-ask .field:focus{box-shadow:none}
.search-ask+.places{margin-top:40px}

.ask-box{max-width:640px}
.ask-placeholder{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.placeholder{text-align:center;padding-block:clamp(60px,10vw,140px)}
.placeholder__rank{font-family:var(--ds-display);font-weight:800;font-size:clamp(6rem,20vw,13rem);line-height:.9}
.placeholder__set{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}

@media (max-width:980px){
  .persons-cols{grid-template-columns:repeat(3,1fr)}
  .person-cols{grid-template-columns:1fr}
  .person-view{width:100%;max-width:380px;justify-self:start}
  .person-aside{position:static}
  .blog,.infos{grid-template-columns:1fr}
  .base-cols{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .main-menu{display:none}
  .menu-btn{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .aside-mobile,.menu-backdrop{display:none}
}
@media (max-width:600px){
  :root{--ds-sy:clamp(30px,7vw,48px)}
  .base-cols,.field-row{grid-template-columns:1fr}
  .persons-cols{grid-template-columns:repeat(2,1fr);gap:12px}
  .person__inner{padding:16px 10px}
  .call__panel{flex-direction:column;align-items:stretch;padding:32px 24px}
  .call__panel .ctl{width:100%;white-space:normal}
  .search-ask{flex-direction:column;border-radius:var(--ds-r-lg)}
  .search-ask .ctl{width:100%}
  .block--person{padding-top:0}
  .person-view img{aspect-ratio:1/1;max-height:46vh}
  .person-cols{margin-top:0}
  .person-aside{display:flex;flex-direction:column;margin-top:14px}
  .person-intro{order:1;margin-top:0}
  .person-note{order:2}
  .person-items{order:3;margin-top:16px;gap:10px}
  .person-items .ctl{flex:1 1 auto}
  .person-band{display:none}
  .person-stats{order:4}
  .person-aside .hook{order:5}
  .infos-stats{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .stat{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .stat-sym{width:34px;height:34px}
  .stat-text{min-width:0}
  .stat-text dd{font-size:.92rem;overflow-wrap:anywhere}
}
