/* Caritas Italiana · Bilancio di Missione 2025 — foglio di stile unico.
   Ordine: font · token · base · tipografia · pulsanti · header · footer · modale · pagine (fasi successive). */

/* ---------- Font (self-hosting, licenza OFL) ---------- */
@font-face{font-family:"Bebas Neue";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/bebas-neue-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/inter-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/inter-latin-700-normal.woff2) format("woff2")}

/* ---------- Token ---------- */
:root{
  /* colori */
  --red:#971B21; --red-dark:#6F1419; --ink:#0A0A0A; --grey:#444445;
  --beige:#EFE7DD; --sand:#F7F2EC; --line:#E6DDD2; --rose:#C9A9A0; --white:#FFFFFF;
  /* raggi */
  --r-xs:4px; --r-sm:8px; --r-md:12px; --r-bubble:24px 24px 24px 0; --r-round:50%;
  /* ombre */
  --sh-card:0 10px 24px rgba(10,10,10,.10);
  --sh-card-hover:0 16px 36px rgba(10,10,10,.14);
  --sh-on-media:0 10px 24px rgba(10,10,10,.25);
  /* layout */
  --container:1200px; --gutter:clamp(20px,5vw,64px); --section-y:clamp(64px,9vw,120px);
  --wrap:calc(var(--container) + 2 * 64px);
  /* font */
  --f-display:"Bebas Neue",sans-serif;
  --f-text:Inter,sans-serif;
  /* altezza reale dell'header, aggiornata dal JS */
  --hdr:110px;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:calc(var(--hdr) + 12px)}
body{margin:0;background:var(--white);color:var(--ink);font:400 16px/1.6 var(--f-text);-webkit-font-smoothing:antialiased;font-feature-settings:"calt" 0}
h1,h2,h3,h4,p{margin:0}
img,video{max-width:100%;display:block}
a{color:var(--red)}
a:hover{color:var(--red-dark)}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cb-wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}

@keyframes cb-fill{to{width:100%}}
@keyframes cb-pulse{0%{box-shadow:0 0 0 0 rgba(151,27,33,.6)}70%{box-shadow:0 0 0 22px rgba(151,27,33,0)}100%{box-shadow:0 0 0 0 rgba(151,27,33,0)}}
@keyframes cb-kb{from{transform:scale(1)}to{transform:scale(1.08)}}
@keyframes cb-marq{to{transform:translateX(-50%)}}
@keyframes cb-ring{from{transform:scale(1);opacity:.9}to{transform:scale(2.8);opacity:0}}
.cb-kb{animation:cb-kb 22s ease-in-out infinite alternate}

/* ---------- Tipografia ---------- */
.cb-hero-title{font:400 clamp(52px,8vw,112px)/.9 var(--f-display);text-transform:uppercase}
.cb-d1{font:400 clamp(44px,6vw,88px)/.92 var(--f-display);text-transform:uppercase}
.cb-d2{font:400 clamp(40px,5.2vw,76px)/.95 var(--f-display);text-transform:uppercase}
.cb-h2{font:400 clamp(34px,4.4vw,56px)/1 var(--f-display);text-transform:uppercase}
.cb-h3{font:400 clamp(26px,2.6vw,36px)/1 var(--f-display);text-transform:uppercase}
.cb-label{font:400 20px/1 var(--f-display);letter-spacing:.06em;text-transform:uppercase;color:var(--red)}
.cb-dark .cb-label{color:var(--beige)}
.cb-num-xl{font:400 clamp(72px,16vw,220px)/.92 var(--f-display)}
.cb-num-l{font:400 clamp(56px,8vw,112px)/.9 var(--f-display)}
.cb-num-m{font:400 clamp(44px,5.6vw,80px)/.9 var(--f-display)}
.cb-num-s{font:400 clamp(32px,3.4vw,48px)/1 var(--f-display)}
.cb-lead{font:400 clamp(17px,1.5vw,20px)/1.6 var(--f-text)}
.cb-small{font:600 14px/1.5 var(--f-text)}
.cb-note{font:italic 400 13px/1.45 var(--f-text)}
.cb-count,[class*="cb-num-"]{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}

/* ---------- Pulsanti ---------- */
.cb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border:2px solid var(--red);border-radius:var(--r-xs);font:700 15px/1.1 var(--f-text);text-decoration:none;text-align:center;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.cb-btn--primario{background:var(--red);color:var(--white)}
.cb-btn--primario:hover{background:var(--red-dark);border-color:var(--red-dark);color:var(--white)}
.cb-btn--secondario{background:transparent;color:var(--red)}
.cb-btn--secondario:hover{background:var(--red);color:var(--white)}
.cb-btn--su_scuro{background:var(--white);border-color:var(--white);color:var(--red)}
.cb-btn--su_scuro:hover{background:var(--beige);border-color:var(--beige);color:var(--red)}
.cb-btn--piccolo{min-height:36px;padding:0 14px;font-size:13px}

/* ---------- Header ---------- */
.cb-hdr-spacer{height:var(--hdr-spacer,110px)}
.cb-hdr{position:fixed;top:0;left:0;right:0;z-index:60}
.admin-bar .cb-hdr{top:var(--wp-admin--admin-bar--height,32px)}

