:root{
  --ds-blush-100:#fff0f4;
  --ds-blush-200:#fadceb;
  --ds-blush-300:#f6c6de;
  --ds-blush-deep:#f4a8c6;
  --ds-wisteria:#ebe8f7;
  --ds-wisteria-strong:#d9dbf5;

  --ds-card:#fffeff;
  --ds-card-pale:#fcf5fa;
  --ds-card-strong:#fde9ef;

  --ds-primary:#eb5098;
  --ds-primary-hover:#e22d7c;
  --ds-flush:#fa5d73;
  --ds-flush-strong:#fc4c63;
  --ds-tangerine:#fc7a3d;
  --ds-tangerine-strong:#f76a27;
  --ds-crush:#ff4e5d;
  --ds-periwinkle:#c9ccf0;

  --ds-copy:#2b232f;
  --ds-copy-pale:#6e6673;
  --ds-muted:#9c939f;
  --ds-rule:#f4d6e4;

  --ds-invert:#fffeff;
  --ds-white:#fffeff;
  --ds-success:#31ae64;
  --ds-rule-pale:rgba(255,254,255,.9);
  --ds-card-wash:rgba(255,254,255,.91);
  --ds-scrim:rgba(43,35,47,.49);
  --ds-foot-wash:#2b232f;
  --ds-foot:#dad0df;
  --ds-foot-strong:#fffeff;
  --ds-foot-pale:#a89eaf;
  --ds-foot-line:rgba(255,254,255,.12);

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

  --ds-shadow-sm:0 6px 16px -8px rgba(235,80,152,.35);
  --ds-shadow-md:0 18px 38px -18px rgba(235,80,152,.38);
  --ds-shadow-lg:0 30px 60px -24px rgba(226,45,124,.44);

  --ds-font-display:"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-wrap:1200px;
  --ds-gap:24px;
  --ds-vgap:clamp(56px,7vw,104px);
}

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

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

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

.talk-marker{background:var(--ds-crush);height:22px;padding:0 6px;box-shadow:var(--ds-shadow-sm);border-radius:var(--ds-radius-pill);font-size:.72rem;place-items:center;display:grid;border:2px solid var(--ds-card);min-width:22px;font-weight:800;top:-3px;line-height:1;position:absolute;color:var(--ds-invert);right:-3px}
.talk-marker[hidden]{display:none}
.bullet{color:var(--ds-success);font-size:.6rem;line-height:1}
.support-block{background:var(--ds-card);box-shadow:var(--ds-shadow-sm);overflow:hidden;margin-bottom:14px;border-radius:var(--ds-radius-md);border:1px solid var(--ds-rule)}
.support-block summary{cursor:pointer;list-style:none;font-family:var(--ds-font-display);padding:20px 22px;align-items:center;justify-content:space-between;display:flex;gap:16px;color:var(--ds-copy);font-weight:800;font-size:1.05rem}
.support-block summary::-webkit-details-marker{display:none}
.support-block summary::after{place-items:center;font-size:1.2rem;background:var(--ds-card-strong);width:30px;height:30px;display:grid;color:var(--ds-primary);flex:none;border-radius:50%;content:"+";transition:transform .25s ease}
.support-block[open] summary::after{color:var(--ds-invert);transform:rotate(45deg);background:var(--ds-primary)}
.support-ans{color:var(--ds-copy-pale);padding:0 22px 20px}
.notice{font-size:.86rem;padding-top:22px;border-top:1px solid var(--ds-foot-line);color:var(--ds-foot-pale);margin-top:34px}
.trail{gap:6px;display:flex;margin-bottom:14px;justify-content:flex-start;font-size:.86rem;flex-wrap:wrap;color:var(--ds-muted)}
.pop{background:linear-gradient(92deg,var(--ds-primary),var(--ds-flush) 60%,var(--ds-tangerine));color:transparent;-webkit-background-clip:text;background-clip:text}
p{margin:0}

