:root{--black:#050505;--ink:#111;--white:#fff;--off:#f4f4f2;--red:#d40012;--line:rgba(255,255,255,.16);--max:1440px;--pad:clamp(24px,6vw,90px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:#fff;font-family:"Noto Sans JP",sans-serif;line-height:1.75}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}h1,h2,p{margin-top:0}.section-inner{max-width:var(--max);margin:auto;padding-left:var(--pad);padding-right:var(--pad)}
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:76px;padding:0 3.4vw;display:flex;align-items:center;justify-content:space-between;background:rgba(0,0,0,.76);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);transition:.3s}.site-header.compact{height:64px;background:rgba(0,0,0,.93)}.brand,.footer-brand{display:flex;align-items:center;gap:10px}.brand-mark{width:42px;height:36px;display:grid;place-items:center;background:linear-gradient(135deg,var(--red) 0 52%,#fff 52%);color:#090909;font:bold 27px/1 Oswald;clip-path:polygon(0 0,100% 0,100% 70%,70% 70%,70% 100%,0 100%)}.brand-copy{display:flex;flex-direction:column;line-height:.85}.brand-copy strong{font:500 24px/1 Oswald;letter-spacing:.13em}.brand-copy small{font:500 10px/1 Oswald;letter-spacing:.27em;margin-top:5px}.global-nav{display:flex;gap:clamp(18px,2.7vw,44px);align-items:center}.global-nav a{font:500 13px/1 Oswald;letter-spacing:.14em;position:relative}.global-nav a:after{content:"";position:absolute;left:0;bottom:-10px;width:0;height:2px;background:var(--red);transition:.25s}.global-nav a:hover:after{width:100%}.menu-toggle{display:none;background:none;border:0;color:#fff}
.hero{height:min(820px,100vh);min-height:610px;position:relative;background:url('../images/hero.jpg') center/cover no-repeat;display:flex;align-items:center}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.18) 65%,rgba(0,0,0,.42))}.hero-content{position:relative;z-index:2;margin-left:var(--pad);padding-top:50px}.hero h1{font:600 clamp(50px,7.2vw,110px)/1.42 "Noto Serif JP",serif;letter-spacing:.08em;text-shadow:0 4px 30px #000}.hero-brand{font:500 clamp(18px,2vw,26px)/1 Oswald;letter-spacing:.08em}.hero-brand span{color:var(--red);letter-spacing:.14em}.accent-line{display:block;width:58px;height:2px;background:var(--red);margin-top:28px}.scroll-cue{position:absolute;z-index:3;left:var(--pad);bottom:30px;font:500 11px/1 Oswald;letter-spacing:.18em}.scroll-cue span{display:block;width:1px;height:52px;background:rgba(255,255,255,.55);margin:16px auto 0}.hero-dots{position:absolute;z-index:3;right:25px;top:50%;display:grid;gap:12px}.hero-dots i{width:7px;height:7px;border:1px solid #fff;border-radius:50%}.hero-dots .active{background:var(--red);border-color:var(--red)}
.section-dark{background:#050505}.section-light{background:var(--off);color:var(--ink)}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.section-heading h2,.about h2,.fanclub h2{font:500 clamp(30px,3vw,48px)/1 Oswald;letter-spacing:.09em;margin:0}.section-heading a{font:500 12px/1 Oswald;letter-spacing:.12em;color:var(--red)}.section-heading b,.artist-card b,.outline-button b,.red-button b{font-size:20px;font-weight:400;margin-left:8px}.news-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);padding-right:0}.news-main{padding-top:34px;padding-bottom:34px;padding-right:var(--pad)}.news-list{list-style:none;padding:0;margin:0}.news-list li{display:grid;grid-template-columns:110px 72px 1fr;gap:15px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.news-list time{font-family:Oswald;letter-spacing:.08em}.news-list span{background:var(--red);text-align:center;padding:3px 4px;font:500 11px Oswald;letter-spacing:.12em}.news-list a:hover{color:#bbb}.news-image{background:url('../images/news-console.jpg') center/cover no-repeat;min-height:245px}
.about{padding:68px 0}.about-grid{display:grid;grid-template-columns:.8fr 1.6fr;gap:70px;align-items:center}.about-copy p{font-size:15px;max-width:520px}.outline-button{display:inline-flex;align-items:center;margin-top:20px;border:1px solid #555;padding:10px 28px;font:500 12px Oswald;letter-spacing:.15em;transition:.25s}.outline-button:hover{background:#111;color:#fff;border-color:#111}.about-image{height:330px;background:url('../images/about-studio.jpg') center/cover no-repeat;position:relative}.about-image:before{content:"";position:absolute;left:-25px;top:0;width:30px;height:100%;background:var(--red);transform:skew(-12deg)}
.artists{padding:55px 0 65px}.artist-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.artist-card{overflow:hidden}.artist-card img{aspect-ratio:1.45/1;object-fit:cover;filter:grayscale(1);transition:.45s}.artist-card span{display:flex;justify-content:space-between;align-items:center;padding-top:12px;font:500 12px Oswald;letter-spacing:.1em}.artist-card b{color:var(--red)}.artist-card:hover img{filter:grayscale(0);transform:scale(1.04)}
.split-sections{display:grid;grid-template-columns:1fr 1fr}.panel-inner{padding:45px clamp(28px,5vw,75px) 55px}.live{background:linear-gradient(120deg,rgba(134,0,0,.96),rgba(205,0,10,.75)),url('../images/events.jpg') center/cover}.live .section-heading a{color:#fff}.event-list{list-style:none;padding:0;margin:0}.event-list li{display:grid;grid-template-columns:95px 54px 1fr;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.24);font-size:12px}.event-list time{font-family:Oswald}.event-list span{border:1px solid rgba(255,255,255,.65);text-align:center}.event-list p{margin:0;line-height:1.3}.event-list small{opacity:.72}.disc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.disc-grid img{aspect-ratio:1/1;object-fit:cover}.disc-grid strong,.disc-grid small{display:block}.disc-grid strong{font-size:12px;margin-top:9px}.disc-grid small{font:10px Oswald;opacity:.72}.disc-grid a:hover img{opacity:.78}
.fanclub{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.25)),url('../images/fanclub.jpg') center/cover no-repeat;padding:42px 0}.fanclub-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.fanclub p{font-size:14px;margin:14px 0 0}.red-button{background:var(--red);padding:16px 30px;font-weight:700;white-space:nowrap;transition:.25s}.red-button:hover{transform:translateY(-2px);filter:brightness(1.12)}
.site-footer{padding:50px 0 22px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:auto 1.5fr 1fr;gap:50px;align-items:start}.site-footer address{font-style:normal;font-size:12px;line-height:2}.footer-links{display:flex;justify-content:flex-end;gap:18px;flex-wrap:wrap;font:500 11px Oswald;letter-spacing:.08em}.footer-links a:hover{color:var(--red)}.copyright{text-align:center;font:10px Oswald;opacity:.56;margin:38px 0 0;letter-spacing:.06em}.to-top{position:fixed;right:20px;bottom:18px;width:38px;height:38px;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;background:rgba(0,0,0,.68);z-index:20}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.global-nav{position:fixed;inset:0;background:rgba(0,0,0,.97);display:flex;flex-direction:column;justify-content:center;gap:30px;transform:translateX(100%);transition:.35s}.global-nav.open{transform:none}.global-nav a{font-size:22px}.menu-toggle{display:grid;gap:5px;position:relative;z-index:2}.menu-toggle span{display:block;width:29px;height:2px;background:#fff}.menu-toggle em{font:8px Oswald;font-style:normal;letter-spacing:.15em}.news-grid,.about-grid,.split-sections{grid-template-columns:1fr}.news-image{min-height:230px}.about-grid{gap:45px}.artist-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-links{justify-content:flex-start;grid-column:1/-1}.discography{border-top:1px solid var(--line)}}
@media(max-width:640px){.site-header{height:64px;padding:0 18px}.brand-mark{width:34px;height:30px;font-size:22px}.brand-copy strong{font-size:20px}.hero{min-height:690px;background-position:62% center}.hero-content{margin-left:24px;margin-right:20px}.hero h1{font-size:50px;line-height:1.45}.scroll-cue{left:24px}.hero-dots{right:14px}.section-inner{padding-left:24px;padding-right:24px}.news-grid{padding:0}.news-main{padding:38px 24px}.news-list li{grid-template-columns:82px 60px;gap:10px}.news-list li a{grid-column:1/-1;padding-bottom:3px}.about{padding:50px 0}.about-grid{gap:36px}.about-image{height:220px;margin-left:18px}.artist-grid{grid-template-columns:repeat(2,1fr)}.artist-card:last-child{display:none}.panel-inner{padding:42px 24px}.disc-grid{grid-template-columns:repeat(2,1fr)}.fanclub-inner{align-items:flex-start;flex-direction:column}.fanclub p br{display:none}.red-button{width:100%;text-align:center}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-links{grid-column:auto}.event-list li{grid-template-columns:75px 48px 1fr}.section-heading{align-items:flex-end}.section-heading h2{font-size:31px}.to-top{right:12px}.copyright{padding:0 20px}}
.custom-logo-link{display:flex;align-items:center}.custom-logo{width:auto;max-width:210px;max-height:52px}.global-nav .menu-item{display:contents}.global-nav ul{display:contents}.alignwide{max-width:1200px}.alignfull{width:100vw;margin-left:calc(50% - 50vw)}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero-overlay,.hero-content,.scroll-cue,.hero-dots{position:absolute}.hero-overlay{z-index:1}.hero-content,.scroll-cue,.hero-dots{z-index:2}.elementor-home{min-height:60vh}

.footer-logo-image{display:block;width:76px;height:76px;object-fit:contain}
@media(max-width:640px){.footer-logo-image{width:68px;height:68px}}
.archive-page{min-height:70vh;padding-top:130px;padding-bottom:90px}.archive-inner>.section-heading{margin-bottom:42px}.archive-page .navigation.pagination{margin-top:42px}.archive-page .nav-links{display:flex;gap:10px}.archive-page .page-numbers{border:1px solid var(--line);padding:9px 13px}.archive-page .page-numbers.current{background:var(--red);border-color:var(--red)}

/* v2.4 detail pages */
.artist-detail-grid,.disc-detail-grid{display:grid;gap:36px}.artist-detail-card,.disc-detail-card{display:grid;grid-template-columns:minmax(220px,38%) 1fr;gap:34px;align-items:center;padding:28px;border:1px solid rgba(255,255,255,.16)}.artist-detail-card img,.disc-detail-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.disc-detail-card img{aspect-ratio:1}.artist-detail-card h2,.disc-detail-card h2{font-family:Oswald,sans-serif;font-size:clamp(28px,4vw,52px);margin:0 0 18px}.disc-meta{color:#bf1d25;font-weight:700}@media(max-width:700px){.artist-detail-card,.disc-detail-card{grid-template-columns:1fr;padding:18px}}
.detail-page,.fanclub-page{padding-top:120px;min-height:70vh}.detail-grid{display:grid;grid-template-columns:minmax(280px,42%) 1fr;gap:64px;align-items:start;padding:40px 0 100px}.detail-cover{width:100%;aspect-ratio:4/3;object-fit:cover}.detail-cover.square{aspect-ratio:1}.detail-page h1,.page-hero h1{font-family:Oswald,sans-serif;font-size:clamp(3rem,7vw,7rem);line-height:1;margin:.15em 0}.detail-body{font-size:1rem;line-height:2}.detail-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.breadcrumbs{font-size:.75rem;letter-spacing:.15em;opacity:.7}.page-hero{padding:80px 0;background:linear-gradient(90deg,#080808,#211010)}.fanclub-content{padding-top:70px;padding-bottom:100px}.benefit-box,.terms-box,.payment-box{padding:32px;border:1px solid rgba(255,255,255,.18);margin:20px 0 50px;line-height:2}.fee{font-size:2rem;font-weight:700}.fanclub{background-position:center;background-size:cover}.fanclub:before{content:none!important}@media(max-width:760px){.detail-grid{grid-template-columns:1fr;gap:30px}.detail-page,.fanclub-page{padding-top:80px}}
.event-archive-list{display:grid;gap:1px;background:rgba(255,255,255,.16);margin-top:2rem}.event-archive-card{background:#080808}.event-archive-card a{display:grid;grid-template-columns:150px 1fr auto;gap:2rem;align-items:center;padding:1.5rem;color:#fff;text-decoration:none}.event-archive-card time{font-family:Oswald,sans-serif;font-size:1.15rem}.event-archive-card h2{margin:.25rem 0 0}.archive-home-link{margin-top:3rem}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}@media(max-width:700px){.event-archive-card a{grid-template-columns:1fr auto;gap:.5rem}.event-archive-card time{grid-column:1/-1}}

/* v3.0.4 CONTACT section */
.home-contact{padding:72px 0;border-top:1px solid var(--line)}.home-contact-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.home-contact h2{font:500 clamp(40px,5vw,72px)/1 Oswald;letter-spacing:.09em;margin:8px 0 18px}.home-contact p{margin-bottom:0}.home-contact-kicker{font:500 11px Oswald;letter-spacing:.2em;color:var(--red)}.gate-contact-link{color:#fff}@media(max-width:640px){.home-contact{padding:52px 0}.home-contact-inner{align-items:flex-start;flex-direction:column}.home-contact .red-button{width:100%;text-align:center}}
/* v3.2 platform foundation */
.site-header{justify-content:flex-end}.site-header .brand{position:absolute;left:50%;transform:translateX(-50%)}.global-nav{margin-left:auto}.back-to-hero{position:fixed;right:22px;bottom:70px;z-index:90;width:52px;height:52px;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.82);color:#fff;display:grid;place-items:center;font:500 9px/1.1 Oswald;letter-spacing:.12em;opacity:0;pointer-events:none;transform:translateY(12px);transition:.3s}.back-to-hero.show{opacity:1;pointer-events:auto;transform:none}.back-to-hero:hover{background:var(--red);border-color:var(--red);box-shadow:0 0 24px rgba(212,0,18,.55)}
.fanclub-list-page{background:#050505}.page-hero-copy{padding:40px 0 55px}.page-hero-copy h1{font:500 clamp(52px,8vw,110px)/1 Oswald;letter-spacing:.08em;margin:20px 0}.fanclub-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding-bottom:100px}.fanclub-card{display:grid;grid-template-columns:46% 1fr;border:1px solid rgba(255,255,255,.14);background:#0b0b0b;overflow:hidden}.fanclub-card img,.fanclub-placeholder{height:100%;min-height:340px;object-fit:cover;background:#111;display:grid;place-items:center;font:500 18px Oswald;letter-spacing:.15em}.fanclub-card-copy{padding:34px}.fanclub-card-copy small{color:var(--red);font:500 11px Oswald;letter-spacing:.2em}.fanclub-detail-copy>small{color:#fff;font:500 11px Oswald;letter-spacing:.2em}.fanclub-card-copy h2{font:500 clamp(28px,4vw,48px)/1.1 Oswald;margin:14px 0}.fanclub-card-copy span{display:block;color:var(--red);font:500 12px Oswald;letter-spacing:.14em;margin-top:24px}.fanclub-detail-page{padding-top:76px}.fanclub-detail-hero{background:#050505;padding:60px 0}.fanclub-detail-grid{display:grid;grid-template-columns:minmax(300px,46%) 1fr;gap:70px;align-items:center}.fanclub-detail-image img,.fanclub-detail-image .fanclub-placeholder{aspect-ratio:4/3;object-fit:cover;width:100%;min-height:0}.fanclub-detail-copy h1{font:500 clamp(45px,6vw,92px)/1 Oswald;margin:16px 0}.fanclub-detail-copy h2{font:500 22px Oswald;letter-spacing:.14em}.fanclub-fee{font-size:1.6rem;font-weight:700;margin:24px 0}.fanclub-status{color:#bbb}.fanclub-members-area{padding-top:75px;padding-bottom:100px}.fanclub-members-area>h2{font:500 42px Oswald}.member-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:30px 0 55px}.member-feature-grid article{border:1px solid rgba(255,255,255,.16);padding:28px;font:500 22px Oswald}.member-feature-grid small{display:block;font:12px 'Noto Sans JP';opacity:.65;margin-top:10px}
@media(max-width:980px){.site-header{justify-content:space-between}.site-header .brand{position:static;transform:none}.fanclub-card-grid{grid-template-columns:1fr}.fanclub-detail-grid{grid-template-columns:1fr}.member-feature-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.fanclub-card{grid-template-columns:1fr}.fanclub-card img,.fanclub-placeholder{min-height:260px}.member-feature-grid{grid-template-columns:1fr}.back-to-hero{right:12px;bottom:62px}}

/* v3.2.1 corrected header / TOP button / easy FAN CLUB editor */
.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);justify-content:initial;padding:0 2.2vw}.site-header .brand{position:static;transform:none;grid-column:2;justify-self:center}.desktop-nav{display:flex;align-items:center;gap:clamp(12px,1.55vw,27px);white-space:nowrap}.desktop-nav a{font:500 11px/1 Oswald;letter-spacing:.10em;position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;bottom:-10px;width:0;height:2px;background:var(--red);transition:.25s}.desktop-nav a:hover:after{width:100%}.desktop-nav-left{grid-column:1;grid-row:1;justify-self:start}.desktop-nav-right{grid-column:3;grid-row:1;justify-self:end}.global-nav{display:none}.back-to-hero{appearance:none;padding:0;cursor:pointer;font-size:11px;line-height:1;letter-spacing:.16em}.back-to-hero:active{transform:scale(.96)}
.fanclub-easy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:55px 0 100px}.fanclub-easy-card{display:grid;grid-template-columns:44% 1fr;background:#0b0b0b;border:1px solid rgba(255,255,255,.14);overflow:hidden}.fanclub-easy-card img{height:100%;min-height:330px;object-fit:cover}.fanclub-easy-copy{padding:34px}.fanclub-easy-copy small{color:var(--red);font:500 11px Oswald;letter-spacing:.2em}.fanclub-easy-copy h2{font:500 clamp(28px,4vw,48px)/1.1 Oswald;margin:12px 0}.member-feature-grid article{min-height:135px;background:linear-gradient(145deg,#111,#080808);display:flex;flex-direction:column;justify-content:center}.fanclub-detail-image img{display:block}
@media(max-width:1180px){.desktop-nav{gap:12px}.desktop-nav a{font-size:10px;letter-spacing:.06em}.custom-logo{max-width:180px}}
@media(max-width:980px){.site-header{display:flex;justify-content:space-between}.site-header .brand{position:static;transform:none}.desktop-nav{display:none}.global-nav{display:flex}.fanclub-easy-grid{grid-template-columns:1fr}}
@media(max-width:640px){.fanclub-easy-card{grid-template-columns:1fr}.fanclub-easy-card img{min-height:260px}}

/* v3.2.2 header and CONTACT corrections */
@media (min-width: 761px){
  .site-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
    align-items:center;
    padding:0 clamp(14px,2vw,34px)!important;
  }
  .site-header .brand{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:center!important;
    position:static!important;
    transform:none!important;
    z-index:2;
  }
  .desktop-nav{display:flex!important;align-items:center;gap:clamp(8px,1.15vw,20px);min-width:0}
  .desktop-nav-left{grid-column:1!important;grid-row:1!important;justify-self:start!important}
  .desktop-nav-right{grid-column:3!important;grid-row:1!important;justify-self:end!important}
  .desktop-nav a{font-size:clamp(8px,.72vw,11px);letter-spacing:.055em}
  .global-nav,.menu-toggle{display:none!important}
  .custom-logo{max-width:clamp(125px,14vw,205px);height:auto}
}
@media (min-width:761px) and (max-width:1100px){
  .site-header{padding-left:10px!important;padding-right:10px!important}
  .desktop-nav{gap:7px}
  .desktop-nav a{font-size:8px;letter-spacing:.02em}
  .custom-logo{max-width:135px}
}
@media (max-width:760px){
  .site-header{display:flex!important;justify-content:space-between!important}
  .desktop-nav{display:none!important}
  .menu-toggle{display:block!important}
  .global-nav{display:flex}
}

.home-contact{
  position:relative;
  overflow:hidden;
  padding:72px 0;
  border-top:0;
  background:linear-gradient(90deg,#050505 0 50%,var(--red) 50% 100%)!important;
}
.home-contact:before{content:none!important}
.home-contact-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0}
.home-contact-inner>div{padding-right:clamp(28px,5vw,80px)}
.home-contact-inner>.red-button{justify-self:end;margin-left:clamp(28px,5vw,80px);background:transparent;border:1px solid rgba(255,255,255,.55)}
.home-contact-inner>.red-button:hover{background:var(--red)}
.home-contact h2{font:500 clamp(30px,3vw,48px)/1 Oswald;letter-spacing:.09em;margin:8px 0 18px}
.home-contact-kicker{color:#fff}
@media(max-width:760px){
  .home-contact{background:linear-gradient(180deg,#050505 0 58%,var(--red) 58% 100%)!important;padding:52px 0}
  .home-contact-inner{grid-template-columns:1fr;gap:46px}
  .home-contact-inner>div{padding-right:0}
  .home-contact-inner>.red-button{justify-self:stretch;margin-left:0}
}


/* v3.5.0: definitive desktop header + CONTACT button */
@media (min-width: 761px){
  #site-header.site-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
    align-items:center!important;
    width:100%!important;
    padding:0 clamp(10px,1.8vw,32px)!important;
    overflow:visible!important;
  }
  #site-header .desktop-nav{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    align-items:center!important;
    white-space:nowrap!important;
    position:relative!important;
    z-index:4!important;
    gap:clamp(7px,1vw,18px)!important;
  }
  #site-header .desktop-nav-left{grid-column:1!important;grid-row:1!important;justify-self:start!important;}
  #site-header .desktop-nav-right{grid-column:3!important;grid-row:1!important;justify-self:end!important;}
  #site-header .desktop-nav a{
    display:inline-block!important;
    visibility:visible!important;
    opacity:1!important;
    color:#fff!important;
    font:500 clamp(8px,.68vw,11px)/1 Oswald,sans-serif!important;
    letter-spacing:.045em!important;
  }
  #site-header .brand{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:center!important;
    position:relative!important;
    left:auto!important;
    transform:none!important;
    z-index:5!important;
    margin:0 clamp(8px,1.2vw,22px)!important;
  }
  #site-header .global-nav,#site-header .menu-toggle{display:none!important;}
}
@media (min-width:761px) and (max-width:1050px){
  #site-header.site-header{padding-left:6px!important;padding-right:6px!important;}
  #site-header .desktop-nav{gap:5px!important;}
  #site-header .desktop-nav a{font-size:7.5px!important;letter-spacing:0!important;}
  #site-header .custom-logo{max-width:120px!important;height:auto!important;}
  #site-header .brand-copy strong{font-size:17px!important;}
  #site-header .brand-copy small{font-size:7px!important;}
}
.home-contact-inner>.red-button,
.home-contact-inner>.red-button:visited{
  background:#050505!important;
  color:#fff!important;
  border-color:#050505!important;
}
.home-contact-inner>.red-button:hover,
.home-contact-inner>.red-button:focus{
  background:#171717!important;
  color:#fff!important;
  border-color:#171717!important;
}


/* v3.5.2: left-aligned logo, right-aligned menu, CONTACT typography final adjustment */
@media (min-width:761px){
  #site-header.site-header{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:0 clamp(18px,3vw,56px)!important;
  }
  #site-header .brand{
    position:static!important;
    left:auto!important;
    transform:none!important;
    margin:0!important;
    flex:0 0 auto!important;
    justify-self:auto!important;
  }
  #site-header .desktop-nav{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:clamp(18px,2.05vw,40px)!important;
    margin-left:auto!important;
    white-space:nowrap!important;
  }
  #site-header .desktop-nav a{
    font:500 clamp(11px,.86vw,14px)/1 Oswald,sans-serif!important;
    letter-spacing:.075em!important;
  }
  #site-header .custom-logo{max-width:clamp(185px,16vw,260px)!important;max-height:56px!important;height:auto!important;}
  #site-header .global-nav,#site-header .menu-toggle{display:none!important;}
}
@media (min-width:761px) and (max-width:1180px){
  #site-header.site-header{padding-left:14px!important;padding-right:14px!important;}
  #site-header .desktop-nav{gap:clamp(10px,1.25vw,18px)!important;}
  #site-header .desktop-nav a{font-size:10px!important;letter-spacing:.035em!important;}
  #site-header .custom-logo{max-width:165px!important;}
}
@media (max-width:760px){
  #site-header.site-header{display:flex!important;justify-content:space-between!important;}
  #site-header .desktop-nav{display:none!important;}
  #site-header .menu-toggle{display:block!important;}
  #site-header .global-nav{display:flex;}
}
.home-contact-kicker{color:var(--red)!important;}
.home-contact-inner>div>p:not(.home-contact-kicker){font-size:14px!important;line-height:1.75!important;}


/* v3.5.3: FAN CLUB image replacement and card height stability */
.fanclub-easy-card{
  height:430px;
  min-height:0;
  align-items:stretch;
}
.fanclub-easy-image{
  position:relative;
  width:100%;
  height:100%;
  min-width:0;
  overflow:hidden;
  background:#111;
}
.fanclub-easy-image img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:cover!important;
  display:block;
}
.fanclub-easy-copy{
  min-width:0;
  min-height:0;
  overflow:auto;
}
.fanclub-card{
  height:430px;
  min-height:0;
  align-items:stretch;
}
.fanclub-card>img,
.fanclub-card>.fanclub-placeholder{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center;
}
.fanclub-card-copy{
  min-width:0;
  min-height:0;
  overflow:auto;
}
.fanclub-detail-image{
  width:100%;
  aspect-ratio:4/3;
  min-height:0;
  overflow:hidden;
  background:#111;
}
.fanclub-detail-image img,
.fanclub-detail-image .fanclub-placeholder{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
}
@media(max-width:980px){
  .fanclub-easy-card,.fanclub-card{height:400px}
}
@media(max-width:640px){
  .fanclub-easy-card,.fanclub-card{height:auto}
  .fanclub-easy-image,.fanclub-card>img,.fanclub-card>.fanclub-placeholder{height:clamp(280px,86vw,420px)!important}
  .fanclub-easy-copy,.fanclub-card-copy{overflow:visible}
  .fanclub-detail-image{aspect-ratio:4/3}
}


