@import url('https://fonts.googleapis.com/css2?family=Mochiy+Pop+One&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&family=Chakra+Petch:wght@500;600;700&display=swap');
@import url('/schedule.css');
@import url('/rules.css');
@import url('/footer.css');

:root{--ink:#222431;--muted:#55596e;--paper:#fff9fe;--pink:#ff9bcb;--pink-deep:#c52979;--purple:#a8acff;--purple-deep:#6461c8;--blue:#65c8ff;--yellow:#ffd633;--pop:'Mochiy Pop One',sans-serif;--body:'Zen Kaku Gothic New',sans-serif;--en:'Chakra Petch',sans-serif;--outline:2px solid var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:500 1rem/1.85 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin-top:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto;display:block}::selection{background:var(--pink);color:var(--ink)}:focus-visible{outline:3px solid #6553d7;outline-offset:5px}button:focus-visible{outline-offset:4px}.container{width:min(1080px,calc(100% - 48px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;z-index:1000;padding:10px 20px;background:var(--ink);color:white;transform:translateY(-160%);border-radius:8px}.skip-link:focus{transform:none}.en{font-family:var(--en);font-weight:700}.eyebrow{font:700 .8125rem/1.5 var(--en);letter-spacing:.23em;color:var(--purple-deep)}
.site-header{line-height:1.85;position:fixed;inset:0 0 auto;z-index:60;background:linear-gradient(180deg,rgba(255,249,254,.94),rgba(255,249,254,0));transition:background .25s,box-shadow .25s}.site-header.scrolled,.site-header.inner-header{background:rgba(255,249,254,.96);backdrop-filter:blur(12px);box-shadow:0 1px 0 #22243120}.header-inner{width:min(1240px,calc(100% - 48px));min-height:86px;margin:auto;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap}.brand-icon{width:44px;height:44px;object-fit:contain;flex:none}.brand-title{font:400 1.25rem/1.4 var(--pop);letter-spacing:.025em}.brand-caption{display:block;font:700 .625rem/1.8 var(--en);letter-spacing:.18em;color:var(--muted)}.desktop-nav{display:flex;align-items:center;gap:24px;margin-left:auto;font-size:.875rem;font-weight:900}.desktop-nav a{padding:8px 0;border-bottom:2px solid transparent;transition:border-color .2s}.desktop-nav a:hover{border-color:var(--pink)}.desktop-nav small,.mobile-nav small{font:700 .75rem var(--en);color:var(--purple-deep);margin-right:5px}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:9px 23px;background:var(--ink);color:white;border:var(--outline);border-radius:999px;font-size:.875rem;font-weight:900;line-height:1.5;transition:background .2s,transform .2s,box-shadow .2s;white-space:normal;text-align:center}.button:hover{background:#414357;transform:translateY(-2px)}.button.pink{background:var(--pink);color:var(--ink);box-shadow:4px 4px 0 var(--ink)}.button.pink:hover{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.button.outline{background:transparent;color:inherit;border-color:currentColor}.button.outline:hover{background:#ffffff14}.play-icon{font-size:.875rem;color:var(--pink)}.header-cta{flex-shrink:0}.menu-toggle{display:none;flex-shrink:0;border:var(--outline);background:white;border-radius:50%;width:44px;height:44px;align-items:center;justify-content:center;padding:10px}.menu-lines{display:grid;gap:5px;width:18px}.menu-lines i{height:2px;background:var(--ink);display:block}.mobile-nav{margin:0 24px 20px;padding:8px 20px 18px;background:var(--paper);border:var(--outline);border-radius:16px;box-shadow:4px 4px 0 var(--purple)}.mobile-nav a{display:block;padding:12px 4px;border-bottom:1px solid #22243118;font-weight:900}.mobile-nav[hidden]{display:none}
.hero{position:relative;min-height:600px;height:clamp(600px,56.25vw,860px);isolation:isolate;overflow:hidden}.hero-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:42% 22%}.hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,var(--paper) 0%,#fff9fed1 12%,#fff9fe00 46%)}.hero-bottom{position:absolute;inset:auto 0 30px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.hero h1{margin:0 0 8px}.hero-logo{width:clamp(240px,28vw,380px);filter:drop-shadow(0 4px 12px #22243120)}.hero-date{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px;padding:5px 15px;background:white;border:var(--outline);border-radius:999px;box-shadow:3px 3px 0 var(--pink);font:700 .875rem/1.5 var(--en)}.hero-date span{font:.8125rem var(--body);font-weight:900}.countdown-caption{font:700 .75rem var(--en);letter-spacing:.19em;color:#5d57b5;margin:0 0 9px}.countdown{background:white;border:var(--outline);border-radius:14px;display:flex;align-items:center;padding:12px 14px;box-shadow:4px 4px 0 #a8acff50;min-height:82px}.countdown-unit{min-width:70px;text-align:center;border-right:1px solid #e6e4f3}.countdown-unit:last-child{border:0}.countdown-unit b{display:block;font:700 2rem/1.2 var(--en);font-variant-numeric:tabular-nums}.countdown-unit span{display:block;font:700 .625rem/1.8 var(--en);letter-spacing:.13em;color:#65608e}.countdown-note{margin:6px 0 0;text-align:right;font-size:.75rem;color:var(--muted)}
.section{padding:82px 0}.section-title{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap}.section-title h2{font:400 clamp(1.9rem,3.8vw,3rem)/1.6 var(--pop);color:white;text-shadow:2px 0 var(--ink),-2px 0 var(--ink),0 2px var(--ink),0 -2px var(--ink),2px 2px var(--ink),-2px 2px var(--ink),2px -2px var(--ink),-2px -2px var(--ink),6px 6px 0 var(--purple);margin:0}.section-title .eyebrow{margin:0}.section-rule{height:4px;background:repeating-linear-gradient(90deg,var(--ink) 0 24px,var(--pink) 24px 48px);margin:19px 0 36px;border-radius:2px}.section.purple{background:#f7f3ff;position:relative;isolation:isolate}.section.purple::before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ece2fa88 1px,transparent 1px),linear-gradient(90deg,#ece2fa88 1px,transparent 1px);background-size:52px 52px}.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start}.intro-copy{font-size:1.0625rem}.intro-copy p{margin:0 0 14px}.marker{background:linear-gradient(transparent 64%,#ffd9ec 64%)}.stats{display:grid;grid-template-columns:repeat(3,1fr);background:white;border:3px solid var(--ink);border-radius:18px;box-shadow:6px 6px 0 #e3e5ff;overflow:hidden}.stat{padding:27px 8px;text-align:center;border-right:2px dashed #d9cbff}.stat:last-child{border:0}.stat strong{display:block;font:700 2.25rem/1.3 var(--en);color:var(--pink-deep)}.stat:nth-child(2) strong{color:var(--purple-deep)}.stat:nth-child(3) strong{color:#137eb4}.stat span{font-weight:900;font-size:.875rem}.respect{margin-top:54px;background:white;border:3px solid var(--ink);border-radius:20px;padding:36px 44px;box-shadow:6px 6px 0 #ffd9ec}.respect .eyebrow{color:var(--pink-deep)}.respect h3{font:400 clamp(1.45rem,2.8vw,2rem)/1.7 var(--pop);margin:15px 0 0}.respect-summary{margin:18px 0 0;color:var(--muted)}
.inner-main{padding-top:150px;padding-bottom:90px;min-height:65vh}.breadcrumbs{font-size:.875rem;color:var(--muted);margin:0 0 30px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.inner-main h1{font:400 clamp(1.65rem,4vw,2.5rem)/1.7 var(--pop);margin-bottom:35px}.prose{max-width:800px}.prose h2{font-size:1.25rem;margin:30px 0 12px}.prose a{text-decoration:underline;text-underline-offset:4px}.prose p{margin-bottom:20px}
.respect-list{list-style:none;padding:25px 0;margin:27px 0 0;border-top:2px dashed #d9cbff;border-bottom:2px dashed #d9cbff;display:grid;grid-template-columns:1fr 1fr;gap:18px 35px}.respect-list li{display:grid;grid-template-columns:28px 1fr;gap:10px;font-size:.9375rem;line-height:1.9}.respect-list .en{color:var(--pink-deep);font-size:.875rem;padding-top:3px}.respect-list li:nth-child(even) .en{color:var(--purple-deep)}.respect-ending{text-align:center;font-weight:900;font-size:1.125rem;margin:25px 0 0}.stream-section{color:white;background:var(--ink);position:relative;isolation:isolate}.stream-section::before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#a8acff10 1px,transparent 1px),linear-gradient(90deg,#a8acff10 1px,transparent 1px);background-size:52px 52px}.stream-section .section-title h2{text-shadow:2px 0 #6461c8,-2px 0 #6461c8,0 2px #6461c8,0 -2px #6461c8,2px 2px #6461c8,-2px 2px #6461c8,2px -2px #6461c8,-2px -2px #6461c8,6px 6px 0 #ff9bcb66}.stream-section .eyebrow{color:var(--purple)}.stream-section .section-rule{background:repeating-linear-gradient(90deg,var(--pink) 0 24px,var(--purple) 24px 48px)}.stream-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.stream-copy h3{font:400 clamp(1.35rem,2.5vw,1.875rem)/1.9 var(--pop);margin:0 0 23px}.stream-copy p{color:#e0dfef;font-size:1rem}.text-link{font-weight:900;border-bottom:2px solid var(--pink);padding-bottom:4px;display:inline-block}.stream-card{padding:30px 36px;background:var(--paper);color:var(--ink);border:2px solid var(--ink);border-radius:20px;box-shadow:7px 7px 0 var(--purple)}.stream-card .eyebrow{color:var(--purple-deep);margin:0 0 18px}.stream-service{font-size:1.0625rem;color:var(--purple-deep);margin-bottom:0}.stream-card h3{font:700 clamp(1.5rem,3vw,2.3rem)/1.4 var(--en);margin:0 0 20px;overflow-wrap:anywhere}.stream-dates{border-top:2px dashed #d9cbff;padding-top:18px}.stream-dates span{display:block;font-size:.9375rem}.stream-dates .en{letter-spacing:.05em;font-size:1rem}.stream-card .button{width:100%}.external-note{font-size:.8125rem;color:var(--muted);text-align:center;margin:15px 0 0}

@media(max-width:900px){.stream-grid{gap:35px}.stream-card{padding:28px}}
@media(min-width:1600px){.hero-bottom{bottom:42px}}
@media(max-width:1020px){.desktop-nav{gap:15px}.header-inner{gap:20px}.brand-caption{font-size:.5625rem}.hero-bottom{bottom:28px}.countdown-unit{min-width:60px}.about-grid{gap:30px}}
@media(max-width:820px){.brand-icon{width:34px;height:34px}html{scroll-padding-top:92px}.header-inner{min-height:72px;width:calc(100% - 32px);gap:12px}.desktop-nav{display:none}.header-cta{margin-left:auto;padding:8px 15px;min-height:42px;font-size:.8125rem}.menu-toggle{display:flex}.brand-caption{display:none}.brand-title{font-size:1.125rem}.brand{gap:9px}.hero{height:680px;min-height:0}.hero-art{object-position:40% 0}.hero-bottom{align-items:flex-start;gap:18px;bottom:22px}.hero-logo{width:280px}.hero-date{font-size:.8125rem;gap:7px}.hero-date span{font-size:.75rem}.countdown-unit{min-width:48px}.countdown-unit b{font-size:1.7rem}.countdown{padding:10px 8px}.countdown-caption{font-size:.625rem;letter-spacing:.13em}.about-grid{grid-template-columns:1fr}.stats{max-width:550px}.section{padding:64px 0}.respect{padding:28px}}
@media(max-width:600px){.container{width:calc(100% - 36px)}.hero{height:700px}.hero-art{height:540px;object-position:40% 0}.hero::after{background:linear-gradient(0deg,var(--paper) 0%,var(--paper) 20%,#fff9fe00 60%)}.hero-bottom{flex-direction:column;align-items:center;gap:21px;bottom:25px;text-align:center}.hero-logo{width:270px;margin:auto}.hero-date{font-size:.8125rem}.countdown-caption{font-size:.75rem;letter-spacing:.14em;text-align:center}.countdown{padding:10px 16px}.countdown-unit{min-width:62px}.countdown-note{text-align:center}.countdown-unit b{font-size:1.8rem}.section-title{gap:12px}.section-title .eyebrow{font-size:.75rem;letter-spacing:.18em}.section-rule{margin-bottom:28px}.section{padding:50px 0}.respect{margin-top:34px;padding:25px 22px}.respect h3{font-size:1.3rem}.inner-main{padding-top:115px}.inner-main h1{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(min-width:821px){.hero{height:clamp(600px,56.25vw,100svh)}}

@media(max-width:360px){.brand-icon{width:28px;height:28px}.header-inner{gap:6px}.brand{gap:6px}.brand-title{font-size:.875rem}.header-cta{padding:8px 7px;font-size:.75rem;gap:6px}.header-cta .play-icon{font-size:.75rem}.countdown-unit{min-width:58px}.hero-date{padding-inline:10px;gap:6px}}

@media(max-width:650px){.respect-list{grid-template-columns:1fr;gap:14px;padding:20px 0}.respect-ending{font-size:1rem}.stream-grid{grid-template-columns:1fr;gap:30px}.stream-copy h3{font-size:1.5rem}.stream-card{padding:28px}}

/* Keep the artwork drifting independently of the readable hero content. */
.hero-art {
  --hero-sway-x: 18px;
  --hero-sway-y: 7px;
  --hero-sway-tilt: .6deg;
  transform-origin: 50% 55%;
  animation: hero-art-sway 14s ease-in-out -3.5s infinite;
  will-change: transform;
}

.hero[data-motion-paused] .hero-art {
  animation-play-state: paused;
  will-change: auto;
}

.hero-logo,
.hero-date,
.countdown-caption,
.countdown,
.countdown-note {
  animation: hero-content-enter .75s cubic-bezier(.22, 1, .36, 1) backwards;
}

.hero-date { animation-delay: .1s; }
.countdown-caption { animation-delay: .16s; }
.countdown { animation-delay: .22s; }
.countdown-note { animation-delay: .28s; }

@keyframes hero-art-sway {
  0%, 100% {
    transform: translate3d(calc(-1 * var(--hero-sway-x)), var(--hero-sway-y), 0) rotate(calc(-1 * var(--hero-sway-tilt))) scale(1.025);
  }
  50% {
    transform: translate3d(var(--hero-sway-x), calc(-1 * var(--hero-sway-y)), 0) rotate(var(--hero-sway-tilt)) scale(1.025);
  }
}

@keyframes hero-content-enter {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 820px) {
  .hero-art {
    --hero-sway-x: 10px;
    --hero-sway-y: 4px;
    --hero-sway-tilt: .4deg;
  }
}

@media (max-width: 600px) {
  .hero-art {
    --hero-sway-x: 6px;
    --hero-sway-y: 3px;
    --hero-sway-tilt: .3deg;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-art { will-change: auto; }
}
