:root{
  --c-rose-100:#fbecf5;
  --c-rose-200:#fbddeb;
  --c-rose-300:#f7c4db;
  --c-rose-deep:#f4a8ca;
  --c-wisteria:#eae8f8;
  --c-wisteria-alt:#d7ddf6;

  --c-card:#fffffe;
  --c-card-soft:#fcf2f6;
  --c-card-alt:#fde7f1;

  --c-primary:#ed5098;
  --c-primary-active:#df2f7c;
  --c-coral:#f95d72;
  --c-coral-alt:#fa4c62;
  --c-peach:#fa7a3b;
  --c-peach-alt:#f56926;
  --c-crimson:#fe4e5d;
  --c-peri:#c9ccf0;

  --c-ink:#2a2732;
  --c-ink-soft:#6a6674;
  --c-quiet:#9b91a2;
  --c-line:#f4dae4;

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

  --c-shade-sm:0 6px 16px -8px rgba(237,80,152,.33);
  --c-shade-md:0 18px 38px -18px rgba(237,80,152,.39);
  --c-shade-lg:0 30px 60px -24px rgba(223,47,124,.42);

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

  --c-container:1200px;
  --c-gutter:24px;
  --c-section-y:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(1200px 700px at 85% -8%, var(--c-rose-300) 0%, rgba(247,196,219,.01) 55%),
    radial-gradient(900px 600px at -10% 8%, var(--c-wisteria) 0%, rgba(234,232,248,.01) 55%),
    linear-gradient(180deg, var(--c-rose-100) 0%, var(--c-card-soft) 40%, var(--c-rose-100) 100%);font-family:var(--c-sans);background-attachment:fixed;margin:0;
  line-height:1.6;
  color:var(--c-ink);-webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}

.block.talk-doc{padding-block:clamp(18px,3vw,38px)}

.profiles-layout{gap:22px;grid-template-columns:repeat(4,1fr);display:grid}
ul{padding:0;list-style:none;margin:0}
.path a:hover{color:var(--c-primary-active)}
.links-overlay{inset:0;opacity:0;z-index:1090;position:fixed;transition:opacity .3s ease;visibility:hidden;background:rgba(42,39,50,.5)}
.links-overlay.current{visibility:visible;opacity:1}

.dot-chip{letter-spacing:.06em;font-weight:700;background:var(--c-card);box-shadow:var(--c-shade-sm);font-size:.82rem;gap:8px;display:inline-flex;border:1px solid var(--c-line);align-items:center;padding:8px 16px;border-radius:var(--c-rnd-pill);color:var(--c-primary)}
.dot-chip svg{width:16px;height:16px;color:var(--c-coral)}
.led{font-size:.6rem;color:#2eaf68;line-height:1}
.section-head{margin:0 auto 44px;max-width:640px;text-align:center}
.page-links{display:flex;align-items:center;gap:8px;margin-left:auto}
svg{display:block}
:focus-visible{border-radius:6px;outline:3px solid var(--c-primary);outline-offset:2px}
.heading-2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}
.block{padding-block:var(--c-section-y)}
.block-second{background:var(--c-card-alt)}
::selection{background:rgba(237,80,152,.21)}
.links-a{font-weight:600;color:var(--c-ink);border-radius:var(--c-rnd-pill);transition:background .18s,color .18s;padding:9px 14px;font-size:.96rem}
.links-a:hover{color:var(--c-primary-active);background:var(--c-card-alt)}
.links-twinkle{align-items:center;position:relative;cursor:pointer;border:none;background:none;display:inline-flex;gap:7px;transition:background .18s ease,color .18s ease;border-radius:var(--c-rnd-pill);font-weight:600;padding:9px 12px;font-size:.96rem;text-decoration:none;color:var(--c-ink)}
.links-twinkle:hover{background:var(--c-card-alt);color:var(--c-primary-active)}
.links-twinkle svg{width:20px;color:var(--c-primary);height:20px}
.links-twinkle:hover svg{color:var(--c-primary-active)}
.links-twinkle-body{white-space:nowrap}
.links-twinkle .talk-dot{top:auto;position:static;right:auto}
.links-twinkle-small{cursor:pointer;text-align:left;align-items:center;display:flex;font-weight:600;background:none;font-size:15px;gap:9px;padding:14px 2px;border:none;border-bottom:1px solid var(--c-line);text-decoration:none;width:100%;color:var(--c-ink)}
.links-twinkle-small:hover{color:var(--c-primary-active)}
.links-twinkle-small svg{color:var(--c-primary);width:18px;height:18px}

