:root{
  --ds-pinktint-100:#fbf0f2;
  --ds-pinktint-200:#fcdcea;
  --ds-pinktint-300:#f6c5dd;
  --ds-pinktint-deep:#f6a9c8;
  --ds-lav:#e7e6f9;
  --ds-lav-2:#dadcf5;

  --ds-paper:#fefffe;
  --ds-paper-pale:#fcf6f7;
  --ds-paper-2:#ffebef;

  --ds-accent:#ec4c95;
  --ds-accent-deep:#e0307a;
  --ds-flush:#fb5a74;
  --ds-flush-2:#fc4b62;
  --ds-orange:#fc7a3c;
  --ds-orange-2:#f66c25;
  --ds-crimson:#fd4c60;
  --ds-blueviolet:#c8cdf0;

  --ds-ink:#282732;
  --ds-ink-pale:#6d6672;
  --ds-subtle:#9a93a2;
  --ds-rule:#f0d7e3;

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

  --ds-shade-sm:0 6px 16px -8px rgba(236,76,149,.36);
  --ds-shade-md:0 18px 38px -18px rgba(236,76,149,.42);
  --ds-shade-lg:0 30px 60px -24px rgba(224,48,122,.42);

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

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

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  color:var(--ds-ink);background:
    radial-gradient(1200px 700px at 85% -8%, var(--ds-pinktint-300) 0%, rgba(246,197,221,0) 55%),
    radial-gradient(900px 600px at -10% 8%, var(--ds-lav) 0%, rgba(231,230,249,0) 55%),
    linear-gradient(180deg, var(--ds-pinktint-100) 0%, var(--ds-paper-pale) 40%, var(--ds-pinktint-100) 100%);font-family:var(--ds-font);background-attachment:fixed;
  -webkit-font-smoothing:antialiased;
  line-height:1.6;margin:0;
}
img{display:block;max-width:100%}
.hook{color:var(--ds-ink-pale);margin-top:14px;font-size:1.06rem}

.badgeTag{border:1px solid var(--ds-rule);color:var(--ds-accent);display:inline-flex;background:var(--ds-paper);letter-spacing:.06em;font-weight:700;border-radius:var(--ds-rad-pill);align-items:center;gap:8px;box-shadow:var(--ds-shade-sm);font-size:.82rem;padding:8px 16px}
.badgeTag svg{width:16px;color:var(--ds-flush);height:16px}

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