/* v3.5.4: FAN CLUB individual-page text continuity and decorative-ribbon removal */
.fanclub-detail-copy{
  min-width:0;
  overflow:visible!important;
}
.fanclub-detail-copy>p{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 1.35em!important;
  padding:0!important;
  overflow:visible!important;
  position:static!important;
  background:none!important;
  border:0!important;
  clip-path:none!important;
  writing-mode:horizontal-tb!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
.fanclub-detail-copy>p::before,
.fanclub-detail-copy>p::after{
  content:none!important;
  display:none!important;
}
.fanclub-detail-copy hr,
.fanclub-detail-copy .wp-block-separator,
.fanclub-detail-copy .is-style-dots,
.fanclub-detail-copy [class*="ribbon"],
.fanclub-detail-copy [class*="arrow"]{
  display:none!important;
}
.fanclub-members-area .detail-body{
  overflow:visible!important;
}
.fanclub-members-area .detail-body>p{
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  overflow:visible!important;
}
.fanclub-members-area .detail-body>p::before,
.fanclub-members-area .detail-body>p::after{
  content:none!important;
  display:none!important;
}


/* v3.5.5: FAN CLUB profile is emitted as a plain, decoration-free block. */
.fanclub-detail-copy .fanclub-profile-text{
  display:block!important;
  position:static!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 1.35em!important;
  padding:0!important;
  color:inherit!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  mask:none!important;
  -webkit-mask:none!important;
  transform:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:2!important;
  columns:auto!important;
  column-count:auto!important;
  shape-outside:none!important;
}
.fanclub-detail-copy .fanclub-profile-text::before,
.fanclub-detail-copy .fanclub-profile-text::after{
  content:none!important;
  display:none!important;
}
.fanclub-detail-copy .fanclub-profile-text br{
  display:block!important;
  content:""!important;
}


/* v3.5.6: FINAL FAN CLUB individual-page reset.
   This block intentionally comes last so it wins over earlier theme rules. */
.fanclub-detail-page .fanclub-detail-hero{
  background:#050505!important;
  background-color:#050505!important;
  background-image:none!important;
}
.fanclub-detail-page .fanclub-detail-hero::before,
.fanclub-detail-page .fanclub-detail-hero::after,
.fanclub-detail-page .fanclub-detail-grid::before,
.fanclub-detail-page .fanclub-detail-grid::after,
.fanclub-detail-page .fanclub-detail-copy::before,
.fanclub-detail-page .fanclub-detail-copy::after{
  content:none!important;
  display:none!important;
  background:none!important;
  background-image:none!important;
}
.fanclub-detail-page .fanclub-placeholder{
  background:#111!important;
  background-image:none!important;
  color:#fff!important;
}
.fanclub-detail-page .fanclub-join-button,
.fanclub-detail-page .fanclub-join-button:link,
.fanclub-detail-page .fanclub-join-button:visited{
  position:static!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin:12px 0 0!important;
  padding:15px 28px!important;
  color:#fff!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  mask:none!important;
  -webkit-mask:none!important;
  transform:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:nowrap!important;
  line-height:1.2!important;
  font-weight:700!important;
  text-decoration:none!important;
}
.fanclub-detail-page .fanclub-join-button:hover,
.fanclub-detail-page .fanclub-join-button:focus{
  color:#050505!important;
  background:#fff!important;
  background-color:#fff!important;
  background-image:none!important;
  border-color:#fff!important;
  transform:none!important;
  filter:none!important;
}
.fanclub-detail-page .fanclub-join-button::before,
.fanclub-detail-page .fanclub-join-button::after,
.fanclub-detail-page .fanclub-join-button b::before,
.fanclub-detail-page .fanclub-join-button b::after{
  content:none!important;
  display:none!important;
}
.fanclub-detail-page .fanclub-profile-text{
  display:block!important;
  position:static!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 1.35em!important;
  padding:0!important;
  color:inherit!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  mask:none!important;
  -webkit-mask:none!important;
  transform:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:2!important;
  columns:auto!important;
  column-count:auto!important;
  shape-outside:none!important;
}
.fanclub-detail-page .fanclub-profile-text::before,
.fanclub-detail-page .fanclub-profile-text::after{
  content:none!important;
  display:none!important;
}
@media(max-width:640px){
  .fanclub-detail-page .fanclub-join-button{
    width:100%!important;
  }
}


/* v3.5.7: hard reset for FAN CLUB individual pages. */
html body .fanclub-detail-page,
html body .fanclub-detail-page .fanclub-detail-hero,
html body .fanclub-detail-page .fanclub-detail-grid,
html body .fanclub-detail-page .fanclub-detail-copy{
  background:#050505!important;
  background-color:#050505!important;
  background-image:none!important;
}
html body .fanclub-detail-page .fanclub-detail-copy>small{
  display:block!important;color:#fff!important;background:none!important;
  border:0!important;clip-path:none!important;transform:none!important;
  padding:0!important;margin:0!important;
}
html body .fanclub-detail-page .fanclub-join-button,
html body .fanclub-detail-page a.fanclub-join-button,
html body .fanclub-detail-page span.fanclub-join-button{
  color:#fff!important;background:transparent!important;background-color:transparent!important;
  background-image:none!important;border:1px solid #fff!important;border-radius:0!important;
  box-shadow:none!important;clip-path:none!important;mask:none!important;-webkit-mask:none!important;
  transform:none!important;filter:none!important;position:static!important;
}
html body .fanclub-detail-page .fanclub-detail-hero *,
html body .fanclub-detail-page .fanclub-detail-copy *{
  mask-image:none!important;-webkit-mask-image:none!important;
}


/* GatePRODUCTION v3.6.0 FAN CLUB definitive cleanup */
.fanclub-detail-page .fanclub-detail-copy,
.fanclub-detail-page .fanclub-profile-text {
 writing-mode: horizontal-tb !important;
 text-orientation: mixed !important;
 height: auto !important;
 max-height: none !important;
 overflow: visible !important;
 columns: auto !important;
}

.fanclub-detail-page .join,
.fanclub-detail-page .join-button,
.fanclub-detail-page .join-now,
.fanclub-detail-page .ribbon,
.fanclub-detail-page .bookmark,
.fanclub-detail-page [class*="ribbon"],
.fanclub-detail-page [class*="bookmark"],
.fanclub-detail-page [class*="join"] {
 display:none !important;
}

.fanclub-detail-page *::before,
.fanclub-detail-page *::after {
 content:none !important;
}


/* v3.6.1: final FAN CLUB red vertical-ribbon removal */
body.gate-fanclub-detail-v361 .fanclub-detail-page,
body.gate-fanclub-detail-v361 .fanclub-detail-hero,
body.gate-fanclub-detail-v361 .fanclub-detail-grid,
body.gate-fanclub-detail-v361 .fanclub-detail-copy,
body.gate-fanclub-detail-v361 .fanclub-profile-text{
  background-color:#050505!important;
  background-image:none!important;
  overflow:visible!important;
}
body.gate-fanclub-detail-v361 .fanclub-profile-text{
  display:block!important;position:static!important;float:none!important;clear:both!important;
  width:100%!important;height:auto!important;max-height:none!important;padding:0!important;
  writing-mode:horizontal-tb!important;text-orientation:mixed!important;columns:auto!important;
  border:0!important;box-shadow:none!important;clip-path:none!important;transform:none!important;
}
body.gate-fanclub-detail-v361 .fanclub-detail-page *::before,
body.gate-fanclub-detail-v361 .fanclub-detail-page *::after{content:none!important;display:none!important;}
body.gate-fanclub-detail-v361 .fanclub-detail-page [class*="ribbon"],
body.gate-fanclub-detail-v361 .fanclub-detail-page [id*="ribbon"],
body.gate-fanclub-detail-v361 .fanclub-detail-page [class*="bookmark"],
body.gate-fanclub-detail-v361 .fanclub-detail-page [id*="bookmark"],
body.gate-fanclub-detail-v361 .fanclub-detail-page [class*="join"],
body.gate-fanclub-detail-v361 .fanclub-detail-page [id*="join"]{display:none!important;}


/* v3.6.2 FAN CLUB detail hard rebuild protection */
body.gate-fanclub-detail-v361 .fanclub-detail-page .join,
body.gate-fanclub-detail-v361 .fanclub-detail-page [class*="join"],
body.gate-fanclub-detail-v361 .fanclub-detail-page [class*="ribbon"],
body.gate-fanclub-detail-v361 .fanclub-detail-page [class*="bookmark"]{
 display:none!important;
}
body.gate-fanclub-detail-v361 .fanclub-detail-page::before,
body.gate-fanclub-detail-v361 .fanclub-detail-page::after{
 content:none!important;
 display:none!important;
}
body.gate-fanclub-detail-v361 .fanclub-detail-copy{
 writing-mode:horizontal-tb!important;
}


/* v3.6.3 FAN CLUB red-ribbon complete stop — final cascade layer */
body.gate-fanclub-detail-v363 #gate-fanclub-detail-v363{isolation:isolate;position:relative;overflow:visible;background:#050505!important;background-image:none!important}
body.gate-fanclub-detail-v363 #gate-fanclub-detail-v363 .fanclub-detail-hero,
body.gate-fanclub-detail-v363 #gate-fanclub-detail-v363 .fanclub-detail-grid,
body.gate-fanclub-detail-v363 #gate-fanclub-detail-v363 .fanclub-detail-copy{background:#050505!important;background-image:none!important}
body.gate-fanclub-detail-v363 #gate-fanclub-detail-v363 .fanclub-detail-copy>small{display:block!important;position:static!important;width:auto!important;height:auto!important;padding:0!important;margin:0!important;color:#fff!important;background:transparent!important;border:0!important;transform:none!important;writing-mode:horizontal-tb!important}
body.gate-fanclub-detail-v363 #gate-fanclub-detail-v363 [data-gate-v363-stopped="1"]{display:none!important}
body.gate-fanclub-detail-v363 #gate-fanclub-detail-v363 *::before,
body.gate-fanclub-detail-v363 #gate-fanclub-detail-v363 *::after{content:none!important;display:none!important}

/* v3.6.4: FAN CLUB clean card rebuild - isolate from legacy ribbon styles */
.fanclub-clean-grid{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:28px;
 padding:55px 0 100px;
}
.fanclub-clean-card{
 display:grid;
 grid-template-columns:44% 1fr;
 background:#0b0b0b;
 border:1px solid rgba(255,255,255,.14);
 overflow:hidden;
 position:relative;
 text-decoration:none;
 height:430px;
}
.fanclub-clean-card::before,
.fanclub-clean-card::after,
.fanclub-clean-image::before,
.fanclub-clean-image::after,
.fanclub-clean-copy::before,
.fanclub-clean-copy::after{
 content:none!important;
 display:none!important;
}
.fanclub-clean-image{
 overflow:hidden;
 position:relative;
 background:#111;
}
.fanclub-clean-image img{
 width:100%!important;
 height:100%!important;
 object-fit:cover!important;
 display:block;
}
.fanclub-clean-copy{
 padding:34px;
 overflow:auto;
 min-width:0;
 color:#fff;
}
.fanclub-clean-copy small{color:var(--red);font:500 11px Oswald;letter-spacing:.2em}
.fanclub-clean-copy h2{font:500 clamp(28px,4vw,48px)/1.1 Oswald;margin:12px 0;color:#fff}
.fanclub-clean-copy h3{color:#fff}
.fanclub-clean-copy p{color:#fff}
@media(max-width:980px){.fanclub-clean-grid{grid-template-columns:1fr}}
@media(max-width:640px){.fanclub-clean-card{grid-template-columns:1fr;height:auto}.fanclub-clean-image{height:320px}}


/* v3.6.5 emoji safety fix: prevent WordPress emoji images from stretching into layout elements */
img.wp-smiley, img.emoji {
    display: inline !important;
    border: 0 !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 .07em !important;
    vertical-align: -0.1em !important;
}

/* GatePRODUCTION FAN CLUB v4.0 */
.gpfc-v4{background:#050505;color:#fff;overflow:hidden}.gpfc-v4 *{box-sizing:border-box}.gpfc-v4 a{color:inherit}.gpfc-hero{min-height:72vh;display:flex;align-items:flex-end;background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.25)),url('../images/fanclub.jpg') center/cover no-repeat;padding:170px 0 80px}.gpfc-hero-small{min-height:52vh}.gpfc-hero-inner{width:100%}.gpfc-kicker,.gpfc-heading small,.gpfc-card-copy small{font:500 12px Oswald,sans-serif;letter-spacing:.22em;color:#d71920}.gpfc-hero h1{font:600 clamp(64px,13vw,170px)/.82 Oswald,sans-serif;letter-spacing:-.04em;margin:18px 0}.gpfc-lead{max-width:700px;font-size:clamp(16px,2vw,22px);line-height:1.9}.gpfc-hero-actions{display:flex;gap:12px;margin-top:34px}.gpfc-hero-actions a,.gpfc-entry{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.55);padding:14px 28px;text-decoration:none;font:500 13px Oswald;letter-spacing:.16em}.gpfc-admin-note{margin:0;padding:12px 24px;background:#fff4cc;color:#222;text-align:center}.gpfc-section{padding-top:90px;padding-bottom:100px}.gpfc-heading{display:flex;gap:22px;align-items:flex-start;margin-bottom:42px}.gpfc-heading>span{font:500 12px Oswald;color:#d71920;border-top:1px solid #d71920;padding-top:7px}.gpfc-heading h2{font:600 clamp(42px,7vw,84px)/1 Oswald;margin:4px 0 0}.gpfc-artist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.gpfc-artist-card{display:grid;grid-template-columns:46% 1fr;min-height:420px;background:#0c0c0c;border:1px solid rgba(255,255,255,.12);text-decoration:none;overflow:hidden;transition:.25s}.gpfc-artist-card:hover{transform:translateY(-5px);border-color:rgba(215,25,32,.7)}.gpfc-card-image{min-height:320px;overflow:hidden;background:#111}.gpfc-card-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block;transition:.5s}.gpfc-artist-card:hover img{transform:scale(1.04)}.gpfc-card-copy{padding:34px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.gpfc-card-copy h3{font:500 clamp(25px,3vw,42px)/1.12 Oswald;margin:12px 0}.gpfc-card-copy p{margin:0 0 22px}.gpfc-card-copy b{font-size:14px;margin-bottom:30px}.gpfc-card-copy span{font:500 12px Oswald;letter-spacing:.15em;border-bottom:1px solid #d71920;padding-bottom:5px}.gpfc-content-band{background:#0b0b0b}.gpfc-content-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gpfc-content-grid article{min-height:240px;border:1px solid rgba(255,255,255,.14);padding:30px;display:flex;flex-direction:column;justify-content:flex-end}.gpfc-content-grid b{font:600 34px Oswald}.gpfc-content-grid p{color:#bbb;line-height:1.8}.gpfc-future{max-width:900px!important;text-align:center}.gpfc-future h2{font-size:clamp(32px,5vw,60px)}.gpfc-future p{line-height:2;color:#bbb}.gpfc-profile{padding:150px 0 75px;background:#050505}.gpfc-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:center}.gpfc-profile-image{height:min(72vh,760px);overflow:hidden}.gpfc-profile-image img{width:100%;height:100%;object-fit:cover}.gpfc-profile-copy h1{font:600 clamp(42px,6vw,80px)/1 Oswald;margin:14px 0}.gpfc-profile-copy h2{font-size:20px;letter-spacing:.14em}.gpfc-profile-text{line-height:2;margin:30px 0}.gpfc-fee{font-weight:700}.gpfc-status{color:#bbb}.gpfc-entry{margin-top:18px}.gpfc-local-nav{position:sticky;top:0;z-index:20;background:rgba(5,5,5,.96);border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.gpfc-local-nav .section-inner{display:flex;overflow:auto}.gpfc-local-nav a{padding:18px 22px;text-decoration:none;font:500 12px Oswald;letter-spacing:.15em;white-space:nowrap}.gpfc-editor-content{max-width:900px;line-height:2}.gpfc-news-list article{display:grid;grid-template-columns:150px 1fr auto;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.14)}.gpfc-news-list time,.gpfc-news-list span{font:500 11px Oswald;letter-spacing:.12em;color:#aaa}.gpfc-media-grid,.gpfc-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gpfc-media-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#222,#090909);display:grid;place-items:center;border:1px solid rgba(255,255,255,.12)}.gpfc-media-thumb span{font-size:38px}.gpfc-media-grid h3{font:500 24px Oswald;margin:8px 0}.gpfc-photo-grid article{background:#050505}.gpfc-photo-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;filter:grayscale(.25)}.gpfc-photo-grid p{padding:15px;margin:0}.gpfc-special-box{padding:55px;border:1px solid rgba(255,255,255,.15);background:linear-gradient(120deg,#111,#080808)}.gpfc-special-box h3{font-size:clamp(28px,4vw,50px);margin-top:0}.gpfc-special-box p{max-width:800px;line-height:2;color:#bbb}
@media(max-width:980px){.gpfc-artist-grid{grid-template-columns:1fr}.gpfc-content-grid{grid-template-columns:repeat(2,1fr)}.gpfc-profile-grid{grid-template-columns:1fr;gap:35px}.gpfc-profile-image{height:60vh}.gpfc-media-grid,.gpfc-photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.gpfc-hero{padding:130px 0 55px;min-height:65vh}.gpfc-section{padding-top:65px;padding-bottom:70px}.gpfc-artist-card{grid-template-columns:1fr}.gpfc-content-grid,.gpfc-media-grid,.gpfc-photo-grid{grid-template-columns:1fr}.gpfc-news-list article{grid-template-columns:1fr;gap:8px}.gpfc-profile{padding-top:115px}.gpfc-profile-image{height:52vh}.gpfc-special-box{padding:30px}.gpfc-local-nav a{padding:16px 15px}}


/* GatePRODUCTION FAN CLUB v4.1 polish and image framing */
.gpfc-v4{scroll-behavior:smooth}
.gpfc-card-image img,.gpfc-profile-image img{object-position:var(--gpfc-image-position,center 30%)!important}
.gpfc-card-image.gpfc-fit-contain,.gpfc-profile-image.gpfc-fit-contain{background:linear-gradient(135deg,#171717,#050505)}
.gpfc-card-image.gpfc-fit-contain img,.gpfc-profile-image.gpfc-fit-contain img{object-fit:contain!important}
.gpfc-card-image.gpfc-fit-cover img,.gpfc-profile-image.gpfc-fit-cover img{object-fit:cover!important}
.gpfc-artist-card{position:relative;isolation:isolate;box-shadow:0 18px 55px rgba(0,0,0,.24)}
.gpfc-artist-card::after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid transparent;transition:.25s}
.gpfc-artist-card:hover::after{border-color:rgba(215,25,32,.75)}
.gpfc-card-copy span::after{content:"  →";color:#d71920;transition:transform .25s;display:inline-block}
.gpfc-artist-card:hover .gpfc-card-copy span::after{transform:translateX(6px)}
.gpfc-hero-actions a,.gpfc-entry{transition:background .2s,border-color .2s,transform .2s}
.gpfc-hero-actions a:hover,.gpfc-entry:hover{background:#d71920;border-color:#d71920;transform:translateY(-2px)}
.gpfc-content-grid article{transition:transform .25s,border-color .25s,background .25s}
.gpfc-content-grid article:hover{transform:translateY(-5px);border-color:rgba(215,25,32,.55);background:#101010}
.gpfc-local-nav a{transition:color .2s,background .2s}.gpfc-local-nav a:hover{color:#fff;background:#d71920}
@media(max-width:640px){.gpfc-card-image{min-height:360px}.gpfc-profile-image.gpfc-fit-contain{height:auto;min-height:420px}.gpfc-artist-card:hover,.gpfc-content-grid article:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.gpfc-v4 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* GatePRODUCTION FAN CLUB v4.2 artist detail visual balance */
.gpfc-single .gpfc-profile{padding:145px 0 90px}
.gpfc-single .gpfc-profile-grid{
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:0;
  align-items:stretch;
  min-height:clamp(650px,72vh,820px);
  border:1px solid rgba(215,25,32,.72);
  background:#070707;
}
.gpfc-single .gpfc-profile-image{
  position:relative;
  width:100%;
  height:auto;
  min-height:100%;
  overflow:hidden;
  background:#111;
}
.gpfc-single .gpfc-profile-image img{
  position:absolute!important;
  inset:0;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:var(--gpfc-image-position,center 30%)!important;
  display:block!important;
}
.gpfc-single .gpfc-profile-image.gpfc-fit-contain img{object-fit:contain!important}
.gpfc-single .gpfc-profile-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:clamp(42px,5vw,78px);
}
.gpfc-single .gpfc-profile-copy .breadcrumbs{margin-top:0}
.gpfc-single .gpfc-profile-copy h1{font-size:clamp(46px,5.25vw,88px)}
@media(max-width:980px){
  .gpfc-single .gpfc-profile-grid{grid-template-columns:1fr;min-height:0;border-left:0;border-right:0}
  .gpfc-single .gpfc-profile-image{height:clamp(520px,78vw,760px);min-height:0}
  .gpfc-single .gpfc-profile-copy{padding:44px 28px 55px}
}
@media(max-width:640px){
  .gpfc-single .gpfc-profile{padding-top:110px}
  .gpfc-single .gpfc-profile-image{height:clamp(430px,118vw,620px)}
  .gpfc-single .gpfc-profile-copy{padding:34px 20px 44px}
  .gpfc-single .gpfc-profile-copy h1{font-size:clamp(38px,13vw,58px)}
}


/* GatePRODUCTION FAN CLUB v4.3
 * Applies only to FAN CLUB artist detail pages opened from ARTISTS / VIEW DETAILS.
 * The portrait and profile copy use equal visual columns for every fanclub_artist post.
 */
.gpfc-single .gpfc-profile-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  min-height:clamp(700px,78vh,900px)!important;
  align-items:stretch!important;
}
.gpfc-single .gpfc-profile-image{
  height:auto!important;
  min-height:100%!important;
  align-self:stretch!important;
}
.gpfc-single .gpfc-profile-image img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:var(--gpfc-image-position,center 30%)!important;
}
.gpfc-single .gpfc-profile-copy{
  min-height:100%!important;
  padding:clamp(44px,5vw,82px)!important;
}
@media(max-width:980px){
  .gpfc-single .gpfc-profile-grid{
    grid-template-columns:1fr!important;
    min-height:0!important;
  }
  .gpfc-single .gpfc-profile-image{
    height:clamp(540px,85vw,780px)!important;
    min-height:0!important;
  }
  .gpfc-single .gpfc-profile-copy{min-height:0!important}
}
@media(max-width:640px){
  .gpfc-single .gpfc-profile-image{height:clamp(440px,120vw,640px)!important}
}


/* v4.6.0: smartphone menu visibility + rounded top-page CTA buttons */
@media (max-width:760px){
  #site-header .global-nav{
    justify-content:flex-start!important;
    align-items:center!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    padding:96px 24px 40px!important;
    gap:24px!important;
  }
  #site-header .global-nav a{
    display:block!important;
    flex:0 0 auto!important;
    visibility:visible!important;
    opacity:1!important;
  }
}
.front-page .fanclub-inner>.red-button,
body.home .fanclub-inner>.red-button,
.front-page .home-contact-inner>.red-button,
body.home .home-contact-inner>.red-button{
  border-radius:999px!important;
}


/* v4.7.0: height-aware smartphone navigation + photographic CONTACT panel */
.home-contact{
  position:relative!important;
  isolation:isolate;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(113,0,5,.94),rgba(215,25,32,.78)),
    url('../images/news-console.jpg') center 54%/cover no-repeat!important;
  border-top:0!important;
}
.home-contact:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(0,0,0,.28),transparent 58%,rgba(0,0,0,.18));
  pointer-events:none;
}
.home-contact .home-contact-inner{position:relative;z-index:1}
.home-contact .home-contact-kicker{color:#fff!important}
.home-contact .home-contact-inner>div>p:not(.home-contact-kicker){color:#fff!important}
.home-contact .home-contact-inner>.red-button{
  color:#fff!important;
  border-color:rgba(255,255,255,.72)!important;
  background:rgba(0,0,0,.18)!important;
  backdrop-filter:blur(3px);
}
.home-contact .home-contact-inner>.red-button:hover,
.home-contact .home-contact-inner>.red-button:focus{background:#fff!important;color:#b30008!important}

@media (max-width:760px){
  #site-header .global-nav{
    top:0!important;
    bottom:0!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    box-sizing:border-box!important;
    justify-content:flex-start!important;
    align-items:stretch!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch;
    padding:
      max(78px,calc(env(safe-area-inset-top) + 66px))
      24px
      max(22px,env(safe-area-inset-bottom))!important;
    gap:clamp(11px,2.4vh,22px)!important;
  }
  #site-header .global-nav a{
    width:100%!important;
    min-height:0!important;
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:clamp(3px,.75vh,8px) 8px!important;
    font-size:clamp(15px,2.55vh,22px)!important;
    line-height:1.05!important;
  }
  #site-header .global-nav a:after{bottom:0!important}
  .home-contact{
    padding:56px 0 62px!important;
    background:
      linear-gradient(180deg,rgba(4,4,4,.88) 0 52%,rgba(184,0,9,.91) 52% 100%),
      url('../images/news-console.jpg') center/cover no-repeat!important;
  }
  .home-contact:after{background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 48%,rgba(0,0,0,.12))}
  .home-contact-inner{gap:42px!important}
  .home-contact .home-contact-inner>.red-button{background:rgba(0,0,0,.22)!important}
}
@media (max-width:760px) and (max-height:700px){
  #site-header .global-nav{
    padding-top:max(66px,calc(env(safe-area-inset-top) + 58px))!important;
    padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
    gap:clamp(7px,1.45vh,12px)!important;
  }
  #site-header .global-nav a{
    padding:2px 8px!important;
    font-size:clamp(14px,2.7vh,18px)!important;
  }
}
@media (max-width:760px) and (max-height:560px){
  #site-header .global-nav{align-items:stretch!important;gap:6px!important}
  #site-header .global-nav a{font-size:14px!important;line-height:1!important;padding:2px 8px!important}
}


/* v4.7.1 PC CONTACT black overlay */
@media (min-width:761px){
.home-contact{
 background:linear-gradient(rgba(0,0,0,.72),rgba(0,0,0,.72)),url('../images/news-console.jpg') center/cover no-repeat!important;
}
}

/* v4.7.2 PC FAN CLUB button hover unified with CONTACT */
@media (min-width:761px){
  .fanclub .red-button,
  .fanclub .red-button:visited{
    background:var(--red)!important;
    color:#fff!important;
    border-color:var(--red)!important;
  }
  .fanclub .red-button:hover,
  .fanclub .red-button:focus-visible{
    background:#fff!important;
    color:var(--red)!important;
    border-color:#fff!important;
  }
}


/* v4.7.3 PC decorative white divider + equal FAN CLUB / CONTACT heights */
.home-section-divider{display:none}
@media (min-width:761px){
  .front-page .fanclub,
  body.home .fanclub,
  .front-page .home-contact,
  body.home .home-contact{
    height:320px!important;
    min-height:320px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    display:flex!important;
    align-items:center!important;
  }
  .front-page .fanclub>.section-inner,
  body.home .fanclub>.section-inner,
  .front-page .home-contact>.section-inner,
  body.home .home-contact>.section-inner{
    width:100%;
  }
  .home-section-divider{
    position:relative;
    display:block;
    height:76px;
    min-height:76px;
    overflow:hidden;
    background:
      repeating-linear-gradient(135deg,rgba(5,5,5,.075) 0 2px,transparent 2px 13px),
      #fff;
    border-top:1px solid rgba(0,0,0,.16);
    border-bottom:1px solid rgba(0,0,0,.16);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8),inset 0 -1px 0 rgba(255,255,255,.8);
  }
  .home-section-divider:before,
  .home-section-divider:after{
    content:"";
    position:absolute;
    top:50%;
    width:calc(50% - 48px);
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(0,0,0,.34));
  }
  .home-section-divider:before{left:0}
  .home-section-divider:after{right:0;transform:scaleX(-1)}
  .home-section-divider span{
    position:absolute;
    left:50%;
    top:50%;
    width:24px;
    height:24px;
    transform:translate(-50%,-50%) rotate(45deg);
    background:var(--red);
    border:4px solid #fff;
    box-shadow:0 0 0 1px rgba(0,0,0,.22),0 5px 14px rgba(0,0,0,.22);
  }
  .home-section-divider span:after{
    content:"";
    position:absolute;
    inset:5px;
    border:1px solid rgba(255,255,255,.72);
  }
}


