/*
Theme Name: Sleep Mode
Theme URI: https://sleepmodeseries.com
Author: D.E.A. Production
Description: Tema a blocchi per il sito della serie SLEEP MODE — Brand Partnership & Product Placement. Look della brochure (nero, osso, bordeaux, titoli condensati) con animazioni automatiche su testi, box e immagini.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sleep-mode
*/

:root{
  --sm-ink:#111416; --sm-ink-2:#181b1d; --sm-bone:#E6E5E1; --sm-paper:#EDECE9;
  --sm-wine:#7A4543; --sm-wine-lt:#B0706C; --sm-dark:#131617;
  --sm-gut:clamp(16px,6.8vw,136px);
}
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased}
:where(.wp-site-blocks) > *{margin-block:0}
.wp-block-post-content > *{margin-block:0}
img{max-width:100%}
b,strong{font-weight:700}
:focus-visible{outline:2px solid var(--sm-wine-lt);outline-offset:3px}
h1,h2,h3,h4{text-wrap:balance}
/* i titoli non spezzano mai una parola a metà: se non entra, il JS riduce il titolo (fitHeadings) */
main :is(h1,h2,h3){overflow-wrap:normal;word-break:normal;hyphens:manual}
mark.has-inline-color{background:transparent}

/* ===== Header ===== */
.sm-bar{position:fixed;inset:0 0 auto 0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px var(--sm-gut);background:rgba(17,20,22,.94);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--sm-bone)}
.admin-bar .sm-bar{top:32px}
@media (max-width:782px){.admin-bar .sm-bar{top:46px}}
.sm-crumb{font:600 11px/1.3 var(--wp--preset--font-family--body);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--sm-bone)}
.sm-crumb em{font-style:normal;color:var(--sm-wine-lt)}
.sm-crumb{display:inline-flex;align-items:center;gap:.5em}
.sm-bar-logo{height:30px;width:auto;display:block;margin-right:.4em}
.sm-menu-btn{font:700 14px/1 var(--wp--preset--font-family--display);letter-spacing:.12em;text-transform:uppercase;background:var(--sm-wine);color:var(--sm-bone);border:0;padding:11px 16px}
.sm-menu-btn:hover{background:#8d504e}
.sm-nav{position:fixed;inset:0;z-index:100;background:var(--sm-ink);color:var(--sm-bone);overflow-y:auto;padding:20px var(--sm-gut) 40px}
.sm-nav[hidden]{display:none}
.sm-nav-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}
.sm-nav ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:0 clamp(24px,3vw,56px)}
/* colonne verticali (01–05, 06–10, 11–13): stesse righe in tutte le colonne = linee allineate.
   Il numero di righe (--r2, --r3) lo calcola la testata in base al numero di pagine. */
@media (min-width:700px){.sm-nav ol{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(var(--r2,7),auto);grid-auto-flow:column}}
@media (min-width:1100px){.sm-nav ol{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(var(--r3,5),auto)}}
.sm-nav li{display:flex;container-type:inline-size}
.sm-nav li a{flex:1}
.sm-nav li a{display:flex;gap:14px;align-items:baseline;padding:14px 0;border-bottom:1px solid #2a2d2f;text-decoration:none;color:inherit;
  font:700 clamp(22px,2.1vw,34px)/1.05 var(--wp--preset--font-family--display);text-transform:uppercase;
  font-size:clamp(17px,calc((100cqi - 40px) / 15),34px);white-space:nowrap}
/* la grandezza delle voci segue la larghezza della colonna: ogni voce sta su una riga */
.sm-nav li a span{font:600 12px/1 var(--wp--preset--font-family--body);color:var(--sm-wine-lt);min-width:22px}
.sm-nav li a:hover,.sm-nav li a[aria-current]{color:var(--sm-wine-lt)}

/* ===== Sections ===== */
.sm-sec{position:relative;overflow:hidden;padding:clamp(110px,12vw,150px) var(--sm-gut) clamp(56px,8vw,110px) !important}
.wp-block-cover.sm-sec{min-height:0;align-items:flex-start;justify-content:flex-start;color:var(--sm-bone)}
.wp-block-cover.sm-sec .wp-block-cover__inner-container{width:100%;max-width:none;color:inherit}
.wp-block-cover.sm-hero{min-height:min(100svh,980px);align-items:center}
.sm-sec.has-bone-background-color{color:var(--sm-dark)}
.sm-sec > .wp-block-cover__inner-container > * + *, .sm-sec.is-layout-flow > * + *{margin-block-start:clamp(32px,4vw,56px)}
.sm-sec.sm-flush-bottom{padding-bottom:0 !important}

