:root{
  --pinktint-100:#fcf0f2;
  --pinktint-200:#fcdee7;
  --pinktint-300:#f8c4de;
  --pinktint-deep:#f2a9c6;
  --lav:#e7e4f6;
  --lav-alt:#d9ddf8;

  --surface:#fdfeff;
  --surface-alt:#fff3f7;
  --surface-alt:#fbe9f2;

  --magenta:#eb4e96;
  --magenta-hover:#e32f7a;
  --flush:#f95b75;
  --flush-alt:#f84b61;
  --orange:#fb7a3b;
  --orange-alt:#f46a27;
  --crush:#fe4c5f;
  --periwinkle:#c5caf2;

  --copy:#292431;
  --copy-tint:#6d6674;
  --dim:#9992a0;
  --divider:#f1d7e4;

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

  --sd-sm:0 6px 16px -8px rgba(235,78,150,.35);
  --sd-md:0 18px 38px -18px rgba(235,78,150,.38);
  --sd-lg:0 30px 60px -24px rgba(227,47,122,.41);

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

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

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  color:var(--copy);font-family:var(--type);background:
    radial-gradient(1200px 700px at 85% -8%, var(--pinktint-300) 0%, rgba(248,196,222,.01) 55%),
    radial-gradient(900px 600px at -10% 8%, var(--lav) 0%, rgba(231,228,246,.01) 55%),
    linear-gradient(180deg, var(--pinktint-100) 0%, var(--surface-alt) 40%, var(--pinktint-100) 100%);-webkit-font-smoothing:antialiased;
  background-attachment:fixed;
  line-height:1.6;margin:0;
}
img{display:block;max-width:100%}
.nav-screen{opacity:0;z-index:1090;transition:opacity .3s ease;inset:0;background:rgba(41,36,49,.49);visibility:hidden;position:fixed}
.nav-screen.active{opacity:1;visibility:visible}
.crumbs a:hover{color:var(--magenta-hover)}
figure{margin:0}

