:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--yellow:#ffd51f;--yellow-soft:#ffe780;--ink:#071733;--navy:#08224a;--navy-deep:#03142b;--blue:#17497e;--sky:#a6d2f2;--red:#ee2448;--white:#fff;--muted:#b8c8dd;--panel:#133a65ad;--line:#ffffff2e;--shadow:0 24px 64px #00000042;--radius:8px;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,YuGothic,Noto Sans JP,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--navy-deep);color:var(--white);margin:0;font-size:16px;line-height:1.7}body::selection{background:var(--yellow);color:var(--ink)}a{color:inherit;text-decoration:none}button,input{font:inherit}img{max-width:100%;display:block}.skip-link{z-index:100;background:var(--ink);color:var(--white);padding:8px 12px;position:fixed;top:12px;left:16px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:20;width:min(1180px,100% - 36px);color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;gap:24px;margin:18px auto 0;padding:0;transition:color .18s,background .18s,box-shadow .18s,padding .18s;display:grid;position:fixed;inset:0 0 auto}.site-header.is-scrolled{border-radius:var(--radius);width:min(1180px,100% - 24px);color:var(--white);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#03142be0;border:1px solid #fff3;padding:10px 14px}.brand{color:currentColor;letter-spacing:0;text-transform:uppercase;gap:0;font-size:clamp(1.05rem,1.6vw,1.62rem);font-weight:950;line-height:.96;display:inline-grid}.brand span:first-child:after,.brand span:nth-child(4):after{content:"";background:radial-gradient(circle at 40% 40%, #fff 0 10%, transparent 12%), var(--yellow);vertical-align:.02em;border-radius:50%;width:.52em;height:.52em;margin-left:.05em;display:inline-block}.site-nav{white-space:nowrap;justify-content:center;gap:clamp(14px,2.5vw,34px);font-size:.86rem;font-weight:800;display:flex}.site-nav a{padding:8px 0;position:relative}.site-nav a:after{content:"";transform-origin:0;background:currentColor;height:2px;transition:transform .18s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a:focus-visible:after{transform:scaleX(1)}.header-actions{align-items:center;gap:14px;display:flex}.lang-button,.ticket-button,.primary-button,.outline-button,.outline-link,.filter-tabs button,.candidate-card button{cursor:pointer;border:0;border-radius:999px;min-height:42px;font-weight:900}.lang-button{color:currentColor;background:0 0;border:1px solid #0717335c;place-items:center;min-width:58px;display:inline-grid}.ticket-button,.primary-button{background:var(--yellow);color:var(--ink);justify-content:center;align-items:center;gap:8px;padding:0 22px;display:inline-flex;box-shadow:0 12px 30px #e89e003d}.ticket-button:after,.outline-link:after{content:">";font-weight:900}.menu-toggle{display:none}.hero{min-height:min(760px,86svh);color:var(--ink);background:radial-gradient(circle at 55% 32%,#ffffff7a,#0000 18%),linear-gradient(120deg,#ffdd2d 0%,#ffd020 58%,#ffe581 100%);position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;opacity:.66;background-image:radial-gradient(circle,#ffffffe6 0 2px,#0000 2.6px),radial-gradient(circle,#ffffff9e 0 1px,#0000 1.8px);background-position:28px 26px,10px 8px;background-size:128px 92px,78px 72px;position:absolute;inset:0}.hero-stars{aspect-ratio:1;opacity:.7;background:radial-gradient(circle,#ffd61fd9 0 5px,#0000 6px) 0 0/44px 44px;border-radius:50%;width:38%;position:absolute;inset:auto auto 19% -8%;-webkit-mask-image:linear-gradient(120deg,#0000 0 34%,#000 35% 62%,#0000 63%);mask-image:linear-gradient(120deg,#0000 0 34%,#000 35% 62%,#0000 63%)}.hero-inner{z-index:1;width:min(1240px,100% - 36px);min-height:inherit;grid-template-columns:minmax(390px,.8fr) minmax(500px,1.15fr) minmax(170px,.35fr);align-items:center;gap:26px;margin:0 auto;padding:112px 0 128px;display:grid;position:relative}.hero-copy{max-width:500px}.eyebrow,.section-kicker{color:var(--yellow);text-transform:uppercase;margin:0 0 8px;font-size:.82rem;font-weight:950;line-height:1.2}.hero .eyebrow{color:var(--ink)}.hero h1{letter-spacing:0;margin:0 0 22px;font-size:clamp(2.05rem,3.6vw,2.9rem);line-height:1.22}.hero h1 span{white-space:nowrap;display:block}.hero p{max-width:430px;margin:0;font-weight:800}.hero-social{gap:14px;margin-top:30px;display:flex}.hero-social a{aspect-ratio:1;background:var(--white);width:44px;color:var(--ink);border-radius:50%;place-items:center;font-weight:950;display:grid}.hero-scene{align-self:end;margin-bottom:18px;position:relative}.hero-scene img{object-fit:contain;filter:saturate(1.08)contrast(1.03);mix-blend-mode:multiply;border-radius:0;width:min(660px,100%);-webkit-mask-image:radial-gradient(76% 78% at 50% 58%,#000 0 58%,#000000e0 72%,#0000 100%);mask-image:radial-gradient(76% 78% at 50% 58%,#000 0 58%,#000000e0 72%,#0000 100%)}.hero-scene:before{content:"";filter:blur(26px);background:#ffffff70;border-radius:50%;height:20%;display:none;position:absolute;inset:-8% 12% auto}.date-card{align-self:center;justify-items:start;gap:10px;display:grid}.date-card .year{font-weight:950}.date-card strong{letter-spacing:0;font-size:clamp(2.5rem,5vw,4.7rem);line-height:.95}.date-card small{font-size:.24em}.date-line{background:var(--ink);width:28px;height:2px}.date-card p{max-width:220px;font-weight:900}.date-card a{background:var(--yellow);min-height:46px;color:var(--ink);border-radius:999px;align-items:center;padding:0 22px;font-weight:950;display:inline-flex}.hero-wave{z-index:2;background:var(--navy-deep);border-radius:50% 50% 0 0/42% 42% 0 0;height:190px;position:absolute;bottom:-92px;left:-5%;right:-5%}.hero-wave:after{content:"";aspect-ratio:1.6;background:var(--yellow);border-radius:70% 40%;width:min(190px,20vw);position:absolute;bottom:24px;right:6%}.moon-dot{aspect-ratio:1;background:var(--yellow);border-radius:50%;width:7px;position:absolute;top:62px;left:48%}.moon-dot:nth-child(2){background:#fff6;left:51%}.moon-dot:nth-child(3){background:#ffffff42;left:54%}.night-shell{z-index:3;background:radial-gradient(circle at 12% 20%, #2e74b259, transparent 26%), linear-gradient(180deg, var(--navy-deep) 0%, #08204a 55%, #03142b 100%);padding:90px 0 70px;position:relative}.section-grid,.stacked-section,.split-section,.vote-section,.access-section{width:min(1060px,100% - 36px);margin:0 auto 84px}.section-grid{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:52px;display:grid}.section-lead h2,.section-heading h2,.split-section h2,.vote-copy h2,.access-section h2{color:var(--white);margin:0 0 8px;font-size:clamp(1.45rem,3vw,2rem);line-height:1.2}.section-lead p,.section-heading p,.split-section p,.vote-copy p,.access-section p,.content-card p,.offer-card p,.mini-list p,.candidate-card p,.news-strip h3{color:var(--muted)}.section-lead p{margin:0 0 20px;font-size:.94rem}.outline-link,.outline-button{min-height:38px;color:var(--white);background:0 0;border:1px solid #ffffff4d;justify-content:center;align-items:center;gap:10px;padding:0 16px;font-size:.82rem;display:inline-flex}.card-row,.event-panel,.offer-grid,.news-strip{gap:22px;display:grid}.card-row{grid-template-columns:repeat(4,minmax(0,1fr))}.event-panel{border-radius:var(--radius);background:var(--panel);grid-template-columns:repeat(4,minmax(0,1fr));padding:18px}.content-card{min-width:0;position:relative}.content-card .media{aspect-ratio:1.34;border-radius:var(--radius);background:#12345f;position:relative;overflow:hidden}.content-card img{object-fit:cover;width:100%;height:100%;transition:transform .22s}.content-card:hover img{transform:scale(1.05)}.content-card h3{color:var(--white);margin:11px 0 2px;font-size:.9rem;line-height:1.35}.content-card p{margin:0 0 7px;font-size:.78rem}.card-index,.date-badge,.rank-badge{background:var(--red);min-width:34px;min-height:34px;color:var(--white);border-radius:50%;place-items:center;font-weight:950;line-height:1.05;display:inline-grid}.card-index{border-radius:3px;position:absolute;bottom:8px;left:8px}.date-badge{width:54px;min-height:54px;color:var(--white);background:#88a9cd;font-size:.72rem;position:absolute;top:10px;left:10px}.tag{min-height:22px;color:var(--yellow);background:#ffd51f26;border-radius:999px;align-items:center;padding:0 8px;font-size:.72rem;font-weight:900;display:inline-flex}.section-heading{grid-template-columns:1fr minmax(240px,.88fr);align-items:end;gap:28px;margin-bottom:22px;display:grid}.section-heading p{margin:0;font-size:.92rem}.filter-tabs{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.filter-tabs button{min-height:32px;color:var(--muted);background:0 0;border:1px solid #ffffff38;padding:0 18px;font-size:.78rem}.filter-tabs button.active{border-color:var(--yellow);background:var(--yellow);color:var(--ink)}.offer-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.offer-card{border-radius:var(--radius);background:#183f6dbd;border:1px solid #ffffff14;min-width:0;overflow:hidden}.offer-card.is-hidden{display:none}.offer-card img{aspect-ratio:1.85;object-fit:cover;width:100%}.offer-card div{padding:11px 12px 14px}.offer-card h3{color:var(--white);margin:0;font-size:.86rem}.offer-card p{margin:1px 0 8px;font-size:.78rem}.split-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(240px,.72fr) 1fr;align-items:start;gap:34px;padding:28px;display:grid}.mini-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.mini-list article,.mini-list a{border-radius:var(--radius);background:#ffffff12;padding:18px}.mini-list span{color:var(--yellow);font-weight:950}.mini-list h3{margin:8px 0 6px;font-size:1rem}.mini-list p{margin:0;font-size:.84rem}.vote-section{border-radius:var(--radius);background:radial-gradient(circle at 90% 0,#ffd51f2e,#0000 30%),#08224ad1;grid-template-columns:minmax(260px,.78fr) 1fr;align-items:stretch;gap:26px;padding:28px;display:grid}.vote-copy{align-content:start;gap:15px;display:grid}.vote-copy p{margin:0}.vote-status{border-radius:var(--radius);min-height:36px;color:var(--sky);border:1px solid #ffffff29;padding:6px 12px;font-weight:900}.code-field{color:var(--muted);gap:7px;font-size:.84rem;font-weight:900;display:grid}.code-field input{border-radius:var(--radius);width:100%;min-height:46px;color:var(--white);text-transform:uppercase;background:#ffffff14;border:1px solid #ffffff38;padding:0 13px}.vote-candidates{gap:14px;display:grid}.candidate-card{border-radius:var(--radius);background:#ffffff0f;border:1px solid #ffffff1c;grid-template-columns:124px 1fr;align-items:center;gap:16px;padding:12px;display:grid}.candidate-card.has-voted{background:#ffd51f1f;border-color:#ffd51fcc}.candidate-card img{aspect-ratio:1.2;object-fit:cover;border-radius:6px;width:100%}.candidate-card h3{margin:7px 0 4px;font-size:1rem}.candidate-card p{margin:0 0 10px;font-size:.86rem}.candidate-card button{background:var(--white);min-height:34px;color:var(--ink);padding:0 14px;font-size:.8rem}.candidate-card button:disabled{cursor:not-allowed;opacity:.56}.rank-badge{background:var(--yellow);min-width:42px;min-height:26px;color:var(--ink);border-radius:999px;font-size:.76rem}.news-strip{border-radius:var(--radius);background:#010d2194;grid-template-columns:repeat(4,minmax(0,1fr));padding:20px}.news-strip article,.news-strip a{grid-template-rows:auto 1fr;grid-template-columns:88px 1fr;column-gap:12px;display:grid}.news-strip img{aspect-ratio:1;object-fit:cover;border-radius:6px;grid-row:1/3;width:88px}.news-strip time{color:var(--white);font-size:.74rem;font-weight:900}.news-strip h3{margin:3px 0 0;font-size:.86rem;line-height:1.45}.access-section{grid-template-columns:minmax(260px,.7fr) 1fr;align-items:stretch;gap:28px;margin-bottom:0;display:grid}.map-panel{border-radius:var(--radius);background:linear-gradient(135deg,#ffd51fd1,#ffffff14),repeating-linear-gradient(45deg,#ffffff4d 0 1px,#0000 1px 28px),#17497e;align-content:end;min-height:260px;padding:24px;display:grid;position:relative;overflow:hidden}.map-panel:before,.map-panel:after{content:"";background:#03142bc7;border-radius:999px;position:absolute}.map-panel:before{width:44%;height:10px;top:24%;left:12%;transform:rotate(-18deg)}.map-panel:after{width:36%;height:10px;top:38%;right:15%;transform:rotate(27deg)}.map-panel span,.map-panel strong{z-index:1;position:relative}.map-panel span{color:var(--ink);font-weight:950}.map-panel strong{color:var(--white);font-size:1.55rem;line-height:1.2}.site-footer{width:min(1060px,100% - 36px);color:var(--white);grid-template-columns:auto 1fr;gap:70px;margin:0 auto;padding:48px 0 70px;display:grid}.site-footer nav{color:var(--muted);grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:12px 22px;font-size:.8rem;display:grid}.vote-dialog{border-radius:var(--radius);background:var(--navy-deep);width:min(480px,100% - 32px);color:var(--white);box-shadow:var(--shadow);border:0;padding:0}.vote-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#03142bb8}.vote-dialog form{padding:28px}.vote-dialog h2{margin:0 0 10px}.vote-dialog p{color:var(--muted)}.dialog-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.page-header{color:var(--white)}.page-main .night-shell{min-height:72svh;padding-top:132px}.page-hero{width:min(1060px,100% - 36px);margin:0 auto 36px;padding:28px 0 8px}.page-hero h1{max-width:780px;color:var(--white);letter-spacing:0;margin:0 0 14px;font-size:clamp(2.4rem,8vw,5.2rem);line-height:1.04}.page-hero p:not(.section-kicker){max-width:720px;color:var(--muted);margin:0;font-size:1rem}.listing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:min(1060px,100% - 36px);margin:0 auto 78px;display:grid}.listing-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin-bottom:18px}.listing-card{border-radius:var(--radius);background:#183f6dbd;border:1px solid #ffffff17;min-width:0;transition:transform .18s,border-color .18s,background .18s;display:grid;overflow:hidden}.listing-card:hover,.listing-card:focus-visible{background:#224e82db;border-color:#ffd51fb3;transform:translateY(-3px)}.listing-card img{aspect-ratio:1.48;object-fit:cover;width:100%}.listing-card div{padding:16px}.listing-card h3{color:var(--white);margin:8px 0 2px;font-size:1.08rem;line-height:1.35}.listing-card p{color:var(--muted);margin:0;font-size:.88rem}.listing-card .listing-subtitle{color:var(--sky);margin-bottom:8px;font-weight:900}.section-more{margin-top:16px}.detail-layout{grid-template-columns:minmax(320px,.92fr) minmax(320px,1fr);align-items:start;gap:44px;width:min(1060px,100% - 36px);margin:0 auto 72px;display:grid}.detail-media{position:sticky;top:112px}.detail-media img{border-radius:var(--radius);width:100%;box-shadow:var(--shadow);object-fit:cover}.detail-copy{padding-top:8px}.detail-copy h1{color:var(--white);letter-spacing:0;margin:0 0 8px;font-size:clamp(2rem,5vw,3.8rem);line-height:1.06}.detail-copy>p,.detail-body p{color:var(--muted)}.detail-subtitle{color:var(--sky);margin:0 0 16px;font-weight:950}.detail-meta{gap:10px;margin:24px 0;display:grid}.detail-meta div{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr;gap:12px;padding:10px 0;display:grid}.detail-meta dt{color:var(--yellow);font-weight:950}.detail-meta dd{color:var(--white);margin:0}.detail-body{margin-bottom:28px}.related-section{width:min(1060px,100% - 36px);margin:0 auto 84px}.candidate-link{color:inherit}@media (max-width:1000px){.site-header{grid-template-columns:auto auto;justify-content:space-between}.menu-toggle{aspect-ratio:1;background:#ffffff1f;border:1px solid #07173342;border-radius:999px;place-content:center;gap:5px;width:46px;display:inline-grid}.menu-toggle span{background:currentColor;width:18px;height:2px;display:block}.site-nav,.header-actions{display:none}.site-header.nav-open{border-radius:var(--radius);color:var(--white);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#03142bf0;grid-template-columns:auto auto;align-items:start;padding:12px}.site-header.nav-open .site-nav,.site-header.nav-open .header-actions{grid-column:1/-1;justify-content:stretch;gap:8px;display:grid}.site-header.nav-open .site-nav a{padding:10px 0}.site-header.nav-open .header-actions{grid-template-columns:auto 1fr}.hero-inner{grid-template-columns:1fr;align-content:center;gap:18px;padding-top:108px}.hero-copy{max-width:620px}.hero-scene{max-width:620px;margin:0}.date-card{grid-template-columns:auto auto auto 1fr;align-items:center;gap:8px 14px}.date-card p,.date-card a{grid-column:span 2}.section-grid,.vote-section,.access-section{grid-template-columns:1fr}.section-lead{max-width:560px}.card-row,.event-panel,.offer-grid,.news-strip,.listing-grid,.listing-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.split-section,.section-heading,.detail-layout{grid-template-columns:1fr}.detail-media{position:static}.mini-list,.site-footer,.site-footer nav{grid-template-columns:1fr}}@media (max-width:1100px) and (min-width:1001px){.hero-inner{grid-template-columns:1fr;align-content:center;gap:18px;padding-top:108px}.hero-copy,.hero-scene{max-width:640px}.hero-scene{margin:0}.date-card{grid-template-columns:auto auto auto 1fr;align-items:center;gap:8px 14px}.date-card p,.date-card a{grid-column:span 2}}@media (max-width:640px){body{font-size:15px}.site-header{width:calc(100% - 24px);margin-top:12px}.brand{font-size:1rem}.hero{min-height:88svh}.hero-inner{width:calc(100% - 28px);padding-bottom:108px}.hero h1{font-size:clamp(2rem,12vw,3.1rem)}.hero h1 span{white-space:normal}.hero p{font-size:.92rem}.hero-scene img{width:100%}.date-card{grid-template-columns:1fr}.date-card p,.date-card a{grid-column:auto}.date-card strong{font-size:2.4rem}.night-shell{padding-top:72px}.section-grid,.stacked-section,.split-section,.vote-section,.access-section{width:calc(100% - 28px);margin-bottom:64px}.card-row,.event-panel,.offer-grid,.news-strip,.listing-grid,.listing-grid.compact{grid-template-columns:1fr}.event-panel,.vote-section,.split-section{padding:16px}.section-heading{gap:8px}.candidate-card,.news-strip article,.news-strip a{grid-template-columns:104px 1fr}.page-main .night-shell{padding-top:104px}.page-hero,.listing-grid,.detail-layout,.related-section{width:calc(100% - 28px)}.page-hero h1{font-size:clamp(2.1rem,14vw,3.35rem)}.detail-meta div{grid-template-columns:1fr;gap:2px}.candidate-card{gap:12px}.news-strip img{width:80px}.dialog-actions{display:grid}}