.cb-svc{background:var(--red-dark);color:var(--beige);font:600 12.5px/1.3 var(--f-text);overflow:hidden;max-height:80px;transition:max-height .3s ease}
.cb-hdr.is-scrolled .cb-svc{max-height:0}
.cb-svc__in{max-width:var(--wrap);margin:0 auto;padding:6px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:8px 18px}
.cb-svc__links{display:flex;flex-wrap:wrap;gap:4px 18px;align-items:center;min-width:0}
.cb-svc__links a{color:inherit;text-decoration:none;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.cb-svc__links a:hover{color:var(--white);text-decoration:underline}

.cb-social{display:flex;align-items:center;flex-wrap:wrap}
.cb-social a{border-radius:var(--r-round);display:grid;place-items:center;color:var(--white);transition:background .2s}
.cb-social a:hover{background:rgba(255,255,255,.15)}
.cb-social img{display:block}
.cb-social--sm{gap:4px;flex:none;flex-wrap:nowrap}
.cb-social--sm a{width:24px;height:24px;border:1px solid rgba(255,255,255,.35)}
.cb-social--sm img{width:12px;height:12px}
.cb-social--lg{gap:8px}
.cb-social--lg a{width:36px;height:36px;border:1px solid rgba(255,255,255,.4)}
.cb-social--lg img{width:15px;height:15px}

.cb-head{background:rgba(255,255,255,.97);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.cb-head__in{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter);min-height:76px;display:flex;align-items:center;gap:12px 24px}
.cb-head__logo{display:block;flex:none}
.cb-head__logo img{height:60px;width:auto;display:block}

.cb-nav{margin-left:auto;display:flex;align-items:center;gap:22px}
.cb-nav a{text-decoration:none;font:600 14.5px/1.2 var(--f-text);color:var(--ink);padding:6px 0;border-bottom:3px solid var(--line);transition:color .2s,border-color .2s}
.cb-nav a:hover,.cb-nav a.is-active{color:var(--red)}
.cb-nav a.is-active{border-bottom-color:var(--red)}

.cb-dona{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;margin-left:clamp(8px,2vw,24px);min-height:44px;padding:0 22px;border-radius:var(--r-xs);background:var(--red);color:var(--white);text-decoration:none;font:700 15px/1 var(--f-text);letter-spacing:.04em;text-transform:uppercase;box-shadow:var(--sh-card);transition:background .2s}
.cb-dona:hover{background:var(--red-dark);color:var(--white)}
.cb-heart{width:16px;height:16px;fill:currentColor;flex:none}

.cb-burger{display:none;flex:none;width:44px;height:44px;border:0;background:none;cursor:pointer;padding:10px;align-content:center;gap:5px}
.cb-burger span{display:block;height:2px;background:var(--red);transition:transform .2s,opacity .2s}
.cb-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.cb-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.cb-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.cb-panel{border-top:1px solid var(--line);background:var(--white);box-shadow:var(--sh-card-hover)}
.cb-panel__in{max-width:var(--wrap);margin:0 auto;padding:8px var(--gutter) 20px;display:grid}
.cb-panel a{display:flex;align-items:center;min-height:52px;text-decoration:none;font:600 16px/1.2 var(--f-text);color:var(--ink);border-bottom:1px solid var(--line)}
.cb-panel a.is-active{color:var(--red)}
.cb-panel a.cb-panel__pdf{font-size:14px;color:var(--grey)}

@media (max-width:1023.98px){
  .cb-nav{display:none}
  .cb-dona{margin-left:auto;padding:0 16px;font-size:14px;box-shadow:none}
  .cb-dona .cb-heart{width:15px;height:15px}
  .cb-burger{display:grid}
}
@media (min-width:1024px){
  .cb-panel{display:none!important}
}
@media (max-width:767.98px){
  .cb-svc__pdf{display:none}
  .cb-head__logo img{height:48px}
}

/* ---------- Footer ---------- */
.cb-foot{background:var(--red);color:var(--beige);font:400 14px/1.6 var(--f-text)}
.cb-foot__in{max-width:var(--wrap);margin:0 auto;padding:56px var(--gutter) 36px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:32px}
.cb-foot a{color:inherit;text-decoration:none}
.cb-foot a:hover{color:var(--white);text-decoration:underline}
.cb-foot__brand{display:grid;gap:16px;align-content:start}
.cb-foot__logo{display:block;justify-self:start}
.cb-foot__logo:hover{text-decoration:none}
.cb-foot__logo img{height:84px;width:auto;display:block}
.cb-foot__title{margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.3);font:400 22px/1 var(--f-display);letter-spacing:.04em;color:var(--white)}
.cb-foot__col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cb-foot__bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.2);padding-top:18px;font-size:13px;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
.cb-foot__note{flex-basis:100%;margin:0;opacity:.85}

/* ---------- Modale ---------- */
.cb-modal{position:fixed;inset:0;z-index:100;background:rgba(10,10,10,.85);display:grid;place-items:center;padding:16px}
.cb-modal[hidden]{display:none}
.cb-modal__box{position:relative;width:min(960px,100%);margin-top:48px}
.cb-modal__close{position:absolute;right:0;top:-52px;min-height:44px;padding:0 18px;border:0;border-radius:var(--r-xs);background:var(--white);color:var(--red);font:700 15px/1 var(--f-text);cursor:pointer}
.cb-modal__frame{position:relative;aspect-ratio:16/9;background:var(--ink);border-radius:var(--r-md);overflow:hidden}
.cb-modal__frame video{width:100%;height:100%;object-fit:contain;background:var(--ink)}
.cb-modal__frame img{width:100%;height:100%;object-fit:cover;opacity:.5}
.cb-modal__msg{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:10px;color:var(--white);padding:20px}
.cb-modal__msg b{font:400 clamp(28px,4vw,48px)/1 var(--f-display);text-transform:uppercase}
.cb-modal__msg span{font:600 16px/1.5 var(--f-text)}
body.cb-modal-open{overflow:hidden}

/* ---------- Componenti comuni ---------- */
.cb-section{padding:var(--section-y) 0}
.cb-stack{display:grid;gap:28px;grid-template-columns:minmax(0,1fr)}
.cb-stack>.cb-btn{justify-self:start}
.cb-intro__title{max-width:20ch;text-wrap:balance}
.cb-intro__text{max-width:62ch}
.cb-rich p{margin:0}
.cb-rich p+p{margin-top:1em}
.cb-rich strong,.cb-rich b{color:var(--red);font-weight:700}

.cb-btn--video{gap:12px;padding:0 20px 0 6px;border:0;background:var(--white);color:var(--red);font:700 15px/1 var(--f-text);box-shadow:var(--sh-on-media)}
.cb-btn--video:hover{background:var(--beige);color:var(--red)}
.cb-play{width:36px;height:36px;border-radius:var(--r-round);background:var(--red);display:grid;place-items:center;flex:none}
.cb-play::before{content:"";width:0;height:0;border-left:12px solid var(--white);border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}

