:root{
  --ds-rose-100:#feedf3;
  --ds-rose-200:#fadbea;
  --ds-rose-300:#f8c8dc;
  --ds-rose-deep:#f3a9ca;
  --ds-wisteria:#e9e5f7;
  --ds-wisteria-strong:#d8ddf5;

  --ds-sheet:#fffeff;
  --ds-sheet-pale:#fff4f7;
  --ds-sheet-strong:#ffe8f0;

  --ds-pink:#ee4c97;
  --ds-pink-active:#e12e7e;
  --ds-flush:#fd5a73;
  --ds-flush-strong:#fc4a62;
  --ds-peach:#fa7b3b;
  --ds-peach-strong:#f46926;
  --ds-crimson:#fd4e5c;
  --ds-cornflower:#c7ccf4;

  --ds-foreground:#282632;
  --ds-foreground-pale:#6a6570;
  --ds-faint:#9891a1;
  --ds-border:#f2dae6;

  --ds-ondark:#fffeff;
  --ds-white:#fffeff;
  --ds-go:#2eac68;
  --ds-border-pale:rgba(255,254,255,.9);
  --ds-sheet-fill:rgba(255,254,255,.9);
  --ds-veil:rgba(40,38,50,.48);
  --ds-foot-fill:#282632;
  --ds-foot:#d6d3df;
  --ds-foot-strong:#fffeff;
  --ds-foot-pale:#aa9eb3;
  --ds-foot-bd:rgba(255,254,255,.08);

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

  --ds-sh-sm:0 6px 16px -8px rgba(238,76,151,.35);
  --ds-sh-md:0 18px 38px -18px rgba(238,76,151,.39);
  --ds-sh-lg:0 30px 60px -24px rgba(225,46,126,.43);

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

  --ds-maxw:1200px;
  --ds-edge-x:24px;
  --ds-vgap:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:
    radial-gradient(1200px 700px at 85% -8%, var(--ds-rose-300) 0%, transparent 55%),
    radial-gradient(900px 600px at -10% 8%, var(--ds-wisteria) 0%, transparent 55%),
    linear-gradient(180deg, var(--ds-rose-100) 0%, var(--ds-sheet-pale) 40%, var(--ds-rose-100) 100%);line-height:1.6;font-family:var(--ds-ff);
  color:var(--ds-foreground);
  background-attachment:fixed;-webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%}

.nav-toggle{padding:6px;flex-direction:column;display:none;gap:5px;background:none;z-index:1105;border:none;cursor:pointer}
.nav-toggle span{display:block;transition:transform .3s ease,opacity .3s ease;background:var(--ds-foreground);border-radius:2px;height:3px;width:26px}
.nav-toggle.active span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.nav-toggle.active span:nth-child(2){opacity:0}
.nav-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}
.sym-full svg{fill:currentColor;stroke:none}
.lead{margin-top:14px;font-size:1.06rem;color:var(--ds-foreground-pale)}

.request{box-shadow:var(--ds-sh-md);padding:clamp(24px,3vw,40px);border-radius:var(--ds-rnd-lg);border:1px solid var(--ds-border-pale);background:var(--ds-sheet)}
.request-item{gap:7px;margin-bottom:18px;display:grid}
.request-item label{font-weight:700;font-size:.92rem}
.zone{padding-block:var(--ds-vgap)}
.zone-other{background:var(--ds-sheet-strong)}

.contacts-grid{display:grid;gap:22px;grid-template-columns:repeat(4,1fr)}
svg{display:block}
.body-menu{gap:8px;display:flex;margin-left:auto;align-items:center}

.wrap{padding-inline:var(--ds-edge-x);max-width:var(--ds-maxw);margin-inline:auto}

