/* ============================================================
   INTERNAL PAGES — project / press-kit / contact
   ============================================================ */

/* page hero (immersive) */
.phero{position:relative;min-height:90vh;display:flex;align-items:flex-end;overflow:hidden;padding-bottom:clamp(40px,7vw,90px)}
.phero image-slot{position:absolute;inset:0;height:100%;z-index:0}
.phero__veil{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(0deg,rgba(9,7,8,.97) 4%,rgba(40,8,10,.5) 40%,rgba(9,9,10,.55) 100%),
  radial-gradient(80% 60% at 70% 10%,rgba(181,18,27,.28),transparent 60%)}
.phero .wrap{position:relative;z-index:2;width:100%}
.phero__type{font-family:var(--f-mono);font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--carmim-hi);margin-bottom:18px;display:flex;align-items:center;gap:12px}
.phero__type::before{content:"";width:30px;height:2px;background:var(--carmim)}
.phero h1{font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:clamp(56px,12vw,170px);line-height:.86;letter-spacing:-.02em}
.phero p{color:var(--paper-2);font-size:clamp(17px,1.8vw,22px);max-width:54ch;margin:22px 0 0}
.phero__meta{display:flex;gap:34px;margin-top:30px;flex-wrap:wrap}
.phero__meta div b{font-family:var(--f-display);font-weight:700;font-size:30px;display:block;line-height:1}
.phero__meta div span{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.pcrumb{position:absolute;top:96px;left:0;right:0;z-index:2}
.pcrumb a{font-family:var(--f-mono);font-size:12px;letter-spacing:.12em;color:var(--paper-2);text-transform:uppercase}
.pcrumb a:hover{color:var(--carmim-hi)}

/* manifesto / prose */
.manifesto{font-family:var(--f-display);font-weight:500;text-transform:uppercase;font-size:clamp(26px,3.6vw,48px);line-height:1.06;letter-spacing:-.01em;max-width:20ch}
.manifesto .em{color:var(--carmim-hi)}
.prose{max-width:64ch;color:var(--paper-2);font-size:17px;line-height:1.75}
.prose p{margin:0 0 18px}
.prose p:first-letter{}

/* setlist / technical list */
.setlist{border-top:1px solid var(--line-2)}
.setlist .row{display:grid;grid-template-columns:46px 1fr auto;gap:20px;align-items:center;padding:16px 6px;border-bottom:1px solid var(--line);transition:background .2s,padding .2s}
.setlist .row:hover{background:rgba(236,231,222,.03);padding-left:16px}
.setlist .n{font-family:var(--f-mono);font-size:13px;color:var(--carmim-hi)}
.setlist .t{font-family:var(--f-display);text-transform:uppercase;font-size:20px;font-weight:500;letter-spacing:-.005em}
.setlist .x{font-family:var(--f-mono);font-size:12px;color:var(--muted);letter-spacing:.08em}

/* gallery */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:12px}
.gallery .g{position:relative;border-radius:6px;overflow:hidden;border:1px solid var(--line)}
.gallery .g image-slot{position:absolute;inset:0;height:100%;transition:transform .6s}
.gallery .g:hover image-slot{transform:scale(1.06)}
.gallery .g.tall{grid-row:span 2}.gallery .g.wide{grid-column:span 2}

/* number band */
.statband{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-block:1px solid var(--line)}
.statband > div{background:var(--ink);padding:34px 20px;text-align:center}
.statband b{font-family:var(--f-display);font-weight:700;font-size:clamp(40px,5vw,64px);line-height:1;display:block;color:var(--paper)}
.statband b .red{color:var(--carmim-hi)}
.statband span{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:10px;display:block}