.cb-numrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:24px;border-top:3px solid var(--red);padding-top:24px}
.cb-numrow__item{display:grid;gap:6px;min-width:0}
.cb-numrow__n{color:var(--red)}
.cb-numrow__cap{font:600 15px/1.4 var(--f-text);color:var(--grey)}

/* ---------- Home · apertura con le storie ---------- */
.cb-hs{position:relative;overflow:hidden;color:var(--white);background:var(--red-dark);min-height:min(92vh,820px);display:grid;align-items:end}
.cb-hs__media{position:absolute;inset:0}
.cb-hs__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1.2s ease,transform 7s ease}
.cb-hs__video.is-active{opacity:1;transform:scale(1)}
.cb-hs__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(111,20,25,.9) 0%,rgba(111,20,25,.6) 42%,rgba(111,20,25,.05) 75%),linear-gradient(0deg,rgba(40,6,8,.75),transparent 55%)}
.cb-audio{position:absolute;right:clamp(12px,3vw,32px);top:clamp(12px,3vw,28px);z-index:3;display:flex;align-items:center;gap:8px;min-height:40px;padding:0 14px 0 10px;border-radius:var(--r-xs);border:1px solid rgba(255,255,255,.4);background:rgba(10,10,10,.45);color:var(--white);font:700 13px/1 var(--f-text);cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.cb-audio svg{width:18px;height:18px;fill:currentColor;flex:none}
.cb-audio .cb-audio__on,.cb-audio[aria-pressed="true"] .cb-audio__off{display:none}
.cb-audio[aria-pressed="true"] .cb-audio__on{display:inline}
.cb-hs__in{position:relative;width:100%;max-width:var(--wrap);margin:0 auto;padding:clamp(56px,8vw,96px) var(--gutter) clamp(28px,4vw,48px);display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}
.cb-hs__title{max-width:12ch;text-wrap:balance}
.cb-hs__panel{display:grid;gap:20px}
.cb-hs__panel[hidden]{display:none}
.cb-hs__panel .cb-btn{justify-self:start}
.cb-hs__quote{font:italic 600 clamp(17px,1.6vw,21px)/1.5 var(--f-text);max-width:36ch;min-height:3em}
.cb-hs__who{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:760px;margin-top:8px}
.cb-hs__tab{position:relative;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-md);border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:var(--white);text-align:left;cursor:pointer;overflow:hidden;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .3s,color .3s;min-width:0;font:inherit}
.cb-hs__tab.is-active{background:rgba(255,255,255,.95);color:var(--ink)}
.cb-hs__avatar{width:48px;height:48px;border-radius:var(--r-round);flex:none;border:2px solid rgba(255,255,255,.7);background-size:cover}
.cb-hs__tab.is-active .cb-hs__avatar{border-color:var(--red)}
.cb-hs__name{display:grid;min-width:0}
.cb-hs__name b{font:400 26px/1 var(--f-display)}
.cb-hs__name small{font:600 12.5px/1.3 var(--f-text);opacity:.85}
.cb-hs__bar{position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--red)}
.cb-hs__tab.is-active .cb-hs__bar{animation:cb-fill var(--cb-rot,10s) linear forwards}
.cb-hs.is-static .cb-hs__bar{animation:none}
@media (max-width:639.98px){
  .cb-hs{min-height:calc(100svh - 70px)}
  .cb-hs__veil{background:linear-gradient(0deg,rgba(70,10,14,.96) 0%,rgba(70,10,14,.78) 48%,rgba(70,10,14,.15) 100%)}
  .cb-hs__who{gap:6px}
  .cb-hs__tab{flex-direction:column;align-items:flex-start;gap:6px;padding:8px}
  .cb-hs__avatar{width:36px;height:36px}
  .cb-hs__name b{font-size:21px}
}

/* ---------- Home · blocchi storia ---------- */
.cb-story{position:relative;overflow:hidden;color:var(--white);background:var(--red-dark);min-height:min(92vh,820px);display:grid;align-items:end}
.cb-story__media{position:absolute;inset:0}
.cb-story__media video{width:100%;height:100%;object-fit:cover}
.cb-story__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(60,14,16,.92) 0%,rgba(60,14,16,.7) 38%,rgba(60,14,16,0) 72%),linear-gradient(0deg,rgba(40,8,10,.7),transparent 50%)}
.cb-story--destra .cb-story__veil{background:linear-gradient(270deg,rgba(60,14,16,.92) 0%,rgba(60,14,16,.7) 38%,rgba(60,14,16,0) 72%),linear-gradient(0deg,rgba(40,8,10,.7),transparent 50%)}
.cb-story__in{position:relative;width:100%;max-width:var(--wrap);margin:0 auto;padding:clamp(64px,9vw,112px) var(--gutter) clamp(48px,8vw,112px);display:grid;gap:18px;grid-template-columns:minmax(0,1fr);justify-items:start;text-align:left}
.cb-story--destra .cb-story__in{justify-items:end;text-align:right}
.cb-story__quote{max-width:640px;text-wrap:balance}
.cb-story__sig{font:600 clamp(17px,1.5vw,20px)/1.5 var(--f-text);max-width:46ch}
.cb-story__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-start}
.cb-story--destra .cb-story__actions{justify-content:flex-end}
.cb-story__num{display:grid;gap:4px;border-top:2px solid rgba(255,255,255,.35);padding-top:16px;margin-top:6px;max-width:640px}
.cb-story__numtxt{font:600 clamp(15px,1.4vw,18px)/1.4 var(--f-text)}
.cb-story__n{font:400 clamp(56px,8vw,112px)/.95 var(--f-display);color:var(--white)}
@media (max-width:767.98px){
  .cb-story{min-height:0}
  .cb-story__veil,.cb-story--destra .cb-story__veil{background:linear-gradient(0deg,rgba(50,10,12,.95) 0%,rgba(50,10,12,.8) 50%,rgba(50,10,12,.15) 100%)}
  .cb-story__in,.cb-story--destra .cb-story__in{padding-top:42vh;justify-items:start;text-align:left}
  .cb-story--destra .cb-story__actions{justify-content:flex-start}
}

