﻿:root{--red:#ed1c24;--ink:#111113;--paper:#f7f3f1;--cyan:#16b7c8;--yellow:#f7b718;--line:#ded7d3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"Noto Sans JP",sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-header{height:86px;padding:0 4.5vw;display:flex;align-items:center;gap:42px;position:relative;background:#fff;z-index:20}.brand{width:240px;margin-right:auto}.brand img{width:100%;height:48px;object-fit:contain;object-position:left center}.global-nav{display:flex;gap:30px;font-size:12px;font-weight:700}.global-nav a{position:relative}.global-nav a:after{content:"";position:absolute;height:2px;left:0;right:100%;bottom:-8px;background:var(--red);transition:.25s}.global-nav a:hover:after,.global-nav .active:after{right:0}.header-cta,.button{background:var(--red);color:white;font-weight:800;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 22px;box-shadow:5px 5px 0 var(--ink);font-size:13px;transition:.2s}.header-cta:hover,.button:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink)}.menu-toggle{display:none}.hero{min-height:calc(100vh - 86px);height:820px;position:relative;background:linear-gradient(90deg,rgba(5,7,8,.92) 0%,rgba(5,7,8,.5) 43%,rgba(5,7,8,.08) 78%),url("assets/hero-showcase.png") center/cover;color:#fff;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.5),transparent 50%)}.hero-noise{position:absolute;inset:0;opacity:.15;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}.hero-content{position:absolute;z-index:2;left:7vw;top:50%;transform:translateY(-48%)}.eyebrow,.kicker{font-family:"Barlow Condensed",sans-serif;letter-spacing:.18em;font-weight:800;font-size:13px}.eyebrow{display:inline-block;background:var(--red);padding:7px 11px;transform:rotate(-1deg)}.hero h1{font-size:clamp(48px,6.4vw,96px);line-height:1.12;margin:30px 0;font-weight:900;letter-spacing:-.05em}.hero h1 em{font-style:normal;color:#ff2832}.hero-meta{font-family:"Barlow Condensed";letter-spacing:.12em;font-size:14px}.hero-meta span{color:var(--red)}.hero-meta small{border:1px solid rgba(255,255,255,.4);padding:3px 6px}.hero-meta b{margin-left:12px}.hero-ticket{position:absolute;z-index:3;right:5vw;bottom:8%;width:260px;background:#fff;color:var(--ink);padding:20px 22px;border-left:7px solid var(--red);font-size:13px;font-weight:800;display:flex;justify-content:space-between}.hero-ticket b{color:var(--red)}.hero-scroll{position:absolute;z-index:3;right:22px;top:40%;writing-mode:vertical-rl;font:700 10px "Barlow Condensed";letter-spacing:.2em;display:flex;align-items:center;gap:10px}.hero-scroll i{width:1px;height:52px;background:#fff}.ticker{height:42px;border-bottom:1px solid #ead1d1;color:var(--red);font:700 11px "Noto Sans JP";letter-spacing:.08em;overflow:hidden;white-space:nowrap;display:flex;align-items:center}.ticker div{animation:ticker 24s linear infinite}@keyframes ticker{to{transform:translateX(-50%)}}.section{padding:130px 7vw;position:relative}.section-number{position:absolute;right:5vw;top:50px;color:#aaa;font:700 11px "Barlow Condensed";letter-spacing:.15em}.concept{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(380px,1fr);gap:9vw;align-items:center}.concept-visual{position:relative}.concept-visual:before{content:"";position:absolute;left:-16px;bottom:-16px;width:100%;height:100%;background:var(--yellow);z-index:-1}.concept-visual img{height:600px;width:100%;object-fit:cover}.concept-visual span{position:absolute;right:-35px;bottom:50px;border-radius:50%;width:105px;height:105px;background:#fff;display:grid;place-items:center;font:800 13px "Barlow Condensed";letter-spacing:.2em;box-shadow:0 8px 30px #0002}.concept-copy .kicker,.news .kicker,.entry .kicker{color:var(--red)}h2{font-size:clamp(42px,5vw,74px);line-height:1.08;letter-spacing:-.05em;margin:12px 0 30px}.concept-copy>p:not(.kicker){line-height:2;color:#555;font-size:14px;border-left:2px solid var(--red);padding-left:24px;max-width:650px}.outlooks{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:45px;border-top:1px solid var(--line);padding-top:26px}.outlooks strong,.outlooks b,.outlooks span{display:block}.outlooks strong{font:800 21px "Barlow Condensed"}.outlooks b{font-size:13px;margin:8px 0}.outlooks span{font-size:11px;color:#777;line-height:1.8}.news{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-heading h2{margin-bottom:0}.section-heading>a{font:800 12px "Barlow Condensed";letter-spacing:.15em;border-bottom:1px solid;padding:10px 0}.section-heading>a span{color:var(--red);margin-left:18px}.news-grid,.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card{background:#fff;padding:30px;min-height:225px;border-top:4px solid transparent;position:relative;transition:.3s}.news-card:hover{transform:translateY(-7px);border-color:var(--red);box-shadow:0 14px 30px #26131312}.news-card time{font:700 13px "Barlow Condensed";color:var(--red)}.news-card .tag{font:700 10px "Barlow Condensed";color:#888;letter-spacing:.14em}.news-card h3{font-size:15px;line-height:1.8;margin-right:25px}.news-card>a{position:absolute;right:25px;bottom:25px;color:var(--red);font-weight:900}.about{background:#151517;color:#fff;overflow:hidden}.about:before{content:"OMATSURI";position:absolute;right:-2vw;bottom:-4vw;font:900 17vw "Barlow Condensed";color:#fff;opacity:.025}.section-number.light{color:#777}.about .kicker{color:var(--cyan)}.about .section-heading>p{font-size:13px;color:#999}.feature-card{background:#202023;border:1px solid #333;padding:38px;min-height:310px;position:relative}.feature-card .num{position:absolute;right:20px;top:10px;font:700 54px "Barlow Condensed";color:#ffffff0b}.feature-card .icon{color:var(--red);font-size:31px;margin:10px 0 35px}.feature-card:nth-child(2) .icon{color:var(--cyan)}.feature-card:nth-child(3) .icon{color:var(--yellow)}.feature-card h3{font-size:20px}.feature-card p{color:#aaa;line-height:1.9;font-size:13px}.entry{padding-top:150px;padding-bottom:150px;background:linear-gradient(135deg,#fff 70%,#fff3f3)}.entry-card{max-width:900px;margin:auto;text-align:center;padding:70px 8%;border:1px solid #eadfdb;box-shadow:0 20px 45px #2d131318;position:relative;background:#fff}.entry-card:before{content:"";position:absolute;left:0;top:0;width:14px;height:100%;background:linear-gradient(var(--red) 33%,var(--yellow) 33% 66%,var(--cyan) 66%)}.entry-card h2{font-size:clamp(42px,5vw,68px)}.entry-card h2 span{font-family:"Barlow Condensed";font-size:1.18em}.entry-card>p:not(.kicker){color:#666;font-size:14px;margin:0 auto 35px}.entry-card .button{margin:auto}footer{border-top:1px solid #eee;padding:75px 6vw 25px}.footer-main{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr;gap:45px;align-items:start}.footer-main>img{width:235px;height:75px;object-fit:contain;object-position:left}.footer-main>p{font:700 11px/1.8 "Barlow Condensed";letter-spacing:.08em;color:#666}.footer-main div{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#777}.footer-main b{font:800 11px "Barlow Condensed";letter-spacing:.15em;color:#111;margin-bottom:8px}.footer-bottom{display:flex;justify-content:space-between;margin-top:60px;padding-top:22px;border-top:1px solid #eee;font:700 9px "Barlow Condensed";letter-spacing:.1em;color:#999}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:72px;padding:0 20px}.brand{width:185px}.global-nav,.header-cta{display:none}.menu-toggle{display:flex;margin-left:auto;width:42px;height:42px;border:0;background:var(--ink);flex-direction:column;justify-content:center;gap:7px;padding:10px}.menu-toggle span{height:2px;background:#fff;width:100%;transition:.2s}.menu-toggle.open span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle.open span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.global-nav.open{display:flex;position:absolute;left:0;right:0;top:72px;background:#fff;flex-direction:column;padding:35px;gap:22px;box-shadow:0 12px 20px #0001}.hero{height:720px;min-height:calc(100vh - 72px);background-position:64% center}.hero-content{left:24px;right:24px;top:48%}.hero h1{font-size:clamp(42px,12vw,66px)}.hero-ticket{left:24px;right:auto;bottom:7%;width:245px}.hero-scroll{display:none}.section{padding:90px 24px}.concept{grid-template-columns:1fr;gap:75px}.concept-visual img{height:520px}.concept-visual span{right:-5px;width:86px;height:86px}.news-grid,.feature-grid{grid-template-columns:1fr}.news-card{min-height:190px}.section-heading{align-items:start;gap:20px}.section-heading>a{white-space:nowrap}.outlooks{gap:18px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>img,.footer-main>p{grid-column:1/-1}.section-number{top:25px}.entry-card{padding:60px 28px}.entry-card:before{width:8px}}
@media(max-width:520px){.hero{height:660px}.eyebrow{font-size:10px}.hero h1{font-size:42px}.section{padding:75px 20px}.concept-visual img{height:400px}.outlooks{grid-template-columns:1fr}.section-heading h2{font-size:40px}.section-heading>a{display:none}.feature-card{min-height:260px}.entry{padding:90px 14px}.entry-card h2{font-size:36px}.footer-main{grid-template-columns:1fr 1fr;gap:28px}.footer-bottom{flex-direction:column;gap:10px}}

@media(max-width:520px){.about .section-heading{display:block;margin-bottom:42px}.about .section-heading h2{font-size:clamp(34px,11vw,40px);white-space:nowrap}.about .section-heading>p{margin:18px 0 0;font-size:clamp(12px,3.8vw,14px);line-height:1.7;letter-spacing:.02em;white-space:nowrap}}

.outlooks{grid-template-columns:1fr}

/* Language switch */
.language-switch{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #d8d1cd;background:#fff;color:#999;font:800 11px "Barlow Condensed",sans-serif;letter-spacing:.08em;cursor:pointer;transition:border-color .2s,color .2s}
.language-switch i{display:block;width:1px;height:12px;background:#d8d1cd}
.language-option-ja{color:var(--ink)}
.lang-en .language-option-ja{color:#999}
.lang-en .language-option-en{color:var(--ink)}
.language-switch:hover,.language-switch:focus-visible{border-color:var(--red);outline:none}
.lang-en{font-family:"Barlow Condensed","Noto Sans JP",sans-serif}
.lang-en .concept-copy>p:not(.kicker),.lang-en .feature-card p,.lang-en .entry-card>p:not(.kicker),.lang-en .entry-option>p{font-family:"Noto Sans JP",sans-serif;letter-spacing:.01em}
@media(max-width:900px){.language-switch{margin-left:auto}.menu-toggle{margin-left:0}.global-nav.open{padding-right:100px}}
@media(max-width:520px){.site-header{gap:10px}.brand{width:min(210px,55vw)}.language-switch{padding:7px 8px;gap:5px}}

/* Bilingual hero statement */
.site-header{height:104px}
.brand{width:340px}
.brand img{height:86px}
.hero{min-height:calc(100vh - 104px)}
@media(max-width:900px){.site-header{height:84px}.brand{width:260px}.brand img{height:70px}.global-nav.open{top:84px}.hero{min-height:calc(100vh - 84px)}}

.hero-content{width:min(860px,78vw)}
@media(min-width:901px){.hero-content{top:5%}}
.event-announcement{display:block;width:min(720px,80vw);margin-top:28px;background:#fff;color:var(--ink);border:4px solid #fff;outline:3px solid var(--ink);box-shadow:13px 13px 0 var(--red);transform:rotate(-.35deg)}
.event-announcement-head{display:flex;align-items:center;background:var(--red);color:#fff;border-bottom:3px solid var(--ink)}
.event-announcement-label{align-self:stretch;display:grid;place-items:center;padding:11px 18px;background:var(--yellow);color:var(--ink);font-size:15px;font-weight:900;letter-spacing:.12em}
.event-announcement-caption{padding:10px 18px;font:900 14px "Barlow Condensed",sans-serif;letter-spacing:.18em}
.event-details{display:grid;grid-template-columns:1.18fr .82fr}
.event-detail{position:relative;padding:16px 20px 18px}
.event-detail+.event-detail{border-left:3px solid var(--ink)}
.event-detail-label{display:block;margin-bottom:5px;color:var(--red);font-size:11px;font-weight:900;letter-spacing:.16em}
.event-detail strong{display:block;font:900 clamp(43px,4.5vw,62px)/.92 "Barlow Condensed","Noto Sans JP",sans-serif;letter-spacing:.015em;white-space:nowrap}
.event-location strong{font-family:"Noto Sans JP",sans-serif;font-size:clamp(35px,3.7vw,50px);letter-spacing:-.03em}
.event-detail small{display:block;margin-top:7px;font:800 11px "Barlow Condensed",sans-serif;letter-spacing:.17em}
.hero h1.hero-title{margin:26px 0 0;font-family:"Barlow Condensed",sans-serif;font-size:clamp(68px,8.4vw,132px);font-weight:900;line-height:.78;letter-spacing:-.045em;text-transform:uppercase}
.hero-title span,.hero-title em{display:block;white-space:nowrap}
.hero h1.hero-title em{margin-top:.18em;background:linear-gradient(90deg,#ffafa3 0%,#ffad70 42%,#ffd000 100%);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero-title-ja{margin:34px 0 28px;padding-left:.03em;color:#f0c1bd;font-size:clamp(22px,2.4vw,37px);font-weight:500;line-height:1.32;letter-spacing:.015em}
@media(max-width:900px){.hero-content{top:6%;width:auto}.hero h1.hero-title{font-size:clamp(58px,14vw,104px)}.hero-title-ja{margin-top:28px;font-size:clamp(21px,5vw,31px)}.event-announcement{width:min(650px,calc(100vw - 48px));margin-top:20px}}
@media(max-width:520px){.hero{height:720px;min-height:720px;background-color:#111;background-size:100% 600px,auto 600px;background-position:center top,62% top;background-repeat:no-repeat}.hero:after{background:linear-gradient(0deg,#111 0,#111 120px,rgba(0,0,0,.5) 600px,transparent 100%)}.hero-content{top:38px;transform:none}.hero h1.hero-title{font-size:clamp(48px,14.2vw,72px)}.hero-title-ja{margin:22px 0 0;font-size:20px}.event-announcement{position:absolute;top:400px;left:0;width:100%;margin:0;outline-width:2px;box-shadow:8px 8px 0 var(--red);transform:none}.event-announcement-caption{display:none}.event-announcement-head{border-bottom-width:3px}.event-announcement-label{width:100%;padding:9px 12px;font-size:13px}.event-details{grid-template-columns:1fr 1fr}.event-detail{padding:13px 10px 14px}.event-detail strong{font-size:clamp(29px,8.6vw,38px)}.event-location strong{font-size:clamp(25px,7.5vw,33px)}.event-detail-label{font-size:8px}.event-detail small{font-size:9px;letter-spacing:.11em}.hero-ticket{top:600px;right:20px;bottom:auto;left:20px;width:auto;padding:13px 16px;align-items:center}.hero-ticket-copy small,.hero-ticket-copy strong{display:block}.hero-ticket-copy small{margin-bottom:3px;font-size:9px;letter-spacing:.08em}.hero-ticket-copy strong{font-size:12px;line-height:1.4;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* Concept brand panel */
.concept-visual.concept-logo {
  min-height: 600px;
  display: grid;
  place-items: center;
  padding: clamp(40px, 7vw, 90px);
  background: #fff;
  border: 1px solid #eee8e4;
}

.concept-visual.concept-logo > img {
  width: min(100%, 480px);
  height: auto;
  object-fit: contain;
}

@media(max-width: 900px) {
  .concept-visual.concept-logo { min-height: 480px; }
}

@media(max-width: 520px) {
  .concept-visual.concept-logo {
    min-height: 360px;
    padding: 38px;
  }
}

@media(min-width:901px){.news-grid>.news-card:only-child{grid-column:1/-1;min-height:170px;padding:38px 80px 38px 38px;display:grid;grid-template-columns:180px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:42px;align-items:center}.news-grid>.news-card:only-child time{grid-column:1;grid-row:1}.news-grid>.news-card:only-child .tag{grid-column:1;grid-row:2;align-self:start;margin:10px 0 0}.news-grid>.news-card:only-child h3{grid-column:2;grid-row:1/3;margin:0;font-size:18px}.news-grid>.news-card:only-child>a{right:35px;bottom:50%;transform:translateY(50%)}}
.lang-en .feature-card p { white-space: pre-line; }