.article{align-items:center;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);display:grid}
.article-txt>p:not(.pretitle){color:var(--ds-foreground-pale);margin-top:16px;font-size:1.04rem}
.article-tagline{font-family:var(--ds-font-head);font-size:1.1rem;font-weight:800;color:var(--ds-pink-active);margin-top:22px}
.section-head{text-align:center;margin:0 auto 44px;max-width:640px}
.area-card{overflow:hidden;background:var(--ds-wisteria);border-radius:var(--ds-rnd-lg);position:relative;border:1px solid var(--ds-border-pale);aspect-ratio:4/3;box-shadow:var(--ds-sh-md)}
.area-card.area-lazy{cursor:pointer}
.area-empty{inset:0;place-items:center;background:linear-gradient(160deg,var(--ds-wisteria-strong),var(--ds-sheet-strong));position:absolute;display:grid;text-align:center;gap:10px;padding:20px}
.area-empty p{color:var(--ds-foreground);font-weight:700}
.area-needle{filter:drop-shadow(0 10px 12px rgba(252,74,98,.48));color:var(--ds-flush)}
.area-needle svg{height:40px;stroke:none;fill:currentColor;width:40px}
.area-card iframe{border:0;position:absolute;inset:0;height:100%;width:100%}
.area-card.is-ready .area-empty{display:none}
.infos-town-hall{border-radius:var(--ds-rnd-lg);box-shadow:var(--ds-sh-md);background:var(--ds-sheet);border:1px solid var(--ds-border-pale);padding:24px}
ul{margin:0;padding:0;list-style:none}
button{font-family:inherit}
.credits{color:var(--ds-foot-pale);margin-top:34px;border-top:1px solid var(--ds-foot-bd);font-size:.86rem;padding-top:22px}
.town-hall-label{font-family:var(--ds-font-head);margin-bottom:14px;font-weight:800}
.town-hall-entry{gap:10px;margin-top:10px;font-size:.94rem;align-items:flex-start;color:var(--ds-foreground-pale);display:flex}
.town-hall-entry .needle{color:var(--ds-pink);flex:none}
.town-hall-entry .needle svg{width:16px;height:16px}
figure{margin:0}
.stat{border-radius:var(--ds-rnd-md);border:1px solid var(--ds-border-pale);background:var(--ds-sheet);box-shadow:var(--ds-sh-sm);align-items:center;gap:12px;display:flex;padding:14px 16px}
.stat-sym{display:grid;color:var(--ds-pink);width:40px;place-items:center;background:var(--ds-sheet-strong);height:40px;border-radius:12px;flex:none}
.stat-sym svg{width:18px;height:18px}
.stat-txt dt{font-size:.78rem;letter-spacing:.05em;color:var(--ds-faint);text-transform:uppercase}
.stat-txt dd{margin:2px 0 0;font-family:var(--ds-font-head);font-weight:800;font-size:.98rem}
.contact-card{box-shadow:var(--ds-sh-md);position:relative;overflow:hidden;background:var(--ds-sheet);transition:transform .2s ease,box-shadow .2s ease;border-radius:var(--ds-rnd-lg);border:1px solid var(--ds-border-pale)}
.contact-card:hover{transform:translateY(-6px);box-shadow:var(--ds-sh-lg)}
.contact-face{overflow:hidden;background:linear-gradient(160deg,var(--ds-rose-200),var(--ds-wisteria-strong));position:relative;aspect-ratio:1/1}
.contact-face img{display:block;object-fit:cover;width:100%;height:100%}
.contact-flag{border-radius:var(--ds-rnd-pill);gap:6px;display:inline-flex;align-items:center;background:var(--ds-sheet-fill);top:12px;z-index:2;font-weight:700;color:var(--ds-go);font-size:.72rem;position:absolute;box-shadow:var(--ds-sh-sm);left:12px;padding:5px 10px}

.quick-action{padding:20px;box-shadow:var(--ds-sh-lg);max-width:calc(100vw - 44px);z-index:80;width:300px;background:var(--ds-sheet);border-radius:var(--ds-rnd-lg);right:22px;bottom:22px;border:1px solid var(--ds-border-pale);position:fixed}
.quick-dismiss{padding:0;width:28px;place-items:center;height:28px;position:absolute;border-radius:50%;cursor:pointer;font-size:1.1rem;background:var(--ds-sheet-strong);border:none;display:grid;line-height:1;top:12px;color:var(--ds-foreground-pale);right:12px}
.quick-dismiss:hover{background:var(--ds-pink);color:var(--ds-ondark)}
.quick-label{font-family:var(--ds-font-head);font-weight:800;font-size:1.04rem;padding-right:26px}
.quick-txt{color:var(--ds-foreground-pale);margin-top:4px;font-size:.86rem;margin-bottom:14px}
.quick-trigger{justify-content:center;right:22px;background:linear-gradient(135deg,var(--ds-pink),var(--ds-flush));width:60px;z-index:80;position:fixed;border-radius:50%;cursor:pointer;border:none;display:none;height:60px;color:var(--ds-ondark);bottom:22px;box-shadow:var(--ds-sh-lg);align-items:center}
.quick-trigger svg{width:26px;stroke:none;height:26px;fill:currentColor}