/* ---------- Fascia Dona (cta-band) ---------- */
.cb-cta{position:relative;overflow:hidden;color:var(--white);background:var(--red)}
.cb-cta__media{position:absolute;inset:0}
.cb-cta__media img{width:100%;height:100%;object-fit:cover;opacity:.25;filter:grayscale(.3)}
.cb-cta__in{position:relative;max-width:var(--wrap);margin:0 auto;padding:clamp(72px,10vw,128px) var(--gutter);display:grid;gap:24px;grid-template-columns:minmax(0,1fr)}
.cb-cta__title{font:400 clamp(44px,7vw,100px)/.92 var(--f-display);text-transform:uppercase;max-width:16ch;text-wrap:balance}
.cb-cta__in .cb-btn{justify-self:start}

/* ---------- Comuni alle pagine interne ---------- */
.cb-section--sand{background:var(--sand)}
.cb-stack--24{gap:24px}
.cb-crumb{font:600 13px/1.4 var(--f-text);color:var(--beige)}
.cb-crumb a{color:inherit;text-decoration:none}
.cb-crumb a:hover{color:var(--white);text-decoration:underline}
.cb-source{color:var(--grey)}
.cb-dark .cb-source{color:var(--beige)}

.cb-tap{justify-self:start;display:inline-flex;gap:10px;align-items:center;color:var(--red);font:700 13px/1 var(--f-text);letter-spacing:.06em;text-transform:uppercase}
.cb-tap__dot{position:relative;width:10px;height:10px;flex:none}
.cb-tap__dot::before,.cb-tap__dot::after{content:"";position:absolute;inset:0;border-radius:var(--r-round)}
.cb-tap__dot::before{background:currentColor}
.cb-tap__dot::after{border:2px solid currentColor;animation:cb-ring 1.6s ease-out infinite}
.cb-tap--dark{color:var(--white);font-size:12px;letter-spacing:.08em;gap:8px}
.cb-tap--dark .cb-tap__dot{width:8px;height:8px}

.cb-marq{overflow:hidden;background:var(--red);color:var(--white);padding:14px 0;white-space:nowrap}
.cb-marq__track{display:inline-flex;align-items:center;gap:28px;padding-left:28px;animation:cb-marq 38s linear infinite}
.cb-marq__w{font:400 clamp(28px,3.4vw,46px)/1 var(--f-display);letter-spacing:.02em}
.cb-marq__sep{font-style:normal;color:var(--rose);font-size:20px}

.cb-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--min,220px)),1fr));gap:16px}
.cb-stat{display:grid;gap:8px;align-content:start;background:var(--beige);border-radius:var(--r-md);padding:24px}
.cb-stat__n{color:var(--red)}
.cb-stat__t{font:400 15px/1.45 var(--f-text)}
.cb-stat.is-hl{background:var(--red);color:var(--white)}
.cb-stat.is-hl .cb-stat__n{color:var(--white)}

.cb-play--pulse{animation:cb-pulse 2.2s infinite}

/* ---------- Profili · apertura ---------- */
.cb-pro{display:grid;grid-template-columns:minmax(0,1fr);background:var(--red);color:var(--white)}
.cb-pro__media{position:relative;overflow:hidden;min-height:max(56vh,320px)}
.cb-pro__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cb-pro__badge{position:absolute;left:clamp(16px,2.5vw,32px);bottom:clamp(16px,2.5vw,32px);z-index:2;display:grid;gap:2px;background:var(--white);color:var(--ink);border-radius:var(--r-md);padding:12px 18px;box-shadow:0 10px 24px rgba(10,10,10,.2);font:700 13px/1.2 var(--f-text);letter-spacing:.06em;text-transform:uppercase}
.cb-pro__badge b{font:400 clamp(30px,3vw,42px)/.9 var(--f-display);letter-spacing:0;color:var(--red)}
.cb-pro__text{display:grid;align-items:center;padding:32px var(--gutter) 40px}
.cb-pro__in{display:grid;gap:18px;max-width:600px;grid-template-columns:minmax(0,1fr)}
.cb-pro .cb-label{color:var(--beige)}
.cb-pro__quote{text-wrap:balance}
.cb-pro__intro{font:600 clamp(17px,1.5vw,20px)/1.5 var(--f-text);max-width:46ch}
.cb-pro__play{justify-self:start;display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:0 22px 0 6px;border-radius:var(--r-xs);background:var(--white);color:var(--red);text-decoration:none;font:700 16px/1 var(--f-text);box-shadow:var(--sh-on-media);transition:transform .2s}
.cb-pro__play:hover{transform:scale(1.04);color:var(--red)}
.cb-pro__play .cb-play{width:44px;height:44px}
.cb-pro__play .cb-play::before{border-left-width:14px;border-top-width:9px;border-bottom-width:9px;margin-left:4px}
@media (min-width:860px){
  .cb-pro{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);min-height:min(86vh,800px)}
  .cb-pro__media{min-height:0;order:2}
  .cb-pro__text{padding:clamp(48px,7vw,88px) clamp(20px,3vw,40px) clamp(48px,7vw,88px) var(--gutter)}
  .cb-pro__in{margin-left:auto}
}

