
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:400 800;font-display:swap;src:url('../font/bricolage.woff2') format('woff2')}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 500;font-display:swap;src:url('../font/dmsans.woff2') format('woff2')}
:root{
  --base-pinktint-100:#fef0f7;
  --base-pinktint-200:#f8e4f3;
  --base-pinktint-300:#f7d8e6;
  --base-pinktint-deep:#eebbd9;
  --base-mauve:#f4f0f9;
  --base-mauve-x:#e8e2f5;

  --base-surface:#fffeff;
  --base-surface-soft:#fef0f7;
  --base-surface-x:#f8e4f3;

  --base-pink:#cf0583;
  --base-pink-600:#af0170;
  --base-red:#cf0583;
  --base-red-x:#af0170;
  --base-orange:#cf0583;
  --base-orange-x:#af0170;
  --base-love:#cf0583;
  --base-cornflower:#c9cdf0;
  --base-promo-600:linear-gradient(95deg,#af0170,#af0170 55%,#af0170);

  --base-fg:#29272f;
  --base-fg-soft:#6a6274;
  --base-quiet:#9a91a0;
  --base-rule:#eedae6;

  --base-inverse:#fffeff;
  --base-base:#fffeff;
  --base-success:#8fc8ab;
  --base-rule-soft:rgba(255,254,255,.88);
  --base-surface-bg:rgba(255,254,255,.94);
  --base-overlay:rgba(41,39,47,.48);
  --base-footer-bg:#29272f;
  --base-footer:#d7d4df;
  --base-footer-x:#fffeff;
  --base-footer-soft:#aaa0b1;
  --base-footer-ring:rgba(255,254,255,.1);

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

  --base-shadow-sm:0 6px 16px -8px rgba(207,5,131,.3);
  --base-shadow-md:0 18px 38px -18px rgba(207,5,131,.36);
  --base-shadow-lg:0 30px 60px -24px rgba(207,5,131,.4);

  --base-font-head:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;
  --base-sans:"DM Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;

  --base-frame:1200px;
  --base-gutter:24px;
  --base-block-y:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--base-sans);margin:0;color:var(--base-fg);-webkit-font-smoothing:antialiased;
  background:linear-gradient(180deg, #fdf1f7 0%, #fffeff 30%, #fffeff 100%);
  line-height:1.6;background-attachment:fixed;
}
img{max-width:100%;display:block}
.head-zone{margin:0 auto 30px;text-align:center;max-width:640px}
::selection{background:rgba(238,79,148,.2)}
.intro{margin-top:14px;font-size:1.06rem;color:var(--base-fg-soft)}
.h2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}

.site-navbar{z-index:60;position:sticky;border-bottom:1px solid var(--base-rule);background:var(--base-surface);top:0}
.site-navbar-in{gap:20px;padding-block:12px;display:flex;align-items:center;justify-content:space-between}




.persons-grid{grid-template-columns:repeat(4,1fr);display:grid;gap:5px}

.wrap{max-width:var(--base-frame);margin-inline:auto;padding-inline:var(--base-gutter)}
ul{list-style:none;margin:0;padding:0}
.id{font-family:var(--base-font-head);display:flex;letter-spacing:-.02em;color:var(--base-fg);font-weight:800;font-size:1.28rem;gap:11px;align-items:center}
.id:hover{color:var(--base-fg)}
.id-mark{justify-content:center;background:linear-gradient(135deg,var(--base-pink),var(--base-red) 55%,var(--base-orange));box-shadow:0 8px 18px -8px rgba(238,79,148,.81);width:42px;height:42px;display:inline-flex;border-radius:14px;flex-shrink:0;align-items:center;color:var(--base-inverse)}
.id-mark svg{width:22px;height:22px}
.sneak-strip{display:inline-flex;align-items:center;flex:none}
.sneak-strip img{margin-left:-13px;border-radius:50%;object-fit:cover;height:38px;width:38px;border:2px solid var(--base-inverse);box-shadow:var(--base-shadow-sm)}
.sneak-strip img:first-child{margin-left:0}
.sneak-title{white-space:normal;overflow-wrap:break-word;text-align:center;flex:1 1 auto}
.sneak-next{align-items:center;display:inline-flex;flex:none}
.sneak-next svg{height:20px;width:20px}
svg{display:block}
.menu-screen{inset:0;opacity:0;visibility:hidden;z-index:1090;background:var(--base-overlay);position:fixed;transition:opacity .3s ease}
.menu-screen.current{opacity:1;visibility:visible}

