/*
Theme Name: GSChaggar Premium
Theme URI: https://gschaggar.com
Author: GSChaggar
Description: Cinematic, editable WordPress artist theme for GSChaggar.
Version: 2.4.0
Text Domain: gschaggar-premium
*/
:root{--bg:#090909;--panel:#111;--text:#f5f2eb;--muted:#aaa49b;--accent:#d62323;--line:#292929;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}.site-header{position:fixed;inset:0 0 auto;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:18px 4vw;background:linear-gradient(#090909ee,#09090900)}.brand{font-weight:900;letter-spacing:.17em;font-size:1.15rem}.menu{display:flex;gap:24px;align-items:center}.menu a{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em}.menu-toggle{display:none;background:none;border:1px solid #555;color:#fff;padding:8px 12px}.hero{min-height:100vh;display:grid;align-items:end;position:relative;background-size:cover;background-position:center}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050505e8 0%,#05050588 45%,#05050530),linear-gradient(0deg,#090909 0%,transparent 45%)}.hero-inner{position:relative;z-index:2;width:min(var(--max),92vw);margin:0 auto;padding:160px 0 90px}.eyebrow,.section-label{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);font-weight:800}.hero h1,.section-title,.era h3{margin:.1em 0;line-height:.88;text-transform:uppercase;font-weight:950;letter-spacing:-.05em}.hero h1{font-size:clamp(4.4rem,14vw,12rem)}.hero-copy{max-width:680px;font-size:clamp(1.05rem,2vw,1.45rem);color:#ddd}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #777;padding:14px 20px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.72rem}.btn.primary{background:var(--accent);border-color:var(--accent)}.ticker{overflow:hidden;border-block:1px solid var(--line);padding:13px 0;white-space:nowrap;color:#bbb}.ticker span{display:inline-block;min-width:max-content;animation:ticker 24s linear infinite;letter-spacing:.15em;font-size:.78rem}@keyframes ticker{to{transform:translateX(-50%)}}.section{width:min(var(--max),92vw);margin:auto;padding:110px 0}.section-title{font-size:clamp(3.3rem,8vw,7.5rem)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.about-copy{max-width:650px;color:#c7c2ba;font-size:1.08rem}.raw-frame{position:relative}.raw-frame:before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--accent);z-index:-1}.discography-intro{padding-bottom:60px}.timeline-lead{max-width:760px;color:#bbb;font-size:1.15rem}.era{min-height:88vh;position:relative;display:flex;align-items:flex-end;background-image:var(--era-image);background-size:cover;background-position:center;margin-bottom:2px;overflow:hidden}.era-shade{position:absolute;inset:0;background:linear-gradient(90deg,#050505f2 0%,#050505bd 42%,#05050522),linear-gradient(0deg,#050505e6 0%,transparent 60%)}.era-content{position:relative;z-index:3;width:min(var(--max),92vw);margin:0 auto;padding:100px 0}.era-content>p{max-width:650px;font-size:1.12rem;color:#ddd}.era h3{font-size:clamp(4rem,11vw,10rem)}.era-meta{text-transform:uppercase;letter-spacing:.18em;color:var(--accent);font-size:.75rem;font-weight:900}.era-index{position:absolute;right:4vw;top:12%;font-size:clamp(8rem,20vw,20rem);font-weight:950;color:#ffffff0a;line-height:1}.era-tracks{display:flex;gap:9px;flex-wrap:wrap;margin:26px 0}.era-tracks span{border:1px solid #555;padding:8px 11px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.stack{display:grid;gap:18px}.gallery img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.social-rail{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:999;display:flex;flex-direction:column;gap:8px}.social-rail a,.social-grid a{border:1px solid #454545;background:#0d0d0de8}.social-rail a{width:46px;height:46px;display:grid;place-items:center}.icon svg,.icon-large svg{width:22px;height:22px;fill:currentColor;stroke:currentColor;stroke-width:1.5}.icon svg .cut,.icon svg .cut-line,.icon-large svg .cut,.icon-large svg .cut-line{fill:none;stroke:#090909;stroke-width:1.7}.social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.social-grid a{display:flex;align-items:center;gap:14px;padding:18px;text-transform:uppercase;letter-spacing:.1em;font-size:.8rem}.social-grid b{margin-left:auto}.contact .email{font-size:clamp(1.5rem,5vw,4.4rem);border-bottom:2px solid var(--accent)}.music-player{position:fixed;left:0;right:0;bottom:0;z-index:1001;background:#0c0c0cf4;border-top:1px solid #333;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:10px 4vw}.player-cover{width:48px;height:48px;object-fit:cover}.player-copy strong,.player-copy span{display:block}.player-copy span{font-size:.72rem;color:#aaa}.player-links{display:flex;gap:8px}.player-links a{border:1px solid #444;padding:7px 9px;font-size:.7rem}.site-footer{border-top:1px solid var(--line);padding:70px 4vw 100px;background:#050505}.footer-grid{width:min(var(--max),92vw);margin:auto;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:45px}.footer-title{font-size:clamp(2.5rem,6vw,5.4rem);font-weight:950;line-height:.9}.footer-nav a{display:block;padding:5px 0;color:#bbb}.footer-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.footer-socials a{border:1px solid #444;width:42px;height:42px;display:grid;place-items:center}.footer-bottom{width:min(var(--max),92vw);margin:45px auto 0;border-top:1px solid #222;padding-top:20px;color:#777;font-size:.8rem}.post-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post-card{background:var(--panel);border:1px solid var(--line);padding:22px}.post-card h3{font-size:1.5rem}.screen-reader-text{position:absolute;left:-9999px}.wave{height:34px;background:repeating-linear-gradient(90deg,transparent 0 5px,#d62323 5px 7px,transparent 7px 12px);opacity:.3;clip-path:polygon(0 45%,4% 25%,8% 60%,12% 35%,16% 70%,20% 28%,24% 55%,28% 20%,32% 66%,36% 36%,40% 73%,44% 22%,48% 60%,52% 32%,56% 69%,60% 30%,64% 58%,68% 18%,72% 65%,76% 29%,80% 72%,84% 36%,88% 62%,92% 24%,96% 55%,100% 45%,100% 55%,0 55%)}
@media(max-width:850px){.menu-toggle{display:block}.menu{display:none;position:absolute;right:4vw;top:62px;background:#080808;border:1px solid #333;padding:18px;flex-direction:column;align-items:flex-start}.menu.open{display:flex}.grid-2,.gallery,.footer-grid,.post-list{grid-template-columns:1fr}.social-grid{grid-template-columns:1fr 1fr}.social-rail{display:none}.hero-inner{padding-bottom:120px}.era{min-height:74vh}.music-player{grid-template-columns:auto 1fr}.player-links{grid-column:1/-1;overflow:auto}.site-footer{padding-bottom:145px}}


/* v2.1 — uncropped split-screen hero and safer portrait framing */
.hero.hero-split{min-height:100vh;display:flex;align-items:stretch;overflow:hidden;background:radial-gradient(circle at 73% 38%,#24201d 0,#111 24%,#080808 58%,#050505 100%);isolation:isolate}
.hero.hero-split:before{background:linear-gradient(90deg,#050505 0%,#050505e8 40%,transparent 72%),linear-gradient(0deg,#090909 0%,transparent 28%);z-index:-1}
.hero-noise{position:absolute;inset:0;z-index:-1;opacity:.12;pointer-events:none;background-image:radial-gradient(#fff 0.45px,transparent .7px);background-size:7px 7px;mix-blend-mode:soft-light}
.hero.hero-split .hero-inner{width:min(var(--max),92vw);padding:118px 0 58px;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr);align-items:center;gap:3vw}
.hero-copy-column{position:relative;z-index:3;padding:40px 0}
.hero.hero-split h1{font-size:clamp(4.8rem,11vw,10.5rem);max-width:760px}
.hero-portrait-wrap{position:relative;align-self:end;height:calc(100vh - 88px);min-height:650px;display:flex;align-items:flex-end;justify-content:center;z-index:2}
.hero-portrait{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:grayscale(1) contrast(1.06);drop-shadow:0 20px 50px #000;position:relative;z-index:2}
.hero-portrait-glow{position:absolute;width:78%;aspect-ratio:1;left:50%;top:43%;transform:translate(-50%,-50%);background:radial-gradient(circle,#d6232330 0,transparent 68%);filter:blur(10px)}
.hero-image-label{position:absolute;right:-10px;bottom:86px;z-index:3;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.62rem;letter-spacing:.25em;color:#888}
/* Album images remain cinematic while protecting faces near the top. */
.era{background-position:center 18%}
.era:nth-of-type(2){background-position:center 12%}
.era:nth-of-type(3){background-position:center 20%}

@media(max-width:1000px){
  .hero.hero-split .hero-inner{grid-template-columns:1fr 42%;gap:1vw}
  .hero.hero-split h1{font-size:clamp(4rem,10vw,7.5rem)}
  .hero-portrait-wrap{height:78vh;min-height:560px}
}
@media(max-width:700px){
  .hero.hero-split{min-height:100svh;align-items:stretch}
  .hero.hero-split:before{background:linear-gradient(0deg,#070707 0%,#070707ee 36%,transparent 67%),linear-gradient(90deg,#05050588,transparent)}
  .hero.hero-split .hero-inner{padding:86px 0 112px;grid-template-columns:1fr;grid-template-rows:minmax(410px,58svh) auto;align-items:end}
  .hero-portrait-wrap{grid-row:1;height:58svh;min-height:410px;width:100%;align-self:start}
  .hero-portrait{object-position:center top}
  .hero-copy-column{grid-row:2;padding:0;z-index:4;margin-top:-62px}
  .hero.hero-split h1{font-size:clamp(3.7rem,18vw,6rem)}
  .hero-copy{font-size:1rem;max-width:92%}
  .hero-image-label{display:none}
}


/* v2.2 — protect heads in all middle/discography and gallery images */
.discography-timeline .era{
  background-color:#080808;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:right center;
}
.discography-timeline .era-shade{
  background:linear-gradient(90deg,#050505 0%,#050505f2 34%,#050505a8 57%,#05050518 82%),linear-gradient(0deg,#050505d9 0%,transparent 52%);
}
.discography-timeline .era:nth-of-type(1),
.discography-timeline .era:nth-of-type(2),
.discography-timeline .era:nth-of-type(3){background-position:right center}
.gallery img{
  object-position:center top;
}
.stack img{
  min-height:0;
}
@media(max-width:850px){
  .discography-timeline .era{
    min-height:82svh;
    background-size:contain;
    background-position:center top;
    align-items:flex-end;
  }
  .discography-timeline .era-shade{
    background:linear-gradient(0deg,#050505 0%,#050505f2 35%,#0505057a 62%,transparent 88%);
  }
  .discography-timeline .era-content{padding:300px 0 64px}
  .gallery img{height:auto;object-fit:contain;object-position:center top}
}


/* v2.3 — ensure album titles always remain clearly visible */
.discography-timeline .era-content{
  isolation:isolate;
}
.discography-timeline .era-title{
  display:block !important;
  position:relative;
  z-index:10;
  color:#ffffff !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:0 3px 18px rgba(0,0,0,.95),0 0 2px #000;
  -webkit-text-fill-color:#ffffff;
  overflow:visible;
  max-width:100%;
}
@media(max-width:850px){
  .discography-timeline .era-title{
    font-size:clamp(3.2rem,17vw,6rem);
    line-height:.9;
    word-break:normal;
  }
}

/* v2.4 — keep the WordPress custom logo correctly sized and left aligned */
.site-header{
  min-height:92px;
  padding:12px 4vw;
  gap:32px;
}
.site-header .brand{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex:0 0 auto;
  width:auto;
  max-width:240px;
  overflow:hidden;
  line-height:1;
}
.site-header .custom-logo-link{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  margin:0;
  padding:0;
}
.site-header .custom-logo{
  display:block;
  width:auto !important;
  height:auto !important;
  max-width:230px !important;
  max-height:74px !important;
  margin:0 !important;
  object-fit:contain;
  object-position:left center;
}
.site-header .menu{
  margin-left:auto;
}
@media(max-width:850px){
  .site-header{min-height:72px;padding:9px 4vw}
  .site-header .brand{max-width:175px}
  .site-header .custom-logo{max-width:170px !important;max-height:56px !important}
}