/* ---------- Profili · riquadro video ---------- */
.cb-vband{background:var(--ink)}
.cb-vband__btn{position:relative;display:block;width:100%;height:min(86vh,820px);min-height:420px;border:0;padding:0;overflow:hidden;cursor:pointer;background:#222;font:inherit}
.cb-vband__btn img{width:100%;height:100%;object-fit:cover}
.cb-vband__veil{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,10,.85) 0%,rgba(10,10,10,.25) 45%,rgba(10,10,10,.35) 100%)}
.cb-vband__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:124px;height:124px;border-radius:var(--r-round);background:var(--red);display:grid;place-items:center;animation:cb-pulse 2.2s infinite}
.cb-vband__play::before{content:"";width:0;height:0;border-left:34px solid var(--white);border-top:21px solid transparent;border-bottom:21px solid transparent;margin-left:8px}
.cb-vband__cap{position:absolute;left:var(--gutter);right:var(--gutter);bottom:clamp(24px,4vw,56px);display:grid;gap:8px;text-align:left;color:var(--white)}
.cb-vband__label{font:400 20px/1 var(--f-display);letter-spacing:.06em;color:var(--rose);text-transform:uppercase}
.cb-vband__title{font:400 clamp(40px,6.4vw,96px)/.9 var(--f-display);text-transform:uppercase}
.cb-vband__note{font:600 15px/1.4 var(--f-text);opacity:.85}
@media (max-width:639.98px){
  .cb-vband__btn{height:62vh;min-height:360px}
  .cb-vband__play{top:40%;width:84px;height:84px}
  .cb-vband__play::before{border-left-width:24px;border-top-width:15px;border-bottom-width:15px}
}

/* ---------- Profili · parole che si illuminano ---------- */
.cb-voice{background:var(--sand);padding:clamp(64px,10vw,144px) 0}
.cb-voice__in{display:grid;gap:28px}
.cb-voice__who{display:flex;align-items:center;gap:14px}
.cb-voice__av{width:64px;height:64px;border-radius:var(--r-round);overflow:hidden;flex:none;border:3px solid var(--red)}
.cb-voice__av img{width:100%;height:100%;object-fit:cover}
.cb-voice__name{font:600 14px/1.3 var(--f-text);color:var(--grey);text-transform:lowercase}
.cb-voice__name b{display:block;font:400 30px/1 var(--f-display);color:var(--red);text-transform:none}
.cb-voice__text{font:400 clamp(30px,5vw,72px)/1.02 var(--f-display);text-transform:uppercase;max-width:22ch}
.cb-voice__text span{color:var(--rose);transition:color .35s}
.cb-voice__text span.is-on{color:var(--ink)}
.cb-voice__text span.is-on.is-key{color:var(--red)}

/* ---------- Numero gigante ---------- */
.cb-nband{position:relative;overflow:hidden;color:var(--white);background:var(--red-dark)}
.cb-nband__media{position:absolute;inset:0;overflow:hidden}
.cb-nband__media img{width:100%;height:100%;object-fit:cover}
.cb-nband__veil{position:absolute;inset:0;background:rgba(92,25,28,.86)}
.cb-nband__in{position:relative;padding-top:clamp(64px,11vw,144px);padding-bottom:clamp(64px,11vw,144px);display:grid;gap:4px;justify-items:center;text-align:center}
.cb-nband__txt{font:700 clamp(18px,2vw,26px)/1.3 var(--f-text)}
.cb-nband__n{color:var(--white);max-width:100%}
.cb-nband__sec{margin-top:18px;font:600 clamp(16px,1.6vw,20px)/1.4 var(--f-text);color:var(--beige)}
.cb-nband__secn{font:400 clamp(40px,5vw,64px)/1 var(--f-display);color:var(--beige);vertical-align:-6px;margin-right:6px}
.cb-nband__src{margin-top:14px;color:var(--beige)}

/* ---------- Pagina successiva ---------- */
.cb-next{padding:clamp(48px,6vw,80px) 0;background:var(--sand)}
.cb-next--line{border-top:1px solid var(--line)}
.cb-next__a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;text-decoration:none;background:var(--white);border-radius:var(--r-md);padding:20px 28px;box-shadow:var(--sh-card);transition:box-shadow .2s,transform .2s}
.cb-next__a:hover{box-shadow:var(--sh-card-hover);transform:translateY(-2px)}
.cb-next__img{width:96px;height:96px;border-radius:var(--r-round);overflow:hidden;display:block}
.cb-next__img img{width:100%;height:100%;object-fit:cover}
.cb-next__txt{min-width:0}
.cb-next__txt small{display:block;font:700 12px/1.4 var(--f-text);letter-spacing:.08em;text-transform:uppercase;color:var(--grey)}
.cb-next__txt b{font:400 clamp(26px,2.6vw,36px)/1 var(--f-display);color:var(--red);text-transform:uppercase}
.cb-next__arrow{font-style:normal;font-size:30px;color:var(--red)}
@media (max-width:767.98px){
  .cb-next__a{grid-template-columns:auto minmax(0,1fr);gap:14px;padding:16px}
  .cb-next__img{width:64px;height:64px}
  .cb-next__arrow{display:none}
}

/* ---------- Pulsante video fisso ---------- */
.cb-pill{position:fixed;right:16px;bottom:16px;z-index:90;display:flex;align-items:center;gap:10px;min-height:48px;padding:0 18px 0 7px;border:0;border-radius:var(--r-xs);background:var(--red);color:var(--white);font:700 14px/1 var(--f-text);cursor:pointer;box-shadow:var(--sh-on-media);transition:background .2s}
.cb-pill[hidden]{display:none}
.cb-pill:hover{background:var(--red-dark)}
.cb-pill__ic{width:34px;height:34px;border-radius:var(--r-round);background:var(--white);display:grid;place-items:center;flex:none}
.cb-pill__ic::before{content:"";width:0;height:0;border-left:11px solid var(--red);border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}
@media (max-width:639.98px){.cb-pill{right:10px;bottom:10px}}