.wrapper{margin-inline:auto;max-width:var(--frame);padding-inline:var(--gutter)}
.id{align-items:center;font-family:var(--heading);color:var(--copy);font-weight:800;letter-spacing:-.02em;font-size:1.28rem;display:flex;gap:11px}
.id:hover{color:var(--copy)}
.id__logo{width:42px;flex-shrink:0;height:42px;justify-content:center;align-items:center;color:#fdfeff;border-radius:14px;box-shadow:0 8px 18px -8px rgba(235,78,150,.82);display:inline-flex;background:linear-gradient(135deg,var(--magenta),var(--flush) 55%,var(--orange))}
.id__logo svg{height:22px;width:22px}

.zone.chat-doc{padding-block:clamp(18px,3vw,38px)}
.account__star{height:36px;box-shadow:var(--sd-sm);position:absolute;display:grid;color:var(--flush);place-items:center;transition:transform .16s,background .16s,color .16s;top:12px;background:rgba(253,254,255,.9);z-index:2;width:36px;border-radius:50%;border:none;cursor:pointer;right:12px}
.account__star svg{height:18px;width:18px}
.account__star:hover{transform:scale(1.08)}
.account__star.on{background:var(--flush);color:#fdfeff}
.account__star.on svg{fill:currentColor}
.account-window__star{height:46px;width:46px;top:14px;right:14px}
.account-window__star svg{width:21px;height:21px}
.account__body{padding:16px 18px}
.account__name{font-family:var(--heading);font-weight:800;font-size:1.12rem}
.account__name a{text-decoration:none;outline-offset:3px;color:inherit}
.account__name a::after{content:"";z-index:1;inset:0;position:absolute}
.account__name span{font-weight:600;color:var(--dim)}
.account__loc{align-items:center;gap:6px;margin-top:4px;font-size:.88rem;display:flex;color:var(--copy-tint)}
.account__loc .needle svg{width:14px;height:14px;color:var(--magenta)}
.account__chat{box-shadow:var(--sd-sm);align-items:center;display:inline-flex;padding:9px 14px;justify-content:center;background:linear-gradient(135deg,var(--magenta),var(--flush));border-radius:var(--rad-pill);width:100%;font-weight:700;font-size:.9rem;margin-top:12px;position:relative;color:#fdfeff;gap:7px;transition:transform .16s ease,box-shadow .16s ease;z-index:2}
.account__chat svg{height:16px;width:16px}
.account__chat:hover{transform:translateY(-1px);box-shadow:var(--sd-md)}
.account-row{gap:clamp(24px,4vw,52px);align-items:start;margin-top:22px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.account-col{min-width:0}
.account-window{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--pinktint-200),var(--lav-alt));margin:0;border-radius:var(--rad-lg);box-shadow:var(--sd-md)}
.account-window img{aspect-ratio:4/5;display:block;object-fit:cover;width:100%;height:auto}
.account-nav{border-radius:50%;box-shadow:var(--sd-md);border:none;position:absolute;transform:translateY(-50%);transition:transform .15s ease,background .15s ease;display:grid;cursor:pointer;top:50%;z-index:2;place-items:center;height:44px;background:rgba(253,254,255,.9);color:var(--magenta-hover);width:44px}
.account-nav:hover{transform:translateY(-50%) scale(1.07);background:#fdfeff}
.account-nav svg{height:22px;width:22px}
.account-prev{left:12px}
.account-right{right:12px}
.account-rail{margin-top:12px;flex-wrap:wrap;gap:10px;display:flex}
.account-block{width:72px;cursor:pointer;border:2px solid transparent;flex:0 0 auto;aspect-ratio:3/4;padding:0;overflow:hidden;background:var(--surface-alt);border-radius:var(--rad-sm);box-shadow:var(--sd-sm);transition:transform .15s ease,border-color .15s ease}
.account-block img{width:100%;object-fit:cover;display:block;height:100%}
.account-block:hover{transform:translateY(-2px)}
.account-block.on{border-color:var(--magenta)}
.account-drawer{top:96px;position:sticky}
.account-intro{flex-wrap:wrap;gap:12px;align-items:center;display:flex;margin-top:14px}
.account-intro .marker-pill{flex:none}
.account-hook{font-family:var(--heading);font-weight:800;font-size:clamp(1.7rem,3.2vw,2.3rem);line-height:1.1}
.account-hook span{color:var(--dim);font-weight:600;font-size:.62em}
.account-hint{margin-top:10px;align-items:center;font-size:1.02rem;display:flex;gap:7px;color:var(--copy-tint)}
.account-hint .needle svg{width:18px;height:18px;color:var(--magenta)}
.account-hint a{font-weight:600;color:var(--magenta-hover);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s ease}
.account-hint a:hover{border-bottom-color:currentColor}
.account-figures{gap:8px;display:flex;margin-top:16px;flex-wrap:wrap}
.account-drawer .hook{margin-top:18px}
.account-list{display:flex;margin-top:24px;gap:12px;flex-wrap:wrap}
.account-tile{border-radius:var(--rad-lg);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;border:1px solid rgba(253,254,255,.88);position:relative;background:var(--surface);box-shadow:var(--sd-md)}
.account-tile:hover{box-shadow:var(--sd-lg);transform:translateY(-6px)}
.account__pic{background:linear-gradient(160deg,var(--pinktint-200),var(--lav-alt));aspect-ratio:1/1;position:relative;overflow:hidden}
.account__pic img{object-fit:cover;width:100%;display:block;height:100%}
.account__marker{align-items:center;display:inline-flex;color:#2eac64;position:absolute;padding:5px 10px;font-weight:700;z-index:2;background:rgba(253,254,255,.9);box-shadow:var(--sd-sm);top:12px;border-radius:var(--rad-pill);font-size:.72rem;gap:6px;left:12px}
button{font-family:inherit}

.burger{border:none;display:none;z-index:1105;gap:5px;cursor:pointer;background:none;flex-direction:column;padding:6px}
.burger span{border-radius:2px;width:26px;height:3px;background:var(--copy);transition:transform .3s ease,opacity .3s ease;display:block}
.burger.active span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.burger.active span:nth-child(2){opacity:0}
.burger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}
.intro-head{text-align:center;max-width:640px;margin:0 auto 44px}
.kicker{font-weight:800;color:var(--magenta);letter-spacing:.1em;margin-bottom:10px;text-transform:uppercase;font-size:.8rem}
.ttl{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}
.pop{background:linear-gradient(92deg,var(--magenta),var(--flush) 60%,var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}
h1,h2,h3,h4{font-family:var(--heading);color:var(--copy);line-height:1.12;letter-spacing:-.01em;margin:0}
::selection{background:rgba(235,78,150,.23)}
.nav-a{transition:background .18s,color .18s;color:var(--copy);font-weight:600;padding:9px 14px;font-size:.96rem;border-radius:var(--rad-pill)}
.nav-a:hover{color:var(--magenta-hover);background:var(--surface-alt)}
.nav-star{display:inline-flex;position:relative;align-items:center;color:var(--copy);font-weight:600;font-size:.96rem;background:none;text-decoration:none;border:none;padding:9px 12px;transition:background .18s ease,color .18s ease;cursor:pointer;gap:7px;border-radius:var(--rad-pill)}
.nav-star:hover{background:var(--surface-alt);color:var(--magenta-hover)}
.nav-star svg{height:20px;width:20px;color:var(--magenta)}
.nav-star:hover svg{color:var(--magenta-hover)}
.nav-star__txt{white-space:nowrap}
.nav-star .chat-marker{top:auto;position:static;right:auto}
.nav-star-mob{display:flex;width:100%;text-align:left;cursor:pointer;color:var(--copy);gap:9px;text-decoration:none;font-weight:600;background:none;font-size:15px;padding:14px 2px;border:none;border-bottom:1px solid var(--divider);align-items:center}
.nav-star-mob:hover{color:var(--magenta-hover)}
.nav-star-mob svg{color:var(--magenta);height:18px;width:18px}
.chat{flex-direction:column;border-radius:var(--rad-lg);max-width:600px;display:flex;background:var(--surface);overflow:hidden;border:1px solid rgba(253,254,255,.88);margin:0 auto;box-shadow:var(--sd-lg)}
.chat__intro{align-items:center;display:flex;background:var(--surface);gap:14px;padding:15px 20px;border-bottom:1px solid var(--divider)}
.chat__col{display:flex;min-width:0;align-items:center;flex:1;gap:12px;color:inherit;text-decoration:none}
.chat__pic{width:52px;flex:none;border-radius:50%;position:relative;background:linear-gradient(160deg,var(--pinktint-200),var(--lav-alt));height:52px;box-shadow:var(--sd-sm);overflow:hidden}
.chat__pic img{height:100%;width:100%;object-fit:cover}
.chat__pic::after{border-radius:50%;border:2px solid var(--surface);width:13px;height:13px;content:"";right:1px;bottom:1px;position:absolute;background:#2eac64}
.chat__name{line-height:1.15;color:var(--copy);display:block;font-family:var(--heading);font-weight:800;font-size:1.06rem}
.chat__name span{font-weight:600;color:var(--dim);font-size:.84em}
.chat__subtitle{display:block;font-size:.82rem;margin-top:2px;color:var(--copy-tint)}
.chat__intro .marker-pill{flex:none}
.chat__intro .marker-pill .dot{color:#2eac64}
.chat__rail{padding:24px 20px;flex-direction:column;background:linear-gradient(180deg,var(--surface-alt),var(--pinktint-100));gap:12px;display:flex;max-height:56vh;min-height:360px;overflow-y:auto}
.chat__ghost{color:var(--dim);align-self:center;text-align:center;font-size:.92rem;margin:auto 0}
.chat__block{align-self:flex-start;max-width:82%;display:flex}
.chat__block[hidden]{display:none}
.chat__block--alt{justify-content:flex-end;align-self:flex-end}
.chat__tile{background:var(--surface);line-height:1.5;color:var(--copy);border:1px solid var(--divider);word-break:break-word;border-radius:20px;position:relative;box-shadow:var(--sd-sm);padding:11px 15px 8px;border-bottom-left-radius:7px;font-size:.98rem}
.chat__block--alt .chat__tile{border-color:transparent;border-radius:20px;border-bottom-right-radius:7px;color:#fdfeff;background:linear-gradient(135deg,var(--flush),var(--magenta))}
.chat__when{color:var(--dim);text-align:right;margin-top:4px;font-size:.66rem;display:block}
.chat__block--alt .chat__when{color:rgba(253,254,255,.82)}
.chat__later{align-items:center;display:inline-flex;padding:15px 17px;gap:5px}
.chat__later span{background:var(--pinktint-deep);width:8px;animation:undulate 1.2s infinite ease-in-out;border-radius:50%;height:8px}
.chat__later span:nth-child(2){animation-delay:.18s}
.chat__later span:nth-child(3){animation-delay:.36s}

.accounts-row{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.drawer-mob{top:0;overflow-y:auto;max-width:320px;background:var(--surface);transition:right .3s ease;position:fixed;height:100vh;height:100dvh;z-index:1100;box-shadow:-6px 0 30px rgba(41,36,49,.2);right:-100%;padding:84px 22px 22px;width:80%}
.drawer-mob.active{right:0}
.drawer-mob nav{display:flex;flex-direction:column}
.drawer-mob a:not(.btn){font-weight:600;border-bottom:1px solid var(--divider);font-size:15px;padding:14px 2px;color:var(--copy)}
.drawer-mob a:not(.btn):hover{color:var(--magenta-hover)}
.drawer-mob a.btn{margin-top:22px}
svg{display:block}
.dot{font-size:.6rem;line-height:1;color:#2eac64}
ul{list-style:none;margin:0;padding:0}

.marker-pill{letter-spacing:.06em;background:var(--surface);gap:8px;border:1px solid var(--divider);display:inline-flex;font-weight:700;padding:8px 16px;box-shadow:var(--sd-sm);border-radius:var(--rad-pill);font-size:.82rem;color:var(--magenta);align-items:center}
.marker-pill svg{height:16px;color:var(--flush);width:16px}
p{margin:0}

.btn{
  white-space:nowrap;text-align:center;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;align-items:center;
  cursor:pointer;border:1.5px solid transparent;padding:14px 26px;font-weight:700;
  justify-content:center;display:inline-flex;font-size:1rem;border-radius:var(--rad-pill);
  gap:9px;
}
.btn svg{height:18px;width:18px}
.btn--xs{font-size:.9rem;padding:10px 18px}
.btn--large{padding:17px 32px;font-size:1.06rem}
.btn--wide{width:100%}
.btn--cta{box-shadow:0 14px 26px -12px rgba(248,75,97,.75);background:linear-gradient(95deg,var(--orange),var(--flush) 55%,var(--magenta));color:#fdfeff}
.btn--cta:hover{color:#fdfeff;box-shadow:0 20px 34px -12px rgba(248,75,97,.84);transform:translateY(-2px)}
.btn--soft{background:var(--surface);border-color:var(--divider);color:var(--magenta)}
.btn--soft:hover{background:var(--surface-alt);transform:translateY(-2px);color:var(--magenta-hover)}
.btn--plain{color:var(--magenta-hover);background:#fdfeff}
.btn--plain:hover{transform:translateY(-2px);box-shadow:var(--sd-md);color:var(--magenta-hover)}
.hook{font-size:1.06rem;color:var(--copy-tint);margin-top:14px}
.page-nav{display:flex;gap:8px;margin-left:auto;align-items:center}
.zone{padding-block:var(--vgap)}
.zone--alt{background:var(--surface-alt)}
.pic-on svg{fill:currentColor;stroke:none}
:focus-visible{border-radius:6px;outline:3px solid var(--magenta);outline-offset:2px}
.id,.nav-a,.drawer-mob a,.btn,.crumbs a,.app-base a,.cities-menu a,.account__chat{text-decoration:none}

.app-navbar{top:0;z-index:60;border-bottom:1px solid var(--divider);background:var(--surface);position:sticky}
.app-navbar__body{min-height:74px;align-items:center;display:flex;justify-content:space-between;gap:20px;padding-block:12px}
@keyframes undulate{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-5px);opacity:1}}
.chat__contact{background:var(--surface);padding:12px 16px;display:flex;border-top:1px solid var(--divider);gap:10px;align-items:center}
.chat__fld{flex:1;min-width:0;border:1.5px solid var(--divider);padding:12px 16px;border-radius:var(--rad-pill);color:var(--copy);font-family:inherit;font-size:1rem;transition:border-color .16s,box-shadow .16s;background:var(--surface-alt)}
.chat__fld:focus{outline:none;border-color:var(--magenta);box-shadow:0 0 0 3px rgba(235,78,150,.14)}
.chat__btn{place-items:center;box-shadow:0 10px 20px -10px rgba(248,75,97,.82);display:grid;height:46px;border-radius:50%;transition:transform .15s ease,opacity .15s ease;width:46px;color:#fdfeff;cursor:pointer;border:none;flex:none;background:linear-gradient(135deg,var(--flush),var(--magenta))}
.chat__btn:hover{transform:translateY(-2px)}
.chat__btn:disabled{transform:none;cursor:default;opacity:.5}
.chat__btn svg{stroke:none;width:18px;fill:currentColor;height:18px}
.chat__hint{padding:2px 20px 16px;font-size:.8rem;text-align:center;color:var(--dim)}
.chat__screen{flex-direction:column;display:none;border-top:1px solid var(--divider);text-align:center;align-items:center;padding:20px 22px 24px;gap:14px;background:var(--surface)}
.chat__screen-txt{max-width:440px;color:var(--copy-tint);font-size:.94rem;line-height:1.5;margin:0}
.chat__modal{align-items:center;-webkit-backdrop-filter:blur(3px);justify-content:center;z-index:130;inset:0;padding:20px;backdrop-filter:blur(3px);position:fixed;display:none;background:rgba(23,10,25,.54)}
.chat__modal-tile{border:1px solid var(--divider);background:var(--surface);text-align:center;max-width:420px;width:100%;position:relative;padding:32px 26px 28px;box-shadow:var(--sd-lg);border-radius:22px}
.chat__modal-close{line-height:1;top:10px;font-size:1.6rem;color:var(--dim);padding:0;right:14px;cursor:pointer;position:absolute;background:none;border:none}
.chat__modal-name{font-family:var(--heading);margin:0 0 10px;color:var(--copy);font-weight:800;font-size:1.22rem}
.chat__modal-txt{margin:0 0 20px;font-size:.96rem;line-height:1.5;color:var(--copy-tint)}
.chat-dock{position:fixed;width:60px;right:22px;height:60px;place-items:center;z-index:80;color:#fdfeff;transition:transform .16s ease;box-shadow:var(--sd-lg);bottom:22px;display:grid;background:linear-gradient(135deg,var(--magenta),var(--flush));text-decoration:none;border-radius:50%}
.chat-dock[hidden]{display:none}
.chat-dock:hover{transform:translateY(-2px)}
.chat-dock svg{height:26px;width:26px}
.chat-marker{border-radius:var(--rad-pill);background:var(--crush);line-height:1;font-size:.72rem;padding:0 6px;top:-3px;border:2px solid var(--surface);right:-3px;min-width:22px;display:grid;position:absolute;place-items:center;height:22px;font-weight:800;box-shadow:var(--sd-sm);color:#fdfeff}
.chat-marker[hidden]{display:none}
.chat-dock--wide{align-items:center;height:auto;display:inline-flex;width:auto;gap:9px;padding:14px 22px;border-radius:var(--rad-pill)}
.chat-dock--wide svg{height:20px;width:20px}
.chat-dock__txt{white-space:nowrap;font-family:var(--heading);font-weight:800;font-size:.98rem}
.chat-menu{display:flex;gap:4px;max-height:52vh;margin-top:4px;flex-direction:column;overflow-y:auto}
.chat-entry{transition:background .14s ease;align-items:center;gap:11px;padding:9px 8px;text-decoration:none;border-radius:var(--rad-sm);display:flex;color:var(--copy)}
.chat-entry:hover{background:var(--surface-alt)}
.chat-logo{overflow:hidden;height:42px;background:linear-gradient(160deg,var(--pinktint-200),var(--lav-alt));border-radius:50%;flex:none;width:42px}
.chat-logo img{object-fit:cover;width:100%;height:100%}
.chat-body{flex:1;min-width:0}
.chat-body strong{font-family:var(--heading);display:block;font-size:.96rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:800}
.chat-body span{font-size:.82rem;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--copy-tint)}
.chat-entry small{flex:none;color:var(--dim);align-self:flex-start;font-size:.7rem}
.hold-pop{padding:20px;justify-content:center;background:rgba(41,36,49,.54);display:none;position:fixed;inset:0;z-index:1200;backdrop-filter:blur(3px);align-items:center}
.hold-pop.loaded{display:flex}
.hold-pop__tile{overflow:hidden;box-shadow:var(--sd-lg);border-radius:var(--rad-xl);width:100%;position:relative;color:var(--copy);background:var(--surface);grid-template-columns:.82fr 1fr;display:grid;max-width:860px}
.hold-pop__drawer{display:flex;justify-content:center;flex-direction:column;background:linear-gradient(160deg,var(--magenta),var(--flush) 60%,var(--orange));position:relative;gap:8px;align-items:flex-start;padding:clamp(24px,4vw,40px);overflow:hidden;color:#fdfeff}
.hold-pop__drawer::after{width:86%;position:absolute;right:-28%;border-radius:50%;height:86%;content:"";border:20px solid rgba(253,254,255,.1);bottom:-28%}
.hold-pop__drawer img{aspect-ratio:3/4;object-fit:cover;box-shadow:var(--sd-md);border-radius:var(--rad-lg);position:relative;width:100%;max-width:200px;border:3px solid rgba(253,254,255,.49)}
.hold-pop__drawer .pic-on svg{height:64px;fill:currentColor;width:64px;stroke:none}
.hold-pop__drawer p{font-size:1rem;position:relative;max-width:200px;font-weight:700}
.hold-pop__idx{font-family:var(--heading);position:relative;line-height:.85;font-weight:800;font-size:clamp(52px,8vw,88px)}
.hold-pop__page{padding:clamp(24px,4vw,40px);position:relative}
.hold-pop__page .hook{margin-top:10px}
.hold-pop__page .btn{margin-top:20px}
.hold-pop__page .chat-menu{margin-top:18px;max-height:236px}
.hold-pop__close{position:absolute;height:38px;top:14px;background:var(--surface);right:14px;padding:0;border-radius:50%;z-index:2;display:grid;cursor:pointer;border:1px solid var(--divider);place-items:center;color:var(--dim);width:38px}
.hold-pop__close svg{width:15px;height:15px}
.hold-pop__close:hover{border-color:transparent;color:#fdfeff;background:var(--magenta)}
.hold-pop__nope{border:0;cursor:pointer;font-size:.84rem;margin:14px 0 0;display:block;max-width:100%;color:var(--dim);background:none;text-decoration:underline;width:fit-content}
@media (max-width:600px){.hold-pop{padding:12px}.hold-pop__tile{grid-template-columns:1fr}.hold-pop__drawer{display:none}.hold-pop__page{padding:26px 22px}.hold-pop__page .btn{width:100%}}
.town-hall-name{margin-bottom:14px;font-family:var(--heading);font-weight:800}
.town-hall-entry{gap:10px;font-size:.94rem;color:var(--copy-tint);margin-top:10px;align-items:flex-start;display:flex}
.town-hall-entry .needle{color:var(--magenta);flex:none}
.town-hall-entry .needle svg{height:16px;width:16px}
.hours{gap:4px;margin-top:10px;display:grid}
.figure{box-shadow:var(--sd-sm);border-radius:var(--rad-md);border:1px solid rgba(253,254,255,.88);background:var(--surface);align-items:center;gap:12px;display:flex;padding:14px 16px}
.figure-pic{background:var(--surface-alt);width:40px;border-radius:12px;flex:none;color:var(--magenta);height:40px;place-items:center;display:grid}
.figure-pic svg{height:18px;width:18px}
.figure-txt dt{font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--dim)}
.figure-txt dd{font-family:var(--heading);font-weight:800;font-size:.98rem;margin:2px 0 0}
.base-row{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}
.base-id{margin-bottom:12px;display:flex;align-items:center;color:#fdfeff;gap:10px;font-family:var(--heading);font-weight:800;font-size:1.2rem}
.base-col>p:not(.base-name){max-width:34ch;font-size:.94rem;color:#ab9db2}
.base-name{font-size:1rem;font-weight:800;margin-bottom:14px;color:#fdfeff}
.base-menu{gap:10px;font-size:.94rem;display:grid}

.app-base{background:#292431;color:#d7d4db}
.app-base .wrapper{padding-block:56px 22px}
.app-base a{color:#d7d4db}
.app-base a:hover{color:#fdfeff}

.offer__panel{overflow:hidden;position:relative;align-items:center;color:#fdfeff;flex-wrap:wrap;border-radius:var(--rad-xl);gap:30px;padding:clamp(38px,5vw,64px);justify-content:space-between;display:flex;background:linear-gradient(100deg,var(--magenta-hover),var(--flush) 60%,var(--orange));box-shadow:var(--sd-lg)}
.offer__splash{border-radius:50%;width:320px;position:absolute;right:-90px;top:-120px;height:320px;background:rgba(253,254,255,.13)}
.offer__txt{z-index:2;position:relative}
.offer__txt h2{color:#fdfeff;max-width:16ch}
.offer__txt p{margin-top:10px;max-width:46ch;color:rgba(253,254,255,.9)}
.offer__panel .btn{z-index:2;position:relative}

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

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

.infos{grid-template-columns:1.2fr 1fr;gap:clamp(28px,4vw,48px);display:grid;align-items:start}
.infos-figures{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.when{gap:12px;display:flex;font-size:.9rem;justify-content:space-between;color:var(--copy-tint)}
.perks-list{gap:10px;display:grid;margin-top:14px}
.perks-list li{color:var(--copy);position:relative;padding-left:24px}
.perks-list li::before{position:absolute;height:10px;background:var(--flush);left:0;top:.5em;content:"";width:10px;border-radius:50%}
.read__txt .btn{margin-top:26px}
.topics-block{border-radius:var(--rad-md);overflow:hidden;background:var(--surface);margin-bottom:14px;border:1px solid var(--divider);box-shadow:var(--sd-sm)}
.topics-block summary{color:var(--copy);font-family:var(--heading);cursor:pointer;align-items:center;font-weight:800;display:flex;justify-content:space-between;font-size:1.05rem;padding:20px 22px;list-style:none;gap:16px}
.topics-block summary::-webkit-details-marker{display:none}
.topics-block summary::after{content:"+";display:grid;border-radius:50%;place-items:center;transition:transform .25s ease;color:var(--magenta);width:30px;flex:none;background:var(--surface-alt);font-size:1.2rem;height:30px}
.topics-block[open] summary::after{background:var(--magenta);transform:rotate(45deg);color:#fdfeff}
.topics-ans{color:var(--copy-tint);padding:0 22px 20px}

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

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

.dock-offer{max-width:calc(100vw - 44px);background:#fdfeff;padding:20px;box-shadow:var(--sd-lg);width:300px;right:22px;border-radius:var(--rad-lg);position:fixed;border:1px solid rgba(253,254,255,.88);bottom:22px;z-index:80}
.dock-close{width:28px;top:12px;cursor:pointer;color:var(--copy-tint);border-radius:50%;place-items:center;right:12px;line-height:1;position:absolute;font-size:1.1rem;display:grid;border:none;padding:0;background:var(--surface-alt);height:28px}
.dock-close:hover{color:#fdfeff;background:var(--magenta)}
.dock-name{font-family:var(--heading);font-weight:800;padding-right:26px;font-size:1.04rem}
.dock-txt{margin-top:4px;color:var(--copy-tint);margin-bottom:14px;font-size:.86rem}
.dock-launcher{box-shadow:var(--sd-lg);z-index:80;cursor:pointer;border-radius:50%;height:60px;right:22px;align-items:center;color:#fdfeff;border:none;bottom:22px;width:60px;justify-content:center;display:none;position:fixed;background:linear-gradient(135deg,var(--magenta),var(--flush))}
.dock-launcher svg{height:26px;width:26px;fill:currentColor;stroke:none}
.where-tile{overflow:hidden;aspect-ratio:4/3;position:relative;background:var(--lav);box-shadow:var(--sd-md);border-radius:var(--rad-lg);border:1px solid rgba(253,254,255,.88)}
.where-tile.where-later{cursor:pointer}
.where-ghost{inset:0;display:grid;position:absolute;padding:20px;background:linear-gradient(160deg,var(--lav-alt),var(--surface-alt));gap:10px;place-items:center;text-align:center}
.where-ghost p{color:var(--copy);font-weight:700}
.where-needle{color:var(--flush);filter:drop-shadow(0 10px 12px rgba(248,75,97,.49))}
.where-needle svg{stroke:none;height:40px;fill:currentColor;width:40px}
.where-tile iframe{border:0;width:100%;position:absolute;inset:0;height:100%}
.where-tile.loaded .where-ghost{display:none}
.infos-town-hall{box-shadow:var(--sd-md);padding:24px;background:var(--surface);border-radius:var(--rad-lg);border:1px solid rgba(253,254,255,.88)}
.rights{color:#ab9db2;margin-top:34px;border-top:1px solid rgba(253,254,255,.1);font-size:.86rem;padding-top:22px}
/* Fil d'Ariane robot placé dans l'article SEO : neutraliser les styles de liste de l'article (grille, retrait, puce). */
.read-zone .crumbs{display:flex}.read-zone .crumbs li{padding-left:0}.read-zone .crumbs li::before{display:none}
.crumbs li:not(:last-child)::after{content:"\00203a";margin-left:6px;color:var(--dim)}
.crumbs a{color:var(--copy-tint)}

.contact{background:#fdfeff;border-radius:var(--rad-lg);box-shadow:var(--sd-md);border:1px solid rgba(253,254,255,.88);padding:clamp(24px,3vw,40px)}
.contact-block{display:grid;gap:7px;margin-bottom:18px}
.contact-block 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(--rad-sm);border:1.5px solid var(--divider);background:var(--surface-alt);font-family:inherit;font-size:1rem;color:var(--copy);transition:border-color .16s,box-shadow .16s}
.fld:focus{outline:none;border-color:var(--magenta);box-shadow:0 0 0 3px rgba(235,78,150,.14)}
textarea.fld{min-height:140px;resize:vertical}
.contact-hint{font-weight:700}
.contact-hint--on{color:#2eac64}
.contact-hint--hidden{color:var(--magenta-hover)}

.search-contact{margin:0 auto;display:flex;gap:12px;background:#fdfeff;padding:12px;border-radius:var(--rad-pill);box-shadow:var(--sd-md);border:1px solid rgba(253,254,255,.88)}
.search-contact .fld{border:none;background:transparent;box-shadow:none;font-size:1.06rem}
.search-contact .fld:focus{box-shadow:none}
.search-contact+.cities{margin-top:40px}

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

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

@media (max-width:980px){
  .accounts-row{grid-template-columns:repeat(3,1fr)}
  .account-row{grid-template-columns:1fr}
  .account-window{width:100%;max-width:380px;justify-self:start}
  .account-drawer{position:static}
  .read,.infos{grid-template-columns:1fr}
  .base-row{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .page-nav{display:none}
  .burger{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .drawer-mob,.nav-screen{display:none}
}
@media (max-width:600px){
  :root{--vgap:clamp(30px,7vw,48px)}
  .base-row,.fld-entry{grid-template-columns:1fr}
  .accounts-row{grid-template-columns:repeat(2,1fr);gap:12px}
  .account__body{padding:16px 10px}
  .offer__panel{flex-direction:column;align-items:stretch;padding:32px 24px}
  .offer__panel .btn{width:100%;white-space:normal}
  .search-contact{flex-direction:column;border-radius:var(--rad-lg)}
  .search-contact .btn{width:100%}
  .zone--account{padding-top:0}
  .account-window img{aspect-ratio:1/1;max-height:46vh}
  .account-row{margin-top:0}
  .account-drawer{display:flex;flex-direction:column;margin-top:14px}
  .account-intro{order:1;margin-top:0}
  .account-hint{order:2}
  .account-list{order:3;margin-top:16px;gap:10px}
  .account-list .btn{flex:1 1 auto}
  .account-rail{display:none}
  .account-figures{order:4}
  .account-drawer .hook{order:5}
  .infos-figures{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .figure{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .figure-pic{width:34px;height:34px}
  .figure-txt{min-width:0}
  .figure-txt dd{font-size:.92rem;overflow-wrap:anywhere}
}