.press{
  white-space:nowrap;display:inline-flex;justify-content:center;font-weight:700;
  align-items:center;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;padding:14px 26px;cursor:pointer;
  border:1.5px solid transparent;border-radius:var(--base-rad-btn);text-align:center;font-size:1rem;
  gap:9px;
}
.press svg{width:18px;height:18px}
.press-xs{padding:10px 18px;font-size:.9rem}
.press-full{width:100%}
.press-primary{color:var(--base-inverse);box-shadow:0 14px 26px -12px rgba(252,75,99,.75);background:linear-gradient(95deg,var(--base-orange),var(--base-red) 55%,var(--base-pink))}
.press-primary:hover{box-shadow:0 20px 34px -12px rgba(252,75,99,.87);color:var(--base-inverse);background:var(--base-promo-600);transform:translateY(-2px)}
.press-ghost{border-color:var(--base-rule);background:var(--base-surface);color:var(--base-pink)}
.press-ghost:hover{transform:translateY(-2px);background:var(--base-surface-x);color:var(--base-pink-600)}
.press-plain{background:var(--base-base);color:var(--base-pink-600)}
.press-plain:hover{transform:translateY(-2px);color:var(--base-pink-600);box-shadow:var(--base-shadow-md)}
.press.sneak{padding-inline:16px;max-width:540px;display:flex;gap:12px;justify-content:space-between;margin:0 auto 26px}
.aside-mobile{width:80%;top:0;max-width:320px;height:100vh;overflow-y:auto;position:fixed;z-index:1100;background:var(--base-surface);right:-100%;padding:84px 22px 22px;box-shadow:-6px 0 30px rgba(41,39,47,.21);height:100dvh;transition:right .3s ease}
.aside-mobile.current{right:0}
.aside-mobile nav{flex-direction:column;display:flex}
.aside-mobile a:not(.press){border-bottom:1px solid var(--base-rule);padding:14px 2px;color:var(--base-fg);font-weight:600;font-size:15px}
.aside-mobile a:not(.press):hover{color:var(--base-pink-600)}
.aside-mobile a.press{margin-top:22px}
button{font-family:inherit}
.id,.menu-entry,.aside-mobile a,.press,.path a,.site-bottom a,.nearby-menu a{text-decoration:none}
.sym-ticked svg{fill:currentColor;stroke:none}
p{margin:0}