/* ---- press-kit road-case ---- */
.rc{position:relative;border:1px solid var(--line-2);border-radius:10px;overflow:hidden;
  background:repeating-linear-gradient(45deg,rgba(0,0,0,.16) 0 14px,transparent 14px 28px),linear-gradient(160deg,#1b1b1e,#101012)}
.rc__corner{position:absolute;width:30px;height:30px;border:2px solid rgba(236,231,222,.16);z-index:2}
.rc__corner.tl{top:12px;left:12px;border-right:0;border-bottom:0}
.rc__corner.tr{top:12px;right:12px;border-left:0;border-bottom:0}
.rc__corner.bl{bottom:12px;left:12px;border-right:0;border-top:0}
.rc__corner.br{bottom:12px;right:12px;border-left:0;border-top:0}
.label{display:inline-flex;align-items:center;gap:10px;font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--paper-2);background:rgba(0,0,0,.4);border:1px dashed var(--line-2);padding:8px 13px;border-radius:4px}
.label .sq{width:9px;height:9px;background:var(--carmim)}

.pk-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.pk-facts > div{background:var(--surface);padding:24px}
.pk-facts dt{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.pk-facts dd{margin:0;font-family:var(--f-display);text-transform:uppercase;font-size:22px;font-weight:600;letter-spacing:-.01em}

.dl-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border:1px solid var(--line);border-radius:8px;background:var(--surface);transition:border-color .25s,transform .25s;margin-bottom:10px}
.dl-row:hover{border-color:var(--line-2);transform:translateX(4px)}
.dl-row__l{display:flex;align-items:center;gap:16px;min-width:0}
.dl-row__ico{width:42px;height:42px;flex:0 0 auto;border-radius:8px;background:rgba(181,18,27,.14);color:var(--carmim-hi);display:flex;align-items:center;justify-content:center}
.dl-row__ico svg{width:20px;height:20px}
.dl-row b{font-family:var(--f-display);text-transform:uppercase;font-size:18px;font-weight:600;display:block}
.dl-row span{font-family:var(--f-mono);font-size:11px;color:var(--muted);letter-spacing:.08em}
.dl-btn{font-family:var(--f-display);text-transform:uppercase;font-size:13px;letter-spacing:.05em;color:var(--paper);border:1px solid var(--line-2);padding:10px 18px;border-radius:5px;white-space:nowrap;display:inline-flex;gap:9px;align-items:center;transition:all .25s}
.dl-row:hover .dl-btn{background:var(--carmim);border-color:var(--carmim);color:#fff}

/* ---- contact form ---- */
.form{display:flex;flex-direction:column;gap:18px}
.field{display:flex;flex-direction:column;gap:8px}
.field label{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.field input,.field select,.field textarea{
  background:var(--surface);border:1px solid var(--line-2);border-radius:6px;color:var(--paper);
  font-family:var(--f-body);font-size:16px;padding:14px 16px;transition:border-color .2s,box-shadow .2s;width:100%}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--carmim);box-shadow:0 0 0 3px rgba(181,18,27,.18)}
.field textarea{resize:vertical;min-height:120px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.seg-fmt{display:flex;gap:8px;flex-wrap:wrap}
.seg-fmt button{flex:1;min-width:120px;background:var(--surface);border:1px solid var(--line-2);border-radius:6px;color:var(--paper-2);
  font-family:var(--f-display);text-transform:uppercase;font-size:13px;letter-spacing:.03em;padding:12px;transition:all .2s}
.seg-fmt button:hover{color:var(--paper)}
.seg-fmt button.active{color:#fff;border-color:var(--carmim);background:linear-gradient(180deg,rgba(181,18,27,.3),rgba(181,18,27,.1))}

.contact-big{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);align-items:start}
.contact-direct{display:flex;flex-direction:column;gap:14px;margin-top:30px}
.cd{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid var(--line);border-radius:8px;transition:border-color .25s,transform .25s}
.cd:hover{border-color:var(--line-2);transform:translateX(4px)}
.cd__ico{width:46px;height:46px;flex:0 0 auto;border-radius:10px;background:rgba(181,18,27,.14);color:var(--carmim-hi);display:flex;align-items:center;justify-content:center}
.cd__ico svg{width:22px;height:22px}
.cd b{font-family:var(--f-display);text-transform:uppercase;font-size:18px;display:block;line-height:1.1}
.cd span{font-family:var(--f-mono);font-size:13px;color:var(--muted)}

@media (max-width:980px){
  .gallery{grid-template-columns:repeat(2,1fr)}
  .statband{grid-template-columns:repeat(2,1fr)}
  .pk-facts{grid-template-columns:1fr}
  .contact-big{grid-template-columns:1fr;gap:48px}
}
@media (max-width:560px){
  .field-row{grid-template-columns:1fr}
  .gallery{grid-auto-rows:150px}
  .dl-row{flex-direction:column;align-items:flex-start;gap:14px}
}
