/* =========================================================================
   Savorita About us (pagina /about/)
   Specifica: docs/about-widget.md · Mockup: mockups/about-us/ (versione 2)

   Regole di scrittura (le stesse degli altri widget):
   - ogni selettore parte da .sv-abt.sv-abt (anche il riquadro dei video,
     che va in fondo al body, porta la radice addosso)
   - responsive a contenitore: ogni sezione è un contenitore "svab" (la
     radice no: l'anno della storia è sticky e il riquadro dei video fisso).
     Si parte dal telefono; da 700 misure più ampie, da 1000 computer
   - due lingue: data-l="en|it" sui testi, la radice dice quale vale
   - niente !important su display; chiuso vuol dire spento
   ========================================================================= */

.sv-abt.sv-abt{
  --svab-green:#087F23; --svab-green-l:#61C685; --svab-green-s:#e6f4e9;
  --svab-gold:#D39D00; --svab-gold-s:#fbf0cf; --svab-gold-t:#8a6700; --svab-yellow:#FFCC37;
  --svab-ink:#293241; --svab-muted:#5d6675; --svab-faint:#8d95a2; --svab-line:#e3e1d8; --svab-soft:#F7F6FE; --svab-cream:#FBF7EE;
  --svab-dark:linear-gradient(160deg,#1e2a33 0%,#123d26 55%,#0a6a20 100%);
  --svab-font:Nunito, "Nunito Sans", system-ui, sans-serif;
  --svab-r:26px; --svab-pad:clamp(16px,4.5vw,64px);
  font-family:var(--svab-font); font-weight:600; font-size:16px;
  line-height:1.4; /* il kit dà al body un'interlinea fissa (30px) che i testi piccoli erediterebbero */
  color:var(--svab-ink); text-align:left; -webkit-font-smoothing:antialiased;
}
.sv-abt.sv-abt *,
.sv-abt.sv-abt *::before,
.sv-abt.sv-abt *::after{ box-sizing:border-box; }
.sv-abt.sv-abt :is(h1,h2,h3,p,ul,ol,li,dl,dt,dd,figure,blockquote){
  margin:0; padding:0; font-family:inherit; text-transform:none; letter-spacing:inherit; color:inherit;
}
.sv-abt.sv-abt :is(h1,h2,h3){ font-weight:900; line-height:1.06; letter-spacing:-.025em; text-wrap:balance; }
.sv-abt.sv-abt :is(ul,ol){ list-style:none; }
.sv-abt.sv-abt img{ display:block; max-width:100%; height:auto; }
.sv-abt.sv-abt b,.sv-abt.sv-abt strong{ font-weight:800; }
.sv-abt.sv-abt em{ font-style:normal; }
.sv-abt.sv-abt a{ color:inherit; text-decoration:none; }
/* "html" in testa: un gradino sopra il kit di Elementor, sotto le nostre classi */
html .sv-abt.sv-abt button{
  font:inherit; color:inherit; background:none; border:0; padding:0; margin:0; cursor:pointer; box-shadow:none;
  text-transform:none; letter-spacing:inherit; line-height:inherit; min-height:0; white-space:normal; word-spacing:normal;
  text-align:inherit; -webkit-tap-highlight-color:transparent;
}
.sv-abt.sv-abt :focus-visible{ outline:3px solid var(--svab-yellow); outline-offset:3px; border-radius:6px; }
.sv-abt.sv-abt .svab-empty{ padding:12px 14px; border:2px dashed var(--svab-gold); border-radius:12px; background:#FFF9E8; color:#6b5100; font-size:13px; font-weight:800; }

/* ---------- lingua: vale quella della radice ---------- */
.sv-abt.sv-abt:not([data-lang="it"]) [data-l="it"],
.sv-abt.sv-abt[data-lang="it"] [data-l="en"]{ display:none; }

/* ---------- pezzi comuni ---------- */
.sv-abt.sv-abt-wrap{ width:100%; }
.sv-abt.sv-abt .svab-sec{ position:relative; background:#fff; container-type:inline-size; container-name:svab; scroll-margin-top:var(--sv-bar-h,76px); }
.sv-abt.sv-abt .svab-wrap{ position:relative; width:100%; max-width:1240px; margin:0 auto; padding-inline:var(--svab-pad); }
.sv-abt.sv-abt .svab-eye{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; color:var(--svab-green); }
.sv-abt.sv-abt .svab-eye.is-dark{ color:var(--svab-green-l); }
.sv-abt.sv-abt .svab-heart{ flex:none; width:20px; height:20px; object-fit:contain; }
.sv-abt.sv-abt .svab-h2{ margin-top:12px; font-size:clamp(32px,7.5vw,50px); }
.sv-abt.sv-abt .svab-sub{ margin-top:12px; font-size:16.5px; line-height:1.55; color:var(--svab-muted); max-width:40em; }
.sv-abt.sv-abt .svab-br{ color:var(--svab-green); font-weight:900; letter-spacing:-.03em; }
.sv-abt.sv-abt .svab-hero .svab-br{ color:var(--svab-green-l); }

/* ---------- 1. apertura ---------- */
.sv-abt.sv-abt .svab-hero{ display:flex; align-items:flex-end; overflow:hidden; color:#fff; background:#123d26; padding-block:calc(var(--sv-bar-h,76px) + 40px) 46px; }
.sv-abt.sv-abt .svab-h-bg{ position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; object-position:50% 30%; }
.sv-abt.sv-abt .svab-hero::before{ content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(0deg,rgba(14,32,22,.96) 0%,rgba(14,32,22,.86) 55%,rgba(14,32,22,.3) 100%); }
.sv-abt.sv-abt .svab-hero .svab-wrap{ z-index:2; }
.sv-abt.sv-abt .svab-top{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.sv-abt.sv-abt .svab-h1{ margin-top:18px; font-size:clamp(36px,10vw,72px); max-width:12.5em; }
.sv-abt.sv-abt .svab-h1 em{ color:var(--svab-green-l); }
.sv-abt.sv-abt .svab-h1 em.svab-y{ color:var(--svab-yellow); }
.sv-abt.sv-abt .svab-mis{ margin-top:20px; max-width:38em; font-size:16.5px; line-height:1.55; color:rgba(255,255,255,.86); }
.sv-abt.sv-abt .svab-fd{ display:inline-flex; align-items:center; gap:14px; margin-top:26px; padding:7px 18px 7px 7px; border-radius:999px; background:rgba(255,255,255,.14); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); box-shadow:inset 0 0 0 1px rgba(255,255,255,.22); color:#fff; font-weight:800; font-size:14px; line-height:1.35; transition:background .2s; }
.sv-abt.sv-abt .svab-fd:hover{ background:rgba(255,255,255,.22); }
.sv-abt.sv-abt .svab-fd em{ color:var(--svab-green-l); font-weight:900; }
.sv-abt.sv-abt .svab-fd-faces{ display:flex; flex:none; }
.sv-abt.sv-abt .svab-fd-faces img{ width:40px; height:40px; border-radius:50%; object-fit:cover; object-position:50% 18%; box-shadow:0 0 0 2px #fff; }
.sv-abt.sv-abt .svab-fd-faces img + img{ margin-left:-12px; }

.sv-abt.sv-abt .svab-lang{ display:inline-flex; flex:none; padding:3px; border-radius:999px; background:rgba(255,255,255,.14); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); box-shadow:inset 0 0 0 1px rgba(255,255,255,.25); }
html .sv-abt.sv-abt .svab-lang button{ display:inline-flex; align-items:center; gap:7px; padding:6px 12px 6px 7px; border-radius:999px; font:800 13px/1 var(--svab-font); letter-spacing:.6px; color:#fff; }
html .sv-abt.sv-abt .svab-lang button[aria-pressed="true"]{ background:#fff; color:var(--svab-ink); }
.sv-abt.sv-abt .svab-flag{ width:20px; height:20px; border-radius:50%; overflow:hidden; flex:none; box-shadow:0 0 0 1px rgba(41,50,65,.12); }
.sv-abt.sv-abt .svab-flag svg{ display:block; width:100%; height:100%; }

/* ---------- 2. storia ---------- */
.sv-abt.sv-abt .svab-st{ background:var(--svab-soft); padding-block:72px 80px; }
.sv-abt.sv-abt .svab-st .svab-wrap{ display:grid; grid-template-columns:minmax(0,1fr); }
.sv-abt.sv-abt .svab-year{ position:sticky; top:calc(var(--sv-bar-h,76px) + 4px); z-index:5; display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; margin:26px -8px 18px; padding:10px 16px; border-radius:18px; background:rgba(255,255,255,.86); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); box-shadow:0 10px 24px -18px rgba(41,50,65,.5); }
.sv-abt.sv-abt .svab-year-n{ display:inline-block; font-size:40px; font-weight:900; letter-spacing:-.06em; line-height:.95; color:var(--svab-green); font-variant-numeric:tabular-nums; transition:transform .35s,opacity .35s; }
.sv-abt.sv-abt .svab-year-n.is-flip{ transform:translateY(-14px); opacity:0; }
.sv-abt.sv-abt .svab-year-m{ font-size:15px; font-weight:900; color:var(--svab-muted); }
.sv-abt.sv-abt .svab-rail{ display:flex; gap:6px; flex-basis:100%; margin-top:4px; }
.sv-abt.sv-abt .svab-rail i{ flex:1; height:5px; border-radius:3px; background:rgba(8,127,35,.16); transition:background .3s; }
.sv-abt.sv-abt .svab-rail i.is-on{ background:var(--svab-green); }
.sv-abt.sv-abt .svab-ms{ position:relative; }
.sv-abt.sv-abt .svab-ms::before{ content:""; position:absolute; left:15px; top:30px; bottom:30px; width:2px; background:repeating-linear-gradient(to bottom,rgba(8,127,35,.35) 0 8px,transparent 8px 16px); }
.sv-abt.sv-abt .svab-m{ position:relative; padding-left:46px; }
.sv-abt.sv-abt .svab-m + .svab-m{ margin-top:22px; }
.sv-abt.sv-abt .svab-m-dot{ position:absolute; left:3px; top:22px; width:26px; height:26px; border-radius:50%; background:#fff; box-shadow:0 0 0 2px rgba(8,127,35,.35); display:grid; place-items:center; transition:box-shadow .3s; }
.sv-abt.sv-abt .svab-m-dot::after{ content:""; width:10px; height:10px; border-radius:50%; background:rgba(8,127,35,.4); transition:background .3s; }
.sv-abt.sv-abt .svab-m.is-on .svab-m-dot{ box-shadow:0 0 0 2px var(--svab-green),0 0 0 8px rgba(8,127,35,.12); }
.sv-abt.sv-abt .svab-m.is-on .svab-m-dot::after{ background:var(--svab-green); }
.sv-abt.sv-abt .svab-m-c{ background:#fff; border-radius:22px; padding:22px 20px; box-shadow:0 0 0 1px rgba(41,50,65,.07),0 18px 40px -32px rgba(41,50,65,.5); }
.sv-abt.sv-abt .svab-when{ display:inline-block; font-size:13px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; color:var(--svab-green); }
.sv-abt.sv-abt .svab-m h3{ margin-top:6px; font-size:21px; letter-spacing:-.015em; line-height:1.15; }
.sv-abt.sv-abt .svab-m-p{ margin-top:12px; font-size:15.5px; line-height:1.6; color:var(--svab-muted); }
.sv-abt.sv-abt .svab-m.is-today .svab-m-c{ background:var(--svab-dark); color:#fff; }
.sv-abt.sv-abt .svab-m.is-today .svab-when{ color:var(--svab-green-l); }
.sv-abt.sv-abt .svab-m.is-today .svab-m-p{ color:rgba(255,255,255,.82); }
.sv-abt.sv-abt .svab-m.is-today .svab-m-dot{ background:var(--svab-green); }
.sv-abt.sv-abt .svab-m.is-today .svab-m-dot::after{ background:#fff; }
.sv-abt.sv-abt .svab-logos{ display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; margin-top:18px; padding-top:16px; border-top:1px dashed var(--svab-line); }
.sv-abt.sv-abt .svab-logos img{ width:auto; height:40px; max-width:170px; object-fit:contain; filter:grayscale(1); opacity:.75; transition:filter .2s,opacity .2s; }
.sv-abt.sv-abt .svab-logos img:hover{ filter:none; opacity:1; }
/* i marchi del 2024: al massimo 6, tre righe sul telefono, due da 700 */
.sv-abt.sv-abt .svab-logos.is-brands{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 20px; justify-items:start; }
.sv-abt.sv-abt .svab-logos.is-brands img{ height:46px; max-width:100%; filter:none; opacity:1; }
.sv-abt.sv-abt .svab-logos + .svab-logos{ border-top:0; padding-top:0; }

/* video della tappa */
.sv-abt.sv-abt .svab-bv{ margin-top:18px; border-radius:18px; overflow:hidden; background:#14201a; color:#fff; }
.sv-abt.sv-abt .svab-bv-c{ position:relative; display:block; aspect-ratio:16/9; background:#000; overflow:hidden; color:#fff; }
.sv-abt.sv-abt .svab-bv-c img{ width:100%; height:100%; object-fit:cover; object-position:50% 15%; opacity:.74; transition:opacity .25s,transform .5s; }
.sv-abt.sv-abt .svab-bv-c:hover img{ opacity:.9; transform:scale(1.03); }
.sv-abt.sv-abt .svab-play{ position:absolute; inset:0; margin:auto; width:56px; height:56px; border-radius:50%; background:#fff; display:grid; place-items:center; box-shadow:0 10px 30px -8px rgba(0,0,0,.6); }
.sv-abt.sv-abt .svab-play::before{ content:""; margin-left:5px; border-left:18px solid var(--svab-ink); border-top:11px solid transparent; border-bottom:11px solid transparent; }
.sv-abt.sv-abt .svab-bv-t{ position:absolute; left:14px; right:14px; bottom:12px; font-weight:900; font-size:17px; line-height:1.2; text-shadow:0 2px 14px rgba(0,0,0,.6); }
.sv-abt.sv-abt .svab-bv-t small{ display:block; margin-bottom:4px; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--svab-green-l); }
.sv-abt.sv-abt .svab-bv-f{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 18px; padding:12px 14px; }
.sv-abt.sv-abt .svab-bv-f p{ flex:1 1 240px; font-size:14px; line-height:1.45; color:rgba(255,255,255,.75); }
.sv-abt.sv-abt .svab-out{ display:inline-flex; align-items:center; gap:6px; height:38px; padding:0 16px; border-radius:999px; background:#fff; color:var(--svab-ink); font-weight:900; font-size:14px; white-space:nowrap; transition:background .2s; }
.sv-abt.sv-abt .svab-out:hover{ background:var(--svab-green-l); }

/* ---------- 3. persone ---------- */
.sv-abt.sv-abt .svab-pp{ background:var(--svab-cream); padding-block:72px 70px; }
.sv-abt.sv-abt .svab-pp-top{ display:grid; grid-template-columns:minmax(0,1fr); gap:26px; }
.sv-abt.sv-abt .svab-pp-photo{ position:relative; margin:0; }
.sv-abt.sv-abt .svab-pp-f{ border-radius:var(--svab-r); overflow:hidden; aspect-ratio:4/3.3; box-shadow:0 34px 60px -40px rgba(41,50,65,.6); }
.sv-abt.sv-abt .svab-pp-f img{ width:100%; height:100%; object-fit:cover; object-position:42% 50%; }
.sv-abt.sv-abt .svab-tag{ position:absolute; display:flex; align-items:flex-end; gap:4px; font-family:"Gloria Hallelujah","Comic Sans MS",cursive; font-size:19px; line-height:1; color:var(--svab-green); pointer-events:none; transform:rotate(-4deg); }
.sv-abt.sv-abt .svab-tag svg{ flex:none; width:40px; height:28px; fill:none; stroke:var(--svab-green); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.sv-abt.sv-abt .svab-tag.is-a{ left:52%; top:7%; }
.sv-abt.sv-abt .svab-tag.is-s{ left:66%; top:40%; transform:rotate(3deg); }
.sv-abt.sv-abt .svab-fc-row{ display:grid; grid-template-columns:minmax(0,1fr); gap:16px; margin-top:28px; }
.sv-abt.sv-abt .svab-fc{ display:grid; grid-template-columns:minmax(0,1fr); background:#fff; border-radius:var(--svab-r); overflow:hidden; box-shadow:0 0 0 1px var(--svab-line),0 24px 50px -40px rgba(41,50,65,.6); }
.sv-abt.sv-abt .svab-fc-pic img{ width:100%; height:100%; aspect-ratio:4/3.3; object-fit:cover; object-position:50% 20%; }
.sv-abt.sv-abt .svab-fc-b{ display:flex; flex-direction:column; align-items:flex-start; min-width:0; padding:20px; }
.sv-abt.sv-abt .svab-role{ display:inline-block; padding:7px 14px; border-radius:999px; background:var(--svab-green-s); color:var(--svab-green); font-size:12.5px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.sv-abt.sv-abt .svab-fc.is-gold .svab-role{ background:var(--svab-gold-s); color:var(--svab-gold-t); }
.sv-abt.sv-abt .svab-fc h3{ margin-top:14px; font-size:27px; }
.sv-abt.sv-abt .svab-fc dl{ display:grid; gap:10px; width:100%; margin:18px 0 22px; }
.sv-abt.sv-abt .svab-fc dl div{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding-bottom:10px; border-bottom:1px solid var(--svab-line); }
.sv-abt.sv-abt .svab-fc dt{ flex:none; color:var(--svab-faint); font-weight:900; font-size:11.5px; letter-spacing:.12em; text-transform:uppercase; }
.sv-abt.sv-abt .svab-fc dd{ font-weight:900; font-size:15px; text-align:right; }
.sv-abt.sv-abt .svab-li{ display:inline-flex; align-items:center; gap:9px; height:40px; margin-top:auto; padding:0 16px; border-radius:999px; background:var(--svab-ink); color:#fff; font-weight:900; font-size:14px; transition:background .2s; }
.sv-abt.sv-abt .svab-li:hover{ background:#0a66c2; }
.sv-abt.sv-abt .svab-li svg{ width:17px; height:17px; }
.sv-abt.sv-abt .svab-team{ margin-top:34px; }
.sv-abt.sv-abt .svab-team ul{ display:grid; grid-template-columns:minmax(0,1fr); gap:12px; margin-top:16px; }
.sv-abt.sv-abt .svab-tm{ display:flex; gap:16px; align-items:flex-start; padding:14px; border-radius:20px; background:#fff; box-shadow:0 0 0 1px #e6e8ec; transition:box-shadow .2s; }
.sv-abt.sv-abt .svab-tm:hover{ box-shadow:0 0 0 1.5px var(--svab-green-l),0 16px 30px -24px rgba(41,50,65,.6); }
.sv-abt.sv-abt .svab-tm-pic{ flex:none; width:64px; height:64px; border-radius:50%; overflow:hidden; background:var(--svab-green); }
.sv-abt.sv-abt .svab-tm-pic img{ width:100%; height:100%; object-fit:cover; object-position:50% 15%; filter:grayscale(1) contrast(1.1); mix-blend-mode:luminosity; opacity:.92; transition:filter .3s,opacity .3s; }
.sv-abt.sv-abt .svab-tm:hover .svab-tm-pic img{ filter:none; mix-blend-mode:normal; opacity:1; }
.sv-abt.sv-abt .svab-tm-b{ flex:1; min-width:0; }
.sv-abt.sv-abt .svab-tm-b b{ display:block; font-size:18px; font-weight:900; letter-spacing:-.01em; }
.sv-abt.sv-abt .svab-tm-r{ display:inline-block; margin-top:5px; font-size:12px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; color:var(--svab-green); }
.sv-abt.sv-abt .svab-tm-b p{ margin-top:8px; font-size:14px; line-height:1.45; color:var(--svab-muted); }
.sv-abt.sv-abt .svab-tm-li{ flex:none; width:34px; height:34px; border-radius:50%; display:grid; place-items:center; color:var(--svab-faint); transition:color .2s,background .2s; }
.sv-abt.sv-abt .svab-tm-li:hover{ color:#fff; background:#0a66c2; }
.sv-abt.sv-abt .svab-tm-li svg{ width:16px; height:16px; }

/* ---------- 4. recensioni: carosello ---------- */
.sv-abt.sv-abt .svab-rv{ padding-block:72px 20px; }
.sv-abt.sv-abt .svab-rv-head{ display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:18px 40px; }
.sv-abt.sv-abt .svab-rv-ctl{ display:flex; align-items:center; gap:14px; width:100%; }
.sv-abt.sv-abt .svab-seg{ flex:1; display:inline-flex; padding:4px; border-radius:999px; background:var(--svab-soft); box-shadow:inset 0 0 0 1px rgba(41,50,65,.08); }
html .sv-abt.sv-abt .svab-seg button{ flex:1; padding:10px 8px; border-radius:999px; font:900 13px/1.1 var(--svab-font); color:var(--svab-muted); white-space:nowrap; text-align:center; }
html .sv-abt.sv-abt .svab-seg button[aria-selected="true"]{ background:var(--svab-green); color:#fff; }
.sv-abt.sv-abt .svab-car{ display:none; gap:8px; }
html .sv-abt.sv-abt .svab-car button{ width:46px; height:46px; border-radius:50%; background:var(--svab-ink); color:#fff; font:900 20px/1 var(--svab-font); text-align:center; transition:opacity .2s,background .2s; }
html .sv-abt.sv-abt .svab-car button:hover{ background:var(--svab-green); }
html .sv-abt.sv-abt .svab-car button:disabled{ opacity:.25; cursor:default; background:var(--svab-ink); }
.sv-abt.sv-abt .svab-rl{ display:grid; grid-auto-flow:column; grid-auto-columns:84%; gap:12px; margin:24px calc(var(--svab-pad) * -1) 0; padding:0 var(--svab-pad) 8px; scroll-padding-inline:var(--svab-pad); overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; }
.sv-abt.sv-abt .svab-rl::-webkit-scrollbar{ display:none; }
.sv-abt.sv-abt .svab-rc{ position:relative; display:flex; flex-direction:column; gap:22px; padding:26px 24px 22px; border-radius:22px; background:var(--svab-cream); scroll-snap-align:start; }
.sv-abt.sv-abt .svab-rc::before{ content:"“"; position:absolute; right:20px; top:4px; font-size:84px; font-weight:900; line-height:1; color:rgba(8,127,35,.14); }
.sv-abt.sv-abt .svab-rc blockquote{ flex:1; font-size:16px; line-height:1.55; font-weight:700; color:var(--svab-ink); border:0; quotes:none; }
.sv-abt.sv-abt .svab-rl.is-p .svab-rc{ background:#fff; box-shadow:0 0 0 1px var(--svab-line); }
.sv-abt.sv-abt .svab-rl.is-p .svab-rc blockquote{ font-size:15.5px; }
.sv-abt.sv-abt .svab-rc-w{ display:flex; align-items:center; gap:12px; padding-top:16px; border-top:1px solid rgba(41,50,65,.1); }
.sv-abt.sv-abt .svab-rc-w b{ display:block; font-size:15.5px; font-weight:900; }
.sv-abt.sv-abt .svab-rc-w > span:last-child span{ display:block; font-size:13px; color:var(--svab-muted); font-weight:700; line-height:1.3; }
.sv-abt.sv-abt .svab-rc-i{ flex:none; width:42px; height:42px; border-radius:50%; display:grid; place-items:center; color:#fff; font-weight:900; font-size:17px; }
.sv-abt.sv-abt .svab-rc-l{ flex:none; width:64px; height:48px; display:grid; place-items:center; }
.sv-abt.sv-abt .svab-rc-l img{ max-width:100%; max-height:100%; object-fit:contain; }
.sv-abt.sv-abt .svab-rv-n{ margin-top:14px; font-size:13px; color:var(--svab-faint); font-weight:700; }

/* ---------- 5. contatti ---------- */
.sv-abt.sv-abt .svab-c{ padding-block:30px 72px; }
.sv-abt.sv-abt .svab-c-row{ display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.sv-abt.sv-abt .svab-cl{ display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px; border-radius:var(--svab-r); background:var(--svab-cream); transition:transform .2s; }
.sv-abt.sv-abt .svab-cl:hover{ transform:translateY(-3px); }
.sv-abt.sv-abt .svab-cl.is-dark{ background:var(--svab-dark); color:#fff; }
.sv-abt.sv-abt .svab-cl-q{ display:block; font-size:16px; line-height:1.45; color:var(--svab-muted); }
.sv-abt.sv-abt .svab-cl.is-dark .svab-cl-q{ color:rgba(255,255,255,.75); }
.sv-abt.sv-abt .svab-cl b{ display:block; margin-top:4px; font-size:19px; font-weight:900; letter-spacing:-.01em; }
.sv-abt.sv-abt .svab-arr{ flex:none; width:44px; height:44px; border-radius:50%; background:var(--svab-green); color:#fff; display:grid; place-items:center; }
.sv-abt.sv-abt .svab-cl.is-dark .svab-arr{ background:var(--svab-green-l); color:var(--svab-ink); }
.sv-abt.sv-abt .svab-arr svg{ width:18px; height:18px; }

/* ---------- riquadro del video (in fondo al body, con la radice addosso) ---------- */
.sv-abt.svab-lb{ position:fixed; inset:0; z-index:var(--sv-z-fs,2147483000); display:grid; place-items:center; padding:20px; background:rgba(10,16,14,.9); }
.sv-abt.svab-lb .svab-lb-box{ width:min(1040px,100%); }
.sv-abt.svab-lb .svab-lb-v{ position:relative; aspect-ratio:16/9; border-radius:16px; overflow:hidden; background:#000; }
.sv-abt.svab-lb iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.sv-abt.svab-lb .svab-lb-bar{ display:flex; justify-content:flex-end; margin-top:12px; }
html .sv-abt.svab-lb .svab-lb-x{ width:46px; height:46px; border-radius:50%; background:rgba(255,255,255,.16); color:#fff; font:400 28px/1 var(--svab-font); text-align:center; }

/* ---------- da 700: misure più ampie ---------- */
@container svab (min-width:700px){
  .sv-abt.sv-abt .svab-hero{ padding-block:calc(var(--sv-bar-h,76px) + 60px) 64px; }
  .sv-abt.sv-abt .svab-mis{ font-size:18px; }
  .sv-abt.sv-abt .svab-fc{ grid-template-columns:minmax(0,5fr) minmax(0,6fr); }
  .sv-abt.sv-abt .svab-fc-pic img{ aspect-ratio:auto; min-height:320px; }
  .sv-abt.sv-abt .svab-team ul{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sv-abt.sv-abt .svab-rl{ grid-auto-columns:46%; }
  .sv-abt.sv-abt .svab-m-c{ padding:26px 30px; }
  .sv-abt.sv-abt .svab-logos img{ height:48px; }
  .sv-abt.sv-abt .svab-logos.is-brands{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .sv-abt.sv-abt .svab-logos.is-brands img{ height:58px; }
  .sv-abt.sv-abt .svab-c-row{ grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr)); gap:18px; }
  .sv-abt.sv-abt .svab-cl{ padding:30px 32px; }
  .sv-abt.sv-abt .svab-cl b{ font-size:22px; }
  .sv-abt.sv-abt .svab-arr{ width:52px; height:52px; }
}

/* ---------- da 1000: computer ---------- */
@container svab (min-width:1000px){
  .sv-abt.sv-abt .svab-hero{ min-height:min(760px,100vh); padding-block:calc(var(--sv-bar-h,76px) + 60px) 76px; }
  .sv-abt.sv-abt .svab-h-bg{ object-position:50% 58%; }
  .sv-abt.sv-abt .svab-hero::before{ background:linear-gradient(90deg,rgba(14,32,22,.92) 0%,rgba(14,32,22,.66) 50%,rgba(14,32,22,.08) 100%); }
  .sv-abt.sv-abt .svab-h1{ margin-top:24px; font-size:clamp(48px,5vw,72px); }
  .sv-abt.sv-abt .svab-mis{ margin-top:22px; font-size:19px; }
  .sv-abt.sv-abt .svab-fd{ margin-top:32px; padding-right:22px; font-size:15px; }
  .sv-abt.sv-abt .svab-fd-faces img{ width:46px; height:46px; }
  .sv-abt.sv-abt .svab-h2{ font-size:clamp(36px,3.8vw,52px); }

  .sv-abt.sv-abt .svab-st{ padding-block:110px; }
  .sv-abt.sv-abt .svab-st .svab-wrap{ grid-template-columns:minmax(0,4fr) minmax(0,7fr); grid-template-rows:auto 1fr; column-gap:clamp(36px,5vw,80px); align-items:start; }
  .sv-abt.sv-abt .svab-st-head{ grid-column:1; grid-row:1; }
  .sv-abt.sv-abt .svab-year{ grid-column:1; grid-row:2; top:calc(var(--sv-bar-h,76px) + 40px); align-self:start; display:flex; flex-wrap:wrap; align-items:baseline; margin:34px 0 0; padding:0; border-radius:0; background:none; -webkit-backdrop-filter:none; backdrop-filter:none; box-shadow:none; }
  .sv-abt.sv-abt .svab-year-n{ font-size:clamp(84px,10vw,150px); line-height:.9; }
  .sv-abt.sv-abt .svab-year-m{ font-size:17px; }
  .sv-abt.sv-abt .svab-rail{ max-width:340px; margin-top:22px; }
  .sv-abt.sv-abt .svab-ms{ grid-column:2; grid-row:1 / span 2; }
  .sv-abt.sv-abt .svab-ms::before{ left:23px; }
  .sv-abt.sv-abt .svab-m{ padding-left:70px; }
  .sv-abt.sv-abt .svab-m + .svab-m{ margin-top:26px; }
  .sv-abt.sv-abt .svab-m-dot{ left:8px; top:24px; width:32px; height:32px; }
  .sv-abt.sv-abt .svab-m h3{ font-size:24px; }
  .sv-abt.sv-abt .svab-m-p{ font-size:16.5px; }
  .sv-abt.sv-abt .svab-play{ width:72px; height:72px; }
  .sv-abt.sv-abt .svab-play::before{ margin-left:6px; border-left-width:22px; border-top-width:13px; border-bottom-width:13px; }
  .sv-abt.sv-abt .svab-bv-t{ left:20px; bottom:16px; font-size:21px; }
  .sv-abt.sv-abt .svab-bv-f{ padding:14px 18px; }

  .sv-abt.sv-abt .svab-pp{ padding-block:100px 90px; }
  .sv-abt.sv-abt .svab-sub{ font-size:17px; }
  .sv-abt.sv-abt .svab-fc-row{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-top:38px; }
  .sv-abt.sv-abt .svab-pp-top{ grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(32px,4.5cqw,64px); align-items:center; }
  .sv-abt.sv-abt .svab-pp-f{ aspect-ratio:3/2; }
  .sv-abt.sv-abt .svab-pp-f img{ object-position:50% 50%; }
  .sv-abt.sv-abt .svab-tag{ font-size:clamp(20px,2cqw,28px); }
  .sv-abt.sv-abt .svab-tag svg{ width:62px; height:40px; }
  .sv-abt.sv-abt .svab-tag.is-a{ left:43%; top:9%; }
  .sv-abt.sv-abt .svab-tag.is-s{ left:63%; top:37%; }
  .sv-abt.sv-abt .svab-fc-pic img{ min-height:360px; }
  .sv-abt.sv-abt .svab-fc-b{ padding:26px 26px 24px; }
  .sv-abt.sv-abt .svab-fc h3{ font-size:30px; }
  .sv-abt.sv-abt .svab-team{ margin-top:44px; }
  .sv-abt.sv-abt .svab-team ul{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
  .sv-abt.sv-abt .svab-tm{ padding:18px; }
  .sv-abt.sv-abt .svab-tm-pic{ width:76px; height:76px; }

  .sv-abt.sv-abt .svab-rv{ padding-block:96px 30px; }
  .sv-abt.sv-abt .svab-rv-ctl{ width:auto; }
  .sv-abt.sv-abt .svab-seg{ flex:none; }
  html .sv-abt.sv-abt .svab-seg button{ flex:none; padding:10px 18px; font-size:14px; }
  .sv-abt.sv-abt .svab-car{ display:flex; }
  .sv-abt.sv-abt .svab-rl{ grid-auto-columns:calc((100% - 36px) / 3); gap:18px; margin:34px 0 0; padding:0 0 6px; scroll-padding-inline:0; }
  .sv-abt.sv-abt .svab-rc blockquote{ font-size:16.5px; }

  .sv-abt.sv-abt .svab-c{ padding-block:40px 100px; }
}

@media (prefers-reduced-motion:reduce){
  .sv-abt.sv-abt *{ transition:none; animation:none; }
  .sv-abt.sv-abt .svab-rl{ scroll-behavior:auto; }
}
