
  :root{--bg:#F2F1EC;--tx:#141414;--muted:#6E6E66;--line:#141414;--soft:#D6D4CC;--maxw:1360px;--pad:clamp(1.6rem,4vw,3rem)}
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth;background:var(--bg);transition:background-color .4s ease}
  body{background:var(--bg);color:var(--tx);font-family:"Helvetica Now Display","Helvetica Now Text","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;transition:background-color .4s ease,color .4s ease}
  a{color:inherit;text-decoration:none}
  [hidden]{display:none!important}
  [id]{scroll-margin-top:90px}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}
  .lbl{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}
  h1,h2,h3{font-weight:700;letter-spacing:-.03em;line-height:1}
  .sec{padding:clamp(2.6rem,6vw,5rem) 0}
  .im,.pim img,.det-img,.gim,.hero-img,.divimg,.bandim,.studio-img{background-size:cover;background-position:center}

  header{position:sticky;top:0;z-index:60;background:var(--bg);border-bottom:1px solid var(--line)}
  .nav{position:relative;display:flex;justify-content:space-between;align-items:center;height:64px}
  .brand{display:flex;align-items:center;gap:.55em;font-weight:700;font-size:15px;text-transform:uppercase;min-height:44px;padding-right:.4rem}
  .brand .mark{width:30px;height:30px;flex:0 0 auto}
  .brand .mark img{width:100%;height:100%;object-fit:contain;display:block}
  .nav-links{position:absolute;left:50%;transform:translateX(-50%);display:block}
  .nav-links .menu-list{display:flex;align-items:center;gap:1.7rem;list-style:none;margin:0;padding:0}
  .nav-links .menu-list li{list-style:none;margin:0;padding:0}
  .nav-links .menu-list li::marker{content:""}
  .nav-links a{font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;min-height:44px}
  .nav-links a:hover,.nav-links a.active{color:var(--tx)}
  .burger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:none;border:0;cursor:pointer;width:44px;height:44px;margin-right:-10px}
  .burger span{width:22px;height:1.5px;background:var(--tx)}

  /* HOME */
  .hero{padding-top:clamp(2.2rem,5vw,4rem)}
  .hero-row{display:grid;grid-template-columns:1.5fr 1fr;gap:2.2rem;align-items:end}
  .hero-row>*{min-width:0}
  .hero h1{font-size:clamp(1.5rem,5.6vw,4.8rem);letter-spacing:-.04em;line-height:1.08}
  .hline{display:block;white-space:nowrap}
  .roll{display:inline-grid;vertical-align:baseline;perspective:600px}
  .roll i{grid-area:1/1;font-style:normal;display:inline-block;transform-origin:50% 50% -.55em;backface-visibility:hidden}
  .roll i:nth-child(1){animation:rollA 4.5s cubic-bezier(.6,0,.2,1) infinite}
  .roll i:nth-child(2){animation:rollB 4.5s cubic-bezier(.6,0,.2,1) infinite}
  @keyframes rollA{0%,40%{transform:rotateX(0);opacity:1}50%,90%{transform:rotateX(-90deg);opacity:0}100%{transform:rotateX(0);opacity:1}}
  @keyframes rollB{0%,40%{transform:rotateX(90deg);opacity:0}50%,90%{transform:rotateX(0);opacity:1}100%{transform:rotateX(90deg);opacity:0}}
  @media(prefers-reduced-motion:reduce){.roll i{animation:none}.roll i:nth-child(2){opacity:0}}
  .hero-side{color:var(--muted);font-size:15.5px;line-height:1.6;max-width:46ch}
  .hero-side b{color:var(--tx);font-weight:700}
  .hero-img{margin-top:clamp(2rem,4vw,3rem);aspect-ratio:24/9}
  .stats-wrap{margin-top:clamp(2.4rem,5vw,4rem)}
  .stats-wrap .lbl{display:block;margin-bottom:1rem}
  .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.7rem,2vw,1.5rem);border-top:1px solid var(--line);padding-top:1.6rem}
  .stat b{display:block;font-weight:700;letter-spacing:-.045em;font-size:clamp(1.35rem,4.4vw,3.8rem);line-height:.9;white-space:nowrap}
  .stat span{display:block;font-size:clamp(11px,1vw,12px);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-top:.5rem;line-height:1.3}

  .shead{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:1rem;margin-bottom:1rem;gap:1rem}
  .shead h2{font-size:clamp(1.6rem,3vw,2.4rem)}
  .shead a{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);white-space:nowrap;display:inline-flex;align-items:center;min-height:44px}

  .divs{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.6rem,3vw,3rem)}
  .divi .kick{font-weight:700;font-size:15px;margin-bottom:.9rem}
  .divi .divimg{position:relative;aspect-ratio:4/3;display:flex;align-items:flex-end}
  .divi .divimg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 40%,rgba(0,0,0,.82));z-index:1}
  .divover{position:relative;z-index:2;width:100%;padding:clamp(1rem,2.2vw,1.8rem);display:flex;gap:1rem;align-items:flex-end;justify-content:space-between;flex-wrap:wrap}
  .divover h2{color:#fff;font-size:clamp(1.15rem,1.8vw,1.6rem);letter-spacing:-.025em;line-height:1.1;max-width:26ch;flex:1 1 60%}
  .divover .more{color:#fff;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.7);padding-bottom:6px;white-space:nowrap;display:inline-flex;align-items:flex-end;min-height:40px}

  .studio-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,4vw,4rem);align-items:start}
  h2.key-h2{font-size:clamp(1.8rem,3.4vw,2.8rem);line-height:1.02;margin:.7rem 0 clamp(1.8rem,3.4vw,2.8rem);max-width:16ch}
  .studio-grid .lead{font-size:16.5px;max-width:46ch;margin-bottom:1.1rem}
  .studio-grid .body{color:var(--muted);max-width:48ch;font-size:14.5px;margin-bottom:.9rem}
  .body.sep{margin-top:1.9rem;padding-top:1.3rem;border-top:1px solid var(--soft)}
  .studio-img{aspect-ratio:16/10;margin-top:1.8rem}
  .redjoint-page-intro .redjoint-lead{max-width:58ch;margin-top:1.1rem;color:var(--muted);font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.55}
  .redjoint-builder-hero .redjoint-hero-media{margin-top:clamp(2rem,4vw,3rem);width:100%;aspect-ratio:24/9;overflow:hidden}
  .redjoint-builder-hero .redjoint-hero-media img{display:block;width:100%;height:100%;object-fit:cover}
  .redjoint-builder-hero .stats .stat h3{display:block;font-weight:700;letter-spacing:-.045em;font-size:clamp(1.35rem,4.4vw,3.8rem);line-height:.9;white-space:nowrap}
  .redjoint-builder-hero .stats .stat p{display:block;font-size:clamp(11px,1vw,12px);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-top:.5rem;line-height:1.3}
  .redjoint-project-cover{width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--soft)}
  .redjoint-project-cover img{display:block;width:100%;height:100%;object-fit:cover}
  .redjoint-gallery{display:flex!important;flex-wrap:nowrap!important;gap:12px!important;overflow-x:auto;padding-bottom:.7rem;scroll-snap-type:x mandatory}
  .redjoint-gallery>.wp-block-image{flex:0 0 min(78%,460px)!important;width:min(78%,460px)!important;aspect-ratio:16/10;scroll-snap-align:start}
  .redjoint-gallery>.wp-block-image img{width:100%!important;height:100%!important;object-fit:cover}
  .wp-block-button.is-style-redjoint-link .wp-block-button__link{display:inline-flex;align-items:center;gap:.45em;min-height:40px;padding:0;background:transparent;color:var(--tx);border:0;border-bottom:1px solid currentColor;border-radius:0;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
  .wp-block-button.is-style-redjoint-link .wp-block-button__link::after{content:"\2192"}
  .caps-label{display:block;margin-bottom:.4rem}
  .cap2{border-top:1px solid var(--line);padding-top:1rem;margin-top:1.4rem}
  .cap2 h4{font-size:1.25rem;letter-spacing:-.02em;font-weight:700}
  .cap2 p{color:var(--muted);font-size:14px;margin:.4rem 0 .6rem;max-width:44ch}
  .cap2 a{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--tx);padding-bottom:2px;display:inline-block;line-height:2.6}

  /* BANDS */
  .bands{margin-top:clamp(1.2rem,2.5vw,2rem)}
  .band{position:relative;display:block;overflow:hidden;background:#0A0A0B;min-height:clamp(300px,44vw,540px)}
  .band+.band{margin-top:6px;border-top:0}
  .bandim{position:absolute;inset:0;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
  /*
   * WordPress content filters and third-party block styles can otherwise give
   * an empty background layer an intrinsic height. Keep the project artwork
   * pinned to the complete band, as in the original prototype.
   */
  .bands>.band{position:relative;display:block;overflow:hidden}
  .bands>.band>.bandim{
    position:absolute!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }
  .bands>.band>.bandtxt{position:absolute;left:0;right:0;bottom:0}
  .bandimage{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center!important;
    transition:transform 1s cubic-bezier(.2,.7,.2,1);
  }
  .band:hover .bandimage{transform:scale(1.04)}
  .band:hover .bandim{transform:scale(1.04)}
  .band::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,0) 38%,rgba(0,0,0,.84) 100%)}
  .bandtxt{position:absolute;left:0;bottom:0;z-index:2;padding:clamp(1.4rem,3vw,2.6rem) clamp(1.6rem,4vw,3rem);width:100%}
  .bandtxt h3{color:#fff;letter-spacing:-.035em;line-height:1;font-size:clamp(1.7rem,4.2vw,3.4rem)}
  .bandmeta{color:rgba(255,255,255,.92);font-size:clamp(.88rem,1.25vw,1rem);line-height:1.45;max-width:64ch;max-height:0;opacity:0;overflow:hidden;transition:max-height .55s cubic-bezier(.2,.7,.2,1),opacity .4s ease,margin-top .4s ease}
  .bmeta{display:block;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.78);margin-bottom:.35rem;font-weight:600}
  @media(hover:hover){.band:hover .bandmeta{max-height:12rem;opacity:1;margin-top:.7rem}}
  @media(hover:none),(max-width:860px){.bandmeta{max-height:14rem;opacity:1;margin-top:.7rem}}

  /* SWITCH */
  .idxh1{font-size:clamp(2.2rem,5vw,4rem);letter-spacing:-.04em;margin-top:.5rem}
  .swrap{display:flex;gap:.5rem;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--soft);padding:1.1rem 0;margin:clamp(1.4rem,3vw,2.2rem) 0 0}
  .sw{font:inherit;cursor:pointer;background:none;color:var(--muted);border:1px solid var(--line);padding:.62rem 1.15rem;font-size:12px;letter-spacing:.07em;text-transform:uppercase;font-weight:600;transition:background .25s ease,color .25s ease}
  .sw:hover{color:var(--tx)}
  .sw.active{background:var(--tx);color:var(--bg);border-color:var(--tx)}

  /* DETAIL */
  .backbar{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--soft);padding-bottom:.9rem;margin-bottom:1.6rem}
  .bspacer{flex:1 1 auto}
  .back{display:inline-flex;align-items:center;min-height:44px;gap:.4em;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--tx);font-weight:600}
  .back:hover{opacity:.65}
  .back.alt{color:var(--tx);font-weight:600;border:1px solid var(--line);padding:0 1rem;min-height:42px}
  .back.alt:hover{background:var(--tx);color:var(--bg);opacity:1}
  .backfoot{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap}
  .btn-back.ghost{border-style:solid;opacity:.85}
  .backfoot{margin-top:2rem;text-align:center}
  .btn-back{display:inline-block;border:1px solid var(--line);padding:.85rem 1.6rem;font-size:12px;text-transform:uppercase;letter-spacing:.07em;font-weight:600;transition:background .25s ease,color .25s ease}
  .btn-back:hover{background:var(--tx);color:var(--bg)}
  .det-center{text-align:center;margin:clamp(1.2rem,3vw,2.4rem) 0 clamp(1.2rem,2.6vw,2rem)}
  .det-client{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem}
  .det-title{white-space:nowrap;display:block;width:100%;text-transform:uppercase;letter-spacing:-.045em;line-height:.92;font-size:clamp(2rem,11vw,10rem)}
  .d-sub{font-size:clamp(1rem,1.8vw,1.4rem);color:var(--muted);line-height:1.45;margin:1rem auto 0;max-width:52ch}
  .d-rule{border-top:1px solid var(--line);margin:clamp(1.3rem,3vw,2rem) 0 1rem}
  .d-meta{display:flex;flex-wrap:wrap;gap:.4rem 1.5rem;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:1.4rem}
  .d-meta b{color:var(--tx);font-weight:700}
  .d-play{position:relative;display:block;aspect-ratio:16/9;background-size:cover;background-position:center;background-color:#000}
  .d-play.contain{background-size:contain;background-repeat:no-repeat}
  .d-play .pbtn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2}
  .d-play .pbtn i{width:72px;height:72px;border:1.5px solid rgba(255,255,255,.9);border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);transition:background .3s ease}
  a.d-play:hover .pbtn i{background:rgba(0,0,0,.6)}
  .d-play .pbtn svg{width:20px;height:20px;fill:#fff;margin-left:3px}
  .d-badge{position:absolute;top:0;right:0;z-index:3;margin:clamp(.7rem,1.5vw,1.2rem);padding:.55rem .9rem;border:1px solid rgba(255,255,255,.75);color:#fff;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;line-height:1.35;max-width:14rem;text-align:center;background:rgba(0,0,0,.35);backdrop-filter:blur(2px)}
  .d-play .plabel{position:absolute;left:0;bottom:0;z-index:2;padding:.7rem 1rem;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.9)}
  .d-logos{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;padding:1.1rem 0;border-bottom:1px solid var(--soft)}
  .d-logos .lg{display:flex;align-items:center;gap:.5rem;font-size:13px;font-weight:700;text-transform:uppercase}
  .d-logos .lg img{width:26px;height:26px;object-fit:contain}
  .d-logos .lg img.lgimg{width:auto;height:22px;max-width:130px;object-fit:contain;filter:var(--logofx,none)}
  .d-logos .lg img.lgimg.logo-placeholder{height:32px;max-width:160px;filter:none;opacity:.9}
  .d-logos .lg img.lgimg.logo-client{height:28px;max-width:150px;filter:none}
  .d-logos .x{color:var(--muted);font-size:14px}
  .d-block{border-top:1px solid var(--soft);padding-top:1.6rem;margin-top:2.4rem;max-width:66ch}
  .d-h{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:1rem;font-weight:600}
  .d-block p{font-size:16px;line-height:1.75;margin-bottom:1rem}
  .d-block p:last-child{margin-bottom:0}
  .d-block p a{border-bottom:1px solid currentColor}
  .d-credits{columns:2;column-gap:3rem;font-size:14px;line-height:1.9;color:var(--muted)}
  .d-credits p{break-inside:avoid;margin-bottom:.5rem}
  .d-credits b{color:var(--tx);font-weight:600}
  .film-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:clamp(1.6rem,4vw,3.5rem);align-items:start}
  .film-cols .d-block{max-width:64ch}
  .film-poster{position:sticky;top:96px}
  @media(max-width:860px){.film-cols{grid-template-columns:1fr}.film-poster{position:static;max-width:230px;margin:1.6rem auto 0}}
  .d-poster-row{display:grid;grid-template-columns:minmax(0,280px) 1fr;gap:clamp(1.4rem,3vw,2.6rem);align-items:start;margin-top:1.8rem}
  .d-poster{aspect-ratio:2/3;background-size:cover;background-position:center;background-color:var(--soft)}
  .d-poster.bg-rider-poster{aspect-ratio:1433/2047;background-size:contain;background-repeat:no-repeat;background-color:#050b0b}
  .d-gal{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .d-gal .g,.gim{aspect-ratio:16/10;background-size:cover;background-position:center;background-color:var(--soft)}
  .d-scroller{display:flex;gap:12px;overflow-x:auto;padding-bottom:.7rem;scroll-snap-type:x mandatory}
  .d-scroller .g{flex:0 0 min(78%,460px);aspect-ratio:16/10;background-size:cover;background-position:center;background-color:var(--soft);scroll-snap-align:start}
  .spin{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.2rem,2.6vw,2.2rem);align-items:center;margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid var(--soft)}
  .spin:first-of-type{border-top:0;padding-top:0}
  .spin .g{aspect-ratio:16/10;background-size:cover;background-position:center;background-color:var(--soft)}
  .spin .smeta{font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;font-weight:600}
  .spin h4{font-size:clamp(1.3rem,1.8vw,1.55rem);letter-spacing:-.02em;margin-bottom:.4rem}
  .spin h4 a:hover{opacity:.7}
  .spin .ext{font-size:.75em;opacity:.7}
  .spin p{font-size:14.5px;color:var(--muted);line-height:1.7}
  .eco{display:flex;flex-wrap:wrap;gap:.5rem}
  .eco span{border:1px solid var(--line);padding:.4rem .8rem;font-size:12px}
  .prevnext{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);margin-top:2.4rem;padding-top:1rem;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
  .prevnext a{display:inline-flex;align-items:center;min-height:44px}

  /* TEAM / SLATE */
  .team-lead{font-size:16.5px;max-width:52ch;margin:.6rem 0 clamp(1.8rem,3vw,2.6rem);color:var(--muted)}
  .teamgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2vw,1.8rem)}
  .member .pim{aspect-ratio:3/4;background-color:var(--soft);background-size:cover;background-position:center 18%;overflow:hidden}
  .member .pim img{width:100%;height:100%;object-fit:cover;object-position:top center;filter:none}
  .member h4{font-weight:700;font-size:14.5px;margin-top:.7rem}
  .member .role{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-top:.15rem}
  .slate{border-top:1px solid var(--line);margin-top:1.6rem}
  .slate .row{display:grid;grid-template-columns:1.5fr 1fr auto;gap:1rem;align-items:baseline;border-bottom:1px solid var(--soft);padding:1.1rem 0}
  .slate .row .t{font-weight:700;font-size:clamp(1.2rem,2.2vw,1.7rem);letter-spacing:-.02em}
  .slate .row .m{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.04em}
  .slate .row .y{color:var(--muted);font-size:12px}
  .pipe-note{color:var(--muted);font-size:13.5px;margin-top:1.4rem}

  footer{border-top:1px solid var(--line);padding:clamp(2.8rem,6vw,4.5rem) 0 1.8rem;margin-top:clamp(2.5rem,5vw,4rem)}
  .foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}
  .foot h3{font-size:clamp(1.6rem,3vw,2.4rem);max-width:13ch}
  .foot h3 a{border-bottom:1px solid var(--tx);display:inline-block;min-height:44px}
  .foot-col h5{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.8rem}
  .foot-col p{display:block;font-size:13.5px;margin-bottom:.4rem}
  .foot-col a{display:flex;align-items:center;font-size:13.5px;min-height:44px}
  .foot-legal{border-top:1px solid var(--soft);margin-top:2.4rem;padding-top:1rem;display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;font-size:11.5px;color:var(--muted)}
  .foot-legal .mk{width:20px;height:20px;display:inline-block;vertical-align:middle;margin-right:.4em}
  .foot-legal .mk img{width:100%;height:100%;object-fit:contain}

  /* THEMES */
  html.view-dark,html.theme-black{--bg:#0A0A0B;--tx:#F2F1EC;--line:rgba(255,255,255,.42);--soft:rgba(255,255,255,.18);--muted:rgba(255,255,255,.66);--logofx:none}
  html.theme-blue{--bg:#182A9E;--tx:#F4F5FF;--line:rgba(255,255,255,.5);--soft:rgba(255,255,255,.2);--muted:rgba(255,255,255,.74)}
  html.theme-orange{--bg:#C35218;--tx:#fff;--line:rgba(255,255,255,.55);--soft:rgba(255,255,255,.24);--muted:rgba(255,255,255,.8)}
  html.theme-azzurro{--bg:#1A7BB4;--tx:#fff;--line:rgba(255,255,255,.6);--soft:rgba(255,255,255,.28);--muted:rgba(255,255,255,.84)}
  html.theme-red{--bg:#D62828;--tx:#fff;--line:rgba(255,255,255,.55);--soft:rgba(255,255,255,.24);--muted:rgba(255,255,255,.82)}
  html.theme-rosso-ns{--bg:#B4141B;--tx:#fff;--line:rgba(255,255,255,.55);--soft:rgba(255,255,255,.24);--muted:rgba(255,255,255,.82)}
  html.theme-petrol{--bg:#23403B;--tx:#fff;--line:rgba(255,255,255,.5);--soft:rgba(255,255,255,.22);--muted:rgba(255,255,255,.78)}
  html.theme-yellow{--bg:#F2C40E;--tx:#141414;--line:#141414;--soft:rgba(20,20,20,.22);--muted:rgba(20,20,20,.66);--logofx:invert(1)}
  html.theme-green{--bg:#A6D189;--tx:#141414;--line:#141414;--soft:rgba(20,20,20,.24);--muted:rgba(20,20,20,.66);--logofx:invert(1)}

  @media(max-width:1024px){.teamgrid{grid-template-columns:repeat(3,1fr)}}
  @media(min-width:861px){
    [data-view="home"] .wrap{padding-left:clamp(3.5rem,9vw,10rem)}
    [data-view="home"] .bandtxt{padding-left:clamp(3.5rem,9vw,10rem)}
  }
  @media(max-width:860px){
    .nav-links{position:fixed;inset:64px 0 auto 0;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:.5rem var(--pad) 1.5rem;transform:translateY(-130%);transition:transform .35s ease;z-index:59}
    .nav-links .menu-list{flex-direction:column;align-items:stretch;gap:0}
    .nav-links.open{transform:none}
    .nav-links a{padding:.9rem 0;font-size:15px;border-bottom:1px solid var(--soft)}
    .burger{display:flex}
    .hero-row,.divs,.studio-grid,.d-poster-row,.foot-grid,.spin,.d-gal{grid-template-columns:1fr}
    .teamgrid{grid-template-columns:1fr 1fr}
    .d-credits{columns:1}
    .d-poster-row{gap:1.2rem}
    .d-poster{width:min(210px,58vw);justify-self:center}
    .divover{flex-direction:column;align-items:flex-start;gap:.7rem}
    .divover h2{flex:1 1 auto}
    .det-center{margin-top:.6rem}
    .slate .row{grid-template-columns:1fr;gap:.2rem}
  }


  /* gallery Studio */
  .studio-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(2rem,5vw,5rem);align-items:start}
  .studio-head .sh-left{position:relative}
  .studio-head h2.key-h2{margin:.7rem 0 0;max-width:12ch;font-size:clamp(1.9rem,3.8vw,3.2rem)}
  .studio-head .sh-right{position:relative;padding-right:clamp(0px,6vw,110px)}
  .studio-head .lead{max-width:46ch;font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.5;margin-bottom:1.1rem}
  .studio-head .body{max-width:52ch;color:var(--muted);font-size:15px;line-height:1.65;margin:0}
  .sh-mark{position:absolute;top:0;right:0;width:clamp(46px,5vw,72px);opacity:.9}
  .sh-mark img{width:100%;height:auto;display:block}
  @media(max-width:860px){
    .studio-head{grid-template-columns:1fr;gap:1.4rem}
    .studio-head .sh-right{padding-right:0}
    .sh-mark{position:static;display:block;margin-top:1.6rem;width:52px}
  }
  .studio-gal{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:clamp(2rem,4vw,3rem) 0;
              padding:0 var(--pad) .8rem;scrollbar-width:thin}
  .studio-gal .sg{flex:0 0 clamp(260px,32vw,440px);aspect-ratio:3/2;background-size:cover;background-position:center;
                  background-color:var(--soft);scroll-snap-align:start}
  .caps-sub{max-width:64ch;color:var(--muted);font-size:15.5px;line-height:1.6;margin:.6rem 0 0}
  .caps-sub b{color:var(--tx);font-weight:700}
  .caps-grid{counter-reset:cap;border-top:1px solid var(--line);margin-top:1.6rem}
  .caps-grid .cap2{position:relative;display:grid;grid-template-columns:3.2rem minmax(0,10fr) minmax(0,13fr);
                   gap:clamp(1rem,3vw,3rem);align-items:start;border:0;border-bottom:1px solid var(--soft);
                   margin:0;padding:clamp(1.5rem,2.6vw,2.2rem) 0;transition:padding-left .35s cubic-bezier(.2,.7,.2,1)}
  .caps-grid .cap2::before{counter-increment:cap;content:counter(cap,decimal-leading-zero);
                   font-size:12px;letter-spacing:.1em;color:var(--muted);font-weight:600;padding-top:.35em;transition:color .3s ease}
  .caps-grid .cap2 h4{font-size:clamp(1.15rem,2vw,1.6rem);letter-spacing:-.03em;line-height:1.12;font-weight:700;max-width:22ch}
  .caps-grid .cap2 p{color:var(--muted);font-size:15px;line-height:1.65;margin:0;max-width:52ch}
  .caps-grid .cap2 a{grid-column:3;justify-self:start;margin-top:.9rem;font-size:11px;text-transform:uppercase;
                   letter-spacing:.08em;font-weight:600;border:0;border-bottom:1px solid var(--line);padding:0 0 3px;
                   display:inline-flex;align-items:center;gap:.4em;min-height:0;transition:gap .25s ease}
  .caps-grid .cap2 a::after{content:"\2192"}
  .caps-grid .cap2>.wp-block-buttons{grid-column:3;justify-self:start;margin-top:.9rem}
  .caps-grid .cap2>.wp-block-buttons a::after{content:""}
  .caps-grid .cap2:hover{padding-left:.9rem}
  .caps-grid .cap2:hover::before{color:var(--tx)}
  .caps-grid .cap2:hover a{gap:.8em}
  @media(max-width:860px){
    .caps-grid .cap2{grid-template-columns:2.4rem minmax(0,1fr);gap:.7rem 1rem;row-gap:.6rem}
    .caps-grid .cap2 p{grid-column:2}
    .caps-grid .cap2 a{grid-column:2}
    .caps-grid .cap2>.wp-block-buttons{grid-column:2}
  }
  /* Oasi Aboca: proporzione reale della foto, niente tagli */
  [data-view="p:aboca"] .d-play,.project-aboca .d-play{aspect-ratio:3/2}

  /* inquadrature: volti centrati */
  .bg-tel-imbruttito,.bg-tel-ijc{background-position:center 22%}
  html.theme-pt{--bg:#11748D;--tx:#FFFFFF;--line:rgba(255,255,255,.55);--soft:rgba(255,255,255,.24);--muted:rgba(255,255,255,.82)}

  /* inquadrature */
  [data-view="p:basement-society"] .d-play,.project-basement-society .d-play{background-position:center 30%}
  @media(max-width:860px){[data-view="p:basement-society"] .d-play,.project-basement-society .d-play{background-position:center 35%}}
  /* logo Sky in bianco */
  .d-logos .lg img.lgimg[alt="Sky Original"],.d-logos .lg img.lgimg[alt="Sky Cinema"],.d-logos .lg img.lgimg[alt="Rai Cinema"]{filter:brightness(0) invert(1)}
  html.theme-yellow .d-logos .lg img.lgimg[alt^="Sky"],html.theme-green .d-logos .lg img.lgimg[alt^="Sky"]{filter:none}
  .project-gangs .d-logos .lg img.lgimg,.project-benban .d-logos .lg img.lgimg{height:28px;max-width:155px}
  .project-blocco181 .d-play .plabel{left:.35rem;bottom:.35rem}
  /* ritratti team: fallback iniziali */
  .member .pim{position:relative}
  .member .pim .ini{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.3rem;color:var(--muted);letter-spacing:.05em}
  .member .pim img{position:relative;z-index:1}
  .member .pim[class*="bg-"]{background-size:cover;background-position:center 20%}
  .member .pim.org{background-size:70% auto;background-repeat:no-repeat;background-position:center;background-color:#fff}

  /*
   * Editorial imagery is rendered as real responsive <img> markup for search
   * engines and assistive technology. Legacy bg-* rules stay in this file as
   * a safe fallback, but are disabled whenever the semantic image is present.
   */
  .redjoint-has-semantic-media{position:relative;overflow:hidden;background-image:none!important}
  .redjoint-has-semantic-media>.redjoint-semantic-media{
    position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;max-width:none;
    object-fit:cover;object-position:center
  }
  .d-play.contain>.redjoint-semantic-media{object-fit:contain}
  .d-poster.bg-rider-poster>.redjoint-semantic-media{object-fit:contain}
  .bg-tel-imbruttito>.redjoint-semantic-media,.bg-tel-ijc>.redjoint-semantic-media{object-position:center 22%}
  [data-view="p:basement-society"] .d-play>.redjoint-semantic-media,
  .project-basement-society .d-play>.redjoint-semantic-media{object-position:center 30%}
  .member .pim>.redjoint-semantic-media{position:absolute;object-position:center 20%}
  .member .pim.org>.redjoint-semantic-media{inset:15%;width:70%;height:70%;object-fit:contain;filter:none}
  @media(max-width:860px){
    [data-view="p:basement-society"] .d-play>.redjoint-semantic-media,
    .project-basement-society .d-play>.redjoint-semantic-media{object-position:center 35%}
  }

  .bg-blocco-land{background-image:url(../images/asset-001-f695d327.jpg)}
  .bg-zero-land{background-image:url(../images/asset-002-890e4ed9.jpg)}
  .bg-bendan-land{background-image:url(../images/asset-003-26ab6b25.jpg)}
  .bg-gangs-land{background-image:url(../images/asset-004-34f2b116.jpg)}
  .bg-blocco-vert{background-image:url(../images/asset-005-c841354e.jpg)}
  .bg-inter-vert{background-image:url(../images/asset-006-cc90f5a5.jpg)}
  .bg-studio-blocco{background-image:url(../images/asset-007-ef600539.jpg)}
  .bg-blocco-album{background-image:url(../images/asset-008-acb2fe35.jpg)}
  .bg-aboca{background-image:url(../images/asset-009-2a174caf.jpg)}
  .bg-stc{background-image:url(../images/asset-010-29c971c0.jpg)}
  .bg-gblocco1{background-image:url(../images/asset-011-ac42e78a.jpg)}
  .bg-gblocco2{background-image:url(../images/asset-012-b6a903ab.jpg)}
  .bg-gblocco3{background-image:url(../images/asset-013-d875365d.jpg)}
  .bg-gblocco4{background-image:url(../images/asset-014-ecd39f13.jpg)}
  .bg-gblocco5{background-image:url(../images/asset-015-4a4312b5.jpg)}
  .bg-gblocco6{background-image:url(../images/asset-016-417bd7e9.jpg)}
  .bg-ggangs1{background-image:url(../images/asset-017-48515df7.jpg)}
  .bg-ggangs2{background-image:url(../images/asset-018-e0e6a3e8.jpg)}
  .bg-ggangs3{background-image:url(../images/asset-019-03fccc11.jpg)}
  .bg-ggangs4{background-image:url(../images/asset-020-2b1f1514.jpg)}
  .bg-ggangs5{background-image:url(../images/asset-021-50f803b2.jpg)}
  .bg-ggangs6{background-image:url(../images/asset-022-e92e6f45.jpg)}
  .bg-gzero1{background-image:url(../images/asset-023-8271f11d.jpg)}
  .bg-gzero2{background-image:url(../images/asset-024-e6b81d10.jpg)}
  .bg-gzero4{background-image:url(../images/asset-025-9e6e5efd.jpg)}
  .bg-gzero5{background-image:url(../images/asset-026-7777242d.jpg)}
  .bg-grider1{background-image:url(../images/asset-027-08b5f3ad.jpg)}
  .bg-grider2{background-image:url(../images/asset-028-4ee9d36c.jpg)}
  .bg-grider3{background-image:url(../images/asset-029-ec793afb.jpg)}
  .bg-grider4{background-image:url(../images/asset-030-05bf67b3.jpg)}
  .bg-grider5{background-image:url(../images/asset-031-64255e2e.jpg)}
  .bg-grider6{background-image:url(../images/asset-032-e5d48f3c.jpg)}
  .bg-ginter1{background-image:url(../images/asset-033-1f29b455.jpg)}
  .bg-ginter2{background-image:url(../images/asset-034-f8422944.jpg)}
  .bg-ginter3{background-image:url(../images/asset-035-11d3463e.jpg)}
  .bg-ginter4{background-image:url(../images/asset-036-426b7c0e.jpg)}
  .bg-bs-cover{background-image:url(../images/asset-037-fb861460.jpg)}
  .bg-bs-preview{background-image:url(../images/asset-135-4caa438c.jpg)}
  .bg-gbs1{background-image:url(../images/asset-038-57eda013.jpg)}
  .bg-gbs2{background-image:url(../images/asset-039-0be96a10.jpg)}
  .bg-gbs3{background-image:url(../images/asset-040-84092e11.jpg)}
  .bg-gbs4{background-image:url(../images/asset-041-e104330c.jpg)}
  .bg-gbs5{background-image:url(../images/asset-042-e1cd6a6f.jpg)}
  .bg-gbs6{background-image:url(../images/asset-043-1a30e9f1.jpg)}
  .bg-gitalia1{background-image:url(../images/asset-044-163d7aed.jpg)}
  .bg-gitalia2{background-image:url(../images/asset-045-2d9c6928.jpg)}
  .bg-gitalia3{background-image:url(../images/asset-046-2d98bfab.jpg)}
  .bg-gnuove1{background-image:url(../images/asset-047-8d1b8a00.jpg)}
  .bg-gnuove2{background-image:url(../images/asset-048-a4fe6107.jpg)}
  .bg-gnuove3{background-image:url(../images/asset-049-70efa32c.jpg)}
  .bg-gricola1{background-image:url(../images/asset-050-1a4cbe0b.jpg)}
  .bg-gricola2{background-image:url(../images/asset-051-78133fa0.jpg)}
  .bg-gricola3{background-image:url(../images/asset-052-d5a3092c.jpg)}
  .bg-gricola5{background-image:url(../images/asset-053-a238606d.jpg)}
  .bg-tel-zing{background-image:url(../images/asset-054-89417b41.jpg)}
  .bg-tel-maccio{background-image:url(../images/asset-055-9d7b9747.jpg)}
  .bg-tel-emal{background-image:url(../images/asset-056-ea30de1d.jpg)}
  .bg-tel-surace{background-image:url(../images/asset-057-59a4fc43.jpg)}
  .bg-tel-jaki{background-image:url(../images/asset-058-394a1666.jpg)}
  .bg-tel-mastrota{background-image:url(../images/asset-059-c0158495.jpg)}
  .bg-tel-rare{background-image:url(../images/asset-060-fa50238f.jpg)}
  .bg-tel-imbruttito{background-image:url(../images/asset-061-a55e8cf5.jpg)}
  .bg-tel-ijc{background-image:url(../images/asset-062-b2b9dd3b.jpg)}
  .bg-tel-cronache{background-image:url(../images/asset-063-d8e10e1e.jpg)}
  .bg-hero{background-image:url(../images/asset-064-fb6095a7.jpg)}
  .bg-basementcafe{background-image:url(../images/asset-065-f5f48359.jpg)}
  .bg-basement{background-image:url(../images/asset-066-53be77d6.jpg)}
  .bg-bsociety{background-image:url(../images/asset-067-425e36df.jpg)}
  .bg-bsociety2{background-image:url(../images/asset-068-7d53d1a6.jpg)}
  .bg-lavazza{background-image:url(../images/asset-069-1727739c.jpg)}
  .bg-ricola{background-image:url(../images/asset-070-03327a06.jpg)}
  .bg-italia{background-image:url(../images/asset-071-6baf2657.jpg)}
  .bg-telethon{background-image:url(../images/asset-072-3407e728.jpg)}
  .bg-rider{background-image:url(../images/asset-073-a6528cf8.jpg)}
  .bg-rider-poster{background-image:url(../images/asset-134-7f8b2074.jpg)}
  .bg-inter{background-image:url(../images/asset-074-f38c70c1.jpg)}
  .bg-bc-talk{background-image:url(../images/asset-075-fe0f63c3.jpg)}
  .bg-bc-master{background-image:url(../images/asset-076-303b2815.jpg)}
  .bg-bc-gap{background-image:url(../images/asset-077-8e3b1254.jpg)}
  .bg-bc-nextgen{background-image:url(../images/asset-078-88e6b58f.jpg)}
  .bg-bc-germania{background-image:url(../images/asset-079-84c04766.jpg)}
  .bg-gangs-vert{background-image:url(../images/asset-080-787a62f7.jpg)}
  .bg-bendan-vert{background-image:url(../images/asset-081-65536be3.jpg)}
  .bg-zero-vert{background-image:url(../images/asset-082-a747628f.jpg)}
  .bg-aboca1{background-image:url(../images/asset-083-4b912218.jpg)}
  .bg-aboca2{background-image:url(../images/asset-084-da7f2b87.jpg)}
  .bg-aboca3{background-image:url(../images/asset-085-9feb25e2.jpg)}
  .bg-aboca4{background-image:url(../images/asset-086-fc31992b.jpg)}
  .bg-aboca5{background-image:url(../images/asset-087-14673d4b.jpg)}
  .bg-aboca6{background-image:url(../images/asset-088-8fd732ab.jpg)}
  .bg-aboca7{background-image:url(../images/asset-089-b35e71df.jpg)}
  .bg-aboca8{background-image:url(../images/asset-090-d1f4eace.jpg)}
  .bg-aboca9{background-image:url(../images/asset-091-5ced561e.jpg)}
  .bg-stud1{background-image:url(../images/asset-092-98d7ee2f.jpg)}
  .bg-stud2{background-image:url(../images/asset-093-a7ea0772.jpg)}
  .bg-stud3{background-image:url(../images/asset-094-1315f80f.jpg)}
  .bg-stud4{background-image:url(../images/asset-095-17e80927.jpg)}
  .bg-stud5{background-image:url(../images/asset-096-8bc83f56.jpg)}
  .bg-stud6{background-image:url(../images/asset-097-e3b286f2.jpg)}
  .bg-stud7{background-image:url(../images/asset-098-adf6e27a.jpg)}
  .bg-pt-hero{background-image:url(../images/asset-099-04da6a98.jpg)}
  .bg-pt-parco{background-image:url(../images/asset-100-e979fcd7.jpg)}
  .bg-pt-led{background-image:url(../images/asset-101-5ef59cc5.jpg)}
  .bg-pt-sensore{background-image:url(../images/asset-102-24824a18.jpg)}
  .bg-pt-evento{background-image:url(../images/asset-103-e536302b.jpg)}
  .bg-pt-affissione{background-image:url(../images/asset-104-53f2e5e4.jpg)}
  .bg-bc-live{background-image:url(../images/asset-105-a2049217.jpg)}
  .bg-team-stefano{background-image:url(../images/asset-106-070eede8.jpg)}
  .bg-team-bianca{background-image:url(../images/asset-107-02d327e8.jpg)}
  .bg-team-caterina{background-image:url(../images/asset-108-23590712.jpg)}
  .bg-team-marta{background-image:url(../images/asset-123-ee7e5b5a.jpg)}
  .bg-team-emma{background-image:url(../images/asset-110-cf9dd627.jpg)}
  .bg-team-david{background-image:url(../images/asset-111-08cc6a68.jpg)}
  .bg-team-carlo{background-image:url(../images/asset-112-38a89468.jpg)}
  .bg-team-ludovico{background-image:url(../images/asset-113-183b87bf.jpg)}
  .bg-team-paolo{background-image:url(../images/asset-124-c91e0beb.jpg)}
  .bg-team-teleconsulting{background-image:url(../images/asset-115-2b148940.jpg)}
  .bg-ns-hero{background-image:url(../images/asset-116-dfa8e358.jpg)}

    .bg-np-hero{background-image:url(../images/asset-125-f97c47be.jpg)}
    .bg-np-specchi{background-image:url(../images/asset-126-17da2822.jpg)}
    .bg-np-sala{background-image:url(../images/asset-127-c02597c7.jpg)}
    .bg-np-luci1{background-image:url(../images/asset-128-e806fc5a.jpg)}
    .bg-np-luci2{background-image:url(../images/asset-129-fe9a4124.jpg)}
    .cal-links{display:flex;flex-direction:column;gap:0;margin-top:1.1rem;max-width:560px}
    .cal-links a{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;border-top:1px solid var(--soft);padding:.75rem 0;font-size:15px}
    .cal-links a:last-child{border-bottom:1px solid var(--soft)}
    .cal-links a:hover{opacity:.65}
    .cal-links .ext{opacity:.6;font-size:.85em}
    .bg-cal-hero{background-image:url(../images/asset-130-0d3d3552.jpg)}
    .bg-team-francesca{background-image:url(../images/asset-131-b6c35e5b.jpg)}
    .bg-cal-cover{background-image:url(../images/asset-130-0d3d3552.jpg)}
    .bg-cal-roots{background-image:url(../images/asset-132-17f6cf87.jpg)}
    .bg-cal-minds{background-image:url(../images/asset-133-4b59b465.jpg)}
  .langsw{display:flex;align-items:center;gap:.35rem;margin-left:1.4rem}
  .langsw{margin-left:auto}
  .language-list{display:flex;align-items:center;gap:.5rem;list-style:none;margin:0;padding:0}
  .language-list li{list-style:none;margin:0;padding:0}
  .language-list li::marker{content:""}
  .language-list li+li::before{content:"/";margin-right:.5rem;color:var(--muted)}
  .language-list a,.lang-placeholder span{font-size:12px;letter-spacing:.08em;font-weight:600;color:var(--muted)}
  .language-list .current-menu-item a,.language-list .current-lang a,.lang-placeholder .on{color:var(--tx);text-decoration:underline;text-underline-offset:4px}
  .language-list a{text-transform:uppercase}
  .lg-btn{font:inherit;background:none;border:0;cursor:pointer;color:var(--muted);font-size:12px;
          letter-spacing:.08em;font-weight:600;padding:0 .15rem;min-height:44px;transition:color .2s ease}
  .lg-btn:hover{color:var(--tx)}
  .lg-btn.on{color:var(--tx);text-decoration:underline;text-underline-offset:4px}
  .lg-sep{color:var(--muted);font-size:12px}
  .foot-lang{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap;min-width:max-content}
  .foot-lang .language-list{display:inline-flex!important;flex-flow:row nowrap!important;align-items:center;width:auto;white-space:nowrap}
  .foot-lang .language-list>li{display:inline-flex!important;flex:0 0 auto;align-items:center;width:auto;white-space:nowrap}
  .foot-lang .language-list>li>a{display:inline-flex;width:auto;white-space:nowrap}
  .foot-lang .language-list>li+li::before{display:inline-block;flex:0 0 auto}
  .foot-lang .lg-btn{min-height:44px;font-size:13px;padding:0 .3rem}
  @media(max-width:860px){.langsw{margin-left:auto;margin-right:.6rem}}
