/* ============ Base comune ============ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:#EDEDEA;color:#141414;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
img{max-width:100%;display:block}
button{font:inherit;color:inherit}
h1,h2,h3,h4,h5,p,ul,ol,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ic{flex:none;display:block}

/* Immagini con fallback */
.img{position:relative;overflow:hidden;max-width:100%;margin:0}
.img>img{width:100%;height:100%;display:block}
.img[style*="aspect-ratio"]>img{position:absolute;inset:0}
.img .ph{position:absolute;inset:0;display:flex;align-items:flex-end;padding:14px}
.img:not([style*="aspect-ratio"]) .ph{position:relative;min-height:220px;height:100%}
.ph-tag{display:inline-flex;align-items:center;gap:8px;font:500 11.5px/1.3 system-ui,sans-serif;letter-spacing:.02em;padding:7px 10px;max-width:100%}
.ph-tag svg{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6}

/* Logo */
.logo{display:inline-flex;align-items:center}
.logo img{height:100%;width:auto;display:block}
.logo-fallback{font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;line-height:1}
.logo-fallback sup{font-size:.55em;margin-left:2px;vertical-align:super;letter-spacing:0}

/* Barra di revisione (fuori dal design del sito) */
.rv{position:relative;z-index:80;background:#1B1B1A;color:#D8D8D2;font:500 12.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif;padding-inline:16px}
.rv__in{max-width:1488px;margin-inline:auto;min-height:38px;display:flex;align-items:center;gap:18px}
.rv__brand{font-weight:600;color:#fff;letter-spacing:.02em;white-space:nowrap}
.rv__sep{width:1px;height:14px;background:#3A3A38}
.rv__show-s{display:none}
.rv__v{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.rv__dot{width:8px;height:8px;border-radius:50%;background:#72D2C4}
.rv__links{margin-left:auto;display:flex;align-items:center;gap:6px}
.rv a{color:#D8D8D2;text-decoration:none;padding:7px 10px;border-radius:6px;white-space:nowrap}
.rv a:hover{background:#2A2A28;color:#fff}
.rv a.is-on{background:#72D2C4;color:#141414}
.rv a:focus-visible{outline:2px solid #72D2C4;outline-offset:1px}
@media (max-width:760px){
  .rv__brand,.rv__sep,.rv__hide-s{display:none}
  .rv__show-s{display:inline}
  .rv__in{gap:10px;min-height:40px}
  .rv a{padding:7px 8px}
}

/* ============ Schermata di scelta ============ */
.sel{--ink:#141414;--muted:#6B6B66;--line:#DCDCD6;min-height:100vh;background:#EDEDEA;color:var(--ink);font-family:"Schibsted Grotesk",system-ui,sans-serif;padding-inline:clamp(16px,3vw,40px);padding-block:clamp(24px,4vw,48px) 64px}
.sel__in{max-width:1400px;margin-inline:auto}
.sel__top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid var(--line)}
.sel__kick{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.sel__title{font-size:clamp(34px,5.2vw,76px);line-height:.98;letter-spacing:-.035em;font-weight:600;margin-top:14px;text-wrap:balance}
.sel__meta{font-size:14.5px;line-height:1.55;color:var(--muted);max-width:42ch}
.sel__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.sel-card{position:relative;display:flex;flex-direction:column;min-height:620px;padding:clamp(24px,3vw,44px);text-decoration:none;overflow:hidden;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.sel-card:hover{transform:translateY(-4px)}
.sel-card:focus-visible{outline:3px solid #141414;outline-offset:4px}
.sel-card__num{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.sel-card__name{margin-top:auto;position:relative;z-index:1}
.sel-card__num,.sel-card__cta{position:relative;z-index:1}
.sel-card__cta{margin-top:28px;display:inline-flex;align-items:center;gap:12px;font-weight:600;font-size:15px}
.sel-card__cta .ic{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.sel-card:hover .sel-card__cta .ic{transform:translateX(5px)}
.sel-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:22px}
.sel-card__tags span{font-size:12.5px;padding:6px 10px}
/* A */
.sel-card--a{background:#FBFBF9;color:#111311;font-family:"Schibsted Grotesk",sans-serif;border:1px solid #E0E1DB}
.sel-card--a .sel-card__num{color:#3A3D39;display:flex;align-items:center;gap:10px}
.sel-card--a .sel-card__num::before{content:"";width:8px;height:8px;background:#72D2C4;outline:1px solid rgba(0,0,0,.08)}
.sel-card--a .sel-card__h{font-size:clamp(40px,5vw,76px);line-height:.96;letter-spacing:-.04em;font-weight:600}
.sel-card--a .sel-card__d{margin-top:18px;font-size:17px;line-height:1.55;color:#3A3D39;max-width:38ch}
.sel-card--a .sel-card__tags span{border:1px solid #D2D3CC;border-radius:2px;color:#3A3D39}
.sel-card--a .sel-card__cta{height:54px;padding:0 24px;background:#111311;color:#FBFBF9;align-self:flex-start;border-radius:2px}
.sel-card--a .sel-card__art{position:absolute;right:clamp(24px,3vw,44px);top:clamp(24px,3vw,44px);width:26%;aspect-ratio:4/5;background:repeating-linear-gradient(135deg,#EFEFEA 0 1px,transparent 1px 9px),#F4F4F0;border:1px solid #E0E1DB}
.sel-card--a .sel-card__art::after{content:"";position:absolute;left:-18%;bottom:14%;width:62%;height:64px;background:#fff;border:1px solid #E0E1DB;box-shadow:0 20px 40px -24px rgba(17,19,17,.3)}
/* B */
.sel-card--b{background:#12313B;color:#fff;font-family:"Archivo",sans-serif;border-radius:22px}
.sel-card--b .sel-card__num{color:#72D2C4}
.sel-card--b .sel-card__h{font-size:clamp(56px,7.4vw,120px);line-height:.84;font-weight:850;font-stretch:68%;text-transform:uppercase;letter-spacing:-.01em}
.sel-card--b .sel-card__h em{font-style:normal;color:#72D2C4}
.sel-card--b .sel-card__d{margin-top:18px;font-size:17px;line-height:1.55;color:#BDBDB6;max-width:38ch}
.sel-card--b .sel-card__tags span{border-radius:999px;background:#1C1C1B;color:#DADAD3}
.sel-card--b .sel-card__cta{height:56px;padding:0 26px;background:#72D2C4;color:#12313B;border-radius:999px;align-self:flex-start;font-family:"Archivo",sans-serif}
.sel-card--b .sel-card__art{position:absolute;right:-70px;top:-70px;width:230px;height:230px;border-radius:50%;background:#72D2C4}
.sel-card--b .sel-card__art::after{content:"";position:absolute;left:10px;bottom:-24px;width:96px;height:96px;border-radius:50%;border:2px solid #72D2C4;background:#12313B}
.sel__foot{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.sel-box{background:#F7F7F4;border:1px solid var(--line);padding:24px 26px}
.sel-box h3{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sel-box ul{margin-top:14px;display:grid;gap:2px}
.sel-box li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #E6E6E1;font-size:15px}
.sel-box li:last-child{border-bottom:0}
.sel-box li span:last-child{color:var(--muted);font-size:13.5px;white-space:nowrap}
.sel-box a{color:inherit;text-decoration:none}
.sel-box a:hover{text-decoration:underline;text-underline-offset:3px}
.sel-box .sel-links{display:flex;gap:8px;flex-wrap:wrap}
.sel-box .sel-links a{font-size:13px;padding:5px 9px;border:1px solid var(--line);border-radius:4px;background:#fff}
.sel-box .sel-links a:hover{text-decoration:none;border-color:#141414}
.sel-box p{margin-top:14px;font-size:14.5px;line-height:1.6;color:#3F3F3B}
@media (max-width:980px){
  .sel__grid,.sel__foot{grid-template-columns:1fr}
  .sel-card{min-height:480px}
}
@media (max-width:520px){
  .sel-card{min-height:460px}
  .sel-card--a .sel-card__art{width:30%}
  .sel-card--b .sel-card__art{width:160px;height:160px;right:-50px;top:-50px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/* Prima / Dopo */
.ba{position:relative;overflow:hidden;max-width:100%;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:ew-resize}
.ba__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.ba__img--before{clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.ba__handle{position:absolute;top:0;bottom:0;left:var(--pos);width:0;pointer-events:none}
.ba__handle::before{content:"";position:absolute;top:0;bottom:0;left:-1px;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.ba__knob{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:0}
.ba__lbl{position:absolute;top:12px;pointer-events:none}
.ba__lbl--b{left:12px}
.ba__lbl--a{right:12px}
.ba__range{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}
.ba:has(.ba__range:focus-visible) .ba__knob{outline:3px solid currentColor;outline-offset:3px}
.va h1,.va h2,.va h3,.vb h1,.vb h2,.vb h3,.vb .b-mega{overflow-wrap:break-word}

/* Selettore dispositivo nella barra di revisione */
.rv__dev{display:inline-flex;gap:2px;padding:3px;border-radius:8px;background:#2A2A28;margin-left:8px}
.rv__dev button{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:0;border-radius:6px;background:none;color:#D8D8D2;font:500 12.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer}
.rv__dev button:hover{background:#3A3A37;color:#fff}
.rv__dev button.is-on{background:#fff;color:#141414}
.rv__dev button:focus-visible{outline:2px solid #72D2C4;outline-offset:1px}
@media (max-width:980px){.rv__dev{display:none}}

/* Anteprima dispositivo */
.dv{min-height:calc(100vh - 38px);background:#262624;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px 16px 18px}
.dv__device{position:relative;max-width:100%;background:#0C0C0B;padding:12px;border-radius:52px;box-shadow:0 0 0 1px #3B3B38,0 50px 90px -40px rgba(0,0,0,.7);transition:width .5s cubic-bezier(.2,.7,.2,1),border-radius .5s}
.dv__device--mobile{width:414px}
.dv__device--tablet{width:844px;border-radius:34px}
.dv__device iframe{display:block;width:100%;height:min(844px,calc(100vh - 38px - 92px));min-height:480px;border:0;border-radius:40px;background:#fff}
.dv__device--tablet iframe{height:min(1180px,calc(100vh - 38px - 92px));border-radius:22px}
.dv__fail{position:absolute;inset:12px;border-radius:40px;background:#F2F7F6;color:#141414;display:grid;place-content:center;gap:10px;padding:32px;text-align:center;font:15px/1.5 system-ui,sans-serif}
.dv__fail b{font-size:17px}
.dv__cap{color:#BDBDB6;font:500 13px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;text-align:center}

/* Scorciatoie anteprima mobile nel selettore */
.sel-prev{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:16px;padding:16px 20px;background:#F7F7F4;border:1px solid var(--line)}
.sel-prev__t{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:15px;margin-right:6px}
.sel-prev button{height:40px;padding:0 16px;border-radius:999px;border:1px solid #141414;background:#fff;font:600 14px "Schibsted Grotesk",system-ui,sans-serif;cursor:pointer;transition:background-color .2s,color .2s}
.sel-prev button:hover{background:#141414;color:#fff}
.sel-prev__or{font-size:13.5px;color:var(--muted)}
@media (max-width:980px){.sel-prev{display:none}}

/* =====================================================================
   VARIANTE 01 — PREMIUM / MINIMAL / CORPORATE
   Design system: una sola famiglia (Schibsted Grotesk), griglia 12 colonne,
   inchiostro + carta, oro del logo usato come "segnale" (mai come sfondo diffuso).
   ===================================================================== */
.va{
  --paper:#FBFBF9; --surface:#F2F2EE; --surface-2:#E9E9E3;
  --ink:#111311; --ink-2:#3A3D39; --muted:#696C65;
  --line:#E1E2DC; --line-strong:#C8C9C2;
  --gold-deep:#8A5A0E; --gold:#C4901F; --gold-soft:#F3E6C1; --signal:#E2B444; --on-signal:#1B1300; --error:#B42318;
  --gold-grad:linear-gradient(105deg,#9A6512 0%,#D7A62A 36%,#FBDA59 54%,#D7A62A 72%,#9A6512 100%);
  --gold-sheen:linear-gradient(100deg,#DDAE3E 0%,#F6D873 50%,#DDAE3E 100%);
  --f:"Schibsted Grotesk","Helvetica Neue",Helvetica,Arial,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
  --gut:clamp(20px,4vw,48px); --max:1320px; --gap:24px;
  --sec:clamp(88px,10vw,152px); --head:76px;
  background:var(--paper);color:var(--ink);font-family:var(--f);font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01";
  min-height:100vh;
}
:where(.va) a{color:inherit;text-decoration:none}
.va ::selection{background:var(--gold-soft);color:var(--ink)}
.va :focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.va .a-sec--ink :focus-visible{outline-color:#E9C15A}

/* ---------- Layout ---------- */
.a-wrap{width:100%;max-width:calc(var(--max) + 2*var(--gut));margin-inline:auto;padding-inline:var(--gut)}
.a-sec{padding-block:var(--sec)}
.a-sec--tight{padding-block:clamp(64px,7vw,104px)}
.a-sec--surface{background:var(--surface)}
.a-sec--ink{background:var(--ink);color:var(--paper)}
.a-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.a-rule{height:1px;background:var(--line);border:0;margin:0}
.a-page{animation:aIn .6s var(--ease) both}
@keyframes aIn{from{opacity:.25;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ---------- Tipografia ---------- */
.a-display{font-size:clamp(42px,6.1vw,92px);line-height:.98;letter-spacing:-.04em;font-weight:600;text-wrap:balance}
.a-h1{font-size:clamp(38px,4.7vw,70px);line-height:1;letter-spacing:-.035em;font-weight:600;text-wrap:balance}
.a-h2{font-size:clamp(31px,3.4vw,50px);line-height:1.04;letter-spacing:-.03em;font-weight:600;text-wrap:balance}
.a-h3{font-size:clamp(21px,1.75vw,26px);line-height:1.2;letter-spacing:-.018em;font-weight:600;text-wrap:balance}
.a-h4{font-size:18px;line-height:1.3;letter-spacing:-.01em;font-weight:600}
.a-lead{font-size:clamp(18px,1.45vw,21px);line-height:1.5;color:var(--ink-2);letter-spacing:-.006em}
.a-p{font-size:17px;line-height:1.65;color:var(--ink-2)}
.a-small{font-size:14.5px;line-height:1.55;color:var(--muted)}
.a-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.a-eyebrow::before{content:"";width:8px;height:8px;background:var(--gold-grad);flex:none}
.a-sec--ink .a-eyebrow{color:rgba(251,251,249,.72)}
.a-mark{background:linear-gradient(transparent 62%,var(--gold-soft) 62%,var(--gold-soft) 94%,transparent 94%);padding-inline:.04em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.a-muted{color:var(--muted)}
.a-stack>*+*{margin-top:var(--s,24px)}

/* ---------- Bottoni ---------- */
.a-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;height:54px;padding:0 24px;border-radius:2px;border:1px solid transparent;font:600 15.5px/1 var(--f);letter-spacing:-.005em;cursor:pointer;overflow:hidden;isolation:isolate;white-space:nowrap;transition:color .35s var(--ease),border-color .35s var(--ease),background-color .35s var(--ease)}
.a-btn .ic{transition:transform .35s var(--ease)}
.a-btn:hover .ic{transform:translateX(4px)}
.a-btn::before{content:"";position:absolute;inset:0;z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.a-btn:hover::before{transform:scaleX(1)}
.a-btn--primary{background:var(--ink);color:var(--paper)}
.a-btn--primary::before{background:var(--gold-sheen)}
.a-btn--primary:hover{color:var(--ink)}
.a-btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}
.a-btn--ghost::before{background:var(--surface)}
.a-btn--ghost:hover{border-color:var(--ink)}
.a-btn--signal{background:var(--gold-sheen);color:var(--on-signal)}
.a-btn--signal::before{background:var(--paper)}
.a-btn--onink{background:transparent;color:var(--paper);border-color:rgba(251,251,249,.3)}
.a-btn--onink::before{background:rgba(251,251,249,.08)}
.a-btn--onink:hover{border-color:var(--paper)}
.a-btn--sm{height:44px;padding:0 18px;font-size:14.5px;gap:10px}
.a-btn--block{width:100%}
.a-btn[disabled]{opacity:.45;pointer-events:none}
.a-tlink{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:15.5px;padding-bottom:5px;background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;transition:gap .3s var(--ease),background-size .3s var(--ease)}
.a-tlink:hover{gap:14px}
.a-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------- Header ---------- */
.a-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:rgba(251,251,249,.9);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s var(--ease)}
.a-head.is-scrolled{border-bottom-color:var(--line)}
.a-head__in{height:var(--head);display:flex;align-items:center;gap:36px}
.a-head .logo{height:22px}
.a-head .logo-fallback{font-size:16px}
.a-nav{display:flex;align-items:center;gap:2px}
.a-nav__link{position:relative;height:var(--head);display:inline-flex;align-items:center;gap:6px;padding:0 13px;font-size:15px;font-weight:500;color:var(--ink-2);background:none;border:0;cursor:pointer;transition:color .25s}
.a-nav__link:hover,.a-nav__link.is-active,.a-nav__link[aria-expanded="true"]{color:var(--ink)}
.a-nav__link::after{content:"";position:absolute;left:13px;right:13px;bottom:-1px;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.a-nav__link.is-active::after{transform:scaleX(1)}
.a-nav__link .ic{transition:transform .3s var(--ease)}
.a-nav__link[aria-expanded="true"] .ic{transform:rotate(180deg)}
.a-head__actions{margin-left:auto;display:flex;align-items:center;gap:22px}
.a-head__phone{display:flex;flex-direction:column;line-height:1.25;text-align:right}
.a-head__phone b{font-size:15px;font-weight:600;letter-spacing:-.005em}
.a-head__phone span{font-size:12px;color:var(--muted)}
.a-burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;background:none;border:1px solid var(--line-strong);border-radius:2px;cursor:pointer}
.a-mega{position:absolute;left:0;right:0;top:100%;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 40px 60px -40px rgba(17,19,17,.28);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .3s var(--ease),transform .3s var(--ease),visibility 0s .3s}
.a-mega.is-open{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.a-mega__in{padding-block:40px 44px}
.a-mega__intro{grid-column:1/5;padding-right:24px}
.a-mega__intro .a-h3{margin-top:18px}
.a-mega__intro .a-small{margin-top:12px;max-width:34ch}
.a-mega__intro .a-tlink{margin-top:24px}
.a-mega__list{grid-column:5/13;display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.a-mega__item{display:grid;grid-template-columns:40px 1fr auto;gap:16px;align-items:start;padding:18px 12px 18px 0;border-top:1px solid var(--line);transition:background-color .25s,padding .3s var(--ease)}
.a-mega__item:hover{background:var(--surface);padding-left:12px}
.a-mega__item .ico{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:2px}
.a-mega__item b{display:block;font-size:16.5px;font-weight:600;letter-spacing:-.01em}
.a-mega__item span{display:block;margin-top:4px;font-size:14px;line-height:1.45;color:var(--muted)}
.a-mega__item>.ic{margin-top:10px;color:var(--muted)}

/* Menu mobile */
.a-mnav{position:fixed;inset:0;z-index:70;background:var(--paper);display:flex;flex-direction:column;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .3s var(--ease),transform .35s var(--ease),visibility 0s .35s;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}
.a-mnav.is-open{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.a-mnav__top{height:64px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);flex:none}
.a-mnav__top .logo{height:18px}
.a-mnav__list{padding-block:12px 24px}
.a-mnav__list>li{border-bottom:1px solid var(--line)}
.a-mnav__big{display:flex;justify-content:space-between;align-items:center;width:100%;padding:18px 0;font-size:28px;font-weight:600;letter-spacing:-.03em;background:none;border:0;text-align:left;cursor:pointer}
.a-mnav__sub{display:grid;gap:2px;padding:0 0 18px}
.a-mnav__sub a{display:flex;align-items:center;gap:12px;padding:10px 0;font-size:17px;color:var(--ink-2)}
.a-mnav__foot{margin-top:auto;display:grid;gap:14px}
.a-mnav__foot .a-small b{color:var(--ink);font-weight:600}

/* Barra CTA mobile */
.a-mbar{position:fixed;left:0;right:0;bottom:0;z-index:35;display:none;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(251,251,249,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .45s var(--ease)}
.a-mbar.is-on{transform:none}
.a-mbar .a-btn{flex:1;height:48px;padding:0 12px}
.a-mbar .a-btn--ghost{flex:0 0 auto}

/* ---------- Home: hero ---------- */
.a-hero{padding-block:clamp(36px,5.5vw,84px) clamp(64px,7vw,112px)}
.a-hero__grid{align-items:end}
.a-hero__text{grid-column:1/8;padding-bottom:8px}
.a-hero__text .a-display{margin-top:26px}
.a-hero__text .a-lead{margin-top:28px;max-width:36ch}
.a-hero__text .a-actions{margin-top:40px}
.a-trust{margin-top:40px;display:flex;flex-wrap:wrap;gap:12px 28px}
.a-trust li{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:500;color:var(--ink-2)}
.a-trust .ic{width:22px;height:22px;padding:4px;border-radius:50%;background:var(--ink);color:#E9C15A}
.a-hero__media{grid-column:8/13;position:relative}
.a-badge{position:absolute;left:-56px;bottom:32px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;width:280px;padding:18px 20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 30px 50px -30px rgba(17,19,17,.35)}
.a-badge .ic{width:40px;height:40px;padding:9px;background:var(--ink);color:#E9C15A;border-radius:2px}
.a-badge b{display:block;font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.a-badge span{display:block;font-size:13px;color:var(--muted);margin-top:2px}

/* Promesse */
.a-promises{border-top:1px solid var(--line)}
.a-promises__list{display:grid;grid-template-columns:repeat(4,1fr)}
.a-promises__list li{padding:34px 28px 0 0;display:grid;gap:12px;align-content:start}
.a-promises__list li+li{padding-left:28px;border-left:1px solid var(--line)}
.a-promises__list .ic{color:var(--ink)}
.a-promises__list .a-small{max-width:30ch}

/* ---------- Header di sezione ---------- */
.a-shead{align-items:end}
.a-shead__t{grid-column:1/7}
.a-shead__t .a-h2{margin-top:18px}
.a-shead__d{grid-column:8/13}
.a-shead__d .a-actions{margin-top:22px}

/* ---------- Lista servizi (home) ---------- */
.a-svc__body{margin-top:clamp(48px,6vw,80px);align-items:start}
.a-svc__media{grid-column:1/6;position:sticky;top:calc(var(--head) + 32px);aspect-ratio:4/5;max-width:100%}
.a-svc__media .img{position:absolute;inset:0;opacity:0;transform:scale(1.02);transition:opacity .6s var(--ease),transform 1.2s var(--ease)}
.a-svc__media .img.is-on{opacity:1;transform:none}
.a-svc__cap{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:var(--paper);border-top:1px solid var(--line);font-size:14px;font-weight:600}
.a-svc__cap span{color:var(--muted);font-weight:500}
.a-svc__list{grid-column:7/13;border-bottom:1px solid var(--line)}
.a-svc__row{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:30px 0;border-top:1px solid var(--line);transition:padding .4s var(--ease)}
.a-svc__row .a-h3{display:flex;align-items:center;gap:0;transition:gap .4s var(--ease)}
.a-svc__row .a-h3::before{content:"";width:0;height:10px;background:var(--gold-grad);transition:width .4s var(--ease)}
.a-svc__row.is-on .a-h3{gap:14px}
.a-svc__row.is-on .a-h3::before{width:10px}
.a-svc__row p{margin-top:10px;font-size:16px;line-height:1.55;color:var(--muted);max-width:46ch}
.a-svc__thumb{display:none}
.a-arrow{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:50%;transition:background-color .35s var(--ease),color .35s,border-color .35s,transform .35s var(--ease)}
.a-svc__row.is-on .a-arrow,.a-link-card:hover .a-arrow{background:var(--ink);border-color:var(--ink);color:var(--paper);transform:rotate(-45deg)}

/* ---------- About teaser ---------- */
.a-about__grid{align-items:center}
.a-about__media{grid-column:1/8}
.a-about__text{grid-column:9/13}
.a-about__text .a-h2{margin-top:18px}
.a-about__text .a-p{margin-top:24px}
.a-guarantee{margin-top:28px;display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.a-guarantee .ic{margin-top:2px}
.a-guarantee .a-p{margin-top:0!important}
.a-guarantee b{font-weight:600}
.a-about__text .a-tlink{margin-top:28px}

/* ---------- Metodo ---------- */
.a-steps{margin-top:clamp(48px,6vw,80px);display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--ink)}
.a-steps li{position:relative;padding:34px 28px 0 0}
.a-steps li::before{content:"";position:absolute;top:-6px;left:0;width:11px;height:11px;background:var(--paper);border:1px solid var(--ink)}
.a-sec--surface .a-steps li::before{background:var(--surface)}
.a-steps li:first-child::before{background:var(--gold-grad);border-color:var(--gold-deep)}
.a-steps__n{font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--muted);font-variant-numeric:tabular-nums}
.a-steps .a-h4{margin-top:14px}
.a-steps .a-small{margin-top:10px;max-width:28ch}

/* ---------- Recensioni ---------- */
.a-rev__grid{align-items:center}
.a-rev__text{grid-column:1/6}
.a-rev__text .a-h2{margin-top:18px}
.a-rev__badge{margin-top:36px;background:#fff;border:1px solid var(--line);padding:10px}
.a-rev__text .a-actions{margin-top:36px}
.a-rev__media{grid-column:7/13;display:flex;justify-content:flex-end}
.a-rev__phone{width:min(100%,400px);background:#fff;border:1px solid var(--line);padding:12px;box-shadow:0 40px 60px -40px rgba(17,19,17,.3)}
.a-rev__phone .img{background:var(--surface)}

/* ---------- FAQ ---------- */
.a-faq__intro{grid-column:1/5}
.a-faq__intro .a-h2{margin-top:18px}
.a-faq__intro .a-p{margin-top:20px;max-width:34ch}
.a-faq__intro .a-tlink{margin-top:28px}
.a-faq__list{grid-column:6/13;border-bottom:1px solid var(--line)}
.a-acc{border-top:1px solid var(--line)}
.a-acc__btn{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;background:none;border:0;text-align:left;cursor:pointer;font-size:clamp(18px,1.5vw,21px);font-weight:600;letter-spacing:-.015em;line-height:1.3}
.a-acc__icon{flex:none;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:50%;transition:transform .4s var(--ease),background-color .3s,border-color .3s}
.a-acc.is-open .a-acc__icon{transform:rotate(45deg);background:var(--ink);border-color:var(--ink);color:#E9C15A}
.a-acc__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease)}
.a-acc.is-open .a-acc__panel{grid-template-rows:1fr}
.a-acc__panel>div{overflow:hidden}
.a-acc__panel .a-p{padding-bottom:12px;max-width:62ch}
.a-acc__panel .a-tlink{margin-bottom:28px;font-size:14.5px}

/* ---------- CTA finale ---------- */
.a-cta__grid{align-items:end}
.a-cta__t{grid-column:1/8}
.a-cta__t .a-display{margin-top:22px;font-size:clamp(40px,5.4vw,82px)}
.a-cta__t .a-lead{margin-top:26px;color:rgba(251,251,249,.72);max-width:40ch}
.a-cta__t .a-actions{margin-top:40px}
.a-cta__y{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.a-cta__list{grid-column:9/13;border-bottom:1px solid rgba(251,251,249,.16)}
.a-cta__row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:22px 0;border-top:1px solid rgba(251,251,249,.16);transition:padding .35s var(--ease)}
.a-cta__row:hover{padding-left:8px}
.a-cta__row small{display:block;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(251,251,249,.55);font-weight:600}
.a-cta__row b{display:block;margin-top:6px;font-size:20px;font-weight:600;letter-spacing:-.015em}
.a-cta__row .ic{color:#E9C15A}

/* ---------- Footer (inchiostro: il logo oro lavora su fondo scuro) ---------- */
.a-foot{background:var(--ink);color:var(--paper);padding-block:clamp(64px,7vw,96px) 32px;border-top:1px solid rgba(251,251,249,.12)}
.a-foot__top{row-gap:48px}
.a-foot__brand{grid-column:1/5}
.a-foot__brand .logo{height:30px}
.a-foot__brand .a-small{margin-top:28px;max-width:40ch;color:rgba(251,251,249,.62)}
.a-foot__col{grid-column:span 2}
.a-foot__col--wide{grid-column:span 3}
.a-foot__col--svc{grid-column:6/span 3}
.a-foot__h{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(251,251,249,.5)}
.a-foot__col ul{margin-top:18px;display:grid;gap:10px}
.a-foot__col li,.a-foot__col a{font-size:15px;line-height:1.45;color:rgba(251,251,249,.9)}
.a-foot__col a{background:linear-gradient(currentColor,currentColor) left bottom/0 1px no-repeat;transition:background-size .3s var(--ease)}
.a-foot__col a:hover{background-size:100% 1px}
.a-foot__bottom{margin-top:72px;padding-top:24px;border-top:1px solid rgba(251,251,249,.14);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;font-size:13px;color:rgba(251,251,249,.55)}
.a-foot__bottom nav{display:flex;gap:20px}
.a-foot__bottom a:hover{color:var(--paper)}
.a-foot__legal{margin-top:18px;font-size:11.5px;line-height:1.55;color:rgba(251,251,249,.38);max-width:110ch}
.a-foot :focus-visible{outline-color:#E9C15A}

/* ---------- Pagine interne ---------- */
.a-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:28px;font-size:13.5px;color:var(--muted)}
.a-crumbs a:hover{color:var(--ink)}
.a-crumbs span[aria-current]{color:var(--ink)}
.a-phero{padding-block:clamp(40px,6vw,96px) clamp(56px,6vw,96px)}
.a-phero .a-h1,.a-phero .a-display{margin-top:22px}
.a-phero .a-lead{margin-top:26px;max-width:44ch}

/* Hero servizio */
.a-shero{padding-block:clamp(32px,4.5vw,64px) clamp(72px,8vw,120px)}
.a-shero__grid{align-items:start}
.a-shero__text{grid-column:1/7;padding-top:clamp(8px,3vw,48px)}
.a-shero__text .a-h1{margin-top:22px}
.a-shero__text .a-lead{margin-top:26px;max-width:40ch}
.a-checks{margin-top:32px;display:grid;gap:12px}
.a-checks li{display:flex;gap:12px;align-items:flex-start;font-size:16px;font-weight:500}
.a-checks .ic{flex:none;width:22px;height:22px;padding:4px;margin-top:1px;border-radius:50%;background:var(--ink);color:#E9C15A}
.a-shero__text .a-actions{margin-top:40px}
.a-shero__note{margin-top:16px;display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted)}
.a-shero__media{grid-column:8/13;position:relative}
.a-shero__tag{position:absolute;left:0;bottom:0;z-index:2;display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--paper);font-size:14px;font-weight:600;border-top:1px solid var(--line);border-right:1px solid var(--line)}

/* Pilastri */
.a-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:clamp(40px,5vw,64px);border-top:1px solid var(--line)}
.a-pillars li{padding:36px 36px 0 0}
.a-pillars li+li{padding-left:36px;border-left:1px solid var(--line)}
.a-pillars .ic{color:var(--ink)}
.a-pillars .a-h3{margin-top:28px}
.a-pillars .a-p{margin-top:14px;font-size:16px}

/* Cosa comprende (uffici) */
.a-scope{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);background:var(--paper)}
.a-scope>div{padding:28px 24px 32px}
.a-scope>div+div{border-left:1px solid var(--line)}
.a-scope h3{font-size:16px;font-weight:600;letter-spacing:-.01em;padding-bottom:16px;border-bottom:1px solid var(--line)}
.a-scope ul{margin-top:16px;display:grid;gap:10px}
.a-scope li{display:flex;gap:10px;font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.a-scope li .ic{margin-top:2px;color:var(--ink)}
.a-freq{margin-top:28px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.a-freq>div{position:relative;padding:28px 24px;border:1px solid var(--line);background:var(--paper)}
.a-freq>div.is-top{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.a-freq__chip{position:absolute;top:-12px;left:20px;background:var(--gold-sheen);color:var(--on-signal);font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:5px 9px}
.a-freq h3{font-size:22px;font-weight:600;letter-spacing:-.02em}
.a-freq small{display:block;margin-top:4px;font-size:13px;color:var(--muted)}
.a-freq ul{margin-top:18px;display:grid;gap:8px}
.a-freq li{font-size:14.5px;color:var(--ink-2);padding-left:14px;position:relative}
.a-freq li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;background:var(--ink)}
.a-note{margin-top:24px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* Showroom: tipologie */
.a-kinds{margin-top:36px;display:flex;flex-wrap:wrap;gap:4px 18px;font-size:clamp(28px,3.6vw,54px);font-weight:600;letter-spacing:-.035em;line-height:1.12}
.a-kinds li{display:flex;align-items:center;gap:18px;color:var(--ink)}
.a-kinds li+li::before{content:"/";color:var(--line-strong);font-weight:400}
.a-chips{display:flex;flex-wrap:wrap;gap:8px}
.a-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line-strong);border-radius:2px;font-size:14.5px;font-weight:500;background:var(--paper)}
.a-chip .ic{color:var(--ink)}

/* Condomini: citazione */
.a-quote{align-items:center}
.a-quote__media{grid-column:1/6}
.a-quote__t{grid-column:7/13}
.a-quote blockquote{font-size:clamp(28px,3.2vw,46px);line-height:1.12;letter-spacing:-.03em;font-weight:600;text-wrap:balance}
.a-quote blockquote::before{content:"“";display:block;font-size:1.8em;line-height:.6;color:var(--gold);margin-bottom:12px}
.a-quote cite{display:block;margin-top:24px;font-style:normal;font-size:14.5px;color:var(--muted)}

/* Post ristrutturazione: cosa rimuoviamo */
.a-strike{margin-top:36px;display:flex;flex-wrap:wrap;gap:6px 26px}
.a-strike li{position:relative;font-size:clamp(30px,4vw,60px);font-weight:600;letter-spacing:-.035em;line-height:1.1;color:var(--ink)}
.a-strike li::after{content:"";position:absolute;left:-2px;right:-2px;top:54%;height:3px;background:var(--gold-grad);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.a-strike li:hover::after,.a-strike.is-auto li::after{transform:scaleX(1)}
.a-strike li:hover{color:var(--muted)}

/* Differenziatori */
.a-diff{align-items:start}
.a-diff__side{grid-column:1/6;position:sticky;top:calc(var(--head) + 32px)}
.a-diff__side .a-h2{margin-top:18px}
.a-diff__side .img{margin-top:40px}
.a-diff__list{grid-column:7/13}
.a-diff__item{padding-block:40px;border-top:1px solid var(--line)}
.a-diff__item:first-child{border-top:0;padding-top:8px}
.a-diff__item .a-h3{font-size:clamp(24px,2.2vw,32px);letter-spacing:-.025em}
.a-diff__item .a-p{margin-top:16px;max-width:52ch}

/* Chiusura + modulo */
.a-close{align-items:start}
.a-close__t{grid-column:1/6}
.a-close__t .a-h2{margin-top:18px}
.a-close__t .a-p{margin-top:20px}
.a-close__t .a-p+.a-p{margin-top:14px}
.a-close__form{grid-column:7/13}
.a-contact-rows{margin-top:36px;border-bottom:1px solid var(--line)}
.a-crow{display:grid;grid-template-columns:40px 1fr auto;gap:16px;align-items:center;padding:16px 0;border-top:1px solid var(--line)}
.a-crow .ico{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:2px}
.a-crow small{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}
.a-crow b{display:block;font-size:17px;font-weight:600;letter-spacing:-.01em;margin-top:2px;word-break:break-word}
.a-copy{font-size:13px;font-weight:600;padding:8px 12px;border:1px solid var(--line-strong);background:var(--paper);border-radius:2px;cursor:pointer}
.a-copy:hover{border-color:var(--ink)}

/* Altri servizi */
.a-others{margin-top:40px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.a-link-card{display:flex;flex-direction:column;gap:28px;padding:24px;border:1px solid var(--line);background:var(--paper);transition:border-color .3s}
.a-link-card:hover{border-color:var(--ink)}
.a-link-card__top{display:flex;justify-content:space-between;align-items:flex-start}
.a-link-card b{font-size:19px;font-weight:600;letter-spacing:-.015em}
.a-link-card .a-arrow{width:40px;height:40px}

/* Servizi (hub) */
.a-feature{align-items:center;padding-block:clamp(48px,6vw,88px);border-top:1px solid var(--line)}
.a-feature:first-child{border-top:0;padding-top:0}
.a-feature__media{grid-column:1/7}
.a-feature__t{grid-column:8/13}
.a-feature.is-rev .a-feature__media{grid-column:7/13;order:2}
.a-feature.is-rev .a-feature__t{grid-column:1/6;order:1}
.a-feature__t .a-h2{margin-top:18px}
.a-feature__t .a-p{margin-top:20px}
.a-feature__t .a-checks{margin-top:24px}
.a-feature__t .a-actions{margin-top:32px}
.a-index{display:flex;flex-wrap:wrap;gap:8px;margin-top:40px}

/* Chi siamo */
.a-mission{align-items:start}
.a-mission__side{grid-column:1/5;position:sticky;top:calc(var(--head) + 32px)}
.a-mission__main{grid-column:6/13}
.a-mission__main .a-h2{font-size:clamp(28px,3vw,44px)}
.a-mission__main .a-p{margin-top:22px;max-width:60ch}
.a-values{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.a-values li{padding:32px 28px 0 0}
.a-values li+li{padding-left:28px;border-left:1px solid var(--line)}
.a-values .a-h4{margin-top:22px}
.a-values .a-small{margin-top:10px}
.a-gallery{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap)}
.a-gallery .g1{grid-column:1/8}
.a-gallery .g2{grid-column:8/13}
.a-gallery .g3{grid-column:1/5}
.a-gallery .g4{grid-column:5/9}
.a-gallery .g5{grid-column:9/13}
.a-facts{border-top:1px solid var(--ink)}
.a-facts div{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line);font-size:15.5px}
.a-facts dt{color:var(--muted)}
.a-facts dd{margin:0;font-weight:500}
.a-pull{font-size:clamp(24px,2.6vw,38px);line-height:1.2;letter-spacing:-.025em;font-weight:500;text-wrap:balance}

/* Blog */
.a-qlist{margin-top:36px;border-top:1px solid var(--line)}
.a-qlist a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);font-size:17px;font-weight:600;letter-spacing:-.01em;transition:padding .35s var(--ease)}
.a-qlist a:hover{padding-left:10px}
.a-qlist a .ic{color:var(--muted)}
.a-feat{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);align-items:center;padding:28px;border:1px solid var(--line);background:var(--paper);transition:border-color .3s}
.a-feat:hover{border-color:var(--ink)}
.a-feat .img{grid-column:1/7}
.a-feat__t{grid-column:7/13;padding-right:12px}
.a-feat__t .a-h2{margin-top:18px;font-size:clamp(28px,2.8vw,40px)}
.a-feat__t .a-p{margin-top:18px}
.a-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:13.5px;color:var(--muted)}
.a-meta b{color:var(--ink);font-weight:600}
.a-meta i{width:3px;height:3px;background:var(--line-strong);border-radius:50%;font-style:normal}
.a-cards{margin-top:24px;display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.a-card{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:20px;border:1px solid var(--line);background:var(--paper);transition:border-color .3s}
.a-card:hover{border-color:var(--ink)}
.a-card .a-h4{margin-top:12px;font-size:19px;letter-spacing:-.015em}
.a-card .a-small{margin-top:10px}
.a-card__go{margin-top:18px;display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600}

/* Articolo */
.a-art__head{align-items:end}
.a-art__head .a-art__t{grid-column:1/8}
.a-art__head .a-h1{margin-top:22px;font-size:clamp(34px,4vw,60px)}
.a-art__head .a-meta{margin-top:28px}
.a-art__head .img{grid-column:9/13}
.a-art__body{align-items:start}
.a-toc{grid-column:1/4;position:sticky;top:calc(var(--head) + 32px)}
.a-toc h2{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.a-toc ol{margin-top:16px;border-left:1px solid var(--line)}
.a-toc a{display:block;padding:7px 0 7px 16px;margin-left:-1px;border-left:1px solid transparent;font-size:14px;line-height:1.4;color:var(--muted);transition:color .2s,border-color .2s}
.a-toc a:hover,.a-toc a.is-on{color:var(--ink);border-left-color:var(--ink)}
.a-prose{grid-column:5/12;max-width:680px;font-size:18px;line-height:1.72;color:var(--ink-2)}
.a-prose>*+*{margin-top:22px}
.a-prose h2{margin-top:64px;font-size:clamp(26px,2.4vw,34px);line-height:1.12;letter-spacing:-.028em;font-weight:600;color:var(--ink);scroll-margin-top:calc(var(--head) + 24px)}
.a-prose h3{margin-top:36px;font-size:20px;font-weight:600;letter-spacing:-.012em;color:var(--ink)}
.a-prose h2+p,.a-prose h3+p,.a-prose h3+ul{margin-top:14px}
.a-prose strong{color:var(--ink);font-weight:600}
.a-prose ul{display:grid;gap:8px}
.a-prose li{position:relative;padding-left:22px}
.a-prose li::before{content:"";position:absolute;left:2px;top:.72em;width:6px;height:6px;background:var(--ink)}
.a-prose blockquote{margin-block:36px;padding:8px 0 8px 28px;border-left:2px solid var(--gold)}
.a-prose blockquote p{font-size:clamp(22px,2vw,28px);line-height:1.3;letter-spacing:-.02em;font-weight:600;color:var(--ink)}
.a-endbox{margin-top:72px;padding:36px;background:var(--ink);color:var(--paper);display:grid;gap:18px}
.a-endbox .a-p{color:rgba(251,251,249,.75)}

/* Modulo preventivo */
.a-form{background:var(--paper);border:1px solid var(--line);padding:clamp(22px,3vw,40px)}
.a-form__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.a-form__head h3{font-size:20px;font-weight:600;letter-spacing:-.015em}
.a-form__count{font-size:13px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}
.a-prog{margin-top:18px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.a-prog button{display:grid;gap:8px;text-align:left;background:none;border:0;padding:0;cursor:default;font-size:12.5px;font-weight:600;color:var(--muted)}
.a-prog button.is-done{cursor:pointer;color:var(--ink-2)}
.a-prog button.is-cur{color:var(--ink)}
.a-prog button::before{content:"";height:3px;background:var(--line)}
.a-prog button.is-done::before,.a-prog button.is-cur::before{background:var(--ink)}
.a-form__body{margin-top:32px;display:grid;gap:28px}
.a-fs{border:0;margin:0;padding:0;min-width:0}
.a-fs legend{padding:0;font-size:16px;font-weight:600;letter-spacing:-.01em}
.a-fs legend small{font-weight:400;color:var(--muted)}
.a-opts{margin-top:14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px}
.a-opts--svc{grid-template-columns:1fr 1fr}
.a-opt{position:relative;display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:2px;cursor:pointer;font-size:15px;font-weight:500;transition:border-color .2s,background-color .2s}
.a-opt:hover{border-color:var(--ink)}
.a-opt input{position:absolute;opacity:0;pointer-events:none}
.a-opt__box{flex:none;width:18px;height:18px;border:1px solid var(--line-strong);display:grid;place-items:center;background:var(--paper);transition:background-color .2s,border-color .2s}
.a-opt__box .ic{opacity:0;width:12px;height:12px}
.a-opt:has(input:checked){border-color:var(--ink);background:var(--surface)}
.a-opt input:checked+.a-opt__box{background:var(--ink);border-color:var(--ink);color:#E9C15A}
.a-opt input:checked+.a-opt__box .ic{opacity:1}
.a-opt input:focus-visible+.a-opt__box{outline:2px solid var(--ink);outline-offset:2px}
.a-opt .ic.svc{margin-left:auto;color:var(--muted)}
.a-field{display:grid;gap:8px}
.a-field label{font-size:14px;font-weight:600}
.a-field input,.a-field select,.a-field textarea{width:100%;height:52px;padding:0 14px;border:1px solid var(--line-strong);border-radius:2px;background:var(--paper);font:500 16px var(--f);color:var(--ink);transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.a-field textarea{height:auto;min-height:104px;padding:12px 14px;line-height:1.5;resize:vertical}
.a-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23111311' stroke-width='1.6'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
.a-field input:focus,.a-field select:focus,.a-field textarea:focus{outline:0;border-color:var(--ink);box-shadow:0 0 0 3px rgba(226,180,68,.35)}
.a-field.is-err input,.a-field.is-err select{border-color:var(--error)}
.a-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.a-err{display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--error);font-weight:500}
.a-check{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;line-height:1.5;color:var(--ink-2);cursor:pointer}
.a-check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--ink);flex:none}
.a-check a{text-decoration:underline;text-underline-offset:3px}
.a-form__foot{margin-top:32px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.a-form__foot .spacer{flex:1}
.a-form__proto{margin-top:14px;font-size:12.5px;color:var(--muted)}

/* Contatti */
.a-contact{align-items:start}
.a-contact__form{grid-column:1/8}
.a-contact__side{grid-column:9/13;position:sticky;top:calc(var(--head) + 32px)}
.a-map{margin-top:28px;display:grid;gap:14px;padding:24px;background:var(--surface);border:1px solid var(--line)}
.a-map__pin{display:flex;gap:14px;align-items:flex-start}

/* Grazie */
.a-thanks{min-height:60vh}
.a-thanks__mark{width:64px;height:64px;display:grid;place-items:center;background:var(--ink);color:#E9C15A;animation:aPop .7s var(--ease) both}
@keyframes aPop{from{transform:scale(.6) rotate(-12deg)}to{transform:none}}
.a-sum{border-top:1px solid var(--ink)}
.a-sum div{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:15.5px}
.a-sum dt{color:var(--muted)}
.a-sum dd{margin:0;font-weight:500}

/* Design system page */
.a-ds h2.a-h3{margin-bottom:28px}
.a-ds__sec{padding-block:56px;border-top:1px solid var(--line)}
.a-sw{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}
.a-sw div{border:1px solid var(--line)}
.a-sw i{display:block;height:96px}
.a-sw p{padding:12px 14px;font-size:13.5px;line-height:1.45}
.a-sw b{display:block;font-weight:600}
.a-sw code{font:500 12.5px ui-monospace,Menlo,monospace;color:var(--muted)}
.a-spec{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line)}
.a-spec code{font:500 12.5px ui-monospace,Menlo,monospace;color:var(--muted)}
.a-dsrow{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.a-icons{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.a-icons div{background:var(--paper);display:grid;justify-items:center;gap:10px;padding:18px 8px;font-size:11.5px;color:var(--muted)}
.a-space{display:grid;gap:10px}
.a-space div{display:flex;align-items:center;gap:16px;font:500 12.5px ui-monospace,Menlo,monospace;color:var(--muted)}
.a-space i{display:block;height:12px;background:var(--ink)}

/* Segnaposto immagini — Variante 01 */
.va .img{background:var(--surface)}
.va .ph{background:repeating-linear-gradient(135deg,rgba(17,19,17,.045) 0 1px,transparent 1px 10px),var(--surface)}
.va .ph-tag{background:var(--paper);color:var(--ink-2);border:1px solid var(--line)}
.va .img>img{transition:transform 1.2s var(--ease)}
.va .a-zoom:hover .img>img,.va .a-zoom.img:hover>img{transform:scale(1.035)}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  .a-head__phone{display:none}
  .a-badge{left:-24px}
  .a-scope{grid-template-columns:repeat(3,1fr)}
  .a-scope>div:nth-child(4){border-left:0}
  .a-scope>div:nth-child(n+4){border-top:1px solid var(--line)}
  .a-freq{grid-template-columns:repeat(2,1fr);row-gap:28px}
}
@media (max-width:1023px){
  .va{--head:64px;--gap:16px}
  .a-nav,.a-head__actions .a-btn--ghost{display:none}
  .a-burger{display:inline-flex}
  .a-head__actions{gap:10px}
  .a-head .logo{height:18px}
  .a-mega{display:none}
  .a-mbar{display:flex}
  .a-hero__text,.a-hero__media,.a-shead__t,.a-shead__d,.a-about__media,.a-about__text,.a-rev__text,.a-rev__media,.a-faq__intro,.a-faq__list,.a-svc__list,.a-cta__t,.a-cta__list,.a-shero__text,.a-shero__media,.a-diff__side,.a-diff__list,.a-close__t,.a-close__form,.a-quote__media,.a-quote__t,.a-feature__media,.a-feature__t,.a-feature.is-rev .a-feature__media,.a-feature.is-rev .a-feature__t,.a-mission__side,.a-mission__main,.a-contact__form,.a-contact__side,.a-art__head .a-art__t,.a-art__head .img,.a-prose,.a-feat .img,.a-feat__t,.a-foot__brand{grid-column:1/-1}
  .a-feature.is-rev .a-feature__media{order:0}
  .a-hero__media{margin-top:48px}
  .a-badge{left:16px;bottom:16px;width:auto;right:16px}
  .a-shead__d{margin-top:20px}
  .a-svc__media{display:none}
  .a-svc__list{margin-top:0}
  .a-svc__row{grid-template-columns:88px 1fr auto;gap:18px;padding:22px 0}
  .a-svc__thumb{display:block;width:88px}
  .a-about__text,.a-rev__media,.a-faq__list,.a-cta__list,.a-shero__media,.a-close__form,.a-quote__t,.a-feature__t,.a-mission__main,.a-contact__side,.a-art__head .img,.a-feat__t{margin-top:40px}
  .a-rev__media{justify-content:flex-start}
  .a-steps{grid-template-columns:1fr;border-top:0;border-left:1px solid var(--ink);margin-left:6px}
  .a-steps li{padding:0 0 32px 28px}
  .a-steps li::before{top:4px;left:-6px}
  .a-promises__list{grid-template-columns:1fr 1fr}
  .a-promises__list li,.a-promises__list li+li{padding:28px 16px 28px 0;border-left:0}
  .a-promises__list li:nth-child(2n){padding-left:16px;border-left:1px solid var(--line)}
  .a-promises__list li:nth-child(n+3){border-top:1px solid var(--line)}
  .a-pillars,.a-values{grid-template-columns:1fr}
  .a-pillars li,.a-pillars li+li,.a-values li,.a-values li+li{padding:28px 0;border-left:0}
  .a-pillars li+li,.a-values li+li{border-top:1px solid var(--line)}
  .a-pillars .a-h3{margin-top:18px}
  .a-diff__side,.a-mission__side,.a-contact__side,.a-toc{position:static}
  .a-diff__side .img{margin-top:28px}
  .a-diff__list{margin-top:24px}
  .a-diff__item:first-child{padding-top:32px;border-top:1px solid var(--line)}
  .a-others{grid-template-columns:1fr 1fr}
  .a-toc{display:none}
  .a-cards{grid-template-columns:1fr}
  .a-gallery .g1,.a-gallery .g2{grid-column:span 12}
  .a-gallery .g3,.a-gallery .g4,.a-gallery .g5{grid-column:span 4}
  .a-foot__col,.a-foot__col--svc{grid-column:span 6}
  .a-foot__col--wide{grid-column:span 12}
  .a-foot{padding-bottom:104px}
  .a-full-m{grid-column:1/-1!important}
  .a-full-m+.a-full-m{margin-top:8px}
}
@media (max-width:640px){
  .va{font-size:16px}
  .a-p{font-size:16px}
  .a-promises__list{grid-template-columns:1fr}
  .a-promises__list li,.a-promises__list li:nth-child(2n){padding:22px 0;border-left:0}
  .a-promises__list li+li{border-top:1px solid var(--line)}
  .a-hero__text .a-actions .a-btn,.a-shero__text .a-actions .a-btn{flex:1 1 100%}
  .a-svc__row{grid-template-columns:64px 1fr;gap:16px}
  .a-svc__thumb{width:64px}
  .a-svc__row .a-arrow{display:none}
  .a-scope{grid-template-columns:1fr}
  .a-scope>div+div{border-left:0;border-top:1px solid var(--line)}
  .a-freq{grid-template-columns:1fr}
  .a-others{grid-template-columns:1fr}
  .a-link-card{flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:12px;padding:18px}
  .a-link-card__top{gap:14px;align-items:center}
  .a-link-card__top>.ic{display:none}
  .a-card{grid-template-columns:1fr}
  .a-feat{padding:16px}
  .a-gallery .g3,.a-gallery .g4,.a-gallery .g5{grid-column:span 12}
  .a-row2{grid-template-columns:1fr}
  .a-opts--svc{grid-template-columns:1fr}
  .a-foot__col,.a-foot__col--svc{grid-column:span 12}
  .a-foot__bottom{flex-direction:column}
  .a-facts div,.a-sum div{grid-template-columns:1fr;gap:4px}
  .a-spec{grid-template-columns:1fr;gap:6px}
  .a-crow{grid-template-columns:40px 1fr}
  .a-crow .a-copy{grid-column:2;justify-self:start}
  .a-endbox{padding:24px}
}

/* ---------- Prima / Dopo — Variante 01 ---------- */
.va .ba{background:var(--surface)}
.va .ba__knob{width:44px;height:44px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:0}
.va .ba__lbl{font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:7px 10px;background:rgba(251,251,249,.92);color:var(--ink)}
.va .ba__lbl--a{background:var(--ink);color:var(--paper)}
.a-res__grid{align-items:center}
.a-res__t{grid-column:1/5}
.a-res__t .a-h2{margin-top:18px}
.a-res__t .a-p{margin-top:20px;max-width:34ch}
.a-res__tabs{margin-top:36px;border-top:1px solid var(--line)}
.a-res__tab{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border:0;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left;font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--muted);transition:color .25s,padding .35s var(--ease)}
.a-res__tab small{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.a-res__tab:hover{color:var(--ink)}
.a-res__tab[aria-selected="true"]{color:var(--ink);padding-left:12px;box-shadow:inset 3px 0 0 var(--ink)}
.a-res__stage{grid-column:6/13;display:flex;justify-content:center;align-items:center;min-height:560px;background:var(--surface);border:1px solid var(--line);padding:clamp(16px,3vw,40px)}
.a-res__stage .ba{height:min(560px,70vh);width:auto;max-width:100%}
.a-res__cap{grid-column:6/13;margin-top:14px;display:flex;justify-content:space-between;gap:12px;font-size:13.5px;color:var(--muted)}
.a-google{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600;margin-top:28px}
.a-google .ic{transition:transform .3s var(--ease)}
.a-google:hover .ic{transform:translate(2px,-2px)}
.a-bastrip{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.a-bastrip figure figcaption{margin-top:12px;display:flex;justify-content:space-between;font-size:14px;font-weight:600}
.a-bastrip figure figcaption span{color:var(--muted);font-weight:500}

/* Copertine tipografiche del blog */
.a-cover{position:relative;display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:4/3;padding:clamp(18px,2.2vw,28px);background:var(--surface);border:1px solid var(--line);overflow:hidden}
.a-cover::after{content:"";position:absolute;right:-18%;bottom:-38%;width:70%;aspect-ratio:1;border:1px solid var(--line-strong);border-radius:50%}
.a-cover__k{position:relative;z-index:1;display:flex;justify-content:space-between;font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.a-cover__q{position:relative;z-index:1;font-size:clamp(28px,3.4vw,52px);line-height:.98;letter-spacing:-.04em;font-weight:600;color:var(--ink);text-wrap:balance}
.a-cover__q::after{content:"";display:block;width:36px;height:3px;margin-top:18px;background:var(--gold-grad)}
.a-cover--dark{background:var(--ink);border-color:var(--ink)}
.a-cover--dark .a-cover__q{color:var(--paper)}
.a-cover--dark::after{border-color:rgba(251,251,249,.18)}
.a-cover--sm .a-cover__q{font-size:clamp(24px,2.2vw,32px)}

@media (max-width:1023px){
  .a-res__t,.a-res__stage,.a-res__cap{grid-column:1/-1}
  .a-res__stage{margin-top:32px;min-height:0}
  .a-res__stage .ba{height:auto;width:100%;max-height:none}
  .a-res__tabs{display:flex;overflow-x:auto;gap:8px;border-top:0;padding-bottom:4px;scrollbar-width:none}
  .a-res__tab{flex:none;width:auto;border:1px solid var(--line-strong);padding:10px 14px;font-size:14.5px}
  .a-res__tab small{display:none}
  .a-res__tab[aria-selected="true"]{padding-left:14px;box-shadow:none;border-color:var(--ink);background:var(--ink);color:var(--paper)}
  .a-bastrip{grid-template-columns:1fr}
}
@media (min-width:641px) and (max-width:1023px){
  .a-hero__media .img,.a-shero__media .img{aspect-ratio:4/3!important}
}

/* =====================================================================
   VARIANTE 02 — MODERN / BOLD / HIGH IMPACT
   Design system: Archivo in due larghezze (condensata XXL per i titoli,
   normale per il testo), nero + giallo delle campagne del brand, bone per le
   sezioni chiare. Pannelli arrotondati, pillole, micro-interazioni.
   ===================================================================== */
.vb{
  --black:#12313B; --coal:#1A3E48; --coal-2:#234855; --bone:#F2F7F6; --white:#FFFFFF;
  --yellow:#72D2C4; --yellow-2:#59B9B3; --grey:#AEC9CD; --grey-ink:#526A72;
  --line-d:rgba(255,255,255,.13); --line-l:rgba(18,49,59,.13); --error:#D92D20;
  --fd:"Archivo","Arial Narrow","DejaVu Sans Condensed",sans-serif;
  --fb:"Archivo","Helvetica Neue",Arial,sans-serif;
  --r-xl:32px; --r-lg:24px; --r:16px; --pill:999px;
  --ease:cubic-bezier(.2,.8,.2,1); --spring:cubic-bezier(.34,1.56,.64,1);
  --gut:clamp(16px,3.4vw,48px); --max:1360px; --gap:20px; --head:80px;
  --sec:clamp(80px,9vw,144px);
  background:var(--black);color:var(--white);font-family:var(--fb);font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;
}
:where(.vb) a{color:inherit;text-decoration:none}
.vb ::selection{background:var(--yellow);color:var(--black)}
.vb :focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.vb .b-on-light :focus-visible,.vb .b-on-yellow :focus-visible{outline-color:var(--black)}

/* ---------- Layout ---------- */
.b-wrap{width:100%;max-width:calc(var(--max) + 2*var(--gut));margin-inline:auto;padding-inline:var(--gut)}
.b-sec{padding-block:var(--sec);position:relative}
.b-sec--tight{padding-block:clamp(56px,6vw,96px)}
.b-dark{background:var(--black);color:var(--white)}
.b-coal{background:var(--coal);color:var(--white)}
.b-light{background:var(--bone);color:var(--black)}
.b-yellow{background:var(--yellow);color:var(--black)}
.b-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.b-page{animation:bIn .55s var(--ease) both}
@keyframes bIn{from{opacity:.2;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ---------- Tipografia ---------- */
.b-mega,.b-h1,.b-h2,.b-h3{font-family:var(--fd);font-stretch:68%;font-weight:850;text-transform:uppercase;letter-spacing:-.005em;text-wrap:balance}
.b-mega{font-size:clamp(60px,10.6vw,168px);line-height:.84}
.b-h1{font-size:clamp(48px,7vw,116px);line-height:.86}
.b-h2{font-size:clamp(42px,5.6vw,92px);line-height:.88}
.b-h3{font-size:clamp(28px,2.6vw,40px);line-height:.95;font-weight:800}
.b-h4{font-size:20px;line-height:1.25;font-weight:700;letter-spacing:-.01em}
.b-lead{font-size:clamp(18px,1.55vw,22px);line-height:1.5;font-weight:450}
.b-p{font-size:17px;line-height:1.62}
.b-small{font-size:14.5px;line-height:1.55}
.b-label{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.b-label i{width:9px;height:9px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 4px rgba(114,210,196,.22);animation:bPulse 2.4s var(--ease) infinite}
.b-light .b-label i,.b-yellow .b-label i{background:var(--black);box-shadow:0 0 0 4px rgba(18,49,59,.12)}
@keyframes bPulse{50%{box-shadow:0 0 0 8px rgba(114,210,196,0)}}
.b-y{color:var(--yellow)}
.b-muted{color:var(--grey)}
.b-light .b-muted,.b-yellow .b-muted{color:var(--grey-ink)}
.b-dark .b-p,.b-coal .b-p,.b-dark .b-lead{color:#D6D6CF}
.b-light .b-p{color:#34342F}
.b-hl{background:linear-gradient(transparent 10%,var(--yellow) 10%,var(--yellow) 96%,transparent 96%);color:var(--black);padding-inline:.06em;-webkit-box-decoration-break:clone;box-decoration-break:clone}

/* ---------- Bottoni ---------- */
.b-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;height:58px;padding:0 10px 0 28px;border-radius:var(--pill);border:0;font:700 16px/1 var(--fb);letter-spacing:-.005em;cursor:pointer;white-space:nowrap;transition:background-color .3s var(--ease),color .3s var(--ease),transform .3s var(--ease)}
.b-btn .b-btn__i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;transition:transform .45s var(--spring),background-color .3s}
.b-btn:hover .b-btn__i{transform:rotate(-45deg)}
.b-btn:active{transform:scale(.97)}
.b-btn--y{background:var(--yellow);color:var(--black)}
.b-btn--y .b-btn__i{background:var(--black);color:var(--yellow)}
.b-btn--y:hover{background:var(--white)}
.b-btn--k{background:var(--black);color:var(--white)}
.b-btn--k .b-btn__i{background:var(--yellow);color:var(--black)}
.b-btn--k:hover{background:var(--coal-2)}
.b-btn--line{background:transparent;color:inherit;box-shadow:inset 0 0 0 2px currentColor;padding:0 26px}
.b-btn--line:hover{background:var(--white);color:var(--black);box-shadow:inset 0 0 0 2px var(--white)}
.b-light .b-btn--line:hover,.b-yellow .b-btn--line:hover{background:var(--black);color:var(--white);box-shadow:inset 0 0 0 2px var(--black)}
.b-btn--sm{height:48px;padding:0 8px 0 20px;font-size:15px}
.b-btn--sm .b-btn__i{width:34px;height:34px}
.b-btn--line.b-btn--sm{padding:0 20px}
.b-btn--block{width:100%}
.b-icbtn{width:48px;height:48px;border-radius:50%;display:inline-grid;place-items:center;border:0;cursor:pointer;background:transparent;color:inherit;box-shadow:inset 0 0 0 2px currentColor;transition:background-color .3s,color .3s,transform .45s var(--spring)}
.b-icbtn:hover{background:var(--yellow);color:var(--black);box-shadow:inset 0 0 0 2px var(--yellow);transform:rotate(-12deg)}
.b-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.b-link{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:16px;background:linear-gradient(var(--yellow),var(--yellow)) left 100%/100% 3px no-repeat;padding-bottom:4px;transition:background-size .35s var(--ease)}
.b-link:hover{background-size:100% 100%}
.b-light .b-link,.b-yellow .b-link{background-image:linear-gradient(var(--black),var(--black))}
.b-light .b-link:hover{color:var(--yellow)}
.b-yellow .b-link:hover{color:var(--yellow)}
.b-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:var(--pill);font-size:14.5px;font-weight:600;background:var(--coal-2);color:var(--white)}
.b-chip .ic{color:var(--yellow)}
.b-light .b-chip{background:var(--white);color:var(--black);box-shadow:inset 0 0 0 1px var(--line-l)}
.b-light .b-chip .ic,.b-yellow .b-chip .ic{color:var(--black)}
.b-yellow .b-chip{background:var(--black);color:var(--white)}
.b-yellow .b-chip .ic{color:var(--yellow)}
.b-chips{display:flex;flex-wrap:wrap;gap:8px}

/* ---------- Header ---------- */
.b-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:rgba(18,49,59,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
.b-head.is-scrolled{border-bottom-color:var(--line-d)}
.b-head__in{height:var(--head);display:flex;align-items:center;gap:32px}
.b-head .logo{height:24px}
.b-head .logo-fallback{color:#D7A62A;font-size:15px}
.b-nav{display:flex;align-items:center;gap:4px;margin-left:12px}
.b-nav__link{display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 16px;border-radius:var(--pill);font-size:15px;font-weight:600;color:#E6E6DF;background:none;border:0;cursor:pointer;transition:background-color .25s,color .25s}
.b-nav__link:hover{background:var(--coal-2);color:var(--white)}
.b-nav__link.is-active{background:var(--white);color:var(--black)}
.b-nav__link .ic{transition:transform .3s var(--ease)}
.b-nav__link[aria-expanded="true"] .ic{transform:rotate(180deg)}
.b-head__actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.b-head .b-icbtn{width:46px;height:46px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35)}
.b-burger{display:none;width:48px;height:48px;border-radius:50%;background:var(--yellow);color:var(--black);border:0;align-items:center;justify-content:center;cursor:pointer}
.b-drop{position:absolute;left:0;right:0;top:100%;padding-block:12px 28px;background:var(--black);border-bottom:1px solid var(--line-d);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .3s var(--ease),transform .35s var(--ease),visibility 0s .35s}
.b-drop.is-open{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.b-drop__grid{display:grid;grid-template-columns:repeat(5,1fr) 1.1fr;gap:12px}
.b-drop__card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:220px;padding:18px;border-radius:var(--r-lg);overflow:hidden;isolation:isolate;color:var(--white)}
.b-drop__card .img{position:absolute;inset:0;z-index:-2}
.b-drop__card .img img{transition:transform .8s var(--ease)}
.b-drop__card:hover .img img{transform:scale(1.07)}
.b-drop__card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,49,59,.05) 30%,rgba(18,49,59,.85))}
.b-drop__card b{font-family:var(--fd);font-stretch:68%;font-weight:800;font-size:28px;line-height:.95;text-transform:uppercase}
.b-drop__card .ic{position:absolute;top:16px;right:16px;width:36px;height:36px;padding:8px;border-radius:50%;background:var(--yellow);color:var(--black);transition:transform .45s var(--spring)}
.b-drop__card:hover .ic{transform:rotate(-45deg)}
.b-drop__all{display:flex;flex-direction:column;justify-content:space-between;padding:20px;border-radius:var(--r-lg);background:var(--yellow);color:var(--black)}
.b-drop__all b{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:34px;line-height:.9;text-transform:uppercase}

/* Menu mobile */
.b-mnav{position:fixed;inset:0;z-index:70;background:var(--yellow);color:var(--black);display:flex;flex-direction:column;overflow-y:auto;clip-path:circle(0% at calc(100% - 40px) 40px);visibility:hidden;transition:clip-path .6s var(--ease),visibility 0s .6s;padding-bottom:env(safe-area-inset-bottom,0px)}
.b-mnav.is-open{clip-path:circle(150% at calc(100% - 40px) 40px);visibility:visible;transition-delay:0s}
.b-mnav__top{height:72px;display:flex;align-items:center;justify-content:space-between;flex:none}
.b-mnav__top .logo{height:20px;filter:brightness(0)}
.b-mnav__top .logo-fallback{color:var(--black)}
.b-mnav__close{width:48px;height:48px;border-radius:50%;background:var(--black);color:var(--yellow);border:0;display:grid;place-items:center;cursor:pointer}
.b-mnav__list{padding-block:8px 24px}
.b-mnav__big{display:flex;justify-content:space-between;align-items:center;width:100%;padding:6px 0;font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(48px,14vw,72px);line-height:.95;text-transform:uppercase;background:none;border:0;text-align:left;cursor:pointer;color:var(--black)}
.b-mnav__sub{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0 18px}
.b-mnav__sub a{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--pill);background:var(--black);color:var(--white);font-size:15px;font-weight:600}
.b-mnav__foot{margin-top:auto;background:var(--black);color:var(--white);border-radius:var(--r-xl) var(--r-xl) 0 0;padding:24px var(--gut) 28px;display:grid;gap:14px}
.b-mnav__foot .b-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}

/* Barra azioni mobile */
.b-mbar{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:35;display:none;grid-template-columns:auto auto 1fr;gap:6px;padding:6px;border-radius:var(--pill);background:rgba(22,22,21,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 20px 40px -12px rgba(0,0,0,.5);transform:translateY(140%);transition:transform .5s var(--spring)}
.b-mbar.is-on{transform:none}
.b-mbar a{height:48px;border-radius:var(--pill);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:15px}
.b-mbar a.ico{width:48px;background:var(--coal-2);color:var(--white)}
.b-mbar a.cta{background:var(--yellow);color:var(--black)}

/* ---------- Hero Home ---------- */
.b-hero{padding-block:clamp(28px,4vw,56px) clamp(64px,7vw,112px);overflow:hidden}
.b-hero__h{margin-top:22px}
.b-hero__h small{display:block;font-family:var(--fb);font-stretch:100%;font-size:clamp(17px,1.6vw,22px);font-weight:700;letter-spacing:.02em;line-height:1.2;margin-bottom:14px;color:#D6D6CF}
.b-hero__row{margin-top:clamp(28px,4vw,56px);align-items:start}
.b-hero__t{grid-column:1/6;padding-top:8px}
.b-hero__t .b-lead{max-width:34ch}
.b-hero__t .b-chips{margin-top:24px}
.b-hero__t .b-actions{margin-top:32px}
.b-hero__media{grid-column:6/13;position:relative}
.b-hero__media>.img{border-radius:var(--r-xl)}
.b-hero__mini{position:absolute;left:-40px;bottom:-40px;width:34%;border-radius:var(--r-lg);overflow:hidden;box-shadow:0 0 0 8px var(--black)}
.b-hero__stat{position:absolute;right:20px;bottom:20px;padding:16px 20px;border-radius:var(--r);background:var(--black);color:var(--white);display:flex;align-items:center;gap:14px}
.b-hero__stat b{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:48px;line-height:.8;color:var(--yellow)}
.b-hero__stat span{font-size:13.5px;line-height:1.3;font-weight:600;max-width:14ch}

/* Badge rotante */
.b-spin{position:absolute;width:148px;height:148px;border-radius:50%;background:var(--yellow);color:var(--black);display:grid;place-items:center;z-index:3}
.b-spin svg.ring{position:absolute;inset:0;width:100%;height:100%;animation:bSpin 18s linear infinite}
.b-spin text{font:800 11.5px var(--fb);letter-spacing:.18em;text-transform:uppercase;fill:var(--black)}
.b-spin .core{width:54px;height:54px;border-radius:50%;background:var(--black);color:var(--yellow);display:grid;place-items:center}
@keyframes bSpin{to{transform:rotate(360deg)}}
.b-hero .b-spin{left:-56px;top:-56px}

/* Marquee */
.b-marq{overflow:hidden;background:var(--yellow);color:var(--black);padding-block:18px;transform:rotate(-1.4deg);margin-inline:-2vw;border-block:3px solid var(--black)}
.b-marq__track{display:flex;width:max-content;animation:bMarq 32s linear infinite}
.b-marq:hover .b-marq__track{animation-play-state:paused}
.b-marq__track a,.b-marq__track span{display:inline-flex;align-items:center;gap:28px;padding-right:28px;font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(34px,4.4vw,64px);line-height:1;text-transform:uppercase;white-space:nowrap}
.b-marq__track a:hover{-webkit-text-stroke:2px var(--black);color:transparent}
.b-marq__track svg{width:.5em;height:.5em}
@keyframes bMarq{to{transform:translateX(-50%)}}
.b-marq-wrap{background:var(--black);padding-block:clamp(24px,3vw,40px);overflow:hidden}

/* Bento */
.b-bento{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(240px,auto);gap:var(--gap);margin-top:clamp(40px,5vw,64px)}
.b-tile{position:relative;border-radius:var(--r-xl);padding:clamp(22px,2.6vw,36px);overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:24px;isolation:isolate;transition:transform .5s var(--ease)}
.b-tile:hover{transform:translateY(-4px)}
.b-tile--k{background:var(--black);color:var(--white)}
.b-tile--y{background:var(--yellow);color:var(--black)}
.b-tile--w{background:var(--white);color:var(--black)}
.b-tile--img{color:var(--white);min-height:300px}
.b-tile--img .img{position:absolute;inset:0;z-index:-2}
.b-tile--img::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,49,59,0) 35%,rgba(18,49,59,.82))}
.b-tile__num{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(140px,17vw,260px);line-height:.72;color:var(--yellow);letter-spacing:-.02em}
.b-tile__num sup{font-size:.4em;vertical-align:top;margin-left:4px}
.b-tile h3{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(28px,2.6vw,42px);line-height:.9;text-transform:uppercase;overflow-wrap:break-word}
.b-tile p{font-size:15.5px;line-height:1.5;max-width:36ch}
.b-tile--k p{color:#CFCFC8}
.b-tile .ic-big{width:56px;height:56px;border-radius:50%;display:grid;place-items:center}
.b-tile--y .ic-big{background:var(--black);color:var(--yellow)}
.b-tile--w .ic-big{background:var(--yellow);color:var(--black)}
.b-t1{grid-column:1/6;grid-row:1/3}
.b-t2{grid-column:6/10}
.b-t3{grid-column:10/13}
.b-t4{grid-column:6/13}

/* Header di sezione */
.b-shead{align-items:end;row-gap:24px}
.b-shead__t{grid-column:1/8}
.b-shead__t .b-h2{margin-top:18px}
.b-shead__d{grid-column:9/13}
.b-shead__d .b-actions{margin-top:22px}

/* Pannelli servizi */
.b-panels{display:flex;gap:12px;height:clamp(520px,44vw,640px);margin-top:clamp(40px,5vw,64px)}
.b-panel{position:relative;flex:1;min-width:0;border-radius:var(--r-xl);overflow:hidden;isolation:isolate;color:var(--white);transition:flex-grow .8s var(--ease)}
.b-panel.is-on{flex-grow:3.4}
.b-panel .img{position:absolute;inset:0;z-index:-2}
.b-panel .img img{transition:transform 1.2s var(--ease),filter .8s var(--ease);filter:grayscale(.6) brightness(.7)}
.b-panel.is-on .img img{filter:none;transform:scale(1.03)}
.b-panel::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,49,59,.15) 20%,rgba(18,49,59,.9))}
.b-panel__v{position:absolute;left:22px;bottom:24px;writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:40px;line-height:1;text-transform:uppercase;white-space:nowrap;transition:opacity .35s var(--ease)}
.b-panel.is-on .b-panel__v{opacity:0}
.b-panel__ico{position:absolute;top:20px;left:20px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(18,49,59,.55);color:var(--white);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background-color .4s,color .4s}
.b-panel.is-on .b-panel__ico{background:var(--yellow);color:var(--black)}
.b-panel__body{position:absolute;left:0;right:0;bottom:0;padding:32px;opacity:0;transform:translateY(20px);transition:opacity .45s var(--ease),transform .6s var(--ease);pointer-events:none}
.b-panel.is-on .b-panel__body{opacity:1;transform:none;transition-delay:.25s;pointer-events:auto}
.b-panel__body h3{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(44px,4.6vw,72px);line-height:.88;text-transform:uppercase;max-width:12ch}
.b-panel__body p{margin-top:14px;max-width:42ch;color:#E0E0D9;font-size:16px;line-height:1.5}
.b-panel__body .b-btn{margin-top:22px}

/* Prima / Dopo — Variante 02 */
.vb .ba{border-radius:var(--r-lg);background:var(--coal)}
.vb .ba__handle::before{width:4px;left:-2px;background:var(--yellow);box-shadow:none}
.vb .ba__knob{width:52px;height:52px;border-radius:50%;background:var(--yellow);color:var(--black);box-shadow:0 8px 20px rgba(0,0,0,.35);transition:transform .35s var(--spring)}
.vb .ba:hover .ba__knob{transform:translate(-50%,-50%) scale(1.08)}
.vb .ba__lbl{font:800 12px var(--fb);letter-spacing:.1em;text-transform:uppercase;padding:8px 12px;border-radius:var(--pill);background:rgba(18,49,59,.8);color:var(--white)}
.vb .ba__lbl--a{background:var(--yellow);color:var(--black)}
.b-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;margin-top:clamp(36px,4vw,56px);scrollbar-width:thin;scrollbar-color:var(--black) transparent}
.b-track>figure{flex:none;scroll-snap-align:start;margin:0;width:min-content}
.b-track .ba{height:min(520px,68vh);width:auto}
.b-track figcaption{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}
.b-track figcaption b{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:26px;text-transform:uppercase;line-height:1}
.b-track__nav{display:flex;gap:8px}

/* Processo sticky */
.b-proc{align-items:start}
.b-proc__side{grid-column:1/6;position:sticky;top:calc(var(--head) + 40px)}
.b-proc__side .b-h2{font-size:clamp(38px,3.6vw,60px)}
.b-proc__big{margin-top:28px;font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(120px,14vw,220px);line-height:.72;color:var(--yellow);font-variant-numeric:tabular-nums}
.b-proc__cur{margin-top:24px;font-family:var(--fd);font-stretch:68%;font-weight:800;font-size:32px;text-transform:uppercase;line-height:1}
.b-proc__bar{margin-top:28px;height:4px;border-radius:4px;background:var(--coal-2);overflow:hidden}
.b-proc__bar i{display:block;height:100%;background:var(--yellow);transition:width .6s var(--ease)}
.b-proc__list{grid-column:7/13}
.b-step{padding-block:48px;border-top:1px solid var(--line-d);color:#6F6F69;transition:color .5s var(--ease)}
.b-step:first-child{border-top:0;padding-top:0}
.b-step.is-on{color:var(--white)}
.b-step__n{font:800 13px var(--fb);letter-spacing:.14em;color:inherit}
.b-step.is-on .b-step__n{color:var(--yellow)}
.b-step h3{margin-top:12px;font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(40px,4.4vw,68px);line-height:.9;text-transform:uppercase}
.b-step p{margin-top:14px;font-size:18px;line-height:1.55;max-width:44ch}

/* Statement giallo */
.b-state{align-items:end;row-gap:40px}
.b-state__t{grid-column:1/9}
.b-state__t .b-mega{font-size:clamp(46px,6.2vw,104px);margin-top:18px}
.b-state__side{grid-column:9/13}
.b-state__side .img{border-radius:var(--r-lg)}
.b-state__side .b-p{margin-top:20px;color:#1E1E1B}
.b-state__side .b-actions{margin-top:24px}
.b-stamp{position:absolute;right:clamp(16px,4vw,64px);top:clamp(24px,3vw,44px);width:140px;height:140px;border-radius:50%;border:3px solid var(--black);display:grid;place-items:center;text-align:center;transform:rotate(12deg);font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:17px;line-height:1;text-transform:uppercase;padding:22px;overflow:hidden}

/* FAQ */
.b-faq__t{grid-column:1/5}
.b-faq__t .b-h2{margin-top:18px}
.b-faq__t .b-p{margin-top:20px;max-width:34ch}
.b-faq__t .b-link{margin-top:24px}
.b-faq__list{grid-column:6/13;display:grid;gap:10px}
.b-acc{border-radius:var(--r-lg);background:var(--white);color:var(--black);transition:background-color .35s}
.b-dark .b-acc{background:var(--coal);color:var(--white)}
.b-acc.is-open{background:var(--yellow);color:var(--black)}
.b-acc__btn{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 24px 24px 28px;background:none;border:0;cursor:pointer;text-align:left;font-size:clamp(18px,1.5vw,21px);font-weight:700;letter-spacing:-.01em;line-height:1.3;color:inherit}
.b-acc__i{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--black);color:var(--yellow);transition:transform .5s var(--spring)}
.b-acc.is-open .b-acc__i{transform:rotate(135deg)}
.b-acc__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.b-acc.is-open .b-acc__panel{grid-template-rows:1fr}
.b-acc__panel>div{overflow:hidden}
.b-acc__panel p{padding:0 28px 12px;font-size:16.5px;line-height:1.6;max-width:64ch}
.b-acc__panel .b-link{margin:0 28px 26px}

/* CTA finale */
.b-cta__h{font-size:clamp(56px,9.4vw,156px)}
.b-cta__row{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:var(--gap)}
.b-act{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:220px;padding:28px;border-radius:var(--r-xl);background:var(--coal);color:var(--white);overflow:hidden;transition:transform .5s var(--ease),background-color .3s}
.b-act:hover{transform:translateY(-6px);background:var(--coal-2)}
.b-act--y{background:var(--yellow);color:var(--black)}
.b-act--y:hover{background:var(--white)}
.b-act small{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
.b-act b{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(30px,2.8vw,44px);line-height:.92;text-transform:uppercase;max-width:12ch}
.b-act .ic-go{position:absolute;top:24px;right:24px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--black);transition:transform .5s var(--spring)}
.b-act--y .ic-go{background:var(--black);color:var(--yellow)}
.b-act:hover .ic-go{transform:rotate(-45deg) scale(1.06)}

/* Footer */
.b-foot{background:var(--black);border-top:1px solid var(--line-d);padding-top:clamp(56px,6vw,88px);overflow:hidden}
.b-foot__top{row-gap:40px}
.b-foot__brand{grid-column:1/5}
.b-foot__brand .logo{height:34px}
.b-foot__brand p{margin-top:24px;font-size:14.5px;line-height:1.6;color:#B4B4AD;max-width:40ch}
.b-foot__col{grid-column:span 2}
.b-foot__col--svc{grid-column:5/8}
.b-foot__col--az{grid-column:8/10}
.b-foot__col--c{grid-column:10/13}
.b-foot__h{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.b-foot__col ul{margin-top:18px;display:grid;gap:10px}
.b-foot__col li,.b-foot__col a{font-size:15px;line-height:1.45;color:#E4E4DD}
.b-foot__col a:hover{color:var(--yellow)}
.b-foot__social{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.b-foot__social a{padding:9px 14px;border-radius:var(--pill);background:var(--coal-2);font-size:14px;font-weight:600;transition:background-color .25s,color .25s}
.b-foot__social a:hover{background:var(--yellow);color:var(--black)}
.b-foot__giant{margin-top:clamp(48px,6vw,88px);font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:min(10.2vw,152px);line-height:.8;text-transform:uppercase;color:var(--coal-2);white-space:nowrap;letter-spacing:-.01em;user-select:none}
.b-foot__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-block:22px;border-top:1px solid var(--line-d);font-size:13px;color:#9A9A93}
.b-foot__bottom nav{display:flex;gap:18px}
.b-foot__bottom a:hover{color:var(--white)}
.b-foot__legal{padding-bottom:28px;font-size:11.5px;line-height:1.55;color:#6E6E68;max-width:110ch}

/* ---------- Pagine interne ---------- */
.b-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--grey)}
.b-crumbs a:hover{color:var(--yellow)}
.b-crumbs [aria-current]{color:var(--white)}
.b-light .b-crumbs [aria-current]{color:var(--black)}
.b-phero{padding-block:clamp(28px,4vw,48px) clamp(56px,7vw,104px)}
.b-phero .b-mega,.b-phero .b-h1{margin-top:22px}
.b-phero .b-lead{margin-top:28px;max-width:44ch}

/* Hero servizio */
.b-shero{position:relative;min-height:clamp(600px,72vh,760px);display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;padding-block:clamp(28px,4vw,48px)}
.b-shero>.img{position:absolute;inset:0;z-index:-2}
.b-shero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(18,49,59,.94) 0%,rgba(18,49,59,.78) 42%,rgba(18,49,59,.15) 80%),linear-gradient(0deg,rgba(18,49,59,.7),transparent 40%)}
.b-shero__in{width:100%}
.b-shero .b-crumbs{position:absolute;top:28px}
.b-shero__t{max-width:760px}
.b-shero__t .b-h1{margin-top:20px}
.b-shero__t .b-lead{margin-top:24px;max-width:40ch}
.b-shero__t .b-chips{margin-top:24px}
.b-shero__t .b-actions{margin-top:32px}
.b-shero .b-spin{right:var(--gut);bottom:48px}
.b-split{padding-block:clamp(28px,4vw,48px) clamp(64px,7vw,104px)}
.b-split__g{align-items:center;row-gap:40px}
.b-split__t{grid-column:1/7}
.b-split__t .b-h1{font-size:clamp(44px,5.4vw,88px)}
.b-split__m{grid-column:8/13;position:relative}
.b-split__m .ba{height:min(640px,76vh);width:auto;margin-left:auto}

/* Card pilastri */
.b-cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin-top:clamp(40px,5vw,64px)}
.b-card{position:relative;padding:clamp(24px,2.6vw,36px);border-radius:var(--r-xl);background:var(--white);color:var(--black);display:flex;flex-direction:column;gap:18px;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.b-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(18,49,59,.35),inset 0 0 0 2px var(--black)}
.b-card .ic-big{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--black);transition:transform .5s var(--spring)}
.b-card:hover .ic-big{transform:rotate(-12deg) scale(1.06)}
.b-card h3{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(30px,2.6vw,40px);line-height:.92;text-transform:uppercase;margin-top:10px}
.b-card p{font-size:16px;line-height:1.55;color:#3A3A35}

/* Uffici: tab "cosa comprende" */
.b-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(36px,4vw,56px)}
.b-tab{height:48px;padding:0 20px;border-radius:var(--pill);border:0;background:var(--coal-2);color:var(--white);font:700 15px var(--fb);cursor:pointer;transition:background-color .25s,color .25s}
.b-tab:hover{background:#2E2E2B}
.b-tab[aria-selected="true"]{background:var(--yellow);color:var(--black)}
.b-tabpanel{margin-top:16px;display:grid;grid-template-columns:1fr 1.2fr;gap:var(--gap);align-items:stretch}
.b-tabpanel__big{border-radius:var(--r-xl);background:var(--yellow);color:var(--black);padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;justify-content:space-between;min-height:320px}
.b-tabpanel__big b{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(52px,6vw,96px);line-height:.85;text-transform:uppercase}
.b-tabpanel__list{border-radius:var(--r-xl);background:var(--coal);padding:clamp(20px,3vw,36px);display:grid;align-content:center;gap:4px}
.b-tabpanel__list li{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line-d);font-size:clamp(18px,1.6vw,22px);font-weight:600}
.b-tabpanel__list li:last-child{border-bottom:0}
.b-tabpanel__list .ic{width:32px;height:32px;padding:7px;border-radius:50%;background:var(--yellow);color:var(--black)}
.b-freq{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);margin-top:clamp(36px,4vw,56px)}
.b-freq>div{position:relative;border-radius:var(--r-xl);background:var(--coal);padding:28px;display:flex;flex-direction:column;gap:14px;min-height:260px}
.b-freq>div.is-top{background:var(--yellow);color:var(--black)}
.b-freq h3{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(34px,3vw,44px);line-height:.9;text-transform:uppercase}
.b-freq small{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
.b-freq li{font-size:15px;line-height:1.45;padding-left:18px;position:relative}
.b-freq li::before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;border-radius:50%;background:var(--yellow)}
.b-freq .is-top li::before{background:var(--black)}
.b-freq__tag{align-self:flex-start;padding:7px 12px;border-radius:var(--pill);background:var(--black);color:var(--yellow);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}

/* Parole giganti (showroom / studi medici / post) */
.b-words{margin-top:clamp(32px,4vw,48px);display:flex;flex-wrap:wrap;gap:0 .32em;overflow-wrap:anywhere;font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(42px,8vw,132px);line-height:.9;text-transform:uppercase}
.b-words li{transition:color .3s var(--ease),-webkit-text-stroke-color .3s}
.b-words--outline li{color:transparent;-webkit-text-stroke:2px currentColor}
.b-dark .b-words--outline li{-webkit-text-stroke-color:rgba(255,255,255,.55)}
.b-words--outline li:hover{color:var(--yellow);-webkit-text-stroke-color:var(--yellow)}
.b-wipe li{position:relative;cursor:default}
.b-wipe li::after{content:"";position:absolute;left:-.04em;right:-.04em;top:48%;height:.12em;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.b-wipe li:hover{color:#B9B6AC}
.b-wipe li:hover::after{transform:scaleX(1)}

/* Differenziatori */
.b-diff{align-items:start}
.b-diff__side{grid-column:1/6;position:sticky;top:calc(var(--head) + 32px)}
.b-diff__side .b-h2{margin-top:18px}
.b-diff__side .img{margin-top:32px;border-radius:var(--r-xl)}
.b-diff__list{grid-column:7/13;display:grid;gap:12px}
.b-diff__item{padding:clamp(24px,3vw,40px);border-radius:var(--r-xl);background:var(--coal);transition:background-color .35s,color .35s}
.b-diff__item:hover{background:var(--yellow);color:var(--black)}
.b-diff__item:hover p{color:#1E1E1B}
.b-diff__item .star{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--black);transition:background-color .35s,color .35s}
.b-diff__item:hover .star{background:var(--black);color:var(--yellow)}
.b-diff__item h3{margin-top:22px;font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(34px,3.2vw,50px);line-height:.9;text-transform:uppercase}
.b-diff__item p{margin-top:14px;font-size:17px;line-height:1.55;color:#CFCFC8;max-width:52ch;transition:color .35s}

/* Chiusura + modulo */
.b-close{align-items:start;row-gap:40px}
.b-close__t{grid-column:1/6}
.b-close__t .b-h2{margin-top:18px}
.b-close__t .b-p{margin-top:18px;color:#1E1E1B}
.b-close__t .b-p+.b-p{margin-top:12px}
.b-close__f{grid-column:7/13}
.b-clines{margin-top:32px;display:grid;gap:8px}
.b-cline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 16px 22px;border-radius:var(--r-lg);background:var(--black);color:var(--white);transition:transform .35s var(--ease)}
.b-cline:hover{transform:translateX(6px)}
.b-cline small{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--yellow)}
.b-cline b{display:block;margin-top:2px;font-size:18px;font-weight:700;word-break:break-word}
.b-cline .go{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--black)}
.b-copy{flex:none;height:40px;padding:0 14px;border-radius:var(--pill);border:0;background:var(--coal-2);color:var(--white);font:700 13px var(--fb);cursor:pointer}
.b-copy:hover{background:var(--yellow);color:var(--black)}

/* Altri servizi */
.b-others{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);margin-top:clamp(32px,4vw,48px)}
.b-oc{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;padding:22px;border-radius:var(--r-xl);overflow:hidden;isolation:isolate;color:var(--white)}
.b-oc .img{position:absolute;inset:0;z-index:-2}
.b-oc .img img{transition:transform 1s var(--ease)}
.b-oc:hover .img img{transform:scale(1.08)}
.b-oc::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 30%,rgba(18,49,59,.88))}
.b-oc b{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:34px;line-height:.9;text-transform:uppercase}
.b-oc .go{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--black);transition:transform .45s var(--spring)}
.b-oc:hover .go{transform:rotate(-45deg)}

/* Servizi hub */
.b-rows{margin-top:clamp(32px,4vw,48px);display:grid;gap:12px}
.b-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(16px,3vw,40px);padding:clamp(16px,2vw,22px) clamp(16px,2vw,22px) clamp(16px,2vw,22px) clamp(20px,3vw,40px);border-radius:var(--r-xl);background:var(--coal);transition:background-color .35s,color .35s}
.b-row:hover{background:var(--yellow);color:var(--black)}
.b-row__ic{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--black);color:var(--yellow)}
.b-row>div{min-width:0}
.b-row h2{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(38px,5vw,84px);line-height:.88;text-transform:uppercase;overflow-wrap:break-word}
.b-row p{margin-top:10px;max-width:56ch;font-size:16px;line-height:1.5;color:#CFCFC8;transition:color .35s}
.b-row:hover p{color:#1E1E1B}
.b-row .b-chips{margin-top:16px}
.b-row:hover .b-chip{background:var(--black);color:var(--white)}
.b-row__img{width:clamp(160px,20vw,300px);aspect-ratio:4/3;border-radius:var(--r-lg);overflow:hidden}
.b-row__img .img{width:100%;height:100%}
.b-row__img img{transition:transform 1s var(--ease)}
.b-row:hover .b-row__img img{transform:scale(1.08)}

/* Chi siamo */
.b-mosaic{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(2,minmax(200px,26vw));gap:var(--gap)}
.b-mosaic .m1{grid-column:1/8;grid-row:1/3}
.b-mosaic .m2{grid-column:8/13;grid-row:1/2}
.b-mosaic .m3{grid-column:8/13;grid-row:2/3}
.b-mosaic .img{height:100%;border-radius:var(--r-xl)}
.b-values{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);margin-top:clamp(40px,5vw,64px)}
.b-values .b-tile{min-height:300px}
.b-values .b-tile h3{font-size:clamp(28px,2.4vw,38px)}
.b-data{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin-top:clamp(36px,4vw,56px)}
.b-data div{padding:24px;border-radius:var(--r-lg);background:var(--coal)}
.b-data dt{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--yellow)}
.b-data dd{margin:10px 0 0;font-size:18px;font-weight:600;line-height:1.35;word-break:break-word}
.b-bigquote{font-size:clamp(26px,3.2vw,48px);line-height:1.12;font-weight:700;letter-spacing:-.025em;text-wrap:balance;max-width:28ch}

/* Blog */
.b-qrows{margin-top:clamp(32px,4vw,48px);border-top:1px solid var(--line-d)}
.b-qrow{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line-d);font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(32px,3.6vw,56px);line-height:.95;text-transform:uppercase;transition:color .3s,padding .4s var(--ease)}
.b-qrow:hover{color:var(--yellow);padding-left:14px}
.b-qrow .go{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--coal-2);color:var(--white);transition:background-color .3s,color .3s,transform .45s var(--spring)}
.b-qrow:hover .go{background:var(--yellow);color:var(--black);transform:rotate(-45deg)}
.b-cover{position:relative;display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:4/3;padding:clamp(18px,2.4vw,30px);border-radius:var(--r-xl);background:var(--black);color:var(--white);overflow:hidden;isolation:isolate}
.b-cover--y{background:var(--yellow);color:var(--black)}
.b-cover::before{content:"?";position:absolute;right:-.08em;bottom:-.3em;z-index:-1;font-family:var(--fd);font-stretch:68%;font-weight:900;font-size:clamp(200px,24vw,380px);line-height:1;color:var(--coal-2)}
.b-cover--y::before{color:var(--yellow-2)}
.b-cover__k{display:flex;justify-content:space-between;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.b-cover__q{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(40px,4.4vw,72px);line-height:.86;text-transform:uppercase;max-width:8ch}
.b-cover--sm .b-cover__q{font-size:clamp(32px,2.8vw,44px)}
.b-feat{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(20px,3vw,48px);align-items:center;padding:clamp(14px,1.6vw,20px);border-radius:calc(var(--r-xl) + 8px);background:var(--white);color:var(--black);transition:transform .5s var(--ease)}
.b-feat:hover{transform:translateY(-6px)}
.b-feat__t{padding-right:clamp(8px,2vw,32px)}
.b-feat__t .b-h3{margin-top:16px;font-size:clamp(34px,3.4vw,54px)}
.b-feat__t p{margin-top:16px;color:#3A3A35}
.b-meta{display:flex;flex-wrap:wrap;gap:8px}
.b-meta span{padding:6px 12px;border-radius:var(--pill);background:var(--bone);font-size:12.5px;font-weight:700;color:#3A3A35}
.b-dark .b-meta span{background:var(--coal-2);color:#DADAD3}
.b-meta span.y{background:var(--yellow);color:var(--black)}
.b-bcards{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);margin-top:var(--gap)}
.b-bcard{display:flex;flex-direction:column;gap:16px;padding:12px 12px 22px;border-radius:calc(var(--r-xl) + 4px);background:var(--white);color:var(--black);transition:transform .5s var(--ease)}
.b-bcard:hover{transform:translateY(-6px)}
.b-bcard .b-h4{padding-inline:8px;font-size:18px}
.b-bcard .b-meta{padding-inline:8px}
.b-bcard .go{margin:auto 8px 0;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14.5px}

/* Articolo */
.b-progress{position:fixed;left:0;top:0;z-index:60;height:4px;background:var(--yellow);transform-origin:left}
.b-art__g{align-items:end;row-gap:32px}
.b-art__t{grid-column:1/8}
.b-art__t .b-h1{font-size:clamp(42px,5.4vw,88px);margin-top:20px}
.b-art__t .b-meta{margin-top:28px}
.b-art__c{grid-column:9/13}
.b-art__body{align-items:start}
.b-toc{grid-column:1/4;position:sticky;top:calc(var(--head) + 32px);display:grid;gap:6px}
.b-toc h2{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--grey-ink);margin-bottom:8px}
.b-toc a{display:block;padding:9px 14px;border-radius:var(--r);font-size:14px;line-height:1.35;font-weight:600;color:#4A4A45;transition:background-color .25s,color .25s}
.b-toc a:hover{background:var(--white)}
.b-toc a.is-on{background:var(--black);color:var(--white)}
.b-prose{grid-column:5/12;max-width:700px;font-size:18.5px;line-height:1.72;color:#26261F}
.b-prose>*+*{margin-top:22px}
.b-prose h2{margin-top:64px;font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(36px,3.6vw,54px);line-height:.92;text-transform:uppercase;color:var(--black);scroll-margin-top:calc(var(--head) + 24px)}
.b-prose h3{margin-top:36px;font-size:21px;font-weight:800;color:var(--black)}
.b-prose h2+p,.b-prose h3+p,.b-prose h3+ul{margin-top:14px}
.b-prose strong{font-weight:700;color:var(--black);background:linear-gradient(transparent 60%,rgba(114,210,196,.7) 60%)}
.b-prose ul{display:grid;gap:10px}
.b-prose li{position:relative;padding-left:28px}
.b-prose li::before{content:"";position:absolute;left:4px;top:.62em;width:10px;height:10px;border-radius:50%;background:var(--yellow);box-shadow:inset 0 0 0 2px var(--black)}
.b-prose blockquote{margin-block:36px;padding:28px 32px;border-radius:var(--r-xl);background:var(--yellow)}
.b-prose blockquote p{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(30px,3vw,44px);line-height:.95;text-transform:uppercase;color:var(--black)}
.b-endbox{margin-top:72px;padding:clamp(24px,3vw,40px);border-radius:var(--r-xl);background:var(--black);color:var(--white);display:grid;gap:18px}

/* Modulo */
.b-form{background:var(--white);color:var(--black);border-radius:var(--r-xl);padding:clamp(20px,3vw,40px);box-shadow:0 40px 80px -40px rgba(18,49,59,.45)}
.b-form__head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.b-form__head h3{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(28px,2.6vw,38px);line-height:.95;text-transform:uppercase}
.b-steps{margin-top:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.b-steps button{display:flex;align-items:center;gap:8px;height:44px;padding:0 12px 0 6px;border-radius:var(--pill);border:0;background:var(--bone);color:#6A6A63;font:700 13px var(--fb);cursor:default;min-width:0}
.b-steps button span{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--white);font-size:13px}
.b-steps button em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.b-steps button.is-done{cursor:pointer;color:var(--black)}
.b-steps button.is-done span{background:var(--black);color:var(--yellow)}
.b-steps button.is-cur{background:var(--black);color:var(--white)}
.b-steps button.is-cur span{background:var(--yellow);color:var(--black)}
.b-form__body{margin-top:28px;display:grid;gap:26px}
.b-fs{border:0;margin:0;padding:0;min-width:0}
.b-fs legend{padding:0;font-size:17px;font-weight:700;letter-spacing:-.01em}
.b-opts{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}
.b-opt{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:0 20px;border-radius:var(--pill);background:var(--bone);cursor:pointer;font-size:15px;font-weight:600;transition:background-color .2s,color .2s,transform .3s var(--spring)}
.b-opt:hover{background:#E8E5DC}
.b-opt input{position:absolute;opacity:0;pointer-events:none}
.b-opt:has(input:checked){background:var(--black);color:var(--white)}
.b-opt:has(input:checked) .ic{color:var(--yellow)}
.b-opt:has(input:focus-visible){outline:3px solid var(--black);outline-offset:2px}
.b-opt:active{transform:scale(.96)}
.b-opts--svc .b-opt{padding:0 20px 0 8px}
.b-opts--svc .b-opt .ic{width:36px;height:36px;padding:8px;border-radius:50%;background:var(--white);color:var(--black)}
.b-opts--svc .b-opt:has(input:checked) .ic{background:var(--yellow);color:var(--black)}
.b-field{display:grid;gap:8px}
.b-field label{font-size:14.5px;font-weight:700}
.b-field input,.b-field select,.b-field textarea{width:100%;height:56px;padding:0 18px;border-radius:var(--r);border:2px solid #E3E0D6;background:var(--white);font:600 16px var(--fb);color:var(--black);transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.b-field textarea{height:auto;min-height:110px;padding:14px 18px;line-height:1.5;resize:vertical}
.b-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%230B0B0A' stroke-width='2'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;padding-right:44px}
.b-field input:focus,.b-field select:focus,.b-field textarea:focus{outline:0;border-color:var(--black);box-shadow:0 0 0 4px rgba(114,210,196,.9)}
.b-field.is-err input,.b-field.is-err select{border-color:var(--error)}
.b-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.b-err{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--error)}
.b-check{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;line-height:1.5;cursor:pointer}
.b-check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--black);flex:none}
.b-check a{text-decoration:underline;text-underline-offset:3px}
.b-form__foot{margin-top:28px;padding-top:22px;border-top:2px solid var(--bone);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.b-form__foot .spacer{flex:1}
.b-form__proto{margin-top:12px;font-size:12.5px;color:#77776F}
.b-form .b-btn--line:hover{background:var(--black);color:var(--white);box-shadow:inset 0 0 0 2px var(--black)}

/* Contatti */
.b-con{align-items:start;row-gap:48px}
.b-con__t{grid-column:1/6}
.b-con__f{grid-column:7/13}
.b-bigphone{display:block;margin-top:36px;font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(40px,4.6vw,76px);line-height:.9;color:var(--yellow);transition:color .3s}
.b-bigphone:hover{color:var(--white)}
.b-con__list{margin-top:28px;display:grid;gap:8px}
.b-con__list .b-cline{background:var(--coal)}

/* Grazie */
.b-thx{min-height:70vh;display:flex;align-items:center}
.b-thx__mark{width:120px;height:120px;border-radius:50%;background:var(--black);color:var(--yellow);display:grid;place-items:center;animation:bPop .8s var(--spring) both}
@keyframes bPop{from{transform:scale(0) rotate(-90deg)}to{transform:none}}
.b-sum{border-radius:var(--r-xl);background:var(--black);color:var(--white);padding:clamp(20px,3vw,32px)}
.b-sum div{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line-d);font-size:15.5px}
.b-sum div:last-child{border-bottom:0}
.b-sum dt{color:var(--yellow);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding-top:2px}
.b-sum dd{margin:0;font-weight:600}

/* Design system */
.b-ds__sec{padding-block:56px;border-top:1px solid var(--line-l)}
.b-sw{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.b-sw div{border-radius:var(--r-lg);overflow:hidden;background:var(--white)}
.b-sw i{display:block;height:110px}
.b-sw p{padding:14px 16px;font-size:13.5px;line-height:1.45}
.b-sw b{display:block;font-weight:700}
.b-sw code,.b-spec code{font:600 12.5px ui-monospace,Menlo,monospace;color:#6A6A63}
.b-spec{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line-l)}
.b-dsrow{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.b-icons{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}
.b-icons div{border-radius:var(--r);background:var(--white);display:grid;justify-items:center;gap:10px;padding:18px 8px;font-size:11.5px;font-weight:600;color:#6A6A63}

/* Segnaposto immagini — Variante 02 */
.vb .img{background:var(--coal)}
.vb .ph{background:repeating-linear-gradient(135deg,rgba(114,210,196,.07) 0 2px,transparent 2px 14px),var(--coal)}
.vb .ph-tag{background:var(--yellow);color:var(--black);border-radius:var(--pill);font-weight:700}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  .b-nav__link{padding:0 12px}
  .b-head .b-icbtn{display:none}
  .b-drop__grid{grid-template-columns:repeat(3,1fr)}
  .b-freq{grid-template-columns:repeat(2,1fr)}
  .b-bcards{grid-template-columns:repeat(2,1fr)}
  .b-values{grid-template-columns:repeat(2,1fr)}
  .b-others{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:1023px){
  .vb{--head:68px;--gap:14px}
  .b-nav,.b-head__actions .b-btn{display:none}
  .b-burger{display:inline-flex}
  .b-head .logo{height:20px}
  .b-drop{display:none}
  .b-mbar{display:grid}
  .b-hero__t,.b-hero__media,.b-shead__t,.b-shead__d,.b-proc__side,.b-proc__list,.b-state__t,.b-state__side,.b-faq__t,.b-faq__list,.b-split__t,.b-split__m,.b-diff__side,.b-diff__list,.b-close__t,.b-close__f,.b-art__t,.b-art__c,.b-prose,.b-con__t,.b-con__f,.b-foot__brand{grid-column:1/-1}
  .b-hero__media{margin-top:56px}
  .b-hero .b-spin{left:auto;right:-10px;top:-64px;width:124px;height:124px}
  .b-hero__mini{left:12px;bottom:-28px;width:38%}
  .b-bento{grid-template-columns:1fr 1fr;grid-auto-rows:auto}
  .b-t1{grid-column:1/-1;grid-row:auto}
  .b-t2,.b-t3{grid-column:span 1}
  .b-t4{grid-column:1/-1}
  .b-panels{flex-direction:column;height:auto;gap:12px}
  .b-panel,.b-panel.is-on{flex:none;min-height:380px}
  .b-panel .img img{filter:none}
  .b-panel__v{display:none}
  .b-panel__body{opacity:1;transform:none;pointer-events:auto;padding:24px}
  .b-panel__body h3{font-size:48px}
  .b-proc__side{position:static}
  .b-proc__big{display:none}
  .b-proc__cur,.b-proc__bar{display:none}
  .b-proc__list{margin-top:24px}
  .b-step{color:var(--white);padding-block:28px}
  .b-step .b-step__n{color:var(--yellow)}
  .b-stamp{width:112px;height:112px;font-size:17px;top:20px}
  .b-faq__list{margin-top:32px}
  .b-cta__row{grid-template-columns:1fr}
  .b-act{min-height:160px}
  .b-shero{min-height:auto;padding-top:96px}
  .b-shero::after{background:linear-gradient(0deg,rgba(18,49,59,.96) 25%,rgba(18,49,59,.55) 70%,rgba(18,49,59,.35))}
  .b-shero .b-spin{display:none}
  .b-split__m .ba{height:auto;width:100%;margin:0}
  .b-cards3{grid-template-columns:1fr}
  .b-tabpanel{grid-template-columns:1fr}
  .b-tabpanel__big{min-height:200px}
  .b-diff__side{position:static}
  .b-diff__list{margin-top:24px}
  .b-toc{display:none}
  .b-feat{grid-template-columns:1fr}
  .b-feat__t{padding:8px 8px 16px}
  .b-mosaic{grid-template-rows:auto;grid-template-columns:1fr 1fr}
  .b-mosaic .m1{grid-column:1/-1;grid-row:auto;aspect-ratio:4/3}
  .b-mosaic .m2,.b-mosaic .m3{grid-column:span 1;grid-row:auto;aspect-ratio:1}
  .b-data{grid-template-columns:1fr 1fr}
  .b-row{grid-template-columns:auto 1fr}
  .b-row__img{display:none}
  .b-foot__col,.b-foot__col--svc,.b-foot__col--az{grid-column:span 6}
  .b-foot__col--c{grid-column:span 12}
  .b-foot__legal{padding-bottom:104px}
  .b-full-m{grid-column:1/-1!important}
}
@media (max-width:640px){
  .vb{font-size:16px}
  .b-p{font-size:16px}
  .b-btn{height:54px}
  .b-hero__t .b-actions .b-btn,.b-shero__t .b-actions .b-btn,.b-split__t .b-actions .b-btn{flex:1 1 100%;justify-content:space-between}
  .b-bento{grid-template-columns:1fr}
  .b-t2,.b-t3{grid-column:1/-1}
  .b-tile{min-height:200px}
  .b-freq,.b-bcards,.b-values,.b-others,.b-data{grid-template-columns:1fr}
  .b-row2{grid-template-columns:1fr}
  .b-steps button em{display:none}
  .b-steps button{justify-content:center;padding:0 6px}
  .b-opts--svc{display:grid}
  .b-row{grid-template-columns:1fr;padding:22px}
  .b-row__ic{width:52px;height:52px}
  .b-foot__col,.b-foot__col--svc,.b-foot__col--az,.b-foot__col--c{grid-column:span 12}
  .b-foot__bottom{flex-direction:column}
  .b-sum div,.b-spec{grid-template-columns:1fr;gap:4px}
  .b-track .ba{height:420px}
  .b-marq{transform:rotate(-2deg)}
  .b-hero__mini{display:none}
  .b-hero__stat{left:12px;right:auto;bottom:12px}
  .b-bigphone{font-size:clamp(40px,11.5vw,64px)}
  .b-qrow .go{width:44px;height:44px}
}
.vb .b-rounded{border-radius:var(--r-xl)}
.b-shero__t .b-label,.b-split__t .b-label{color:var(--yellow)}

.b-thx .b-mega{font-size:clamp(56px,8vw,128px)}

/* Prima / Dopo con selettore (sostituisce lo scroll orizzontale) */
.b-res{align-items:center;row-gap:32px}
.b-res__side{grid-column:1/6}
.b-res__side .b-h2{margin-top:18px}
.b-res__side .b-p{margin-top:18px;max-width:36ch}
.b-res__tabs{margin-top:28px;display:grid;gap:8px}
.b-res__tab{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;width:100%;min-height:64px;padding:12px 14px 12px 20px;border:0;border-radius:var(--r-lg);background:var(--white);color:var(--black);cursor:pointer;text-align:left;transition:background-color .3s var(--ease),color .3s,transform .35s var(--spring)}
.b-dark .b-res__tab{background:var(--coal);color:var(--white)}
.b-res__tab:hover{background:var(--yellow);color:var(--black)}
.b-res__tab:active{transform:scale(.98)}
.b-res__tab[aria-selected="true"]{background:var(--black);color:var(--white)}
.b-dark .b-res__tab[aria-selected="true"]{background:var(--yellow);color:var(--black)}
.b-res__n{font:800 13px var(--fb);letter-spacing:.1em;opacity:.55;font-variant-numeric:tabular-nums}
.b-res__tab[aria-selected="true"] .b-res__n{opacity:1;color:var(--yellow)}
.b-dark .b-res__tab[aria-selected="true"] .b-res__n{color:var(--black)}
.b-res__l{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(26px,2.2vw,34px);line-height:1;text-transform:uppercase}
.b-res__tag{font-size:12.5px;font-weight:700;padding:7px 12px;border-radius:var(--pill);background:var(--bone);color:var(--black)}
.b-dark .b-res__tag{background:var(--coal-2);color:var(--white)}
.b-res__tab[aria-selected="true"] .b-res__tag{background:var(--yellow);color:var(--black)}
.b-dark .b-res__tab[aria-selected="true"] .b-res__tag{background:var(--black);color:var(--yellow)}
.b-res__g{margin-top:24px}
.b-res__stage{grid-column:7/13}
.b-res__frame{display:flex;align-items:center;justify-content:center;height:clamp(420px,42vw,600px);padding:clamp(14px,2vw,24px);border-radius:var(--r-xl);background:var(--black)}
.b-dark .b-res__frame{background:var(--coal)}
.b-res__frame .ba{height:100%;width:auto;max-width:100%}
.b-res__cap{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.b-res__cap b{font-family:var(--fd);font-stretch:68%;font-weight:850;font-size:clamp(24px,2vw,30px);line-height:1;text-transform:uppercase}
.b-res__nav{display:inline-flex;align-items:center;gap:10px}
.b-res__count{font:700 14px var(--fb);font-variant-numeric:tabular-nums;min-width:32px;text-align:center}
@media (max-width:1023px){
  .b-res__side,.b-res__stage{grid-column:1/-1}
  .b-res__tabs{display:flex;flex-wrap:wrap;gap:8px}
  .b-res__tab{display:inline-flex;width:auto;min-height:48px;padding:0 18px;border-radius:var(--pill);gap:10px}
  .b-res__n,.b-res__tag{display:none}
  .b-res__l{font-size:22px}
  .b-res__frame{height:auto;padding:10px;border-radius:var(--r-lg)}
  .b-res__frame .ba{height:auto;width:100%;max-height:64vh}
}



