/*
Theme Name: Monster Fest Unified V25.5.18
Theme URI: https://monsterfest.com.au/
Author: Monster Fest / OpenAI
Description: Unified Monster Fest theme with year-round and Festival Mode navigation, legacy Australia/Weekender ACF program compatibility, WooCommerce and sponsor placements.
Version: 25.5.18
Text Domain: monsterfest
Requires at least: 6.3
Requires PHP: 7.4
*/

/* V24.9 — old-site-inspired individual News and Event pages. */
body.single-post,
body.single-events{background:#090909;color:#f3f1ec}
.mfu-editorial-single{padding:54px 0 82px;background:radial-gradient(circle at 18% 15%,#161616 0,#0b0b0b 34%,#080808 76%)}
.mfu-editorial-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start;max-width:1260px}
.mfu-editorial-main{min-width:0}
.mfu-editorial-key-image{margin:0;background:#111;border:1px solid #353535;padding:0;overflow:hidden}
.mfu-editorial-key-image img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.mfu-editorial-card{position:relative;width:min(86%,820px);margin:34px auto 0;padding:38px 44px 46px;background:linear-gradient(145deg,#151515,#0e0e0e);border:1px solid #3b3b3b;box-shadow:0 20px 50px rgba(0,0,0,.32)}
.mfu-editorial-card.has-key-image{margin-top:-58px;z-index:2}
.mfu-editorial-meta{display:flex;justify-content:center;align-items:center;gap:10px;margin-bottom:18px;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#999}
.mfu-editorial-meta span{color:var(--red)}
.mfu-editorial-meta b{font-weight:400;color:#555}
.mfu-editorial-card h1{max-width:720px;margin:0 auto;font:400 clamp(40px,5.3vw,70px)/.96 Impact,'Arial Narrow',sans-serif;text-align:center;text-transform:uppercase;letter-spacing:-.02em;color:#fff}
.mfu-editorial-title-rule{width:82px;height:2px;margin:24px auto 28px;background:var(--red)}
.mfu-editorial-intro{font-size:18px;line-height:1.55;font-weight:700;color:#fff;margin:0 0 24px}
.mfu-editorial-intro p:first-child{margin-top:0}
.mfu-editorial-content.prose{max-width:none;font-size:16px;line-height:1.72;color:#ddd}
.mfu-editorial-content.prose p{margin:0 0 1.25em}
.mfu-editorial-content.prose h2,.mfu-editorial-content.prose h3,.mfu-editorial-content.prose h4{font-family:Impact,'Arial Narrow',sans-serif;text-transform:uppercase;color:#fff;line-height:1.05}
.mfu-editorial-content.prose a{color:#fff;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
.mfu-editorial-content.prose img{margin:28px auto;max-width:100%;height:auto}
.mfu-editorial-content.prose iframe{max-width:100%}

.mfu-story-sidebar{position:sticky;top:110px;padding-top:8px}
.mfu-story-sidebar h2{font:400 27px/1 Impact,'Arial Narrow',sans-serif;text-transform:uppercase;margin:0;color:#fff}
.mfu-story-sidebar__rule{width:42px;height:2px;background:var(--red);margin:10px 0 7px}
.mfu-story-sidebar__list{display:grid}
.mfu-story-mini{display:grid;grid-template-columns:86px minmax(0,1fr);gap:15px;padding:20px 0;border-bottom:1px solid #292929}
.mfu-story-mini__image{display:block;background:#151515;border:1px solid #333}
.mfu-story-mini__image img,.mfu-story-mini__placeholder{display:block;width:100%;aspect-ratio:2/3;object-fit:cover}
.mfu-story-mini__copy h3{font-size:13px;line-height:1.35;margin:2px 0 10px;color:#fff}
.mfu-story-mini__copy h3 a:hover{color:var(--red)}
.mfu-story-mini__copy time{font-size:10px;color:#888}
.mfu-story-sidebar__all{display:flex;justify-content:space-between;align-items:center;margin-top:25px;padding:16px 18px;border:1px solid var(--red);color:var(--red);font-size:11px;font-weight:900;letter-spacing:.06em}
.mfu-story-sidebar__all:hover{background:var(--red);color:#fff}

.mfu-event-details{position:relative;margin:28px 0 34px;border-top:1px solid #3b3b3b;border-bottom:1px solid #3b3b3b;padding:22px 0 24px}
.mfu-event-details h2{font:400 20px/1 Impact,'Arial Narrow',sans-serif!important;color:var(--red)!important;letter-spacing:.04em;margin:0 0 9px!important}
.mfu-event-details dl{margin:0}
.mfu-event-details dl>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;padding:10px 0;border-top:1px solid #292929}
.mfu-event-details dt{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#888}
.mfu-event-details dd{margin:0;font-size:13px;line-height:1.5;color:#fff}
.mfu-event-buy{margin-top:18px;min-height:42px}

@media(max-width:1000px){
  .mfu-editorial-layout{grid-template-columns:minmax(0,1fr) 270px;gap:30px}
  .mfu-editorial-card{width:92%;padding:34px 32px 40px}
  .mfu-story-mini{grid-template-columns:72px minmax(0,1fr);gap:12px}
}
@media(max-width:780px){
  .mfu-editorial-single{padding:30px 0 55px}
  .mfu-editorial-layout{display:block}
  .mfu-editorial-card{width:calc(100% - 20px);padding:30px 24px 36px}
  .mfu-editorial-card.has-key-image{margin-top:-32px}
  .mfu-editorial-card h1{font-size:clamp(37px,11vw,56px)}
  .mfu-story-sidebar{position:static;margin-top:45px}
  .mfu-story-sidebar__list{grid-template-columns:1fr 1fr;gap:0 22px}
  .mfu-story-mini{grid-template-columns:70px minmax(0,1fr)}
}
@media(max-width:520px){
  .mfu-editorial-key-image img{aspect-ratio:16/10}
  .mfu-editorial-card{width:calc(100% - 12px);padding:26px 18px 30px}
  .mfu-editorial-card.has-key-image{margin-top:-20px}
  .mfu-editorial-meta{font-size:9px;gap:7px}
  .mfu-editorial-intro{font-size:16px}
  .mfu-editorial-content.prose{font-size:15px}
  .mfu-story-sidebar__list{grid-template-columns:1fr}
  .mfu-event-details dl>div{grid-template-columns:88px minmax(0,1fr);gap:12px}
}


/* V24.9.1 — editorial single refinements. */
/* Show more of the key art: the card only overlaps it slightly. */
.mfu-editorial-card.has-key-image{margin-top:-30px}
/* News titles are intentionally a little smaller than event titles. */
.mfu-news-single .mfu-editorial-card h1{font-size:clamp(36px,4.35vw,60px)}

/* Sidebar cards now echo the secondary homepage News cards: full-width key image, compact title beneath. */
.mfu-story-sidebar__list{display:grid;gap:22px;margin-top:17px}
.mfu-story-mini{display:block;padding:0 0 18px;border-bottom:1px solid #292929}
.mfu-story-mini__image{display:block;width:100%;background:#151515;border:0;overflow:hidden}
.mfu-story-mini__image img,.mfu-story-mini__placeholder{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.mfu-story-mini__copy{padding-top:9px}
.mfu-story-mini__copy h3{font-size:10px;line-height:1.28;margin:0 0 6px;color:#fff;text-transform:uppercase;letter-spacing:.015em}
.mfu-story-mini__copy time{font-size:9px;line-height:1.2;color:#777}

/* Current Events sidebar uses the same visual language, with event metadata beneath. */
.mfu-current-events-sidebar .mfu-story-mini__copy h3{margin-bottom:7px}
.mfu-current-event-meta{display:grid;gap:3px;font-size:9px;line-height:1.3;color:#888}
.mfu-current-event-meta strong{color:#aaa;font-weight:700}

@media(max-width:780px){
  .mfu-editorial-card.has-key-image{margin-top:-18px}
  .mfu-news-single .mfu-editorial-card h1{font-size:clamp(34px,9.2vw,50px)}
  .mfu-story-sidebar__list{grid-template-columns:1fr 1fr;gap:22px}
  .mfu-story-mini{display:block}
}
@media(max-width:520px){
  .mfu-editorial-card.has-key-image{margin-top:-12px}
  .mfu-story-sidebar__list{grid-template-columns:1fr}
}
