.ab-page{background:var(--black);color:var(--white);overflow-x:clip}.ab-page>section{border-top:1px solid var(--divider,#ff1e1e2b);isolation:isolate;padding:130px 6% 70px;position:relative;overflow:hidden}.ab-page .red{color:var(--red)}.ab-page .ab-h2{letter-spacing:-.01em;margin:0 0 26px;font-size:clamp(2.6rem,5.8vw,5.6rem);line-height:.95}.ab-lead{max-width:30ch;margin:0 0 20px;font-size:clamp(1.2rem,1.7vw,1.6rem);line-height:1.45}.ab-text{color:#f5f3eeb8;max-width:58ch;margin:0;font-size:1rem;line-height:1.7}.ab-two{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.ab-page .ab-hero{border-top:0;flex-direction:column;justify-content:center;height:100vh;min-height:560px;padding:0 9.5%;display:flex}.ab-hero-photo{z-index:-2;object-fit:cover;object-position:55% 40%;filter:brightness(.85)saturate(1.1);width:100%;height:100%;position:absolute;inset:0}.ab-hero:before{content:"";z-index:-1;background:linear-gradient(to right, #000000b8 0%, #0000004d 62%, #00000073 100%), linear-gradient(to bottom, #00000073 0%, transparent 24%, transparent 72%, var(--black) 100%);position:absolute;inset:0}.ab-hero-title{font-family:var(--font-display);letter-spacing:-.02em;text-shadow:0 0 40px #000000d9;margin:20px 0 0;font-size:clamp(3.4rem,12vw,12rem);font-weight:400;line-height:.9}.ab-hero-lede{color:#f5f3eee0;text-shadow:0 1px 12px #000000d9;max-width:44ch;margin:26px 0 0;font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.6}.ab-scroll{letter-spacing:.4em;text-indent:.4em;color:#f5f3ee99;justify-items:center;gap:10px;font-size:.6rem;font-weight:700;display:grid;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.ab-scroll:after{content:"";background:linear-gradient(var(--red), transparent);transform-origin:top;width:1px;height:34px;animation:1.8s ease-in-out infinite abScroll}@keyframes abScroll{0%{opacity:1;transform:scaleY(0)}60%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.ab-year{z-index:-1;font-family:var(--font-display);color:#0000;-webkit-text-stroke:1px #ffffff0e;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:clamp(12rem,36vw,36rem);line-height:.8;position:absolute;bottom:-9%;right:-2%}.ab-stats{grid-template-columns:1fr 1fr;gap:26px 32px;margin:0 0 32px;display:grid}.ab-stats dt{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:clamp(3rem,5.4vw,5.2rem);line-height:.9}.ab-stats div:first-child dt{color:var(--red)}.ab-stats dd,.ab-facts dt,.ab-label{letter-spacing:.24em;text-transform:uppercase;font-size:.66rem;font-weight:700}.ab-stats dd{color:#f5f3ee99;margin:6px 0 0}.ab-facts{border-top:1px solid #ffffff1f;margin:0}.ab-facts div{border-bottom:1px solid #ffffff1f;grid-template-columns:104px 1fr;gap:16px;padding:11px 0;display:grid}.ab-facts dt{color:var(--red);padding-top:4px}.ab-facts dd{color:#f5f3eee0;margin:0;font-size:.95rem}.ab-nights-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px 32px;margin-bottom:30px;display:flex}.ab-nights{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.ab-night{aspect-ratio:16/10;color:inherit;border:1px solid #ffffff1f;text-decoration:none;transition:border-color .4s,box-shadow .4s;display:block;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff24}.ab-night img{object-fit:cover;filter:saturate(.85)brightness(.78);width:100%;height:100%;transition:transform .8s cubic-bezier(.2,1,.3,1),filter .6s}.ab-night:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(115deg,#ffffff1f 0%,#ffffff08 22%,#0000 38%),linear-gradient(#00000080 0%,#0000 28% 48%,#000000e6 100%);position:absolute;inset:0}.ab-night-date,.ab-night-no{z-index:2;letter-spacing:.16em;text-shadow:0 1px 2px #000000f2,0 0 10px #000000d9;font-family:Courier New,ui-monospace,monospace;font-size:.7rem;font-weight:700;position:absolute;top:10px}.ab-night-date{color:#ff3b3b;left:12px}.ab-night-no{color:#f5f3eebf;right:12px}.ab-night-title{z-index:2;font-family:var(--font-display);letter-spacing:.03em;text-shadow:0 2px 14px #000000d9;font-size:clamp(1.15rem,1.9vw,1.8rem);font-weight:400;line-height:1;position:absolute;bottom:12px;left:14px;right:14px}.ab-night:hover,.ab-night:focus-visible{border-color:#ff3c3cb3;box-shadow:inset 0 1px #ffffff2e,0 0 26px #ff000038}.ab-night:hover img,.ab-night:focus-visible img{filter:saturate(1.15)brightness();transform:scale(1.06)}.ab-kanji{z-index:-1;writing-mode:vertical-rl;white-space:nowrap;color:#0000;-webkit-text-stroke:1px #ff282821;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:Noto Serif SC,Songti SC,SimSun,serif;font-size:min(19vw,27vh);line-height:1;position:absolute;top:50%;right:1%;transform:translateY(-50%)}.ab-page .ab-giant{letter-spacing:-.01em;margin:0;font-size:clamp(4.2rem,11.5vw,12rem);line-height:.84}.ab-bothways{font-family:var(--font-display);letter-spacing:.05em;align-items:center;gap:14px;margin:30px 0 0;font-size:clamp(1.3rem,2.1vw,2.1rem);display:flex}.ab-bothways:before{content:"⇄";color:var(--red)}.ab-quote{border-left:2px solid var(--red);margin:0;padding-left:26px}.ab-quote p{margin:0 0 18px;font-size:clamp(1.1rem,1.5vw,1.4rem);font-weight:300;line-height:1.55}.ab-quote footer{letter-spacing:.26em;text-transform:uppercase;color:#f5f3eeb3;align-items:center;gap:12px;margin-top:26px;font-size:.7rem;font-weight:700;display:flex}.ab-quote footer:before{content:"";background:var(--red);width:28px;height:1px}.ab-roles{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(28px,5vw,80px);margin-top:30px;display:grid}.ab-role-tabs{justify-items:start;gap:2px;display:grid}.ab-role-tab{cursor:pointer;font-family:var(--font-display);letter-spacing:.03em;color:#0000;-webkit-text-stroke:1px #ffffff73;background:0 0;border:0;align-items:center;gap:0;padding:3px 0;font-size:clamp(2.2rem,4.4vw,4.2rem);line-height:1;transition:color .35s,gap .45s cubic-bezier(.16,1,.3,1);display:flex}.ab-role-tab:before{content:"";background:var(--red);width:0;height:2px;transition:width .45s cubic-bezier(.16,1,.3,1);box-shadow:0 0 10px #ff0000b3}.ab-role-tab.is-active{color:var(--white);-webkit-text-stroke-color:transparent;gap:16px}.ab-role-tab.is-active:before{width:42px}.ab-role-tab:focus-visible{outline:2px solid var(--red);outline-offset:6px}.ab-role-panels{display:grid}.ab-role-panel{border:1px solid #ffffff1f;border-left:2px solid var(--red);opacity:0;visibility:hidden;background:linear-gradient(135deg,#ffffff0f,#ffffff04);grid-area:1/1;padding:32px 36px;transition:opacity .4s,transform .5s cubic-bezier(.16,1,.3,1),visibility 0s .4s;transform:translateY(14px);box-shadow:inset 0 1px #ffffff24}.ab-role-panel.is-active{opacity:1;visibility:visible;transition-delay:0s;transform:none}.ab-role-panel h3{font-family:var(--font-display);letter-spacing:.22em;color:var(--red);margin:0 0 18px;font-size:1.15rem;font-weight:400}.ab-label{color:#f5f3ee8c;margin-bottom:8px;display:block}.ab-role-goal{margin:0 0 24px;font-size:clamp(1.1rem,1.5vw,1.4rem);line-height:1.5}.ab-chips{flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0;list-style:none;display:flex}.ab-chips li{letter-spacing:.16em;background:#ff000014;border:1px solid #ff3c3c80;padding:9px 14px;font-size:.7rem;font-weight:700}.ab-role-link{border-bottom:1px solid var(--red);color:var(--white);letter-spacing:.2em;padding-bottom:4px;font-size:.78rem;font-weight:700;text-decoration:none}.ab-role-link:hover{color:#ff5a5a}.ab-next{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px);margin:14px 0 0;padding:0;list-style:none;display:grid}.ab-next li{border-top:1px solid #ff3c3c73;padding-top:20px}.ab-next-no{font-family:var(--font-display);color:#0000;-webkit-text-stroke:1px var(--red);font-size:3.2rem;line-height:1}.ab-next h3{font-family:var(--font-display);letter-spacing:.04em;margin:10px 0 8px;font-size:1.7rem;font-weight:400}.ab-closing{border-left:2px solid var(--red);max-width:60ch;margin:40px 0 0;padding-left:26px;font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.6}.ab-page .ab-cta{text-align:center;background:linear-gradient(to bottom, var(--black) 0%, #00000059 30%, #0000008c 70%, var(--black) 100%), url(/about-cta.jpg) center / cover no-repeat;align-items:center}.ab-cta-text{opacity:.85;margin:0 0 36px;font-size:1.15rem}.ab-cta-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.ab-signoff{letter-spacing:.24em;color:#f5f3ee99;margin:44px 0 0;font-size:.78rem;font-weight:700}@media (width<=900px){.ab-page>section{padding:96px 20px 56px}.ab-page .ab-hero{height:auto;min-height:100svh;padding:0 20px}.ab-hero-photo{object-position:36% 50%}.ab-two,.ab-roles,.ab-next{grid-template-columns:1fr}.ab-nights{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ab-kanji{opacity:.6}.ab-role-tabs{display:none}.ab-role-panels{scroll-snap-type:x mandatory;scrollbar-width:none;gap:12px;margin:0 -20px;padding:0 20px 6px;scroll-padding-inline:20px;display:flex;overflow-x:auto}.ab-role-panels::-webkit-scrollbar{display:none}.ab-role-panel{scroll-snap-align:start;opacity:1;visibility:visible;flex:0 0 84%;padding:24px 22px;transform:none}.ab-role-panel h3{letter-spacing:.06em;color:var(--white);font-size:1.9rem}}@media (prefers-reduced-motion:reduce){.ab-scroll:after{animation:none}.ab-night img,.ab-role-panel,.ab-role-tab,.ab-role-tab:before{transition:none}}.ab-sv .ab-text{max-width:720px;margin-bottom:30px}