/* =========================================================
   v4.8.0 Premium motion, rhythm, parallax and footer polish
   ========================================================= */
:root{--gate-ease:cubic-bezier(.22,1,.36,1)}

/* Refined reveal motion and stagger support */
.js .reveal{
  opacity:0;
  transform:translate3d(0,34px,0);
  transition:opacity .82s var(--gate-ease),transform .82s var(--gate-ease);
  transition-delay:var(--gate-reveal-delay,0ms);
  will-change:opacity,transform;
}
.js .reveal.visible{opacity:1;transform:translate3d(0,0,0);will-change:auto}
.js .reveal .gate-stagger-item{
  opacity:0;
  transform:translate3d(0,22px,0);
  transition:opacity .68s var(--gate-ease),transform .68s var(--gate-ease);
  transition-delay:calc(var(--gate-stagger-index,0) * 75ms + 100ms);
}
.js .reveal.visible .gate-stagger-item{opacity:1;transform:none}

/* Red rhythm line between principal top-page sections */
body.home main>section:not(.hero),
body.home main>.split-sections,
body.home main>.home-section-divider{position:relative}
body.home main>section:not(.hero):not(.home-contact)::before,
body.home main>.split-sections::before{
  content:"";
  position:absolute;
  z-index:5;
  left:clamp(22px,5vw,76px);
  top:0;
  width:clamp(42px,7vw,104px);
  height:2px;
  background:var(--red);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .9s var(--gate-ease) .12s;
  box-shadow:0 0 18px rgba(215,25,32,.38);
  pointer-events:none;
}
body.home main>section.gate-rhythm-visible:not(.hero):not(.home-contact)::before,
body.home main>.split-sections.gate-rhythm-visible::before{transform:scaleX(1)}
body.home .fanclub::before{top:1px!important}

