/* Corra Motorsport — foglio di stile
   Direzione: pulizia da "sito prodotto" (grandi titoli centrati, sezioni nere e bianche alternate,
   riquadri arrotondati, animazioni legate allo scorrimento). Carattere di sistema: su iPhone e Mac
   è SF Pro, altrove Inter. Il rosso del logo è l'unico colore. */
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("fonts/inter-latin-wght-normal.woff2") format("woff2")}
:root{
  --bg:#FFFFFF; --bg-alt:#F5F5F7; --line:#D2D2D7; --line-soft:#E8E8ED;
  --ink:#1D1D1F; --ink-2:#424245; --ink-3:#6E6E73;
  --red:#D2101A; --red-dark:#B00D16; --red-link:#C40E18;
  --black:#000000; --tile-dark:#161617; --dark-line:#2A2A2C;
  --go:#2E6A45; --go-bg:#E8F2EC; --warn:#7A5200; --warn-bg:#FBF1DC; --stop:#9E1B20; --stop-bg:#FBE9E9;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Inter","Helvetica Neue",Arial,sans-serif;
  --wrap:1180px;
  --radius:28px;
  --ease:cubic-bezier(.25,.1,.25,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  color-scheme:light;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.47 var(--font);letter-spacing:-.022em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--red-link);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:2px}
:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:4px}
::selection{background:var(--red);color:#fff}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:22px}
.narrow{max-width:820px}
.center{text-align:center}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;color:var(--ink);padding:8px 12px;z-index:99}
.preview-bar{background:#FFF4D6;color:#5A4300;text-align:center;font:500 12.5px/1.4 var(--font);padding:6px 12px}

/* tipografia */
h1,h2,h3{font-family:var(--font);font-weight:700;line-height:1.07;margin:0;color:var(--ink);letter-spacing:-.028em;text-wrap:balance}
h1{font-size:clamp(40px,6.4vw,80px);line-height:1.05;letter-spacing:-.035em}
h2{font-size:clamp(32px,4.6vw,56px);margin-bottom:.35em}
h3{font-size:clamp(21px,1.9vw,24px);font-weight:600;letter-spacing:-.02em;line-height:1.2;margin-bottom:.35em}
p{margin:0 0 1em}
.lead{font-size:clamp(19px,1.9vw,24px);line-height:1.38;color:var(--ink-3);font-weight:500;letter-spacing:-.02em;max-width:36em}
.kicker,.eyebrow{display:block;font:600 clamp(17px,1.6vw,21px)/1.2 var(--font);letter-spacing:-.015em;color:var(--red);margin-bottom:10px}
.muted{color:var(--ink-3)}
.todo{background:#FFF1C9;padding:0 4px;border-radius:4px;color:#5A4300}

/* barra superiore (non usata nel layout attuale) */
.topbar{display:none}

/* navigazione */
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,251,253,.8);-webkit-backdrop-filter:saturate(1.8) blur(20px);backdrop-filter:saturate(1.8) blur(20px);border-bottom:1px solid rgba(0,0,0,.08)}
.header-in{display:flex;align-items:center;gap:22px;height:56px}
.brand{display:block;line-height:0;flex:none}
.brand img{height:34px;width:auto}
.nav-desktop{margin-left:auto}
.nav-desktop ul,.menu ul{list-style:none;margin:0;padding:0}
.nav-desktop ul{display:flex;gap:4px}
.nav-desktop a,.menu a{display:block;padding:8px 12px;font:400 13px/1 var(--font);letter-spacing:-.01em;color:var(--ink-2);text-decoration:none;transition:color .2s}
.nav-desktop a:hover,.nav-desktop a[aria-current]{color:var(--ink)}
.nav-desktop a[aria-current]{font-weight:600}
.menu{display:none;margin-left:auto}
.menu summary{list-style:none;cursor:pointer;width:40px;height:40px;display:grid;place-content:center;gap:6px}
.menu summary::-webkit-details-marker{display:none}
.menu summary span{display:block;width:18px;height:1.5px;background:var(--ink);border-radius:2px;transition:transform .35s var(--ease-out),opacity .2s}
.menu summary span:nth-child(2){display:none}
.menu[open] summary span:nth-child(1){transform:translateY(3.75px) rotate(45deg)}
.menu[open] summary span:nth-child(3){transform:translateY(-3.75px) rotate(-45deg)}
.menu nav{position:fixed;left:0;right:0;top:56px;bottom:0;background:rgba(251,251,253,.97);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:18px 40px 40px;overflow:auto;animation:menuIn .4s var(--ease-out)}
@keyframes menuIn{from{opacity:0;transform:translateY(-8px)}}
.menu a{font-size:28px;font-weight:600;letter-spacing:-.03em;color:var(--ink);padding:10px 0}
.menu a[aria-current]{color:var(--red)}
@media (max-width:1000px){.nav-desktop{display:none}.menu{display:block}}