.btn{
  justify-content:center;align-items:center;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;gap:9px;text-align:center;font-weight:700;
  cursor:pointer;display:inline-flex;font-size:1rem;padding:14px 26px;
  border-radius:var(--c-rnd-pill);
}
.btn svg{width:18px;height:18px}
.btn-small{padding:10px 18px;font-size:.9rem}
.btn-xl{padding:17px 32px;font-size:1.06rem}
.btn-full{width:100%}
.btn-cta{color:#fffffe;background:linear-gradient(95deg,var(--c-peach),var(--c-coral) 55%,var(--c-primary));box-shadow:0 14px 26px -12px rgba(250,76,98,.75)}
.btn-cta:hover{color:#fffffe;box-shadow:0 20px 34px -12px rgba(250,76,98,.83);transform:translateY(-2px)}
.btn-light{color:var(--c-primary);background:var(--c-card);border-color:var(--c-line)}
.btn-light:hover{transform:translateY(-2px);background:var(--c-card-alt);color:var(--c-primary-active)}
.btn-white{background:#fffffe;color:var(--c-primary-active)}
.btn-white:hover{color:var(--c-primary-active);box-shadow:var(--c-shade-md);transform:translateY(-2px)}
.eyebrow{font-weight:800;color:var(--c-primary);text-transform:uppercase;font-size:.8rem;letter-spacing:.1em;margin-bottom:10px}

.inner{margin-inline:auto;max-width:var(--c-container);padding-inline:var(--c-gutter)}

.app-top{z-index:60;border-bottom:1px solid var(--c-line);position:sticky;top:0;background:var(--c-card)}
.app-top-in{align-items:center;padding-block:12px;justify-content:space-between;gap:20px;display:flex;min-height:74px}
p{margin:0}
.profile-twinkle{box-shadow:var(--c-shade-sm);transition:transform .16s,background .16s,color .16s;background:rgba(255,255,254,.93);display:grid;top:12px;height:36px;border-radius:50%;place-items:center;color:var(--c-coral);z-index:2;border:none;right:12px;cursor:pointer;position:absolute;width:36px}
.profile-twinkle svg{width:18px;height:18px}
.profile-twinkle:hover{transform:scale(1.08)}
.profile-twinkle.done{background:var(--c-coral);color:#fffffe}
.profile-twinkle.done svg{fill:currentColor}
.profile-view-twinkle{top:14px;width:46px;right:14px;height:46px}
.profile-view-twinkle svg{height:21px;width:21px}
.profile-in{padding:16px 18px}
.profile-label{font-family:var(--c-font-head);font-weight:800;font-size:1.12rem}
.profile-label a{text-decoration:none;color:inherit;outline-offset:3px}
.profile-label a::after{inset:0;content:"";z-index:1;position:absolute}
.profile-label span{color:var(--c-quiet);font-weight:600}
.profile-loc{color:var(--c-ink-soft);display:flex;font-size:.88rem;align-items:center;gap:6px;margin-top:4px}
.profile-loc .locator svg{color:var(--c-primary);width:14px;height:14px}
.profile-talk{font-weight:700;color:#fffffe;background:linear-gradient(135deg,var(--c-primary),var(--c-coral));position:relative;justify-content:center;display:inline-flex;z-index:2;font-size:.9rem;transition:transform .16s ease,box-shadow .16s ease;padding:9px 14px;border-radius:var(--c-rnd-pill);box-shadow:var(--c-shade-sm);gap:7px;align-items:center;width:100%;margin-top:12px}
.profile-talk svg{height:16px;width:16px}
.profile-talk:hover{box-shadow:var(--c-shade-md);transform:translateY(-1px)}
.profile-layout{margin-top:22px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,52px);display:grid}
.profile-column{min-width:0}
.profile-view{background:linear-gradient(160deg,var(--c-rose-200),var(--c-wisteria-alt));box-shadow:var(--c-shade-md);border-radius:var(--c-rnd-lg);overflow:hidden;position:relative;margin:0}
.profile-view img{width:100%;aspect-ratio:4/5;object-fit:cover;height:auto;display:block}
.profile-pager{position:absolute;border-radius:50%;place-items:center;transition:transform .15s ease,background .15s ease;top:50%;color:var(--c-primary-active);display:grid;cursor:pointer;z-index:2;background:rgba(255,255,254,.93);transform:translateY(-50%);height:44px;border:none;box-shadow:var(--c-shade-md);width:44px}
.profile-pager:hover{background:#fffffe;transform:translateY(-50%) scale(1.07)}
.profile-pager svg{height:22px;width:22px}
.profile-back{left:12px}
.profile-right{right:12px}
.profile-strip{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}
.profile-unit{aspect-ratio:3/4;overflow:hidden;cursor:pointer;padding:0;box-shadow:var(--c-shade-sm);background:var(--c-card-alt);transition:transform .15s ease,border-color .15s ease;border:2px solid transparent;border-radius:var(--c-rnd-sm);flex:0 0 auto;width:72px}
.profile-unit img{display:block;object-fit:cover;width:100%;height:100%}
.profile-unit:hover{transform:translateY(-2px)}
.profile-unit.done{border-color:var(--c-primary)}
.profile-drawer{position:sticky;top:96px}
.profile-head{gap:12px;display:flex;margin-top:14px;align-items:center;flex-wrap:wrap}
.profile-head .dot-chip{flex:none}
.profile-lead{font-family:var(--c-font-head);line-height:1.1;font-weight:800;font-size:clamp(1.7rem,3.2vw,2.3rem)}
.profile-lead span{font-weight:600;font-size:.62em;color:var(--c-quiet)}
.profile-hint{align-items:center;color:var(--c-ink-soft);font-size:1.02rem;gap:7px;margin-top:10px;display:flex}
.profile-hint .locator svg{color:var(--c-primary);width:18px;height:18px}
.profile-hint a{color:var(--c-primary-active);transition:border-color .15s ease;text-decoration:none;font-weight:600;border-bottom:1px solid transparent}
.profile-hint a:hover{border-bottom-color:currentColor}
.profile-infos{gap:8px;margin-top:16px;display:flex;flex-wrap:wrap}
.profile-drawer .lead{margin-top:18px}
.profile-list{margin-top:24px;gap:12px;flex-wrap:wrap;display:flex}
.icon-done svg{fill:currentColor;stroke:none}
h1,h2,h3,h4{font-family:var(--c-font-head);color:var(--c-ink);margin:0;line-height:1.12;letter-spacing:-.01em}
.wordmark,.links-a,.drawer-small a,.btn,.path a,.app-footer a,.close-links a,.profile-talk{text-decoration:none}
.lead{font-size:1.06rem;color:var(--c-ink-soft);margin-top:14px}
.em{background:linear-gradient(92deg,var(--c-primary),var(--c-coral) 60%,var(--c-peach));-webkit-background-clip:text;background-clip:text;color:transparent}
button{font-family:inherit}

.menu-btn{display:none;flex-direction:column;z-index:1105;cursor:pointer;padding:6px;gap:5px;border:none;background:none}
.menu-btn span{display:block;width:26px;transition:transform .3s ease,opacity .3s ease;border-radius:2px;background:var(--c-ink);height:3px}
.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)}
.talk{border-radius:var(--c-rnd-lg);display:flex;max-width:600px;border:1px solid rgba(255,255,254,.88);flex-direction:column;background:var(--c-card);box-shadow:var(--c-shade-lg);overflow:hidden;margin:0 auto}
.talk-head{display:flex;background:var(--c-card);gap:14px;border-bottom:1px solid var(--c-line);align-items:center;padding:15px 20px}
.talk-column{text-decoration:none;flex:1;gap:12px;min-width:0;display:flex;color:inherit;align-items:center}
.talk-face{width:52px;flex:none;overflow:hidden;position:relative;border-radius:50%;box-shadow:var(--c-shade-sm);background:linear-gradient(160deg,var(--c-rose-200),var(--c-wisteria-alt));height:52px}
.talk-face img{width:100%;object-fit:cover;height:100%}
.talk-face::after{content:"";right:1px;width:13px;background:#2eaf68;bottom:1px;border-radius:50%;height:13px;position:absolute;border:2px solid var(--c-card)}
.talk-label{font-family:var(--c-font-head);display:block;font-weight:800;line-height:1.15;font-size:1.06rem;color:var(--c-ink)}
.talk-label span{color:var(--c-quiet);font-weight:600;font-size:.84em}
.talk-subtitle{color:var(--c-ink-soft);margin-top:2px;display:block;font-size:.82rem}
.talk-head .dot-chip{flex:none}
.talk-head .dot-chip .led{color:#2eaf68}
.talk-strip{display:flex;max-height:56vh;min-height:360px;background:linear-gradient(180deg,var(--c-card-soft),var(--c-rose-100));gap:12px;padding:24px 20px;flex-direction:column;overflow-y:auto}
.talk-placeholder{align-self:center;color:var(--c-quiet);margin:auto 0;font-size:.92rem;text-align:center}
.talk-unit{max-width:82%;align-self:flex-start;display:flex}
.talk-unit[hidden]{display:none}
.talk-unit-second{justify-content:flex-end;align-self:flex-end}
.talk-tile{font-size:.98rem;background:var(--c-card);color:var(--c-ink);box-shadow:var(--c-shade-sm);position:relative;word-break:break-word;border:1px solid var(--c-line);padding:11px 15px 8px;border-radius:20px;border-bottom-left-radius:7px;line-height:1.5}
.talk-unit-second .talk-tile{border-color:transparent;background:linear-gradient(135deg,var(--c-coral),var(--c-primary));color:#fffffe;border-radius:20px;border-bottom-right-radius:7px}
.talk-slot{font-size:.66rem;display:block;color:var(--c-quiet);text-align:right;margin-top:4px}
.talk-unit-second .talk-slot{color:rgba(255,255,254,.78)}
.talk-later{align-items:center;padding:15px 17px;display:inline-flex;gap:5px}
.talk-later span{animation:glow 1.2s infinite ease-in-out;background:var(--c-rose-deep);width:8px;height:8px;border-radius:50%}
.talk-later span:nth-child(2){animation-delay:.18s}
.talk-later span:nth-child(3){animation-delay:.36s}
.profile-tile{overflow:hidden;box-shadow:var(--c-shade-md);background:var(--c-card);border-radius:var(--c-rnd-lg);position:relative;transition:transform .2s ease,box-shadow .2s ease;border:1px solid rgba(255,255,254,.88)}
.profile-tile:hover{transform:translateY(-6px);box-shadow:var(--c-shade-lg)}
.profile-face{position:relative;overflow:hidden;aspect-ratio:1/1;background:linear-gradient(160deg,var(--c-rose-200),var(--c-wisteria-alt))}
.profile-face img{height:100%;width:100%;display:block;object-fit:cover}
.profile-dot{z-index:2;border-radius:var(--c-rnd-pill);box-shadow:var(--c-shade-sm);background:rgba(255,255,254,.93);color:#2eaf68;top:12px;font-weight:700;position:absolute;padding:5px 10px;gap:6px;left:12px;align-items:center;font-size:.72rem;display:inline-flex}
.drawer-small{padding:84px 22px 22px;height:100vh;background:var(--c-card);overflow-y:auto;box-shadow:-6px 0 30px rgba(42,39,50,.22);width:80%;transition:right .3s ease;position:fixed;top:0;z-index:1100;max-width:320px;height:100dvh;right:-100%}
.drawer-small.current{right:0}
.drawer-small nav{display:flex;flex-direction:column}
.drawer-small a:not(.btn){padding:14px 2px;color:var(--c-ink);font-weight:600;border-bottom:1px solid var(--c-line);font-size:15px}
.drawer-small a:not(.btn):hover{color:var(--c-primary-active)}
.drawer-small a.btn{margin-top:22px}
.wordmark{font-family:var(--c-font-head);font-weight:800;display:flex;letter-spacing:-.02em;color:var(--c-ink);gap:11px;align-items:center;font-size:1.28rem}
.wordmark:hover{color:var(--c-ink)}
.wordmark-icon{height:42px;border-radius:14px;justify-content:center;flex-shrink:0;box-shadow:0 8px 18px -8px rgba(237,80,152,.78);background:linear-gradient(135deg,var(--c-primary),var(--c-coral) 55%,var(--c-peach));align-items:center;width:42px;color:#fffffe;display:inline-flex}
.wordmark-icon svg{width:22px;height:22px}
figure{margin:0}
@keyframes glow{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-5px);opacity:1}}
.talk-ask{display:flex;align-items:center;padding:12px 16px;gap:10px;background:var(--c-card);border-top:1px solid var(--c-line)}
.talk-fld{border:1.5px solid var(--c-line);border-radius:var(--c-rnd-pill);padding:12px 16px;background:var(--c-card-soft);color:var(--c-ink);font-family:inherit;flex:1;transition:border-color .16s,box-shadow .16s;min-width:0;font-size:1rem}
.talk-fld:focus{box-shadow:0 0 0 3px rgba(237,80,152,.13);outline:none;border-color:var(--c-primary)}
.talk-btn{cursor:pointer;box-shadow:0 10px 20px -10px rgba(250,76,98,.78);flex:none;height:46px;transition:transform .15s ease,opacity .15s ease;background:linear-gradient(135deg,var(--c-coral),var(--c-primary));border-radius:50%;place-items:center;border:none;display:grid;width:46px;color:#fffffe}
.talk-btn:hover{transform:translateY(-2px)}
.talk-btn:disabled{opacity:.5;cursor:default;transform:none}
.talk-btn svg{width:18px;fill:currentColor;height:18px;stroke:none}
.talk-hint{color:var(--c-quiet);font-size:.8rem;padding:2px 20px 16px;text-align:center}
.talk-overlay{padding:20px 22px 24px;flex-direction:column;align-items:center;background:var(--c-card);border-top:1px solid var(--c-line);text-align:center;display:none;gap:14px}
.talk-overlay-body{margin:0;color:var(--c-ink-soft);font-size:.94rem;line-height:1.5;max-width:440px}
.talk-modal{z-index:130;inset:0;-webkit-backdrop-filter:blur(3px);padding:20px;justify-content:center;position:fixed;background:rgba(25,8,24,.55);align-items:center;backdrop-filter:blur(3px);display:none}
.talk-modal-tile{padding:32px 26px 28px;box-shadow:var(--c-shade-lg);border:1px solid var(--c-line);max-width:420px;position:relative;border-radius:22px;text-align:center;background:var(--c-card);width:100%}
.talk-modal-close{background:none;top:10px;line-height:1;cursor:pointer;padding:0;position:absolute;border:none;font-size:1.6rem;color:var(--c-quiet);right:14px}
.talk-modal-label{font-family:var(--c-font-head);color:var(--c-ink);font-weight:800;font-size:1.22rem;margin:0 0 10px}
.talk-modal-body{font-size:.96rem;color:var(--c-ink-soft);line-height:1.5;margin:0 0 20px}
.talk-widget{box-shadow:var(--c-shade-lg);position:fixed;text-decoration:none;color:#fffffe;right:22px;transition:transform .16s ease;border-radius:50%;width:60px;bottom:22px;z-index:80;place-items:center;display:grid;height:60px;background:linear-gradient(135deg,var(--c-primary),var(--c-coral))}
.talk-widget[hidden]{display:none}
.talk-widget:hover{transform:translateY(-2px)}
.talk-widget svg{width:26px;height:26px}
.talk-dot{padding:0 6px;font-size:.72rem;place-items:center;font-weight:800;min-width:22px;display:grid;color:#fffffe;background:var(--c-crimson);border-radius:var(--c-rnd-pill);top:-3px;box-shadow:var(--c-shade-sm);line-height:1;right:-3px;border:2px solid var(--c-card);position:absolute;height:22px}
.talk-dot[hidden]{display:none}
.talk-widget-full{align-items:center;border-radius:var(--c-rnd-pill);gap:9px;height:auto;width:auto;display:inline-flex;padding:14px 22px}
.talk-widget-full svg{width:20px;height:20px}
.talk-widget-body{font-family:var(--c-font-head);font-weight:800;white-space:nowrap;font-size:.98rem}
.talk-links{overflow-y:auto;gap:4px;margin-top:4px;max-height:52vh;display:flex;flex-direction:column}
.talk-entry{text-decoration:none;gap:11px;border-radius:var(--c-rnd-sm);align-items:center;padding:9px 8px;display:flex;transition:background .14s ease;color:var(--c-ink)}
.talk-entry:hover{background:var(--c-card-alt)}
.talk-icon{width:42px;background:linear-gradient(160deg,var(--c-rose-200),var(--c-wisteria-alt));border-radius:50%;overflow:hidden;height:42px;flex:none}
.talk-icon img{height:100%;object-fit:cover;width:100%}
.talk-in{min-width:0;flex:1}
.talk-in strong{text-overflow:ellipsis;overflow:hidden;font-family:var(--c-font-head);display:block;white-space:nowrap;font-size:.96rem;font-weight:800}
.talk-in span{white-space:nowrap;overflow:hidden;display:block;font-size:.82rem;color:var(--c-ink-soft);text-overflow:ellipsis}
.talk-entry small{color:var(--c-quiet);flex:none;font-size:.7rem;align-self:flex-start}
.bye-card{background:rgba(42,39,50,.55);justify-content:center;backdrop-filter:blur(3px);position:fixed;z-index:1200;padding:20px;align-items:center;inset:0;display:none}
.bye-card.ready{display:flex}
.bye-card-tile{width:100%;max-width:860px;grid-template-columns:.82fr 1fr;border-radius:var(--c-rnd-xl);box-shadow:var(--c-shade-lg);background:var(--c-card);overflow:hidden;position:relative;display:grid;color:var(--c-ink)}
.bye-card-drawer{align-items:flex-start;overflow:hidden;display:flex;position:relative;color:#fffffe;padding:clamp(24px,4vw,40px);justify-content:center;flex-direction:column;background:linear-gradient(160deg,var(--c-primary),var(--c-coral) 60%,var(--c-peach));gap:8px}
.bye-card-drawer::after{border-radius:50%;height:86%;position:absolute;right:-28%;bottom:-28%;border:20px solid rgba(255,255,254,.11);content:"";width:86%}
.bye-card-drawer img{border-radius:var(--c-rnd-lg);aspect-ratio:3/4;width:100%;box-shadow:var(--c-shade-md);position:relative;object-fit:cover;max-width:200px;border:3px solid rgba(255,255,254,.5)}
.bye-card-drawer .icon-done svg{fill:currentColor;stroke:none;width:64px;height:64px}
.bye-card-drawer p{position:relative;font-size:1rem;max-width:200px;font-weight:700}
.bye-card-no{font-family:var(--c-font-head);line-height:.85;font-weight:800;font-size:clamp(52px,8vw,88px);position:relative}
.bye-card-page{padding:clamp(24px,4vw,40px);position:relative}
.bye-card-page .lead{margin-top:10px}
.bye-card-page .btn{margin-top:20px}
.bye-card-page .talk-links{max-height:236px;margin-top:18px}
.bye-card-close{z-index:2;place-items:center;padding:0;top:14px;display:grid;background:var(--c-card);border-radius:50%;height:38px;right:14px;border:1px solid var(--c-line);position:absolute;width:38px;cursor:pointer;color:var(--c-quiet)}
.bye-card-close svg{height:15px;width:15px}
.bye-card-close:hover{color:#fffffe;border-color:transparent;background:var(--c-primary)}
.bye-card-reject{background:none;text-decoration:underline;max-width:100%;color:var(--c-quiet);display:block;width:fit-content;margin:14px 0 0;font-size:.84rem;border:0;cursor:pointer}
@media (max-width:600px){.bye-card{padding:12px}.bye-card-tile{grid-template-columns:1fr}.bye-card-drawer{display:none}.bye-card-page{padding:26px 22px}.bye-card-page .btn{width:100%}}
.reasons-list{margin-top:14px;gap:10px;display:grid}
.reasons-list li{padding-left:24px;position:relative;color:var(--c-ink)}
.reasons-list li::before{height:10px;left:0;background:var(--c-coral);content:"";border-radius:50%;position:absolute;width:10px;top:.5em}
.cityhall-label{font-family:var(--c-font-head);margin-bottom:14px;font-weight:800}
.cityhall-entry{gap:10px;font-size:.94rem;margin-top:10px;color:var(--c-ink-soft);align-items:flex-start;display:flex}
.cityhall-entry .locator{color:var(--c-primary);flex:none}
.cityhall-entry .locator svg{width:16px;height:16px}

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

.widget-action{width:300px;border-radius:var(--c-rnd-lg);right:22px;max-width:calc(100vw - 44px);border:1px solid rgba(255,255,254,.88);box-shadow:var(--c-shade-lg);position:fixed;padding:20px;z-index:80;background:#fffffe;bottom:22px}
.widget-close{cursor:pointer;font-size:1.1rem;line-height:1;color:var(--c-ink-soft);background:var(--c-card-alt);display:grid;position:absolute;padding:0;height:28px;border-radius:50%;top:12px;border:none;place-items:center;width:28px;right:12px}
.widget-close:hover{color:#fffffe;background:var(--c-primary)}
.widget-label{font-family:var(--c-font-head);padding-right:26px;font-weight:800;font-size:1.04rem}
.widget-body{color:var(--c-ink-soft);margin-top:4px;margin-bottom:14px;font-size:.86rem}
.widget-tab{height:60px;display:none;right:22px;color:#fffffe;align-items:center;border-radius:50%;border:none;box-shadow:var(--c-shade-lg);background:linear-gradient(135deg,var(--c-primary),var(--c-coral));cursor:pointer;position:fixed;width:60px;justify-content:center;z-index:80;bottom:22px}
.widget-tab svg{stroke:none;height:26px;fill:currentColor;width:26px}

.editorial{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(28px,4vw,56px)}
.editorial-body>p:not(.eyebrow){margin-top:16px;color:var(--c-ink-soft);font-size:1.04rem}
.editorial-subtitle{font-family:var(--c-font-head);font-size:1.1rem;color:var(--c-primary-active);margin-top:22px;font-weight:800}

.app-footer{background:#2a2732;color:#d8d2de}
.app-footer .inner{padding-block:56px 22px}
.app-footer a{color:#d8d2de}
.app-footer a:hover{color:#fffffe}
.times{gap:4px;margin-top:10px;display:grid}
.info{padding:14px 16px;border-radius:var(--c-rnd-md);background:var(--c-card);border:1px solid rgba(255,255,254,.88);box-shadow:var(--c-shade-sm);align-items:center;display:flex;gap:12px}
.info-icon{width:40px;display:grid;background:var(--c-card-alt);color:var(--c-primary);height:40px;border-radius:12px;flex:none;place-items:center}
.info-icon svg{height:18px;width:18px}
.info-body dt{letter-spacing:.05em;color:var(--c-quiet);text-transform:uppercase;font-size:.78rem}
.info-body dd{font-family:var(--c-font-head);font-weight:800;font-size:.98rem;margin:2px 0 0}
.editorial-body .btn{margin-top:26px}

.action-zone{align-items:center;border-radius:var(--c-rnd-xl);display:flex;justify-content:space-between;color:#fffffe;position:relative;gap:30px;flex-wrap:wrap;padding:clamp(38px,5vw,64px);background:linear-gradient(100deg,var(--c-primary-active),var(--c-coral) 60%,var(--c-peach));overflow:hidden;box-shadow:var(--c-shade-lg)}
.action-deco{position:absolute;border-radius:50%;width:320px;background:rgba(255,255,254,.12);right:-90px;height:320px;top:-120px}
.action-body{position:relative;z-index:2}
.action-body h2{max-width:16ch;color:#fffffe}
.action-body p{color:rgba(255,255,254,.93);max-width:46ch;margin-top:10px}
.action-zone .btn{z-index:2;position:relative}
.notes-cityhall{border-radius:var(--c-rnd-lg);background:var(--c-card);box-shadow:var(--c-shade-md);padding:24px;border:1px solid rgba(255,255,254,.88)}
.slot{display:flex;color:var(--c-ink-soft);justify-content:space-between;font-size:.9rem;gap:12px}
.footer-layout{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}
.footer-wordmark{font-family:var(--c-font-head);align-items:center;margin-bottom:12px;color:#fffffe;font-weight:800;display:flex;font-size:1.2rem;gap:10px}
.footer-column>p:not(.footer-label){color:#a89db1;font-size:.94rem;max-width:34ch}
.footer-label{color:#fffffe;font-size:1rem;font-weight:800;margin-bottom:14px}
.footer-links{font-size:.94rem;display:grid;gap:10px}
.path{justify-content:flex-start;margin-bottom:14px;display:flex;gap:6px;color:var(--c-quiet);font-size:.86rem;flex-wrap:wrap}

.editorial-block h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.editorial-block h2{margin-top:34px;color:var(--c-primary-active);font-size:1.35rem;font-weight:800}
.editorial-block p{color:var(--c-ink-soft);font-size:1.04rem;margin-top:14px}
.editorial-block p a{font-weight:600}
.editorial-block ul{display:grid;margin-top:14px;gap:10px}
.editorial-block li{position:relative;color:var(--c-ink-soft);padding-left:24px}
.editorial-block li::before{background:var(--c-coral);content:"";left:0;top:.5em;position:absolute;border-radius:50%;height:10px;width:10px}
.editorial-qna>.inner>h2{margin-bottom:28px;text-align:center}
.qna-unit{border-radius:var(--c-rnd-md);box-shadow:var(--c-shade-sm);margin-bottom:14px;background:var(--c-card);overflow:hidden;border:1px solid var(--c-line)}
.qna-unit summary{justify-content:space-between;font-family:var(--c-font-head);font-weight:800;display:flex;cursor:pointer;gap:16px;color:var(--c-ink);align-items:center;list-style:none;font-size:1.05rem;padding:20px 22px}
.qna-unit summary::-webkit-details-marker{display:none}
.qna-unit summary::after{background:var(--c-card-alt);flex:none;font-size:1.2rem;place-items:center;transition:transform .25s ease;border-radius:50%;display:grid;content:"+";color:var(--c-primary);width:30px;height:30px}
.qna-unit[open] summary::after{background:var(--c-primary);transform:rotate(45deg);color:#fffffe}
.qna-ans{padding:0 22px 20px;color:var(--c-ink-soft)}
.rights{padding-top:22px;color:#a89db1;margin-top:34px;font-size:.86rem;border-top:1px solid rgba(255,255,254,.08)}
.where-tile{border-radius:var(--c-rnd-lg);box-shadow:var(--c-shade-md);background:var(--c-wisteria);border:1px solid rgba(255,255,254,.88);position:relative;aspect-ratio:4/3;overflow:hidden}
.where-tile.where-later{cursor:pointer}
.where-placeholder{gap:10px;text-align:center;padding:20px;inset:0;place-items:center;background:linear-gradient(160deg,var(--c-wisteria-alt),var(--c-card-alt));position:absolute;display:grid}
.where-placeholder p{font-weight:700;color:var(--c-ink)}
.where-locator{color:var(--c-coral);filter:drop-shadow(0 10px 12px rgba(250,76,98,.5))}
.where-locator svg{height:40px;stroke:none;width:40px;fill:currentColor}
.where-tile iframe{height:100%;width:100%;position:absolute;border:0;inset:0}
.where-tile.ready .where-placeholder{display:none}

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

.notes{display:grid;gap:clamp(28px,4vw,48px);align-items:start;grid-template-columns:1.2fr 1fr}
.notes-infos{grid-template-columns:1fr 1fr;gap:16px;display:grid}
/* Fil d'Ariane robot placé dans l'article SEO : neutraliser les styles de liste de l'article (grille, retrait, puce). */
.editorial-block .path{display:flex}.editorial-block .path li{padding-left:0}.editorial-block .path li::before{display:none}
.path li:not(:last-child)::after{content:"\00203a";margin-left:6px;color:var(--c-quiet)}
.path a{color:var(--c-ink-soft)}

.ask{background:#fffffe;border-radius:var(--c-rnd-lg);box-shadow:var(--c-shade-md);border:1px solid rgba(255,255,254,.88);padding:clamp(24px,3vw,40px)}
.ask-unit{display:grid;gap:7px;margin-bottom:18px}
.ask-unit label{font-weight:700;font-size:.92rem}
.fld-entry{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fld{width:100%;padding:13px 16px;border-radius:var(--c-rnd-sm);border:1.5px solid var(--c-line);background:var(--c-card-soft);font-family:inherit;font-size:1rem;color:var(--c-ink);transition:border-color .16s,box-shadow .16s}
.fld:focus{outline:none;border-color:var(--c-primary);box-shadow:0 0 0 3px rgba(237,80,152,.13)}
textarea.fld{min-height:140px;resize:vertical}
.ask-hint{font-weight:700}
.ask-hint-done{color:#2eaf68}
.ask-hint-hidden{color:var(--c-primary-active)}

.explore-ask{margin:0 auto;display:flex;gap:12px;background:#fffffe;padding:12px;border-radius:var(--c-rnd-pill);box-shadow:var(--c-shade-md);border:1px solid rgba(255,255,254,.88)}
.explore-ask .fld{border:none;background:transparent;box-shadow:none;font-size:1.06rem}
.explore-ask .fld:focus{box-shadow:none}
.explore-ask+.close{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-no{font-family:var(--c-font-head);font-weight:800;font-size:clamp(6rem,20vw,13rem);line-height:.9}
.placeholder-group{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}

@media (max-width:980px){
  .profiles-layout{grid-template-columns:repeat(3,1fr)}
  .profile-layout{grid-template-columns:1fr}
  .profile-view{width:100%;max-width:380px;justify-self:start}
  .profile-drawer{position:static}
  .editorial,.notes{grid-template-columns:1fr}
  .footer-layout{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .page-links{display:none}
  .menu-btn{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .drawer-small,.links-overlay{display:none}
}
@media (max-width:600px){
  :root{--c-section-y:clamp(30px,7vw,48px)}
  .footer-layout,.fld-entry{grid-template-columns:1fr}
  .profiles-layout{grid-template-columns:repeat(2,1fr);gap:12px}
  .profile-in{padding:16px 10px}
  .action-zone{flex-direction:column;align-items:stretch;padding:32px 24px}
  .action-zone .btn{width:100%;white-space:normal}
  .explore-ask{flex-direction:column;border-radius:var(--c-rnd-lg)}
  .explore-ask .btn{width:100%}
  .block-profile{padding-top:0}
  .profile-view img{aspect-ratio:1/1;max-height:46vh}
  .profile-layout{margin-top:0}
  .profile-drawer{display:flex;flex-direction:column;margin-top:14px}
  .profile-head{order:1;margin-top:0}
  .profile-hint{order:2}
  .profile-list{order:3;margin-top:16px;gap:10px}
  .profile-list .btn{flex:1 1 auto}
  .profile-strip{display:none}
  .profile-infos{order:4}
  .profile-drawer .lead{order:5}
  .notes-infos{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .info{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .info-icon{width:34px;height:34px}
  .info-body{min-width:0}
  .info-body dd{font-size:.92rem;overflow-wrap:anywhere}
}