/* Subtle PC parallax, preserving current overlays */
@media (min-width:761px){
  body.home .fanclub,
  body.home .home-contact{
    background-position:center calc(50% + var(--gate-parallax-y,0px))!important;
    background-attachment:scroll!important;
    will-change:background-position;
  }
}

/* Consistent premium interaction for primary links/buttons */
body.home .outline-button,
body.home .red-button,
body.home .section-heading>a,
body.home .artist-card,
body.home .disc-grid>a,
.site-footer a{
  transition:transform .3s var(--gate-ease),box-shadow .3s var(--gate-ease),background-color .3s ease,color .3s ease,border-color .3s ease,opacity .3s ease;
}
body.home .outline-button:hover,
body.home .outline-button:focus-visible,
body.home .red-button:hover,
body.home .red-button:focus-visible{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.22)}
body.home a b{display:inline-block;transition:transform .3s var(--gate-ease)}
body.home a:hover b,
body.home a:focus-visible b{transform:translateX(6px)}
body.home .artist-card:hover,
body.home .artist-card:focus-visible,
body.home .disc-grid>a:hover,
body.home .disc-grid>a:focus-visible{transform:translateY(-5px);box-shadow:0 16px 38px rgba(0,0,0,.24)}
body.home a:focus-visible,
.site-footer a:focus-visible{outline:2px solid #fff;outline-offset:5px}
body.home .section-light a:focus-visible{outline-color:var(--red)}

/* Premium footer frame and restrained music-inspired accents */
.site-footer{
  position:relative;
  overflow:hidden;
  border-top:0!important;
  background:
    radial-gradient(circle at 50% 0,rgba(255,255,255,.045),transparent 44%),
    #050505;
}
.site-footer::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,transparent 0 7%,#fff 7% 46%,var(--red) 46% 54%,#fff 54% 93%,transparent 93%);
  opacity:.95;
}
.site-footer::after{
  content:"";
  position:absolute;
  left:50%;top:4px;
  width:180px;height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,var(--red),transparent);
  box-shadow:0 0 18px rgba(215,25,32,.55);
}
.site-footer .footer-brand{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:20px 24px;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 0 0 5px rgba(255,255,255,.025),0 18px 45px rgba(0,0,0,.22);
}
.site-footer .footer-brand::before,
.site-footer .footer-brand::after{
  content:"";position:absolute;width:18px;height:18px;border-color:var(--red);border-style:solid
}
.site-footer .footer-brand::before{left:-1px;top:-1px;border-width:2px 0 0 2px}
.site-footer .footer-brand::after{right:-1px;bottom:-1px;border-width:0 2px 2px 0}
.site-footer .footer-links a{position:relative;text-decoration:none}
.site-footer .footer-links a::after{
  content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--red);transition:right .35s var(--gate-ease)
}
.site-footer .footer-links a:hover::after,
.site-footer .footer-links a:focus-visible::after{right:0}
.site-footer .copyright{position:relative;padding-top:26px!important}
.site-footer .copyright::before{
  content:"";position:absolute;left:50%;top:0;width:min(420px,70vw);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),var(--red),rgba(255,255,255,.34),transparent)
}

@media(max-width:760px){
  body.home main>section:not(.hero):not(.home-contact)::before,
  body.home main>.split-sections::before{left:22px;width:48px}
  .site-footer .footer-brand{padding:16px 18px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .js .reveal,.js .reveal .gate-stagger-item{opacity:1!important;transform:none!important;transition:none!important}
  body.home main>section::before,body.home main>.split-sections::before{transform:scaleX(1)!important;transition:none!important}
  body.home .fanclub,body.home .home-contact{background-position:center!important;will-change:auto!important}
  body.home a,body.home a b,.site-footer a{transition:none!important;transform:none!important}
}

/* =========================================================
   v5.0.2 CINEMATIC EDITION
   ========================================================= */
html.gate-cinematic-lock,html.gate-cinematic-lock body{overflow:hidden}
.gate-cinematic-loader{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:#000;opacity:1;visibility:visible;transition:opacity .9s cubic-bezier(.22,1,.36,1),visibility 0s linear .9s}
.gate-cinematic-loader.is-finished{opacity:0;visibility:hidden;pointer-events:none}
.gate-cinematic-logo{position:relative;display:flex;align-items:center;gap:15px;color:#fff;opacity:0;transform:scale(.96);animation:gateLogoReveal 1.05s cubic-bezier(.22,1,.36,1) .18s forwards}
.gate-cinematic-brandmark{display:block;width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(215,25,32,.28))}
.gate-cinematic-word{display:flex;flex-direction:column;line-height:1}.gate-cinematic-word b{font:600 30px/1 Oswald,sans-serif;letter-spacing:.16em}.gate-cinematic-word small{margin-top:7px;font:500 9px/1 Oswald,sans-serif;letter-spacing:.5em;color:#bbb}
.gate-cinematic-logo i{position:absolute;left:0;right:0;bottom:-18px;height:2px;background:linear-gradient(90deg,transparent,var(--red),transparent);transform:scaleX(0);animation:gateLogoLine .75s cubic-bezier(.22,1,.36,1) .72s forwards;box-shadow:0 0 18px rgba(215,25,32,.7)}
@keyframes gateLogoReveal{to{opacity:1;transform:scale(1)}}@keyframes gateLogoLine{to{transform:scaleX(1)}}
.gate-page-transition{position:fixed;inset:0;z-index:99998;background:#000;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .36s ease,visibility 0s linear .36s}
.gate-page-transition.is-active{opacity:1;visibility:visible;transition:opacity .36s ease;pointer-events:auto}
body.home .hero::after{content:none;display:none}
body.home .section-heading h2{position:relative;display:inline-block}
body.home .section-heading h2::after{content:"";display:block;width:100%;height:2px;margin-top:11px;background:var(--red);box-shadow:0 0 14px rgba(215,25,32,.45);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.22,1,.36,1) .18s}
body.home .visible .section-heading h2::after,body.home .gate-rhythm-visible .section-heading h2::after{transform:scaleX(1)}
body.home .artist-card,body.home .disc-grid>a{overflow:hidden}
body.home .artist-card img,body.home .disc-grid>a img{transition:transform 1.15s cubic-bezier(.22,1,.36,1),filter .65s ease;will-change:transform}
body.home .artist-card:hover img,body.home .artist-card:focus-visible img,body.home .disc-grid>a:hover img,body.home .disc-grid>a:focus-visible img{transform:scale(1.075);filter:contrast(1.04)}
body.home .artist-card:nth-child(odd) img{animation:gateKenBurns 16s ease-in-out infinite alternate}
body.home .artist-card:nth-child(even) img{animation:gateKenBurnsAlt 18s ease-in-out infinite alternate}
@keyframes gateKenBurns{from{transform:scale(1.015) translate3d(-.4%,0,0)}to{transform:scale(1.07) translate3d(.7%,-.5%,0)}}
@keyframes gateKenBurnsAlt{from{transform:scale(1.02) translate3d(.5%,0,0)}to{transform:scale(1.065) translate3d(-.6%,-.4%,0)}}
body.home .artist-card:hover img,body.home .artist-card:focus-visible img{animation-play-state:paused}
body.home .event-list li{position:relative;overflow:hidden}
body.home .event-list li::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--red);transform:scaleY(0);transform-origin:bottom;transition:transform .45s cubic-bezier(.22,1,.36,1);box-shadow:0 0 14px rgba(215,25,32,.5)}
body.home .event-list li:hover::before,body.home .event-list li:focus-within::before{transform:scaleY(1)}
body.home .news-list li time{display:inline-block;opacity:0;transform:translateX(-14px);transition:opacity .55s ease,transform .65s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--gate-stagger-index,0) * 90ms + 180ms)}
body.home .reveal.visible .news-list li time{opacity:1;transform:none}
@media(max-width:760px){.gate-cinematic-brandmark{width:52px;height:52px}.gate-cinematic-word b{font-size:24px}.gate-cinematic-word small{font-size:8px}.gate-cinematic-loader{display:none}.gate-page-transition{transition-duration:.24s}}
@media(prefers-reduced-motion:reduce){html.gate-cinematic-lock,html.gate-cinematic-lock body{overflow:auto}.gate-cinematic-loader{display:none!important}.gate-page-transition{display:none!important}body.home .artist-card img{animation:none!important}body.home .section-heading h2::after{transform:scaleX(1)!important;transition:none!important}body.home .news-list li time{opacity:1!important;transform:none!important;transition:none!important}}

