/* ==========================================================================
   CHOCUZ Official Theme — main.css
   Mobil oncelikli, sonra tablet (768px) ve masaustu (1024px) ile genisler.
   ========================================================================== */

:root{
  --cz-ink:#0a0d12;
  --cz-graphite:#12161d;
  --cz-charcoal:#1b212b;
  --cz-paper:#ede7dc;
  --cz-fog:#8b93a1;
  --cz-amber:#e8823a;
  --cz-teal:#3fa9a0;
  --cz-plum:#6b2140;

  --font-display:'Fraunces','Georgia',serif;
  --font-body:'Inter',-apple-system,sans-serif;
  --font-mono:'JetBrains Mono',monospace;

  --edge:20px;
  --radius:2px;
  --header-h:64px;
}

@media (min-width:768px){ :root{ --edge:40px; --header-h:76px; } }
@media (min-width:1200px){ :root{ --edge:64px; } }

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  background:var(--cz-ink);
  color:var(--cz-paper);
  font-family:var(--font-body);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
button{ font-family:inherit; cursor:pointer; }
ul{ margin:0; padding:0; list-style:none; }
h1,h2,h3{ font-family:var(--font-display); margin:0; font-weight:600; letter-spacing:-.01em; }

@media (prefers-reduced-motion: reduce){
  *{ animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; scroll-behavior:auto !important; }
}

.chocuz-main{ padding-top:var(--header-h); }

/* ---- signature motif: frequency bars ---- */
.chocuz-freq{ display:inline-flex; align-items:flex-end; gap:3px; height:14px; margin-inline-end:10px; vertical-align:middle; }
.chocuz-freq span{ width:3px; background:var(--cz-amber); border-radius:1px; animation:chocuzFreqPulse 1.1s ease-in-out infinite; }
.chocuz-freq span:nth-child(1){ height:40%; animation-delay:0s; }
.chocuz-freq span:nth-child(2){ height:100%; animation-delay:.15s; }
.chocuz-freq span:nth-child(3){ height:65%; animation-delay:.3s; }
.chocuz-freq span:nth-child(4){ height:85%; animation-delay:.45s; }
@keyframes chocuzFreqPulse{ 0%,100%{ transform:scaleY(.4); opacity:.6; } 50%{ transform:scaleY(1); opacity:1; } }

.chocuz-eyebrow{ font-family:var(--font-mono); font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--cz-fog); display:flex; align-items:center; margin-bottom:14px; }

/* ---- layout shell ---- */
.chocuz-section{ padding:64px var(--edge); border-top:1px solid rgba(237,231,220,.06); }
.chocuz-section--alt{ background:var(--cz-graphite); }
.chocuz-section__head{ max-width:640px; margin-bottom:36px; }
.chocuz-section__title{ font-size:clamp(28px,6vw,44px); line-height:1.05; }
.chocuz-section__title em{ color:var(--cz-amber); font-style:italic; font-weight:500; }

/* ---- header ---- */
.chocuz-header{
  position:fixed; top:0; left:0; right:0; z-index:100; height:var(--header-h);
  display:flex; align-items:center; justify-content:space-between; padding:0 var(--edge);
  background:linear-gradient(to bottom, rgba(10,13,18,.9), transparent);
  transition:background .35s ease, height .35s ease, backdrop-filter .35s ease;
}
.chocuz-header.is-compact{ background:rgba(10,13,18,.92); backdrop-filter:blur(10px); height:56px; border-bottom:1px solid rgba(237,231,220,.08); }
.chocuz-logo{ font-family:var(--font-display); font-weight:700; font-size:22px; letter-spacing:.06em; text-transform:uppercase; }
.chocuz-logo span{ color:var(--cz-amber); }
.chocuz-logo img{ max-height:44px; width:auto; }

.chocuz-nav-desktop{ display:none; }
.chocuz-header__right{ display:flex; align-items:center; gap:18px; }