.empty{padding-block:clamp(60px,10vw,140px);text-align:center}
.empty-no{font-family:var(--ds-font-head);font-weight:800;line-height:.9;font-size:clamp(6rem,20vw,13rem)}
.empty-set{justify-content:center;display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.strong{background:linear-gradient(92deg,var(--ds-pink),var(--ds-flush) 60%,var(--ds-peach));color:transparent;-webkit-background-clip:text;background-clip:text}
.qna-item{background:var(--ds-sheet);box-shadow:var(--ds-sh-sm);border-radius:var(--ds-rnd-md);margin-bottom:14px;border:1px solid var(--ds-border);overflow:hidden}
.qna-item summary{padding:20px 22px;align-items:center;font-family:var(--ds-font-head);color:var(--ds-foreground);display:flex;font-weight:800;font-size:1.05rem;gap:16px;justify-content:space-between;list-style:none;cursor:pointer}
.qna-item summary::-webkit-details-marker{display:none}
.qna-item summary::after{content:"+";flex:none;background:var(--ds-sheet-strong);width:30px;place-items:center;transition:transform .25s ease;color:var(--ds-pink);display:grid;font-size:1.2rem;border-radius:50%;height:30px}
.qna-item[open] summary::after{color:var(--ds-ondark);transform:rotate(45deg);background:var(--ds-pink)}
.qna-reply{padding:0 22px 20px;color:var(--ds-foreground-pale)}
.when{justify-content:space-between;gap:12px;display:flex;color:var(--ds-foreground-pale);font-size:.9rem}

.request-box{max-width:640px}
.request-empty{left:-9999px;overflow:hidden;width:1px;position:absolute;height:1px}
::selection{background:rgba(238,76,151,.21)}
.contact-reel-watch{display:grid;color:#fffeff;background:rgba(2,0,0,.48);top:50%;box-shadow:var(--ds-sh-md);cursor:pointer;border-radius:50%;position:absolute;font-size:1.9rem;z-index:3;height:78px;left:50%;place-items:center;line-height:1;border:none;transform:translate(-50%,-50%);transition:transform .15s ease,background .15s ease;width:78px;padding-left:6px}
.contact-reel-watch:hover{transform:translate(-50%,-50%) scale(1.07);background:rgba(2,0,0,.71)}
.contact-drawer{top:96px;position:sticky}
.contact-head{align-items:center;flex-wrap:wrap;margin-top:14px;gap:12px;display:flex}
.contact-head .flag-chip{flex:none}
.contact-lead{line-height:1.1;font-family:var(--ds-font-head);font-weight:800;font-size:clamp(1.7rem,3.2vw,2.3rem)}
.contact-lead span{font-weight:600;font-size:.62em;color:var(--ds-faint)}
.contact-note{gap:7px;font-size:1.02rem;align-items:center;display:flex;margin-top:10px;color:var(--ds-foreground-pale)}
.contact-note .needle svg{height:18px;width:18px;color:var(--ds-pink)}
.contact-note a{border-bottom:1px solid transparent;text-decoration:none;color:var(--ds-pink-active);font-weight:600;transition:border-color .15s ease}
.contact-note a:hover{border-bottom-color:currentColor}
.contact-stats{gap:8px;margin-top:16px;flex-wrap:wrap;display:flex}
.contact-drawer .lead{margin-top:18px}
.contact-items{margin-top:24px;gap:12px;display:flex;flex-wrap:wrap}
.brand{letter-spacing:-.02em;display:flex;gap:11px;align-items:center;font-family:var(--ds-font-head);font-weight:800;color:var(--ds-foreground);font-size:1.28rem}
.brand:hover{color:var(--ds-foreground)}
.brand-logo{width:42px;color:var(--ds-ondark);border-radius:14px;flex-shrink:0;box-shadow:0 8px 18px -8px rgba(238,76,151,.82);background:linear-gradient(135deg,var(--ds-pink),var(--ds-flush) 55%,var(--ds-peach));justify-content:center;display:inline-flex;height:42px;align-items:center}
.brand-logo svg{height:22px;width:22px}
.crumbs a:hover{color:var(--ds-pink-active)}
.menu-entry{border-radius:var(--ds-rnd-pill);font-weight:600;font-size:.96rem;padding:9px 14px;transition:background .18s,color .18s;color:var(--ds-foreground)}
.menu-entry:hover{background:var(--ds-sheet-strong);color:var(--ds-pink-active)}
.menu-sparkle{align-items:center;border:none;font-weight:600;position:relative;color:var(--ds-foreground);cursor:pointer;gap:7px;background:none;display:inline-flex;padding:9px 12px;transition:background .18s ease,color .18s ease;text-decoration:none;font-size:.96rem;border-radius:var(--ds-rnd-pill)}
.menu-sparkle:hover{background:var(--ds-sheet-strong);color:var(--ds-pink-active)}
.menu-sparkle svg{height:20px;width:20px;color:var(--ds-pink)}
.menu-sparkle:hover svg{color:var(--ds-pink-active)}
.menu-sparkle-txt{white-space:nowrap}
.menu-sparkle .thread-flag{top:auto;position:static;right:auto}
.menu-sparkle-mobile{font-weight:600;background:none;font-size:15px;border:none;text-align:left;padding:14px 2px;text-decoration:none;display:flex;color:var(--ds-foreground);gap:9px;align-items:center;width:100%;cursor:pointer;border-bottom:1px solid var(--ds-border)}
.menu-sparkle-mobile:hover{color:var(--ds-pink-active)}
.menu-sparkle-mobile svg{color:var(--ds-pink);width:18px;height:18px}

.browse-request{display:flex;background:var(--ds-sheet);border-radius:var(--ds-rnd-pill);margin:0 auto;gap:12px;box-shadow:var(--ds-sh-md);padding:12px;border:1px solid var(--ds-border-pale)}
.browse-request .fld{border:none;font-size:1.06rem;background:transparent;box-shadow:none}
.browse-request .fld:focus{box-shadow:none}
.browse-request+.towns{margin-top:40px}
.assets-items{gap:10px;display:grid;margin-top:14px}
.assets-items li{padding-left:24px;color:var(--ds-foreground);position:relative}
.assets-items li::before{left:0;content:"";border-radius:50%;height:10px;top:.5em;background:var(--ds-flush);position:absolute;width:10px}
.foot-grid{grid-template-columns:1.6fr 1fr 1fr;gap:40px;display:grid}
.foot-brand{font-family:var(--ds-font-head);margin-bottom:12px;display:flex;color:var(--ds-foot-strong);align-items:center;font-weight:800;gap:10px;font-size:1.2rem}
.foot-part>p:not(.foot-label){font-size:.94rem;color:var(--ds-foot-pale);max-width:34ch}
.foot-label{font-size:1rem;color:var(--ds-foot-strong);margin-bottom:14px;font-weight:800}
.foot-nav{gap:10px;display:grid;font-size:.94rem}
.request-note{font-weight:700}
.request-note-full{color:var(--ds-go)}
.request-note-hidden{color:var(--ds-pink-active)}
.pretitle{font-weight:800;letter-spacing:.1em;font-size:.8rem;text-transform:uppercase;margin-bottom:10px;color:var(--ds-pink)}
.schedule{margin-top:10px;display:grid;gap:4px}
:focus-visible{outline:3px solid var(--ds-pink);border-radius:6px;outline-offset:2px}
.article-txt .action{margin-top:26px}

.thread-flag{height:22px;font-size:.72rem;background:var(--ds-crimson);color:var(--ds-ondark);position:absolute;font-weight:800;top:-3px;right:-3px;border-radius:var(--ds-rnd-pill);box-shadow:var(--ds-sh-sm);min-width:22px;line-height:1;padding:0 6px;place-items:center;border:2px solid var(--ds-sheet);display:grid}
.thread-flag[hidden]{display:none}

.main-foot{color:var(--ds-foot);background:var(--ds-foot-fill)}
.main-foot .wrap{padding-block:56px 22px}
.main-foot a{color:var(--ds-foot)}
.main-foot a:hover{color:var(--ds-foot-strong)}
.bullet{color:var(--ds-go);font-size:.6rem;line-height:1}

.action-zone{border-radius:var(--ds-rnd-xl);position:relative;justify-content:space-between;overflow:hidden;padding:clamp(38px,5vw,64px);box-shadow:var(--ds-sh-lg);gap:30px;display:flex;flex-wrap:wrap;color:var(--ds-ondark);background:linear-gradient(100deg,var(--ds-pink-active),var(--ds-flush) 60%,var(--ds-peach));align-items:center}
.action-deco{position:absolute;background:rgba(255,254,255,.11);right:-90px;border-radius:50%;top:-120px;width:320px;height:320px}
.action-txt{z-index:2;position:relative}
.action-txt h2{max-width:16ch;color:var(--ds-ondark)}
.action-txt p{color:rgba(255,254,255,.9);max-width:46ch;margin-top:10px}
.action-zone .action{z-index:2;position:relative}
.crumbs{gap:6px;font-size:.86rem;justify-content:flex-start;color:var(--ds-faint);margin-bottom:14px;flex-wrap:wrap;display:flex}
.contact-sparkle{width:36px;height:36px;color:var(--ds-flush);cursor:pointer;top:12px;box-shadow:var(--ds-sh-sm);border-radius:50%;place-items:center;right:12px;background:var(--ds-sheet-fill);z-index:2;position:absolute;transition:transform .16s,background .16s,color .16s;display:grid;border:none}
.contact-sparkle svg{height:18px;width:18px}
.contact-sparkle:hover{transform:scale(1.08)}
.contact-sparkle.full{background:var(--ds-flush);color:var(--ds-ondark)}
.contact-sparkle.full svg{fill:currentColor}
.contact-window-sparkle{width:46px;top:14px;height:46px;right:14px}
.contact-window-sparkle svg{height:21px;width:21px}
.contact-inner{padding:16px 18px}
.contact-label{font-family:var(--ds-font-head);font-weight:800;font-size:1.12rem}
.contact-label a{color:inherit;outline-offset:3px;text-decoration:none}
.contact-label a::after{z-index:1;position:absolute;inset:0;content:""}
.contact-label span{color:var(--ds-faint);font-weight:600}
.contact-addr{display:flex;align-items:center;margin-top:4px;color:var(--ds-foreground-pale);font-size:.88rem;gap:6px}
.contact-addr .needle svg{width:14px;height:14px;color:var(--ds-pink)}
.contact-thread{font-weight:700;margin-top:12px;box-shadow:var(--ds-sh-sm);gap:7px;z-index:2;padding:9px 14px;background:linear-gradient(135deg,var(--ds-pink),var(--ds-flush));font-size:.9rem;position:relative;color:var(--ds-ondark);width:100%;align-items:center;display:inline-flex;border-radius:var(--ds-rnd-pill);transition:transform .16s ease,box-shadow .16s ease;justify-content:center}
.contact-thread svg{width:16px;height:16px}
.contact-thread:hover{box-shadow:var(--ds-sh-md);transform:translateY(-1px)}
.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;margin-top:22px;gap:clamp(24px,4vw,52px);display:grid}
.contact-part{min-width:0}
.contact-window{margin:0;border-radius:var(--ds-rnd-lg);position:relative;overflow:hidden;background:linear-gradient(160deg,var(--ds-rose-200),var(--ds-wisteria-strong));box-shadow:var(--ds-sh-md)}
.contact-window img{aspect-ratio:4/5;object-fit:cover;height:auto;width:100%;display:block}
.contact-arrows{color:var(--ds-pink-active);z-index:2;place-items:center;border-radius:50%;width:44px;border:none;top:50%;cursor:pointer;height:44px;transition:transform .15s ease,background .15s ease;background:var(--ds-sheet-fill);display:grid;box-shadow:var(--ds-sh-md);transform:translateY(-50%);position:absolute}
.contact-arrows:hover{transform:translateY(-50%) scale(1.07);background:var(--ds-sheet-fill)}
.contact-arrows svg{width:22px;height:22px}
.contact-left{left:12px}
.contact-right{right:12px}
.contact-strip{gap:10px;flex-wrap:wrap;display:flex;margin-top:12px}
.contact-item{cursor:pointer;padding:0;width:72px;border:2px solid transparent;flex:0 0 auto;box-shadow:var(--ds-sh-sm);transition:transform .15s ease,border-color .15s ease;background:var(--ds-sheet-strong);overflow:hidden;aspect-ratio:3/4;border-radius:var(--ds-rnd-sm)}
.contact-item img{width:100%;display:block;height:100%;object-fit:cover}
.contact-item:hover{transform:translateY(-2px)}
.contact-item.full{border-color:var(--ds-pink)}
.contact-part [hidden]{display:none!important}
.contact-reel{background:#020000;height:auto;max-height:70vh;object-fit:contain;width:100%;display:block}
.contact-item-reel{position:relative}

.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{color:var(--ds-foreground-pale);font-size:1.08rem;margin:16px auto 0}

.infos{gap:clamp(28px,4vw,48px);display:grid;grid-template-columns:1.2fr 1fr;align-items:start}
.infos-stats{gap:16px;display:grid;grid-template-columns:1fr 1fr}
.crumbs li:not(:last-child)::after{color:var(--ds-faint);content:"\00203a";margin-left:6px}
.crumbs a{color:var(--ds-foreground-pale)}

.action{
  text-align:center;font-weight:700;font-size:1rem;border:1.5px solid transparent;
  border-radius:var(--ds-rnd-pill);padding:14px 26px;white-space:nowrap;cursor:pointer;
  display:inline-flex;justify-content:center;align-items:center;gap:9px;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
}
.action svg{height:18px;width:18px}
.action-mini{padding:10px 18px;font-size:.9rem}
.action-large{font-size:1.06rem;padding:17px 32px}
.action-stretch{width:100%}
.action-primary{box-shadow:0 14px 26px -12px rgba(252,74,98,.75);background:linear-gradient(95deg,var(--ds-peach),var(--ds-flush) 55%,var(--ds-pink));color:var(--ds-ondark)}
.action-primary:hover{color:var(--ds-ondark);box-shadow:0 20px 34px -12px rgba(252,74,98,.87);transform:translateY(-2px)}
.action-secondary{border-color:var(--ds-border);color:var(--ds-pink);background:var(--ds-sheet)}
.action-secondary:hover{transform:translateY(-2px);background:var(--ds-sheet-strong);color:var(--ds-pink-active)}
.action-pale{background:var(--ds-white);color:var(--ds-pink-active)}
.action-pale:hover{transform:translateY(-2px);color:var(--ds-pink-active);box-shadow:var(--ds-sh-md)}
.fld-entry{gap:18px;display:grid;grid-template-columns:1fr 1fr}
.fld{border-radius:var(--ds-rnd-sm);transition:border-color .16s,box-shadow .16s;color:var(--ds-foreground);width:100%;background:var(--ds-sheet-pale);padding:13px 16px;font-family:inherit;border:1.5px solid var(--ds-border);font-size:1rem}
.fld:focus{border-color:var(--ds-pink);outline:none;box-shadow:0 0 0 3px rgba(238,76,151,.13)}
textarea.fld{min-height:140px;resize:vertical}

.flag-chip{box-shadow:var(--ds-sh-sm);gap:8px;border:1px solid var(--ds-border);align-items:center;padding:8px 16px;font-weight:700;letter-spacing:.06em;background:var(--ds-sheet);font-size:.82rem;border-radius:var(--ds-rnd-pill);color:var(--ds-pink);display:inline-flex}
.flag-chip svg{height:16px;width:16px;color:var(--ds-flush)}

.towns{display:flex;gap:32px;flex-direction:column}
.towns-set h2{font-size:1.15rem;font-weight:800;color:var(--ds-foreground);margin-bottom:16px}
.towns-nav{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));display:grid;gap:12px}
.towns-nav a{font-size:.92rem;border:1px solid var(--ds-border);gap:10px;background:var(--ds-sheet);font-weight:600;padding:13px 16px;box-shadow:var(--ds-sh-sm);color:var(--ds-foreground);align-items:center;border-radius:var(--ds-rnd-md);justify-content:space-between;transition:transform .14s,box-shadow .14s,color .14s;display:flex}
.towns-nav a:hover{transform:translateY(-3px);box-shadow:var(--ds-sh-md);color:var(--ds-pink-active)}
.towns-nav a .needle{flex:none;color:var(--ds-pink);place-items:center;display:grid}
.towns-nav a .needle svg{height:16px;width:16px}
h1,h2,h3,h4{line-height:1.12;margin:0;color:var(--ds-foreground);letter-spacing:-.01em;font-family:var(--ds-font-head)}
.menu-overlay{visibility:hidden;transition:opacity .3s ease;inset:0;opacity:0;z-index:1090;background:var(--ds-veil);position:fixed}
.menu-overlay.active{opacity:1;visibility:visible}
.article-zone .crumbs{display:flex}.article-zone .crumbs li{padding-left:0}.article-zone .crumbs li::before{display:none}
.brand,.menu-entry,.drawer-mobile a,.action,.crumbs a,.main-foot a,.towns-nav a,.contact-thread{text-decoration:none}
.drawer-mobile{position:fixed;padding:84px 22px 22px;background:var(--ds-sheet);height:100vh;top:0;box-shadow:-6px 0 30px rgba(40,38,50,.19);max-width:320px;z-index:1100;height:100dvh;overflow-y:auto;width:80%;right:-100%;transition:right .3s ease}
.drawer-mobile.active{right:0}
.drawer-mobile nav{display:flex;flex-direction:column}
.drawer-mobile a:not(.action){font-weight:600;padding:14px 2px;font-size:15px;color:var(--ds-foreground);border-bottom:1px solid var(--ds-border)}
.drawer-mobile a:not(.action):hover{color:var(--ds-pink-active)}
.drawer-mobile a.action{margin-top:22px}