/* ---------- Schede con tessere ---------- */
.cb-tt{position:relative;overflow:hidden;color:var(--white);background:var(--red-dark);padding:var(--section-y) 0}
.cb-tt__bg{position:absolute;inset:0}
.cb-tt__bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:40% 60%;opacity:0;transition:opacity .4s}
.cb-tt__bg img.is-active{opacity:1}
.cb-tt__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(60,14,16,.92),rgba(60,14,16,.72))}
.cb-tt .cb-wrap{position:relative}
.cb-tt__panel{display:grid;gap:24px}
.cb-tt__panel[hidden]{display:none}
.cb-seg{justify-self:start;display:inline-flex;border:2px solid var(--white);border-radius:var(--r-xs);overflow:hidden;max-width:100%}
.cb-seg button{min-height:44px;padding:0 20px;border:0;background:transparent;color:var(--white);font:700 14.5px/1 var(--f-text);cursor:pointer}
.cb-seg button[aria-selected="true"]{background:var(--white);color:var(--red)}
.cb-tt__tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2px;background:rgba(255,255,255,.25);border-radius:var(--r-md);overflow:hidden}
.cb-tt__tile{display:grid;gap:6px;align-content:end;padding:26px 22px;background:rgba(60,14,16,.55);min-height:180px;min-width:0}
.cb-tt__n{font:400 clamp(40px,6.4vw,96px)/.95 var(--f-display);color:var(--white);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cb-tt__n small{display:block;font-size:.42em;letter-spacing:.04em;color:var(--beige)}
.cb-tt__cap{font:600 15px/1.4 var(--f-text);color:var(--beige)}
@media (max-width:639.98px){
  .cb-tt__tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cb-tt__tile{padding:16px 14px;min-height:120px}
}

/* ---------- Card che si girano ---------- */
.cb-flips{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;perspective:1200px}
.cb-flip{position:relative;height:clamp(230px,24vw,300px);border:0;padding:0;background:none;cursor:pointer;text-align:left;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.8,.2,1);font:inherit}
.cb-flip.is-flipped{transform:rotateY(180deg)}
.cb-flip__face{position:absolute;inset:0;border-radius:var(--r-md);padding:22px;display:grid;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.cb-flip__front{align-content:space-between;background:var(--red);color:var(--white)}
.cb-flip__front.is-ink{background:var(--ink)}
.cb-flip__i{font:400 22px/1 var(--f-display);color:var(--rose)}
.cb-flip__t{font:400 clamp(26px,2.4vw,36px)/.98 var(--f-display);text-transform:uppercase;overflow-wrap:break-word;hyphens:auto}
.cb-flip__back{align-content:end;gap:8px;background:var(--beige);color:var(--ink);transform:rotateY(180deg)}
.cb-flip__n{font:400 clamp(40px,4vw,60px)/.95 var(--f-display);color:var(--red)}
.cb-flip__l{font:600 15px/1.35 var(--f-text)}
@media (min-width:380px){.cb-flips{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.cb-flips{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:639.98px){
  .cb-flips{gap:8px}
  .cb-flip{height:210px}
  .cb-flip__face{padding:14px}
  .cb-flip__t{font-size:21px}
  .cb-flip__n{font-size:38px}
  .cb-flip__l{font-size:13px}
}
@media (max-width:379.98px){.cb-flip{height:180px}}

/* ---------- 100 pallini ---------- */
.cb-dots__intro{max-width:68ch;line-height:1.65}
.cb-dots{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:clamp(24px,4vw,56px);align-items:start}
.cb-dots__grid{display:grid;grid-template-columns:repeat(10,1fr);gap:clamp(5px,.9vw,10px);max-width:420px;width:100%}
.cb-dots__grid i{aspect-ratio:1;border-radius:var(--r-round);background:var(--line);transition:background .35s,transform .35s}
.cb-dots__grid i.is-rosso{background:var(--red);transform:scale(1.06)}
.cb-dots__grid i.is-grigio{background:var(--grey)}
.cb-dots__grid i.is-rosa{background:var(--rose)}
.cb-dots__legend{display:flex;flex-wrap:wrap;gap:6px 18px;font:400 13px/1.4 var(--f-text);color:var(--grey);margin-top:12px}
.cb-dots__legend span{display:flex;gap:6px;align-items:center}
.cb-dots__legend i{width:12px;height:12px;border-radius:var(--r-round);flex:none;background:var(--red)}
.cb-dots__legend i.is-grigio{background:var(--grey)}
.cb-dots__legend i.is-rosa{background:var(--rose)}
.cb-dots__legend i.is-spento{background:var(--line)}
.cb-dots__side{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.cb-dots__opts{display:grid;border-bottom:1px solid var(--line)}
.cb-dots__opts button{display:grid;grid-template-columns:3.2ch minmax(0,1fr);gap:12px;align-items:baseline;text-align:left;border:0;border-top:1px solid var(--line);padding:11px 8px;min-height:44px;cursor:pointer;background:transparent;font:400 13.3333px Arial,sans-serif}
.cb-dots__opts button[aria-pressed="true"]{background:linear-gradient(90deg,var(--beige),transparent)}
.cb-dots__opts b{font:400 32px/1 var(--f-display);color:var(--rose);transition:color .2s}
.cb-dots__opts button[aria-pressed="true"] b{color:var(--red)}
.cb-dots__opts span{font:500 15px/1.4 var(--f-text);color:var(--ink)}
.cb-dots__opts button[aria-pressed="true"] span{font-weight:700}
.cb-dots__out{font:400 17px/1.5 var(--f-text);min-height:3em}

/* ---------- Metodo ---------- */
.cb-method{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.cb-mcard{display:grid;grid-template-rows:auto 1fr;align-content:start;background:var(--white);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-card);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.cb-mcard:hover{transform:translateY(-6px);box-shadow:var(--sh-card-hover)}
.cb-mcard__media{position:relative;aspect-ratio:16/9;overflow:hidden}
.cb-mcard__media img{width:100%;height:100%;object-fit:cover}
.cb-mcard__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(111,20,25,.55))}
.cb-mcard__n{position:absolute;left:18px;bottom:6px;z-index:1;font:400 72px/1 var(--f-display);color:var(--white);text-shadow:0 2px 20px rgba(0,0,0,.35)}
.cb-mcard__body{display:grid;gap:10px;align-content:start;padding:22px 22px 26px;grid-template-columns:minmax(0,1fr)}
.cb-mcard__body h3{font:400 clamp(30px,2.8vw,40px)/.95 var(--f-display);text-transform:uppercase;color:var(--red)}
.cb-mcard__k{font:600 15px/1.45 var(--f-text);color:var(--grey)}
.cb-mcard__body p:last-child{font:400 15.5px/1.6 var(--f-text)}
.cb-animare{position:relative;background:var(--red);color:var(--white);border-radius:var(--r-md);padding:clamp(28px,4vw,48px);display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
.cb-animare__seq{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;font:400 clamp(20px,2vw,26px)/1 var(--f-display);letter-spacing:.04em;color:var(--beige);text-transform:uppercase}
.cb-animare__seq i{font-style:normal;color:var(--white);opacity:.6}
.cb-animare__t{font:400 clamp(44px,6vw,84px)/.92 var(--f-display);text-transform:uppercase}
.cb-animare__p{font:400 clamp(16px,1.5vw,19px)/1.6 var(--f-text);max-width:62ch}
.cb-animare__end{font:400 clamp(24px,2.6vw,34px)/1.05 var(--f-display);letter-spacing:.02em;text-transform:uppercase;color:var(--beige);border-top:2px solid rgba(255,255,255,.3);padding-top:16px}
@media (min-width:900px){
  .cb-method{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .cb-mcard__media{aspect-ratio:4/3}
  .cb-mcard__n{font-size:96px}
  .cb-animare{margin-top:30px}
  .cb-animare::before{content:"";position:absolute;left:16.66%;right:16.66%;top:-30px;height:30px;border:3px solid var(--red);border-bottom:0;border-radius:12px 12px 0 0}
  .cb-animare::after{content:"";position:absolute;left:50%;top:-30px;width:3px;height:30px;margin-left:-1.5px;background:var(--red)}
}

/* ---------- Apertura con foto (Cosa facciamo, Dona ora) ---------- */
.cb-hphoto{position:relative;overflow:hidden;color:var(--white);background:var(--red-dark);min-height:min(94vh,860px);display:grid;align-items:end}
.cb-hphoto__media{position:absolute;inset:0;overflow:hidden}
.cb-hphoto__media img{width:100%;height:100%;object-fit:cover}
.cb-hphoto__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(60,14,16,.92) 0%,rgba(60,14,16,.7) 38%,rgba(60,14,16,0) 72%),linear-gradient(0deg,rgba(40,8,10,.7),transparent 50%)}
.cb-hphoto__in{position:relative;width:100%;max-width:var(--wrap);margin:0 auto;padding:clamp(64px,9vw,112px) var(--gutter) clamp(48px,8vw,112px);display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
.cb-hphoto__title{max-width:16ch;text-wrap:balance}
.cb-hphoto__actions{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:767.98px){
  .cb-hphoto{min-height:0}
  .cb-hphoto__veil{background:linear-gradient(0deg,rgba(50,10,12,.95) 0%,rgba(50,10,12,.8) 50%,rgba(50,10,12,.15) 100%)}
  .cb-hphoto__in{padding-top:42vh}
}

/* ---------- Barre Italia / Mondo ---------- */
.cb-split{display:grid;gap:6px;max-width:720px}
.cb-split button{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:12px;align-items:center;background:none;border:0;padding:6px 0;cursor:pointer;text-align:left;width:100%;min-height:44px;font:inherit}
.cb-split__t{font:700 16px/1.2 var(--f-text);color:var(--ink)}
.cb-split button[aria-pressed="true"] .cb-split__t{color:var(--red)}
.cb-split__track{height:30px;background:var(--line);border-radius:var(--r-xs);position:relative;overflow:hidden}
.cb-split__track i{position:absolute;inset:0 auto 0 0;width:0;background:var(--rose);transition:width 1.1s cubic-bezier(.2,.8,.2,1)}
.cb-split button[aria-pressed="true"] .cb-split__track i{background:var(--red)}
.is-on .cb-split__track i{width:var(--w)}
.cb-split__v{font:400 30px/1 var(--f-display);color:var(--red);min-width:3ch;text-align:right}
.cb-split__panel[hidden]{display:none}
@media (max-width:767.98px){.cb-split button{grid-template-columns:62px minmax(0,1fr) auto}}

/* ---------- Ambiti ---------- */
.cb-amb{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.cb-amb__card{display:grid;gap:10px;align-content:start;text-align:left;background:var(--white);border:2px solid var(--line);border-radius:var(--r-md);padding:20px;cursor:pointer;min-width:0;transition:border-color .2s,transform .2s,background .2s;font:inherit}
.cb-amb__card:hover{border-color:var(--red);transform:translateY(-2px)}
.cb-amb__card[aria-pressed="true"]{background:var(--sand);border-color:var(--red)}
.cb-amb__name{font:400 26px/1 var(--f-display);color:var(--red);min-height:2em;text-transform:uppercase}
.cb-amb__row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}
.cb-amb__track{height:22px;background:var(--beige);border-radius:var(--r-xs);position:relative;overflow:hidden}
.cb-amb__track i{position:absolute;inset:0 auto 0 0;width:0;background:var(--red);transition:width 1s cubic-bezier(.2,.8,.2,1)}
.is-on .cb-amb__track i{width:var(--w)}
.cb-amb__row b{font:400 28px/1 var(--f-display);color:var(--red)}
.cb-amb__row small{font:600 12.5px/1 var(--f-text);color:var(--grey)}
.cb-amb__det>[hidden]{display:none}
.cb-box{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 24px;align-items:center;color:var(--white);border-radius:var(--r-md);padding:24px 28px}
.cb-box--red{background:var(--red)}
.cb-box--grey{background:var(--grey);gap:10px 28px}
.cb-box__n{font:400 clamp(40px,5.6vw,80px)/.9 var(--f-display);color:var(--white);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0}
.cb-box__txt{min-width:0;font:400 16px/1.6 var(--f-text)}
.cb-box__txt>span:not(.cb-box__cl){font:400 15px/1.5 var(--f-text)}
.cb-box__txt b{display:block;font:400 28px/1 var(--f-display);margin-bottom:6px;text-transform:uppercase}
.cb-box--grey .cb-box__txt b{color:var(--beige)}
.cb-box__txt p{font:400 15.5px/1.5 var(--f-text);max-width:70ch}
.cb-box__cl{display:block;margin-top:8px;font:400 13.5px/1.5 var(--f-text);opacity:.9}
.cb-sum{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;background:var(--white);border-radius:var(--r-md);padding:18px 22px;border:2px solid var(--line)}
.cb-sum__numero{font:400 clamp(32px,3.4vw,48px)/1 var(--f-display);color:var(--red)}
.cb-sum__testo{font:600 15px/1.4 var(--f-text);color:var(--grey)}
.cb-sum__operatore{font:400 clamp(28px,3vw,40px)/1 var(--f-display);color:var(--rose)}
@media (min-width:380px){.cb-amb{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.cb-amb{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767.98px){
  .cb-amb{gap:8px}
  .cb-amb__card{padding:14px}
  .cb-amb__name{font-size:22px;min-height:0}
  .cb-amb__row{grid-template-columns:minmax(0,1fr) auto}
  .cb-amb__row small{display:none}
  .cb-box{padding:20px}
}
@media (max-width:639.98px){.cb-box{grid-template-columns:minmax(0,1fr)}}

/* ---------- Dona ora ---------- */
.cb-bubble{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:clamp(28px,5vw,72px);align-items:center}
.cb-bubble__photo{aspect-ratio:4/5;border-radius:var(--r-md);overflow:hidden;background:var(--sand)}
.cb-bubble__photo img{width:100%;height:100%;object-fit:cover}
.cb-bubble__side{display:grid;gap:22px;grid-template-columns:minmax(0,1fr)}
.cb-bubble__q{position:relative;margin:0;background:var(--beige);color:var(--ink);border-radius:var(--r-bubble);padding:56px clamp(22px,3vw,32px) 28px;font:400 clamp(16px,1.4vw,18px)/1.55 var(--f-text);max-width:520px}
.cb-bubble__q::before{content:"“";position:absolute;left:24px;top:-6px;font:700 104px/1 var(--f-text);color:var(--red)}
.cb-bubble__q cite{display:block;text-align:right;font:italic 600 15px/1.4 var(--f-text);margin-top:14px}
.cb-bubble__n{color:var(--red)}
.cb-bubble__t{font:700 clamp(17px,1.5vw,20px)/1.5 var(--f-text);max-width:46ch}
.cb-dcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.cb-dcard{display:grid;gap:12px;align-content:start;grid-template-rows:auto 1fr auto;background:var(--white);border:2px solid var(--line);border-radius:var(--r-md);padding:24px}
.cb-dcard__t{color:var(--red);text-transform:none}
.cb-dcard__p{font:400 15px/1.5 var(--f-text);color:var(--grey)}
.cb-dcard .cb-btn{justify-self:start}
.cb-copy{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;background:var(--sand);border-radius:var(--r-sm);padding:8px 8px 8px 12px;font:700 15px/1.3 var(--f-text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cb-copy span{min-width:0}
.cb-copy__btn{flex:none;min-height:36px;padding:0 14px;border:2px solid var(--red);border-radius:var(--r-xs);background:transparent;color:var(--red);font:700 13px/1 var(--f-text);cursor:pointer;transition:background .2s,color .2s}
.cb-copy__btn:hover,.cb-copy__btn.is-done{background:var(--red);color:var(--white)}
.cb-coords{display:grid;gap:16px;background:var(--white);border:2px solid var(--grey);border-radius:var(--r-md);padding:24px;grid-template-columns:minmax(0,1fr)}
.cb-coords__row{display:grid;gap:8px}
.cb-coords__row small{font:600 13px/1.4 var(--f-text);color:var(--grey)}
.cb-coords__note{font:400 13px/1.5 var(--f-text);color:var(--grey)}
@media (max-width:767.98px){.cb-coords .cb-copy{font-size:13.5px}}

/* ---------- Contatti ---------- */
.cb-chero{background:var(--red);color:var(--white)}
.cb-chero__in{padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(40px,6vw,72px);display:grid;gap:18px}
.cb-ccards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:16px}
.cb-ccard{display:grid;gap:8px;align-content:start;background:var(--sand);border-radius:var(--r-md);padding:24px}
.cb-ccard__t{color:var(--red);text-transform:none}
.cb-ccard__txt{display:grid;gap:8px;font:400 15px/1.5 var(--f-text)}
.cb-ccard__txt p{margin:0}
.cb-ccard__a{font:700 15px/1.5 var(--f-text);color:var(--red)}

@media (max-width:767.98px){
  .cb-marq{padding:10px 0}
  .cb-marq__w{font-size:24px}
}

/* ---------- Pagine di testo (Cookie policy, Privacy…) ---------- */
.cb-doc{max-width:760px;font:400 16px/1.7 var(--f-text);color:var(--ink);overflow-wrap:anywhere}
.cb-doc>*+*{margin-top:1em}
.cb-doc h2{margin-top:2em;font:400 clamp(28px,3vw,36px)/1 var(--f-display);text-transform:uppercase;color:var(--red)}
.cb-doc h3,.cb-doc h4{margin-top:1.6em;font:700 18px/1.35 var(--f-text);color:var(--ink)}
.cb-doc h2:first-child,.cb-doc h3:first-child{margin-top:0}
.cb-doc ul,.cb-doc ol{padding-left:1.4em}
.cb-doc li+li{margin-top:.35em}
.cb-doc a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
.cb-doc a:hover{color:var(--red-dark)}
.cb-doc table{width:100%;border-collapse:collapse;font-size:14px;display:block;overflow-x:auto}
.cb-doc th,.cb-doc td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top;overflow-wrap:normal;word-break:normal;hyphens:manual}
.cb-doc td:first-child{overflow-wrap:anywhere}
.cb-doc th{background:var(--sand);font-weight:700}
.cb-doc details{border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 16px}
.cb-doc summary{cursor:pointer;font-weight:700}
.cb-doc button,.cb-doc input[type="button"],.cb-doc input[type="submit"]{font:700 15px/1.1 var(--f-text);min-height:44px;padding:0 20px;border:2px solid var(--red);border-radius:var(--r-xs);background:var(--red);color:var(--white);cursor:pointer}

/* ---------- Movimento ridotto ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
  .cb-hs__video{transform:none}
  .cb-marq__track{white-space:normal}
}