.chocuz-burger{ width:34px; height:34px; background:none; border:1px solid rgba(237,231,220,.25); border-radius:var(--radius); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; }
.chocuz-burger span{ width:16px; height:1.5px; background:var(--cz-paper); transition:transform .25s ease, opacity .25s ease; }
.chocuz-burger.is-open span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
.chocuz-burger.is-open span:nth-child(2){ opacity:0; }
.chocuz-burger.is-open span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

.chocuz-mobile-nav{
  position:fixed; inset:0; z-index:90; background:var(--cz-ink);
  padding:calc(var(--header-h) + 24px) var(--edge) 40px;
  transform:translateY(-100%); transition:transform .4s cubic-bezier(.65,0,.35,1);
  display:flex; flex-direction:column; justify-content:space-between;
}
.chocuz-mobile-nav.is-open{ transform:translateY(0); }
.chocuz-mobile-nav__links{ display:flex; flex-direction:column; }
.chocuz-mobile-nav__links a{ font-family:var(--font-display); font-style:italic; font-weight:500; font-size:32px; padding:14px 0; border-bottom:1px solid rgba(237,231,220,.08); }
.chocuz-mobile-nav__social{ display:flex; flex-wrap:wrap; gap:18px; margin-top:30px; font-family:var(--font-mono); font-size:11px; letter-spacing:.1em; color:var(--cz-fog); }

/* ---- hero ---- */
.chocuz-hero{
  position:relative; min-height:100svh; display:flex; align-items:flex-end; padding:0 var(--edge) 40px;
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(232,130,58,.10), transparent 60%),
    linear-gradient(to bottom, rgba(10,13,18,.2) 0%, rgba(10,13,18,.55) 55%, var(--cz-ink) 100%),
    repeating-linear-gradient(115deg, #0e1116 0 2px, #0a0d12 2px 4px);
  overflow:hidden; margin-top:calc(var(--header-h) * -1);
}
.chocuz-hero__content{ position:relative; z-index:2; max-width:720px; }
.chocuz-hero__eyebrow{ font-family:var(--font-mono); font-size:11px; letter-spacing:.2em; color:var(--cz-amber); margin-bottom:18px; display:flex; align-items:center; }
.chocuz-hero__title{ font-size:clamp(44px,13vw,108px); line-height:.94; letter-spacing:-.02em; font-weight:600; }
.chocuz-hero__sub{ font-family:var(--font-mono); font-size:13px; letter-spacing:.06em; color:var(--cz-fog); margin:18px 0 30px; max-width:38ch; }
.chocuz-hero__ctas{ display:flex; flex-wrap:wrap; gap:12px; }