.main-heading{z-index:60;position:sticky;top:0;border-bottom:1px solid var(--ds-border);background:var(--ds-sheet)}
.main-heading-inner{align-items:center;display:flex;gap:20px;padding-block:12px;justify-content:space-between;min-height:74px}

.article-zone h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.article-zone h2{font-size:1.35rem;color:var(--ds-pink-active);font-weight:800;margin-top:34px}
.article-zone p{color:var(--ds-foreground-pale);margin-top:14px;font-size:1.04rem}
.article-zone p a{font-weight:600}
.article-zone ul{margin-top:14px;display:grid;gap:10px}
.article-zone li{position:relative;color:var(--ds-foreground-pale);padding-left:24px}
.article-zone li::before{left:0;width:10px;height:10px;top:.5em;background:var(--ds-flush);border-radius:50%;position:absolute;content:""}
.article-qna>.wrap>h2{margin-bottom:28px;text-align:center}
p{margin:0}
.heading-2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}
.reel-window{width:100%;display:block;height:100%;pointer-events:none;background:#020000;object-fit:cover}
.reel-bullet{transform:translate(-50%,-50%);border-radius:50%;width:28px;font-size:.64rem;pointer-events:none;place-items:center;height:28px;background:rgba(2,0,0,.57);padding-left:2px;top:50%;color:#fffeff;line-height:1;position:absolute;box-shadow:var(--ds-sh-sm);left:50%;display:grid}
.reel-flag{gap:4px;background:rgba(2,0,0,.61);font-weight:700;letter-spacing:.02em;bottom:12px;padding:5px 9px;left:12px;border-radius:var(--ds-rnd-pill);z-index:2;display:inline-flex;box-shadow:var(--ds-sh-sm);position:absolute;align-items:center;font-size:.7rem;color:#fffeff}

@media (max-width:980px){
  .contacts-grid{grid-template-columns:repeat(3,1fr)}
  .contact-grid{grid-template-columns:1fr}
  .contact-window{width:100%;max-width:380px;justify-self:start}
  .contact-drawer{position:static}
  .article,.infos{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .body-menu{display:none}
  .nav-toggle{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .drawer-mobile,.menu-overlay{display:none}
}
@media (max-width:600px){
  :root{--ds-vgap:clamp(30px,7vw,48px)}
  .foot-grid,.fld-entry{grid-template-columns:1fr}
  .contacts-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .contact-inner{padding:16px 10px}
  .action-zone{flex-direction:column;align-items:stretch;padding:32px 24px}
  .action-zone .action{width:100%;white-space:normal}
  .browse-request{flex-direction:column;border-radius:var(--ds-rnd-lg)}
  .browse-request .action{width:100%}
  .zone-contact{padding-top:0}
  .contact-window img{aspect-ratio:1/1;max-height:46vh}
  .contact-grid{margin-top:0}
  .contact-drawer{display:flex;flex-direction:column;margin-top:14px}
  .contact-head{order:1;margin-top:0}
  .contact-note{order:2}
  .contact-items{order:3;margin-top:16px;gap:10px}
  .contact-items .action{flex:1 1 auto}
  .contact-strip{display:none}
  .contact-stats{order:4}
  .contact-drawer .lead{order:5}
  .infos-stats{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .stat{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .stat-sym{width:34px;height:34px}
  .stat-txt{min-width:0}
  .stat-txt dd{font-size:.92rem;overflow-wrap:anywhere}
}
