/* CARTAPESTA FINAL FIX — patch conservativa sopra la build originale */
:root{
  --cobalt:#8f4a37 !important; /* via blu elettrico */
  --ink:#0b0a08 !important;
  --bone:#f7efe4 !important;
  --paper:#efe3d0 !important;
  --paper-dark:#15100d !important;
  --persimmon:#d84b36 !important;
  --rule-dark:rgba(247,239,228,.22) !important;
  --rule:rgba(13,16,21,.18) !important;
}
html{scroll-padding-top:96px;}
body{background:#0b0a08 !important;}

/* HOME: non deve sparire né menu né titolo */
header[data-testid="site-header"]{
  z-index:9999 !important;
  background:linear-gradient(180deg,rgba(7,5,4,.92),rgba(7,5,4,.50) 70%,rgba(7,5,4,0)) !important;
}
header[data-testid="site-header"].glass-header{
  background:rgba(247,239,228,.94) !important;
  backdrop-filter:saturate(125%) blur(12px) !important;
  -webkit-backdrop-filter:saturate(125%) blur(12px) !important;
}
header[data-testid="site-header"] nav{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  gap:1.45rem !important;
  flex-wrap:nowrap !important;
}
header[data-testid="site-header"] .label-overline{
  font-size:.78rem !important;
  line-height:1.1 !important;
  letter-spacing:.14em !important;
  font-weight:800 !important;
  text-shadow:0 1px 10px rgba(0,0,0,.55);
}
header[data-testid="site-header"].glass-header .label-overline,
header[data-testid="site-header"].glass-header a,
header[data-testid="site-header"].glass-header button{
  text-shadow:none !important;
}

section[data-testid="hero-section"]{background:#0b0a08 !important;}
section[data-testid="hero-section"] img[src*="hero.jpg"]{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:saturate(.98) contrast(1.04) brightness(.86) !important;
}
.hero-gradient{
  background:linear-gradient(90deg,rgba(8,6,5,.96) 0%,rgba(8,6,5,.76) 36%,rgba(8,6,5,.32) 67%,rgba(8,6,5,.18) 100%),linear-gradient(180deg,rgba(8,6,5,.50),rgba(8,6,5,.18) 35%,rgba(8,6,5,.94) 100%) !important;
}
section[data-testid="hero-section"] > div[aria-hidden="true"]{display:none !important;}
section[data-testid="hero-section"] h1,
section[data-testid="hero-section"] .font-serif-display{
  color:var(--bone) !important;
  text-shadow:0 3px 22px rgba(0,0,0,.72) !important;
}
section[data-testid="hero-section"] h1{max-width:850px !important;}
section[data-testid="hero-section"] p,
section[data-testid="hero-section"] div{color:inherit;}
section[data-testid="hero-section"] [data-testid="hero-trailer-btn"],
.btn-solid{
  color:#fff !important;
  background:var(--persimmon) !important;
  border-color:var(--persimmon) !important;
  opacity:1 !important;
}
section[data-testid="hero-section"] [data-testid="hero-trailer-btn"] *{color:#fff !important;}
section[data-testid="hero-section"] [data-testid="hero-story-btn"]{
  color:#fff !important;
  border-color:rgba(255,255,255,.72) !important;
  background:rgba(0,0,0,.18) !important;
}

/* BARRA PREMI: leggibile, non grigia/schiacciata */
.award-strip{
  background:#0b0a08 !important;
  border-color:rgba(247,239,228,.18) !important;
  padding-top:1rem !important;
  padding-bottom:1rem !important;
  min-height:58px !important;
}
.award-strip .marquee-item{gap:1rem !important;padding:0 2.25rem !important;align-items:center !important;}
.award-strip .label-overline,
.award-strip span{
  color:var(--bone) !important;
  opacity:1 !important;
  font-size:.82rem !important;
  letter-spacing:.12em !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}
.award-strip svg{color:var(--persimmon) !important;opacity:1 !important;}
.award-strip .opacity-60{opacity:1 !important;}

/* SPAZI: via buchi enormi tra sezioni */
section[id]:not([id="top"]){
  padding-top:5.2rem !important;
  padding-bottom:5.2rem !important;
}
@media (min-width:768px){
  section[id]:not([id="top"]){padding-top:6.4rem !important;padding-bottom:6.4rem !important;}
}
section[id] .mb-16{margin-bottom:2.8rem !important;}
section[id] .mb-14{margin-bottom:2.4rem !important;}
section[id] .mt-10{margin-top:2rem !important;}
section[id] .pt-10{padding-top:2rem !important;}
section[id] .space-y-12 > :not([hidden]) ~ :not([hidden]){margin-top:2.5rem !important;}

/* CAPITOLI 01/02/03 ecc.: più grandi e impaginati bene */
section[id]:not([id="top"]) .label-overline:first-child,
section[id]:not([id="top"]) div[class*="label-overline"]{
  font-size:.98rem !important;
  line-height:1.25 !important;
  letter-spacing:.14em !important;
  font-weight:800 !important;
}
section[id] .num-deco{
  font-size:clamp(4.6rem,8vw,8.5rem) !important;
  line-height:.82 !important;
  opacity:.18 !important;
  margin-top:.5rem !important;
}
section[id] h2{
  margin-top:1rem !important;
}

/* NOTE DI REGIA: mai nero su nero */
section[data-testid="authors-section"]{
  background:linear-gradient(180deg,#17110d,#100c09) !important;
  color:var(--bone) !important;
}
section[data-testid="authors-section"] h2,
section[data-testid="authors-section"] p,
section[data-testid="authors-section"] li,
section[data-testid="authors-section"] .font-serif-display{
  color:var(--bone) !important;
}
section[data-testid="authors-section"] [data-testid^="director-statement-"]{
  color:#fff7ec !important;
  background:rgba(255,255,255,.055) !important;
  padding:1rem 1.25rem 1rem 1.4rem !important;
  border-left:4px solid var(--persimmon) !important;
  border-radius:0 12px 12px 0 !important;
  font-size:clamp(1.35rem,2vw,1.75rem) !important;
  line-height:1.25 !important;
}
section[data-testid="authors-section"] .bg-ink{background:#0b0a08 !important;color:var(--bone) !important;}

/* BACKSTAGE aggiunto via JS */
#backstage.cartapesta-backstage{
  background:#efe3d0 !important;
  color:#0b0a08 !important;
  padding:5.6rem 1.5rem !important;
}
.cartapesta-backstage__inner{max-width:1400px;margin:0 auto;}
.cartapesta-backstage__label{color:var(--persimmon);font-size:.98rem;line-height:1.25;letter-spacing:.14em;font-weight:800;text-transform:uppercase;}
.cartapesta-backstage h2{font-family:"Cormorant Garamond",serif;font-size:clamp(2.8rem,6vw,5.6rem);line-height:1.02;margin:1rem 0 2rem;letter-spacing:-.025em;}
.cartapesta-backstage__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;}
.cartapesta-backstage__grid figure{margin:0;overflow:hidden;background:#0b0a08;min-height:220px;}
.cartapesta-backstage__grid figure:nth-child(1){grid-column:span 6;aspect-ratio:16/10;}
.cartapesta-backstage__grid figure:nth-child(2){grid-column:span 3;aspect-ratio:4/5;}
.cartapesta-backstage__grid figure:nth-child(3){grid-column:span 3;aspect-ratio:4/5;}
.cartapesta-backstage__grid figure:nth-child(4){grid-column:span 4;aspect-ratio:4/3;}
.cartapesta-backstage__grid figure:nth-child(5){grid-column:span 4;aspect-ratio:4/3;}
.cartapesta-backstage__grid figure:nth-child(6){grid-column:span 4;aspect-ratio:4/3;}
.cartapesta-backstage__grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease;}
.cartapesta-backstage__grid img:hover{transform:scale(1.04);}
@media (max-width:900px){.cartapesta-backstage__grid{grid-template-columns:1fr}.cartapesta-backstage__grid figure{grid-column:1/-1 !important;aspect-ratio:16/11 !important}}

/* CONTATTI/social aggiunti: coerenti e leggibili */
.cartapesta-extra-socials{margin-top:1rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;}
.cartapesta-extra-socials a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:.8rem 1rem;border:1px solid rgba(13,16,21,.18);background:#f7efe4;color:#0b0a08 !important;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:800;}
.cartapesta-extra-socials a:hover{background:#0b0a08;color:#f7efe4 !important;}
@media (max-width:700px){.cartapesta-extra-socials{grid-template-columns:1fr}}

@media (max-width:1023px){
  header[data-testid="site-header"] nav{display:none !important;}
  header[data-testid="site-header"]{background:rgba(7,5,4,.88) !important;}
}

/* FIX MIRATO: trailer/pressbook sotto sinossi, social puliti, backstage con video */
.cartapesta-hide-top-trailer,
.cartapesta-hero-trailer-hidden{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.cartapesta-story-btn-main{
  display:inline-flex !important;
}
.cartapesta-media-downloads{
  grid-column:1 / -1 !important;
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:1rem !important;
  margin-top:2.4rem !important;
}
.cartapesta-media-card{
  background:rgba(247,239,228,.075) !important;
  border:1px solid rgba(247,239,228,.22) !important;
  padding:1.35rem !important;
  min-height:160px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
}
#story .cartapesta-media-card h3{
  margin:.55rem 0 1.15rem !important;
  color:var(--bone) !important;
  font-family:"Cormorant Garamond",serif !important;
  font-size:clamp(1.8rem,3vw,2.8rem) !important;
  line-height:1 !important;
  letter-spacing:-.02em !important;
}
.cartapesta-media-kicker{
  color:var(--persimmon) !important;
  text-transform:uppercase !important;
  letter-spacing:.14em !important;
  font-size:.82rem !important;
  font-weight:800 !important;
}
.cartapesta-media-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:48px !important;
  padding:.85rem 1.15rem !important;
  background:var(--persimmon) !important;
  color:#fff !important;
  border:1px solid var(--persimmon) !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  font-size:.8rem !important;
  font-weight:900 !important;
  cursor:pointer !important;
}
.cartapesta-media-button:hover{filter:brightness(1.08) !important;}

#backstage.cartapesta-backstage{
  background:#120d0b !important;
  color:var(--bone) !important;
  padding:5.6rem 1.5rem !important;
}
.cartapesta-backstage__video{
  width:100% !important;
  margin:0 0 1.25rem !important;
  background:#050403 !important;
  border:1px solid rgba(247,239,228,.18) !important;
  position:relative !important;
}
.cartapesta-backstage__video video{
  display:block !important;
  width:100% !important;
  aspect-ratio:16/9 !important;
  height:auto !important;
  max-height:70vh !important;
  object-fit:cover !important;
  background:#050403 !important;
}
.cartapesta-video-note{
  position:absolute !important;
  left:1rem !important;
  bottom:1rem !important;
  background:rgba(0,0,0,.62) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.22) !important;
  padding:.45rem .7rem !important;
  text-transform:uppercase !important;
  letter-spacing:.14em !important;
  font-size:.72rem !important;
  font-weight:800 !important;
  pointer-events:none !important;
}
.cartapesta-backstage h2{color:var(--bone) !important;}
.cartapesta-backstage__grid figure{border:1px solid rgba(247,239,228,.16) !important;}

.cartapesta-extra-socials{
  grid-column:1 / -1 !important;
  width:100% !important;
  margin-top:2rem !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:1rem !important;
}
.cartapesta-social-group{
  background:#fff7ec !important;
  color:#0b0a08 !important;
  border:1px solid rgba(13,16,21,.16) !important;
  padding:1.2rem !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:.7rem !important;
}
.cartapesta-social-group strong{
  width:100% !important;
  display:block !important;
  color:var(--persimmon) !important;
  text-transform:uppercase !important;
  letter-spacing:.14em !important;
  font-size:.82rem !important;
  font-weight:900 !important;
  margin-bottom:.15rem !important;
}
.cartapesta-social-group a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px !important;
  padding:.7rem .9rem !important;
  background:#0b0a08 !important;
  color:#fff7ec !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  letter-spacing:.1em !important;
  font-size:.76rem !important;
  font-weight:850 !important;
  border:1px solid #0b0a08 !important;
}
.cartapesta-social-group a:hover{background:var(--persimmon) !important;border-color:var(--persimmon) !important;}
@media (max-width:900px){
  .cartapesta-media-downloads,
  .cartapesta-extra-socials{grid-template-columns:1fr !important;}
  .cartapesta-media-card{min-height:145px !important;}
  #backstage.cartapesta-backstage{padding:4.6rem 1rem !important;}
}
@media (max-width:620px){
  .cartapesta-media-downloads{margin-top:1.6rem !important;gap:.8rem !important;}
  .cartapesta-media-card{padding:1rem !important;min-height:132px !important;}
  #story .cartapesta-media-card h3{font-size:2rem !important;}
  .cartapesta-media-button{width:100% !important;}
  .cartapesta-social-group{padding:1rem !important;display:grid !important;grid-template-columns:1fr !important;}
  .cartapesta-social-group a{width:100% !important;}
  .cartapesta-video-note{left:.7rem !important;bottom:.7rem !important;font-size:.65rem !important;}
}
/* trailer solo sotto sinossi: il bottone contatti resta nel DOM per aprire il modal ma non si vede */
[data-testid="contact-trailer-btn"]{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
