/* pages.css — hero video, campaign videos, banners, prose pages, studio */

/* ===== HERO VIDEO (full-screen, real FW25 video) ===== */
.hero{position:relative;display:flex;align-items:center;justify-content:center;
  height:calc(100vh - var(--announce-h));min-height:600px;overflow:hidden;background:#0c0c0c;cursor:pointer}
.hero .hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .hero-logo{position:relative;z-index:3;width:min(62vw,820px);
  filter:brightness(0) invert(1) drop-shadow(0 2px 18px rgba(0,0,0,.4))}
.hero .hero-link{position:absolute;left:var(--gutter);bottom:26px;z-index:3;color:#fff;
  font-size:12px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:2px}
.hero::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.18);z-index:1}
.hero .hero-vid{z-index:0}

/* ===== CAMPAIGN VIDEOS (click-to-play) ===== */
.cvideo{position:relative;aspect-ratio:16/9;max-height:88vh;background:#0c0c0c center/cover no-repeat;
  display:flex;align-items:center;justify-content:center;overflow:hidden;margin:0}
.cvideo::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.28)}
.cvideo .cv-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;background:#000}
/* tall/vertical campaign video (e.g. Burnaboy) — taller box, show whole frame */
.cvideo-tall{aspect-ratio:16/10;max-height:none}
.cvideo-tall .cv-vid{object-fit:contain;background:#0c0c0c}
@media(max-width:760px){.cvideo-tall{aspect-ratio:3/4}}
.cvideo.playing::before{display:none}
.cvideo .cv-play{position:relative;z-index:1;background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.6);
  color:#fff;padding:14px 26px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:.2s}
.cvideo .cv-play:hover{background:rgba(0,0,0,.8)}
.cvideo.playing .cv-play{display:none}
.cvideo .cv-cap{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:40px var(--gutter);
  display:flex;flex-direction:column;gap:14px;align-items:flex-start;color:#fff;
  background:linear-gradient(to top,rgba(0,0,0,.6),transparent)}
.cvideo.playing .cv-cap{display:none}
.cvideo .cv-title{font-size:clamp(18px,2.4vw,28px);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.cvideo .cv-cta{border:1px solid #fff;padding:12px 28px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:.2s}
.cvideo .cv-cta:hover{background:#fff;color:var(--ink)}

/* ===== FW26 announcement band ===== */
.fw26-band{text-align:center;padding:48px var(--gutter);font-size:clamp(15px,2vw,22px);
  letter-spacing:.18em;text-transform:uppercase;font-weight:600}

/* ===== full-width SUPERVILLAINS banner ===== */
.fullbanner{display:flex;align-items:center;justify-content:center;min-height:70vh;
  background:#0c0c0c center/cover no-repeat;position:relative;cursor:pointer}
.fullbanner::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.32)}
.fullbanner .fb-inner{position:relative;z-index:1;text-align:center;color:#fff;display:flex;flex-direction:column;align-items:center;gap:26px}
.fullbanner h2{font-size:clamp(40px,8vw,110px);font-weight:700;letter-spacing:.04em}
.btn.light{border-color:#fff;color:#fff}
.btn.light:hover{background:#fff;color:var(--ink)}

/* ===== PROSE PAGES (about, contact, policies) ===== */
.prose{max-width:760px}
.prose.nomargin{margin:0}
.prose .lead{font-weight:300;font-size:clamp(28px,4vw,48px);line-height:1.1;margin-bottom:30px}
.prose h3{font-weight:500;font-size:22px;margin:34px 0 10px}
.prose p,.prose li{color:#3a3a3a;margin-bottom:14px}
.prose .bullets{margin-left:18px}
.prose .bullets li{list-style:disc}
.prose .muted{color:var(--soft)}
.prose .mail{border-bottom:1px solid currentColor}

/* about page collection CTA cards (matches the real site's two image+shop blocks) */
.about-cta{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:48px;max-width:760px}
.about-card{position:relative;display:block;cursor:pointer;overflow:hidden;background:var(--wash)}
.about-card img{width:100%;height:420px;object-fit:cover;display:block;transition:transform .5s ease}
.about-card:hover img{transform:scale(1.04)}
.about-card-body{position:absolute;left:0;right:0;bottom:0;padding:22px;background:linear-gradient(transparent,rgba(0,0,0,.6));color:#fff}
.about-card-body h3{font-weight:600;font-size:16px;letter-spacing:.06em;margin:0 0 4px;color:#fff}
.about-shop{font-size:13px;opacity:.9}
@media(max-width:640px){.about-cta{grid-template-columns:1fr}.about-card img{height:300px}}

/* contact form */
.cform{display:flex;flex-direction:column;gap:18px;max-width:520px;margin-top:24px}
.cform label{display:flex;flex-direction:column;gap:7px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.cform input,.cform textarea{border:1px solid var(--line2);padding:12px 14px;font-size:14px;color:var(--ink);font-weight:300;resize:vertical}
.cform input:focus,.cform textarea:focus{outline:none;border-color:var(--ink)}
.cform .btn{align-self:flex-start;margin-top:4px;cursor:pointer}
.formnote{font-size:12px;color:var(--soft);margin-top:12px;min-height:1em}

/* ===== STUDIO PAGE ===== */
.studio-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:start}
.studio-card{border:1px solid var(--line);padding:30px}
.studio-card .typ{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}
.studio-card .price{font-size:26px;margin:8px 0 16px}
.studio-card .price .per{font-size:14px;color:var(--soft)}
.studio-card .rate{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line);font-size:14px}
.studio-card .studio-cta{display:block;text-align:center;background:var(--ink);color:#fff;padding:15px;margin-top:20px;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
@media(max-width:760px){.studio-grid{grid-template-columns:1fr;gap:30px}}
