:root{--bg-cream:#FBF8F2;--bg-cream-deep:#F5EFE3;--bg-white:#FFFFFF;--ink:#1F1813;--ink-soft:#5A4A3D;--ink-mute:#9C8B7B;--viola-deep:#655a9c;--viola-deep-soft:#7a6fb0;--terra:#df7a4a;--terra-deep:#b8633a;--terra-light:#e8a070;--cubo-arancio-light:#df7a4a;--cubo-arancio-dark:#df7a4a;--cubo-verde-light:#d4d965;--cubo-verde-dark:#9ec165;--cubo-rosso-light:#d95d84;--cubo-rosso-dark:#d33935;--cubo-viola:#655a9c;--cubo-azzurro:#67b2e2;--serif:'Playfair Display',Georgia,serif;--nav: 'Montserrat', sans-serif;
  --sans:'Open Sans',-apple-system,sans-serif;--radius-card:16px;--radius-btn:6px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--bg-cream);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.header{border-bottom:1px solid rgba(31,24,19,.08);padding:24px 56px;position:sticky;top:0;z-index:100;backdrop-filter:blur(8px);background:rgba(251,248,242,.95)}
.header-inner{max-width:1440px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:40px}
.logo img{height:58px;width:auto}
.nav{display:flex;align-items:center;gap:36px}
.nav a{font-size:15px;color:var(--ink);font-weight:400;transition:color .3s;position:relative}
.nav a:hover,.nav a.active{color:var(--terra)}
.nav-cta{background:var(--viola-deep);color:var(--bg-cream)!important;padding:11px 24px;font-size:14px;font-weight:500;border-radius:var(--radius-btn);transition:all .3s}
.nav-cta:hover{background:var(--terra)!important}
.label-cubotto{display:inline-flex;align-items:center;gap:12px;font-family:var(--sans);font-size:11px;text-transform:uppercase;letter-spacing:1.8px;color:var(--ink);font-weight:600;margin-bottom:24px}
.label-cubotto img{width:32px;height:32px}
.btn{display:inline-flex;align-items:center;gap:12px;font-family:var(--sans);font-size:14px;font-weight:500;padding:16px 28px;text-decoration:none;transition:all .3s;border:1px solid;cursor:pointer;border-radius:var(--radius-btn)}
.btn-primary{background:var(--terra);color:#fff;border-color:var(--terra)}
.btn-primary:hover{background:var(--terra-deep);border-color:var(--terra-deep);transform:translateX(3px)}
.btn-secondary{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-secondary:hover{background:var(--ink);color:var(--bg-cream)}
.section{padding:120px 56px}
.section-inner{max-width:1440px;margin:0 auto}
h1.serif,h2.serif,h3.serif{font-family:var(--serif);font-weight:300;letter-spacing:-1.5px;color:var(--ink);line-height:1.05}
h1.serif{font-size:72px}h2.serif{font-size:56px}h3.serif{font-size:38px}
em.italic{font-style:italic;color:var(--terra);font-weight:400}
.page-intro{background:var(--bg-cream);padding:120px 56px 80px;text-align:center}
.page-intro h1{font-family:var(--serif);font-weight:300;font-size:80px;line-height:1;letter-spacing:-2.5px;margin-bottom:24px}
.page-intro h1 em{font-style:italic;color:var(--terra);font-weight:400}
.page-intro p{font-family:var(--serif);font-weight:300;font-size:22px;line-height:1.5;color:var(--ink-soft);max-width:760px;margin:0 auto}
footer{background:var(--viola-deep);color:var(--bg-cream);padding:100px 56px 40px}
.footer-grid{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:64px;padding-bottom:64px;border-bottom:1px solid rgba(251,248,242,.15)}
.footer-brand img{height:62px;margin-bottom:24px;filter:brightness(0) invert(1)}
.footer-brand p{font-family:var(--serif);font-weight:300;font-size:17px;line-height:1.55;color:rgba(251,248,242,.7);max-width:360px;font-style:italic}
.footer-col h5{font-family:var(--sans);font-size:11px;text-transform:uppercase;letter-spacing:1.8px;color:var(--terra-light);font-weight:600;margin-bottom:20px}
.footer-col ul{list-style:none}.footer-col li{margin-bottom:12px}
.footer-col a{font-size:14px;color:rgba(251,248,242,.78);transition:color .3s}
.footer-col a:hover{color:var(--terra-light)}
.footer-col p{font-size:13px;color:rgba(251,248,242,.68);line-height:1.7}
.footer-bottom{max-width:1440px;margin:0 auto;padding-top:40px;display:flex;justify-content:space-between;font-size:12px;color:rgba(251,248,242,.45)}
.footer-bottom a{color:rgba(251,248,242,.45);margin-left:24px}
@media(max-width:1024px){.nav{display:none}.header{padding:16px 32px}.section{padding:64px 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}}
/* ═════ REVISIONE LIVELLO 2 ═════ */
/* Fade-in progressivo */
.ari-fade{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.2,.6,.2,1),transform .8s cubic-bezier(.2,.6,.2,1)}
.ari-visible{opacity:1;transform:translateY(0)}
/* Sticky scroll asimmetrico */
.sticky-split{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;max-width:1440px;margin:0 auto;padding:120px 56px;align-items:start}
.sticky-text{display:flex;flex-direction:column;gap:80px}
.sticky-media{position:sticky;top:140px;aspect-ratio:4/5;border-radius:var(--radius-card);overflow:hidden}
.sticky-media img{width:100%;height:100%;object-fit:cover;transition:opacity .8s}
.sticky-step h3{font-family:var(--serif);font-weight:500;font-size:32px;line-height:1.15;color:var(--ink);margin-bottom:16px;letter-spacing:-0.8px}
.sticky-step h3 em{font-style:italic;color:var(--terra);font-weight:400}
.sticky-step .step-num{font-family:var(--serif);font-style:italic;font-size:14px;text-transform:uppercase;letter-spacing:1.8px;color:var(--terra);font-weight:600;margin-bottom:12px}
.sticky-step p{font-size:16px;line-height:1.7;color:var(--ink-soft)}
/* Blocco 50/50 rigido - momento di stacco */
.split-50{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:560px}
.split-50 > div{padding:100px 64px;display:flex;flex-direction:column;justify-content:center}
.split-50 > img, .split-50 > .split-img{width:100%;height:100%;min-height:560px;object-fit:cover}
.split-50 .split-img{background-size:cover;background-position:center}
/* Numeri watermark giganti */
.watermark-num{position:relative}
.watermark-num::before{content:attr(data-num);position:absolute;right:-20px;top:-60px;font-family:var(--serif);font-style:italic;font-weight:300;font-size:320px;line-height:.8;color:rgba(232,116,60,.06);pointer-events:none;user-select:none;letter-spacing:-12px;z-index:0}
.watermark-num > *{position:relative;z-index:1}
/* Blocco bianco puro di respiro */
.white-stop{background:var(--bg-white);padding:140px 56px;border-top:1px solid rgba(31,24,19,.04);border-bottom:1px solid rgba(31,24,19,.04)}
.white-stop-inner{max-width:980px;margin:0 auto;text-align:center}
/* Blocco home teaser */
.home-teaser{padding:100px 56px}
.home-teaser.alt{background:var(--bg-cream)}
.home-teaser-grid{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}
.home-teaser-grid.reverse{grid-template-columns:1fr 1.2fr}
.home-teaser-img{aspect-ratio:4/3;width:100%;min-height:360px;border-radius:var(--radius-card);overflow:hidden;background:var(--bg-cream-deep);display:block}
.home-teaser > div{display:block}
.home-teaser-img img{width:100%;height:100%;object-fit:cover}
.home-teaser h2{font-family:var(--serif);font-weight:300;font-size:52px;line-height:1.05;letter-spacing:-1.5px;margin-bottom:20px}
.home-teaser h2 em{font-style:italic;color:var(--terra);font-weight:400}
.home-teaser p{font-family:var(--serif);font-weight:300;font-size:19px;line-height:1.55;color:var(--ink-soft);margin-bottom:28px;max-width:520px}
.home-teaser .teaser-link{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-size:14px;font-weight:500;color:var(--terra);border-bottom:1px solid var(--terra);padding-bottom:2px;transition:gap .3s}
.home-teaser .teaser-link:hover{gap:16px}
@media(max-width:1024px){.sticky-split,.home-teaser-grid,.home-teaser-grid.reverse{grid-template-columns:1fr;gap:40px}.sticky-text{gap:40px}.sticky-media{position:relative;top:0}.split-50{grid-template-columns:1fr}.split-50 > img,.split-50 > .split-img{min-height:300px}.watermark-num::before{font-size:180px}}
