/* Crazy Chicken Studios — stage-light violet theme, built from the logo palette */
:root{
  --violet:#4a00e0; --violet-deep:#2a0a6e; --stage:#120826; --stage2:#1c0b3d;
  --red:#ff2b2b; --red-deep:#d21f1f; --cream:#f5ecd8; --orange:#f2a31e; --mic:#54c6ec;
  --ink:#0b0518; --card:#1e1145; --line:rgba(255,255,255,.12);
  --display:'Permanent Marker',cursive; --script:'Caveat',cursive; --body:'Inter',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--stage);color:var(--cream);line-height:1.65;overflow-x:hidden}
img,video{max-width:100%;height:auto;display:block}
a{color:var(--mic)}
.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;background:#fff;color:#000;padding:6px 10px;z-index:99}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 22px;background:rgba(18,8,38,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--cream);font-family:var(--display);font-size:1.05rem;letter-spacing:.5px}
.brand img{border-radius:50%;box-shadow:0 0 0 2px var(--red),0 0 14px rgba(255,43,43,.5)}
.nav nav{display:flex;gap:4px;align-items:center}
.nav nav a{color:var(--cream);text-decoration:none;padding:8px 12px;border-radius:8px;font-weight:600;font-size:.92rem}
.nav nav a:hover{background:rgba(74,0,224,.35)}
.nav nav a.cta-mini{background:var(--red);color:#fff;margin-left:8px}
.nav nav a.cta-mini:hover{background:var(--red-deep)}
.burger{display:none;background:none;border:0;cursor:pointer}
.burger span{display:block;width:24px;height:3px;background:var(--cream);margin:5px 0;border-radius:2px;transition:.3s}

/* ---------- hero ---------- */
.hero{position:relative;min-height:88vh;display:flex;align-items:center;justify-content:center;text-align:center;background:radial-gradient(1200px 600px at 50% -10%,rgba(74,0,224,.55),transparent 70%),linear-gradient(180deg,var(--stage2),var(--stage));padding:70px 20px 90px;overflow:hidden}
.hero-inner{position:relative;z-index:3;max-width:1000px}
.hero-inner>picture img{width:min(92vw,900px);margin:0 auto;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.55),0 0 0 1px var(--line);animation:pop 1s cubic-bezier(.2,.9,.3,1.2) both}
@keyframes pop{from{transform:scale(.85) rotate(-2deg);opacity:0}to{transform:none;opacity:1}}
.tagline{font-family:var(--script);font-size:clamp(1.8rem,4.5vw,3rem);color:var(--orange);margin-top:18px;text-shadow:0 2px 0 rgba(0,0,0,.4)}
.hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.btn{display:inline-block;padding:13px 26px;border-radius:999px;text-decoration:none;font-weight:800;font-size:1rem;border:2px solid transparent;cursor:pointer;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px)}
.btn-red{background:var(--red);color:#fff;box-shadow:0 6px 22px rgba(255,43,43,.45)}
.btn-ghost{border-color:var(--mic);color:var(--mic)}
.btn-ghost:hover{background:rgba(84,198,236,.12)}
.hero-mascot{position:absolute;right:-70px;bottom:-60px;width:min(28vw,300px);z-index:1;opacity:.85;filter:drop-shadow(0 12px 30px rgba(0,0,0,.6));animation:bob 5s ease-in-out infinite;pointer-events:none}
@keyframes bob{50%{transform:translateY(-18px) rotate(2deg)}}
.staff{position:absolute;left:0;right:0;bottom:0;height:120px;z-index:1;opacity:.35}
.staff svg{width:100%;height:100%}
.staff path{fill:none;stroke:#fff;stroke-width:1.5}
.notes-bg{position:absolute;inset:0;z-index:1;pointer-events:none}
.notes-bg span{position:absolute;font-size:clamp(1.4rem,4vw,3rem);color:rgba(255,255,255,.16);animation:float 14s linear infinite;bottom:-60px}
.notes-bg span:nth-child(1){left:5%;animation-delay:0s}
.notes-bg span:nth-child(2){left:14%;animation-delay:2.2s}
.notes-bg span:nth-child(3){left:24%;animation-delay:5s}
.notes-bg span:nth-child(4){left:33%;animation-delay:1s}
.notes-bg span:nth-child(5){left:44%;animation-delay:6.5s}
.notes-bg span:nth-child(6){left:55%;animation-delay:3.4s}
.notes-bg span:nth-child(7){left:64%;animation-delay:8s}
.notes-bg span:nth-child(8){left:73%;animation-delay:4.2s}
.notes-bg span:nth-child(9){left:82%;animation-delay:7s}
.notes-bg span:nth-child(10){left:90%;animation-delay:2.8s}
.notes-bg span:nth-child(11){left:48%;animation-delay:9.5s}
.notes-bg span:nth-child(12){left:19%;animation-delay:11s}
@keyframes float{to{transform:translateY(-110vh) rotate(20deg)}}

/* ---------- ticker ---------- */
.ticker{background:var(--red);color:#fff;overflow:hidden;padding:10px 0;border-block:3px solid #000}
.ticker-track{display:flex;gap:38px;white-space:nowrap;animation:slide 26s linear infinite;width:max-content}
.ticker-track span{font-family:var(--display);font-size:.95rem;letter-spacing:1px}
@keyframes slide{to{transform:translateX(-50%)}}

/* ---------- sections ---------- */
.section{padding:90px 20px}
.section-violet{background:linear-gradient(180deg,var(--violet-deep),#230a55)}
.section-dark{background:var(--ink)}
.wrap{max-width:1100px;margin:0 auto}
.two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
h2{font-family:var(--display);font-size:clamp(1.9rem,4vw,2.8rem);color:#fff;margin-bottom:14px;text-shadow:3px 3px 0 rgba(74,0,224,.6)}
h2 em{color:var(--red);font-style:normal}
.sub{color:#d9c9ff;margin-bottom:34px;font-size:1.05rem}
.lead{font-size:1.12rem;color:#efe6ff;margin-bottom:14px}
p{margin-bottom:14px}
blockquote{border-left:4px solid var(--orange);padding:10px 18px;margin:20px 0;font-family:var(--script);font-size:1.35rem;color:#ffbe55}
.hat-card{display:flex;gap:16px;align-items:center;background:var(--card);border:1px dashed var(--orange);border-radius:14px;padding:14px;margin-top:22px}
.hat-card img{width:110px;border-radius:10px;flex-shrink:0}
.hat-card div{font-size:.92rem;color:#cfc2f2}
.hat-card strong{color:var(--orange)}
figcaption{font-family:var(--script);font-size:1.15rem;color:#b9a6e8;margin-top:10px}

.photo-frame{background:#fff;padding:14px 14px 8px;border-radius:6px;box-shadow:0 24px 50px rgba(0,0,0,.55)}
.photo-frame img{border-radius:3px}
.tilt-left{transform:rotate(-2.5deg)}
.tilt-left:hover{transform:rotate(0deg) scale(1.01);transition:.35s}
.pano{margin-top:60px}
.pano img{width:100%;border-radius:14px;box-shadow:0 18px 44px rgba(0,0,0,.5)}

/* ---------- music ---------- */
.tracks{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.track{background:#241456;border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:18px;transition:transform .2s,box-shadow .2s}
.track:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(74,0,224,.4)}
.track h3{font-family:var(--display);color:var(--orange);margin:14px 0 6px;font-size:1.15rem}
.track p{font-size:.95rem;color:#cfc2f2;margin:0}
.sc-embed{position:relative;height:166px}
.sc-embed iframe,.sc-tall iframe{width:100%;height:100%;border:0;border-radius:8px;filter:invert(1) hue-rotate(180deg) contrast(.95)}
.big-player{margin-top:44px}
.big-player h3{font-family:var(--display);color:#fff;margin-bottom:12px}
.sc-tall{height:400px}

/* ---------- studio ---------- */
.gear{list-style:none;margin:18px 0}
.gear li{display:flex;gap:12px;align-items:center;padding:9px 0;border-bottom:1px dashed var(--line);font-weight:600}
.gear li span{font-size:1.3rem}

/* ---------- gallery ---------- */
.grid-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:180px;grid-auto-flow:dense;gap:16px;margin-top:30px}
.grid-gallery figure{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--line)}
.grid-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.grid-gallery figure:hover img{transform:scale(1.06)}
.grid-gallery figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:26px 12px 10px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;font-family:var(--body);font-size:.85rem}
.g1{grid-column:span 2;grid-row:span 2}
.g2{grid-row:span 2}
.g3{grid-column:span 2}
.g4{grid-column:span 2;background:#fff}
.g4 img{object-fit:contain}

/* ---------- contact ---------- */
.socials{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.socials a{padding:10px 18px;border:2px solid var(--violet);border-radius:999px;text-decoration:none;color:#cbb8ff;font-weight:700;font-size:.9rem;transition:.2s}
.socials a:hover{background:var(--violet);color:#fff;transform:translateY(-2px)}
.contact-form{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px;display:grid;gap:14px}
.contact-form label{font-weight:700;font-size:.9rem;display:grid;gap:6px}
.contact-form input,.contact-form textarea{background:#150a33;border:1px solid var(--line);border-radius:8px;padding:11px 12px;color:#fff;font:inherit}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--mic)}
.hp{position:absolute;left:-9999px}
.form-status{min-height:1.4em;font-weight:700}
.form-status.ok{color:#7dff9c}.form-status.err{color:#ff8a8a}

/* ---------- footer ---------- */
.foot{text-align:center;padding:50px 20px 40px;background:var(--ink);border-top:1px solid var(--line)}
.foot img{width:min(80vw,520px);margin:0 auto 18px;opacity:.9}
.foot p{font-size:.85rem;color:#9d8cc4}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.notes-bg span,.ticker-track,.hero-mascot{animation:none}}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .two-col{grid-template-columns:1fr}
  .hero-mascot{display:none}
  .grid-gallery{grid-template-columns:repeat(2,1fr)}
  .g1,.g3,.g4{grid-column:span 2}.g2{grid-row:span 1}
}
@media (max-width:760px){
  .nav nav{position:fixed;inset:57px 0 auto 0;flex-direction:column;background:rgba(18,8,38,.97);padding:14px;display:none;border-bottom:1px solid var(--line)}
  .nav nav.open{display:flex}
  .burger{display:block}
  .section{padding:60px 16px}
}

/* ---------- timeline ---------- */
.timeline{position:relative;margin-top:44px;padding-left:30px}
.timeline::before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--red),var(--violet))}
.tl-item{position:relative;padding-bottom:52px}
.tl-item::before{content:"";position:absolute;left:-28px;top:8px;width:14px;height:14px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(255,43,43,.22)}
.tl-year{font-family:var(--display);font-size:1.7rem;color:var(--orange);letter-spacing:1px}
.tl-item h3{font-family:var(--display);font-size:1.3rem;color:var(--cream);margin:2px 0 6px}
.tl-item p{max-width:660px;color:#cfc3ea}
.tl-photo{margin:16px 0;max-width:780px}
.tl-photo img{width:100%;border-radius:12px;box-shadow:0 14px 36px rgba(0,0,0,.5)}
.tl-photo figcaption{font-family:var(--script);font-size:1.15rem;color:#b9a6e8;margin-top:10px}
@media(max-width:720px){.timeline{padding-left:22px}.tl-item::before{left:-20px}.tl-year{font-size:1.4rem}}