/* bottoni a pillola */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:400 17px/1.18 var(--font);letter-spacing:-.022em;padding:12px 22px;min-height:44px;border:1px solid transparent;border-radius:980px;text-decoration:none;cursor:pointer;transition:background .25s var(--ease),color .25s,border-color .25s,transform .2s}
.btn:hover{text-decoration:none}
.btn:active{transform:scale(.98)}
.btn-plate,.btn-red,.btn-dark{background:var(--red);color:#fff}
.btn-plate:hover,.btn-red:hover,.btn-dark:hover{background:var(--red-dark);color:#fff}
.btn-ghost{border-color:var(--red);color:var(--red-link);background:transparent}
.btn-ghost:hover{background:var(--red);color:#fff}
.band-dark .btn-ghost,.hero .btn-ghost{border-color:#fff;color:#fff}
.band-dark .btn-ghost:hover,.hero .btn-ghost:hover{background:#fff;color:var(--ink)}
.header-cta{padding:4px 12px;min-height:0;font-size:12px;line-height:1.4}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;align-items:center}
.center .actions,.actions.center{justify-content:center}
.more{display:inline-flex;align-items:center;gap:4px;font-size:17px;color:var(--red-link);text-decoration:none}
.more::after{content:"›";font-size:1.25em;line-height:1;transform:translateY(-1px);transition:transform .25s var(--ease-out)}
.more:hover{text-decoration:underline}
.more:hover::after{transform:translate(3px,-1px)}
.band-dark .more,.tile.dark .more{color:#FF4B53}

/* sezioni */
section{padding-block:clamp(80px,10vw,140px)}
.section-tight{padding-block:clamp(56px,7vw,96px)}
.band-alt,.band-surface{background:var(--bg-alt)}
.band-dark{background:var(--black);color:#F5F5F7}
.band-dark h2,.band-dark h3{color:#F5F5F7}
.band-dark .lead,.band-dark .muted{color:#86868B}
.band-dark .kicker,.band-dark .eyebrow{color:#FF4B53}
.band-dark a:not(.btn){color:#FF4B53}
.section-head{margin-bottom:clamp(40px,5vw,64px);max-width:840px}
.section-head.center{margin-inline:auto;text-align:center}
.section-head h2{margin:0}
.section-head p{margin:14px 0 0;font-size:clamp(19px,1.8vw,21px);color:var(--ink-3);font-weight:500}
.crumbs{font-size:12px;color:var(--ink-3);margin-bottom:22px}
.crumbs a{color:var(--ink-3)}
.crumbs .sep{margin-inline:6px}

/* hero della home: nero, testo centrato, "prodotto" sotto */
.hero{background:var(--black);color:#F5F5F7;text-align:center;padding-block:clamp(56px,8vw,110px) 0;overflow:hidden}
.hero h1{color:#F5F5F7;margin:0 auto 18px;max-width:14ch}
.hero .kicker{color:#FF4B53}
.hero .lead{color:#A1A1A6;margin:0 auto;max-width:30em}
.hero .actions{justify-content:center}
.hero-product{margin:clamp(40px,6vw,72px) auto 0;max-width:1000px;position:relative}
.hero-product svg{width:100%;height:auto}
.hero-product::after{content:"";position:absolute;left:0;right:0;bottom:0;height:28%;background:linear-gradient(transparent,#000);pointer-events:none}
.hero-grid{display:block}

/* animazioni degli schemi */
.spin{transform-box:fill-box;transform-origin:center;animation:spin linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.chain-links{animation:chain .35s linear infinite}
@keyframes chain{to{stroke-dashoffset:-11}}
.fall{animation:fall 3.4s cubic-bezier(.5,0,.8,.6) infinite}
@keyframes fall{0%{transform:translateY(0);opacity:0}12%{opacity:1}100%{transform:translateY(150px);opacity:.9}}

/* griglia di riquadri (bento) */
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.tile{position:relative;background:#fff;border-radius:var(--radius);padding:clamp(36px,4vw,56px) clamp(24px,3vw,44px) 0;text-align:center;overflow:hidden;display:flex;flex-direction:column;min-height:560px;color:var(--ink);text-decoration:none;transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}
section:not(.band-alt) .tile{background:var(--bg-alt)}
a.tile:hover{text-decoration:none;transform:scale(1.012);box-shadow:0 30px 60px -30px rgba(0,0,0,.25)}
.tile h3{font-size:clamp(28px,3vw,40px);font-weight:700;letter-spacing:-.03em;margin-bottom:8px}
.tile p{font-size:clamp(17px,1.5vw,19px);color:var(--ink-3);max-width:28em;margin:0 auto 14px}
.tile .more{justify-content:center}
.tile .tile-media{margin-top:auto;padding:28px 0 36px;display:grid;place-items:center;flex:1}
.tile .tile-media img{max-height:280px;width:auto;max-width:100%;transition:transform .8s var(--ease-out)}
a.tile:hover .tile-media img{transform:scale(1.04)}
.tile.dark{background:var(--tile-dark);color:#F5F5F7}
.tile.dark h3{color:#F5F5F7}
.tile.dark p{color:#A1A1A6}
.tile.wide{grid-column:1/-1;min-height:0}
@media (max-width:760px){.tiles{grid-template-columns:1fr}.tile{min-height:480px}}

/* storia a scorrimento (sezione PureTech) */
.story{background:var(--black);color:#F5F5F7;padding-block:clamp(80px,10vw,140px) clamp(40px,6vw,80px)}
.story-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,5vw,80px)}
.story-steps{padding-bottom:20vh}
.story-step{min-height:78vh;display:flex;flex-direction:column;justify-content:center;opacity:.25;transition:opacity .6s var(--ease)}
.story-step.on{opacity:1}
.story-step .num{font-size:14px;font-weight:600;color:#FF4B53;margin-bottom:12px;letter-spacing:.02em}
.story-step h3{font-size:clamp(30px,3.4vw,44px);font-weight:700;letter-spacing:-.03em;color:#F5F5F7;margin-bottom:14px}
.story-step p{font-size:clamp(17px,1.5vw,20px);color:#A1A1A6;max-width:26em}
.story-step p b{color:#F5F5F7;font-weight:600}
.story-visual{position:sticky;top:calc(56px + 6vh);height:calc(88vh - 56px);display:grid;place-items:center}
.story-visual svg{width:100%;height:100%;max-height:100%}
.story-intro{text-align:center;max-width:820px;margin:0 auto clamp(20px,4vw,40px)}
.story-intro .lead{margin:0 auto;color:#A1A1A6}
@media (max-width:860px){
  .story-grid{grid-template-columns:1fr}
  .story-visual{position:sticky;top:56px;height:46vh;z-index:0;background:linear-gradient(#000 80%,transparent)}
  .story-step{min-height:62vh;position:relative;z-index:1}
}
/* stati dello schema */
.story-svg .belt,.story-svg .chain,.story-svg .debris,.story-svg .sump .pickup,.story-svg .sump .pickup-s{transition:opacity .8s var(--ease),stroke .6s,fill .6s}
.story-svg[data-step="1"] .chain,.story-svg[data-step="2"] .chain,.story-svg[data-step="3"] .chain{opacity:0}
.story-svg[data-step="1"] .debris{opacity:0}
.story-svg[data-step="4"] .debris{opacity:0}
.story-svg .belt{transition:filter .8s}
.story-svg[data-step="4"] .belt{filter:drop-shadow(0 0 6px rgba(120,220,160,.35))}
.story-svg[data-step="2"] .belt,.story-svg[data-step="3"] .belt{filter:saturate(0) brightness(.8)}
.story-svg[data-step="3"] .sump .pickup{stroke:#FF4B53}
.story-svg[data-step="3"] .sump .pickup-s{stroke:#FF4B53;fill:#3a1113}

/* numeri grandi */
.bignums{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}
.bignums strong{display:block;font-size:clamp(44px,6vw,80px);font-weight:700;letter-spacing:-.04em;line-height:1;margin-bottom:12px;background:linear-gradient(180deg,#1D1D1F 30%,#6E6E73);-webkit-background-clip:text;background-clip:text;color:transparent}
.bignums strong em{font-style:normal;background:linear-gradient(90deg,var(--red),#FF6A3D);-webkit-background-clip:text;background-clip:text;color:transparent}
.bignums span{display:block;color:var(--ink-3);font-size:17px;max-width:18em;margin:0 auto}
@media (max-width:760px){.bignums{grid-template-columns:1fr;gap:48px}}

/* fascia numeri */
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center;padding-block:clamp(40px,5vw,64px)}
.facts strong{display:block;font-size:clamp(24px,2.4vw,32px);font-weight:700;letter-spacing:-.03em;margin-bottom:6px}
.facts span{display:block;color:var(--ink-3);font-size:15px}
@media (max-width:760px){.facts{grid-template-columns:1fr 1fr;row-gap:32px}}

/* foto e segnaposto */
.photo,.photo-slot{position:relative;background:var(--bg-alt);aspect-ratio:4/3;overflow:hidden;display:grid;place-content:center;text-align:center;color:var(--ink-3);font:500 14px/1.5 var(--font);padding:20px;border-radius:var(--radius)}
.photo.tall{aspect-ratio:4/5}
.photo.wide{aspect-ratio:16/9}
.photo > span{position:relative;z-index:1}
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band-dark .photo{background:var(--tile-dark);color:#86868B}
figure{margin:0}
figcaption{font-size:13px;color:var(--ink-3);margin-top:12px}

/* illustrazioni tecniche */
.ill{position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;display:grid;place-items:center;padding:28px;background:var(--bg-alt)}
.ill img{width:100%;height:100%;object-fit:contain}
.ill .idx{position:absolute;top:18px;left:22px;font-size:12px;color:var(--ink-3)}
.hero-ill{aspect-ratio:16/10;padding:clamp(18px,3vw,40px)}

/* griglie generiche */
.grid{display:grid;gap:20px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}
.service{display:flex;flex-direction:column;background:var(--bg-alt);border-radius:var(--radius);padding:30px;color:var(--ink);text-decoration:none}
a.service:hover{text-decoration:none}
.service .photo,.service .ill{margin:-10px -10px 22px;background:#fff}
.service p{color:var(--ink-3)}
.service .more{margin-top:auto}
.card{background:var(--bg-alt);border-radius:22px;padding:28px;display:flex;flex-direction:column}
.card p{color:var(--ink-3)}
.card .more{margin-top:auto}
.band-alt .card,.band-alt .service{background:#fff}
.band-dark .card{background:var(--tile-dark)}
.band-dark .card p{color:#A1A1A6}
.card-feature{box-shadow:inset 0 3px 0 var(--red)}

/* passaggi */
.steps{list-style:none;margin:0;padding:0;counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.steps li{counter-increment:step;background:var(--bg-alt);border-radius:22px;padding:30px 26px 32px}
.band-alt .steps li{background:#fff}
.steps li::before{content:counter(step);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;font-size:17px;font-weight:600;margin-bottom:22px}
.steps h3{font-size:21px;margin-bottom:8px}
.steps p{margin:0;color:var(--ink-3);font-size:16px}
.prose .steps,.steps.vertical{grid-template-columns:1fr;gap:12px}
.prose .steps li,.steps.vertical li{display:grid;grid-template-columns:40px 1fr;column-gap:20px;padding:22px 24px}
.prose .steps li::before,.steps.vertical li::before{grid-row:span 2;margin:0;background:var(--red)}
.prose .steps h3{margin:6px 0 4px}
.band-dark .steps li{background:var(--tile-dark)}
.band-dark .steps li::before{background:#F5F5F7;color:#000}
.band-dark .steps p{color:#A1A1A6}
@media (max-width:1000px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}

/* pagine interne */
.page-hero{padding-block:clamp(48px,7vw,96px) clamp(40px,5vw,72px);background:#fff}
.page-hero h1{font-size:clamp(40px,5.6vw,72px)}
.page-hero .lead{margin-top:18px}
.prose{max-width:720px}
.prose h2{margin-top:1.6em;font-size:clamp(28px,3vw,40px)}
.prose > h2:first-child{margin-top:0}
.prose h3{margin-top:1.3em}
.prose p,.prose li{color:var(--ink-2)}
.prose ul,.prose ol{padding-left:1.2em;margin:0 0 1.2em}
.prose li{margin-bottom:.45em}
.prose .note,.note{background:var(--bg-alt);padding:20px 24px;margin:1.6em 0;font-size:16px;border-radius:18px}
.prose .note.warn,.note.warn{background:#FCEFEE;box-shadow:inset 3px 0 0 var(--red)}
.layout-article{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:64px;align-items:start}
.aside{position:sticky;top:84px;display:grid;gap:16px}
@media (max-width:1000px){.layout-article{grid-template-columns:minmax(0,1fr)}.aside{position:static}}

/* tabelle */
.table-wrap{overflow-x:auto;margin:1.4em 0;border-radius:18px;background:var(--bg-alt);padding:6px 10px}
table{border-collapse:collapse;width:100%;font-size:15px}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line-soft)}
th{font-size:12px;font-weight:600;color:var(--ink-3)}
tr:last-child td{border-bottom:0}
code{font-family:"SF Mono",ui-monospace,Menlo,monospace;font-size:.9em;background:#fff;padding:1px 6px;border-radius:6px}

/* FAQ */
.faqs{max-width:820px;margin-inline:auto}
details.faq{border-bottom:1px solid var(--line)}
details.faq summary{cursor:pointer;list-style:none;padding:24px 48px 24px 0;font-size:clamp(19px,1.8vw,22px);font-weight:600;letter-spacing:-.02em;position:relative}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:9px;height:9px;border-right:1.5px solid var(--ink-3);border-bottom:1.5px solid var(--ink-3);transform:translateY(-70%) rotate(45deg);transition:transform .35s var(--ease-out)}
details.faq[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
details.faq > div{padding:0 48px 26px 0;color:var(--ink-3);font-size:17px;animation:faqIn .4s var(--ease-out)}
@keyframes faqIn{from{opacity:0;transform:translateY(-6px)}}
details.faq > div p:last-child{margin:0}

/* pro e contro */
.split{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:1.3em 0}
@media (max-width:720px){.split{grid-template-columns:1fr}}
.box{padding:26px;border-radius:22px;background:var(--bg-alt)}
.box h3{font-size:19px;margin-top:0}
.box ul{margin:0;padding-left:1.1em}
.box li{margin-bottom:.5em;font-size:16px}
.box-go{background:#EEF6F1}
.box-stop{background:#FBEFEF}

/* schema su fondo scuro (pagine interne) */
.diagram{background:var(--tile-dark);border-radius:var(--radius);padding:clamp(18px,2.6vw,32px)}
.diagram svg{width:100%;height:auto}
.diagram figcaption{margin-top:14px;font-size:13px;color:#86868B}

/* chiamata finale */
.cta-band{background:var(--bg-alt);text-align:center}
.cta-band .wrap{display:flex;flex-direction:column;align-items:center;gap:6px}
.cta-band h2{margin:0}
.cta-band p{color:var(--ink-3);font-size:clamp(19px,1.8vw,21px);font-weight:500;margin:6px 0 0}
.cta-band .actions{justify-content:center;margin-top:26px!important}

/* contatti */
.contact-list{list-style:none;padding:0;margin:0}
.contact-list li{display:grid;grid-template-columns:130px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}
.contact-list .k{font-size:14px;font-weight:600;color:var(--ink-3)}
@media (max-width:520px){.contact-list li{grid-template-columns:1fr;gap:2px}}

/* verificatore e riquadri */
.checker{background:var(--bg-alt);border-radius:var(--radius);padding:clamp(24px,3.4vw,40px)}
.aside .checker{padding:26px}
.field{display:grid;gap:8px;margin-bottom:22px}
.field label,.field legend{font-size:15px;font-weight:600}
.field .hint{font-size:14px;color:var(--ink-3)}
.field input,.field select{font:inherit;font-size:17px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);width:100%;max-width:380px;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%236E6E73' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px;padding-right:40px}
.field input:focus,.field select:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 4px rgba(210,16,26,.14)}
fieldset.field{border:0;padding:0;margin:0 0 22px}
.radios{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.radios label{font-size:15px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:#fff;padding:12px 16px;border-radius:12px;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.radios input{accent-color:var(--red);width:17px;height:17px}
.radios label:has(input:checked){border-color:var(--red);box-shadow:0 0 0 1px var(--red)}
.result{margin-top:26px;display:grid;gap:12px}
.r{padding:20px 22px;border-radius:18px;animation:rin .55s var(--ease-out) both}
.r:nth-child(2){animation-delay:.08s}.r:nth-child(3){animation-delay:.16s}
@keyframes rin{from{opacity:0;transform:translateY(10px)}}
.r-go{background:var(--go-bg)}
.r-warn{background:var(--warn-bg)}
.r-stop{background:var(--stop-bg)}
.r h3{font-size:19px;margin-bottom:4px}
.r p{margin:0;font-size:16px;color:var(--ink-2)}
.r-tag{display:block;font-size:12px;font-weight:600;color:var(--ink-3);margin-bottom:6px}

/* footer */
.site-footer{background:var(--bg-alt);color:var(--ink-3);font-size:12px;line-height:1.35;padding-top:40px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;padding-bottom:28px;border-bottom:1px solid var(--line)}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.footer-grid{grid-template-columns:1fr}}
.site-footer h3{font-size:12px;font-weight:600;color:var(--ink);margin-bottom:10px;letter-spacing:-.01em}
.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.site-footer p{margin:0 0 10px}
.site-footer a{color:var(--ink-3)}
.site-footer a:hover{color:var(--ink);text-decoration:underline}
.footer-logo{display:inline-block;line-height:0}
.footer-logo img{height:32px;width:auto;margin-bottom:16px}
.footer-legal{color:var(--ink-3);font-size:12px}
.footer-legal .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-block:16px 22px}

/* media + testo affiancati */
.split-media{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px);align-items:center}
.split-media.start{align-items:start;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
@media (max-width:900px){.split-media,.split-media.start{grid-template-columns:1fr;gap:32px}}
.facts-list{list-style:none;margin:0 0 1.2em;padding:0}
.facts-list li{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);margin:0}
.facts-list b{font-size:14px;font-weight:600;color:var(--ink-3)}
@media (max-width:560px){.facts-list li{grid-template-columns:1fr;gap:2px}}
.items{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.items > div{background:var(--bg-alt);border-radius:22px;padding:28px 26px 30px}
.band-alt .items > div{background:#fff}
.items h3{font-size:21px;margin-bottom:8px}
.items p{margin:0;color:var(--ink-3);font-size:16px}
.band-dark .items > div{background:var(--tile-dark)}
.band-dark .items p{color:#A1A1A6}
@media (max-width:960px){.items{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.items{grid-template-columns:1fr}}
.keypoints{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}
.keypoints li{background:var(--tile-dark);border-radius:16px;padding:16px 20px;color:#A1A1A6;font-size:16px}
.keypoints b{color:#F5F5F7}
.prose ol.steps{padding-left:0}
@media (max-width:560px){.brand img{height:30px}.header-in{gap:10px}}
@media (max-width:340px){.header-cta{display:none}}

/* comparsa allo scorrimento */
.js .reveal{opacity:0;transform:translateY(40px);transition:opacity 1s var(--ease-out),transform 1.1s var(--ease-out);transition-delay:var(--d,0s)}
.js .reveal.in{opacity:1;transform:none}
.js .hero .intro > *{animation:rise 1.2s var(--ease-out) both}
.js .hero .intro > :nth-child(2){animation-delay:.1s}
.js .hero .intro > :nth-child(3){animation-delay:.2s}
.js .hero .intro > :nth-child(4){animation-delay:.3s}
.js .hero-product{animation:product 1.8s var(--ease-out) .25s both}
@keyframes rise{from{opacity:0;transform:translateY(30px)}}
@keyframes product{from{opacity:0;transform:translateY(60px) scale(.94)}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .reveal{opacity:1;transform:none}
  .story-step{opacity:1}
}

/* ritocchi */
.bignums strong small{font-size:.5em;letter-spacing:-.02em}
.tile .tile-media.peek{padding:24px 0 0;margin-inline:auto;width:min(100%,760px)}
.tile .tile-media.peek svg{width:100%;height:auto;display:block}
@media (max-width:860px){
  .story-visual{order:-1;z-index:2;background:#000;top:56px;height:44vh;padding-bottom:8px}
  .story-steps{padding-bottom:6vh;position:relative;z-index:1}
  .story-step{min-height:70vh;justify-content:flex-end;padding-bottom:8vh}
}

/* ===== pagine interne in stile prodotto ===== */
.icon{width:24px;height:24px;flex:none}
.scope{animation:scope 2.6s linear infinite}
@keyframes scope{to{transform:translateX(var(--p))}}

/* testata */
.phero{text-align:center;padding-block:clamp(52px,7.5vw,104px) clamp(56px,7vw,96px);overflow:hidden}
.phero .crumbs{margin-bottom:26px}
.phero h1{max-width:15ch;margin:0 auto 18px}
.phero .lead{margin:0 auto;max-width:32em}
.phero .actions{justify-content:center}
.phero.dark{background:#000;color:#F5F5F7}
.phero.dark h1{color:#F5F5F7}
.phero.dark .lead{color:#A1A1A6}
.phero.dark .kicker{color:#FF4B53}
.phero.dark .crumbs,.phero.dark .crumbs a{color:#86868B}
.phero.dark .btn-ghost{border-color:#F5F5F7;color:#F5F5F7}
.phero.dark .btn-ghost:hover{background:#F5F5F7;color:#000}
.phero.dark .more{color:#FF4B53}
.phero.alt{background:var(--bg-alt)}
.phero-media{margin:clamp(40px,6vw,72px) auto 0;max-width:960px;position:relative}
.phero-media svg{width:100%;height:auto;overflow:visible}
.phero-media.fade::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:24%;background:linear-gradient(transparent,#000);pointer-events:none}
.js .phero .intro > *{animation:rise 1.1s var(--ease-out) both}
.js .phero .intro > :nth-child(2){animation-delay:.06s}
.js .phero .intro > :nth-child(3){animation-delay:.12s}
.js .phero .intro > :nth-child(4){animation-delay:.18s}
.js .phero .intro > :nth-child(5){animation-delay:.24s}
.js .phero-media{animation:product 1.6s var(--ease-out) .2s both}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px}
.chips span{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:980px;background:var(--bg-alt);color:var(--ink);font-size:14px;font-weight:500}
.phero.dark .chips span{background:#1D1D1F;color:#F5F5F7}
.chips .icon{width:17px;height:17px;color:var(--red)}
.phero.dark .chips .icon{color:#FF4B53}

/* caratteristiche con icona */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.features.two{grid-template-columns:repeat(2,1fr)}
.features.four{grid-template-columns:repeat(4,1fr)}
.feature{background:var(--bg-alt);border-radius:24px;padding:34px 30px 34px;position:relative}
.band-alt .feature{background:#fff}
.feature > .icon{width:36px;height:36px;color:var(--red);margin-bottom:22px}
.feature .n{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--ink);color:#fff;font-size:15px;font-weight:600;margin-bottom:22px}
.feature h3{font-size:21px;margin-bottom:8px}
.feature p{margin:0;color:var(--ink-3);font-size:16px}
.feature p + p{margin-top:10px}
.band-dark .feature,.story .feature{background:var(--tile-dark)}
.band-dark .feature h3{color:#F5F5F7}
.band-dark .feature p{color:#A1A1A6}
.band-dark .feature > .icon{color:#FF4B53}
@media (max-width:1000px){.features,.features.four{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.features,.features.two,.features.four{grid-template-columns:1fr}}

/* dichiarazione grande */
.statement{text-align:center}
.statement h2{font-size:clamp(34px,5.2vw,64px);max-width:17ch;margin:0 auto 18px}
.statement p{font-size:clamp(19px,1.9vw,24px);color:var(--ink-3);font-weight:500;max-width:32em;margin:0 auto}
.band-dark.statement p,.band-dark .statement p{color:#A1A1A6}
.statement .grad{background:linear-gradient(90deg,var(--red),#FF6A3D);-webkit-background-clip:text;background-clip:text;color:transparent}

/* quando conviene / quando no */
.proscons{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pc{border-radius:var(--radius);padding:clamp(28px,3.4vw,44px)}
.pc h3{font-size:clamp(24px,2.4vw,30px);margin-bottom:22px;display:flex;align-items:center;gap:12px}
.pc h3 .badge{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;flex:none}
.pc h3 .badge .icon{width:18px;height:18px;color:#fff}
.pc ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.pc li{display:grid;grid-template-columns:22px 1fr;gap:12px;color:var(--ink-2);font-size:16.5px}
.pc li .icon{width:20px;height:20px;margin-top:2px}
.pc.go{background:#EEF6F1}.pc.go .badge{background:var(--go)}.pc.go li .icon{color:var(--go)}
.pc.no{background:#FBEFEF}.pc.no .badge{background:var(--red)}.pc.no li .icon{color:var(--red)}
@media (max-width:760px){.proscons{grid-template-columns:1fr}}

/* riquadro con tabella */
.table-card{background:var(--bg-alt);border-radius:var(--radius);padding:clamp(18px,3vw,36px);max-width:900px;margin:0 auto}
.table-card .table-wrap{background:transparent;padding:0;margin:0}
.table-card table{font-size:16px}
.table-card th{padding-top:4px}
.table-card code{background:#fff}
.note-center{text-align:center;color:var(--ink-3);max-width:40em;margin:22px auto 0;font-size:15px}

/* prezzi e tempi */
.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.price{background:var(--bg-alt);border-radius:var(--radius);padding:36px 30px;text-align:center}
.price .icon{width:34px;height:34px;color:var(--red);margin:0 auto 16px}
.price strong{display:block;font-size:clamp(26px,2.6vw,34px);letter-spacing:-.03em;margin-bottom:6px}

@media (max-width:860px){.pricing{grid-template-columns:1fr}}

/* articoli (guide) */
.article-head{text-align:center;padding-block:clamp(52px,7vw,96px) clamp(28px,4vw,48px)}
.article-head h1{font-size:clamp(36px,5vw,60px);max-width:18ch;margin:0 auto 18px}
.article-head .lead{margin:0 auto}
.article-head .meta{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 18px;margin-top:22px;color:var(--ink-3);font-size:14px}
.article-head .meta span{display:inline-flex;align-items:center;gap:6px}
.article-head .meta .icon{width:16px;height:16px}
.article-body{padding-top:clamp(20px,3vw,40px)}
.article-body .prose{margin:0 auto;max-width:700px;font-size:18px;line-height:1.6}
.article-body .prose p,.article-body .prose li{font-size:18px}
.article-body .prose h2{font-size:clamp(28px,3vw,38px)}
.article-body .prose .photo{margin:1.8em 0}
.related{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:940px;margin:0 auto}
.related > *{margin:0}
@media (max-width:760px){.related{grid-template-columns:1fr}}

/* riquadri contatto */
.contact-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ctile{background:var(--bg-alt);border-radius:var(--radius);padding:40px 28px;text-align:center;color:var(--ink);display:flex;flex-direction:column;align-items:center;text-decoration:none;transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}
a.ctile:hover{text-decoration:none;transform:scale(1.015);box-shadow:0 26px 50px -30px rgba(0,0,0,.28)}
.ctile .icon{width:42px;height:42px;color:var(--red);margin-bottom:18px}
.ctile strong{font-size:clamp(22px,2.2vw,28px);letter-spacing:-.03em;margin-bottom:6px}
.ctile span{color:var(--ink-3);font-size:15.5px}
.ctile .more{margin-top:14px}
@media (max-width:860px){.contact-tiles{grid-template-columns:1fr}}
.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.info{background:var(--bg-alt);border-radius:var(--radius);padding:clamp(26px,3vw,40px)}
.info h3{display:flex;align-items:center;gap:10px}
.info h3 .icon{color:var(--red);width:22px;height:22px}
.info p,.info li{color:var(--ink-2)}
.info ul{margin:0;padding-left:1.1em}
@media (max-width:760px){.info-grid{grid-template-columns:1fr}}

/* verificatore centrato */
.checker-wrap{max-width:760px;margin:0 auto}
.checker-wrap .checker{padding:clamp(26px,4vw,48px)}
.checker .field input,.checker .field select{max-width:none}
.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media (max-width:560px){.two-fields{grid-template-columns:1fr}}
.checker .btn{width:100%;margin-top:6px}

/* chi siamo */
.portrait{max-width:520px;margin:0 auto}
.bio{max-width:700px;margin:0 auto;font-size:clamp(19px,1.8vw,22px);line-height:1.5;color:var(--ink-2)}
.bio p{margin-bottom:1.1em}
.bio strong{color:var(--ink)}
.bignums.four{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.bignums.four{grid-template-columns:1fr 1fr}}
.feature .n .icon{width:18px;height:18px}
.big-icon{display:grid;place-items:center;width:150px;height:150px;border-radius:50%;background:#fff;box-shadow:0 20px 40px -24px rgba(0,0,0,.25)}
.big-icon .icon{width:64px;height:64px;color:var(--red);stroke-width:1.3}
section:not(.band-alt) .tile .big-icon{background:#fff}
.info .btn{margin-top:6px}
.info h3{font-size:20px}
.article-head .crumbs{margin-bottom:24px}
.phero .crumbs a:hover{color:inherit}
.tile.dark{background:var(--tile-dark)!important}
.price > span{color:var(--ink-3);font-size:15.5px;display:block}
.price span.todo{display:inline;font-size:inherit;color:#5A4300}
.band-alt .photo{background:#fff}
.band-alt .info,.band-alt .ctile,.band-alt .price,.band-alt .feature{background:#fff}
.ctile span.more{color:var(--red-link);font-size:17px}
.preview-bar a{color:#5A4300;text-decoration:underline}