/* =========================================================
   v5.1.0 FINAL CINEMATIC FINISH
   ========================================================= */
:root{--gate-metal:#f4f4f4;--gate-cursor-x:-100px;--gate-cursor-y:-100px}

/* Film texture and one-shot light leak */
.gate-film-grain,.gate-light-leak{position:fixed;inset:0;pointer-events:none;z-index:9997}
.gate-film-grain{opacity:.032;mix-blend-mode:screen;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='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.72'/%3E%3C/svg%3E");animation:gateGrainShift .28s steps(2) infinite}
.gate-light-leak{opacity:0;background:linear-gradient(105deg,transparent 15%,rgba(215,25,32,.08) 35%,rgba(255,168,92,.18) 48%,rgba(255,255,255,.08) 54%,transparent 72%);transform:translateX(-130%) skewX(-11deg);animation:gateLightLeak 2.35s cubic-bezier(.19,1,.22,1) .55s 1 both}
@keyframes gateGrainShift{0%{transform:translate3d(0,0,0)}25%{transform:translate3d(-1.5%,1%,0)}50%{transform:translate3d(1%,-1.5%,0)}75%{transform:translate3d(.5%,1.5%,0)}100%{transform:translate3d(-1%,0,0)}}
@keyframes gateLightLeak{0%{opacity:0;transform:translateX(-130%) skewX(-11deg)}18%{opacity:1}72%{opacity:.65}100%{opacity:0;transform:translateX(135%) skewX(-11deg)}}

/* Movie-title opening: metallic wordmark, aura and sweep */
.gate-cinematic-logo{isolation:isolate;padding:26px 32px;overflow:hidden}
.gate-cinematic-aura{position:absolute;z-index:-1;left:50%;top:50%;width:250px;height:140px;transform:translate(-50%,-50%) scale(.7);border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.13),rgba(215,25,32,.11) 30%,transparent 68%);filter:blur(15px);opacity:0;animation:gateAura 1.7s ease .25s forwards}
.gate-cinematic-word b{color:transparent;background:linear-gradient(180deg,#fff 0%,#bcbcbc 34%,#fff 51%,#717171 72%,#e8e8e8 100%);-webkit-background-clip:text;background-clip:text;text-shadow:0 1px 0 rgba(255,255,255,.15);filter:drop-shadow(0 0 12px rgba(255,255,255,.12))}
.gate-cinematic-word small{text-shadow:0 0 12px rgba(255,255,255,.18)}
.gate-cinematic-brandmark{filter:drop-shadow(0 0 9px rgba(255,255,255,.2)) drop-shadow(0 0 24px rgba(215,25,32,.38));animation:gateMarkPulse 1.8s ease .18s both}
.gate-cinematic-sweep{position:absolute;z-index:3;top:-35%;bottom:-35%;left:-45%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);filter:blur(2px);transform:skewX(-17deg);opacity:0;animation:gateTitleSweep 1.15s cubic-bezier(.22,1,.36,1) .75s forwards}
@keyframes gateAura{to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes gateMarkPulse{0%{opacity:0;transform:scale(.88);filter:blur(3px) drop-shadow(0 0 0 transparent)}55%{opacity:1;transform:scale(1.025)}100%{opacity:1;transform:scale(1)}}
@keyframes gateTitleSweep{0%{left:-45%;opacity:0}20%{opacity:.82}75%{opacity:.38}100%{left:125%;opacity:0}}

/* Hero depth parallax: video/background and copy travel independently */
@media(min-width:761px){
 body.home .hero{overflow:hidden;background-position:center calc(50% + var(--gate-hero-bg-y,0px));background-size:cover}
 body.home .hero-video{transform:translate3d(0,var(--gate-hero-media-y,0px),0) scale(1.075);will-change:transform}
 body.home .hero-content{transform:translate3d(0,var(--gate-hero-copy-y,0px),0);will-change:transform}
 body.home .scroll-cue,body.home .hero-dots{transform:translate3d(0,var(--gate-hero-ui-y,0px),0);will-change:transform}
}

/* GatePRODUCTION custom desktop cursor */
.gate-cursor{position:fixed;left:0;top:0;width:38px;height:38px;z-index:100000;pointer-events:none;transform:translate3d(calc(var(--gate-cursor-x) - 19px),calc(var(--gate-cursor-y) - 19px),0);transition:width .22s ease,height .22s ease,margin .22s ease,opacity .25s ease;opacity:0}
.gate-cursor.is-visible{opacity:1}.gate-cursor span{position:absolute;inset:0;border:1px solid rgba(255,255,255,.85);border-radius:50%;box-shadow:0 0 12px rgba(255,255,255,.12);transition:.22s ease}.gate-cursor::after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);transition:.22s ease}.gate-cursor b{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font:600 11px/1 Oswald,sans-serif;opacity:0;transition:.18s ease}.gate-cursor.is-active{width:52px;height:52px;margin:-7px}.gate-cursor.is-active span{border-color:var(--red);background:rgba(215,25,32,.13);box-shadow:0 0 24px rgba(215,25,32,.45)}.gate-cursor.is-active::after{opacity:0}.gate-cursor.is-active b{opacity:1}
@media(pointer:fine) and (min-width:761px){body.gate-custom-cursor,body.gate-custom-cursor a,body.gate-custom-cursor button,body.gate-custom-cursor input,body.gate-custom-cursor textarea,body.gate-custom-cursor select{cursor:none!important}}

/* NEWS cinematic depth hover */
body.home .news-list li{position:relative;isolation:isolate;transition:transform .42s cubic-bezier(.22,1,.36,1),box-shadow .42s ease,background-color .3s ease;padding-left:18px;padding-right:14px}
body.home .news-list li::before{content:"";position:absolute;z-index:-1;left:0;top:8px;bottom:8px;width:3px;background:var(--red);box-shadow:0 0 14px rgba(215,25,32,.48);transform:scaleY(0);transform-origin:center;transition:transform .36s cubic-bezier(.22,1,.36,1)}
body.home .news-list li::after{content:"";position:absolute;z-index:2;inset:0 auto 0 -35%;width:26%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.13),transparent);transform:skewX(-18deg);opacity:0;pointer-events:none}
body.home .news-list li:hover,body.home .news-list li:focus-within{transform:perspective(900px) rotateX(1.2deg) rotateY(-1deg) translate3d(0,-6px,16px);box-shadow:0 18px 34px rgba(0,0,0,.3);background:rgba(255,255,255,.025)}
body.home .news-list li:hover::before,body.home .news-list li:focus-within::before{transform:scaleY(1)}
body.home .news-list li:hover::after,body.home .news-list li:focus-within::after{animation:gateNewsScan .75s cubic-bezier(.22,1,.36,1) both}
body.home .news-list li a{transition:letter-spacing .36s ease,color .3s ease}
body.home .news-list li:hover a,body.home .news-list li:focus-within a{letter-spacing:.025em}
@keyframes gateNewsScan{0%{left:-35%;opacity:0}22%{opacity:1}100%{left:115%;opacity:0}}

/* Footer reveal, logo glow and breathing beam */
.gate-footer-cinematic .footer-grid,.gate-footer-cinematic .copyright{opacity:0;transform:translate3d(0,24px,0);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}
.gate-footer-cinematic .copyright{transition-delay:.18s}.gate-footer-cinematic.gate-footer-visible .footer-grid,.gate-footer-cinematic.gate-footer-visible .copyright{opacity:1;transform:none}
.gate-footer-cinematic::after{animation:gateFooterBeam 4.8s ease-in-out infinite}
.gate-footer-cinematic.gate-footer-visible .footer-logo-image{animation:gateFooterLogoGlow 1.55s cubic-bezier(.22,1,.36,1) .25s 1 both}
@keyframes gateFooterBeam{0%,100%{opacity:.35;transform:translateX(-50%) scaleX(.72)}50%{opacity:1;transform:translateX(-50%) scaleX(1.18)}}
@keyframes gateFooterLogoGlow{0%{opacity:.25;filter:brightness(.5) drop-shadow(0 0 0 transparent);transform:scale(.94)}55%{opacity:1;filter:brightness(1.3) drop-shadow(0 0 24px rgba(215,25,32,.72));transform:scale(1.035)}100%{opacity:1;filter:brightness(1) drop-shadow(0 0 6px rgba(215,25,32,.12));transform:scale(1)}}

@media(max-width:760px),(pointer:coarse){.gate-cursor{display:none!important}.gate-film-grain{opacity:.018}.gate-light-leak{animation-duration:1.7s}body.home .news-list li:hover{transform:none}.gate-footer-cinematic .footer-grid,.gate-footer-cinematic .copyright{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.gate-film-grain,.gate-light-leak,.gate-cursor{display:none!important}.gate-cinematic-aura,.gate-cinematic-brandmark,.gate-cinematic-sweep,.gate-footer-cinematic::after,.gate-footer-cinematic .footer-logo-image{animation:none!important}.gate-footer-cinematic .footer-grid,.gate-footer-cinematic .copyright{opacity:1!important;transform:none!important;transition:none!important}body.home .hero-video,body.home .hero-content,body.home .scroll-cue,body.home .hero-dots{transform:none!important}body.home .news-list li{transition:none!important}body.home .news-list li:hover{transform:none!important}}

/* GatePRODUCTION v5.1.1 cinematic vertical logo opening */
.gate-cinematic-loader{
position:fixed;inset:0;background:#050505;z-index:99999;display:flex;align-items:center;justify-content:center;overflow:hidden;
animation:gateLoaderFade 2.8s ease 1.8s forwards;
}
.gate-cinematic-logo{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:55vh}
.gate-cinematic-brandmark{
width:clamp(90px,12vw,180px)!important;max-height:48vh;object-fit:contain;
filter:drop-shadow(0 0 22px rgba(255,255,255,.35)) drop-shadow(0 0 45px rgba(212,0,18,.25));
animation:gateLogoRise 2s ease both;
}
.gate-cinematic-aura{position:absolute;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 65%);filter:blur(12px);animation:gateAura 2s ease both}
.gate-cinematic-word{display:none}
.gate-cinematic-sweep{
position:absolute;left:-60vw;top:50%;width:220vw;height:1px;
background:linear-gradient(90deg,transparent,rgba(255,255,255,0),#fff,rgba(212,0,18,.8),#fff,transparent);
box-shadow:0 0 18px #fff,0 0 35px rgba(212,0,18,.8);
animation:gateSweep 1.5s ease .8s forwards;
}
@keyframes gateSweep{from{transform:translateX(-10%)}to{transform:translateX(100%)}}
@keyframes gateLogoRise{from{opacity:0;transform:translateY(30px) scale(.92);filter:brightness(0)}to{opacity:1;transform:none;filter:brightness(1)}}
@keyframes gateAura{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}
@keyframes gateLoaderFade{to{opacity:0;visibility:hidden;pointer-events:none}}


/* =========================================================
   GatePRODUCTION v5.2.0 — Premium interaction polish
   ========================================================= */
.site-header{transition:height .45s cubic-bezier(.2,.8,.2,1),background-color .45s,backdrop-filter .45s,border-color .45s,box-shadow .45s,padding .45s}
.site-header.gate-header-scrolled{background:rgba(4,4,4,.72)!important;-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%);border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 12px 40px rgba(0,0,0,.24)}
.site-header.gate-header-scrolled .brand{transform:scale(.9);transform-origin:left center}
.site-header .brand{transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.desktop-nav a{position:relative;transition:color .3s,opacity .3s,transform .3s}
.desktop-nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:-9px;height:1px;background:#d20b20;box-shadow:0 0 9px rgba(210,11,32,.65);transition:left .35s,right .35s}
.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{left:0;right:0}
.desktop-nav a:hover{transform:translateY(-1px)}

.artist-card,.artists-grid>a,.artist-grid>a{position:relative;isolation:isolate;overflow:hidden;transform:translateZ(0);transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .55s,border-color .55s}
.artist-card:after,.artists-grid>a:after,.artist-grid>a:after{content:"";position:absolute;inset:-45%;z-index:3;pointer-events:none;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.24) 49%,transparent 60%);transform:translateX(-70%) rotate(8deg);opacity:0;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .3s}
.artist-card:hover,.artists-grid>a:hover,.artist-grid>a:hover{transform:translateY(-9px) scale(1.012);box-shadow:0 26px 60px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.09)}
.artist-card:hover:after,.artists-grid>a:hover:after,.artist-grid>a:hover:after{transform:translateX(70%) rotate(8deg);opacity:1}
.artist-card img,.artists-grid>a img,.artist-grid>a img{transition:transform 1s cubic-bezier(.2,.8,.2,1),filter .6s}
.artist-card:hover img,.artists-grid>a:hover img,.artist-grid>a:hover img{transform:scale(1.06);filter:contrast(1.04) brightness(1.04)}

.news-list li,.news-card,.post-card{position:relative;transition:transform .35s,background-color .35s,border-color .35s,box-shadow .35s}
.news-list li:before,.news-card:before,.post-card:before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:2px;background:#d20b20;transform:scaleY(0);transform-origin:center;transition:transform .4s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 12px rgba(210,11,32,.65)}
.news-list li:hover,.news-card:hover,.post-card:hover{transform:translateX(7px);background-color:rgba(255,255,255,.035);box-shadow:0 14px 34px rgba(0,0,0,.18)}
.news-list li:hover:before,.news-card:hover:before,.post-card:hover:before{transform:scaleY(1)}

.outline-button,.red-button,.gate-contact-link,.button,.wp-element-button{position:relative;overflow:hidden;isolation:isolate;transition:transform .3s,box-shadow .3s,color .3s,background-color .3s,border-color .3s}
.outline-button:before,.red-button:before,.button:before,.wp-element-button:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.22) 48%,transparent 66%);transform:translateX(-130%);transition:transform .65s}
.outline-button:hover:before,.red-button:hover:before,.button:hover:before,.wp-element-button:hover:before{transform:translateX(130%)}
.outline-button:hover,.red-button:hover,.button:hover,.wp-element-button:hover{transform:translateY(-2px);box-shadow:0 13px 28px rgba(0,0,0,.25)}