.button{
  align-items:center;font-weight:700;padding:14px 26px;justify-content:center;
  text-align:center;display:inline-flex;gap:9px;font-size:1rem;
  cursor:pointer;white-space:nowrap;border:1.5px solid transparent;border-radius:var(--ds-rad-pill);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
}
.button svg{height:18px;width:18px}
.buttonSmall{padding:10px 18px;font-size:.9rem}
.buttonLarge{padding:17px 32px;font-size:1.06rem}
.buttonWide{width:100%}
.buttonGo{box-shadow:0 14px 26px -12px rgba(252,75,98,.77);background:linear-gradient(95deg,var(--ds-orange),var(--ds-flush) 55%,var(--ds-accent));color:#fefffe}
.buttonGo:hover{box-shadow:0 20px 34px -12px rgba(252,75,98,.85);color:#fefffe;transform:translateY(-2px)}
.buttonLight{background:var(--ds-paper);border-color:var(--ds-rule);color:var(--ds-accent)}
.buttonLight:hover{background:var(--ds-paper-2);transform:translateY(-2px);color:var(--ds-accent-deep)}
.buttonWhite{background:#fefffe;color:var(--ds-accent-deep)}
.buttonWhite:hover{transform:translateY(-2px);box-shadow:var(--ds-shade-md);color:var(--ds-accent-deep)}
.iconFull svg{stroke:none;fill:currentColor}

.siteMasthead{position:sticky;z-index:60;background:var(--ds-paper);border-bottom:1px solid var(--ds-rule);top:0}
.siteMastheadInner{gap:20px;align-items:center;padding-block:12px;min-height:74px;justify-content:space-between;display:flex}
svg{display:block}
.linksBackdrop{transition:opacity .3s ease;z-index:1090;position:fixed;opacity:0;visibility:hidden;inset:0;background:rgba(40,39,50,.48)}
.linksBackdrop.shown{visibility:visible;opacity:1}
ul{margin:0;list-style:none;padding:0}
button{font-family:inherit}
.profileSparkle{border-radius:50%;z-index:2;place-items:center;border:none;color:var(--ds-flush);box-shadow:var(--ds-shade-sm);transition:transform .16s,background .16s,color .16s;cursor:pointer;top:12px;display:grid;position:absolute;right:12px;width:36px;height:36px;background:rgba(254,255,254,.92)}
.profileSparkle svg{height:18px;width:18px}
.profileSparkle:hover{transform:scale(1.08)}
.profileSparkle.full{background:var(--ds-flush);color:#fefffe}
.profileSparkle.full svg{fill:currentColor}
.profileShotSparkle{height:46px;width:46px;top:14px;right:14px}
.profileShotSparkle svg{height:21px;width:21px}
.profileInner{padding:16px 18px}
.profileTitle{font-family:var(--ds-headline);font-weight:800;font-size:1.12rem}
.profileTitle a{color:inherit;outline-offset:3px;text-decoration:none}
.profileTitle a::after{position:absolute;z-index:1;content:"";inset:0}
.profileTitle span{color:var(--ds-subtle);font-weight:600}
.profileLoc{font-size:.88rem;gap:6px;color:var(--ds-ink-pale);margin-top:4px;align-items:center;display:flex}
.profileLoc .pin svg{height:14px;width:14px;color:var(--ds-accent)}
.profileDm{background:linear-gradient(135deg,var(--ds-accent),var(--ds-flush));gap:7px;position:relative;display:inline-flex;border-radius:var(--ds-rad-pill);transition:transform .16s ease,box-shadow .16s ease;justify-content:center;align-items:center;color:#fefffe;margin-top:12px;font-weight:700;padding:9px 14px;font-size:.9rem;width:100%;z-index:2;box-shadow:var(--ds-shade-sm)}
.profileDm svg{height:16px;width:16px}
.profileDm:hover{transform:translateY(-1px);box-shadow:var(--ds-shade-md)}
.profileCols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,52px);margin-top:22px;display:grid}
.profileCol{min-width:0}
.profileShot{overflow:hidden;margin:0;box-shadow:var(--ds-shade-md);position:relative;background:linear-gradient(160deg,var(--ds-pinktint-200),var(--ds-lav-2));border-radius:var(--ds-rad-lg)}
.profileShot img{height:auto;aspect-ratio:4/5;width:100%;display:block;object-fit:cover}
.profilePager{border-radius:50%;background:rgba(254,255,254,.92);border:none;position:absolute;top:50%;box-shadow:var(--ds-shade-md);width:44px;cursor:pointer;display:grid;color:var(--ds-accent-deep);place-items:center;transform:translateY(-50%);transition:transform .15s ease,background .15s ease;z-index:2;height:44px}
.profilePager:hover{transform:translateY(-50%) scale(1.07);background:#fefffe}
.profilePager svg{height:22px;width:22px}
.profileBack{left:12px}
.profileFwd{right:12px}
.profileRail{flex-wrap:wrap;margin-top:12px;gap:10px;display:flex}
.profileBlock{width:72px;padding:0;border:2px solid transparent;background:var(--ds-paper-2);border-radius:var(--ds-rad-sm);flex:0 0 auto;aspect-ratio:3/4;cursor:pointer;transition:transform .15s ease,border-color .15s ease;box-shadow:var(--ds-shade-sm);overflow:hidden}
.profileBlock img{object-fit:cover;width:100%;display:block;height:100%}
.profileBlock:hover{transform:translateY(-2px)}
.profileBlock.full{border-color:var(--ds-accent)}
.profileSidebar{top:96px;position:sticky}
.profileIntro{flex-wrap:wrap;gap:12px;align-items:center;display:flex;margin-top:14px}
.profileIntro .badgeTag{flex:none}
.profileHook{font-family:var(--ds-headline);line-height:1.1;font-weight:800;font-size:clamp(1.7rem,3.2vw,2.3rem)}
.profileHook span{color:var(--ds-subtle);font-weight:600;font-size:.62em}
.profileNote{align-items:center;display:flex;gap:7px;font-size:1.02rem;margin-top:10px;color:var(--ds-ink-pale)}
.profileNote .pin svg{height:18px;color:var(--ds-accent);width:18px}
.profileNote a{text-decoration:none;font-weight:600;transition:border-color .15s ease;color:var(--ds-accent-deep);border-bottom:1px solid transparent}
.profileNote a:hover{border-bottom-color:currentColor}
.profileFigures{gap:8px;flex-wrap:wrap;margin-top:16px;display:flex}
.profileSidebar .hook{margin-top:18px}
.profileSet{display:flex;margin-top:24px;flex-wrap:wrap;gap:12px}

.wrap{max-width:var(--ds-container);margin-inline:auto;padding-inline:var(--ds-gutter)}
.linksA{border-radius:var(--ds-rad-pill);font-weight:600;transition:background .18s,color .18s;color:var(--ds-ink);padding:9px 14px;font-size:.96rem}
.linksA:hover{color:var(--ds-accent-deep);background:var(--ds-paper-2)}
.linksSparkle{background:none;padding:9px 12px;display:inline-flex;text-decoration:none;cursor:pointer;gap:7px;border:none;color:var(--ds-ink);border-radius:var(--ds-rad-pill);font-weight:600;align-items:center;position:relative;font-size:.96rem;transition:background .18s ease,color .18s ease}
.linksSparkle:hover{background:var(--ds-paper-2);color:var(--ds-accent-deep)}
.linksSparkle svg{height:20px;color:var(--ds-accent);width:20px}
.linksSparkle:hover svg{color:var(--ds-accent-deep)}
.linksSparkleTxt{white-space:nowrap}
.linksSparkle .dmBadge{top:auto;right:auto;position:static}
.linksSparklePhone{color:var(--ds-ink);text-align:left;padding:14px 2px;text-decoration:none;display:flex;font-weight:600;font-size:15px;gap:9px;width:100%;border:none;border-bottom:1px solid var(--ds-rule);background:none;align-items:center;cursor:pointer}
.linksSparklePhone:hover{color:var(--ds-accent-deep)}
.linksSparklePhone svg{width:18px;color:var(--ds-accent);height:18px}
.sectionHead{margin:0 auto 44px;text-align:center;max-width:640px}
:focus-visible{outline:3px solid var(--ds-accent);outline-offset:2px;border-radius:6px}
.dot{line-height:1;color:#31af68;font-size:.6rem}
.title2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}
.label,.linksA,.sidebarPhone a,.button,.path a,.siteFoot a,.townsNav a,.profileDm{text-decoration:none}
.dm{background:var(--ds-paper);border-radius:var(--ds-rad-lg);overflow:hidden;margin:0 auto;display:flex;max-width:600px;flex-direction:column;box-shadow:var(--ds-shade-lg);border:1px solid rgba(254,255,254,.91)}
.dmIntro{gap:14px;display:flex;border-bottom:1px solid var(--ds-rule);padding:15px 20px;background:var(--ds-paper);align-items:center}
.dmCol{color:inherit;display:flex;gap:12px;min-width:0;text-decoration:none;align-items:center;flex:1}
.dmPortrait{flex:none;background:linear-gradient(160deg,var(--ds-pinktint-200),var(--ds-lav-2));overflow:hidden;height:52px;box-shadow:var(--ds-shade-sm);border-radius:50%;position:relative;width:52px}
.dmPortrait img{height:100%;object-fit:cover;width:100%}
.dmPortrait::after{right:1px;width:13px;border-radius:50%;content:"";bottom:1px;background:#31af68;position:absolute;height:13px;border:2px solid var(--ds-paper)}
.dmTitle{font-family:var(--ds-headline);font-weight:800;display:block;font-size:1.06rem;color:var(--ds-ink);line-height:1.15}
.dmTitle span{color:var(--ds-subtle);font-weight:600;font-size:.84em}
.dmSub{font-size:.82rem;margin-top:2px;display:block;color:var(--ds-ink-pale)}
.dmIntro .badgeTag{flex:none}
.dmIntro .badgeTag .dot{color:#31af68}
.dmRail{padding:24px 20px;overflow-y:auto;display:flex;flex-direction:column;max-height:56vh;background:linear-gradient(180deg,var(--ds-paper-pale),var(--ds-pinktint-100));min-height:360px;gap:12px}
.dmPlaceholder{text-align:center;color:var(--ds-subtle);align-self:center;font-size:.92rem;margin:auto 0}
.dmBlock{display:flex;align-self:flex-start;max-width:82%}
.dmBlock[hidden]{display:none}
.dmBlockSecond{justify-content:flex-end;align-self:flex-end}
.dmPanel{border:1px solid var(--ds-rule);line-height:1.5;position:relative;padding:11px 15px 8px;border-radius:20px;font-size:.98rem;color:var(--ds-ink);border-bottom-left-radius:7px;box-shadow:var(--ds-shade-sm);background:var(--ds-paper);word-break:break-word}
.dmBlockSecond .dmPanel{border-color:transparent;border-radius:20px;background:linear-gradient(135deg,var(--ds-flush),var(--ds-accent));border-bottom-right-radius:7px;color:#fefffe}
.dmTime{text-align:right;margin-top:4px;font-size:.66rem;color:var(--ds-subtle);display:block}
.dmBlockSecond .dmTime{color:rgba(254,255,254,.79)}
.dmAsync{align-items:center;display:inline-flex;gap:5px;padding:15px 17px}
.dmAsync span{animation:sway 1.2s infinite ease-in-out;background:var(--ds-pinktint-deep);border-radius:50%;height:8px;width:8px}
.dmAsync span:nth-child(2){animation-delay:.18s}
.dmAsync span:nth-child(3){animation-delay:.36s}
.path a:hover{color:var(--ds-accent-deep)}
.profilePanel{transition:transform .2s ease,box-shadow .2s ease;box-shadow:var(--ds-shade-md);position:relative;overflow:hidden;background:var(--ds-paper);border-radius:var(--ds-rad-lg);border:1px solid rgba(254,255,254,.91)}
.profilePanel:hover{transform:translateY(-6px);box-shadow:var(--ds-shade-lg)}
.profilePortrait{overflow:hidden;background:linear-gradient(160deg,var(--ds-pinktint-200),var(--ds-lav-2));position:relative;aspect-ratio:1/1}
.profilePortrait img{display:block;object-fit:cover;width:100%;height:100%}
.profileBadge{display:inline-flex;padding:5px 10px;font-weight:700;align-items:center;top:12px;left:12px;color:#31af68;gap:6px;font-size:.72rem;box-shadow:var(--ds-shade-sm);position:absolute;background:rgba(254,255,254,.92);z-index:2;border-radius:var(--ds-rad-pill)}

.zone.dmScreen{padding-block:clamp(18px,3vw,38px)}
.coreLinks{gap:8px;margin-left:auto;align-items:center;display:flex}
.eyebrow{font-weight:800;color:var(--ds-accent);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}
.sidebarPhone{height:100vh;height:100dvh;position:fixed;padding:84px 22px 22px;top:0;box-shadow:-6px 0 30px rgba(40,39,50,.21);right:-100%;max-width:320px;background:var(--ds-paper);transition:right .3s ease;overflow-y:auto;z-index:1100;width:80%}
.sidebarPhone.shown{right:0}
.sidebarPhone nav{flex-direction:column;display:flex}
.sidebarPhone a:not(.button){padding:14px 2px;border-bottom:1px solid var(--ds-rule);font-weight:600;color:var(--ds-ink);font-size:15px}
.sidebarPhone a:not(.button):hover{color:var(--ds-accent-deep)}
.sidebarPhone a.button{margin-top:22px}
h1,h2,h3,h4{font-family:var(--ds-headline);color:var(--ds-ink);line-height:1.12;margin:0;letter-spacing:-.01em}
figure{margin:0}
.zone{padding-block:var(--ds-section-y)}
.zoneSecond{background:var(--ds-paper-2)}
.label{gap:11px;align-items:center;color:var(--ds-ink);display:flex;font-family:var(--ds-headline);letter-spacing:-.02em;font-weight:800;font-size:1.28rem}
.label:hover{color:var(--ds-ink)}
.labelIcon{display:inline-flex;height:42px;border-radius:14px;color:#fefffe;width:42px;background:linear-gradient(135deg,var(--ds-accent),var(--ds-flush) 55%,var(--ds-orange));align-items:center;box-shadow:0 8px 18px -8px rgba(236,76,149,.79);justify-content:center;flex-shrink:0}
.labelIcon svg{width:22px;height:22px}
.pop{background:linear-gradient(92deg,var(--ds-accent),var(--ds-flush) 60%,var(--ds-orange));-webkit-background-clip:text;background-clip:text;color:transparent}
p{margin:0}

.toggle{z-index:1105;border:none;cursor:pointer;gap:5px;flex-direction:column;padding:6px;display:none;background:none}
.toggle span{transition:transform .3s ease,opacity .3s ease;width:26px;background:var(--ds-ink);display:block;border-radius:2px;height:3px}
.toggle.shown span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.toggle.shown span:nth-child(2){opacity:0}
.toggle.shown span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}
::selection{background:rgba(236,76,149,.21)}
@keyframes sway{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-5px);opacity:1}}
.dmRequest{align-items:center;display:flex;border-top:1px solid var(--ds-rule);padding:12px 16px;gap:10px;background:var(--ds-paper)}
.dmField{border:1.5px solid var(--ds-rule);color:var(--ds-ink);flex:1;font-family:inherit;padding:12px 16px;transition:border-color .16s,box-shadow .16s;font-size:1rem;background:var(--ds-paper-pale);border-radius:var(--ds-rad-pill);min-width:0}
.dmField:focus{outline:none;border-color:var(--ds-accent);box-shadow:0 0 0 3px rgba(236,76,149,.14)}
.dmButton{box-shadow:0 10px 20px -10px rgba(252,75,98,.79);color:#fefffe;border-radius:50%;width:46px;flex:none;cursor:pointer;background:linear-gradient(135deg,var(--ds-flush),var(--ds-accent));transition:transform .15s ease,opacity .15s ease;place-items:center;display:grid;height:46px;border:none}
.dmButton:hover{transform:translateY(-2px)}
.dmButton:disabled{cursor:default;opacity:.5;transform:none}
.dmButton svg{height:18px;fill:currentColor;width:18px;stroke:none}
.dmNote{font-size:.8rem;padding:2px 20px 16px;color:var(--ds-subtle);text-align:center}
.dmBackdrop{padding:20px 22px 24px;gap:14px;background:var(--ds-paper);display:none;flex-direction:column;border-top:1px solid var(--ds-rule);text-align:center;align-items:center}
.dmBackdropTxt{max-width:440px;color:var(--ds-ink-pale);font-size:.94rem;margin:0;line-height:1.5}
.dmSheet{z-index:130;background:rgba(23,12,25,.56);align-items:center;display:none;-webkit-backdrop-filter:blur(3px);inset:0;padding:20px;backdrop-filter:blur(3px);justify-content:center;position:fixed}
.dmSheetPanel{width:100%;border:1px solid var(--ds-rule);border-radius:22px;box-shadow:var(--ds-shade-lg);max-width:420px;padding:32px 26px 28px;background:var(--ds-paper);text-align:center;position:relative}
.dmSheetHide{position:absolute;top:10px;color:var(--ds-subtle);padding:0;cursor:pointer;background:none;border:none;line-height:1;right:14px;font-size:1.6rem}
.dmSheetTitle{margin:0 0 10px;color:var(--ds-ink);font-family:var(--ds-headline);font-weight:800;font-size:1.22rem}
.dmSheetTxt{color:var(--ds-ink-pale);font-size:.96rem;line-height:1.5;margin:0 0 20px}
.dmSticky{text-decoration:none;right:22px;color:#fefffe;height:60px;bottom:22px;transition:transform .16s ease;z-index:80;display:grid;border-radius:50%;width:60px;place-items:center;box-shadow:var(--ds-shade-lg);background:linear-gradient(135deg,var(--ds-accent),var(--ds-flush));position:fixed}
.dmSticky[hidden]{display:none}
.dmSticky:hover{transform:translateY(-2px)}
.dmSticky svg{height:26px;width:26px}
.dmBadge{border-radius:var(--ds-rad-pill);color:#fefffe;min-width:22px;display:grid;background:var(--ds-crimson);top:-3px;border:2px solid var(--ds-paper);font-size:.72rem;padding:0 6px;position:absolute;line-height:1;place-items:center;font-weight:800;height:22px;box-shadow:var(--ds-shade-sm);right:-3px}
.dmBadge[hidden]{display:none}
.dmStickyWide{border-radius:var(--ds-rad-pill);align-items:center;width:auto;height:auto;display:inline-flex;gap:9px;padding:14px 22px}
.dmStickyWide svg{width:20px;height:20px}
.dmStickyTxt{font-family:var(--ds-headline);white-space:nowrap;font-weight:800;font-size:.98rem}
.dmNav{margin-top:4px;max-height:52vh;flex-direction:column;overflow-y:auto;display:flex;gap:4px}
.dmRow{display:flex;transition:background .14s ease;text-decoration:none;border-radius:var(--ds-rad-sm);color:var(--ds-ink);align-items:center;padding:9px 8px;gap:11px}
.dmRow:hover{background:var(--ds-paper-2)}
.dmIcon{background:linear-gradient(160deg,var(--ds-pinktint-200),var(--ds-lav-2));width:42px;flex:none;border-radius:50%;height:42px;overflow:hidden}
.dmIcon img{width:100%;height:100%;object-fit:cover}
.dmInner{min-width:0;flex:1}
.dmInner strong{overflow:hidden;font-family:var(--ds-headline);white-space:nowrap;text-overflow:ellipsis;display:block;font-size:.96rem;font-weight:800}
.dmInner span{font-size:.82rem;color:var(--ds-ink-pale);overflow:hidden;display:block;white-space:nowrap;text-overflow:ellipsis}
.dmRow small{align-self:flex-start;flex:none;font-size:.7rem;color:var(--ds-subtle)}
.exitSheet{z-index:1200;align-items:center;background:rgba(40,39,50,.56);padding:20px;backdrop-filter:blur(3px);position:fixed;justify-content:center;inset:0;display:none}
.exitSheet.isOn{display:flex}
.exitSheetPanel{max-width:860px;position:relative;background:var(--ds-paper);overflow:hidden;border-radius:var(--ds-rad-xl);color:var(--ds-ink);box-shadow:var(--ds-shade-lg);display:grid;width:100%;grid-template-columns:.82fr 1fr}
.exitSheetSidebar{align-items:flex-start;background:linear-gradient(160deg,var(--ds-accent),var(--ds-flush) 60%,var(--ds-orange));flex-direction:column;color:#fefffe;display:flex;overflow:hidden;padding:clamp(24px,4vw,40px);position:relative;justify-content:center;gap:8px}
.exitSheetSidebar::after{right:-28%;position:absolute;content:"";border-radius:50%;height:86%;width:86%;border:20px solid rgba(254,255,254,.12);bottom:-28%}
.exitSheetSidebar img{aspect-ratio:3/4;max-width:200px;object-fit:cover;border-radius:var(--ds-rad-lg);box-shadow:var(--ds-shade-md);position:relative;border:3px solid rgba(254,255,254,.48);width:100%}
.exitSheetSidebar .iconFull svg{width:64px;height:64px;stroke:none;fill:currentColor}
.exitSheetSidebar p{position:relative;font-size:1rem;font-weight:700;max-width:200px}
.exitSheetNo{font-family:var(--ds-headline);font-weight:800;font-size:clamp(52px,8vw,88px);line-height:.85;position:relative}
.exitSheetCore{padding:clamp(24px,4vw,40px);position:relative}
.exitSheetCore .hook{margin-top:10px}
.exitSheetCore .button{margin-top:20px}
.exitSheetCore .dmNav{max-height:236px;margin-top:18px}
.exitSheetHide{background:var(--ds-paper);width:38px;position:absolute;border-radius:50%;z-index:2;display:grid;top:14px;cursor:pointer;place-items:center;height:38px;right:14px;border:1px solid var(--ds-rule);color:var(--ds-subtle);padding:0}
.exitSheetHide svg{height:15px;width:15px}
.exitSheetHide:hover{color:#fefffe;background:var(--ds-accent);border-color:transparent}
.exitSheetDismiss{margin:14px 0 0;font-size:.84rem;border:0;display:block;color:var(--ds-subtle);width:fit-content;text-decoration:underline;cursor:pointer;background:none;max-width:100%}
@media (max-width:600px){.exitSheet{padding:12px}.exitSheetPanel{grid-template-columns:1fr}.exitSheetSidebar{display:none}.exitSheetCore{padding:26px 22px}.exitSheetCore .button{width:100%}}
.time{justify-content:space-between;color:var(--ds-ink-pale);gap:12px;font-size:.9rem;display:flex}
.infoCityhall{background:var(--ds-paper);box-shadow:var(--ds-shade-md);padding:24px;border-radius:var(--ds-rad-lg);border:1px solid rgba(254,255,254,.91)}
.footCols{grid-template-columns:1.6fr 1fr 1fr;gap:40px;display:grid}
.footLabel{display:flex;font-family:var(--ds-headline);align-items:center;font-weight:800;gap:10px;margin-bottom:12px;font-size:1.2rem;color:#fefffe}
.footCol>p:not(.footTitle){color:#aa9eb2;font-size:.94rem;max-width:34ch}
.footTitle{font-size:1rem;color:#fefffe;margin-bottom:14px;font-weight:800}
.footNav{display:grid;gap:10px;font-size:.94rem}
.cityhallTitle{margin-bottom:14px;font-family:var(--ds-headline);font-weight:800}
.cityhallRow{gap:10px;margin-top:10px;align-items:flex-start;display:flex;font-size:.94rem;color:var(--ds-ink-pale)}
.cityhallRow .pin{color:var(--ds-accent);flex:none}
.cityhallRow .pin svg{height:16px;width:16px}
.times{display:grid;gap:4px;margin-top:10px}

.towns{display:flex;gap:32px;flex-direction:column}
.townsBlock h2{font-size:1.15rem;font-weight:800;color:var(--ds-ink);margin-bottom:16px}
.townsNav{gap:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.townsNav a{display:flex;font-size:.92rem;border:1px solid var(--ds-rule);justify-content:space-between;font-weight:600;transition:transform .14s,box-shadow .14s,color .14s;align-items:center;background:var(--ds-paper);padding:13px 16px;box-shadow:var(--ds-shade-sm);gap:10px;color:var(--ds-ink);border-radius:var(--ds-rad-md)}
.townsNav a:hover{transform:translateY(-3px);box-shadow:var(--ds-shade-md);color:var(--ds-accent-deep)}
.townsNav a .pin{place-items:center;display:grid;flex:none;color:var(--ds-accent)}
.townsNav a .pin svg{height:16px;width:16px}

.info{grid-template-columns:1.2fr 1fr;display:grid;gap:clamp(28px,4vw,48px);align-items:start}
.infoFigures{display:grid;gap:16px;grid-template-columns:1fr 1fr}
.path{display:flex;color:var(--ds-subtle);justify-content:flex-start;font-size:.86rem;gap:6px;margin-bottom:14px;flex-wrap:wrap}

.entry{gap:clamp(28px,4vw,56px);align-items:center;grid-template-columns:1fr 1fr;display:grid}
.entryTxt>p:not(.eyebrow){margin-top:16px;color:var(--ds-ink-pale);font-size:1.04rem}
.entrySub{font-family:var(--ds-headline);font-size:1.1rem;margin-top:22px;color:var(--ds-accent-deep);font-weight:800}
.assetsSet{display:grid;gap:10px;margin-top:14px}
.assetsSet li{color:var(--ds-ink);position:relative;padding-left:24px}
.assetsSet li::before{content:"";background:var(--ds-flush);border-radius:50%;position:absolute;left:0;top:.5em;height:10px;width:10px}

.screenHero{padding-block:clamp(40px,6vw,80px) 20px}
.screenHero h1{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:800}
.screenHero p{font-size:1.08rem;color:var(--ds-ink-pale);margin:16px auto 0}
.copyright{color:#aa9eb2;margin-top:34px;font-size:.86rem;padding-top:22px;border-top:1px solid rgba(254,255,254,.09)}

.siteFoot{background:#282732;color:#dad0de}
.siteFoot .wrap{padding-block:56px 22px}
.siteFoot a{color:#dad0de}
.siteFoot a:hover{color:#fefffe}
.figure{background:var(--ds-paper);display:flex;gap:12px;align-items:center;box-shadow:var(--ds-shade-sm);border-radius:var(--ds-rad-md);padding:14px 16px;border:1px solid rgba(254,255,254,.91)}
.figureIcon{border-radius:12px;place-items:center;color:var(--ds-accent);width:40px;display:grid;height:40px;background:var(--ds-paper-2);flex:none}
.figureIcon svg{width:18px;height:18px}
.figureTxt dt{letter-spacing:.05em;font-size:.78rem;color:var(--ds-subtle);text-transform:uppercase}
.figureTxt dd{font-family:var(--ds-headline);font-weight:800;font-size:.98rem;margin:2px 0 0}

.entryZone h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.entryZone h2{font-size:1.35rem;margin-top:34px;font-weight:800;color:var(--ds-accent-deep)}
.entryZone p{font-size:1.04rem;color:var(--ds-ink-pale);margin-top:14px}
.entryZone p a{font-weight:600}
.entryZone ul{display:grid;gap:10px;margin-top:14px}
.entryZone li{position:relative;color:var(--ds-ink-pale);padding-left:24px}
.entryZone li::before{height:10px;left:0;content:"";background:var(--ds-flush);border-radius:50%;width:10px;top:.5em;position:absolute}
.entryFaq>.wrap>h2{text-align:center;margin-bottom:28px}
.faqBlock{border-radius:var(--ds-rad-md);border:1px solid var(--ds-rule);overflow:hidden;background:var(--ds-paper);box-shadow:var(--ds-shade-sm);margin-bottom:14px}
.faqBlock summary{list-style:none;align-items:center;color:var(--ds-ink);cursor:pointer;padding:20px 22px;gap:16px;display:flex;font-family:var(--ds-headline);font-weight:800;font-size:1.05rem;justify-content:space-between}
.faqBlock summary::-webkit-details-marker{display:none}
.faqBlock summary::after{background:var(--ds-paper-2);flex:none;width:30px;height:30px;color:var(--ds-accent);border-radius:50%;content:"+";transition:transform .25s ease;font-size:1.2rem;display:grid;place-items:center}
.faqBlock[open] summary::after{color:#fefffe;transform:rotate(45deg);background:var(--ds-accent)}
.faqA{padding:0 22px 20px;color:var(--ds-ink-pale)}

.stickyAction{right:22px;z-index:80;box-shadow:var(--ds-shade-lg);background:#fefffe;border-radius:var(--ds-rad-lg);position:fixed;max-width:calc(100vw - 44px);bottom:22px;width:300px;padding:20px;border:1px solid rgba(254,255,254,.91)}
.stickyHide{display:grid;border-radius:50%;border:none;position:absolute;padding:0;background:var(--ds-paper-2);line-height:1;top:12px;right:12px;cursor:pointer;place-items:center;font-size:1.1rem;width:28px;height:28px;color:var(--ds-ink-pale)}
.stickyHide:hover{background:var(--ds-accent);color:#fefffe}
.stickyTitle{font-family:var(--ds-headline);padding-right:26px;font-weight:800;font-size:1.04rem}
.stickyTxt{font-size:.86rem;color:var(--ds-ink-pale);margin-top:4px;margin-bottom:14px}
.stickyTrigger{position:fixed;border-radius:50%;color:#fefffe;right:22px;align-items:center;bottom:22px;width:60px;box-shadow:var(--ds-shade-lg);justify-content:center;z-index:80;display:none;border:none;cursor:pointer;background:linear-gradient(135deg,var(--ds-accent),var(--ds-flush));height:60px}
.stickyTrigger svg{height:26px;width:26px;stroke:none;fill:currentColor}
.wherePanel{background:var(--ds-lav);overflow:hidden;position:relative;aspect-ratio:4/3;box-shadow:var(--ds-shade-md);border-radius:var(--ds-rad-lg);border:1px solid rgba(254,255,254,.91)}
.wherePanel.whereAsync{cursor:pointer}
.wherePlaceholder{background:linear-gradient(160deg,var(--ds-lav-2),var(--ds-paper-2));inset:0;place-items:center;position:absolute;padding:20px;gap:10px;display:grid;text-align:center}
.wherePlaceholder p{font-weight:700;color:var(--ds-ink)}
.wherePin{filter:drop-shadow(0 10px 12px rgba(252,75,98,.48));color:var(--ds-flush)}
.wherePin svg{height:40px;stroke:none;width:40px;fill:currentColor}
.wherePanel iframe{width:100%;border:0;height:100%;position:absolute;inset:0}
.wherePanel.isOn .wherePlaceholder{display:none}
.entryTxt .button{margin-top:26px}

.actionBox{border-radius:var(--ds-rad-xl);align-items:center;overflow:hidden;background:linear-gradient(100deg,var(--ds-accent-deep),var(--ds-flush) 60%,var(--ds-orange));padding:clamp(38px,5vw,64px);flex-wrap:wrap;color:#fefffe;gap:30px;box-shadow:var(--ds-shade-lg);justify-content:space-between;position:relative;display:flex}
.actionSplash{width:320px;position:absolute;border-radius:50%;right:-90px;top:-120px;height:320px;background:rgba(254,255,254,.11)}
.actionTxt{z-index:2;position:relative}
.actionTxt h2{color:#fefffe;max-width:16ch}
.actionTxt p{color:rgba(254,255,254,.92);max-width:46ch;margin-top:10px}
.actionBox .button{position:relative;z-index:2}
/* Fil d'Ariane robot placé dans l'article SEO : neutraliser les styles de liste de l'article (grille, retrait, puce). */
.entryZone .path{display:flex}.entryZone .path li{padding-left:0}.entryZone .path li::before{display:none}
.path li:not(:last-child)::after{content:"\00203a";margin-left:6px;color:var(--ds-subtle)}
.path a{color:var(--ds-ink-pale)}

.request{background:#fefffe;border-radius:var(--ds-rad-lg);box-shadow:var(--ds-shade-md);border:1px solid rgba(254,255,254,.91);padding:clamp(24px,3vw,40px)}
.requestBlock{display:grid;gap:7px;margin-bottom:18px}
.requestBlock label{font-weight:700;font-size:.92rem}
.fieldRow{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{width:100%;padding:13px 16px;border-radius:var(--ds-rad-sm);border:1.5px solid var(--ds-rule);background:var(--ds-paper-pale);font-family:inherit;font-size:1rem;color:var(--ds-ink);transition:border-color .16s,box-shadow .16s}
.field:focus{outline:none;border-color:var(--ds-accent);box-shadow:0 0 0 3px rgba(236,76,149,.14)}
textarea.field{min-height:140px;resize:vertical}
.requestNote{font-weight:700}
.requestNoteFull{color:#31af68}
.requestNoteOff{color:var(--ds-accent-deep)}

.exploreRequest{margin:0 auto;display:flex;gap:12px;background:#fefffe;padding:12px;border-radius:var(--ds-rad-pill);box-shadow:var(--ds-shade-md);border:1px solid rgba(254,255,254,.91)}
.exploreRequest .field{border:none;background:transparent;box-shadow:none;font-size:1.06rem}
.exploreRequest .field:focus{box-shadow:none}
.exploreRequest+.towns{margin-top:40px}

.requestHolder{max-width:640px}
.requestPlaceholder{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

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

@media (max-width:980px){
  .profilesCols{grid-template-columns:repeat(3,1fr)}
  .profileCols{grid-template-columns:1fr}
  .profileShot{width:100%;max-width:380px;justify-self:start}
  .profileSidebar{position:static}
  .entry,.info{grid-template-columns:1fr}
  .footCols{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .coreLinks{display:none}
  .toggle{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .sidebarPhone,.linksBackdrop{display:none}
}
@media (max-width:600px){
  :root{--ds-section-y:clamp(30px,7vw,48px)}
  .footCols,.fieldRow{grid-template-columns:1fr}
  .profilesCols{grid-template-columns:repeat(2,1fr);gap:12px}
  .profileInner{padding:16px 10px}
  .actionBox{flex-direction:column;align-items:stretch;padding:32px 24px}
  .actionBox .button{width:100%;white-space:normal}
  .exploreRequest{flex-direction:column;border-radius:var(--ds-rad-lg)}
  .exploreRequest .button{width:100%}
  .zoneProfile{padding-top:0}
  .profileShot img{aspect-ratio:1/1;max-height:46vh}
  .profileCols{margin-top:0}
  .profileSidebar{display:flex;flex-direction:column;margin-top:14px}
  .profileIntro{order:1;margin-top:0}
  .profileNote{order:2}
  .profileSet{order:3;margin-top:16px;gap:10px}
  .profileSet .button{flex:1 1 auto}
  .profileRail{display:none}
  .profileFigures{order:4}
  .profileSidebar .hook{order:5}
  .infoFigures{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .figure{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .figureIcon{width:34px;height:34px}
  .figureTxt{min-width:0}
  .figureTxt dd{font-size:.92rem;overflow-wrap:anywhere}
}