.marker-pill{border:1px solid var(--ds-rule);font-weight:700;box-shadow:var(--ds-shadow-sm);gap:8px;padding:8px 16px;display:inline-flex;letter-spacing:.06em;border-radius:var(--ds-radius-pill);align-items:center;background:var(--ds-card);color:var(--ds-primary);font-size:.82rem}
.marker-pill svg{height:16px;color:var(--ds-flush);width:16px}
.person-sparkle{z-index:2;width:36px;cursor:pointer;display:grid;transition:transform .16s,background .16s,color .16s;border-radius:50%;background:var(--ds-card-wash);height:36px;box-shadow:var(--ds-shadow-sm);top:12px;place-items:center;color:var(--ds-flush);position:absolute;right:12px;border:none}
.person-sparkle svg{width:18px;height:18px}
.person-sparkle:hover{transform:scale(1.08)}
.person-sparkle.on{color:var(--ds-invert);background:var(--ds-flush)}
.person-sparkle.on svg{fill:currentColor}
.person-frame-sparkle{width:46px;top:14px;height:46px;right:14px}
.person-frame-sparkle svg{width:21px;height:21px}
.person-inner{padding:16px 18px}
.person-title{font-family:var(--ds-font-display);font-weight:800;font-size:1.12rem}
.person-title a{text-decoration:none;outline-offset:3px;color:inherit}
.person-title a::after{inset:0;content:"";position:absolute;z-index:1}
.person-title span{color:var(--ds-muted);font-weight:600}
.person-addr{align-items:center;font-size:.88rem;margin-top:4px;display:flex;color:var(--ds-copy-pale);gap:6px}
.person-addr .locator svg{color:var(--ds-primary);width:14px;height:14px}
.person-talk{border-radius:var(--ds-radius-pill);align-items:center;margin-top:12px;position:relative;gap:7px;display:inline-flex;justify-content:center;z-index:2;width:100%;transition:transform .16s ease,box-shadow .16s ease;padding:9px 14px;box-shadow:var(--ds-shadow-sm);color:var(--ds-invert);background:linear-gradient(135deg,var(--ds-primary),var(--ds-flush));font-weight:700;font-size:.9rem}
.person-talk svg{height:16px;width:16px}
.person-talk:hover{transform:translateY(-1px);box-shadow:var(--ds-shadow-md)}
.person-layout{margin-top:22px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid;align-items:start;gap:clamp(24px,4vw,52px)}
.person-column{min-width:0}
.person-frame{border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-md);margin:0;overflow:hidden;background:linear-gradient(160deg,var(--ds-blush-200),var(--ds-wisteria-strong));position:relative}
.person-frame img{object-fit:cover;aspect-ratio:4/5;height:auto;width:100%;display:block}
.person-nav{border-radius:50%;top:50%;height:44px;cursor:pointer;width:44px;position:absolute;box-shadow:var(--ds-shadow-md);transform:translateY(-50%);z-index:2;place-items:center;color:var(--ds-primary-hover);transition:transform .15s ease,background .15s ease;display:grid;border:none;background:var(--ds-card-wash)}
.person-nav:hover{background:var(--ds-card-wash);transform:translateY(-50%) scale(1.07)}
.person-nav svg{height:22px;width:22px}
.person-back{left:12px}
.person-right{right:12px}
.person-band{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}
.person-block{cursor:pointer;flex:0 0 auto;overflow:hidden;box-shadow:var(--ds-shadow-sm);width:72px;border:2px solid transparent;border-radius:var(--ds-radius-sm);background:var(--ds-card-strong);transition:transform .15s ease,border-color .15s ease;aspect-ratio:3/4;padding:0}
.person-block img{width:100%;object-fit:cover;display:block;height:100%}
.person-block:hover{transform:translateY(-2px)}
.person-block.on{border-color:var(--ds-primary)}
.person-column [hidden]{display:none!important}
.person-vid{width:100%;max-height:70vh;background:#000002;height:auto;object-fit:contain;display:block}
.person-block-vid{position:relative}
.sign{letter-spacing:-.02em;color:var(--ds-copy);font-family:var(--ds-font-display);align-items:center;display:flex;gap:11px;font-weight:800;font-size:1.28rem}
.sign:hover{color:var(--ds-copy)}
.sign-pic{box-shadow:0 8px 18px -8px rgba(235,80,152,.8);color:var(--ds-invert);background:linear-gradient(135deg,var(--ds-primary),var(--ds-flush) 55%,var(--ds-tangerine));align-items:center;display:inline-flex;border-radius:14px;width:42px;justify-content:center;height:42px;flex-shrink:0}
.sign-pic svg{height:22px;width:22px}
.vid-frame{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;background:#000002}
.vid-bullet{font-size:.64rem;color:#fffeff;height:28px;place-items:center;display:grid;box-shadow:var(--ds-shadow-sm);top:50%;background:rgba(0,0,2,.55);left:50%;border-radius:50%;transform:translate(-50%,-50%);width:28px;line-height:1;position:absolute;padding-left:2px;pointer-events:none}
.vid-marker{padding:5px 9px;gap:4px;border-radius:var(--ds-radius-pill);z-index:2;font-weight:700;position:absolute;bottom:12px;background:rgba(0,0,2,.6);color:#fffeff;align-items:center;letter-spacing:.02em;left:12px;font-size:.7rem;display:inline-flex;box-shadow:var(--ds-shadow-sm)}
.eyebrow{text-transform:uppercase;color:var(--ds-primary);font-weight:800;letter-spacing:.1em;margin-bottom:10px;font-size:.8rem}
.foot-layout{gap:40px;display:grid;grid-template-columns:1.6fr 1fr 1fr}
.foot-sign{font-family:var(--ds-font-display);margin-bottom:12px;align-items:center;font-weight:800;display:flex;gap:10px;color:var(--ds-foot-strong);font-size:1.2rem}
.foot-column>p:not(.foot-title){max-width:34ch;font-size:.94rem;color:var(--ds-foot-pale)}
.foot-title{margin-bottom:14px;color:var(--ds-foot-strong);font-size:1rem;font-weight:800}
.foot-menu{font-size:.94rem;display:grid;gap:10px}

.explore-form{border-radius:var(--ds-radius-pill);box-shadow:var(--ds-shadow-md);border:1px solid var(--ds-rule-pale);background:var(--ds-card);display:flex;padding:12px;gap:12px;margin:0 auto}
.explore-form .textbox{background:transparent;font-size:1.06rem;border:none;box-shadow:none}
.explore-form .textbox:focus{box-shadow:none}
.explore-form+.local{margin-top:40px}
::selection{background:rgba(235,80,152,.24)}
.core-menu{align-items:center;display:flex;gap:8px;margin-left:auto}
.cityhall-title{font-family:var(--ds-font-display);font-weight:800;margin-bottom:14px}
.cityhall-entry{gap:10px;font-size:.94rem;color:var(--ds-copy-pale);align-items:flex-start;margin-top:10px;display:flex}
.cityhall-entry .locator{flex:none;color:var(--ds-primary)}
.cityhall-entry .locator svg{height:16px;width:16px}
.menu-screen{position:fixed;inset:0;background:var(--ds-scrim);opacity:0;z-index:1090;transition:opacity .3s ease;visibility:hidden}
.menu-screen.active{visibility:visible;opacity:1}

.local{gap:32px;flex-direction:column;display:flex}
.local-block h2{font-size:1.15rem;font-weight:800;margin-bottom:16px;color:var(--ds-copy)}
.local-menu{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.local-menu a{padding:13px 16px;align-items:center;border:1px solid var(--ds-rule);box-shadow:var(--ds-shadow-sm);gap:10px;justify-content:space-between;background:var(--ds-card);font-size:.92rem;font-weight:600;border-radius:var(--ds-radius-md);transition:transform .14s,box-shadow .14s,color .14s;color:var(--ds-copy);display:flex}
.local-menu a:hover{box-shadow:var(--ds-shadow-md);color:var(--ds-primary-hover);transform:translateY(-3px)}
.local-menu a .locator{display:grid;color:var(--ds-primary);flex:none;place-items:center}
.local-menu a .locator svg{width:16px;height:16px}
.location-box{position:relative;overflow:hidden;aspect-ratio:4/3;border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-md);border:1px solid var(--ds-rule-pale);background:var(--ds-wisteria)}
.location-box.location-lazy{cursor:pointer}
.location-holder{inset:0;text-align:center;place-items:center;gap:10px;display:grid;background:linear-gradient(160deg,var(--ds-wisteria-strong),var(--ds-card-strong));position:absolute;padding:20px}
.location-holder p{font-weight:700;color:var(--ds-copy)}
.location-locator{color:var(--ds-flush);filter:drop-shadow(0 10px 12px rgba(252,76,99,.49))}
.location-locator svg{stroke:none;width:40px;height:40px;fill:currentColor}
.location-box iframe{inset:0;height:100%;width:100%;position:absolute;border:0}
.location-box.is-live .location-holder{display:none}
.article-section .trail{display:flex}.article-section .trail li{padding-left:0}.article-section .trail li::before{display:none}

.form-wrap{max-width:640px}
.form-holder{width:1px;left:-9999px;overflow:hidden;position:absolute;height:1px}
.trail a:hover{color:var(--ds-primary-hover)}
figure{margin:0}
.assets-set{display:grid;margin-top:14px;gap:10px}
.assets-set li{padding-left:24px;position:relative;color:var(--ds-copy)}
.assets-set li::before{border-radius:50%;left:0;content:"";width:10px;background:var(--ds-flush);position:absolute;height:10px;top:.5em}
svg{display:block}
.pic-on svg{stroke:none;fill:currentColor}
.opening{gap:4px;margin-top:10px;display:grid}
h1,h2,h3,h4{letter-spacing:-.01em;line-height:1.12;font-family:var(--ds-font-display);margin:0;color:var(--ds-copy)}
:focus-visible{outline:3px solid var(--ds-primary);border-radius:6px;outline-offset:2px}
.menu-link{border-radius:var(--ds-radius-pill);padding:9px 14px;font-weight:600;font-size:.96rem;transition:background .18s,color .18s;color:var(--ds-copy)}
.menu-link:hover{background:var(--ds-card-strong);color:var(--ds-primary-hover)}
.menu-sparkle{display:inline-flex;gap:7px;text-decoration:none;font-weight:600;background:none;position:relative;align-items:center;font-size:.96rem;cursor:pointer;border:none;border-radius:var(--ds-radius-pill);padding:9px 12px;transition:background .18s ease,color .18s ease;color:var(--ds-copy)}
.menu-sparkle:hover{background:var(--ds-card-strong);color:var(--ds-primary-hover)}
.menu-sparkle svg{width:20px;height:20px;color:var(--ds-primary)}
.menu-sparkle:hover svg{color:var(--ds-primary-hover)}
.menu-sparkle-copy{white-space:nowrap}
.menu-sparkle .talk-marker{top:auto;right:auto;position:static}
.menu-sparkle-mob{display:flex;gap:9px;color:var(--ds-copy);cursor:pointer;border:none;align-items:center;border-bottom:1px solid var(--ds-rule);font-weight:600;padding:14px 2px;background:none;width:100%;text-align:left;text-decoration:none;font-size:15px}
.menu-sparkle-mob:hover{color:var(--ds-primary-hover)}
.menu-sparkle-mob svg{width:18px;color:var(--ds-primary);height:18px}

.inner{max-width:var(--ds-wrap);margin-inline:auto;padding-inline:var(--ds-gap)}
.sign,.menu-link,.aside-mob a,.ctl,.trail a,.main-foot a,.local-menu a,.person-talk{text-decoration:none}
.trail li:not(:last-child)::after{content:"\00203a";color:var(--ds-muted);margin-left:6px}
.trail a{color:var(--ds-copy-pale)}
.ttl{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}

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

.holder{padding-block:clamp(60px,10vw,140px);text-align:center}
.holder-idx{font-family:var(--ds-font-display);font-weight:800;font-size:clamp(6rem,20vw,13rem);line-height:.9}
.holder-block{justify-content:center;display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
ul{margin:0;list-style:none;padding:0}
.aside-mob{height:100vh;max-width:320px;background:var(--ds-card);z-index:1100;position:fixed;top:0;right:-100%;height:100dvh;overflow-y:auto;box-shadow:-6px 0 30px rgba(43,35,47,.21);width:80%;padding:84px 22px 22px;transition:right .3s ease}
.aside-mob.active{right:0}
.aside-mob nav{flex-direction:column;display:flex}
.aside-mob a:not(.ctl){font-weight:600;border-bottom:1px solid var(--ds-rule);padding:14px 2px;font-size:15px;color:var(--ds-copy)}
.aside-mob a:not(.ctl):hover{color:var(--ds-primary-hover)}
.aside-mob a.ctl{margin-top:22px}
.article-copy .ctl{margin-top:26px}
.person-vid-play{color:#fffeff;box-shadow:var(--ds-shadow-md);font-size:1.9rem;transition:transform .15s ease,background .15s ease;padding-left:6px;width:78px;display:grid;transform:translate(-50%,-50%);background:rgba(0,0,2,.49);z-index:3;top:50%;line-height:1;height:78px;border-radius:50%;border:none;cursor:pointer;left:50%;place-items:center;position:absolute}
.person-vid-play:hover{transform:translate(-50%,-50%) scale(1.07);background:rgba(0,0,2,.71)}
.person-aside{top:96px;position:sticky}
.person-top{flex-wrap:wrap;margin-top:14px;gap:12px;display:flex;align-items:center}
.person-top .marker-pill{flex:none}
.person-intro{font-family:var(--ds-font-display);font-weight:800;line-height:1.1;font-size:clamp(1.7rem,3.2vw,2.3rem)}
.person-intro span{color:var(--ds-muted);font-weight:600;font-size:.62em}
.person-note{margin-top:10px;color:var(--ds-copy-pale);display:flex;gap:7px;font-size:1.02rem;align-items:center}
.person-note .locator svg{height:18px;color:var(--ds-primary);width:18px}
.person-note a{color:var(--ds-primary-hover);border-bottom:1px solid transparent;font-weight:600;transition:border-color .15s ease;text-decoration:none}
.person-note a:hover{border-bottom-color:currentColor}
.person-figures{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}
.person-aside .intro{margin-top:18px}
.person-set{display:flex;margin-top:24px;gap:12px;flex-wrap:wrap}

.form{padding:clamp(24px,3vw,40px);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-md);border:1px solid var(--ds-rule-pale);background:var(--ds-card)}
.form-block{margin-bottom:18px;gap:7px;display:grid}
.form-block label{font-weight:700;font-size:.92rem}

.article{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(28px,4vw,56px);display:grid}
.article-copy>p:not(.eyebrow){color:var(--ds-copy-pale);margin-top:16px;font-size:1.04rem}
.article-deck{color:var(--ds-primary-hover);font-family:var(--ds-font-display);margin-top:22px;font-size:1.1rem;font-weight:800}

.corner-banner{box-shadow:var(--ds-shadow-lg);position:fixed;background:var(--ds-card);padding:20px;right:22px;width:300px;max-width:calc(100vw - 44px);bottom:22px;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-rule-pale);z-index:80}
.corner-x{color:var(--ds-copy-pale);border-radius:50%;font-size:1.1rem;top:12px;cursor:pointer;line-height:1;display:grid;position:absolute;border:none;right:12px;width:28px;height:28px;place-items:center;background:var(--ds-card-strong);padding:0}
.corner-x:hover{color:var(--ds-invert);background:var(--ds-primary)}
.corner-title{font-family:var(--ds-font-display);font-weight:800;padding-right:26px;font-size:1.04rem}
.corner-copy{font-size:.86rem;margin-top:4px;margin-bottom:14px;color:var(--ds-copy-pale)}
.corner-tab{align-items:center;border-radius:50%;background:linear-gradient(135deg,var(--ds-primary),var(--ds-flush));height:60px;right:22px;justify-content:center;position:fixed;display:none;width:60px;border:none;cursor:pointer;z-index:80;bottom:22px;color:var(--ds-invert);box-shadow:var(--ds-shadow-lg)}
.corner-tab svg{width:26px;height:26px;stroke:none;fill:currentColor}
.specs-cityhall{background:var(--ds-card);box-shadow:var(--ds-shadow-md);padding:24px;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-rule-pale)}

.main-foot{color:var(--ds-foot);background:var(--ds-foot-wash)}
.main-foot .inner{padding-block:56px 22px}
.main-foot a{color:var(--ds-foot)}
.main-foot a:hover{color:var(--ds-foot-strong)}
.section{padding-block:var(--ds-vgap)}
.section-alt{background:var(--ds-card-strong)}
.intro{margin-top:14px;color:var(--ds-copy-pale);font-size:1.06rem}
.figure{display:flex;border-radius:var(--ds-radius-md);background:var(--ds-card);gap:12px;align-items:center;border:1px solid var(--ds-rule-pale);box-shadow:var(--ds-shadow-sm);padding:14px 16px}
.figure-pic{flex:none;width:40px;color:var(--ds-primary);place-items:center;display:grid;border-radius:12px;height:40px;background:var(--ds-card-strong)}
.figure-pic svg{height:18px;width:18px}
.figure-copy dt{font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ds-muted)}
.figure-copy dd{font-family:var(--ds-font-display);font-weight:800;font-size:.98rem;margin:2px 0 0}

.banner-box{background:linear-gradient(100deg,var(--ds-primary-hover),var(--ds-flush) 60%,var(--ds-tangerine));color:var(--ds-invert);gap:30px;flex-wrap:wrap;border-radius:var(--ds-radius-xl);padding:clamp(38px,5vw,64px);align-items:center;overflow:hidden;justify-content:space-between;box-shadow:var(--ds-shadow-lg);position:relative;display:flex}
.banner-deco{border-radius:50%;right:-90px;top:-120px;height:320px;width:320px;position:absolute;background:rgba(255,254,255,.12)}
.banner-copy{z-index:2;position:relative}
.banner-copy h2{color:var(--ds-invert);max-width:16ch}
.banner-copy p{max-width:46ch;margin-top:10px;color:rgba(255,254,255,.91)}
.banner-box .ctl{position:relative;z-index:2}
.slot{color:var(--ds-copy-pale);font-size:.9rem;gap:12px;display:flex;justify-content:space-between}
.textbox-entry{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.textbox{padding:13px 16px;width:100%;font-family:inherit;transition:border-color .16s,box-shadow .16s;background:var(--ds-card-pale);border-radius:var(--ds-radius-sm);color:var(--ds-copy);font-size:1rem;border:1.5px solid var(--ds-rule)}
.textbox:focus{outline:none;box-shadow:0 0 0 3px rgba(235,80,152,.15);border-color:var(--ds-primary)}
textarea.textbox{min-height:140px;resize:vertical}

.specs{align-items:start;gap:clamp(28px,4vw,48px);display:grid;grid-template-columns:1.2fr 1fr}
.specs-figures{gap:16px;display:grid;grid-template-columns:1fr 1fr}

.toggle{cursor:pointer;gap:5px;padding:6px;display:none;z-index:1105;background:none;border:none;flex-direction:column}
.toggle span{width:26px;height:3px;background:var(--ds-copy);transition:transform .3s ease,opacity .3s ease;border-radius:2px;display:block}
.toggle.active span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.toggle.active span:nth-child(2){opacity:0}
.toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}
.form-note{font-weight:700}
.form-note-on{color:var(--ds-success)}
.form-note-closed{color:var(--ds-primary-hover)}
.person-box{border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-md);transition:transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden;border:1px solid var(--ds-rule-pale);background:var(--ds-card)}
.person-box:hover{transform:translateY(-6px);box-shadow:var(--ds-shadow-lg)}
.person-face{overflow:hidden;position:relative;aspect-ratio:1/1;background:linear-gradient(160deg,var(--ds-blush-200),var(--ds-wisteria-strong))}
.person-face img{width:100%;height:100%;display:block;object-fit:cover}
.person-marker{top:12px;background:var(--ds-card-wash);z-index:2;gap:6px;position:absolute;color:var(--ds-success);box-shadow:var(--ds-shadow-sm);align-items:center;display:inline-flex;left:12px;padding:5px 10px;border-radius:var(--ds-radius-pill);font-weight:700;font-size:.72rem}

.article-section h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.article-section h2{margin-top:34px;font-size:1.35rem;font-weight:800;color:var(--ds-primary-hover)}
.article-section p{font-size:1.04rem;margin-top:14px;color:var(--ds-copy-pale)}
.article-section p a{font-weight:600}
.article-section ul{gap:10px;display:grid;margin-top:14px}
.article-section li{position:relative;color:var(--ds-copy-pale);padding-left:24px}
.article-section li::before{position:absolute;left:0;content:"";width:10px;background:var(--ds-flush);border-radius:50%;top:.5em;height:10px}
.article-support>.inner>h2{text-align:center;margin-bottom:28px}
button{font-family:inherit}

.ctl{
  font-weight:700;padding:14px 26px;align-items:center;white-space:nowrap;
  border:1.5px solid transparent;text-align:center;font-size:1rem;border-radius:var(--ds-radius-pill);
  justify-content:center;gap:9px;display:inline-flex;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;
  cursor:pointer;
}
.ctl svg{width:18px;height:18px}
.ctl-small{padding:10px 18px;font-size:.9rem}
.ctl-lg{padding:17px 32px;font-size:1.06rem}
.ctl-block{width:100%}
.ctl-main{box-shadow:0 14px 26px -12px rgba(252,76,99,.74);background:linear-gradient(95deg,var(--ds-tangerine),var(--ds-flush) 55%,var(--ds-primary));color:var(--ds-invert)}
.ctl-main:hover{transform:translateY(-2px);color:var(--ds-invert);box-shadow:0 20px 34px -12px rgba(252,76,99,.85)}
.ctl-secondary{color:var(--ds-primary);border-color:var(--ds-rule);background:var(--ds-card)}
.ctl-secondary:hover{transform:translateY(-2px);background:var(--ds-card-strong);color:var(--ds-primary-hover)}
.ctl-pale{background:var(--ds-white);color:var(--ds-primary-hover)}
.ctl-pale:hover{color:var(--ds-primary-hover);box-shadow:var(--ds-shadow-md);transform:translateY(-2px)}
.intro-head{margin:0 auto 44px;max-width:640px;text-align:center}

@media (max-width:980px){
  .persons-layout{grid-template-columns:repeat(3,1fr)}
  .person-layout{grid-template-columns:1fr}
  .person-frame{width:100%;max-width:380px;justify-self:start}
  .person-aside{position:static}
  .article,.specs{grid-template-columns:1fr}
  .foot-layout{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .core-menu{display:none}
  .toggle{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .aside-mob,.menu-screen{display:none}
}
@media (max-width:600px){
  :root{--ds-vgap:clamp(30px,7vw,48px)}
  .foot-layout,.textbox-entry{grid-template-columns:1fr}
  .persons-layout{grid-template-columns:repeat(2,1fr);gap:12px}
  .person-inner{padding:16px 10px}
  .banner-box{flex-direction:column;align-items:stretch;padding:32px 24px}
  .banner-box .ctl{width:100%;white-space:normal}
  .explore-form{flex-direction:column;border-radius:var(--ds-radius-lg)}
  .explore-form .ctl{width:100%}
  .section-person{padding-top:0}
  .person-frame img{aspect-ratio:1/1;max-height:46vh}
  .person-layout{margin-top:0}
  .person-aside{display:flex;flex-direction:column;margin-top:14px}
  .person-top{order:1;margin-top:0}
  .person-note{order:2}
  .person-set{order:3;margin-top:16px;gap:10px}
  .person-set .ctl{flex:1 1 auto}
  .person-band{display:none}
  .person-figures{order:4}
  .person-aside .intro{order:5}
  .specs-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-copy{min-width:0}
  .figure-copy dd{font-size:.92rem;overflow-wrap:anywhere}
}