/* ---- buttons ---- */
.chocuz-btn{
  font-family:var(--font-body); font-weight:600; font-size:13px; letter-spacing:.03em;
  padding:15px 22px; border-radius:var(--radius); border:1px solid transparent;
  display:inline-flex; align-items:center; gap:10px; transition:transform .25s ease, background .25s ease, border-color .25s ease;
}
.chocuz-btn:active{ transform:scale(.97); }
.chocuz-btn--primary{ background:var(--cz-amber); color:var(--cz-ink); }
.chocuz-btn--primary:hover{ background:#f0994f; }
.chocuz-btn--outline{ border-color:rgba(237,231,220,.3); color:var(--cz-paper); }
.chocuz-btn--outline:hover{ border-color:var(--cz-amber); color:var(--cz-amber); }
.chocuz-btn--block{ width:100%; justify-content:center; }

/* ---- latest release ---- */
.chocuz-release-card{ background:var(--cz-charcoal); border-radius:6px; overflow:hidden; display:flex; flex-direction:column; border:1px solid rgba(237,231,220,.06); }
.chocuz-release-card__cover{ aspect-ratio:1/1; background:linear-gradient(160deg,#1b212b,#0a0d12 60%); position:relative; }
.chocuz-release-card__cover img{ width:100%; height:100%; object-fit:cover; }
.chocuz-release-card__body{ padding:24px; }
.chocuz-release-card__body h3{ font-size:24px; margin-bottom:6px; }
.chocuz-release-card__mood{ color:var(--cz-fog); font-size:14px; line-height:1.5; margin-bottom:20px; }

.chocuz-platform-row{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:14px; }
.chocuz-platform-btn{ font-family:var(--font-mono); font-size:11px; letter-spacing:.06em; padding:10px 14px; border:1px solid rgba(237,231,220,.15); border-radius:var(--radius); color:var(--cz-fog); transition:border-color .2s ease, color .2s ease; }
.chocuz-platform-btn:hover{ border-color:var(--cz-amber); color:var(--cz-amber); }
.chocuz-lyrics-link{ font-size:13px; color:var(--cz-amber); border-bottom:1px solid rgba(232,130,58,.4); padding-bottom:2px; }

/* ---- video ---- */
.chocuz-video-frame{ position:relative; aspect-ratio:16/9; background:#000; border-radius:6px; overflow:hidden; border:1px solid rgba(237,231,220,.08); margin-bottom:20px; }
.chocuz-video-frame iframe{ width:100%; height:100%; border:0; }

/* ---- concerts ---- */
.chocuz-concert-list{ display:flex; flex-direction:column; gap:1px; background:rgba(237,231,220,.06); border-radius:6px; overflow:hidden; }
.chocuz-concert-row{ background:var(--cz-ink); padding:20px; display:grid; grid-template-columns:64px 1fr; gap:16px; align-items:center; }
.chocuz-concert-row__date{ font-family:var(--font-display); line-height:1; }
.chocuz-concert-row__date .day{ font-size:30px; display:block; }
.chocuz-concert-row__date .mon{ font-family:var(--font-mono); font-size:11px; letter-spacing:.1em; color:var(--cz-fog); }
.chocuz-concert-row__info .city{ font-size:17px; font-weight:600; margin-bottom:2px; }
.chocuz-concert-row__info .venue{ color:var(--cz-fog); font-size:13px; }
.chocuz-concert-row__meta{ grid-column:2; display:flex; align-items:center; gap:12px; margin-top:10px; }
.chocuz-status-pill{ font-family:var(--font-mono); font-size:10px; letter-spacing:.08em; padding:5px 10px; border-radius:20px; text-transform:uppercase; }
.chocuz-status-pill--coming_soon{ background:rgba(232,130,58,.15); color:var(--cz-amber); }
.chocuz-status-pill--sold_out{ background:rgba(107,33,64,.3); color:#e8a6c2; }
.chocuz-status-pill--on_sale{ background:rgba(63,169,160,.18); color:var(--cz-teal); }
.chocuz-status-pill--cancelled,
.chocuz-status-pill--default{ background:rgba(139,147,161,.15); color:var(--cz-fog); }
.chocuz-concert-row__ticket{ font-size:13px; color:var(--cz-paper); border-bottom:1px solid var(--cz-amber); }

/* ---- song cards ---- */
.chocuz-song-scroller{ display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x mandatory; margin:0 calc(var(--edge) * -1); padding:4px var(--edge) 20px; -webkit-overflow-scrolling:touch; }
.chocuz-song-scroller::-webkit-scrollbar{ display:none; }
.chocuz-song-card{ scroll-snap-align:start; flex:0 0 68vw; max-width:230px; background:var(--cz-charcoal); border-radius:6px; overflow:hidden; border:1px solid rgba(237,231,220,.06); display:block; }
.chocuz-song-card__cover{ aspect-ratio:1/1; background:linear-gradient(155deg,#181f28,#0a0d12 65%); position:relative; }
.chocuz-song-card__img{ width:100%; height:100%; object-fit:cover; }
.chocuz-song-card__rank{ position:absolute; top:10px; left:10px; font-family:var(--font-mono); font-size:11px; color:var(--cz-amber); }
.chocuz-song-card__meta{ padding:14px; }
.chocuz-song-card__name{ font-size:14px; font-weight:600; margin-bottom:4px; }
.chocuz-song-card__genre{ font-size:11px; color:var(--cz-fog); font-family:var(--font-mono); letter-spacing:.04em; }

/* ---- story ---- */
.chocuz-story-block p{ color:var(--cz-fog); line-height:1.75; font-size:15px; margin:16px 0; max-width:60ch; }
.chocuz-story-block blockquote{ font-family:var(--font-display); font-style:italic; font-size:clamp(20px,5vw,30px); color:var(--cz-paper); margin:24px 0; border-left:2px solid var(--cz-plum); padding-left:18px; }

/* ---- gallery ---- */
.chocuz-gallery-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }
.chocuz-gallery-grid__cell{ aspect-ratio:3/4; background:linear-gradient(160deg,#181f28,#0a0d12); border-radius:4px; overflow:hidden; display:block; }
.chocuz-gallery-grid__cell img{ width:100%; height:100%; object-fit:cover; }
.chocuz-gallery-grid__cell:nth-child(1){ grid-row:span 2; aspect-ratio:auto; }

/* ---- store ---- */
.chocuz-product-card{ background:var(--cz-charcoal); border-radius:6px; overflow:hidden; border:1px solid rgba(237,231,220,.06); display:flex; flex-direction:column; }
.chocuz-product-card__cover{ aspect-ratio:1/1; background:radial-gradient(circle at 50% 40%, rgba(63,169,160,.18), #0c0e12 70%); }
.chocuz-product-card__cover img{ width:100%; height:100%; object-fit:cover; }
.chocuz-product-card__body{ padding:22px; }
.chocuz-product-card__body h3{ font-size:19px; margin-bottom:6px; }
.chocuz-product-card__body p{ color:var(--cz-fog); font-size:13px; margin-bottom:18px; }

/* ---- newsletter ---- */
.chocuz-newsletter-box{ background:linear-gradient(135deg, var(--cz-charcoal), #0c0e12); border:1px solid rgba(232,130,58,.2); border-radius:8px; padding:32px 24px; }
.chocuz-newsletter-form{ display:flex; flex-direction:column; gap:12px; margin-top:20px; }
.chocuz-newsletter-form input[type="email"]{ background:var(--cz-ink); border:1px solid rgba(237,231,220,.15); border-radius:var(--radius); padding:14px 16px; color:var(--cz-paper); font-family:var(--font-body); font-size:14px; }
.chocuz-consent-row{ display:flex; align-items:flex-start; gap:10px; font-size:12px; color:var(--cz-fog); line-height:1.5; margin-top:16px; }

.chocuz-honeypot{ position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0; pointer-events:none; }
.chocuz-form-status{ margin-top:12px; font-size:13px; color:var(--cz-teal); min-height:1.2em; }
.chocuz-form-status.is-error{ color:#e08c8c; }
.chocuz-form-status.is-success{ color:var(--cz-teal); }

/* ---- footer ---- */
.chocuz-footer{ padding:48px var(--edge) 36px; background:var(--cz-graphite); }
.chocuz-footer__top{ display:flex; flex-direction:column; gap:24px; margin-bottom:32px; }
.chocuz-footer__logo{ font-family:var(--font-display); font-size:26px; text-transform:uppercase; letter-spacing:.05em; }
.chocuz-footer__logo span{ color:var(--cz-amber); }
.chocuz-footer__slogan{ font-family:var(--font-mono); font-size:12px; letter-spacing:.08em; color:var(--cz-fog); }
.chocuz-footer__social{ display:flex; flex-wrap:wrap; gap:14px 20px; font-size:13px; }
.chocuz-footer__booking{ color:var(--cz-amber); font-size:14px; }
.chocuz-footer__legal{ display:flex; flex-wrap:wrap; gap:12px 20px; font-size:12px; color:var(--cz-fog); border-top:1px solid rgba(237,231,220,.08); padding-top:24px; }
.chocuz-footer__legal a{ color:var(--cz-fog); }
.chocuz-footer__copy{ margin-top:20px; font-size:11px; color:rgba(139,147,161,.6); font-family:var(--font-mono); }

/* ---- reveal-on-scroll ---- */
.chocuz-reveal{ opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease; }
.chocuz-reveal.is-visible{ opacity:1; transform:translateY(0); }

/* ---- generic content pages (single/archive/404/search) ---- */
.chocuz-content-wrap{ padding:calc(var(--header-h) + 40px) var(--edge) 80px; max-width:900px; margin:0 auto; }
.chocuz-content-wrap h1{ font-size:clamp(32px,7vw,56px); margin-bottom:20px; }
.chocuz-content-wrap .chocuz-lyrics{ font-family:var(--font-display); font-style:italic; font-size:18px; line-height:1.8; color:var(--cz-paper); }
.chocuz-empty-state{ padding:calc(var(--header-h) + 60px) var(--edge) 100px; text-align:center; color:var(--cz-fog); }

/* ---- filter chips (music page) ---- */
.chocuz-chip-row{ display:flex; gap:8px; overflow-x:auto; padding-bottom:6px; margin-bottom:8px; }
.chocuz-chip{ flex:0 0 auto; font-family:var(--font-mono); font-size:11px; letter-spacing:.06em; padding:9px 14px; border:1px solid rgba(237,231,220,.15); border-radius:20px; color:var(--cz-fog); white-space:nowrap; transition:border-color .2s ease, color .2s ease, background .2s ease; }
.chocuz-chip.is-active,.chocuz-chip:hover{ border-color:var(--cz-amber); color:var(--cz-amber); background:rgba(232,130,58,.08); }

/* ---- playlist grid ---- */
.chocuz-playlist-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.chocuz-playlist-card{ aspect-ratio:1/1; border-radius:8px; padding:16px; display:flex; flex-direction:column; justify-content:flex-end; background:linear-gradient(155deg,var(--cz-charcoal),var(--cz-ink) 70%); border:1px solid rgba(237,231,220,.06); position:relative; overflow:hidden; }
.chocuz-playlist-card::before{ content:''; position:absolute; inset:0; background:radial-gradient(circle at 75% 15%, rgba(63,169,160,.16), transparent 55%); }
.chocuz-playlist-card__mood{ font-family:var(--font-mono); font-size:10px; letter-spacing:.08em; color:var(--cz-teal); margin-bottom:6px; position:relative; }
.chocuz-playlist-card__name{ font-family:var(--font-display); font-size:19px; position:relative; }

/* ---- catalog list ---- */
.chocuz-catalog-list{ display:flex; flex-direction:column; }
.chocuz-catalog-row{ display:grid; grid-template-columns:32px 1fr auto; gap:14px; align-items:center; padding:16px 0; border-bottom:1px solid rgba(237,231,220,.08); }
.chocuz-catalog-row .idx{ font-family:var(--font-mono); font-size:12px; color:var(--cz-fog); }
.chocuz-catalog-row .title{ font-size:15px; font-weight:600; display:block; }
.chocuz-catalog-row .tags{ font-family:var(--font-mono); font-size:11px; color:var(--cz-fog); margin-top:2px; display:block; }
.chocuz-catalog-row .dur{ font-family:var(--font-mono); font-size:12px; color:var(--cz-fog); }

.chocuz-press-list{ display:flex; flex-direction:column; gap:24px; padding:0 var(--edge); }
.chocuz-press-item{ padding-bottom:20px; border-bottom:1px solid rgba(237,231,220,.08); }

.chocuz-form-grid{ display:grid; grid-template-columns:1fr; gap:14px; }
.chocuz-field{ display:flex; flex-direction:column; gap:6px; }
.chocuz-field label{ font-family:var(--font-mono); font-size:11px; letter-spacing:.06em; color:var(--cz-fog); text-transform:uppercase; }
.chocuz-field input,.chocuz-field select,.chocuz-field textarea{ background:var(--cz-charcoal); border:1px solid rgba(237,231,220,.15); border-radius:var(--radius); padding:13px 14px; color:var(--cz-paper); font-family:var(--font-body); font-size:14px; }
.chocuz-field textarea{ resize:vertical; }
@media (min-width:640px){ .chocuz-form-grid{ grid-template-columns:1fr 1fr; } .chocuz-field--full{ grid-column:1 / -1; } }

.chocuz-product-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.chocuz-product-card{ display:block; }
.chocuz-product-card__cover{ position:relative; }
.chocuz-product-card__tag{ position:absolute; top:12px; left:12px; font-family:var(--font-mono); font-size:10px; letter-spacing:.06em; background:rgba(139,147,161,.2); color:var(--cz-fog); padding:4px 10px; border-radius:20px; text-transform:uppercase; }
@media (min-width:768px){ .chocuz-product-grid{ grid-template-columns:repeat(3,1fr); } }
@media (min-width:1024px){ .chocuz-product-grid{ grid-template-columns:repeat(4,1fr); } }

.chocuz-concert-list--past .chocuz-concert-row{ opacity:.55; }
.chocuz-concert-list--past .chocuz-status-pill{ background:rgba(139,147,161,.12); color:var(--cz-fog); }

.chocuz-cta-banner{ background:linear-gradient(135deg,var(--cz-plum),#3a1226 70%); border-radius:8px; padding:32px 24px; display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.chocuz-cta-banner h3{ font-size:clamp(22px,5vw,32px); }
.chocuz-cta-banner p{ color:rgba(237,231,220,.75); font-size:14px; max-width:52ch; margin:0; }
.chocuz-cta-banner .chocuz-btn + .chocuz-btn{ margin-left:0; }

/* ---- editorial content (biography page) ---- */
.chocuz-bio-content{ margin-top:32px; max-width:68ch; }
.chocuz-bio-content h2{ font-size:clamp(24px,5vw,32px); margin:40px 0 16px; }
.chocuz-bio-content p{ color:var(--cz-fog); line-height:1.75; font-size:15px; margin:0 0 14px; }
.chocuz-bio-content blockquote{ font-family:var(--font-display); font-style:italic; font-size:clamp(20px,5vw,28px); color:var(--cz-paper); margin:24px 0; border-left:2px solid var(--cz-plum); padding-left:18px; }

/* ---- lightbox (photos page) ---- */
.chocuz-lightbox{ position:fixed; inset:0; z-index:200; background:rgba(10,13,18,.94); display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; transition:opacity .3s ease; padding:24px; }
.chocuz-lightbox.is-open{ opacity:1; pointer-events:auto; }
.chocuz-lightbox__frame{ position:relative; width:100%; max-width:720px; }
.chocuz-lightbox__frame img{ width:100%; max-height:80vh; object-fit:contain; border-radius:6px; }
.chocuz-lightbox__caption{ display:block; margin-top:12px; font-family:var(--font-mono); font-size:12px; color:var(--cz-fog); letter-spacing:.04em; }
.chocuz-lightbox__close{ position:absolute; top:-44px; right:0; background:none; border:1px solid rgba(237,231,220,.3); color:var(--cz-paper); width:36px; height:36px; border-radius:50%; font-size:16px; }
.chocuz-lightbox__nav{ position:absolute; top:40%; background:none; border:none; color:var(--cz-paper); font-size:32px; opacity:.7; padding:10px; }
.chocuz-lightbox__nav.prev{ left:-8px; } .chocuz-lightbox__nav.next{ right:-8px; }
.chocuz-lightbox__nav:hover{ opacity:1; color:var(--cz-amber); }

/* ---- video grid (videos page) ---- */
.chocuz-video-grid{ display:grid; grid-template-columns:1fr; gap:32px; padding:0 var(--edge); }
.chocuz-video-grid__item .chocuz-video-frame{ margin-bottom:12px; }
@media (min-width:768px){ .chocuz-video-grid{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:1024px){ .chocuz-video-grid{ grid-template-columns:repeat(3,1fr); } }

@media (min-width:768px){ .chocuz-playlist-grid{ grid-template-columns:repeat(3,1fr); } }
@media (min-width:1024px){ .chocuz-playlist-grid{ grid-template-columns:repeat(4,1fr); } }
@media (min-width:768px){
  .chocuz-release-card{ flex-direction:row; }
  .chocuz-release-card__cover{ width:44%; aspect-ratio:auto; }
  .chocuz-release-card__body{ flex:1; padding:32px; display:flex; flex-direction:column; justify-content:center; }
  .chocuz-concert-row{ grid-template-columns:80px 1fr auto; }
  .chocuz-concert-row__meta{ grid-column:3; margin-top:0; }
  .chocuz-song-card{ flex:0 0 30vw; max-width:210px; }
  .chocuz-gallery-grid{ grid-template-columns:repeat(3,1fr); }
}

/* ==========================================================================
   Desktop (1024px+)
   ========================================================================== */
@media (min-width:1024px){
  .chocuz-burger{ display:none; }
  .chocuz-nav-desktop{ display:flex; gap:32px; font-size:13px; letter-spacing:.02em; font-weight:500; position:absolute; left:50%; transform:translateX(-50%); }
  .chocuz-nav-desktop a{ position:relative; padding:4px 0; }
  .chocuz-nav-desktop a::after{ content:''; position:absolute; left:0; bottom:0; width:0; height:1px; background:var(--cz-amber); transition:width .25s ease; }
  .chocuz-nav-desktop a:hover::after{ width:100%; }

  .chocuz-section{ padding:96px var(--edge); }
  .chocuz-section__head{ max-width:520px; }
  .chocuz-gallery-grid{ grid-template-columns:repeat(4,1fr); }
  .chocuz-newsletter-box__inner{ display:flex; align-items:center; justify-content:space-between; gap:40px; }
  .chocuz-newsletter-form{ flex-direction:row; margin-top:0; flex:1; max-width:480px; }
  .chocuz-newsletter-form input[type="email"]{ flex:1; }
  .chocuz-footer__top{ flex-direction:row; justify-content:space-between; align-items:flex-start; }
}

/* ---- cookie consent banner ---- */
.chocuz-cookie-banner{ position:fixed; left:16px; right:16px; bottom:16px; z-index:300; max-width:520px; margin:0 auto; background:var(--cz-charcoal); border:1px solid rgba(237,231,220,.12); border-radius:10px; padding:20px; box-shadow:0 12px 32px rgba(0,0,0,.4); }
.chocuz-cookie-banner p{ font-size:13px; color:var(--cz-fog); line-height:1.6; margin:0 0 14px; }
.chocuz-cookie-banner a{ color:var(--cz-amber); }
.chocuz-cookie-banner__actions{ display:flex; flex-wrap:wrap; gap:10px; }
.chocuz-cookie-banner__actions .chocuz-btn{ padding:10px 16px; font-size:12px; }
.chocuz-cookie-pref{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:12px 0; border-bottom:1px solid rgba(237,231,220,.08); }
.chocuz-cookie-pref strong{ font-size:13px; }
.chocuz-cookie-pref p{ margin:4px 0 0; font-size:12px; }
.chocuz-cookie-banner__prefs{ margin-top:4px; }

/* ---- legal page dashed placeholder already inline-styled; no extra rule needed ---- */
