/* RESPONSIVE HARD FIX - added for portable static hosting */
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}body,#root{width:100%;min-width:0;overflow-x:hidden}img,video,iframe,svg{max-width:100%}section,header,footer,main,div{min-width:0}.no-mobile-scroll{overflow:hidden!important}
[data-testid="site-header"]{isolation:isolate}[data-testid="site-header"] a,[data-testid="site-header"] button{touch-action:manipulation}[data-testid="trailer-modal"]{z-index:9999!important}[data-testid="trailer-modal"]>button{z-index:10000!important;width:48px!important;height:48px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:rgba(0,0,0,.45)!important;border-radius:999px!important}
[data-testid="trailer-modal"] video,[data-testid="trailer-modal"] iframe{width:100%!important;height:100%!important;object-fit:contain!important}
.mobile-nav-toggle{display:flex !important;align-items:center;justify-content:center;position:fixed;right:14px;top:14px;z-index:99999 !important;width:48px;height:48px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font:700 22px/1 system-ui,-apple-system,Segoe UI,sans-serif;backdrop-filter:blur(12px);box-shadow:0 12px 30px rgba(0,0,0,.25);cursor:pointer}.mobile-nav-panel{display:none;position:fixed;inset:0;z-index:99998;background:rgba(10,10,10,.96);backdrop-filter:blur(14px);padding:90px 24px 32px;overflow:auto}.mobile-nav-panel a,.mobile-nav-panel>button{display:block;width:100%;max-width:520px;margin:0 auto 10px;padding:15px 16px;border:1px solid rgba(255,255,255,.18);border-radius:16px;color:#fff!important;text-align:left;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font:700 13px/1.25 system-ui,-apple-system,Segoe UI,sans-serif;background:rgba(255,255,255,.06)}body.mobile-menu-open .mobile-nav-panel{display:block}body.mobile-menu-open .mobile-nav-toggle{background:#fff;color:#000;border-color:#fff}.mobile-nav-panel__trailer{background:#d7372f !important;border-color:#d7372f !important;text-align:center !important;margin-top:18px !important}.mobile-nav-panel__lang{display:flex !important;justify-content:center !important;gap:10px !important;max-width:520px !important;margin:14px auto 0 !important}.mobile-nav-panel__langbtn{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:64px !important;min-width:64px !important;padding:12px 14px !important;border:1px solid rgba(255,255,255,.25) !important;border-radius:999px !important;background:rgba(255,255,255,.04) !important;color:#fff !important;font:800 14px/1 system-ui,-apple-system,Segoe UI,sans-serif !important;letter-spacing:.14em !important;text-transform:uppercase !important;cursor:pointer !important}.mobile-nav-panel__langbtn.is-active{background:#fff !important;color:#000 !important;border-color:#fff !important}
@media (min-width:1181px){
  .mobile-nav-toggle{display:none !important}
}
@media (max-width:1180px){
  [data-testid="site-header"] nav{display:none!important}
  [data-testid="site-header"]{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:9000!important;background:linear-gradient(to bottom,rgba(0,0,0,.68),rgba(0,0,0,.18))!important;backdrop-filter:blur(8px)!important;padding:0!important}
  [data-testid="site-header"]>div{padding:10px 68px 10px 16px!important;gap:10px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;width:100%!important;max-width:none!important}
  [data-testid="site-header"] [data-testid="brand-link"]{min-width:0!important;max-width:54vw!important;overflow:hidden!important;white-space:nowrap!important}
  [data-testid="site-header"] [data-testid="brand-link"] span:first-child{font-size:clamp(1.35rem,6vw,2rem)!important;line-height:1!important;overflow:hidden!important;text-overflow:ellipsis!important;color:#fff!important}
  [data-testid="header-trailer-btn"]{padding:10px 12px!important;font-size:11px!important;white-space:nowrap!important;max-width:37vw!important;overflow:hidden!important;text-overflow:ellipsis!important}
  [data-testid="site-header"] .label-overline{font-size:10px!important;letter-spacing:.11em!important}
}
@media (max-width:900px){
  section{scroll-margin-top:76px!important}.grid{grid-template-columns:1fr!important}.grid>*{grid-column:1/-1!important}.flex{min-width:0}.flex-wrap{row-gap:12px!important}
  [data-testid="hero-section"]{min-height:auto!important;overflow:hidden!important}
  [data-testid="hero-section"] .min-h-\[100svh\]{min-height:auto!important}
  [data-testid="hero-section"] .pt-32,[data-testid="hero-section"] .pt-40,[data-testid="hero-section"] .pt-48,[data-testid="hero-section"] .pt-\[40vh\]{padding-top:118px!important}
  [data-testid="hero-section"] .pb-24{padding-bottom:48px!important}
  [data-testid="hero-section"] .px-6, section .px-6, footer .px-6{padding-left:18px!important;padding-right:18px!important}
  h1{overflow-wrap:anywhere!important;word-break:normal!important}h1 span{max-width:100%!important}
  h1 .text-\[clamp\(3rem\,9\.5vw\,10rem\)\],h1 .text-\[clamp\(4rem\,12vw\,11rem\)\]{font-size:clamp(3.2rem,18vw,5.4rem)!important;line-height:.92!important}
  h1 .text-\[clamp\(1\.4rem\,3\.2vw\,3rem\)\]{font-size:clamp(1.25rem,7vw,2.05rem)!important;line-height:1.05!important}
  p,.font-sans-body{font-size:clamp(1rem,4.2vw,1.12rem)!important;line-height:1.55!important}.text-xl,.md\:text-xl,.text-2xl,.md\:text-2xl,.md\:text-3xl{font-size:clamp(1.1rem,5.4vw,1.45rem)!important;line-height:1.25!important}
  .max-w-\[1400px\],.max-w-\[1500px\],.max-w-5xl,.max-w-6xl,.max-w-7xl{max-width:100%!important}.gap-8{gap:22px!important}.gap-10,.gap-12,.gap-16{gap:28px!important}
  .py-24{padding-top:56px!important;padding-bottom:56px!important}.py-32{padding-top:64px!important;padding-bottom:64px!important}.my-24{margin-top:56px!important;margin-bottom:56px!important}.mt-24{margin-top:56px!important}.mb-24{margin-bottom:56px!important}
  .px-7{padding-left:18px!important;padding-right:18px!important}.py-4{padding-top:13px!important;padding-bottom:13px!important}button,a{max-width:100%}.inline-flex{max-width:100%;justify-content:center}.btn-solid,.btn-rust,.btn-ghost{width:auto;min-height:48px}.aspect-video{aspect-ratio:16/9!important}.aspect-\[3\/4\],.aspect-\[4\/5\],.aspect-\[5\/6\]{aspect-ratio:4/5!important}
  .absolute.-top-4,.absolute.-left-4,.absolute.bottom-3,.absolute.right-3{max-width:calc(100% - 24px)!important}.marquee-item{white-space:normal!important;margin-right:24px!important}.award-strip{overflow:hidden!important}
}
@media (max-width:520px){
  .mobile-nav-toggle{right:10px;top:10px;width:44px;height:44px}
  [data-testid="site-header"]>div{padding:9px 62px 9px 12px!important}[data-testid="site-header"] [data-testid="brand-link"]{max-width:48vw!important;gap:6px!important}[data-testid="header-trailer-btn"]{max-width:35vw!important;padding:9px 10px!important}
  [data-testid="hero-section"] .pt-32,[data-testid="hero-section"] .pt-40,[data-testid="hero-section"] .pt-48{padding-top:104px!important}
  h1 .text-\[clamp\(3rem\,9\.5vw\,10rem\)\],h1 .text-\[clamp\(4rem\,12vw\,11rem\)\]{font-size:clamp(2.75rem,17vw,4.4rem)!important}.font-serif-display.text-3xl,.font-serif-display.md\:text-4xl{font-size:1.75rem!important}
  [data-testid="hero-section"] .mt-8{margin-top:22px!important}[data-testid="hero-section"] .mt-10{margin-top:28px!important}.grid-cols-2{grid-template-columns:1fr 1fr!important}.sm\:grid-cols-4{grid-template-columns:1fr 1fr!important}.border-l-2{padding-left:16px!important}
  [data-testid="trailer-modal"]{padding:12px!important;align-items:center!important}[data-testid="trailer-modal"]>button{top:12px!important;right:12px!important}.mobile-nav-panel{padding-left:16px;padding-right:16px}
}

/* FINAL BADGE FIX: keep all red photo labels INSIDE their image boxes */
.img-hover {
  overflow: hidden !important;
}
.img-hover > .absolute.label-overline,
.img-hover > div.absolute.label-overline,
.img-hover > [class*="absolute"][class*="label-overline"] {
  position: absolute !important;
  left: 12px !important;
  right: auto !important;
  bottom: 12px !important;
  top: auto !important;
  transform: none !important;
  margin: 0 !important;
  max-width: calc(100% - 24px) !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  z-index: 5 !important;
}
@media (max-width: 700px) {
  .img-hover > .absolute.label-overline,
  .img-hover > div.absolute.label-overline,
  .img-hover > [class*="absolute"][class*="label-overline"] {
    left: 10px !important;
    bottom: 10px !important;
    max-width: calc(100% - 20px) !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    padding: 6px 8px !important;
  }
}
/* FIX LOGO HEADER: Cartapesta + IL FILM non devono accavallarsi */
[data-testid="brand-link"] {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
  min-width: 190px !important;
  overflow: visible !important;
}

[data-testid="brand-link"] span {
  display: inline-block !important;
  white-space: nowrap !important;
  overflow: visible !important;
}

[data-testid="brand-link"] span:first-child {
  font-size: 24px !important;
  line-height: 1 !important;
}

[data-testid="brand-link"] span:nth-child(2) {
  font-size: 10px !important;
  letter-spacing: 0.12em !important;
  margin-left: 2px !important;
}
/* TOGLIE SOLO L’IMMAGINE HERO A DESTRA */
[data-testid="hero-section"] [style*="background"] {
  background: none !important;
}
