/* ===== Layout ===== */
.container{width:90%;max-width:1200px;margin:0 auto}
.site-header{background:#000;position:sticky;top:0;width:100%;z-index:1000;border-bottom:2px solid #FFD700}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:15px 0}
.logo h1{color:#FFD700;margin:0;font-size:1.8rem}
.nav-menu{list-style:none;display:flex;gap:20px}
.nav-menu li a{color:#fff;font-weight:bold;transition:color .3s}
.nav-menu li a:hover{color:#FFD700}

/* ===== Hero Slideshow ===== */
.hero-slideshow{position:relative;height:100vh;overflow:hidden}
.hero-slideshow .slide{position:absolute;width:100%;height:100%;background-size:cover;background-position:center;opacity:0;animation:fadeSlide 20s infinite}
.hero-slideshow .slide:nth-child(1){animation-delay:0s}
.hero-slideshow .slide:nth-child(2){animation-delay:5s}
.hero-slideshow .slide:nth-child(3){animation-delay:10s}
.hero-slideshow .slide:nth-child(4){animation-delay:15s}
@keyframes fadeSlide{0%,20%{opacity:1}25%,100%{opacity:0}}
.hero-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}
.hero-slideshow h1{font-size:3rem;color:#FFD700}

/* ===== Latest Release ===== */
.latest-release{padding:60px 0;text-align:center}
.release-item{display:flex;flex-direction:column;align-items:center}
.release-item img{max-width:300px;border:2px solid #FFD700;border-radius:10px;margin-bottom:15px}

/* ===== Featured Media (Aligned Grid) ===== */
.featured-media{padding:60px 0}
.media-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.media-card{background:#111;border:2px solid #FFD700;border-radius:10px;padding:16px;text-align:center}
.media-embed{position:relative;width:100%;overflow:hidden;border-radius:8px;border:1px solid #FFD700}
.media-embed.ratio-16x9{padding-top:56.25%}
.media-embed.ratio-9x16{padding-top:177.78%}
.media-embed.ratio-1x1{padding-top:100%}
.media-embed iframe{position:absolute;inset:0;width:100%;height:100%}

/* ===== Story Highlight ===== */
.story-highlight{padding:60px 0;text-align:center}
.story-thumb{width:100%;max-width:560px;border:2px solid #FFD700;border-radius:10px;margin:0 auto 16px;display:block}

/* ===== Shop Grid (Uniform Squares) ===== */
.shop-collection{padding:60px 0}
.shop-grid.uniform{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.square{position:relative;width:100%;padding-top:100%;overflow:hidden;border:2px solid #FFD700;border-radius:10px}
.square img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.shop-item h3{margin-top:10px}

/* ===== Shows ===== */
.shows-preview,.shows-page{padding:60px 0;text-align:center}
.shows-list{list-style:none;display:grid;gap:10px;max-width:900px;margin:0 auto 10px}
.shows-list li{display:flex;justify-content:space-between;align-items:center;background:#111;border:1px solid #FFD700;border-radius:8px;padding:12px 16px;gap:12px;flex-wrap:wrap}
.btn-ticket{padding:8px 16px}
.shows-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.show-card{background:#111;border:2px solid #FFD700;padding:20px;border-radius:10px}
.show-card h2{color:#FFD700;margin-bottom:10px}
.coming-soon{margin-top:30px;font-style:italic}

/* ===== Footer ===== */
.site-footer{background:#000;padding:40px 20px;border-top:2px solid #FFD700}
.footer-inner{display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between}
.footer-section h2{color:#FFD700}
.newsletter-form input{padding:10px;margin-right:10px;border:none;border-radius:4px}
.newsletter-form button{padding:10px 20px;background:#FFD700;border:none;cursor:pointer}
.footer-bottom{text-align:center;margin-top:20px;border-top:1px solid #FFD700;padding-top:10px;font-size:.9rem}

/* ===== Buttons & Animations ===== */
.btn{display:inline-block;background:#FFD700;color:#000;padding:10px 20px;margin-top:10px;border-radius:4px;font-weight:bold;transition:background .3s,box-shadow .3s}
.btn:hover{background:#fff;color:#000;box-shadow:0 0 10px #FFD700}
.fade-in{opacity:0;transform:translateY(20px);transition:opacity 1s ease-out,transform 1s ease-out}
.fade-in.appear{opacity:1;transform:translateY(0)}
body.fade-site{opacity:0;transition:opacity 1s ease}
body.fade-site.fade-site-loaded{opacity:1}

/* ===== Story Page Hero ===== */
.story-page .story-hero{position:relative;height:60vh;background-size:cover;background-position:center}
.story-page .overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4)}
.story-page .overlay h1{font-size:2.6rem;color:#FFD700}
.story-content{padding:40px 0}