.wp-block-columns.sm-split{gap:clamp(32px,5vw,80px);margin-block-end:0}
.sm-sec h1{margin:0}
.sm-sec .has-bone-background-color h3, .sm-sec.has-bone-background-color h3{color:var(--sm-wine)}
.wp-block-cover.sm-sec h3, .sm-sec.has-ink-background-color h3{color:#9A5956}

/* paragraph styles */
.is-style-sm-lead{font-size:var(--wp--preset--font-size--large);max-width:36ch}
.is-style-sm-slab{font:400 var(--wp--preset--font-size--slab)/1.25 var(--wp--preset--font-family--display);text-transform:uppercase;letter-spacing:.03em;margin:0}
.is-style-sm-slab strong{font-weight:700}
.is-style-sm-kicker{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em;margin:0 0 4px !important}
.sm-num{font:700 42px/1 var(--wp--preset--font-family--display);color:#fff;margin:0 0 10px !important}

/* boxes: scuri e semitrasparenti, il video/foto di sfondo traspare */
.is-style-sm-box{background:rgba(17,20,22,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(230,229,225,.14);color:var(--sm-bone);padding:clamp(22px,2.4vw,40px) !important}
.is-style-sm-box h3{margin:0 0 12px;color:var(--sm-wine-lt) !important}
.is-style-sm-box p{margin:0;font-size:15px;line-height:1.55}
.is-style-sm-box-wine{background:var(--sm-wine);color:var(--sm-bone);padding:clamp(22px,2.4vw,40px) !important}
.is-style-sm-box-wine h3{margin:0 0 12px;color:var(--sm-dark) !important}
.is-style-sm-box-wine p{margin:0;font-size:15px;line-height:1.55}
.is-style-sm-band{background:var(--sm-wine);color:var(--sm-bone);padding:clamp(24px,3vw,48px) !important;margin-right:calc(-1 * var(--sm-gut)) !important;margin-left:auto !important;max-width:1100px}
.is-style-sm-band p{margin:0}
.is-style-sm-band.sm-narrow{max-width:760px}
.sm-sec .is-layout-grid{gap:16px}

/* bullets */
.is-style-sm-bullets{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.is-style-sm-bullets li{font-weight:700;font-size:clamp(18px,1.7vw,26px);line-height:1.3;padding-left:28px;position:relative}
.is-style-sm-bullets li::before{content:"";position:absolute;left:4px;top:.5em;width:11px;height:11px;border-radius:50%;background:var(--sm-ink)}

/* home hero */
.sm-logo-img{margin:0 !important}
.sm-logo-img img{width:100%;max-width:640px;height:auto;display:block}
.sm-logo{font-size:var(--wp--preset--font-size--logo) !important;line-height:.82 !important}
.sm-genre{font:700 clamp(22px,3vw,46px)/1 var(--wp--preset--font-family--display);text-transform:uppercase;margin:12px 0 16px !important;white-space:nowrap}
.wp-block-separator.is-style-sm-rule,.wp-block-separator.is-style-sm-rule:not(.is-style-wide):not(.is-style-dots){border:0;height:clamp(14px,1.6vw,30px);background:var(--sm-wine) !important;opacity:1;margin:0;width:100% !important;max-width:none}
.sm-hero .wp-block-columns{align-items:center}

/* cast */
.sm-cast{gap:0 !important;grid-template-columns:repeat(6,minmax(0,1fr)) !important}
.sm-cast .wp-block-image{margin:0;position:relative;overflow:hidden}
.sm-cast img{width:100%;aspect-ratio:5/6;object-fit:cover;filter:saturate(.9)}
.sm-cast figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:26px 14px 12px;background:linear-gradient(transparent,rgba(17,20,22,.95));
  font:700 20px/1.1 var(--wp--preset--font-family--display);text-transform:uppercase;color:var(--sm-bone);text-align:left}
.sm-actor{color:var(--sm-wine-lt);margin-top:6px !important}

/* timeline */
.sm-timeline{gap:0 !important}
.sm-timeline > *{padding:26px 26px 30px;border:2px dotted transparent}
.sm-timeline > *:nth-child(odd){border-color:rgba(230,229,225,.7)}
.sm-timeline p{margin:0}

/* image strip */
.sm-strip{gap:0 !important;margin:40px calc(-1 * var(--sm-gut)) 0 !important}
.sm-strip .wp-block-image{margin:0;overflow:hidden}
.sm-strip img{width:100%;aspect-ratio:4/3;object-fit:cover}

/* pilot columns */
.sm-cols3{columns:3 230px;column-gap:32px;font-size:15.5px}
.sm-cols3 > p{margin:0 0 1em !important;break-inside:avoid}

/* index cards (home) */
.sm-index{--c:1;display:flex;flex-wrap:wrap;justify-content:center;gap:16px;list-style:none;margin:0;padding:0}
/* colonne per larghezza: 1, 2, 3, 4, 6 (divisori di 12 = righe sempre complete); le card di una riga
   hanno tutte la stessa altezza; se le pagine non fossero 12, l'ultima riga resta centrata */
.sm-index > li{display:flex;flex:0 0 calc((100% - (var(--c) - 1) * 16px) / var(--c));min-width:0}
@media (min-width:540px){.sm-index{--c:2}}
@media (min-width:900px){.sm-index{--c:3}}
@media (min-width:1200px){.sm-index{--c:4}}
@media (min-width:2000px){.sm-index{--c:6}}
/* card dell'indice: al passaggio diventano bordeaux, restando ferme e dentro la loro cornice */
.sm-index a{display:block;flex:1;box-sizing:border-box;background:var(--sm-ink-2);border:1px solid #26292b;color:var(--sm-bone);text-decoration:none;padding:24px;transition:background-color .3s ease}
.sm-index a:is(:hover,:focus-visible){background:var(--sm-wine)}
.sm-index .num{font:700 14px/1 var(--wp--preset--font-family--display);color:var(--sm-wine-lt);display:block;margin-bottom:22px;transition:color .3s}
.sm-index .ttl{display:block;font:700 26px/1.02 var(--wp--preset--font-family--display);text-transform:uppercase;color:var(--sm-bone);margin-bottom:8px}
.sm-index .dsc{font-size:14px;line-height:1.45;color:#b9b8b3;transition:color .3s}
.sm-index a:is(:hover,:focus-visible) :is(.num,.dsc){color:var(--sm-bone)}

/* pager + footer */
.sm-pager{display:grid;grid-template-columns:1fr 1fr;background:var(--sm-ink-2);border-top:1px solid #26292b;color:var(--sm-bone)}
.sm-pager a{padding:28px var(--sm-gut);text-decoration:none;display:grid;gap:4px;color:inherit}
.sm-pager a + a{text-align:right;border-left:1px solid #26292b}
.sm-pager small{font:600 11px/1 var(--wp--preset--font-family--body);letter-spacing:.1em;text-transform:uppercase;color:var(--sm-wine-lt)}
.sm-pager strong{font:700 clamp(20px,2.4vw,32px)/1 var(--wp--preset--font-family--display);text-transform:uppercase}
.sm-pager a:hover strong{color:var(--sm-wine-lt)}
.sm-foot{padding:22px var(--sm-gut);font-size:12px;color:#8d8c88;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;background:var(--sm-ink)}
.sm-foot a{color:inherit}

/* ===== Animations ===== */
/* Il contenuto resta nascosto dal primo istante finché lo script non ha preparato le
   animazioni (niente lampo di testo prima del titolo). Se lo script non parte, dopo 4 s
   compare comunque. */
html.sm-pre main{visibility:hidden;animation:sm-unhide 0s 4s forwards}
@keyframes sm-unhide{to{visibility:visible}}
html.sm-notrans .sm-r{transition:none !important}
@media (prefers-reduced-motion:no-preference){
  .sm-anim .sm-r{transition:opacity 1.2s ease, transform 1.3s cubic-bezier(.16,.8,.2,1), clip-path 1.1s cubic-bezier(.7,0,.2,1);transition-delay:var(--d,0s)}
  .sm-anim .sm-r:not(.on){opacity:0;transform:translateY(14px)}
  .sm-anim .sm-r.r-left:not(.on){transform:translateY(14px)}
  .sm-anim .sm-r.r-title{clip-path:inset(0 0 0 0);transition:clip-path .9s cubic-bezier(.25,.8,.25,1), transform .9s cubic-bezier(.25,.8,.25,1);transition-delay:var(--d,0s)}
  .sm-anim .sm-r.r-title:not(.on){opacity:1;clip-path:inset(0 0 100% 0);transform:translateY(40px)}
  .sm-anim .sm-r.r-wipe{clip-path:inset(0 0 0 0)}
  .sm-anim .sm-r.r-wipe:not(.on){opacity:1;transform:none;clip-path:inset(0 100% 0 0)}
  .sm-anim .sm-r.r-zoom:not(.on){transform:scale(.97)}
  .sm-anim .sm-r.r-logo{transition-duration:.8s,1s}
  .sm-anim .sm-r.r-logo:not(.on){opacity:0;transform:scale(.96)}
  .sm-anim .sm-r.r-rule:not(.on){opacity:1;transform:scaleX(0);transform-origin:left}
  .wp-block-cover.sm-sec .wp-block-cover__image-background,.wp-block-cover.sm-sec .wp-block-cover__video-background{animation:sm-kb 2.6s cubic-bezier(.2,.7,.2,1) both}
  @keyframes sm-kb{from{scale:1.09}to{scale:1}}
  .is-style-sm-box,.is-style-sm-box-wine{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
  .is-style-sm-box:hover,.is-style-sm-box-wine:hover{transform:translateY(-6px) !important;box-shadow:0 18px 40px -20px rgba(0,0,0,.55)}
  .sm-cast img,.sm-strip img{transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .5s}
  .sm-cast .wp-block-image:hover img{transform:scale(1.05);filter:saturate(1.1)}
  .sm-strip .wp-block-image:hover img{transform:scale(1.06)}
  .sm-nav:not([hidden]) li{animation:sm-rise .6s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i) * 35ms)}
  @keyframes sm-rise{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}
}
/* parallax needs extra room */
.wp-block-cover.sm-sec .wp-block-cover__image-background{top:-14%;height:128%;will-change:transform}
/* Video di sfondo fermi sulla finestra (come uno sfondo fisso): il contenuto ci scorre sopra e il
   fotogramma resta inquadrato per intero, anche nelle pagine lunghe. clip-path limita il video alla
   sua sezione (funziona anche su iPhone, dove background-attachment:fixed non va). */
.wp-block-cover.sm-sec{clip-path:inset(0)}
.wp-block-cover.sm-sec .wp-block-cover__video-background{position:fixed;top:0;left:0;right:auto;bottom:auto;width:100%;height:100vh;height:100lvh;transform:none !important}
/* Home: il video d'apertura resta visibile, velato, anche dietro "Scopri il progetto".
   Il video non è ritagliato alla prima sezione; le sezioni successive stanno sopra di lui. */
.home .wp-block-cover.sm-hero{clip-path:none}
.home main > .sm-sec{position:relative;z-index:1;margin-block-start:0 !important;background:linear-gradient(to bottom,rgba(17,20,22,.6),rgba(17,20,22,.84) 360px) !important}
.home footer.wp-block-template-part{position:relative;z-index:1}
.home .sm-index a{background:rgba(24,27,29,.7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.home .sm-index a:is(:hover,:focus-visible){background:var(--sm-wine)}
/* Diario: animazione del logo intera sui telefoni in verticale (niente logo tagliato) */
@media (max-aspect-ratio:1/1){.wp-block-cover.sm-bg-logo video.wp-block-cover__video-background{object-fit:contain}}
.wp-block-cover.sm-bg-logo video.wp-block-cover__video-background{transition:opacity .8s ease}
.wp-block-cover.sm-bg-logo video.wp-block-cover__video-background.is-ended{opacity:0}

@media (max-width:960px){
  .sm-cast{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
  .sm-timeline{grid-template-columns:1fr 1fr !important}
  .sm-timeline > *{border-color:rgba(230,229,225,.35) !important}
  .sm-strip{grid-template-columns:1fr 1fr !important}
}
@media (max-width:781px){
  .is-style-sm-band{margin-right:0 !important}
  .sm-genre{white-space:normal}
}
@media (max-width:560px){
  .is-style-sm-band a[href^="mailto:"]{font-size:14.5px;letter-spacing:-.01em}
  .sm-crumb .hide-s{display:none}
  .sm-cast{grid-template-columns:1fr 1fr !important}
  .sm-timeline{grid-template-columns:1fr !important}
  .sm-pager{grid-template-columns:1fr}
  .sm-pager a + a{border-left:0;border-top:1px solid #26292b}
}
.sm-dot{color:var(--sm-wine)}
.sm-h2-small{font-size:clamp(30px,3.6vw,54px) !important}
.sm-cast figcaption .sm-actor{display:block;font:500 12px/1.3 var(--wp--preset--font-family--body);text-transform:none;margin-top:4px !important}
.sm-hero h2{font-size:var(--wp--preset--font-size--section-title)}

/* ===== Diario di produzione: player + timeline YouTube ===== */
.sm-yt{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,48px);color:var(--sm-bone)}
.sm-yt-stage{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:end}
.sm-yt-player{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.sm-yt-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sm-yt-play{all:unset;position:absolute;inset:0;display:block}
.sm-yt-play img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .4s;filter:brightness(.8)}
.sm-yt-play:hover img{transform:scale(1.04);filter:brightness(.95)}
.sm-yt-play-ico{position:absolute;left:50%;top:50%;width:clamp(64px,8vw,96px);aspect-ratio:1;translate:-50% -50%;background:var(--sm-wine);transition:transform .3s cubic-bezier(.2,.7,.2,1),background .3s}
.sm-yt-play-ico::after{content:"";position:absolute;left:52%;top:50%;translate:-40% -50%;border-style:solid;border-width:14px 0 14px 23px;border-color:transparent transparent transparent var(--sm-bone)}
.sm-yt-play:hover .sm-yt-play-ico,.sm-yt-play:focus-visible .sm-yt-play-ico{transform:scale(1.08);background:#8d504e}
.sm-yt-play:focus-visible{outline:2px solid var(--sm-wine-lt);outline-offset:-4px}
.sm-yt-info{display:grid;gap:12px;align-content:end}
.sm-yt-info > *{margin:0 !important}
.sm-yt-meta{font:600 12px/1.3 var(--wp--preset--font-family--body);letter-spacing:.08em;text-transform:uppercase;color:var(--sm-wine-lt)}
.sm-yt-title{font-size:clamp(26px,2.6vw,40px) !important;color:var(--sm-bone) !important;line-height:1 !important}
.sm-yt-desc{font-size:15px;color:#c9c8c3;max-width:46ch}
.sm-yt-links{display:flex;flex-wrap:wrap;gap:10px;padding-top:6px}
.sm-yt-links a,.sm-yt-sub{font:700 13px/1 var(--wp--preset--font-family--display);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;padding:12px 16px;border:1px solid rgba(230,229,225,.35);color:var(--sm-bone);display:inline-block;transition:background .25s,border-color .25s}
.sm-yt-links a:hover,.sm-yt-sub:hover{background:var(--sm-wine);border-color:var(--sm-wine)}
.sm-yt.is-swap .sm-yt-info > *{animation:sm-yt-in .6s cubic-bezier(.2,.7,.2,1) both}
.sm-yt.is-swap .sm-yt-info > *:nth-child(2){animation-delay:.05s}
.sm-yt.is-swap .sm-yt-info > *:nth-child(3){animation-delay:.1s}
@keyframes sm-yt-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

.sm-yt-tl-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px}
.sm-yt-count{margin:0;font:400 clamp(18px,1.8vw,24px)/1 var(--wp--preset--font-family--display);text-transform:uppercase;letter-spacing:.04em}
.sm-yt-count strong{color:var(--sm-wine-lt)}
.sm-yt-arrows{display:flex;gap:6px}
.sm-yt-arrows button{width:44px;height:44px;border:1px solid rgba(230,229,225,.35);background:transparent;color:var(--sm-bone);font-size:18px;transition:background .25s}
.sm-yt-arrows button:hover{background:var(--sm-wine);border-color:var(--sm-wine)}
.sm-yt-track{overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--sm-wine) transparent;margin-inline:calc(-1 * var(--sm-gut));padding-inline:var(--sm-gut)}
.sm-yt-track ol{list-style:none;margin:0;padding:28px 0 18px;display:flex;gap:0;width:max-content;position:relative}
.sm-yt-track ol::before,.sm-yt-track ol::after{content:"";position:absolute;top:34px;left:0;height:2px;background:rgba(230,229,225,.22);right:0}
.sm-yt-track ol::after{background:var(--sm-wine);right:auto;width:var(--sm-yt-fill,calc(100% - 433px));transition:width .8s cubic-bezier(.2,.7,.2,1)}
.sm-yt-track li{width:220px;flex:none;scroll-snap-align:center;position:relative;z-index:1}
.sm-yt-node{all:unset;box-sizing:border-box;display:grid;gap:10px;width:100%;padding-right:22px;position:relative}
.sm-yt-dot{width:14px;height:14px;border-radius:50%;background:var(--sm-ink);border:2px solid var(--sm-bone);display:block;transition:transform .3s,background .3s,border-color .3s}
.sm-yt-node:hover .sm-yt-dot{background:var(--sm-wine-lt);border-color:var(--sm-wine-lt)}
.sm-yt-node.is-active .sm-yt-dot{background:var(--sm-wine);border-color:var(--sm-wine);transform:scale(1.35);box-shadow:0 0 0 0 rgba(176,112,108,.6);animation:sm-yt-pulse 2.2s infinite}
@keyframes sm-yt-pulse{0%{box-shadow:0 0 0 0 rgba(176,112,108,.55)}70%{box-shadow:0 0 0 12px rgba(176,112,108,0)}100%{box-shadow:0 0 0 0 rgba(176,112,108,0)}}
.sm-yt-when{font:600 11px/1 var(--wp--preset--font-family--body);letter-spacing:.08em;text-transform:uppercase;color:#9d9c98}
.sm-yt-thumb{display:block;aspect-ratio:16/9;overflow:hidden;background:#000;outline:2px solid transparent;outline-offset:3px;transition:outline-color .3s}
.sm-yt-thumb img{width:100%;height:100%;object-fit:cover;filter:grayscale(.6) brightness(.75);transition:filter .4s,transform .8s cubic-bezier(.2,.7,.2,1)}
.sm-yt-node:hover .sm-yt-thumb img{filter:none;transform:scale(1.05)}
.sm-yt-node.is-active .sm-yt-thumb{outline-color:var(--sm-wine)}
.sm-yt-node.is-active .sm-yt-thumb img{filter:none}
.sm-yt-node:focus-visible .sm-yt-thumb{outline-color:var(--sm-wine-lt)}
.sm-yt-name{font-size:14px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sm-yt-name em{font:700 15px/1 var(--wp--preset--font-family--display);font-style:normal;color:var(--sm-wine-lt);margin-right:4px}
.sm-yt-node.is-active .sm-yt-name{color:#fff}
.sm-yt-new{position:absolute;top:-4px;left:28px;font:700 10px/1 var(--wp--preset--font-family--body);letter-spacing:.1em;text-transform:uppercase;background:var(--sm-wine);color:var(--sm-bone);padding:4px 7px}
.sm-yt-next-stop{display:grid;gap:10px;align-content:start;opacity:.6}
.sm-yt-next-stop .sm-yt-dot{border-style:dashed;background:transparent}
.sm-yt-next-stop .sm-yt-name{font-style:italic;padding-right:22px}
.sm-yt-empty{padding:40px 0;display:grid;gap:18px}
@media (max-width:900px){.sm-yt-stage{grid-template-columns:1fr}}
@media (max-width:560px){.sm-yt-track li{width:180px}.sm-yt-track ol::after{width:var(--sm-yt-fill,calc(100% - 353px))}}
@media (prefers-reduced-motion:reduce){.sm-yt-node.is-active .sm-yt-dot{animation:none}}
.sm-eyebrow{color:var(--sm-wine-lt)}

/* ===== Cursore: simbolo del logo (tasto di accensione con mirino) su tutto ciò che è cliccabile =====
   Punto del clic = centro del mirino (14 13). Versione @2x per schermi Retina. */
a[href],button,[role="button"],summary,label[for],.sm-menu-btn,.sm-yt-play,.sm-yt-node,.sm-yt-arrows button{
  cursor:url(assets/img/cursore-mirino.png) 14 13,pointer;
  cursor:-webkit-image-set(url(assets/img/cursore-mirino.png) 1x,url(assets/img/cursore-mirino@2x.png) 2x) 14 13,pointer;
  cursor:image-set(url(assets/img/cursore-mirino.png) 1x,url(assets/img/cursore-mirino@2x.png) 2x) 14 13,pointer}

/* ===== Cookie: avviso YouTube e link legali ===== */
.sm-yt-consent{position:absolute;inset:0;display:grid;place-content:center;gap:14px;text-align:center;padding:24px;background:#0b0d0e;color:var(--sm-bone)}
.sm-yt-consent p{margin:0;font-size:15px;max-width:34ch}
.sm-yt.no-consent .sm-yt-thumb{background:#0b0d0e}
.sm-foot-legal{flex-basis:100%;margin:0;font-size:12px}
.sm-foot-legal a{color:inherit}
