:root{
  --ui-bg-pink-100:#fdf0f2;
  --ui-bg-pink-200:#fcdae9;
  --ui-bg-pink-300:#f8c8da;
  --ui-bg-pink-deep:#f3a6c7;
  --ui-wisteria:#eae8f9;
  --ui-wisteria-x:#dadef6;

  --ui-panel:#fffdff;
  --ui-panel-light:#fff6f7;
  --ui-panel-x:#fee8f0;

  --ui-magenta:#ec4c97;
  --ui-magenta-dark:#e12e7c;
  --ui-warm:#f95c73;
  --ui-warm-x:#f94864;
  --ui-tangerine:#fc783e;
  --ui-tangerine-x:#f76927;
  --ui-crimson:#ff4c5d;
  --ui-periwinkle:#c5cef0;

  --ui-fg:#2c2531;
  --ui-fg-light:#6a6572;
  --ui-quiet:#9893a0;
  --ui-rule:#f4d8e2;

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

  --ui-elev-sm:0 6px 16px -8px rgba(236,76,151,.33);
  --ui-elev-md:0 18px 38px -18px rgba(236,76,151,.39);
  --ui-elev-lg:0 30px 60px -24px rgba(225,46,124,.42);

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

  --ui-container:1200px;
  --ui-gap:24px;
  --ui-vgap:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  color:var(--ui-fg);font-family:var(--ui-font);line-height:1.6;background:
    radial-gradient(1200px 700px at 85% -8%, var(--ui-bg-pink-300) 0%, rgba(248,200,218,0) 55%),
    radial-gradient(900px 600px at -10% 8%, var(--ui-wisteria) 0%, rgba(234,232,249,0) 55%),
    linear-gradient(180deg, var(--ui-bg-pink-100) 0%, var(--ui-panel-light) 40%, var(--ui-bg-pink-100) 100%);
  -webkit-font-smoothing:antialiased;
  background-attachment:fixed;margin:0;
}
img{max-width:100%;display:block}
.crumbs a:hover{color:var(--ui-magenta-dark)}
.links-a{font-weight:600;transition:background .18s,color .18s;padding:9px 14px;color:var(--ui-fg);border-radius:var(--ui-ro-pill);font-size:.96rem}
.links-a:hover{background:var(--ui-panel-x);color:var(--ui-magenta-dark)}
.links-shine{transition:background .18s ease,color .18s ease;font-weight:600;background:none;text-decoration:none;gap:7px;border:none;border-radius:var(--ui-ro-pill);color:var(--ui-fg);position:relative;display:inline-flex;align-items:center;cursor:pointer;padding:9px 12px;font-size:.96rem}
.links-shine:hover{background:var(--ui-panel-x);color:var(--ui-magenta-dark)}
.links-shine svg{height:20px;color:var(--ui-magenta);width:20px}
.links-shine:hover svg{color:var(--ui-magenta-dark)}
.links-shine__body{white-space:nowrap}
.links-shine .chat-status{top:auto;right:auto;position:static}
.links-shine-small{padding:14px 2px;gap:9px;font-weight:600;color:var(--ui-fg);border:none;cursor:pointer;display:flex;width:100%;text-align:left;font-size:15px;border-bottom:1px solid var(--ui-rule);text-decoration:none;background:none;align-items:center}
.links-shine-small:hover{color:var(--ui-magenta-dark)}
.links-shine-small svg{height:18px;color:var(--ui-magenta);width:18px}
.contact-card{position:relative;border-radius:var(--ui-ro-lg);transition:transform .2s ease,box-shadow .2s ease;background:var(--ui-panel);box-shadow:var(--ui-elev-md);border:1px solid rgba(255,253,255,.92);overflow:hidden}
.contact-card:hover{transform:translateY(-6px);box-shadow:var(--ui-elev-lg)}
.contact__face{position:relative;aspect-ratio:1/1;background:linear-gradient(160deg,var(--ui-bg-pink-200),var(--ui-wisteria-x));overflow:hidden}
.contact__face img{display:block;width:100%;height:100%;object-fit:cover}
.contact__status{display:inline-flex;gap:6px;top:12px;font-weight:700;box-shadow:var(--ui-elev-sm);border-radius:var(--ui-ro-pill);z-index:2;position:absolute;color:#2fae65;left:12px;font-size:.72rem;padding:5px 10px;background:rgba(255,253,255,.94);align-items:center}
ul{padding:0;list-style:none;margin:0}
.icon-lit svg{stroke:none;fill:currentColor}
.identity{letter-spacing:-.02em;gap:11px;display:flex;font-family:var(--ui-font-head);align-items:center;font-weight:800;color:var(--ui-fg);font-size:1.28rem}
.identity:hover{color:var(--ui-fg)}
.identity__logo{color:#fffdff;width:42px;height:42px;align-items:center;border-radius:14px;background:linear-gradient(135deg,var(--ui-magenta),var(--ui-warm) 55%,var(--ui-tangerine));justify-content:center;display:inline-flex;flex-shrink:0;box-shadow:0 8px 18px -8px rgba(236,76,151,.78)}
.identity__logo svg{height:22px;width:22px}
.contact__shine{cursor:pointer;height:36px;place-items:center;border-radius:50%;border:none;display:grid;top:12px;width:36px;z-index:2;color:var(--ui-warm);right:12px;transition:transform .16s,background .16s,color .16s;position:absolute;background:rgba(255,253,255,.94);box-shadow:var(--ui-elev-sm)}
.contact__shine svg{height:18px;width:18px}
.contact__shine:hover{transform:scale(1.08)}
.contact__shine.lit{background:var(--ui-warm);color:#fffdff}
.contact__shine.lit svg{fill:currentColor}
.contact-frame__shine{top:14px;width:46px;height:46px;right:14px}
.contact-frame__shine svg{width:21px;height:21px}
.contact__inner{padding:16px 18px}
.contact__label{font-family:var(--ui-font-head);font-weight:800;font-size:1.12rem}
.contact__label a{text-decoration:none;outline-offset:3px;color:inherit}
.contact__label a::after{inset:0;z-index:1;position:absolute;content:""}
.contact__label span{color:var(--ui-quiet);font-weight:600}
.contact__place{font-size:.88rem;color:var(--ui-fg-light);align-items:center;display:flex;gap:6px;margin-top:4px}
.contact__place .needle svg{color:var(--ui-magenta);height:14px;width:14px}
.contact__chat{transition:transform .16s ease,box-shadow .16s ease;font-weight:700;align-items:center;font-size:.9rem;background:linear-gradient(135deg,var(--ui-magenta),var(--ui-warm));margin-top:12px;display:inline-flex;padding:9px 14px;width:100%;z-index:2;border-radius:var(--ui-ro-pill);color:#fffdff;box-shadow:var(--ui-elev-sm);gap:7px;justify-content:center;position:relative}
.contact__chat svg{height:16px;width:16px}
.contact__chat:hover{transform:translateY(-1px);box-shadow:var(--ui-elev-md)}
.contact-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:22px;gap:clamp(24px,4vw,52px);align-items:start}
.contact-part{min-width:0}
.contact-frame{border-radius:var(--ui-ro-lg);box-shadow:var(--ui-elev-md);overflow:hidden;background:linear-gradient(160deg,var(--ui-bg-pink-200),var(--ui-wisteria-x));position:relative;margin:0}
.contact-frame img{aspect-ratio:4/5;object-fit:cover;width:100%;height:auto;display:block}
.contact-ctrl{top:50%;position:absolute;width:44px;cursor:pointer;border-radius:50%;z-index:2;place-items:center;display:grid;transform:translateY(-50%);color:var(--ui-magenta-dark);transition:transform .15s ease,background .15s ease;height:44px;background:rgba(255,253,255,.94);box-shadow:var(--ui-elev-md);border:none}
.contact-ctrl:hover{background:#fffdff;transform:translateY(-50%) scale(1.07)}
.contact-ctrl svg{width:22px;height:22px}
.contact-prev{left:12px}
.contact-right{right:12px}
.contact-rail{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}
.contact-cell{padding:0;background:var(--ui-panel-x);box-shadow:var(--ui-elev-sm);width:72px;flex:0 0 auto;overflow:hidden;border:2px solid transparent;aspect-ratio:3/4;cursor:pointer;border-radius:var(--ui-ro-sm);transition:transform .15s ease,border-color .15s ease}
.contact-cell img{display:block;width:100%;object-fit:cover;height:100%}
.contact-cell:hover{transform:translateY(-2px)}
.contact-cell.lit{border-color:var(--ui-magenta)}
.contact-drawer{position:sticky;top:96px}
.contact-top{flex-wrap:wrap;align-items:center;display:flex;margin-top:14px;gap:12px}
.contact-top .status-chip{flex:none}
.contact-tagline{font-family:var(--ui-font-head);line-height:1.1;font-weight:800;font-size:clamp(1.7rem,3.2vw,2.3rem)}
.contact-tagline span{font-weight:600;color:var(--ui-quiet);font-size:.62em}
.contact-hint{color:var(--ui-fg-light);font-size:1.02rem;display:flex;gap:7px;align-items:center;margin-top:10px}
.contact-hint .needle svg{width:18px;height:18px;color:var(--ui-magenta)}
.contact-hint a{transition:border-color .15s ease;text-decoration:none;font-weight:600;color:var(--ui-magenta-dark);border-bottom:1px solid transparent}
.contact-hint a:hover{border-bottom-color:currentColor}
.contact-facts{flex-wrap:wrap;margin-top:16px;display:flex;gap:8px}
.contact-drawer .tagline{margin-top:18px}
.contact-list{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}
:focus-visible{border-radius:6px;outline:3px solid var(--ui-magenta);outline-offset:2px}

.contacts-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
p{margin:0}
::selection{background:rgba(236,76,151,.24)}

.status-chip{border:1px solid var(--ui-rule);font-weight:700;border-radius:var(--ui-ro-pill);letter-spacing:.06em;padding:8px 16px;gap:8px;align-items:center;background:var(--ui-panel);display:inline-flex;color:var(--ui-magenta);box-shadow:var(--ui-elev-sm);font-size:.82rem}
.status-chip svg{height:16px;width:16px;color:var(--ui-warm)}
.core-links{display:flex;margin-left:auto;gap:8px;align-items:center}
.eyebrow{font-weight:800;color:var(--ui-magenta);letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;font-size:.8rem}
button{font-family:inherit}

.main-appbar{border-bottom:1px solid var(--ui-rule);background:var(--ui-panel);top:0;position:sticky;z-index:60}
.main-appbar__inner{padding-block:12px;gap:20px;justify-content:space-between;min-height:74px;align-items:center;display:flex}
.chat{border-radius:var(--ui-ro-lg);margin:0 auto;border:1px solid rgba(255,253,255,.92);display:flex;box-shadow:var(--ui-elev-lg);background:var(--ui-panel);flex-direction:column;max-width:600px;overflow:hidden}
.chat__top{align-items:center;gap:14px;display:flex;border-bottom:1px solid var(--ui-rule);background:var(--ui-panel);padding:15px 20px}
.chat__part{gap:12px;text-decoration:none;color:inherit;flex:1;align-items:center;min-width:0;display:flex}
.chat__face{flex:none;background:linear-gradient(160deg,var(--ui-bg-pink-200),var(--ui-wisteria-x));box-shadow:var(--ui-elev-sm);position:relative;width:52px;overflow:hidden;border-radius:50%;height:52px}
.chat__face img{width:100%;object-fit:cover;height:100%}
.chat__face::after{background:#2fae65;right:1px;height:13px;bottom:1px;content:"";border-radius:50%;border:2px solid var(--ui-panel);width:13px;position:absolute}
.chat__label{font-family:var(--ui-font-head);font-weight:800;line-height:1.15;font-size:1.06rem;display:block;color:var(--ui-fg)}
.chat__label span{font-weight:600;font-size:.84em;color:var(--ui-quiet)}
.chat__deck{color:var(--ui-fg-light);font-size:.82rem;margin-top:2px;display:block}
.chat__top .status-chip{flex:none}
.chat__top .status-chip .led{color:#2fae65}
.chat__rail{max-height:56vh;flex-direction:column;min-height:360px;overflow-y:auto;display:flex;padding:24px 20px;background:linear-gradient(180deg,var(--ui-panel-light),var(--ui-bg-pink-100));gap:12px}
.chat__empty{font-size:.92rem;margin:auto 0;text-align:center;color:var(--ui-quiet);align-self:center}
.chat__cell{display:flex;align-self:flex-start;max-width:82%}
.chat__cell[hidden]{display:none}
.chat__cell--alt{align-self:flex-end;justify-content:flex-end}
.chat__card{box-shadow:var(--ui-elev-sm);background:var(--ui-panel);padding:11px 15px 8px;color:var(--ui-fg);font-size:.98rem;position:relative;border:1px solid var(--ui-rule);line-height:1.5;border-radius:20px;border-bottom-left-radius:7px;word-break:break-word}
.chat__cell--alt .chat__card{border-color:transparent;background:linear-gradient(135deg,var(--ui-warm),var(--ui-magenta));border-radius:20px;border-bottom-right-radius:7px;color:#fffdff}
.chat__hour{display:block;font-size:.66rem;margin-top:4px;text-align:right;color:var(--ui-quiet)}
.chat__cell--alt .chat__hour{color:rgba(255,253,255,.78)}
.chat__lazy{gap:5px;display:inline-flex;padding:15px 17px;align-items:center}
.chat__lazy span{border-radius:50%;height:8px;background:var(--ui-bg-pink-deep);width:8px;animation:lull 1.2s infinite ease-in-out}
.chat__lazy span:nth-child(2){animation-delay:.18s}
.chat__lazy span:nth-child(3){animation-delay:.36s}
figure{margin:0}
.zone{padding-block:var(--ui-vgap)}
.zone--alt{background:var(--ui-panel-x)}
.led{color:#2fae65;font-size:.6rem;line-height:1}
.drawer-small{overflow-y:auto;top:0;padding:84px 22px 22px;max-width:320px;box-shadow:-6px 0 30px rgba(44,37,49,.19);z-index:1100;background:var(--ui-panel);position:fixed;width:80%;height:100vh;transition:right .3s ease;right:-100%;height:100dvh}
.drawer-small.open{right:0}
.drawer-small nav{flex-direction:column;display:flex}
.drawer-small a:not(.button){padding:14px 2px;border-bottom:1px solid var(--ui-rule);font-weight:600;color:var(--ui-fg);font-size:15px}
.drawer-small a:not(.button):hover{color:var(--ui-magenta-dark)}
.drawer-small a.button{margin-top:22px}
.identity,.links-a,.drawer-small a,.button,.crumbs a,.main-base a,.places-menu a,.contact__chat{text-decoration:none}
.section-head{text-align:center;max-width:640px;margin:0 auto 44px}
.links-backdrop{transition:opacity .3s ease;position:fixed;z-index:1090;opacity:0;visibility:hidden;background:rgba(44,37,49,.51);inset:0}
.links-backdrop.open{opacity:1;visibility:visible}

.wrapper{max-width:var(--ui-container);padding-inline:var(--ui-gap);margin-inline:auto}

.toggle{border:none;flex-direction:column;cursor:pointer;gap:5px;padding:6px;display:none;z-index:1105;background:none}
.toggle span{border-radius:2px;background:var(--ui-fg);width:26px;display:block;height:3px;transition:transform .3s ease,opacity .3s ease}
.toggle.open span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.toggle.open span:nth-child(2){opacity:0}
.toggle.open span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}

.button{
  justify-content:center;white-space:nowrap;font-weight:700;display:inline-flex;
  padding:14px 26px;font-size:1rem;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;border:1.5px solid transparent;
  gap:9px;text-align:center;cursor:pointer;border-radius:var(--ui-ro-pill);
  align-items:center;
}
.button svg{width:18px;height:18px}
.button--mini{padding:10px 18px;font-size:.9rem}
.button--large{padding:17px 32px;font-size:1.06rem}
.button--full{width:100%}
.button--go{box-shadow:0 14px 26px -12px rgba(249,72,100,.73);color:#fffdff;background:linear-gradient(95deg,var(--ui-tangerine),var(--ui-warm) 55%,var(--ui-magenta))}
.button--go:hover{transform:translateY(-2px);box-shadow:0 20px 34px -12px rgba(249,72,100,.87);color:#fffdff}
.button--soft{border-color:var(--ui-rule);color:var(--ui-magenta);background:var(--ui-panel)}
.button--soft:hover{transform:translateY(-2px);background:var(--ui-panel-x);color:var(--ui-magenta-dark)}
.button--white{background:#fffdff;color:var(--ui-magenta-dark)}
.button--white:hover{color:var(--ui-magenta-dark);box-shadow:var(--ui-elev-md);transform:translateY(-2px)}
.heading-2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}

.zone.chat-screen{padding-block:clamp(18px,3vw,38px)}
h1,h2,h3,h4{letter-spacing:-.01em;line-height:1.12;margin:0;color:var(--ui-fg);font-family:var(--ui-font-head)}
.accent{background:linear-gradient(92deg,var(--ui-magenta),var(--ui-warm) 60%,var(--ui-tangerine));-webkit-background-clip:text;background-clip:text;color:transparent}
svg{display:block}
.tagline{color:var(--ui-fg-light);margin-top:14px;font-size:1.06rem}
@keyframes lull{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-5px);opacity:1}}
.chat__request{padding:12px 16px;gap:10px;display:flex;border-top:1px solid var(--ui-rule);background:var(--ui-panel);align-items:center}
.chat__input{color:var(--ui-fg);flex:1;font-family:inherit;padding:12px 16px;min-width:0;border:1.5px solid var(--ui-rule);font-size:1rem;background:var(--ui-panel-light);border-radius:var(--ui-ro-pill);transition:border-color .16s,box-shadow .16s}
.chat__input:focus{outline:none;border-color:var(--ui-magenta);box-shadow:0 0 0 3px rgba(236,76,151,.13)}
.chat__button{width:46px;display:grid;cursor:pointer;flex:none;background:linear-gradient(135deg,var(--ui-warm),var(--ui-magenta));height:46px;color:#fffdff;transition:transform .15s ease,opacity .15s ease;border-radius:50%;box-shadow:0 10px 20px -10px rgba(249,72,100,.78);border:none;place-items:center}
.chat__button:hover{transform:translateY(-2px)}
.chat__button:disabled{transform:none;opacity:.5;cursor:default}
.chat__button svg{height:18px;width:18px;fill:currentColor;stroke:none}
.chat__hint{text-align:center;color:var(--ui-quiet);font-size:.8rem;padding:2px 20px 16px}
.chat__backdrop{gap:14px;padding:20px 22px 24px;align-items:center;display:none;text-align:center;border-top:1px solid var(--ui-rule);background:var(--ui-panel);flex-direction:column}
.chat__backdrop-body{line-height:1.5;margin:0;color:var(--ui-fg-light);font-size:.94rem;max-width:440px}
.chat__modal{position:fixed;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:20px;justify-content:center;display:none;inset:0;background:rgba(22,8,22,.56);align-items:center;z-index:130}
.chat__modal-card{position:relative;max-width:420px;box-shadow:var(--ui-elev-lg);width:100%;padding:32px 26px 28px;background:var(--ui-panel);border:1px solid var(--ui-rule);text-align:center;border-radius:22px}
.chat__modal-hide{position:absolute;padding:0;top:10px;color:var(--ui-quiet);font-size:1.6rem;border:none;line-height:1;background:none;right:14px;cursor:pointer}
.chat__modal-label{font-family:var(--ui-font-head);margin:0 0 10px;font-weight:800;font-size:1.22rem;color:var(--ui-fg)}
.chat__modal-body{font-size:.96rem;margin:0 0 20px;color:var(--ui-fg-light);line-height:1.5}
.chat-popup{background:linear-gradient(135deg,var(--ui-magenta),var(--ui-warm));border-radius:50%;z-index:80;right:22px;width:60px;height:60px;place-items:center;display:grid;color:#fffdff;text-decoration:none;position:fixed;transition:transform .16s ease;bottom:22px;box-shadow:var(--ui-elev-lg)}
.chat-popup[hidden]{display:none}
.chat-popup:hover{transform:translateY(-2px)}
.chat-popup svg{width:26px;height:26px}
.chat-status{min-width:22px;border-radius:var(--ui-ro-pill);box-shadow:var(--ui-elev-sm);display:grid;background:var(--ui-crimson);border:2px solid var(--ui-panel);font-size:.72rem;color:#fffdff;padding:0 6px;top:-3px;right:-3px;height:22px;font-weight:800;position:absolute;line-height:1;place-items:center}
.chat-status[hidden]{display:none}
.chat-popup--full{border-radius:var(--ui-ro-pill);display:inline-flex;height:auto;align-items:center;width:auto;gap:9px;padding:14px 22px}
.chat-popup--full svg{height:20px;width:20px}
.chat-popup__body{font-family:var(--ui-font-head);font-weight:800;white-space:nowrap;font-size:.98rem}
.chat-menu{max-height:52vh;overflow-y:auto;margin-top:4px;flex-direction:column;gap:4px;display:flex}
.chat-row{gap:11px;border-radius:var(--ui-ro-sm);display:flex;transition:background .14s ease;color:var(--ui-fg);align-items:center;padding:9px 8px;text-decoration:none}
.chat-row:hover{background:var(--ui-panel-x)}
.chat-logo{background:linear-gradient(160deg,var(--ui-bg-pink-200),var(--ui-wisteria-x));flex:none;overflow:hidden;border-radius:50%;height:42px;width:42px}
.chat-logo img{width:100%;height:100%;object-fit:cover}
.chat-inner{flex:1;min-width:0}
.chat-inner strong{overflow:hidden;text-overflow:ellipsis;font-family:var(--ui-font-head);display:block;font-size:.96rem;white-space:nowrap;font-weight:800}
.chat-inner span{text-overflow:ellipsis;overflow:hidden;font-size:.82rem;display:block;color:var(--ui-fg-light);white-space:nowrap}
.chat-row small{font-size:.7rem;flex:none;align-self:flex-start;color:var(--ui-quiet)}
.wait-sheet{padding:20px;inset:0;background:rgba(44,37,49,.56);align-items:center;justify-content:center;z-index:1200;display:none;position:fixed;backdrop-filter:blur(3px)}
.wait-sheet.ready{display:flex}
.wait-sheet__card{width:100%;max-width:860px;color:var(--ui-fg);border-radius:var(--ui-ro-xl);box-shadow:var(--ui-elev-lg);background:var(--ui-panel);display:grid;position:relative;overflow:hidden;grid-template-columns:.82fr 1fr}
.wait-sheet__drawer{background:linear-gradient(160deg,var(--ui-magenta),var(--ui-warm) 60%,var(--ui-tangerine));gap:8px;position:relative;overflow:hidden;flex-direction:column;color:#fffdff;display:flex;padding:clamp(24px,4vw,40px);justify-content:center;align-items:flex-start}
.wait-sheet__drawer::after{border-radius:50%;right:-28%;border:20px solid rgba(255,253,255,.08);position:absolute;height:86%;width:86%;content:"";bottom:-28%}
.wait-sheet__drawer img{width:100%;object-fit:cover;box-shadow:var(--ui-elev-md);position:relative;max-width:200px;border-radius:var(--ui-ro-lg);border:3px solid rgba(255,253,255,.51);aspect-ratio:3/4}
.wait-sheet__drawer .icon-lit svg{width:64px;fill:currentColor;height:64px;stroke:none}
.wait-sheet__drawer p{font-size:1rem;font-weight:700;position:relative;max-width:200px}
.wait-sheet__num{font-family:var(--ui-font-head);line-height:.85;font-weight:800;position:relative;font-size:clamp(52px,8vw,88px)}
.wait-sheet__core{position:relative;padding:clamp(24px,4vw,40px)}
.wait-sheet__core .tagline{margin-top:10px}
.wait-sheet__core .button{margin-top:20px}
.wait-sheet__core .chat-menu{margin-top:18px;max-height:236px}
.wait-sheet__hide{position:absolute;top:14px;cursor:pointer;background:var(--ui-panel);height:38px;place-items:center;border-radius:50%;display:grid;right:14px;z-index:2;border:1px solid var(--ui-rule);width:38px;color:var(--ui-quiet);padding:0}
.wait-sheet__hide svg{height:15px;width:15px}
.wait-sheet__hide:hover{border-color:transparent;background:var(--ui-magenta);color:#fffdff}
.wait-sheet__pass{background:none;margin:14px 0 0;border:0;max-width:100%;width:fit-content;color:var(--ui-quiet);display:block;text-decoration:underline;font-size:.84rem;cursor:pointer}
@media (max-width:600px){.wait-sheet{padding:12px}.wait-sheet__card{grid-template-columns:1fr}.wait-sheet__drawer{display:none}.wait-sheet__core{padding:26px 22px}.wait-sheet__core .button{width:100%}}
.schedule{margin-top:10px;display:grid;gap:4px}

.main-base{color:#d6d2df;background:#2c2531}
.main-base .wrapper{padding-block:56px 22px}
.main-base a{color:#d6d2df}
.main-base a:hover{color:#fffdff}

.page-zone h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.page-zone h2{font-size:1.35rem;color:var(--ui-magenta-dark);margin-top:34px;font-weight:800}
.page-zone p{font-size:1.04rem;color:var(--ui-fg-light);margin-top:14px}
.page-zone p a{font-weight:600}
.page-zone ul{gap:10px;display:grid;margin-top:14px}
.page-zone li{padding-left:24px;position:relative;color:var(--ui-fg-light)}
.page-zone li::before{border-radius:50%;background:var(--ui-warm);position:absolute;height:10px;width:10px;content:"";left:0;top:.5em}
.page-topics>.wrapper>h2{margin-bottom:28px;text-align:center}
.crumbs{flex-wrap:wrap;font-size:.86rem;color:var(--ui-quiet);justify-content:flex-start;gap:6px;display:flex;margin-bottom:14px}
.page__body .button{margin-top:26px}

.places{display:flex;flex-direction:column;gap:32px}
.places-group h2{font-size:1.15rem;color:var(--ui-fg);font-weight:800;margin-bottom:16px}
.places-menu{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.places-menu a{padding:13px 16px;display:flex;justify-content:space-between;border:1px solid var(--ui-rule);font-size:.92rem;border-radius:var(--ui-ro-md);color:var(--ui-fg);gap:10px;font-weight:600;background:var(--ui-panel);align-items:center;box-shadow:var(--ui-elev-sm);transition:transform .14s,box-shadow .14s,color .14s}
.places-menu a:hover{transform:translateY(-3px);box-shadow:var(--ui-elev-md);color:var(--ui-magenta-dark)}
.places-menu a .needle{color:var(--ui-magenta);flex:none;display:grid;place-items:center}
.places-menu a .needle svg{height:16px;width:16px}

.action__panel{justify-content:space-between;display:flex;box-shadow:var(--ui-elev-lg);gap:30px;background:linear-gradient(100deg,var(--ui-magenta-dark),var(--ui-warm) 60%,var(--ui-tangerine));padding:clamp(38px,5vw,64px);position:relative;color:#fffdff;overflow:hidden;align-items:center;border-radius:var(--ui-ro-xl);flex-wrap:wrap}
.action__deco{right:-90px;position:absolute;top:-120px;background:rgba(255,253,255,.13);height:320px;border-radius:50%;width:320px}
.action__body{z-index:2;position:relative}
.action__body h2{max-width:16ch;color:#fffdff}
.action__body p{max-width:46ch;color:rgba(255,253,255,.94);margin-top:10px}
.action__panel .button{z-index:2;position:relative}
.credits{border-top:1px solid rgba(255,253,255,.11);color:#aaa0b1;padding-top:22px;font-size:.86rem;margin-top:34px}
.spot-card{aspect-ratio:4/3;position:relative;border-radius:var(--ui-ro-lg);border:1px solid rgba(255,253,255,.92);box-shadow:var(--ui-elev-md);overflow:hidden;background:var(--ui-wisteria)}
.spot-card.spot-lazy{cursor:pointer}
.spot-empty{display:grid;position:absolute;text-align:center;gap:10px;inset:0;padding:20px;place-items:center;background:linear-gradient(160deg,var(--ui-wisteria-x),var(--ui-panel-x))}
.spot-empty p{color:var(--ui-fg);font-weight:700}
.spot-needle{filter:drop-shadow(0 10px 12px rgba(249,72,100,.51));color:var(--ui-warm)}
.spot-needle svg{stroke:none;height:40px;fill:currentColor;width:40px}
.spot-card iframe{inset:0;position:absolute;width:100%;height:100%;border:0}
.spot-card.ready .spot-empty{display:none}

.page{gap:clamp(28px,4vw,56px);display:grid;align-items:center;grid-template-columns:1fr 1fr}
.page__body>p:not(.eyebrow){font-size:1.04rem;margin-top:16px;color:var(--ui-fg-light)}
.page__deck{font-family:var(--ui-font-head);margin-top:22px;font-size:1.1rem;color:var(--ui-magenta-dark);font-weight:800}
.base-cols{gap:40px;grid-template-columns:1.6fr 1fr 1fr;display:grid}
.base-identity{margin-bottom:12px;gap:10px;color:#fffdff;font-family:var(--ui-font-head);font-weight:800;font-size:1.2rem;align-items:center;display:flex}
.base-part>p:not(.base-label){color:#aaa0b1;max-width:34ch;font-size:.94rem}
.base-label{margin-bottom:14px;font-size:1rem;color:#fffdff;font-weight:800}
.base-menu{display:grid;font-size:.94rem;gap:10px}
.assets-list{gap:10px;display:grid;margin-top:14px}
.assets-list li{padding-left:24px;color:var(--ui-fg);position:relative}
.assets-list li::before{content:"";width:10px;border-radius:50%;left:0;position:absolute;background:var(--ui-warm);top:.5em;height:10px}
.topics-cell{margin-bottom:14px;background:var(--ui-panel);overflow:hidden;border-radius:var(--ui-ro-md);border:1px solid var(--ui-rule);box-shadow:var(--ui-elev-sm)}
.topics-cell summary{cursor:pointer;display:flex;color:var(--ui-fg);font-family:var(--ui-font-head);align-items:center;font-weight:800;padding:20px 22px;gap:16px;list-style:none;justify-content:space-between;font-size:1.05rem}
.topics-cell summary::-webkit-details-marker{display:none}
.topics-cell summary::after{font-size:1.2rem;transition:transform .25s ease;color:var(--ui-magenta);content:"+";background:var(--ui-panel-x);width:30px;display:grid;flex:none;border-radius:50%;height:30px;place-items:center}
.topics-cell[open] summary::after{color:#fffdff;background:var(--ui-magenta);transform:rotate(45deg)}
.topics-ans{padding:0 22px 20px;color:var(--ui-fg-light)}
.about-cityhall{border-radius:var(--ui-ro-lg);padding:24px;border:1px solid rgba(255,253,255,.92);box-shadow:var(--ui-elev-md);background:var(--ui-panel)}

.screen-hero{padding-block:clamp(40px,6vw,80px) 20px}
.screen-hero h1{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:800}
.screen-hero p{color:var(--ui-fg-light);margin:16px auto 0;font-size:1.08rem}
.hour{display:flex;justify-content:space-between;color:var(--ui-fg-light);font-size:.9rem;gap:12px}
.cityhall-label{font-family:var(--ui-font-head);font-weight:800;margin-bottom:14px}
.cityhall-row{font-size:.94rem;align-items:flex-start;margin-top:10px;color:var(--ui-fg-light);display:flex;gap:10px}
.cityhall-row .needle{color:var(--ui-magenta);flex:none}
.cityhall-row .needle svg{height:16px;width:16px}

.popup-action{border-radius:var(--ui-ro-lg);position:fixed;background:#fffdff;right:22px;max-width:calc(100vw - 44px);padding:20px;z-index:80;border:1px solid rgba(255,253,255,.92);box-shadow:var(--ui-elev-lg);width:300px;bottom:22px}
.popup-hide{place-items:center;cursor:pointer;color:var(--ui-fg-light);display:grid;border-radius:50%;font-size:1.1rem;border:none;padding:0;width:28px;top:12px;background:var(--ui-panel-x);height:28px;position:absolute;right:12px;line-height:1}
.popup-hide:hover{background:var(--ui-magenta);color:#fffdff}
.popup-label{padding-right:26px;font-family:var(--ui-font-head);font-weight:800;font-size:1.04rem}
.popup-body{font-size:.86rem;color:var(--ui-fg-light);margin-top:4px;margin-bottom:14px}
.popup-tab{position:fixed;background:linear-gradient(135deg,var(--ui-magenta),var(--ui-warm));border-radius:50%;right:22px;border:none;height:60px;cursor:pointer;align-items:center;z-index:80;display:none;bottom:22px;justify-content:center;width:60px;color:#fffdff;box-shadow:var(--ui-elev-lg)}
.popup-tab svg{fill:currentColor;width:26px;stroke:none;height:26px}

.about{gap:clamp(28px,4vw,48px);grid-template-columns:1.2fr 1fr;align-items:start;display:grid}
.about-facts{grid-template-columns:1fr 1fr;gap:16px;display:grid}
.fact{padding:14px 16px;border-radius:var(--ui-ro-md);border:1px solid rgba(255,253,255,.92);background:var(--ui-panel);box-shadow:var(--ui-elev-sm);gap:12px;display:flex;align-items:center}
.fact-icon{flex:none;width:40px;border-radius:12px;background:var(--ui-panel-x);height:40px;display:grid;place-items:center;color:var(--ui-magenta)}
.fact-icon svg{width:18px;height:18px}
.fact-body dt{font-size:.78rem;letter-spacing:.05em;color:var(--ui-quiet);text-transform:uppercase}
.fact-body dd{font-family:var(--ui-font-head);font-weight:800;font-size:.98rem;margin:2px 0 0}
/* Fil d'Ariane robot placé dans l'article SEO : neutraliser les styles de liste de l'article (grille, retrait, puce). */
.page-zone .crumbs{display:flex}.page-zone .crumbs li{padding-left:0}.page-zone .crumbs li::before{display:none}
.crumbs li:not(:last-child)::after{content:"\00203a";margin-left:6px;color:var(--ui-quiet)}
.crumbs a{color:var(--ui-fg-light)}

.request{background:#fffdff;border-radius:var(--ui-ro-lg);box-shadow:var(--ui-elev-md);border:1px solid rgba(255,253,255,.92);padding:clamp(24px,3vw,40px)}
.request-cell{display:grid;gap:7px;margin-bottom:18px}
.request-cell label{font-weight:700;font-size:.92rem}
.input-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.input{width:100%;padding:13px 16px;border-radius:var(--ui-ro-sm);border:1.5px solid var(--ui-rule);background:var(--ui-panel-light);font-family:inherit;font-size:1rem;color:var(--ui-fg);transition:border-color .16s,box-shadow .16s}
.input:focus{outline:none;border-color:var(--ui-magenta);box-shadow:0 0 0 3px rgba(236,76,151,.13)}
textarea.input{min-height:140px;resize:vertical}
.request-hint{font-weight:700}
.request-hint--lit{color:#2fae65}
.request-hint--closed{color:var(--ui-magenta-dark)}

.finder-request{margin:0 auto;display:flex;gap:12px;background:#fffdff;padding:12px;border-radius:var(--ui-ro-pill);box-shadow:var(--ui-elev-md);border:1px solid rgba(255,253,255,.92)}
.finder-request .input{border:none;background:transparent;box-shadow:none;font-size:1.06rem}
.finder-request .input:focus{box-shadow:none}
.finder-request+.places{margin-top:40px}

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

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

@media (max-width:980px){
  .contacts-cols{grid-template-columns:repeat(3,1fr)}
  .contact-cols{grid-template-columns:1fr}
  .contact-frame{width:100%;max-width:380px;justify-self:start}
  .contact-drawer{position:static}
  .page,.about{grid-template-columns:1fr}
  .base-cols{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .core-links{display:none}
  .toggle{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .drawer-small,.links-backdrop{display:none}
}
@media (max-width:600px){
  :root{--ui-vgap:clamp(30px,7vw,48px)}
  .base-cols,.input-row{grid-template-columns:1fr}
  .contacts-cols{grid-template-columns:repeat(2,1fr);gap:12px}
  .contact__inner{padding:16px 10px}
  .action__panel{flex-direction:column;align-items:stretch;padding:32px 24px}
  .action__panel .button{width:100%;white-space:normal}
  .finder-request{flex-direction:column;border-radius:var(--ui-ro-lg)}
  .finder-request .button{width:100%}
  .zone--contact{padding-top:0}
  .contact-frame img{aspect-ratio:1/1;max-height:46vh}
  .contact-cols{margin-top:0}
  .contact-drawer{display:flex;flex-direction:column;margin-top:14px}
  .contact-top{order:1;margin-top:0}
  .contact-hint{order:2}
  .contact-list{order:3;margin-top:16px;gap:10px}
  .contact-list .button{flex:1 1 auto}
  .contact-rail{display:none}
  .contact-facts{order:4}
  .contact-drawer .tagline{order:5}
  .about-facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .fact{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .fact-icon{width:34px;height:34px}
  .fact-body{min-width:0}
  .fact-body dd{font-size:.92rem;overflow-wrap:anywhere}
}