.gate-v52-reveal{opacity:0;transform:translateY(24px);filter:blur(5px);transition:opacity .85s cubic-bezier(.2,.8,.2,1),transform .85s cubic-bezier(.2,.8,.2,1),filter .85s;transition-delay:calc(var(--gate-v52-index,0) * 70ms)}
.gate-v52-reveal.is-visible{opacity:1;transform:none;filter:none}

@media(max-width:760px){
 .site-header.gate-header-scrolled{background:rgba(4,4,4,.88)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
 .artist-card:hover,.artists-grid>a:hover,.artist-grid>a:hover,.news-list li:hover,.news-card:hover,.post-card:hover{transform:none;box-shadow:none}
 .gate-v52-reveal{filter:none;transform:translateY(14px);transition-duration:.58s}
}
@media(prefers-reduced-motion:reduce){
 .gate-v52-reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
 .site-header,.site-header .brand,.artist-card,.artists-grid>a,.artist-grid>a,.news-list li,.news-card,.post-card,.outline-button,.red-button,.button,.wp-element-button{transition:none!important}
}

/* =========================================================
   GatePRODUCTION v5.2.1 — Home ARTISTS hover unified with DISCOGRAPHY
   ========================================================= */
body.home .artist-card{
  position:relative;
  overflow:hidden;
  transform:none;
  box-shadow:none;
  transition:none;
}
body.home .artist-card::after{
  content:none!important;
  display:none!important;
}
body.home .artist-card:hover,
body.home .artist-card:focus-visible{
  transform:none;
  box-shadow:none;
}
body.home .artist-card img{
  animation:none!important;
  transform:none;
  filter:grayscale(1);
  opacity:1;
  transition:transform 1.15s cubic-bezier(.22,1,.36,1),filter .65s ease,opacity .65s ease;
  will-change:transform,filter,opacity;
}
body.home .artist-card:hover img,
body.home .artist-card:focus-visible img{
  animation:none!important;
  transform:scale(1.075);
  filter:grayscale(0) contrast(1.04);
  opacity:.78;
}
@media(max-width:760px),(pointer:coarse){
  body.home .artist-card,
  body.home .artist-card:hover,
  body.home .artist-card:focus-visible{
    transform:none;
    box-shadow:none;
  }
  body.home .artist-card img,
  body.home .artist-card:hover img,
  body.home .artist-card:focus-visible img{
    animation:none!important;
    transform:none;
    filter:grayscale(1);
    opacity:1;
  }
}
@media(prefers-reduced-motion:reduce){
  body.home .artist-card img,
  body.home .artist-card:hover img,
  body.home .artist-card:focus-visible img{
    animation:none!important;
    transition:none!important;
  }
}

/* ==========================================================
   GatePRODUCTION v5.2.4 — official vertical-logo cinematic opening (no light sweep)
   One unified sequence: darkness → particles → vertical official logo reveal. No sweep or travelling light.
   ========================================================== */
html.gate-cinema-lock,html.gate-cinema-lock body{overflow:hidden!important}
.gate-cinema-opening{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;overflow:hidden;background:#000;opacity:1;visibility:visible;pointer-events:auto;isolation:isolate}
.gate-cinema-opening.is-playing{animation:gateCinemaTimeline 6s cubic-bezier(.22,1,.36,1) both}
.gate-cinema-opening.is-ending{opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1s cubic-bezier(.22,1,.36,1),visibility 0s linear 1s}
.gate-cinema-opening::before{content:"";position:absolute;inset:-15%;z-index:-3;background:radial-gradient(circle at 50% 48%,rgba(35,35,38,.34) 0,rgba(8,8,10,.18) 26%,transparent 55%);opacity:0;animation:gateCinemaRoom 4.8s ease .4s both}
.gate-cinema-haze{position:absolute;left:50%;top:50%;z-index:-1;width:min(78vw,820px);aspect-ratio:1.8;transform:translate(-50%,-50%) scale(.72);border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.09),rgba(185,12,22,.055) 28%,transparent 68%);filter:blur(34px);opacity:0;animation:gateCinemaHaze 4.6s ease 1s both}
.gate-cinema-particles{position:absolute;inset:0;z-index:-2;overflow:hidden;opacity:0;animation:gateParticlesField 5s ease .18s both}
.gate-cinema-particles i{position:absolute;left:var(--x);top:var(--y);width:calc(1px + (var(--i)%3)*.55px);height:calc(1px + (var(--i)%3)*.55px);border-radius:50%;background:rgba(255,255,255,.88);box-shadow:0 0 5px rgba(255,255,255,.65);opacity:0;transform:translate3d(0,16px,0) scale(.4);animation:gateParticleFloat calc(2.6s + (var(--i)%7)*.34s) ease-in-out calc(.1s + (var(--i)%11)*.09s) infinite alternate}
.gate-cinema-particles i:nth-child(3n){background:rgba(225,35,45,.72);box-shadow:0 0 7px rgba(215,25,32,.48)}
.gate-cinema-logo-frame{position:relative;width:min(29vw,285px);max-height:64vh;display:grid;place-items:center;overflow:hidden;opacity:0;transform:scale(.91) translateY(11px);filter:brightness(.08) contrast(1.08);animation:gateCinemaLogoReveal 3.65s cubic-bezier(.16,1,.3,1) 1.05s both}
.gate-cinema-vertical-logo{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;width:100%;padding:8px 22px 16px;box-sizing:border-box}
.gate-cinema-logo-image{display:block;width:min(100%,210px);height:auto;object-fit:contain;filter:drop-shadow(0 0 0 transparent);user-select:none}
.gate-cinema-logo-type{display:flex;flex-direction:column;align-items:center;margin-top:13px;color:#fff;font-family:Oswald,sans-serif;line-height:1;text-align:center;text-shadow:0 0 10px rgba(255,255,255,.13)}
.gate-cinema-logo-type strong{font-size:clamp(28px,3.3vw,43px);font-weight:600;letter-spacing:.17em;margin-right:-.17em}
.gate-cinema-logo-type small{margin-top:8px;font-size:clamp(8px,.82vw,11px);font-weight:500;letter-spacing:.52em;margin-right:-.52em;color:rgba(255,255,255,.84)}
.gate-cinema-logo-glow{position:absolute;z-index:0;inset:7%;border-radius:42%;background:radial-gradient(ellipse,rgba(255,255,255,.16),rgba(202,20,31,.11) 34%,transparent 72%);filter:blur(24px);opacity:0;transform:scale(.75);animation:gateCinemaLogoGlow 3.3s ease 1.55s both}
@keyframes gateCinemaTimeline{0%,84%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden;pointer-events:none}}
@keyframes gateCinemaRoom{0%{opacity:0;transform:scale(1.08)}45%,100%{opacity:1;transform:scale(1)}}
@keyframes gateParticlesField{0%{opacity:0}18%{opacity:.68}72%{opacity:.42}100%{opacity:0}}
@keyframes gateParticleFloat{0%{opacity:0;transform:translate3d(-5px,14px,0) scale(.35)}38%{opacity:.72}100%{opacity:.16;transform:translate3d(7px,-18px,0) scale(1)}}
@keyframes gateCinemaHaze{0%{opacity:0;transform:translate(-50%,-50%) scale(.72)}55%{opacity:.72}100%{opacity:.18;transform:translate(-50%,-50%) scale(1.06)}}
@keyframes gateCinemaLogoReveal{0%{opacity:0;transform:scale(.91) translateY(11px);filter:brightness(.08) contrast(1.08)}28%{opacity:.28}68%{opacity:1;filter:brightness(.72) contrast(1.04)}100%{opacity:1;transform:scale(1) translateY(0);filter:brightness(1) contrast(1)}}
@keyframes gateCinemaLogoGlow{0%{opacity:0;transform:scale(.75)}58%{opacity:.82}100%{opacity:.28;transform:scale(1.12)}}
@media(max-width:760px){.gate-cinema-logo-frame{width:min(58vw,245px);max-height:60vh}.gate-cinema-vertical-logo{padding:8px 18px 14px}.gate-cinema-logo-image{width:min(100%,180px)}.gate-cinema-haze{width:115vw}.gate-cinema-particles i:nth-child(n+31){display:none}}
@media(prefers-reduced-motion:reduce){html.gate-cinema-lock,html.gate-cinema-lock body{overflow:auto!important}.gate-cinema-opening{display:none!important}.gate-cinema-opening *{animation:none!important}}

/* v5.2.4: opening light-sweep hard stop (legacy-proof) */
.gate-cinema-opening::after,
.gate-cinema-logo-sweep,
.gate-cinematic-sweep{display:none!important;content:none!important;animation:none!important;background:none!important;box-shadow:none!important}


/* ==========================================================
   GatePRODUCTION v5.2.5 — supplied official opening logo image
   The uploaded PNG is displayed as-is. All travelling-light effects are disabled.
   ========================================================== */
.gate-cinema-logo-frame{
  width:min(88vw,920px);
  max-width:920px;
  max-height:68vh;
  overflow:visible;
}
.gate-cinema-vertical-logo{
  display:grid;
  place-items:center;
  width:100%;
  padding:0;
}
.gate-cinema-logo-image{
  display:block;
  width:100%;
  height:auto;
  max-height:68vh;
  object-fit:contain;
  filter:drop-shadow(0 0 16px rgba(255,255,255,.08)) drop-shadow(0 0 28px rgba(190,20,29,.17));
}
.gate-cinema-logo-type{display:none!important}
.gate-cinema-logo-glow{
  inset:10% 19%;
  border-radius:50%;
  opacity:0;
}
.gate-light-leak,
.gate-cinema-opening::after,
.gate-cinema-logo-sweep,
.gate-cinematic-sweep,
[class*="cinema"][class*="sweep"],
[class*="opening"][class*="light"]{
  display:none!important;
  content:none!important;
  animation:none!important;
  background:none!important;
  box-shadow:none!important;
}
@media(max-width:760px){
  .gate-cinema-logo-frame{width:94vw;max-width:680px;max-height:60vh}
  .gate-cinema-vertical-logo{padding:0}
  .gate-cinema-logo-image{width:100%;max-height:60vh}
}

/* ==========================================================
   GatePRODUCTION v5.2.6 — opening logo size reduced to 50%
   Only the displayed logo dimensions are changed.
   ========================================================== */
.gate-cinema-logo-frame{
  width:min(44vw,460px);
  max-width:460px;
}
@media(max-width:760px){
  .gate-cinema-logo-frame{width:47vw;max-width:340px}
}

/* ==========================================================
   GatePRODUCTION v5.2.7 — Member service foundation
   ========================================================== */
