/* ==========================================================================
   Design layer inspired by iwantpoetry.com (dreamy dusk gradients, widely
   tracked uppercase titles, navy/indigo panels overlapping photos, slanted
   dividers, circular crop) and wolfandmoonmusic.com (editorial letter-spaced
   headings, monospace meta text, solid colour info box overlapping artwork,
   outlined rectangular buttons, full-bleed photo bands, colour CTA band).
   ========================================================================== */
:root{--mono:'DM Mono',ui-monospace,SFMono-Regular,Menlo,monospace;--rose:#f08aa6;--lilac:#b8a6ff;--peri:#8ea2ff;--indigo:#16123a;--coral:#d9694a;
  --dusk:linear-gradient(100deg,#f3d39c 0%,#f08aa6 45%,#b8a6ff 100%)}

/* monospace meta (Wolf & Moon) */
.eyebrow,h6.eyebrow,.block-tour .date span,.album .meta,.tracks li .td,.slide-count,.news-card .cat,.video-card small,.mp4-card small,
.press-strip span em,.header .logo .tag,.social-banner .label small,.platform .t small,.contact-form label,.credits,.section-num{font-family:var(--mono)!important;font-weight:400;letter-spacing:.16em}
.eyebrow,h6.eyebrow{color:var(--rose);font-size:.72rem}

/* widely tracked uppercase section titles with dusk gradient (Poetry + W&M) */
.block-title h2{font-family:var(--display);text-transform:uppercase;letter-spacing:.2em;font-weight:500;font-size:clamp(2.2rem,4.4vw,3.6rem);padding-left:.2em;
  background:var(--dusk);-webkit-background-clip:text;background-clip:text;color:transparent}
.block-title h2 em{font-style:normal;color:inherit;font-weight:inherit}
.subhead{text-transform:uppercase;letter-spacing:.16em;font-size:1.45rem}

/* buttons: editorial rectangles with tracked caps (W&M) */
.btn{border-radius:3px;letter-spacing:.22em;font-weight:600}
.btn-gold{background:var(--dusk);border:0;color:#1a1020}
.btn-gold:hover{filter:brightness(1.07);color:#1a1020;background:var(--dusk)}
.btn-ghost,.btn-outline-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}
.btn-ghost:hover,.btn-outline-light:hover{background:#fff;color:#14121c;border-color:#fff}
.main-nav .main-menu a.nav-cta{border-radius:3px;border-color:rgba(240,138,166,.6);color:#fff}
.main-nav .main-menu a.nav-cta:hover{background:var(--dusk);color:#1a1020}
.main-nav .main-menu a.active::after,.main-nav .main-menu a:hover::after{background:var(--rose)}
.flex-control-paging li a.flex-active{background:var(--rose)}
.hero-copy h1 em,.hero-copy h2 em{background:var(--dusk);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}
.tour-year{color:var(--lilac)}
.album .note,.badge-award{color:var(--rose)}
.tracks li.playing{background:rgba(184,166,255,.12)}
.tracks li.playing .tb,.album .cover .play-all,.mini-player .mp-toggle,.block-top{background:var(--dusk);border-color:transparent;color:#1a1020}
.mini-player .mp-bar i{background:var(--dusk)}
a{color:var(--rose)} a:hover{color:#ffc2d2}
.contact-card a.big{color:#fff}

/* dreamy dusk glow behind Music + Gallery (Poetry pastel gradients, kept dark) */
#music,#gallery{background:
  radial-gradient(60% 50% at 10% 0%,rgba(184,166,255,.16),transparent 70%),
  radial-gradient(50% 45% at 95% 30%,rgba(240,138,166,.12),transparent 70%),
  radial-gradient(60% 50% at 50% 100%,rgba(142,162,255,.10),transparent 70%),#100f17}

/* solid info box overlapping the artwork (W&M album card / Poetry about panel) */
.feature-stack{position:relative;padding-bottom:4.5rem}
.feature-stack .art{width:82%;border-radius:4px;box-shadow:0 30px 70px rgba(0,0,0,.55)}
.overlap-box{position:absolute;right:0;bottom:0;width:58%;padding:1.8rem;background:linear-gradient(135deg,#2a1f5c,#16123a);border:1px solid rgba(184,166,255,.25);border-radius:4px;box-shadow:0 25px 60px rgba(0,0,0,.5)}
.overlap-box h3{font-size:2.1rem;font-style:italic;margin:0 0 .5rem;line-height:1}
.overlap-box p{font-size:.9rem;margin-bottom:1.1rem;color:#d9d4f2}
.stream-title{font-size:clamp(2rem,3.4vw,2.8rem);margin:0 0 .8rem;line-height:1.05}
.featured-single{align-items:start}

/* full-bleed indigo shows band with live photo (Poetry "Shows" / W&M tickets band) */
.shows-band{position:relative;padding:4.5rem 0;margin:0 0 3rem;overflow:hidden;background:var(--indigo)}
.shows-band .background-img{position:absolute;inset:0;background-size:cover!important;background-position:center 40%!important;opacity:.35;filter:saturate(1.2)}
.shows-band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,18,58,.95),rgba(22,18,58,.55) 60%,rgba(240,138,166,.25))}
.shows-band .container{position:relative;z-index:2}
.shows-band .upcoming-card{margin:0;border:0;background:none;padding:0}
.shows-band .upcoming-card h3{font-size:clamp(2.2rem,4vw,3.2rem);text-transform:uppercase;letter-spacing:.12em}
.shows-band .upcoming-card p{color:#d9d4f2;max-width:560px}
#concerts .tour-year:first-of-type{margin-top:0}

/* full-bleed photo band with big play button (W&M "new video out now") */
.photo-band{position:relative;min-height:520px;display:flex;align-items:center;margin:0 0 4rem;overflow:hidden;background:#000}
.photo-band .background-img{position:absolute;inset:0;background-size:cover!important;background-position:center!important;opacity:.6;transform:scale(1.03)}
.photo-band::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(10,10,13,.1),rgba(10,10,13,.75))}
.photo-band .container{position:relative;z-index:2}
.photo-band h3{font-size:clamp(2.6rem,6vw,5rem);text-transform:uppercase;letter-spacing:.22em;margin:0 0 1.8rem;padding-left:.22em}
.play-big{display:inline-block;width:92px;height:92px;border-radius:50%;border:1px solid rgba(255,255,255,.75);position:relative;backdrop-filter:blur(6px);background:rgba(255,255,255,.08);transition:transform .3s,background .3s}
.play-big::before{content:"";position:absolute;left:50%;top:50%;margin:-13px 0 0 -8px;border-style:solid;border-width:13px 0 13px 22px;border-color:transparent transparent transparent #fff}
.play-big:hover{transform:scale(1.08);background:rgba(240,138,166,.35)}

/* slanted section edges (Poetry) */
.divider{clip-path:polygon(0 4vw,100% 0,100% calc(100% - 4vw),0 100%);margin:-4vw 0;padding:calc(9rem + 4vw) 0;z-index:2}
.divider .background-img{opacity:.42}
.divider::after{background:linear-gradient(120deg,rgba(22,18,58,.92),rgba(22,18,58,.55) 55%,rgba(240,138,166,.35))}
.epk-points li{border-radius:3px;font-family:var(--mono);font-size:.72rem}
#contact{padding-top:calc(7.5rem + 4vw)}

/* circular crop (Poetry) */
.about-photos .p2{border-radius:50%;aspect-ratio:1;object-fit:cover;width:44%;border:6px solid #111116}
.about-photos .p1{border-radius:4px}

/* cards & platforms a touch more editorial */
.album,.news-card,.contact-card,.press-photo,.offer .box,.block-member,.platform{border-radius:6px}
.masonry a,.video-card .thumb,.flyer-wall a{border-radius:4px}
.news-card h3,.album .info h3{letter-spacing:.01em}

/* footer: colour band + "reach out" (W&M) */
.footer{background:linear-gradient(180deg,#07070a 0%,#16123a 100%);border-top:0;position:relative}
.footer::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--dusk)}
.footer .f-logo em{background:var(--dusk);-webkit-background-clip:text;background-clip:text;color:transparent}
.footer .f-mail{color:#fff;font-family:var(--mono);font-size:.95rem;letter-spacing:.06em}
.page-hero h1 em,.f-logo em,.header .logo .name em{color:var(--rose)}

@media (max-width:991px){
  .feature-stack{max-width:560px;margin:0 auto}
}
@media (max-width:767px){
  .block-title h2{letter-spacing:.14em;font-size:2.1rem}
  .feature-stack{padding-bottom:0}
  .feature-stack .art{width:100%}
  .overlap-box{position:relative;width:auto;margin:-3.5rem 1rem 0}
  .photo-band{min-height:360px;margin-bottom:2.5rem}
  .photo-band h3{letter-spacing:.12em}
  .play-big{width:74px;height:74px}
  .shows-band{padding:3.2rem 0}
  .shows-band .upcoming-card h3{font-size:2rem;letter-spacing:.06em}
  .divider{clip-path:polygon(0 6vw,100% 0,100% calc(100% - 6vw),0 100%)}
}
.band-video{position:relative;max-width:1000px;margin:0 auto}
.band-video video{width:100%;display:block;border-radius:4px;background:#000}

/* ---- Concerts: upcoming list + year accordion ---- */
.shows-band .upcoming-card{align-items:flex-end}
.up-main{flex:1;min-width:280px}
.upcoming-list .block-tour{border-bottom:1px solid rgba(255,255,255,.14);padding-left:0}
.upcoming-list .block-tour:last-child{border-bottom:0}
.upcoming-list .block-tour .date b{color:#fff}
.upcoming-list .block-tour .date span{color:#d9d4f2}
.upcoming-list .block-tour h4{font-size:1.15rem}
.upcoming-list .block-tour .venue{color:#d9d4f2}
.no-upcoming[hidden]{display:none}
.tour-group{border-bottom:1px solid var(--line)}
.tour-group:first-child{border-top:1px solid var(--line)}
#concerts .tour-year{margin:0;display:block}
#concerts .tour-year::after{display:none}
.tour-toggle{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem .2rem;cursor:pointer;font:inherit;color:inherit}
.tour-toggle:focus-visible{outline:2px solid var(--rose);outline-offset:3px;border-radius:3px}
.tour-toggle:hover .ty{color:#fff}
.tour-toggle .ty{transition:color .2s}
.tour-icon{position:relative;width:34px;height:34px;flex:none;border:1px solid var(--line);border-radius:50%;transition:border-color .2s,background .2s}
.tour-icon::before,.tour-icon::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;background:currentColor;transition:transform .3s ease}
.tour-icon::after{transform:rotate(90deg)}
.tour-toggle[aria-expanded="true"] .tour-icon::after{transform:rotate(0)}
.tour-toggle:hover .tour-icon{border-color:var(--rose)}
/* collapsing only when JS is running; without JS every year stays expanded */
.js .tour-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease,visibility 0s .45s;visibility:hidden}
.js .tour-group.is-open .tour-panel{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .45s ease,visibility 0s 0s}
.tour-panel-inner{overflow:hidden;min-height:0}
.tour-panel-inner .block-tour:last-child{border-bottom:0}
.tour-panel-inner{overflow-anchor:none}
@media (prefers-reduced-motion:reduce){.js .tour-panel,.js .tour-group.is-open .tour-panel{transition:none}}