.hamburger{z-index:1105;display:none;background:none;gap:5px;flex-direction:column;cursor:pointer;padding:6px;border:none}
.hamburger span{display:block;transition:transform .3s ease,opacity .3s ease;width:26px;border-radius:2px;height:3px;background:var(--base-fg)}
.hamburger.current span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.hamburger.current span:nth-child(2){opacity:0}
.hamburger.current span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}
.menu-entry{font-weight:600;color:var(--base-fg);font-size:.96rem;transition:background .18s,color .18s;padding:9px 14px;border-radius:var(--base-rad-pill)}
.menu-entry:hover{background:var(--base-surface-x);color:var(--base-pink-600)}
.menu-star{border:none;display:inline-flex;align-items:center;background:none;border-radius:var(--base-rad-pill);color:var(--base-fg);gap:7px;font-weight:600;font-size:.96rem;padding:9px 12px;cursor:pointer;position:relative;text-decoration:none;transition:background .18s ease,color .18s ease}
.menu-star:hover{color:var(--base-pink-600);background:var(--base-surface-x)}
.menu-star svg{color:var(--base-pink);width:20px;height:20px}
.menu-star:hover svg{color:var(--base-pink-600)}
.menu-star-text{white-space:nowrap}
.menu-star .thread-dot{top:auto;right:auto;position:static}
.menu-star-mobile{border:none;display:flex;padding:14px 2px;align-items:center;font-weight:600;cursor:pointer;gap:9px;border-bottom:1px solid var(--base-rule);width:100%;text-align:left;background:none;text-decoration:none;font-size:15px;color:var(--base-fg)}
.menu-star-mobile:hover{color:var(--base-pink-600)}
.menu-star-mobile svg{width:18px;color:var(--base-pink);height:18px}
.core-menu{margin-left:auto;gap:8px;display:flex;align-items:center}
h1,h2,h3,h4{margin:0;color:var(--base-fg);line-height:1.12;letter-spacing:-.01em;font-family:var(--base-font-head)}
:focus-visible{outline:3px solid var(--base-pink);border-radius:6px;outline-offset:2px}
.block{padding-block:var(--base-block-y)}
.block-other{background:var(--base-surface-x)}
.hl{background:linear-gradient(92deg,var(--base-pink),var(--base-red) 60%,var(--base-orange));-webkit-background-clip:text;font-style:italic;background-clip:text;color:transparent}
.person-box{transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease;background:var(--base-surface);border-radius:var(--base-rad-lg);cursor:pointer;border:1px solid var(--base-rule-soft);overflow:hidden;position:relative}
.person-box:hover{transform:translateY(-8px) scale(1.02);z-index:3;box-shadow:var(--base-shadow-lg)}
.person-face{overflow:hidden;display:block;background:linear-gradient(160deg,var(--base-pinktint-200),var(--base-mauve-x));aspect-ratio:3/4;position:relative}
.person-face img{width:100%;transition:transform .5s ease,filter .3s ease;height:100%;display:block;object-fit:cover}
.person-box:hover .person-face img{filter:brightness(.7);transform:scale(1.1)}
.person-dot{font-weight:800;z-index:3;letter-spacing:.05em;box-shadow:0 2px 8px rgba(1,0,0,.2);border:1px solid #599cd7;position:absolute;border-radius:var(--base-rad-pill);color:#e9f2fe;background:linear-gradient(135deg,#0e2e4a,#081d31);gap:6px;padding:5px 9px;align-items:center;top:10px;font-size:.68rem;display:inline-flex;right:10px}
.person-dot .led{position:relative;border-radius:50%;box-shadow:0 0 6px rgba(143,200,171,.7);font-size:0;height:8px;background:var(--base-success);width:8px;color:transparent}
.person-dot .led::after{background:var(--base-success);border-radius:50%;animation:waft 1.8s ease-out infinite;inset:0;content:"";position:absolute}
.person-in{text-align:left;z-index:2;padding:20px 15px 15px;transition:opacity .3s ease;background:linear-gradient(to top,rgba(1,0,0,.96),rgba(1,0,0,.7) 55%,rgba(1,0,0,.02));left:0;right:0;bottom:0;position:absolute}
.person-box:hover .person-in{opacity:0}
.person-sub{letter-spacing:.02em;align-items:center;display:inline-flex;padding:4px 9px;box-shadow:0 2px 8px rgba(1,0,0,.2);font-size:.68rem;background:rgba(24,44,41,.94);border-radius:var(--base-rad-pill);margin-bottom:8px;color:#edfbf8;border:1px solid rgba(71,119,105,.88);font-weight:700;gap:5px}
.person-sub svg{width:14px;color:#a6e4cd;height:14px}
.person-title{line-height:1.2;color:#fffeff;font-family:var(--base-font-head);font-weight:800;font-size:1.32rem}
.person-title span{color:rgba(255,254,255,.84);font-weight:600;font-size:.86rem}
.person-addr{display:flex;gap:6px;align-items:center;color:rgba(255,254,255,.88);font-size:.82rem;margin-top:3px}
.person-addr .marker svg{height:14px;color:#fffeff;width:14px}

.person-addr{white-space:nowrap;overflow:hidden;display:block;text-overflow:ellipsis}
.person-addr .marker{vertical-align:middle;display:inline-flex;margin-right:6px}
.person-star{box-shadow:0 2px 8px rgba(1,0,0,.27);border-radius:50%;display:grid;position:absolute;transition:transform .2s ease,background .2s ease,color .2s ease;border:none;place-items:center;top:10px;left:10px;width:34px;color:#fffeff;height:34px;cursor:pointer;z-index:6;background:rgba(1,0,0,.41)}
.person-star svg{width:18px;height:18px}
.person-star:hover{background:rgba(1,0,0,.6);transform:scale(1.1)}
.person-star.ticked{color:var(--base-inverse);background:var(--base-red)}
.person-star.ticked svg{fill:currentColor}
figure{margin:0}
.path a:hover{color:var(--base-pink-600)}
@media(max-width:768px){.person-star{top:8px;left:8px;width:30px;height:30px}.person-star svg{width:16px;height:16px}.person-dot{top:8px;right:8px;gap:4px;padding:3px 7px;font-size:9.5px;letter-spacing:.03em}.person-dot .led{width:6px;height:6px}.person-box .person-in{padding:10px 9px 9px}.person-sub{gap:3px;margin-bottom:5px;padding:3px 6px;font-size:9.5px}.person-sub svg{width:12px;height:12px}.person-title{font-size:.92rem;line-height:1.2;padding-right:40px}.person-title span{font-size:.72rem;white-space:nowrap}.person-addr{font-size:.72rem;gap:4px;margin-top:2px;padding-right:40px}.person-addr .marker svg{width:12px;height:12px}}
@keyframes waft{0%{opacity:.6;transform:scale(1)}100%{opacity:0;transform:scale(2.4)}}
.hidden{margin-top:10px}
.hidden-grid{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}
.hidden-block{display:block;position:relative;overflow:hidden;aspect-ratio:3/4;box-shadow:var(--base-shadow-sm);border-radius:var(--base-rad-sm);cursor:pointer}
.hidden-block img{object-fit:cover;display:block;width:100%;height:100%}

.hidden-block:nth-child(1) img{object-position:50% 12%;transform:scale(1.6) rotate(2deg);filter:blur(9px) brightness(.9) contrast(1.03)}
.hidden-block:nth-child(2) img{object-position:88% 42%;filter:blur(11px) brightness(.82) contrast(1.06) grayscale(.3);transform:scale(-2,2) rotate(5deg)}
.hidden-block:nth-child(3) img{transform:scale(-1.4,1.4) rotate(8deg);filter:blur(9px) brightness(.92) sepia(.38);object-position:12% 80%}
.hidden-block::after{position:absolute;content:"";z-index:1;background:linear-gradient(180deg,rgba(1,0,0,.04),rgba(1,0,0,.2));inset:0}
.hidden-dot{z-index:2;inset:0;color:#fffeff;display:grid;position:absolute;place-items:center}
.hidden-dot svg{filter:drop-shadow(0 2px 6px rgba(1,0,0,.6));height:26px;width:26px}
.hidden-block:hover::after{background:linear-gradient(180deg,rgba(1,0,0,.04),rgba(1,0,0,.2))}
.person-aside{top:96px;position:sticky}

.picks{margin-top:18px}
.picks-title{text-transform:uppercase;margin:0 0 12px;font-family:var(--base-font-head);font-weight:800;letter-spacing:.07em;color:var(--base-pink-600);font-size:.95rem}
.picks-grid{gap:12px;grid-template-columns:1fr 1fr;align-items:stretch;display:grid}
.picks-part{padding:14px;border-radius:var(--base-rad-md);border:1px solid}
.picks-part-ticked{background:var(--base-surface-x);border-color:var(--base-rule)}
.picks-part-shut{background:#f4f4f9;border-color:#e4e6f1}
.picks-top{text-transform:uppercase;letter-spacing:.04em;font-weight:800;align-items:center;margin:0 0 12px;font-size:.82rem;display:flex;gap:7px}
.picks-top svg{height:16px;flex:none;width:16px}
.picks-part-ticked .picks-top{color:var(--base-pink-600)}
.picks-part-shut .picks-top{color:var(--base-quiet)}
.picks-part ul{display:flex;list-style:none;margin:0;flex-direction:column;padding:0;gap:11px}
.picks-part li{align-items:center;font-size:.88rem;gap:10px;line-height:1.25;display:flex}
.picks-part-ticked li{color:var(--base-fg)}
.picks-part-shut li{color:var(--base-quiet)}
.picks-sym{height:30px;place-items:center;width:30px;display:grid;border-radius:50%;flex:none}
.picks-sym svg{width:15px;height:15px}
.picks-part-ticked .picks-sym{background:linear-gradient(135deg,var(--base-pink),var(--base-red));color:#fffeff}
.picks-part-shut .picks-sym{border:1.5px solid #d7d7e8;color:#a9abc3;background:#fffeff}

.person-entry{display:inline-flex;box-shadow:var(--base-shadow-sm);align-items:center;font-weight:700;width:100%;color:var(--base-inverse);background:linear-gradient(135deg,var(--base-pink),var(--base-red));border-radius:var(--base-rad-pill);justify-content:center;margin-top:11px;padding:5px 14px;gap:6px;font-size:.82rem}
.person-entry svg{height:15px;width:15px}
.person-other:hover .person-in{opacity:1}

.led{font-size:.6rem;color:var(--base-success);line-height:1}
.person-view-star{width:46px;height:46px;top:14px;right:14px;left:auto}
.person-view-star svg{width:21px;height:21px}
.person-grid{margin-top:22px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid;gap:clamp(24px,4vw,52px);align-items:start}
.person-part{min-width:0}
.person-view{margin:0;box-shadow:var(--base-shadow-md);background:linear-gradient(160deg,var(--base-pinktint-200),var(--base-mauve-x));border-radius:var(--base-rad-sm);overflow:hidden;position:relative}
.person-view img{display:block;object-fit:cover;aspect-ratio:4/5;height:auto;width:100%}

.portrait{margin-top:18px}
.portrait-title{font-family:var(--base-font-head);display:flex;color:var(--base-fg);font-weight:800;margin:0 0 8px;align-items:center;font-size:1rem;gap:7px}
.portrait .intro{color:var(--base-fg-soft);background:var(--base-surface-x);padding:13px 16px;border-left:3px solid var(--base-pink);border-radius:0 var(--base-rad-md) var(--base-rad-md) 0;margin:0;font-style:italic}
.week{background:var(--base-surface-x);padding:14px;border:1px solid var(--base-rule);border-radius:var(--base-rad-md);margin-top:16px}
.week-title{text-transform:uppercase;letter-spacing:.05em;display:flex;color:var(--base-pink-600);font-weight:800;font-size:.82rem;margin:0 0 12px;align-items:center;gap:7px}
.week-title svg{color:var(--base-pink);flex:none;height:16px;width:16px}
.week-strip{display:flex;padding:0;list-style:none;margin:0 0 14px;gap:5px}
.week-block{align-items:center;min-width:0;border-radius:11px;padding:7px 1px;gap:6px;flex:1 1 0;background:#fffeff;border:1px solid var(--base-rule);display:flex;flex-direction:column}
.week-sub{text-transform:uppercase;font-weight:800;letter-spacing:.02em;font-size:.6rem;color:var(--base-quiet)}
.week-led{border-radius:50%;background:#d4d6e6;height:7px;width:7px}
.week-block.ticked{background:var(--base-pinktint-200);border-color:var(--base-pink)}
.week-block.ticked .week-sub{color:var(--base-pink-600)}
.week-block.ticked .week-led{box-shadow:0 0 0 3px rgba(143,200,171,.32);background:var(--base-success)}
.week-items{list-style:none;display:flex;padding:0;margin:0;gap:12px;flex-direction:column}
.week-items li{gap:11px;display:flex;align-items:center}
.week-sym{width:34px;background:linear-gradient(135deg,var(--base-pink),var(--base-red));place-items:center;display:grid;height:34px;color:#fffeff;border-radius:50%;flex:none}
.week-sym svg{width:16px;height:16px}
.week-text{flex-direction:column;min-width:0;line-height:1.2;display:flex}
.week-text strong{letter-spacing:.05em;font-size:.66rem;color:var(--base-quiet);font-weight:800;text-transform:uppercase}
.week-text span{color:var(--base-fg);font-size:.92rem;font-weight:700}
@media(max-width:480px){.picks-grid{gap:8px}.picks-part{padding:11px 9px}.picks-part li{font-size:.78rem;gap:7px}.picks-top{font-size:.74rem;gap:5px}.picks-sym{width:26px;height:26px}.picks-sym svg{width:13px;height:13px}.picks-title{font-size:.88rem}}

.caption{border:1px solid var(--base-rule-soft);box-shadow:var(--base-shadow-sm);text-align:center;margin-bottom:14px;background:var(--base-surface-x);border-radius:var(--base-rad-sm);padding:16px 18px}
.caption-title{color:var(--base-fg);font-family:var(--base-font-head);line-height:1.1;margin:0;font-weight:800;font-size:1.6rem}
.caption-sub{flex-wrap:wrap;gap:4px 10px;color:var(--base-fg-soft);justify-content:center;display:flex;margin:6px 0 0;font-size:.98rem;align-items:center}
.caption-sub span,.caption-sub a{gap:4px;display:inline-flex;align-items:center}
.caption-sub a{color:var(--base-pink-600);text-decoration:none}
.caption-sub a:hover{text-decoration:underline}
.caption-sub svg{width:14px;height:14px;color:var(--base-pink)}
.person-part .press-full{margin-top:14px}


.widget-window{height:58px;opacity:0;transform-origin:center bottom;right:16px;width:58px;transition:opacity .3s ease;border-radius:50%;position:fixed;bottom:86px;animation:pulsate 2.8s ease-in-out infinite;z-index:84;pointer-events:none}
.widget-window::after{border-radius:50%;inset:0;content:"";position:absolute;animation:swing 2.2s ease-out infinite;pointer-events:none}
@keyframes pulsate{0%,78%,100%{transform:rotate(0) translate3d(0,0,0)}80%{transform:rotate(-9deg) translate3d(-4px,0,0)}83%{transform:rotate(8deg) translate3d(4px,0,0)}86%{transform:rotate(-6deg) translate3d(-3px,0,0)}89%{transform:rotate(4deg) translate3d(2px,0,0)}92%{transform:rotate(-2deg) translate3d(-1px,0,0)}95%{transform:rotate(1deg) translate3d(0,0,0)}}
@keyframes swing{0%{box-shadow:0 0 0 0 rgba(238,79,148,.48)}70%,100%{box-shadow:0 0 0 16px rgba(238,79,148,.02)}}
.entry-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.entry{border-radius:var(--base-rad-sm);border:1.5px solid var(--base-rule);padding:13px 16px;color:var(--base-fg);font-family:inherit;transition:border-color .16s,box-shadow .16s;background:var(--base-surface-soft);font-size:1rem;width:100%}
.entry:focus{outline:none;border-color:var(--base-pink);box-shadow:0 0 0 3px rgba(238,79,148,.14)}
textarea.entry{min-height:140px;resize:vertical}


.dock{pointer-events:none;justify-content:center;position:fixed;z-index:80;padding:0 12px;left:0;display:flex;right:0;bottom:14px}
.dock-in{box-shadow:0 14px 40px -10px rgba(1,0,0,.48);border-radius:22px;backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);pointer-events:auto;max-width:calc(100vw - 24px);padding:6px 12px;gap:7px;border:1px solid rgba(255,254,255,.1);align-items:center;display:flex;background:rgba(21,16,28,.85)}
.dock-block{flex-direction:column;padding:5px 7px;position:relative;gap:3px;justify-content:center;font-size:.6rem;text-decoration:none;transition:color .15s ease,background .15s ease;min-width:50px;align-items:center;font-weight:700;border-radius:13px;display:flex;color:rgba(255,254,255,.76)}
.dock-block:hover{color:#fffeff;background:rgba(255,254,255,.1)}
.dock-block svg{height:21px;width:21px}
.dock-tally{height:15px;border-radius:var(--base-rad-pill);background:var(--base-love);top:-2px;line-height:15px;color:#fffeff;position:absolute;margin-left:2px;left:50%;border:2px solid rgba(21,16,28,.96);min-width:15px;text-align:center;padding:0 4px;font-size:.56rem;font-weight:800}
.dock-block-shut{pointer-events:none;opacity:.38}
.dock-block span{white-space:nowrap}
.dock-deal{text-decoration:none;font-size:.6rem;font-weight:800;gap:3px;align-items:center;display:flex;flex-direction:column;margin:0 2px;color:#fffeff}
.dock-deal-in{place-items:center;border-radius:50%;border:3px solid rgba(21,16,28,.96);display:grid;background:linear-gradient(135deg,var(--base-orange),var(--base-red) 55%,var(--base-pink));width:54px;margin-top:-22px;height:54px;overflow:hidden;box-shadow:0 8px 20px -5px rgba(252,75,99,.87)}
.dock-deal-in img{height:100%;object-fit:cover;width:100%}
.dock-deal-in svg{width:24px;height:24px;color:#fffeff}
.credits{margin-top:34px;font-size:.86rem;color:var(--base-footer-soft);border-top:1px solid var(--base-footer-ring);padding-top:22px}
.location-box{box-shadow:var(--base-shadow-md);overflow:hidden;border-radius:var(--base-rad-lg);aspect-ratio:4/3;position:relative;background:var(--base-mauve);border:1px solid var(--base-rule-soft)}
.location-box.location-async{cursor:pointer}
.location-ghost{place-items:center;gap:10px;inset:0;display:grid;padding:20px;text-align:center;position:absolute;background:linear-gradient(160deg,var(--base-mauve-x),var(--base-surface-x))}
.location-ghost p{font-weight:700;color:var(--base-fg)}
.location-marker{color:var(--base-red);filter:drop-shadow(0 10px 12px rgba(252,75,99,.48))}
.location-marker svg{width:40px;height:40px;stroke:none;fill:currentColor}
.location-box iframe{border:0;width:100%;position:absolute;inset:0;height:100%}
.location-box.is-on .location-ghost{display:none}

.person-view .person-view-dot{top:12px;left:12px;right:auto}
.person-aside .intro{margin-top:18px}

.ghost{text-align:center;padding-block:clamp(60px,10vw,140px)}
.ghost-rank{font-family:var(--base-font-head);font-weight:800;line-height:.9;font-size:clamp(6rem,20vw,13rem)}
.ghost-part{display:flex;flex-wrap:wrap;margin-top:30px;justify-content:center;gap:14px}

.page-lead{padding-block:clamp(40px,6vw,80px) 20px}
.page-lead h1{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:800}
.page-lead p{color:var(--base-fg-soft);font-size:1.08rem;margin:16px auto 0}

.blog{display:grid;gap:clamp(28px,4vw,56px);align-items:center;grid-template-columns:1fr 1fr}

.thread-dot{height:22px;padding:0 6px;border-radius:var(--base-rad-pill);background:var(--base-love);box-shadow:var(--base-shadow-sm);display:grid;line-height:1;color:var(--base-inverse);position:absolute;place-items:center;min-width:22px;font-size:.72rem;top:-3px;font-weight:800;border:2px solid var(--base-surface);right:-3px}
.thread-dot[hidden]{display:none}
.widget-window-face{box-shadow:0 12px 26px -8px rgba(1,0,0,.45);border-radius:50%;border:3px solid var(--base-surface);width:100%;object-fit:cover;display:block;height:100%}
.widget-window-led{top:-3px;color:var(--base-inverse);border-radius:50%;height:23px;box-shadow:var(--base-shadow-sm);display:grid;right:-3px;place-items:center;width:23px;position:absolute;border:2px solid var(--base-surface);background:linear-gradient(135deg,var(--base-pink),var(--base-red))}
.widget-window-led svg{width:12px;height:12px}

.form-wrap{max-width:640px}
.form-ghost{position:absolute;width:1px;height:1px;overflow:hidden;left:-9999px}

.form{border-radius:var(--base-rad-lg);box-shadow:var(--base-shadow-md);padding:clamp(24px,3vw,40px);background:var(--base-surface);border:1px solid var(--base-rule-soft)}
.form-block{display:grid;margin-bottom:18px;gap:7px}
.form-block label{font-weight:700;font-size:.92rem}
.path{gap:6px;color:var(--base-quiet);margin-bottom:14px;display:flex;font-size:.86rem;justify-content:flex-start;flex-wrap:wrap}
.path li:not(:last-child)::after{margin-left:6px;color:var(--base-quiet);content:"\00203a"}
.path a{color:var(--base-fg-soft)}
.path:has(+ .head-zone){justify-content:center}


.details-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.bottom-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}
.bottom-id{gap:10px;font-family:var(--base-font-head);margin-bottom:12px;display:flex;font-weight:800;align-items:center;color:var(--base-footer-x);font-size:1.2rem}
.bottom-part>p:not(.bottom-title){font-size:.94rem;color:var(--base-footer-soft);max-width:34ch}
.bottom-title{color:var(--base-footer-x);font-size:1rem;margin-bottom:14px;font-weight:800}
.bottom-menu{gap:10px;display:grid;font-size:.94rem}
.fact{align-items:center;border-radius:var(--base-rad-md);background:var(--base-surface);gap:12px;padding:14px 16px;display:flex;border:1px solid var(--base-rule-soft);box-shadow:var(--base-shadow-sm)}
.fact-sym{display:grid;place-items:center;flex:none;background:var(--base-surface-x);border-radius:12px;color:var(--base-pink);width:40px;height:40px}
.fact-sym svg{height:18px;width:18px}
.fact-text dt{letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;color:var(--base-quiet)}
.fact-text dd{margin:2px 0 0;font-family:var(--base-font-head);font-weight:800;font-size:.98rem}

.site-bottom{background:var(--base-footer-bg);color:var(--base-footer)}
.site-bottom .wrap{padding-block:56px 22px}
.site-bottom a{color:var(--base-footer)}
.site-bottom a:hover{color:var(--base-footer-x)}

.nearby{flex-direction:column;display:flex;gap:32px}
.nearby-part h2{margin-bottom:16px;font-size:1.15rem;font-weight:800;color:var(--base-fg)}
.nearby-menu{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}
.nearby-menu a{font-size:.92rem;box-shadow:var(--base-shadow-sm);padding:13px 16px;justify-content:space-between;color:var(--base-fg);display:flex;background:var(--base-surface);border:1px solid var(--base-rule);align-items:center;font-weight:600;transition:transform .14s,box-shadow .14s,color .14s;gap:10px;border-radius:var(--base-rad-md)}
.nearby-menu a:hover{color:var(--base-pink-600);transform:translateY(-3px);box-shadow:var(--base-shadow-md)}
.nearby-menu a .marker{flex:none;align-items:center;font-size:.82rem;color:var(--base-pink);gap:4px;white-space:nowrap;display:inline-flex;font-weight:700}
.nearby-menu a .marker svg{width:14px;height:14px}

.seek-form{padding:12px;margin:0 auto;display:flex;background:var(--base-surface);gap:12px;border-radius:var(--base-rad-pill);border:1px solid var(--base-rule-soft);box-shadow:var(--base-shadow-md)}
.seek-form .entry{font-size:1.06rem;box-shadow:none;background:transparent;border:none}
.seek-form .entry:focus{box-shadow:none}
.seek-form+.nearby{margin-top:40px}
.form-mention{font-weight:700}
.form-mention-ticked{color:var(--base-success)}
.form-mention-shut{color:var(--base-pink-600)}

@media (max-width:980px){
  
  .wrap{max-width:720px}
  .persons-grid{grid-template-columns:repeat(3,1fr)}
  .person-grid{grid-template-columns:1fr}
  .person-view{width:100%;justify-self:start}
  .person-aside{position:static}
  .blog{grid-template-columns:1fr}
  .bottom-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .core-menu{display:none}
  .hamburger{display:flex;position:fixed;top:18px;right:18px}
}
@media (min-width:861px){
  .aside-mobile,.menu-screen{display:none}
}
@media (max-width:600px){
  :root{--base-block-y:clamp(30px,7vw,48px);--base-gutter:8px}
  
  .head-zone{margin-bottom:10px}
  .block{padding-top:16px}
  .bottom-grid,.entry-row{grid-template-columns:1fr}
  .persons-grid{grid-template-columns:repeat(2,1fr);gap:5px}
  .person-box{border-radius:var(--base-rad-sm)}
  .location-box{border-radius:var(--base-rad-sm)}
  .person-in{padding:16px 10px}
  
  .block-intro{padding-top:8px}
  .block-intro .path{margin-bottom:8px;font-size:.78rem}
  .seek-form{flex-direction:column;border-radius:var(--base-rad-lg)}
  .seek-form .press{width:100%}
  .block-person{padding-top:0}
  .block-person .path{margin-bottom:8px;font-size:.78rem}
  .person-view img{aspect-ratio:1/1;max-height:40vh}
  .hidden{margin-top:8px}
  .hidden-grid{gap:6px}
  .hidden-block{aspect-ratio:1/1}
  .caption{padding:8px 12px;margin-bottom:8px}
  .caption-title{font-size:1.2rem}
  .caption-sub{font-size:.85rem;margin-top:3px}
  .person-part .press-full{margin-top:8px}
  .person-grid{margin-top:0}
  .person-aside{display:flex;flex-direction:column;margin-top:8px}
  .person-aside>:first-child{margin-top:4px}
  .dock{bottom:10px;padding:0 8px}
  .dock-in{max-width:calc(100vw - 16px);gap:10px;padding:5px 14px}
  .dock-block{min-width:44px;padding:3px 4px;gap:2px;font-size:.54rem}
  .dock-block svg{width:20px;height:20px}
  .dock-star span{max-width:88px;overflow:hidden;text-overflow:ellipsis}
  .dock-deal-in{width:46px;height:46px;margin-top:-16px}
  .dock-deal-in svg{width:22px;height:22px}
  .details-facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .fact{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .fact-sym{width:34px;height:34px}
  .fact-text{min-width:0}
  .fact-text dd{font-size:.92rem;overflow-wrap:anywhere}
}



.bye-window{display:none;position:fixed;backdrop-filter:blur(3px);inset:0;align-items:center;background:var(--base-overlay);-webkit-backdrop-filter:blur(3px);justify-content:center;z-index:1200;padding:20px}
.bye-window.is-on{display:flex}
.bye-window-box{overflow:hidden;animation:lull .34s cubic-bezier(.175,.885,.32,1.275);color:var(--base-fg);border-radius:var(--base-rad-xl);width:100%;max-width:400px;background:var(--base-surface);box-shadow:var(--base-shadow-lg);position:relative}
@keyframes lull{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
.bye-window-top{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--base-orange),var(--base-red) 52%,var(--base-pink));height:92px}
.bye-window-top::after{width:62%;right:-18%;border-radius:50%;content:"";border:18px solid rgba(255,254,255,.13);top:-70%;position:absolute;height:220%}
.bye-window-in{padding:0 clamp(24px,5vw,34px) clamp(24px,5vw,30px);text-align:center}
.bye-window-face{margin:-44px auto 0;width:88px;position:relative;height:88px}
.bye-window-face img{height:100%;object-fit:cover;display:block;width:100%;border-radius:50%;box-shadow:var(--base-shadow-md);border:4px solid var(--base-surface)}
.bye-window-face::before{animation:breathe 2.2s ease-out infinite;border-radius:50%;pointer-events:none;content:"";position:absolute;inset:-5px}
@keyframes breathe{0%{box-shadow:0 0 0 0 rgba(238,79,148,.48)}70%,100%{box-shadow:0 0 0 13px rgba(238,79,148,.02)}}
.bye-window-led{right:5px;position:absolute;bottom:5px;border-radius:50%;width:17px;height:17px;background:var(--base-success);border:3px solid var(--base-surface)}
.bye-window-overline{letter-spacing:.1em;color:var(--base-pink-600);margin:14px 0 0;font-weight:800;text-transform:uppercase;font-size:.73rem}
.bye-window-title{margin:7px 0 0;font-size:clamp(1.3rem,3.6vw,1.62rem);line-height:1.16}
.bye-window-addr{margin:9px 0 0;font-weight:700;color:var(--base-quiet);font-size:.9rem}
.bye-window-text{font-size:.95rem;margin:11px 0 0;color:var(--base-fg-soft)}
.bye-window-deal{transition:transform .16s ease,box-shadow .16s ease;font-family:var(--base-font-head);border-radius:var(--base-rad-btn);display:inline-flex;box-shadow:var(--base-shadow-md);padding:14px 22px;font-weight:800;background:linear-gradient(135deg,var(--base-orange),var(--base-red) 55%,var(--base-pink));color:var(--base-inverse);width:100%;gap:8px;margin-top:20px;align-items:center;justify-content:center}
.bye-window-deal:hover{box-shadow:var(--base-shadow-lg);transform:translateY(-2px)}
.bye-window-deal svg{width:18px;height:18px}
.bye-window-x{height:34px;box-shadow:var(--base-shadow-sm);top:12px;display:grid;cursor:pointer;border-radius:50%;background:rgba(255,254,255,.88);right:12px;border:0;position:absolute;width:34px;z-index:3;color:var(--base-fg);place-items:center}
.bye-window-x svg{height:15px;width:15px}
.bye-window-pass{color:var(--base-quiet);text-decoration:underline;background:none;margin:11px auto 0;cursor:pointer;border:0;font-size:.83rem}
@media(max-width:640px){.bye-window{display:none!important}}