.gate-member-page{background:#050505;color:#fff;min-height:70vh}.gate-member-hero{padding:150px 0 70px;background:radial-gradient(circle at 75% 20%,rgba(190,20,29,.22),transparent 34%),linear-gradient(180deg,#050505,#0b0b0b)}.gate-member-hero small{letter-spacing:.22em;color:#cfd0d2}.gate-member-hero h1{font-size:clamp(38px,7vw,86px);margin:.12em 0}.gate-member-hero p{color:#c3c3c3}.gate-member-shell{padding-top:70px;padding-bottom:100px}.gate-member-panel{max-width:720px;margin:0 auto;padding:clamp(24px,5vw,52px);background:#0d0d0d;border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 70px rgba(0,0,0,.45)}.gate-member-form{display:grid;gap:22px}.gate-member-form label{display:grid;gap:9px;font-weight:700}.gate-member-form label>span{font-size:11px;color:#999;font-weight:400}.gate-member-form input[type=text],.gate-member-form input[type=email],.gate-member-form input[type=password],.gate-member-form input[type=tel]{width:100%;padding:15px 16px;background:#060606;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:0}.gate-member-form input:focus{outline:1px solid #be141d;border-color:#be141d}.gate-member-form button,.gate-fanclub-member-actions .primary{border:0;background:#be141d;color:#fff;padding:16px 24px;font-weight:800;letter-spacing:.08em;cursor:pointer;text-align:center}.gate-member-form button:hover,.gate-fanclub-member-actions .primary:hover{background:#fff;color:#be141d}.gate-member-check{display:flex!important;grid-template-columns:auto 1fr;align-items:flex-start;font-weight:400!important}.gate-member-check input{margin-top:4px}.gate-member-check span{font-size:14px!important;color:#ccc!important}.gate-member-switch,.gate-member-logout{text-align:center;margin-top:24px}.gate-member-switch a,.gate-member-logout a{color:#fff;border-bottom:1px solid #be141d}.gate-member-message{max-width:720px;margin:0 auto 24px;padding:14px 18px;border-left:3px solid}.gate-member-message.error{background:rgba(190,20,29,.14);border-color:#be141d}.gate-member-message.success{background:rgba(60,180,110,.12);border-color:#3cb46e}.gate-member-card{max-width:760px;min-height:360px;margin:0 auto 34px;padding:42px;border:1px solid rgba(255,255,255,.23);background:radial-gradient(circle at 85% 15%,rgba(190,20,29,.45),transparent 34%),linear-gradient(135deg,#151515,#050505);box-shadow:0 28px 80px rgba(0,0,0,.5);position:relative;overflow:hidden}.gate-member-card:after{content:"G";position:absolute;right:20px;bottom:-70px;font-size:260px;font-weight:900;color:rgba(255,255,255,.035)}.gate-member-card-brand span{font-weight:900;letter-spacing:.16em}.gate-member-card-brand small{display:block;color:#aaa;letter-spacing:.18em;margin-top:5px}.gate-member-card-name{font-size:clamp(28px,5vw,52px);font-weight:800;margin:65px 0 35px}.gate-member-card dl{display:flex;gap:34px;flex-wrap:wrap}.gate-member-card dt{font-size:10px;color:#999;letter-spacing:.16em}.gate-member-card dd{margin:6px 0 0;font-weight:800}.gate-member-stats{display:grid;grid-template-columns:1fr 2fr;gap:20px;max-width:960px;margin:0 auto 45px}.gate-member-stats article{padding:28px;background:#0d0d0d;border:1px solid rgba(255,255,255,.1)}.gate-member-stats small{display:block;color:#999;letter-spacing:.14em}.gate-member-stats strong{font-size:44px}.gate-member-stats strong.email{font-size:clamp(16px,3vw,28px);word-break:break-all}.gate-member-service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:0 auto 55px}.gate-member-service-grid article{min-height:180px;padding:24px 18px;background:#0d0d0d;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column}.gate-member-service-grid b{font-size:13px}.gate-member-service-grid p{color:#aaa}.gate-member-service-grid span{margin-top:auto;font-size:10px;letter-spacing:.14em;color:#be141d}.gate-profile-panel h2{margin-top:0}.gate-fanclub-member-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.gate-fanclub-member-actions a{display:inline-block;padding:14px 22px;border:1px solid rgba(255,255,255,.35);color:#fff;font-weight:800}.gate-fanclub-member-actions a:hover{border-color:#fff;background:#fff;color:#111}
@media(max-width:900px){.gate-member-service-grid{grid-template-columns:repeat(2,1fr)}.gate-member-stats{grid-template-columns:1fr}.gate-member-card{min-height:320px;padding:28px}.gate-member-card-name{margin-top:50px}}
@media(max-width:560px){.gate-member-hero{padding-top:120px}.gate-member-service-grid{grid-template-columns:1fr}.gate-member-card dl{gap:18px}.gate-member-card{min-height:300px}.gate-member-card-name{font-size:30px}.gate-member-stats strong{font-size:34px}}


/* GatePRODUCTION v5.2.8 — Legal pages and consent links */
.gate-member-check a{color:#fff;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}
.gate-member-check a:hover,.gate-member-check a:focus{color:#e31b23}
.gate-legal-page{background:#080808;color:#eee;min-height:60vh}
.gate-legal-shell{padding-top:64px;padding-bottom:90px}
.gate-legal-content{max-width:920px;margin:0 auto;padding:52px 56px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 80px rgba(0,0,0,.34)}
.gate-legal-content h2{font-size:1.35rem;line-height:1.5;margin:2.2em 0 .7em;padding-left:16px;border-left:3px solid #d71920;color:#fff}
.gate-legal-content h2:first-child{margin-top:0}
.gate-legal-content p,.gate-legal-content li{line-height:1.95;color:rgba(255,255,255,.82)}
.gate-legal-content a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.gate-legal-content a:hover{color:#e31b23}
@media(max-width:700px){.gate-legal-shell{padding-top:36px;padding-bottom:60px}.gate-legal-content{padding:32px 22px}.gate-legal-content h2{font-size:1.15rem}}

/* v5.2.9 members-only editable content */
.gate-member-service-grid article.is-active{border-color:rgba(255,255,255,.45);background:linear-gradient(145deg,#241014,#090909)}.gate-member-service-grid article.is-active span{color:#fff;background:#a80018}.gate-member-library{margin:58px 0}.gate-member-library-head small{color:#d3122d;letter-spacing:.18em;font-weight:700}.gate-member-library-head h2{font:500 clamp(34px,5vw,62px)/1.05 Oswald;margin:10px 0 14px}.gate-member-content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:30px}.gate-member-content-card{background:#090909;border:1px solid rgba(255,255,255,.14);overflow:hidden}.gate-member-content-image{aspect-ratio:16/9;background-size:cover;background-position:center;display:grid;place-items:center}.gate-play-mark{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;padding-left:5px;background:rgba(170,0,24,.92);font-size:27px}.gate-member-content-copy{padding:28px}.gate-member-content-copy>small{color:#d3122d;font:600 11px Oswald;letter-spacing:.18em}.gate-member-content-copy h3{font:500 clamp(23px,3vw,34px)/1.2 Oswald;margin:10px 0 18px}.gate-member-content-text{color:#d4d4d4;line-height:1.9}.gate-member-video-embed{margin-top:20px}.gate-member-video-embed iframe{width:100%;aspect-ratio:16/9;height:auto}.gate-member-watch{display:inline-block;padding:12px 20px;border:1px solid #fff}.gate-member-sample-note{font-size:12px;color:#999;border-top:1px solid rgba(255,255,255,.12);padding-top:15px;margin-top:18px}@media(max-width:760px){.gate-member-content-grid{grid-template-columns:1fr}}
.gate-member-content-image{position:relative}.gate-content-badge{position:absolute;top:14px;left:14px;z-index:2;background:#c40018;color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;padding:7px 10px;border-radius:3px}.gate-content-badge.is-pinned{left:auto;right:14px;background:#111;border:1px solid rgba(255,255,255,.5)}.gate-member-excerpt{font-weight:600;color:#222}.gate-member-content-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.gate-member-content-meta div{border-left:3px solid #c40018;padding-left:10px}.gate-member-content-meta dt{font-size:11px;letter-spacing:.08em;color:#777}.gate-member-content-meta dd{margin:4px 0 0;font-weight:700}.gate-member-artist-comment{margin:20px 0;padding:18px 20px;background:#f6f6f6;border-left:4px solid #c40018}.gate-member-artist-comment strong{display:block;font-size:11px;letter-spacing:.12em;margin-bottom:8px}@media(max-width:640px){.gate-member-content-meta{grid-template-columns:1fr}}
/* v5.2.13 FAN LOUNGE */
.gate-member-lounge-select{border:1px solid rgba(255,255,255,.18);padding:20px;margin:8px 0 20px}.gate-member-lounge-select legend{padding:0 8px;font-weight:700}.gate-member-lounge-select legend span{margin-left:10px;color:#d3122d;font-size:12px}.gate-member-lounge-select .gate-lounge-checklist{display:grid;gap:10px;margin-top:14px}.gate-member-lounge-select .gate-lounge-checklist label{display:flex;gap:10px;align-items:center;padding:12px;background:rgba(255,255,255,.05)}.gate-fan-lounge-summary{margin:44px 0}.gate-fan-lounge-chips{display:flex;flex-wrap:wrap;gap:12px}.gate-fan-lounge-chips a{display:inline-block;padding:13px 18px;border:1px solid rgba(255,255,255,.28);background:#0a0a0a;text-decoration:none}.gate-fan-lounge-chips a:hover{border-color:#d3122d;background:#1a080b}

/* v5.2.19 FAN CLUB CONTENTS visual cards */
.gpfc-content-grid{align-items:stretch}.gpfc-content-card{position:relative;min-height:320px;display:flex;overflow:hidden;border:1px solid rgba(255,255,255,.16);text-decoration:none;color:#fff;background:#090909;isolation:isolate;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.gpfc-content-card:hover{transform:translateY(-6px);border-color:rgba(215,25,32,.8);box-shadow:0 20px 45px rgba(0,0,0,.42)}.gpfc-content-image,.gpfc-content-overlay{position:absolute;inset:0}.gpfc-content-image{background-position:center;background-size:cover;transition:transform .6s ease,filter .4s ease}.gpfc-content-overlay{z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.08) 15%,rgba(0,0,0,.88) 100%)}.gpfc-content-card:hover .gpfc-content-image{transform:scale(1.045);filter:saturate(1.08)}.gpfc-content-copy{position:relative;z-index:2;align-self:flex-end;padding:28px;width:100%}.gpfc-content-copy b{display:block;font:600 36px Oswald,sans-serif;letter-spacing:.03em}.gpfc-content-copy p{min-height:52px;margin:8px 0 18px;color:#ddd;line-height:1.65}.gpfc-content-copy em{font:500 11px Oswald,sans-serif;font-style:normal;letter-spacing:.16em;border-bottom:1px solid #d71920;padding-bottom:5px}.gpfc-content-news .gpfc-content-image{background-image:url('../images/fanclub-content-news.jpg')}.gpfc-content-movie .gpfc-content-image{background-image:url('../images/fanclub-content-movie.jpg')}.gpfc-content-photo .gpfc-content-image{background-image:url('../images/fanclub-content-photo.jpg')}.gpfc-content-special .gpfc-content-image{background-image:url('../images/fanclub-content-special.jpg')}.gate-member-filter-note a{display:inline-block;border-bottom:1px solid #d71920;padding-bottom:3px}
@media(max-width:640px){.gpfc-content-card{min-height:280px}.gpfc-content-copy b{font-size:32px}}

/* v5.2.20: personalized FAN LOUNGE / streaming rails / digital card */
.gate-lounge-hero{min-height:520px;position:relative;display:flex;align-items:flex-end;background:#070707 var(--gate-lounge-image) center/cover no-repeat;overflow:hidden}.gate-lounge-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.78) 42%,rgba(0,0,0,.25) 75%),linear-gradient(0deg,#080808 0%,transparent 50%)}.gate-lounge-hero-copy{position:relative;z-index:2;padding-top:170px;padding-bottom:72px}.gate-lounge-hero-copy>small{color:#e31b23;letter-spacing:.24em;font-weight:700}.gate-lounge-hero h1{font-family:Oswald,'Noto Sans JP',sans-serif;font-size:clamp(42px,6vw,82px);line-height:1.08;margin:12px 0 18px;max-width:900px}.gate-lounge-switcher{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.gate-lounge-switcher span,.gate-fan-lounge-chips span{border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.55);padding:9px 14px;border-radius:999px;font-size:13px}
.gate-digital-card-wrap{margin:-34px 0 38px;position:relative;z-index:4}.gate-digital-card{position:relative;overflow:hidden;padding:32px;border:1px solid rgba(255,255,255,.24);border-radius:24px;background:linear-gradient(135deg,#171717 0%,#050505 52%,#260306 100%);box-shadow:0 28px 70px rgba(0,0,0,.5);min-height:330px}.gate-digital-card:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 15%,rgba(255,255,255,.11) 35%,transparent 52%);transform:translateX(-90%);animation:gateCardShine 6s ease-in-out infinite}.gate-digital-card-glow{position:absolute;width:380px;height:380px;border-radius:50%;right:-140px;bottom:-210px;background:rgba(220,0,20,.28);filter:blur(25px)}@keyframes gateCardShine{0%,55%{transform:translateX(-100%)}80%,100%{transform:translateX(120%)}}.gate-digital-card-brand,.gate-digital-card-main,.gate-digital-card dl,.gate-card-security{position:relative;z-index:2}.gate-digital-card-brand{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.17);padding-bottom:18px}.gate-digital-card-logo{display:block;width:min(430px,58%);max-height:66px;object-fit:contain;object-position:left center}.gate-digital-card-brand small{letter-spacing:.18em;color:#aaa;white-space:nowrap;margin-left:24px}.gate-digital-card-main{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:30px 0 24px}.gate-digital-card-main h2{font-size:clamp(27px,4vw,46px);margin:6px 0}.gate-digital-card-main p{color:#ddd}.gate-member-qr{width:132px;flex:0 0 132px;text-align:center;background:#fff;padding:8px;border-radius:12px}.gate-member-qr img{display:block;width:100%;height:auto}.gate-member-qr span{display:block;color:#111;font-size:10px;font-weight:700;padding-top:5px}.gate-digital-card dl{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0}.gate-digital-card dl div{border-top:1px solid rgba(255,255,255,.14);padding-top:13px}.gate-digital-card dt{font-size:10px;letter-spacing:.15em;color:#999}.gate-digital-card dd{margin:5px 0 0;font-family:Oswald,sans-serif;font-size:20px}.gate-card-security{font-size:11px;color:#888;margin:18px 0 0}
.gate-member-streaming{margin:70px 0}.gate-stream-row{margin:44px 0}.gate-stream-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:17px}.gate-stream-heading small{letter-spacing:.18em;color:#e31b23}.gate-stream-heading h2{font-size:30px;margin:4px 0 0}.gate-stream-controls{display:flex;gap:8px}.gate-stream-controls button{width:42px;height:42px;border:1px solid #444;background:#111;color:#fff;border-radius:50%;font-size:28px;line-height:1;cursor:pointer}.gate-stream-controls button:hover{background:#e31b23;border-color:#e31b23}.gate-stream-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 3px 24px;scrollbar-width:thin;scrollbar-color:#555 #111}.gate-stream-card{flex:0 0 min(360px,82vw);scroll-snap-align:start;background:#111;border:1px solid #282828;border-radius:16px;overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s}.gate-stream-card:hover{transform:translateY(-7px) scale(1.015);border-color:#555;box-shadow:0 22px 46px rgba(0,0,0,.48)}.gate-stream-art{height:205px;background:#1b1b1b center/cover no-repeat;position:relative}.gate-stream-art:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#111)}.gate-stream-play{position:absolute;z-index:2;left:20px;bottom:18px;width:52px;height:52px;border-radius:50%;background:rgba(225,15,30,.92);display:grid;place-items:center;padding-left:3px}.gate-stream-badge{position:absolute;z-index:3;top:13px;left:13px;padding:5px 9px;background:#e31b23;font-size:10px;font-weight:700;border-radius:4px}.gate-stream-badge.is-pickup{left:auto;right:13px;background:#fff;color:#111}.gate-stream-copy{padding:19px}.gate-stream-copy small{color:#e31b23;letter-spacing:.14em}.gate-stream-copy h3{font-size:21px;margin:7px 0 10px}.gate-stream-copy p{color:#bbb;font-size:13px;line-height:1.75}.gate-stream-action{display:inline-flex;margin-top:11px;border:1px solid #555;background:transparent;color:#fff;padding:9px 13px;border-radius:6px;text-decoration:none;cursor:pointer}.gate-stream-action:hover{background:#fff;color:#111}.gate-stream-detail{border-top:1px solid #333;margin-top:15px;padding-top:14px}.gate-stream-detail blockquote{margin:12px 0 0;padding:12px;border-left:2px solid #e31b23;background:#0a0a0a}.gate-stream-empty{min-width:100%;padding:40px;border:1px dashed #444;text-align:center;color:#999}
@media(max-width:700px){.gate-lounge-hero{min-height:440px}.gate-lounge-hero-copy{padding-top:130px;padding-bottom:55px}.gate-digital-card{padding:22px}.gate-digital-card-brand{display:block}.gate-digital-card-logo{width:min(100%,360px);max-height:52px}.gate-digital-card-brand small{display:block;margin:12px 0 0;white-space:normal}.gate-digital-card-main{align-items:flex-start}.gate-member-qr{width:96px;flex-basis:96px}.gate-digital-card dl{grid-template-columns:repeat(2,1fr)}.gate-stream-controls{display:none}.gate-stream-card{flex-basis:84vw}}
@media(prefers-reduced-motion:reduce){.gate-digital-card:before{animation:none}.gate-stream-card{transition:none}}


/* v5.3.0 DISCOGRAPHY premium system */
.gate-premium-disc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}.gate-premium-disc-card{background:#0b0b0b;border:1px solid #242424;transition:.3s;overflow:hidden}.gate-premium-disc-card:hover{transform:translateY(-7px);border-color:#666;box-shadow:0 24px 55px rgba(0,0,0,.45)}.gate-premium-disc-card.is-featured{border-color:rgba(211,18,45,.7)}.gate-disc-cover-link,.gate-disc-cover-wrap{display:block;position:relative}.gate-disc-cover-wrap img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.gate-disc-new{position:absolute;top:14px;left:14px;background:#d3122d;color:#fff;padding:7px 11px;font:700 11px Oswald;letter-spacing:.14em}.gate-disc-card-copy{padding:22px}.gate-disc-card-copy>small,.gate-disc-section>small,.gate-disc-kicker{color:#df1b34;letter-spacing:.16em;font:600 11px Oswald}.gate-disc-card-copy h2{font-size:25px;margin:8px 0}.gate-disc-card-copy h2 a{text-decoration:none}.gate-disc-card-actions{display:flex;gap:10px;margin-top:18px}.gate-disc-card-actions a{border:1px solid #444;padding:9px 12px;text-decoration:none;font-size:12px}.gate-disc-card-actions a:hover{background:#fff;color:#111}.gate-audio-player{display:flex;align-items:center;gap:16px;background:#121212;border:1px solid #333;padding:16px 18px;margin:24px 0}.gate-audio-player.is-compact{padding:11px 12px;margin:18px 0}.gate-audio-toggle{width:52px;height:52px;flex:0 0 52px;border:0;border-radius:50%;background:#d3122d;color:#fff;font-size:20px;cursor:pointer}.gate-audio-player.is-compact .gate-audio-toggle{width:42px;height:42px;flex-basis:42px;font-size:15px}.gate-audio-info{flex:1}.gate-audio-player b{display:block;font-size:13px}.gate-audio-time{display:block;color:#999;font:12px Oswald;margin-top:5px}.gate-audio-progress{height:3px;background:#333;margin:10px 0}.gate-audio-progress i{display:block;width:0;height:100%;background:#d3122d}.gate-audio-coming{border:1px dashed #555;padding:14px;color:#aaa}.gate-disc-premium .gate-disc-hero{align-items:start}.gate-disc-premium .detail-cover{width:100%}.gate-primary-action{display:inline-flex;background:#d3122d;color:#fff!important;padding:14px 20px;text-decoration:none;font-weight:700;letter-spacing:.05em}.gate-disc-section{margin-top:80px;padding-top:35px;border-top:1px solid #292929}.gate-disc-section h2{font-size:clamp(28px,4vw,45px);margin:7px 0 26px}.gate-store-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gate-store-links a{display:flex;justify-content:space-between;align-items:center;border:1px solid #383838;padding:17px;text-decoration:none;background:#0b0b0b}.gate-store-links a:hover{border-color:#d3122d;background:#16090b}.gate-history{max-width:850px}.gate-history>div{display:grid;grid-template-columns:20px 1fr;gap:14px;position:relative}.gate-history>div:before{content:"";position:absolute;left:6px;top:17px;bottom:-17px;width:1px;background:#444}.gate-history>div:last-child:before{display:none}.gate-history i{width:13px;height:13px;border:3px solid #d3122d;border-radius:50%;margin-top:7px}.gate-history p{margin:0 0 25px;background:#101010;padding:15px}.gate-experience-links>div{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.gate-experience-links a{min-height:120px;display:flex;align-items:center;padding:25px;border:1px solid #444;background:linear-gradient(135deg,#111,#1c0508);text-decoration:none;font-size:20px;font-weight:700}.gate-fan-lounge-promo{padding:40px;background:linear-gradient(135deg,#111,#260308);border:1px solid #4b171d}.gate-related-discs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gate-related-discs a{display:grid;grid-template-columns:105px 1fr;gap:15px;align-items:center;background:#101010;border:1px solid #282828;text-decoration:none;padding:10px}.gate-related-discs img{width:105px;aspect-ratio:1;object-fit:cover}.gate-related-discs span small{display:block;color:#aaa;margin-top:6px}
@media(max-width:900px){.gate-premium-disc-grid{grid-template-columns:repeat(2,1fr)}.gate-store-links{grid-template-columns:repeat(2,1fr)}.gate-related-discs{grid-template-columns:1fr}}
@media(max-width:620px){.gate-premium-disc-grid,.gate-store-links,.gate-experience-links>div{grid-template-columns:1fr}.gate-fan-lounge-promo{padding:25px}.gate-disc-card-actions{flex-wrap:wrap}}
/* v5.4 Fan Experience Platform */
.gate-v54-section{margin:56px 0;padding:34px;border:1px solid rgba(255,255,255,.12);background:rgba(8,8,10,.86)}
.gate-v54-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px}.gate-v54-card{padding:22px;background:#151519;border:1px solid rgba(255,255,255,.12);border-radius:4px}.gate-v54-card img{max-width:100%;height:auto}.gate-v54-card.ticket{display:flex;align-items:center;justify-content:space-between;gap:20px}.gate-v54-card.ticket>img{width:130px;background:#fff;padding:7px}.gate-ticket-status{display:inline-block;margin-top:14px;padding:5px 10px;background:#b60018;color:#fff;font-size:12px}.gate-point-log>div{display:grid;grid-template-columns:110px 1fr auto;gap:15px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.1)}.gate-v54-card.birthday{background:linear-gradient(135deg,#2a0810,#121216)}
@media(max-width:680px){.gate-v54-section{padding:22px 16px}.gate-v54-card.ticket{display:block}.gate-v54-card.ticket>img{margin-top:18px;width:150px}.gate-point-log>div{grid-template-columns:1fr auto}.gate-point-log time{grid-column:1/-1}}


/* v5.4.3 image-and-information integrated cards */
.gate-v543-media-card{position:relative;min-height:360px;background-position:center;background-size:cover;border-radius:10px;overflow:hidden;color:#fff;box-shadow:0 18px 45px rgba(0,0,0,.35)}.gate-v543-media-card:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.12))}.gate-v543-media-card.product:before{background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.04) 70%)}.gate-v543-media-overlay{position:relative;z-index:1;min-height:306px;padding:27px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start}.gate-v543-media-overlay small{color:#ff8798;letter-spacing:.08em}.gate-v543-media-overlay h3{font-size:24px;line-height:1.2;margin:7px 0 13px}.gate-v543-media-overlay p{margin:4px 0}.gate-v543-media-overlay strong{font-size:20px}.gate-v543-ticket-qr{position:absolute;right:22px;bottom:22px;width:98px!important;background:#fff;padding:5px}.gate-v543-birthday-grid{grid-template-columns:1fr}.gate-v543-birthday-card{display:grid;grid-template-columns:44% 56%;min-height:420px;background:linear-gradient(135deg,#2a0810,#121216);border:1px solid rgba(255,255,255,.12);overflow:hidden;border-radius:10px}.gate-v543-birthday-image{background-position:center;background-size:cover;min-height:420px}.gate-v543-birthday-message{padding:42px;display:flex;flex-direction:column;justify-content:center}.gate-v543-birthday-message>strong{font-size:29px;line-height:1.2;margin-bottom:18px;color:#fff}.gate-v543-birthday-message h3{font-size:25px;color:#ffd3db;margin:0 0 18px}.gate-v543-birthday-message p{line-height:1.9;color:#f1e9eb}.gate-v543-birthday-message small{margin-top:18px;text-align:right;color:#ff8ca0;font-size:14px}@media(max-width:700px){.gate-v543-birthday-card{grid-template-columns:1fr}.gate-v543-birthday-image{min-height:310px}.gate-v543-birthday-message{padding:28px}.gate-v543-birthday-message>strong{font-size:24px}.gate-v543-ticket-qr{width:82px!important}.gate-v543-media-card{min-height:330px}}

/* v5.4.6 unified left-image / right-information cards */
.gate-v543-split-grid,.gate-v543-birthday-grid{grid-template-columns:1fr!important}.gate-v543-split-card{display:grid;grid-template-columns:44% 56%;min-height:420px;background:linear-gradient(145deg,#1f080e,#0e0e12);border:1px solid rgba(255,255,255,.12);overflow:hidden;border-radius:10px;color:#fff;box-shadow:0 18px 45px rgba(0,0,0,.28)}.gate-v543-split-image{min-height:420px;background-size:cover;background-repeat:no-repeat}.gate-v543-split-copy{position:relative;padding:42px;display:flex;flex-direction:column;justify-content:center;min-width:0}.gate-v543-split-copy>small:first-child{color:#ff8ca0;letter-spacing:.08em}.gate-v543-split-copy h3{font-size:25px;line-height:1.25;color:#ffd3db;margin:8px 0 18px}.gate-v543-split-copy p{line-height:1.85;color:#f1e9eb;margin:5px 0}.gate-v543-split-copy>strong{font-size:21px}.gate-v543-split-copy .gate-v543-member-name{font-size:29px;line-height:1.2;margin-bottom:10px;color:#fff}.gate-v543-split-copy>small:last-child{margin-top:18px;text-align:right;color:#ff8ca0;font-size:14px}.gate-v543-split-copy .gate-stream-action{align-self:flex-start;margin-top:18px}.gate-v543-split-copy .gate-ticket-status{align-self:flex-start;margin-top:12px}.gate-v543-split-copy .gate-v543-ticket-qr{right:26px;bottom:26px;width:94px!important}.gate-v543-split-card.ticket .gate-v543-split-copy{padding-right:135px}@media(max-width:700px){.gate-v543-split-card{grid-template-columns:1fr}.gate-v543-split-image{min-height:300px}.gate-v543-split-copy{padding:28px}.gate-v543-split-card.ticket .gate-v543-split-copy{padding-right:28px;padding-bottom:125px}.gate-v543-split-copy .gate-v543-member-name{font-size:24px}}

/* v5.5.0 */
.hero-overlay{background:rgba(0,0,0,var(--gate-hero-darkness,.28))!important}
.gate-contact-page,.gate-store-page{padding-top:130px}.gate-contact-kicker{letter-spacing:.24em;color:#d71920;font-size:12px}.gate-hearing-form{margin:42px 0;padding:34px;background:#111;border:1px solid #333}.gate-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.gate-hearing-form label{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;font-weight:700}.gate-hearing-form label span{color:#d71920;font-size:11px;margin-left:6px}.gate-hearing-form input,.gate-hearing-form select,.gate-hearing-form textarea{width:100%;box-sizing:border-box;background:#080808;border:1px solid #444;color:#fff;padding:14px}.gate-hearing-form textarea{resize:vertical}.gate-hearing-form .gate-check{flex-direction:row;align-items:center;font-weight:400}.gate-hearing-form .gate-check input{width:auto}.gate-hearing-form .gate-check span{color:#ddd;font-size:14px}.gate-hp{position:absolute!important;left:-9999px!important}.gate-contact-notice{padding:18px 20px;margin:24px 0;border-left:4px solid}.gate-contact-notice.success{background:#102417;border-color:#2fbd67}.gate-contact-notice.error{background:#2a1111;border-color:#d71920}.gate-payment-page{padding-top:140px;min-height:70vh}.gate-payment-card,.gate-payment-pending{max-width:760px;margin:30px 0;padding:30px;background:#111;border:1px solid #333}.gate-payment-pending{border-style:dashed}.gate-store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:40px 0}.gate-store-card{background:#111;border:1px solid #2d2d2d;overflow:hidden}.gate-store-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.gate-store-card>div{padding:22px}.gate-store-card h2{font-size:22px}.gate-store-card strong{font-size:20px}.gate-store-wait{display:inline-block;padding:10px 14px;border:1px solid #555;color:#aaa}
@media(max-width:800px){.gate-form-grid,.gate-store-grid{grid-template-columns:1fr}.gate-hearing-form{padding:20px}.gate-contact-page,.gate-store-page,.gate-payment-page{padding-top:100px}}

/* v5.5.2 — hero darkness control repair */
body.home .hero:after{content:none!important;display:none!important}
body.home .hero-overlay{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:1!important;pointer-events:none!important;background:#000!important;opacity:var(--gate-hero-darkness,.28)!important;transition:opacity .25s ease!important}


/* v5.5.3: 30-second preview feedback */
.gate-audio-player.is-playing{border-color:rgba(211,18,45,.85);box-shadow:0 0 0 1px rgba(211,18,45,.16),0 16px 38px rgba(0,0,0,.28)}
.gate-audio-player.is-playing .gate-audio-toggle{animation:gatePreviewPulse 1.25s ease-in-out infinite}
.gate-audio-toggle:focus-visible{outline:3px solid rgba(255,255,255,.9);outline-offset:3px}
@keyframes gatePreviewPulse{0%,100%{box-shadow:0 0 0 0 rgba(211,18,45,.42)}50%{box-shadow:0 0 0 10px rgba(211,18,45,0)}}
@media(prefers-reduced-motion:reduce){.gate-audio-player.is-playing .gate-audio-toggle{animation:none}}
/* GatePRODUCTION v5.6.0 */
.gate-v560-rank{margin:28px 0;padding:30px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:linear-gradient(135deg,rgba(180,0,25,.18),rgba(255,255,255,.03));}.gate-v560-rank h2{font-size:clamp(2rem,6vw,4.5rem);margin:.15em 0}.gate-v560-progress{height:8px;background:rgba(255,255,255,.12);border-radius:999px;overflow:hidden;margin:18px 0}.gate-v560-progress span{display:block;height:100%;background:#d71920;border-radius:inherit}.gate-v560-section{margin:55px 0}.gate-v560-notices{display:grid;gap:12px}.gate-v560-notices article{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.035)}.gate-v560-notices h3{margin:0 0 8px}.gate-v560-notices a{color:#fff;text-decoration:underline}.gate-v560-rewards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.gate-v560-rewards article{overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.04)}.gate-v560-rewards img{width:100%;aspect-ratio:16/10;object-fit:cover}.gate-v560-rewards article>div{padding:22px}.gate-v560-rewards strong{display:block;font-size:1.5rem;margin:14px 0}.gate-v560-rewards button{width:100%;padding:13px;border:0;border-radius:999px;background:#d71920;color:#fff;font-weight:700;cursor:pointer}.gate-v560-rewards button:disabled{opacity:.4;cursor:not-allowed}@media(max-width:680px){.gate-v560-notices article{grid-template-columns:1fr;gap:6px}.gate-v560-rank{padding:22px}}

/* GatePRODUCTION v5.7.0 — WooCommerce / Stripe storefront */
.gate-cart-link{display:inline-flex!important;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.35);padding:7px 10px!important;border-radius:999px;font-size:11px!important;letter-spacing:.12em}
.gate-cart-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#c91421;color:#fff;font-size:11px;line-height:1}
.gate-store-page>.section-inner>.gate-cart-link{margin:18px 0 28px;color:#fff;text-decoration:none}
.woocommerce .products ul,.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:32px 0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;background:#151515;border:1px solid rgba(255,255,255,.12);padding:0 0 22px;border-radius:14px;overflow:hidden;color:#fff}
.woocommerce ul.products li.product a img{margin:0 0 18px;aspect-ratio:1/1;object-fit:cover}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .button{margin-left:18px;margin-right:18px}
.woocommerce ul.products li.product .price{color:#fff;font-weight:800}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:#c91421!important;color:#fff!important;border-radius:999px!important;padding:12px 20px!important}
.woocommerce div.product,.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,.woocommerce-account .woocommerce{max-width:1180px;margin:130px auto 80px;padding:0 24px;color:#fff}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:#fff}.woocommerce div.product .product_title{font-size:clamp(30px,5vw,60px)}
.woocommerce table.shop_table{border-color:rgba(255,255,255,.2);border-radius:12px}.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:rgba(255,255,255,.12)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{background:#111;color:#fff;border:1px solid rgba(255,255,255,.25);padding:12px;border-radius:7px}
.woocommerce-checkout #payment{background:#151515;color:#fff}.woocommerce-checkout #payment div.payment_box{background:#222;color:#fff}.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#222}
.gate-product-access-badge{display:inline-block;padding:7px 11px;border:1px solid #c91421;color:#fff;font-size:11px;letter-spacing:.12em;border-radius:999px}
.gate-v570-order-list{display:grid;gap:12px}.gate-v570-order-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.035);border-radius:12px}.gate-v570-order-list h3{margin:4px 0}.gate-v570-order-list p{margin:0;opacity:.75}.gate-v570-order-list a{color:#fff;border-bottom:1px solid #c91421;text-decoration:none;white-space:nowrap}
@media(max-width:900px){.woocommerce .products ul,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-nav .gate-cart-link{display:none!important}}
@media(max-width:600px){.woocommerce .products ul,.woocommerce ul.products{grid-template-columns:1fr}.gate-v570-order-list article{align-items:flex-start;flex-direction:column}.gate-cart-link{width:max-content}}


/* ==========================================================
   GatePRODUCTION v5.7.3 — STORE completion UX / native cursor
   ========================================================== */
html,body,body *{cursor:auto}
a,button,input[type="button"],input[type="submit"],input[type="reset"],select,label,[role="button"],.button{cursor:pointer!important}
input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="password"],input[type="search"],input[type="url"],textarea{cursor:text!important}
.gate-cursor{display:none!important}

/* Clear, readable WooCommerce order-complete screen. */
body.woocommerce-order-received .woocommerce{color:#161616!important;background:#f5f3f0;border-radius:18px;padding:clamp(26px,5vw,64px)!important;box-shadow:0 24px 70px rgba(0,0,0,.16)}
body.woocommerce-order-received .woocommerce h1,
body.woocommerce-order-received .woocommerce h2,
body.woocommerce-order-received .woocommerce h3,
body.woocommerce-order-received .woocommerce p,
body.woocommerce-order-received .woocommerce li,
body.woocommerce-order-received .woocommerce address,
body.woocommerce-order-received .woocommerce strong,
body.woocommerce-order-received .woocommerce table,
body.woocommerce-order-received .woocommerce th,
body.woocommerce-order-received .woocommerce td{color:#161616!important}
body.woocommerce-order-received .woocommerce-order-overview{background:#fff;border:1px solid #dedbd6;border-radius:14px;padding:20px!important}
body.woocommerce-order-received .woocommerce table.shop_table{background:#fff;border-color:#dedbd6!important}
body.woocommerce-order-received .woocommerce table.shop_table th,
body.woocommerce-order-received .woocommerce table.shop_table td{border-color:#e7e3de!important}
.gate-order-complete-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:28px 0 10px}
.gate-order-complete-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:999px;font-weight:800;text-decoration:none!important;transition:transform .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}
.gate-order-continue{background:#c91421;color:#fff!important;border:1px solid #c91421}
.gate-order-home{background:transparent;color:#161616!important;border:1px solid #777}
.gate-order-complete-actions a:hover,.gate-order-complete-actions a:focus-visible{transform:translateY(-2px)}
.gate-order-home:hover,.gate-order-home:focus-visible{background:#161616;color:#fff!important;border-color:#161616}
@media(max-width:600px){.gate-order-complete-actions{align-items:stretch;flex-direction:column}.gate-order-complete-actions a{width:100%}}
