/* Baja California: concert-poster composition, full catalogue, fan-first.
   Variance 7 / motion 3 / density 4. Existing dark brand and sharp edges.
   Layer scale: header 30, privacy 80, keyboard skip link 100. */
:root{--accent:#ffb511;--muted:#b7b5b0;font-family:'Barlow',Arial,sans-serif}
body{font-family:'Barlow',Arial,sans-serif;font-size:17px}
h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif}
.wrap{width:min(1280px,calc(100% - 80px))}
.header-inner{min-height:78px;gap:24px}
.main-nav{gap:22px;font-size:.94rem}
.main-nav a{min-height:44px;display:inline-flex;align-items:center}
.main-nav .nav-cta{min-height:44px;padding:10px 18px}
.main-nav a[aria-current="location"]:not(.nav-cta){color:var(--accent);text-decoration:underline;text-underline-offset:7px}
.button,.text-link,.card-links a,.socials a,.footer-bottom a,.plain-button{min-height:44px;display:inline-flex;align-items:center}
.button{font-size:1rem;min-height:52px;font-weight:600;gap:12px}
.button.outline{border-color:#77746d}
.button:active,.video-shell button:active{transform:translateY(1px)}
.text-link{font-size:1rem}
.text-link:hover,.card-links a:hover{text-decoration:underline;text-underline-offset:5px}
.section{padding:clamp(64px,7.5vw,112px) 0}
.section h2{font-size:clamp(2.8rem,5.2vw,4.7rem);text-wrap:balance}
.section-head{margin-bottom:28px}
.section-intro{color:var(--muted);max-width:55ch;margin-bottom:40px}
.fan-home .hero{min-height:0}
.fan-home .hero .hero-inner{grid-template-columns:1.12fr 1fr;gap:40px;padding:64px 0 70px;min-height:min(720px,calc(100svh - 78px))}
.fan-home .hero .hero-copy h1{font-size:clamp(4rem,8vw,7.9rem);letter-spacing:-.025em;line-height:.93;margin-bottom:24px}
.fan-home .hero .intro{font-size:1.2rem;max-width:32ch;color:#e0ddd5}
.fan-home .hero-mascot{width:min(100%,470px);height:auto;filter:drop-shadow(0 20px 28px #0008)}
.fan-home .hero .eyebrow{font-size:.83rem;letter-spacing:.17em;margin-bottom:18px}
.fan-home .hero-actions{margin:30px 0 0;align-items:center;gap:16px}
.fan-home .hero:after{background:linear-gradient(90deg,#101010eb,#1010106b),linear-gradient(0deg,#101010,transparent 65%)}
.featured-release{position:relative;background:#191919}
.featured-release .release{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(40px,7vw,112px);max-width:1120px}
.release-art{display:block;max-width:480px}
.release-art img,.music-card img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.release-copy h2{max-width:8ch;font-size:clamp(4rem,7vw,6.8rem);line-height:.94;margin-bottom:28px}
.release-copy h2 span{color:var(--accent)}
.release-copy p:not(.eyebrow){font-size:1.15rem;max-width:38ch}
.release-copy .hero-actions{gap:20px}
.discography-intro{max-width:58ch;margin-bottom:32px}
.albums{gap:48px;padding:28px 0 34px;margin-bottom:40px}
.album h3{font-size:2.4rem;margin:0 0 12px}
.album h3 span{color:var(--accent);font-size:1.1rem;display:inline-block;margin-left:12px;font-family:'Barlow',Arial,sans-serif}
.album p{max-width:50ch;font-size:1rem}
.music-grid{gap:44px 30px}
.music-card{min-width:0}
.music-card>a{display:block}
.music-card h3{font-size:2rem;margin:18px 0 8px;text-wrap:balance}
.music-card .release-kind{font-size:.86rem;letter-spacing:.02em;color:#c8c4bc}
.music-card[data-release-kind="live"] .release-kind{color:var(--accent)}
.card-links{gap:2px 20px;margin-top:8px}
.card-links a{font-size:.96rem;text-underline-offset:5px;padding:8px 0}
.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 32px}
.video-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);column-gap:40px;align-items:start;margin-bottom:12px}
.video-card:first-child .video-shell{grid-row:1/3}
.video-card:first-child h3{font-size:2.8rem;align-self:end;max-width:16ch}
.video-card:first-child>.text-link{justify-self:start;align-self:start}
.video-mode{display:block;color:var(--muted);font:400 .95rem/1.5 'Barlow',Arial,sans-serif;margin-top:10px}
.video-card h3{font-size:1.9rem;margin:18px 0 4px}
.video-shell img{height:100%;aspect-ratio:16/9}
.video-shell .play-icon{width:60px;height:60px;background:#111c;border-color:#ffb511;color:#ffb511}
.video-shell button:hover .play-icon{background:var(--accent);color:#111}
.video-card>.text-link{border-bottom:0;padding:8px 0}
.tour{background:#1a1a1a}
.tour-empty{padding:0;border:0;gap:48px}
.tour-empty strong{font-size:1.4rem}
.tour-empty p{max-width:60ch}
.tour-empty .button{flex-shrink:0}
.tour .eyebrow{letter-spacing:.05em;text-transform:none;font-size:1rem}
.merch-grid{gap:36px}
.merch-card{display:flex;flex-direction:column;align-items:stretch;background:transparent;padding:0;gap:20px}
.merch-card>a{display:block;width:100%;background:#191919;overflow:hidden}
.merch-card img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain}
.merch-card>div{padding:0!important}
.merch-card h3{font-size:2.1rem;margin-bottom:10px}
.merch-card p{margin-bottom:8px}
.band-grid{grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.band-grid>img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;top:110px}
.band-copy h2{font-size:clamp(2.8rem,4.7vw,4.5rem)}
.band-copy p{max-width:58ch;line-height:1.7}
.band-copy .band-lead{font-size:1.5rem;line-height:1.35;color:var(--text);max-width:30ch}
.members{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px;border:0;padding-top:10px;margin:24px 0}
.members li{display:flex;flex-direction:column;gap:2px;border:0;padding:0;font-size:1rem}
.members strong{font-weight:600}
.milestones{margin-top:56px;padding-top:28px}
.milestones strong{font-size:2.6rem}
.press-highlights{grid-template-columns:1.25fr 1fr 1fr;gap:38px;margin-top:40px}
.press-item{border-top:0;border-left:2px solid var(--accent);padding:0 0 0 22px}
.press-item a{font-size:1.8rem;line-height:1.3}
.press-archive{margin-top:44px}
.press-archive summary,.faq summary{min-height:44px;align-content:center;font-size:1.1rem}
.faq .eyebrow{display:none}
.faq p{max-width:65ch;line-height:1.7}
.contact{background:#191919;color:var(--text)}
.contact h2{font-size:clamp(2.8rem,4.4vw,4rem);margin-bottom:24px}
.booking-action{margin-bottom:36px}
.contact-grid{border-color:#43413c;gap:44px}
.contact-grid a{min-height:44px;display:flex;align-items:center;font-size:1rem;margin:0}
.contact-grid h3{margin-bottom:14px;color:var(--muted)}
.contact a:hover{color:var(--accent)}
.community{background:var(--accent);color:#15130e;overflow:hidden}
.community-inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.6fr);align-items:center;gap:56px}
.community h2{font-size:clamp(3.2rem,6vw,5.8rem);margin-bottom:24px;max-width:16ch}
.community p{max-width:46ch;font-size:1.16rem}
.community-inner>img{width:100%;height:auto;max-width:300px;justify-self:end}
.community .button{background:#15130e;color:#ffbd30;border-color:#15130e}
.community .button:hover{background:#332d20;color:#fff0c9}
.community .text-link{color:#15130e;border-color:#15130e;font-weight:600}
.site-footer{padding:48px 0 24px}
.footer-top{gap:32px}
.socials{gap:8px 24px;font-size:1rem}
.footer-bottom{font-size:.9rem;align-items:center;gap:10px 24px}
.privacy-close{display:block;background:none;border:0;padding:12px 0 0;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-size:.92rem;color:#ddd}
.cookie-panel h2{font-family:'Barlow',Arial,sans-serif;font-weight:600}
.cookie-panel p{font-size:.95rem}
.cookie-actions .button{font-size:.93rem}
.cookie-panel{max-height:calc(100svh - 24px);overflow-y:auto}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .music-card img,.merch-card img{transition:transform .25s ease,filter .25s ease}
  .music-card>a:hover img{transform:translateY(-4px);filter:brightness(1.06)}
  .merch-card>a:hover img{transform:scale(1.025)}
}
@media(max-width:1100px){
  .wrap{width:calc(100% - 56px)}
  .main-nav{gap:13px;font-size:.85rem}
  .header-inner{gap:16px}
  .brand img{width:125px}
  .band-grid{gap:36px}
  .fan-home .hero .hero-copy h1{font-size:clamp(3.8rem,8vw,6rem)}
  .hero-actions .button{padding:13px 18px}
}
@media(max-width:900px) and (min-width:761px){
  .main-nav{gap:9px;font-size:.8rem}
  .main-nav .nav-cta{padding:10px}
  .brand img{width:105px}
  .wrap{width:calc(100% - 40px)}
}
@media(max-width:760px){
  .wrap{width:calc(100% - 36px)}
  body{font-size:17px}
  .header-inner{min-height:70px}
  .main-nav{top:70px;gap:4px;padding:16px 18px 22px;font-size:1.1rem}
  .main-nav a{padding:9px 14px}
  .menu-toggle{font-size:1rem;min-height:44px;min-width:78px}
  .fan-home .hero .hero-inner{display:flex;flex-direction:column-reverse;gap:18px;padding:22px 0 40px;min-height:0}
  .fan-home .hero-mascot{width:min(50vw,200px)}
  .fan-home .hero-copy{text-align:center;width:100%}
  .fan-home .hero .hero-copy h1{font-size:clamp(3.4rem,14.8vw,5.8rem);margin-bottom:16px}
  .fan-home .hero .eyebrow{font-size:.76rem;margin-bottom:12px}
  .fan-home .hero .intro{font-size:1.07rem;max-width:30ch;margin:0 auto}
  .fan-home .hero-actions{justify-content:center;gap:10px;margin-top:22px}
  .hero-copy .hero-actions .button{width:100%;max-width:360px}
  .section{padding:64px 0}
  .section-head{gap:12px;margin-bottom:20px}
  .section h2{font-size:3.2rem}
  .featured-release .release{grid-template-columns:1fr;gap:30px}
  .release-art{width:100%;max-width:400px;margin:auto}
  .release-copy h2{max-width:none;font-size:3.8rem}
  .release-copy .hero-actions{justify-content:flex-start}
  .albums{grid-template-columns:1fr;gap:28px;padding:24px 0;margin-bottom:30px}
  .album h3{font-size:2.2rem}
  .music-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}
  .music-card h3{font-size:1.65rem;margin-top:12px}
  .music-card .release-kind{font-size:.82rem;line-height:1.4;min-height:23px}
  .card-links{display:flex;flex-direction:column;align-items:stretch;gap:0;margin-top:4px}
  .card-links a{font-size:.91rem;min-height:44px;line-height:1.3;padding:8px 0}
  .video-grid{grid-template-columns:1fr;gap:32px}
  .video-card:first-child{display:block;margin:0}
  .video-card:first-child h3,.video-card h3{font-size:2rem;max-width:none}
  .video-mode{margin-top:6px}
  .section-intro{margin-bottom:26px}
  .tour-empty{gap:22px;padding:0}
  .tour-empty strong{font-size:1.3rem}
  .merch-grid{grid-template-columns:1fr;gap:36px}
  #merchan .merch-card{gap:18px;overflow:visible;align-items:stretch}
  .band-grid{grid-template-columns:1fr;gap:32px}
  .band-grid>img{position:static;height:auto;aspect-ratio:1;object-fit:contain}
  .band-copy .band-lead{font-size:1.35rem}
  .members{gap:22px 18px}
  .members li{font-size:.97rem}
  .milestones{grid-template-columns:1fr;gap:20px;margin-top:36px}
  .milestones p{margin-bottom:0}
  .press-highlights{grid-template-columns:1fr;gap:30px;margin-top:30px}
  .press-item a{font-size:1.8rem}
  .press-archive summary,.faq summary{font-size:1.08rem;line-height:1.5}
  .contact-grid{gap:28px}
  .community-inner{grid-template-columns:1fr;gap:32px}
  .community-inner>img{width:130px;justify-self:start}
  .community h2{font-size:3.4rem}
  .community .hero-actions{align-items:flex-start;flex-direction:column}
  .footer-top{align-items:start}
  .socials{gap:4px 24px}
  .site-footer .mascot-signature img{width:90px}
  .cookie-panel{padding:20px}
}
@media(max-width:360px){
  .fan-home .hero-mascot{width:150px}
  .fan-home .hero .hero-copy h1{font-size:3.25rem}
  .section h2,.community h2{font-size:2.8rem}
  .music-grid{gap:26px 12px}
  .cookie-actions{flex-direction:column}
}
