/* Blocchi e transizioni come su lumion.com, per le pagine "Lumion per" — 26/10/2026
   Usato da: progettazione-architettonica, interior-design, architettura-del-paesaggio, educational.
   Ogni pagina ha il suo colore (classe sul body, da $page['palette'] in inc/head.php):
   viola = architettura, arancio = interni, verde = paesaggio, blu = educational.
   Script: assets/js/lumion-blocchi.js. Componenti PHP: inc/lib_blocchi.php */
@font-face{font-family:'Oldschool Grotesk';src:url(../fonts/home-oldschool-grotesk-500.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'Söhne';src:url(../fonts/home-sohne-300.woff2) format('woff2');font-weight:300;font-style:normal;font-display:swap;}
@font-face{font-family:'Söhne';src:url(../fonts/home-sohne-700.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap;}
:root{
  --pc:#2b5486; --pa:#b8d6ed; --pc-dark:#1f4166;               /* colore della pagina e accento (blu di base) */
  --blue:#2b5486; --blue-dark:#1f4166; --blue-light:#b8d6ed; --blue-tint:#eef4fa;   /* usati anche da moduli.css */
  --ink:#000; --ink-soft:#4b5563; --line:#e5e7eb; --grey:#f3f3f3;
  --radius:8px; --maxw:1440px; --gut:48px; --sec:120px;
  --ease:cubic-bezier(.22,.7,.2,1);
  /* --pt testo/bordi colore pagina su bianco; --on testo su fondo colorato; --bf pulsante pieno su bianco;
     --bl pulsante pieno su fondo colorato (classe lb-light) */
}
/* 27/10: variabili derivate dichiarate sul body, così seguono la palette della pagina (su :root restavano blu) */
body{--pt:var(--pc); --on:#fff;
  --bf:var(--pc); --bft:#fff; --bfh:var(--pc-dark);
  --bl:var(--pa); --blt:var(--pc); --blh:#fff; --blht:var(--pc);
}
body.pal-viola{--pc:#66263d;--pa:#db99b5;--pc-dark:#4d1c2e;}
body.pal-arancio{--pc:#b67012;--pa:#fae5a3;--pc-dark:#8c560d;}
body.pal-verde{--pc:#145a46;--pa:#a3d9c4;--pc-dark:#0e4435;}
body.pal-blu{--pc:#2b5486;--pa:#b8d6ed;--pc-dark:#1f4166;}
/* 27/10/2026: giallo (Axogram, testi scuri) e antracite (Lumion Cloud e AI, pulsanti blu) */
body.pal-verdechiaro{--pc:#4f7d38;--pa:#e5ffcf;--pc-dark:#3d6229;}
body.pal-giallo{--pc:#f9bc1c;--pa:#333132;--pc-dark:#d99f0b;--pt:#333132;--on:#333132;
  --bf:#333132;--bft:#f2f2f2;--bfh:#000;--bl:#333132;--blt:#f2f2f2;--blh:#000;--blht:#fff;}
body.pal-antracite{--pc:#212124;--pa:#fff;--pc-dark:#000;--pt:#212124;--on:#fff;
  --bf:#3174e9;--bft:#fff;--bfh:#1f5fd0;--bl:#3174e9;--blt:#fff;--blh:#1f5fd0;--blht:#fff;}
body.pal-giallo .sec-dark .lb-out-light,body.pal-giallo .hero .lb-out-light,body.pal-giallo .ctab .lb-out-light,body.pal-giallo .closing .lb-out-light{border-color:#333132;color:#333132;}
body.pal-antracite .lb-out-light{border-color:#fff;color:#fff;}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:"Söhne","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:300;color:var(--ink);background:#fff;line-height:1.5;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;}
b,strong{font-weight:700;}
main.lp{overflow-x:clip;}
.lp h1,.lp h2,.lp h3{font-family:'Oldschool Grotesk','Söhne','Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:500;margin:0 0 24px;letter-spacing:0;color:var(--pt);}
.lp h2{font-size:clamp(32px,3.3vw,47px);line-height:1.2;}
.lp h2.big{font-size:clamp(38px,4.4vw,63px);line-height:1.1;}
.lp h3{font-size:24px;line-height:1.33;}
.lp p,.lp li{font-size:18px;line-height:24px;}
.lp p{margin:0 0 18px;}
.lp ul{margin:0 0 18px;padding-left:22px;}
.lp p a,.lp li a{color:var(--pt);font-weight:700;text-underline-offset:3px;}
.lp .accent{color:var(--pa);}
.lw{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut);}
.sec{padding:var(--sec) 0;}
.sec-top0{padding-top:0;}
.sec-dark{background:var(--pc);}
.sec-dark h2,.sec-dark h3{color:var(--pa);}
.sec-dark p,.sec-dark li{color:var(--on);}
.sec-dark p a{color:var(--pa);}
.sec-grey{background:var(--grey);}
.intro-t{max-width:760px;margin-bottom:64px;}
.title-c{text-align:center;max-width:900px;margin:0 auto 64px;}
.title-c p{color:var(--pt);}
.sec-dark .title-c p{color:var(--pa);}
.eyebrow-t{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:24px;line-height:32px;color:var(--pt);margin:0 0 12px;}
.lp p.eyebrow-t{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:24px;line-height:32px;color:var(--pt);margin:0 0 12px;}
.sec-dark .eyebrow-t,.lp .sec-dark p.eyebrow-t{color:var(--pa);}
.cta-row{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin-top:32px;}

/* PULSANTI: angoli a 4px e testo che scorre in su al passaggio del mouse */
.lb{position:relative;display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 24px;border-radius:4px;border:2px solid var(--pt);
  font-size:16px;font-weight:300;line-height:24px;text-decoration:none;overflow:hidden;white-space:nowrap;transition:background .3s ease,color .3s ease,border-color .3s ease;}
.lb span{display:block;position:relative;transition:transform .45s var(--ease);}
.lb span::after{content:attr(data-t);position:absolute;left:0;top:100%;margin-top:16px;width:100%;text-align:center;}
.lb:hover span,.lb:focus-visible span{transform:translateY(calc(-100% - 16px));}
.lb:focus-visible{outline:2px solid var(--pa);outline-offset:3px;}
.lb-fill{background:var(--bf);border-color:var(--bf);color:var(--bft);}
.lb-fill:hover{background:var(--bfh);border-color:var(--bfh);}
.lb-out{background:transparent;color:var(--pt);}
.lb-light{background:var(--bl);border-color:var(--bl);color:var(--blt);}
.lb-light:hover{background:var(--blh);border-color:var(--blh);color:var(--blht);}
.lb-out-light{background:transparent;border-color:var(--pa);color:var(--pa);}
.lb-out-white{background:transparent;border-color:#fff;color:#fff;}

/* COMPARSA: media e testi salgono e appaiono entrando nello schermo */
.js .rv{opacity:0;transform:translateY(50px);transition:opacity 1s var(--ease),transform 1s var(--ease);}
.js .rvt{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease);}
.js .rv.is-in,.js .rvt.is-in{opacity:1;transform:none;}

/* HERO (come la home, con immagine fissa e i colori della pagina) */
.hero{position:relative;height:calc(100vh - 88px);min-height:600px;max-height:820px;display:flex;align-items:center;overflow:hidden;background:var(--pc);}
.hero-media{position:absolute;top:0;right:0;bottom:0;left:44%;overflow:hidden;clip-path:url(#heroWindow);}
.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;animation:heroZoom 1.6s var(--ease) both;}
@keyframes heroZoom{from{transform:scale(1.08);}to{transform:none;}}
.hero-inner{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:0 var(--gut);width:100%;}
.hero h1{color:var(--pa);font-size:clamp(48px,6.45vw,93px);line-height:1.1;max-width:640px;margin-bottom:32px;}
.hero p{color:var(--pa);font-size:24px;line-height:32px;max-width:430px;margin-bottom:0;}
.hero .cta-row{margin-top:48px;}
.hero-inner > *{animation:heroIn .9s var(--ease) both;}
.hero-inner > *:nth-child(2){animation-delay:.12s;} .hero-inner > *:nth-child(3){animation-delay:.24s;}
@keyframes heroIn{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:none;}}

/* TITOLO CHE APPARE E SVANISCE ALLO SCORRIMENTO (come "Fit for your creative process") */
.ft{background:#fff;}
.ft-track{height:200vh;}
.ft-sticky{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 var(--gut);}
.ft h2{max-width:900px;margin:0 0 32px;}
.ft-line{display:block;overflow:clip;padding-bottom:.08em;}
.ft-line > span{display:block;will-change:transform;}
.ft p{max-width:760px;color:var(--pt);font-size:24px;line-height:32px;margin:0;will-change:opacity,transform;}
.js .ft-line > span{transform:translateY(105%);}
.js .ft p{opacity:0;}

/* BLOCCHI TESTO + MEDIA */
.vblock-grid{display:grid;grid-template-columns:minmax(0,435fr) minmax(0,869fr);gap:40px;align-items:center;}
.vblock-rev .vblock-grid{grid-template-columns:minmax(0,869fr) minmax(0,435fr);}
.vblock-rev .vblock-media{order:-1;}
.vblock-text p{color:var(--ink);}
.sec-dark .vblock-text p{color:var(--on);}
.vblock h2{margin-bottom:32px;}
.vblock-media{margin:0;}
.vblock-media figcaption,.cap{font-size:14px;color:var(--pt);margin-top:16px;text-align:center;}
.sec-dark .vblock-media figcaption,.sec-dark .cap{color:var(--pa);}
.vblock-big .vblock-grid{grid-template-columns:minmax(0,435fr) minmax(0,1100fr);}

/* VIDEO A CICLO CONTINUO (partono solo quando sono visibili, pulsante pausa) */
.vb-frame{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:color-mix(in srgb,var(--pa) 45%,#fff);}
.vb-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .5s ease;}
.vb-video.is-active{opacity:1;}
.vb-toggle{position:absolute;right:14px;bottom:14px;z-index:2;width:38px;height:38px;border-radius:50%;border:0;cursor:pointer;background:rgba(16,20,30,.55);color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease,background .2s ease;}
.vb-frame:hover .vb-toggle,.vb-toggle:focus-visible,.vb-frame.is-paused .vb-toggle{opacity:1;}
.vb-toggle:hover{background:rgba(16,20,30,.8);}
.vb-toggle svg{width:18px;height:18px;}
.vb-toggle .i-play,.vb-frame.is-paused .vb-toggle .i-pause{display:none;}
.vb-frame.is-paused .vb-toggle .i-play{display:block;}
@media(hover:none){.vb-toggle{opacity:.85;}}
.img-frame{border-radius:var(--radius);overflow:hidden;aspect-ratio:16/9;background:var(--grey);}
.img-frame img{width:100%;height:100%;object-fit:cover;}

/* FISARMONICA */
.acc{margin-top:8px;}
.acc-item{border-bottom:1px solid var(--pt);}
.sec-dark .acc-item{border-color:var(--pa);}
.acc-item h3{margin:0;font-size:inherit;}
.acc-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;background:none;border:0;cursor:pointer;text-align:left;font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:24px;line-height:32px;color:var(--pt);}
.sec-dark .acc-btn{color:var(--pa);}
.acc-btn svg{flex:0 0 20px;width:20px;height:20px;transition:transform .35s var(--ease);}
.acc-btn[aria-expanded="true"] svg{transform:rotate(180deg);}
.acc-btn:focus-visible{outline:2px solid currentColor;outline-offset:4px;}
.acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease);}
.acc-item.is-open .acc-panel{grid-template-rows:1fr;}
.acc-in{overflow:hidden;}
.acc-in > :last-child{margin-bottom:24px;}
.acc-in p,.acc-in li{font-size:16px;line-height:22px;}
.acc-in p{margin-bottom:12px;}

/* LOGHI — fondo grigio, scorrimento con frecce */
.logos{background:var(--grey);}
.logos .title-c p{color:var(--ink);}
.logos-wrap{position:relative;padding:0 56px;}
.logos-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;}
.logos-track::-webkit-scrollbar{display:none;}
.logos-track a{flex:0 0 20%;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;height:80px;padding:0 20px;text-decoration:none;color:var(--ink);}
.logos-track img{height:34px;width:auto;max-width:100%;transition:transform .3s var(--ease);}
.logos-track a:hover img{transform:scale(1.06);}
.logos-more{gap:10px;font-size:18px;font-weight:700;}
.logos-more svg{width:22px;height:22px;transition:transform .3s var(--ease);}
.logos-more:hover svg{transform:translateX(4px);}
.logos-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;background:none;color:var(--pt);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease;}
.logos-arrow[disabled]{opacity:.25;cursor:default;}
.logos-arrow svg{width:26px;height:26px;}
.logos-prev{left:0;} .logos-next{right:0;}

/* IMMAGINE CON PUNTI "+" (come "A world of possibilities"): ogni punto apre un pannello con le varianti */
.hs{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:#111;}
.hs-base{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),filter .6s ease;}
.hs.is-open .hs-base{transform:scale(1.04);filter:brightness(.6);}
.hs-btn{position:absolute;z-index:2;width:80px;height:80px;margin:-40px 0 0 -40px;border-radius:50%;border:1.5px solid #fff;background:rgba(255,255,255,.1);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;
  backdrop-filter:blur(2px);transition:background .3s ease,color .3s ease,transform .3s var(--ease),opacity .3s ease;animation:hsPulse 2.4s ease-in-out infinite;}
.hs-btn:nth-of-type(2n){animation-delay:.6s;} .hs-btn:nth-of-type(3n){animation-delay:1.2s;}
.hs-btn svg{width:26px;height:26px;transition:transform .3s var(--ease);}
.hs-btn:hover,.hs-btn:focus-visible{background:#fff;color:var(--ink);transform:scale(1.08);}
.hs-btn:hover svg{transform:rotate(90deg);}
.hs.is-open .hs-btn{opacity:0;pointer-events:none;}
@keyframes hsPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.45);}50%{box-shadow:0 0 0 12px rgba(255,255,255,0);}}
.hs-drawer{position:absolute;inset:0;z-index:3;display:grid;grid-template-columns:1.7fr 1fr;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s;}
.hs-drawer.is-open{opacity:1;visibility:visible;}
.hs-view{position:relative;overflow:hidden;}
.hs-view img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .5s ease,transform .9s var(--ease);}
.hs-view img.is-active{opacity:1;transform:none;}
.hs-panel{background:#fff;padding:56px 48px 40px;overflow:auto;transform:translateX(24px);transition:transform .5s var(--ease);}
.hs-drawer.is-open .hs-panel{transform:none;}
.hs-panel h3,.sec-dark .hs-panel h3{margin-bottom:12px;color:var(--pt);}
.sec-dark .hs-panel p{color:var(--ink);}
.hs-panel p{font-size:18px;color:var(--ink);}
.hs-thumbs{display:flex;gap:16px;overflow-x:auto;padding:4px 2px 8px;margin-top:24px;scrollbar-width:thin;}
.hs-thumbs button{flex:0 0 150px;aspect-ratio:1;border-radius:6px;overflow:hidden;border:3px solid transparent;padding:0;cursor:pointer;background:#eee;transition:border-color .25s ease,transform .25s var(--ease);}
.hs-thumbs button.is-active{border-color:var(--pt);}
.hs-thumbs button:hover{transform:translateY(-2px);}
.hs-thumbs img{width:100%;height:100%;object-fit:cover;}
.hs-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:0;background:none;color:var(--pt);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.hs-close svg{width:22px;height:22px;transition:transform .3s var(--ease);}
.hs-close:hover svg{transform:rotate(90deg);}

/* MOSAICO DI IMMAGINI E VIDEO (righe 1/3 + 2/3 alternate) */
.mo-row{display:grid;grid-template-columns:1fr 1.78fr;gap:24px;margin-bottom:24px;}
.mo-row.rev{grid-template-columns:1.78fr 1fr;}
.mo-item{position:relative;margin:0;height:clamp(220px,33vw,474px);border-radius:var(--radius);overflow:hidden;background:color-mix(in srgb,var(--pa) 45%,#fff);}
.mo-item > img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease);}
.mo-item .vb-frame{height:100%;aspect-ratio:auto;border-radius:0;}
.mo-item figcaption{position:absolute;left:16px;bottom:16px;z-index:2;max-width:calc(100% - 80px);padding:6px 12px;border-radius:4px;background:rgba(255,255,255,.92);color:var(--pt);font-size:14px;line-height:20px;opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .35s var(--ease);}
.mo-item:hover > img{transform:scale(1.03);}
.mo-item:hover figcaption{opacity:1;transform:none;}
.badge{position:absolute;top:16px;right:16px;z-index:2;padding:6px 14px;border-radius:4px;background:rgba(255,255,255,.85);color:var(--pt);font-size:14px;font-weight:700;}
.media-pair{display:grid;grid-template-columns:1fr 1.78fr;gap:24px;}
.media-pair > *{height:clamp(220px,33vw,474px);}
.media-pair .vb-frame,.media-pair .img-frame{height:100%;aspect-ratio:auto;}

/* FASCIA DI INVITO SU FONDO COLORATO */
.ctab{background:var(--pc);padding:96px 0;text-align:center;}
.ctab h2{color:var(--pa);margin-bottom:24px;}
.ctab p{color:var(--pa);font-size:24px;line-height:32px;max-width:900px;margin:0 auto;}
.ctab .cta-row{justify-content:center;margin-top:40px;}

/* SCHEDE IN COLONNE */
.cards{display:grid;gap:32px;}
.cards-3{grid-template-columns:repeat(3,1fr);}
.cards-4{grid-template-columns:repeat(4,1fr);}
.cards-2{grid-template-columns:repeat(2,1fr);}
.card-media{border-radius:var(--radius);overflow:hidden;margin-bottom:24px;aspect-ratio:16/9;background:#111;}
.cards-4 .card-media{aspect-ratio:4/5;}
.card-media img,.card-media .vb-frame{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.card-media .vb-frame{aspect-ratio:auto;border-radius:0;}
.cards article:hover .card-media img{transform:scale(1.03);}
.cards h3{margin-bottom:12px;}
.sec-dark .cards p{color:var(--on);}

/* TRE COLLEGAMENTI SU FONDO COLORATO */
.linkgrid{display:grid;grid-template-columns:repeat(3,1fr);background:var(--pc);}
.linkgrid a{display:flex;flex-direction:column;padding:64px var(--gut) 48px;color:var(--pa);text-decoration:none;border-left:1px solid color-mix(in srgb,var(--pa) 40%,transparent);}
.linkgrid a:first-child{border-left:0;}
.linkgrid h3{font-size:clamp(32px,3.3vw,47px);line-height:1.2;color:var(--pa);margin-bottom:24px;}
.linkgrid p{color:var(--pa);margin-bottom:32px;}
.lg-arrow{margin-top:auto;width:80px;height:80px;border:1.5px solid var(--pa);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .3s ease,color .3s ease;}
.lg-arrow svg{width:30px;height:30px;transition:transform .35s var(--ease);}
.linkgrid a:hover .lg-arrow{background:var(--pa);color:var(--pc);}
.linkgrid a:hover .lg-arrow svg{transform:translateX(4px);}

.linkgrid-light{background:#fff;border-top:1px solid var(--pc);border-bottom:1px solid var(--pt);}
.linkgrid-light a{color:var(--pt);border-left-color:var(--pt);}
.linkgrid-light h3,.linkgrid-light p{color:var(--pt);}
.linkgrid-light .lg-arrow{border-color:var(--pt);}
.linkgrid-light a:hover .lg-arrow{background:var(--pc);color:#fff;}

/* CAROSELLO ORIZZONTALE (come "Details matter", "Interior furniture", "Living landscapes") */
.hcar-head > *{max-width:760px;}
.hcar{position:relative;margin-top:48px;}
.hcar-track{display:flex;gap:40px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:0 var(--gut) 0 max(var(--gut),calc((100vw - var(--maxw)) / 2 + var(--gut) + 100px));scroll-padding-left:max(var(--gut),calc((100vw - var(--maxw)) / 2 + var(--gut) + 100px));}
.hcar-track::-webkit-scrollbar{display:none;}
.hcar-item{flex:0 0 clamp(240px,31.5vw,452px);scroll-snap-align:start;margin:0;}
.hcar-img{aspect-ratio:452/508;border-radius:var(--radius);overflow:hidden;background:var(--grey);position:relative;}
.hcar-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.hcar-item:hover .hcar-img img{transform:scale(1.03);}
.hcar-next{position:absolute;left:max(var(--gut),calc((100vw - var(--maxw)) / 2 + var(--gut)));bottom:0;width:80px;height:80px;border-radius:50%;border:0;background:var(--pt);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .3s var(--ease),background .3s ease;}
.hcar.has-cap .hcar-next{bottom:56px;}
.sec-dark .hcar-next{background:var(--pa);color:var(--pc);}
.hcar-next:hover{transform:scale(1.06);}
.hcar-next svg{width:30px;height:30px;transition:transform .35s var(--ease);}
.hcar-next:hover svg{transform:translateX(3px);}
.hcar-cap{padding:16px 0 0 max(var(--gut),calc((100vw - var(--maxw)) / 2 + var(--gut) + 100px));min-height:56px;font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:20px;line-height:28px;color:var(--pt);transition:opacity .3s ease;}
.sec-dark .hcar-cap{color:var(--on);font-family:inherit;font-weight:300;font-size:16px;}

/* NOTIZIE / GUIDE / STORIE */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;}
.news-card{display:block;text-decoration:none;color:inherit;}
.news-img{display:block;aspect-ratio:3/2;border-radius:var(--radius);overflow:hidden;background:var(--grey);margin-bottom:16px;}
.news-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.news-card:hover .news-img img{transform:scale(1.04);}
.news-date{display:block;font-size:12px;line-height:16px;color:var(--pt);margin-bottom:8px;}
.news-card h3{font-size:24px;line-height:28px;margin:0;}
.news-card:hover h3{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;}

/* TESTIMONIANZE — carosello su fondo colorato */
.testi{background:var(--pc);padding:80px 0;overflow:hidden;}
.testi h2{color:var(--pa);text-align:center;margin-bottom:56px;}
.testi-wrap{position:relative;max-width:1082px;margin:0 auto;padding:0 80px;}
.testi-track{display:grid;}
.testi-slide{grid-area:1/1;display:grid;grid-template-columns:240px 1fr;gap:56px;align-items:center;margin:0;opacity:0;transform:translateX(40px);transition:opacity .6s var(--ease),transform .6s var(--ease);pointer-events:none;}
.testi-slide.is-active{opacity:1;transform:none;pointer-events:auto;}
.testi-slide.is-out{transform:translateX(-40px);}
.testi-who{text-align:center;color:var(--pa);}
.testi-who img{width:180px;height:180px;border-radius:50%;object-fit:cover;margin:0 auto 20px;background:#fff;filter:grayscale(1);}
.testi-who b{display:block;font-weight:700;font-size:18px;margin-bottom:6px;}
.testi-who span{display:block;font-size:16px;line-height:22px;}
.testi blockquote{margin:0;}
.testi blockquote p{font-size:24px;line-height:32px;color:var(--pa);margin:0;}
.testi-arrow{position:absolute;top:calc(50% - 40px);width:44px;height:44px;border:0;background:none;color:var(--pa);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease;}
.testi-arrow:hover{background:color-mix(in srgb,var(--pa) 15%,transparent);}
.testi-arrow svg{width:26px;height:26px;}
.testi-prev{left:0;} .testi-next{right:0;}
.testi-dots{display:flex;justify-content:center;gap:16px;margin-top:48px;}
.testi-dot{width:16px;height:16px;border-radius:50%;border:0;padding:0;background:color-mix(in srgb,var(--pa) 35%,transparent);cursor:pointer;transition:background .3s ease,transform .3s ease;}
.testi-dot.is-active{background:#fff;}

/* LICENZE EDUCATIONAL */
.lic-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:48px;}
.lic-card{background:var(--grey);border-radius:var(--radius);padding:28px 28px 40px;display:flex;flex-direction:column;}
.lic-card .img-frame{margin-bottom:32px;aspect-ratio:16/9;}
.lic-card h3{margin-bottom:12px;}
.lic-card ul{margin-bottom:8px;}
.lic-card li{font-size:16px;line-height:22px;margin-bottom:4px;}
.lic-card .cta-row{margin-top:auto;padding-top:24px;}
.faq-list{max-width:900px;}
.faq-list .acc-btn{font-size:22px;}

/* PULSANTE DEL MODULO DI RICHIESTA (inc/form_richiesta.php usa .btn .btn-primary) */
.lm-form .btn{display:flex;align-items:center;justify-content:center;height:56px;border-radius:4px;font-size:16px;font-weight:700;text-decoration:none;transition:background .3s ease;}
.lm-form .btn-primary{background:var(--pc);color:#fff;}
.lm-form .btn-primary:hover{background:var(--pc-dark);}
.lm-section{padding:var(--sec) 0;}
.lm-side h2{font-size:clamp(32px,3.3vw,47px);line-height:1.2;}
.lm-steps li{font-size:16px;}

/* CHIUSURA */
.closing{background:var(--pc);padding:160px 0 120px;}
.closing-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
.closing h2{color:var(--pa);font-size:clamp(38px,4.2vw,60px);line-height:1.12;margin:0;}
.closing p{color:var(--pa);font-size:24px;line-height:32px;margin:0;}
.closing .cta-row{margin-top:24px;}

/* PIÈ DI PAGINA (stesso della home) */
footer{background:#0d0e11;color:rgba(255,255,255,.7);padding:72px 0 32px;font-size:14px;}
.foot-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:32px;max-width:1200px;margin:0 auto;padding:0 32px 48px;}
.foot-col h4{color:#fff;font-size:13px;font-weight:700;margin:0 0 16px;letter-spacing:.03em;text-transform:uppercase;}
.foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.foot-col a{color:rgba(255,255,255,.65);text-decoration:none;}
.foot-col a:hover{color:#fff;}
.foot-bottom{max-width:1200px;margin:0 auto;padding:24px 32px 0;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:13px;color:rgba(255,255,255,.5);}
.foot-bottom a{color:rgba(255,255,255,.5);text-decoration:none;}
.foot-bottom a:hover{color:#fff;}

/* TELEFONO E TABLET */
@media(max-width:900px){
  :root{--gut:20px;--sec:72px;}
  .hero{height:auto;max-height:none;}
  .ft-track{height:170vh;}
  .ft p{font-size:19px;line-height:27px;}
  .vblock-grid,.vblock-rev .vblock-grid,.vblock-big .vblock-grid{grid-template-columns:1fr;gap:32px;}
  .vblock-rev .vblock-media{order:0;}
  .vblock-media-first .vblock-media{order:-1;}
  .cards-3,.cards-2,.news-grid,.lic-cards{grid-template-columns:1fr;gap:40px;}
  .cards-4{grid-template-columns:1fr 1fr;gap:24px 16px;}
  .mo-row,.mo-row.rev,.media-pair{grid-template-columns:1fr;gap:16px;margin-bottom:16px;}
  .mo-item figcaption{opacity:1;transform:none;}
  .hs{aspect-ratio:4/3;}
  .hs-btn{width:52px;height:52px;margin:-26px 0 0 -26px;}
  .hs-btn svg{width:20px;height:20px;}
  .hs-drawer{grid-template-columns:1fr;grid-template-rows:45% 55%;}
  .hs-panel{padding:24px 20px;}
  .hs-panel p{font-size:15px;line-height:21px;}
  .hs-thumbs button{flex-basis:84px;}
  .ctab{padding:72px 0;}
  .ctab p{font-size:19px;line-height:27px;}
  .linkgrid{grid-template-columns:1fr;}
  .linkgrid a{border-left:0;border-top:1px solid color-mix(in srgb,var(--pa) 40%,transparent);padding:40px var(--gut);}
  .linkgrid a:first-child{border-top:0;}
  .linkgrid-light a{border-top-color:var(--pt);}
  .lg-arrow{width:56px;height:56px;}
  .logos-wrap{padding:0 40px;}
  .logos-track a{flex-basis:50%;}
  .hcar-track{gap:16px;padding-left:var(--gut);scroll-padding-left:var(--gut);}
  .hcar-item{flex-basis:72vw;}
  .hcar-next{position:static;margin:20px 0 0 var(--gut);width:56px;height:56px;}
  .hcar-cap{padding-left:var(--gut);}
  .testi-wrap{padding:0;}
  .testi-slide{grid-template-columns:1fr;gap:24px;}
  .testi-who img{width:120px;height:120px;}
  .testi blockquote p{font-size:19px;line-height:27px;text-align:center;}
  .testi-arrow{top:40px;}
  .closing{padding:88px 0;}
  .closing-grid{grid-template-columns:1fr;gap:24px;}
  .closing p{font-size:19px;line-height:27px;}
  .foot-grid{grid-template-columns:repeat(2,1fr);padding:0 20px 40px;}
  .foot-bottom{padding:24px 20px 0;}
}
@media(max-width:520px){
  .cards-4{grid-template-columns:1fr;}
  .cta-row{flex-direction:column;align-items:stretch;gap:12px;}
  .cta-row .lb{width:100%;flex:none;white-space:normal;height:auto;min-height:52px;padding:13px 20px;text-align:center;}
  .cta-row .lb span::after{display:none;}
  .cta-row .lb:hover span{transform:none;}
}

/* ===== 27/10/2026 — componenti per Axogram, Lumion Pro, Lumion Cloud, Lumion AI ===== */

/* HERO CON VIDEO */
.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.hero-kicker{font-size:18px!important;line-height:24px!important;margin:0 0 12px!important;font-weight:700;}

/* VIDEO CHE SALE E COPRE LO SCHERMO ALLO SCORRIMENTO (come in home) */
.svm{position:relative;background:#fff;}
.svm-track{height:250vh;}
.svm-sticky{position:sticky;top:0;height:100vh;overflow:hidden;}
.svm-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 var(--gut);z-index:1;}
.svm-copy > *{max-width:680px;}
.lp .svm-eyebrow{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:24px;line-height:32px;color:var(--pt);text-transform:uppercase;margin:0 0 16px;}
.lp .svm-copy h2,.lp .svm-h2{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:clamp(38px,4.4vw,63px);line-height:1.1;color:var(--pt);margin:0 0 32px;}
.lp .svm-lead{font-size:24px;line-height:32px;color:var(--pt);margin:0;}
.svm-copy .cta-row{justify-content:center;margin-top:48px;}
.svm-media{position:absolute;inset:0;z-index:2;clip-path:inset(100% 12% 0 12% round 8px);will-change:clip-path;}
.svm-media video{width:100%;height:100%;object-fit:cover;display:block;}
.svm-shade{position:absolute;inset:0;background:rgba(10,15,25,.32);}
.svm-copy-white{z-index:3;clip-path:inset(100% 12% 0 12%);pointer-events:none;}
.lp .svm-copy-white .svm-eyebrow,.lp .svm-copy-white .svm-h2,.lp .svm-copy-white .svm-lead{color:#fff;}
.svm.is-full .svm-copy-white{pointer-events:auto;}
.svm-copy .lb-white{background:#fff;border-color:#fff;color:var(--ink);}

/* PASSI NUMERATI CON COLLEGAMENTO (come "See how Lumion Pro works") */
.steps4{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;}
.steps4 a{display:block;text-decoration:none;color:inherit;padding-bottom:24px;border-bottom:1px solid var(--pt);transition:border-color .3s ease;}
.steps4 h3{font-size:20px;line-height:28px;margin-bottom:10px;}
.steps4 p{font-size:16px;line-height:22px;color:var(--pt);margin:0;}
.steps4 a:hover h3{text-decoration:underline;text-underline-offset:4px;}

/* SCHEDE CON CAMBIO IMMAGINE (come "8,000+ assets"): schede in basso, testo a sinistra, immagine a destra */
.tabs-sl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:56px;align-items:center;}
.tabs-sl-text{position:relative;min-height:360px;display:flex;flex-direction:column;}
.tabs-sl-panel{display:none;}
.tabs-sl-panel.is-active{display:block;animation:tsIn .55s var(--ease) both;}
@keyframes tsIn{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}
.tabs-sl-nav{display:flex;gap:28px;flex-wrap:wrap;margin-top:auto;padding-top:32px;}
.tabs-sl-nav button{background:none;border:0;padding:0 0 4px;cursor:pointer;font:inherit;font-size:16px;font-weight:700;color:var(--pt);text-decoration:underline;text-underline-offset:4px;opacity:1;transition:opacity .25s ease;}
.tabs-sl-nav button[aria-selected="true"]{opacity:.4;text-decoration:none;}
.tabs-sl-media{position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;background:var(--grey);}
.tabs-sl-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .6s ease,transform 1.2s var(--ease);}
.tabs-sl-media img.is-active{opacity:1;transform:none;}
.tabs-sl-bar{position:absolute;left:0;bottom:0;height:3px;background:var(--pt);width:0;}

/* SCHEDE PREZZI (Axogram) */
.price-wrap{background:var(--grey);}
.price-head{text-align:center;max-width:760px;margin:0 auto 40px;}
.price-head h2{color:var(--pc)!important;}
body.pal-giallo .price-head h2{color:#f9bc1c!important;}
.price-ticks{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;margin-top:12px;}
.price-ticks span{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;}
.price-ticks svg{width:16px;height:16px;color:var(--pt);}
.price-cards{display:grid;grid-template-columns:repeat(2,minmax(0,420px));gap:24px;justify-content:center;}
.price-card{background:#fff;border-radius:var(--radius);padding:28px 28px 32px;display:flex;flex-direction:column;}
.price-tags{display:flex;gap:6px;margin-bottom:14px;}
.price-tags span{font-size:12px;line-height:18px;padding:2px 10px;border-radius:999px;background:#e9e9e9;color:#333;}
.price-tags span:first-child{background:#333132;color:#fff;}
.lp .price-card h3{font-family:inherit;font-weight:700;font-size:22px;color:var(--ink);margin:0 0 4px;}
.price-for{font-size:14px!important;line-height:20px!important;color:var(--ink-soft);padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:16px!important;}
.price-amount{font-size:26px!important;line-height:32px!important;font-weight:700;color:var(--ink);margin:0 0 2px!important;}
.price-note{font-size:13px!important;line-height:18px!important;color:var(--ink-soft);}
.price-card .cta-row{margin-top:8px;}
.price-card .lb{width:100%;}
.price-card ul{list-style:none;padding:0;margin:20px 0 0;border-top:1px solid var(--line);padding-top:16px;}
.price-card li{font-size:15px;line-height:21px;padding-left:24px;position:relative;margin-bottom:8px;}
.price-card li::before{content:"";position:absolute;left:2px;top:5px;width:12px;height:7px;border-left:2px solid var(--pt);border-bottom:2px solid var(--pt);transform:rotate(-45deg);}
.price-foot{text-align:center;font-size:14px!important;color:var(--ink-soft);margin-top:24px!important;}

/* DOWNLOAD AXOGRAM FREE */
.dl-box{background:#fff;border-radius:var(--radius);padding:32px;}
.dl-title{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:22px!important;line-height:28px!important;margin:0 0 20px!important;color:var(--ink);}
.dl-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.dl-item{display:flex;flex-direction:column;gap:4px;padding:18px 20px;border:1.5px solid var(--line);border-radius:6px;text-decoration:none;color:var(--ink);transition:border-color .25s ease,transform .25s var(--ease),background .25s ease;position:relative;}
a.dl-item:hover{border-color:#333132;transform:translateY(-2px);background:#fffbea;}
.dl-item b{font-size:16px;}
.dl-item span{font-size:13px;color:var(--ink-soft);}
.dl-item.is-off{opacity:.5;}
.dl-item em{position:absolute;top:10px;right:12px;font-style:normal;font-size:11px;font-weight:700;background:#eee;padding:2px 8px;border-radius:999px;}
.dl-note{font-size:13px!important;line-height:19px!important;color:var(--ink-soft);margin:18px 0 0!important;}
.dl-side ol{list-style:none;counter-reset:s;padding:0;margin:24px 0;}
.dl-side li{counter-increment:s;position:relative;padding:0 0 18px 48px;}
.dl-side li::before{content:counter(s);position:absolute;left:0;top:-2px;width:32px;height:32px;border-radius:50%;background:#333132;color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;}
.dl-side li b{display:block;}

/* LISTA DEI VANTAGGI CON SPUNTA (come "What Axogram changes for you") */
.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;}
.benefits div{position:relative;padding-left:30px;}
.benefits div::before{content:"";position:absolute;left:2px;top:6px;width:14px;height:8px;border-left:2px solid var(--on);border-bottom:2px solid var(--on);transform:rotate(-45deg);}
.lp .benefits h3{font-family:inherit;font-weight:700;font-size:16px;line-height:22px;margin:0 0 6px;color:var(--on);}
.lp .benefits p{font-size:15px;line-height:21px;color:var(--on);margin:0;}

/* VIDEO YOUTUBE CARICATO SOLO AL CLIC */
.yt{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:#000;}
.yt img,.yt iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0;}
.yt-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:0;cursor:pointer;background:linear-gradient(180deg,rgba(0,0,0,.02) 30%,rgba(0,0,0,.45));}
.yt-icon{width:84px;height:84px;border-radius:50%;background:rgba(255,255,255,.95);color:var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:transform .3s var(--ease);}
.yt-icon svg{width:34px;height:34px;margin-left:4px;}
.yt-play:hover .yt-icon{transform:scale(1.07);}
.lp .yt-note{position:absolute;left:16px;bottom:12px;margin:0;font-size:13px;line-height:18px;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6);pointer-events:none;}
.yt.is-loaded .yt-play,.yt.is-loaded .yt-note,.yt.is-loaded img{display:none;}

/* SCHEDE CON ICONA SU FONDO SCURO (come "Why Lumion Cloud?") */
.icon-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;}
.icon-cards img{height:48px;width:auto;margin-bottom:20px;}
.lp .icon-cards h3{font-family:inherit;font-weight:700;font-size:18px;line-height:24px;color:var(--on);margin:0 0 8px;}
.lp .icon-cards p{font-size:15px;line-height:21px;}

/* SCHEDE SU FONDO GRIGIO (come "Designed for every scale of practice") */
.cards-grey article{background:var(--grey);border-radius:var(--radius);padding:20px 20px 28px;}
.cards-grey .card-media{aspect-ratio:4/5;margin-bottom:20px;}
.lp .cards-grey h3{font-family:inherit;font-weight:700;font-size:20px;line-height:26px;color:var(--ink);}
.cards-grey p{font-size:16px;line-height:22px;}

/* ETICHETTA "#1", "STEP 1" SOPRA I TITOLI */
.lp .num{font-family:inherit;font-weight:700;font-size:16px!important;line-height:22px!important;letter-spacing:.04em;text-transform:uppercase;color:var(--pt);margin:0 0 12px!important;}
.sec-dark .num{color:var(--on)!important;}

/* TESTO CENTRATO STRETTO (come "Where AI earns its place") */
.narrow{max-width:760px;margin:0 auto;}
.narrow p{color:var(--on);}
.narrow .lead{font-weight:700;}

/* IMMAGINE ROTONDA A DESTRA (come "Why Lumion Pro?") */
.why{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;overflow:visible;}
.why-media{aspect-ratio:1;border-radius:50%;overflow:hidden;margin-right:calc(-1 * var(--gut) - 160px);}
.why-media img{width:100%;height:100%;object-fit:cover;}
.why ul{list-style:none;padding:0;}
.why li{position:relative;padding-left:28px;margin-bottom:8px;}
.why li::before{content:"";position:absolute;left:2px;top:6px;width:13px;height:7px;border-left:2px solid var(--pt);border-bottom:2px solid var(--pt);transform:rotate(-45deg);}

@media(max-width:900px){
  .svm-track{height:220vh;}
  .lp .svm-eyebrow,.lp .svm-lead{font-size:18px;line-height:24px;}
  .svm-copy .cta-row{flex-direction:column;align-items:stretch;width:100%;max-width:340px;gap:12px;}
  .steps4,.benefits,.icon-cards{grid-template-columns:1fr 1fr;gap:24px 16px;}
  .tabs-sl{grid-template-columns:1fr;gap:24px;}
  .tabs-sl-media{order:-1;}
  .tabs-sl-text{min-height:0;}
  .price-cards{grid-template-columns:1fr;}
  .dl-grid{grid-template-columns:1fr;}
  .why{grid-template-columns:1fr;}
  .why-media{margin:0 auto;max-width:420px;width:100%;}
}
@media(max-width:520px){
  .steps4,.benefits,.icon-cards{grid-template-columns:1fr;}
}


/* ===== 27/10/2026 (2) — prezzi, risorse, novità, eventi ===== */

/* INTESTAZIONE COLORATA DELLE PAGINE ELENCO (come "Resources / Made with Lumion") */
.phead{background:var(--pc);padding:72px 0 56px;border-bottom:1px solid color-mix(in srgb,var(--pa) 35%,transparent);}
.lp .phead p{color:var(--pa);font-size:18px;margin:0 0 8px;}
.lp .phead h1{color:var(--pa);font-size:clamp(40px,4.4vw,63px);line-height:1.1;margin:0;animation:heroIn .9s var(--ease) both;}
.ptitle{padding:96px 0 64px;text-align:center;}
.lp .ptitle h2{max-width:1000px;margin:0 auto;}

/* FILTRI A PILLOLA E "MOSTRA ALTRI" */
.chips{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 40px;}
.chip{display:inline-flex;align-items:center;height:40px;padding:0 20px;border-radius:999px;border:1.5px solid var(--pt);background:#fff;color:var(--pt);font:inherit;font-size:15px;cursor:pointer;text-decoration:none;transition:background .25s ease,color .25s ease;}
.chip:hover{background:color-mix(in srgb,var(--pt) 8%,#fff);}
.chip.is-on,.chip[aria-pressed="true"]{background:var(--pt);color:#fff;}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 40px;}
.grid3 > [hidden]{display:none!important;}
.more-row{text-align:center;margin-top:56px;}
.more-row[hidden]{display:none;}
.news-card .news-sum{display:block;font-size:15px;line-height:21px;color:var(--ink-soft);margin-top:10px;}
.news-ext{display:inline-block;margin-left:6px;font-size:12px;color:var(--ink-soft);}
.news-card.is-in-grid{animation:tsIn .5s var(--ease) both;}

/* GALLERIA CON LIGHTBOX */
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.gal figure{margin:0;position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;cursor:zoom-in;background:var(--grey);}
.gal figure[hidden]{display:none;}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.gal figure:hover img{transform:scale(1.04);}
.gal figcaption{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);padding:5px 10px;border-radius:4px;background:rgba(255,255,255,.92);color:var(--pt);font-size:13px;line-height:18px;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .3s var(--ease);}
.gal figure:hover figcaption{opacity:1;transform:none;}

/* "LUMION PER" (quattro collegamenti in colonna) */
.lper h2{margin-bottom:48px;}
.lper-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;}
.lper-grid a{display:block;text-decoration:none;color:inherit;padding-bottom:24px;border-bottom:1px solid var(--pt);}
.lper-grid h3{font-size:20px;line-height:28px;margin-bottom:10px;transition:transform .3s var(--ease);}
.lper-grid p{font-size:15px;line-height:21px;color:var(--pt);margin:0;}
.lper-grid a:hover h3{transform:translateX(4px);}

/* PREZZI: scelta del prodotto e del periodo */
.pr-head{text-align:center;padding:88px 0 40px;}
.lp .pr-head h1{color:var(--pt);font-size:clamp(36px,4vw,56px);line-height:1.12;margin:0 0 20px;}
.pr-bar{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:24px;}
.pr-prod{display:flex;gap:6px;padding:6px;border-radius:10px;background:var(--grey);}
.pr-prod button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 20px;border:0;border-radius:6px;background:transparent;cursor:pointer;font:inherit;color:var(--ink);text-align:left;transition:background .25s ease,color .25s ease;}
.pr-prod button b{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:20px;line-height:24px;display:flex;align-items:center;gap:8px;}
.pr-prod button em{font-style:normal;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:#f9bc1c;color:#333132;}
.pr-prod button span{font-size:13px;color:var(--ink-soft);}
.pr-prod button[aria-selected="true"]{background:var(--pt);color:#fff;}
.pr-prod button[aria-selected="true"] span{color:rgba(255,255,255,.8);}
.pr-per{position:relative;display:flex;padding:4px;border-radius:999px;border:1.5px solid var(--pt);}
.pr-per button{position:relative;z-index:1;height:36px;padding:0 18px;border:0;border-radius:999px;background:transparent;cursor:pointer;font:inherit;font-size:14px;color:var(--pt);transition:color .3s ease;}
.pr-per button[aria-pressed="true"]{color:#fff;}
.pr-per .pr-knob{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:var(--pt);transition:transform .35s var(--ease);}
.pr-per.is-3 .pr-knob{transform:translateX(100%);}
.pr-save{position:absolute;right:0;top:-24px;font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px;background:#4caf50;color:#fff;white-space:nowrap;}
.pr-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start;}
.pr-cards[hidden]{display:none;}
.pr-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 28px 32px;}
.pr-card.is-top{border:2px solid var(--ink);padding-top:44px;}
.pr-flag{position:absolute;top:0;left:0;right:0;background:var(--ink);color:#fff;text-align:center;font-size:12px;font-weight:700;letter-spacing:.05em;padding:6px 0;}
.pr-tags{display:flex;gap:6px;margin-bottom:14px;}
.pr-tags span{font-size:12px;line-height:18px;padding:2px 10px;border-radius:999px;background:#e9e9e9;color:#333;}
.lp .pr-card h3{font-size:26px;line-height:32px;color:var(--pt);margin:0 0 4px;}
.lp .pr-for{font-size:14px;line-height:20px;color:var(--ink-soft);padding-bottom:16px;border-bottom:1px solid var(--line);margin:0 0 16px;}
.pr-price{display:flex;align-items:baseline;gap:8px;margin:0 0 4px;}
.pr-price strong{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:40px;line-height:44px;color:var(--pt);}
.pr-price small{font-size:13px;line-height:16px;color:var(--pt);}
.lp .pr-bill{font-size:13px;line-height:18px;color:var(--ink-soft);margin:0 0 20px;min-height:36px;}
.pr-card .lb{width:100%;}
.pr-card .pr-alt{display:block;text-align:center;margin-top:12px;font-size:14px;color:var(--pt);font-weight:700;}
.lp .pr-desc{font-size:15px;line-height:21px;margin:20px 0 16px;}
.pr-card h4{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin:18px 0 8px;color:var(--ink);}
.pr-card ul,.lic-ul{list-style:none;padding:0;margin:0;}
.pr-card li,.lic-ul li{font-size:14px!important;line-height:20px!important;padding-left:22px;position:relative;margin-bottom:6px;}
.pr-card li::before,.lic-ul li::before{content:"";position:absolute;left:2px;top:5px;width:11px;height:6px;border-left:2px solid var(--pt);border-bottom:2px solid var(--pt);transform:rotate(-45deg);}
.y3{display:none;}
.pr-wrap.is-3 .y1{display:none;}
.pr-wrap.is-3 .y3{display:inline;}
.pr-wrap.is-3 a.y3,.pr-wrap.is-3 p.y3,.pr-wrap.is-3 div.y3{display:block;}
.pr-wrap.is-3 .pr-price.y3{display:flex;}
.lp .pr-note{text-align:center;font-size:14px;color:var(--ink-soft);margin:32px auto 0;max-width:900px;}

/* ARTICOLO */
.post-head{max-width:860px;margin:0 auto;padding:80px var(--gut) 24px;}
.post-meta{display:block;font-size:13px;color:var(--pt);margin-bottom:16px;}
.lp .post-head h1{font-size:clamp(34px,4.2vw,56px);line-height:1.12;margin:0 0 24px;}
.lp .post-head .lead{font-size:22px;line-height:30px;color:var(--ink);margin:0;}
.post-cover{max-width:1200px;margin:24px auto 0;padding:0 var(--gut);}
.post-cover img{width:100%;border-radius:var(--radius);}
.post-body{max-width:760px;margin:0 auto;padding:48px var(--gut) 16px;}
.lp .post-body h2{font-size:30px;line-height:1.2;margin:44px 0 16px;}
.lp .post-body p,.lp .post-body li{font-size:18px;line-height:1.65;color:#22252b;}
.post-body ul,.post-body ol{padding-left:22px;margin:0 0 20px;}
.post-body li{margin-bottom:8px;}
.post-source{max-width:760px;margin:16px auto 0;padding:0 var(--gut);}
.post-source div{border-top:1px solid var(--line);padding-top:20px;font-size:14px;line-height:21px;color:var(--ink-soft);}
.post-back{display:inline-block;margin-top:12px;color:var(--pt);font-weight:700;text-decoration:none;}

/* EVENTI */
.ev-list{display:flex;flex-direction:column;gap:24px;}
.ev{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(0,360px);gap:32px;align-items:center;padding:28px;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:inherit;transition:border-color .3s ease,transform .3s var(--ease),box-shadow .3s ease;}
.ev:hover{border-color:var(--pt);transform:translateY(-2px);box-shadow:0 12px 32px rgba(0,0,0,.06);}
.ev-date{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border-radius:var(--radius);background:var(--pc);color:var(--pa);}
.ev-day{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:44px;line-height:46px;}
.ev-month{font-size:14px;}
.ev-meta{display:block;font-size:13px;font-weight:700;color:var(--pt);margin-bottom:6px;}
.lp .ev h3{font-size:26px;line-height:32px;margin:0 0 8px;}
.ev-when{display:block;font-size:15px;margin-bottom:8px;}
.ev-sum{display:block;font-size:15px;line-height:21px;color:var(--ink-soft);}
.ev-speaker{display:block;font-size:14px;margin-top:8px;}
.ev-cta{display:inline-block;margin-top:14px;font-weight:700;color:var(--pt);}
.ev:hover .ev-cta{text-decoration:underline;text-underline-offset:4px;}
.ev-cover{aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:var(--grey);}
.ev-cover img{width:100%;height:100%;object-fit:cover;}
.ev.no-cover{grid-template-columns:120px minmax(0,1fr);}
.ev-empty{text-align:center;padding:56px 24px;border:1px dashed var(--line);border-radius:var(--radius);}
.ev-empty .cta-row{justify-content:center;}

@media(max-width:900px){
  .grid3,.gal{grid-template-columns:1fr 1fr;gap:32px 16px;}
  .lper-grid{grid-template-columns:1fr 1fr;gap:24px 16px;}
  .pr-cards{grid-template-columns:1fr;}
  .pr-bar{flex-direction:column;align-items:stretch;}
  .pr-prod{width:100%;}
  .pr-prod button{flex:1;}
  .pr-per{align-self:center;margin-top:24px;}
  .ev,.ev.no-cover{grid-template-columns:72px minmax(0,1fr);gap:16px;padding:18px;}
  .ev-cover{grid-column:1/-1;order:-1;}
  .ev-day{font-size:28px;line-height:30px;}
  .ev-month{font-size:12px;}
  .phead{padding:48px 0 40px;}
  .ptitle{padding:64px 0 40px;}
}
@media(max-width:520px){
  .grid3,.gal,.lper-grid{grid-template-columns:1fr;}
}

@media (prefers-reduced-motion: reduce){
  .js .rv,.js .rvt{opacity:1;transform:none;transition:none;}
  .js .ft-line > span{transform:none;} .js .ft p{opacity:1;}
  .hero-media img,.hero-inner > *,.hs-btn{animation:none;}
  .lb span,.testi-slide,.acc-panel,.hs-view img,.tabs-sl-media img{transition:none;}
  .tabs-sl-panel.is-active{animation:none;}
}

.lp .tabs-sl h3.big-h3{font-size:clamp(32px,3.3vw,47px);line-height:1.2;margin-bottom:24px;}

/* 27/10 vista grande della galleria (.gal) */
.glb{position:fixed;inset:0;z-index:300;background:rgba(10,10,12,.94);display:none;align-items:center;justify-content:center;padding:56px 72px;}
.glb.is-open{display:flex;}
.glb figure{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;}
.glb img{max-width:100%;max-height:calc(100vh - 150px);object-fit:contain;border-radius:4px;}
.glb figcaption{color:#fff;font-size:14px;margin-top:14px;text-align:center;}
.glb button{position:absolute;background:none;border:0;color:#fff;font-size:44px;line-height:1;cursor:pointer;padding:8px 14px;}
.glb-x{top:12px;right:16px;}.glb-p{left:12px;top:50%;transform:translateY(-50%);}.glb-n{right:12px;top:50%;transform:translateY(-50%);}
.glb button:focus-visible{outline:2px solid #fff;border-radius:4px;}
@media (max-width:640px){.glb{padding:56px 8px;}.glb-p,.glb-n{top:auto;bottom:10px;transform:none;}}
.cards article .tlink{color:var(--pt);font-weight:700;text-decoration:none;}
.cards article .tlink:hover{text-decoration:underline;}
.lic-ul{margin:16px 0!important;}
@media (max-width:640px){.pr-prod button{padding:10px 12px;}.pr-prod button b{flex-direction:column;align-items:flex-start;gap:4px;font-size:18px;}.pr-prod button em{white-space:nowrap;}.price-ticks span{text-align:left;}}

/* 27/10 (3) — requisiti di sistema e compatibilità */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.lp .phead .phead-sub{color:var(--pa);font-size:20px;line-height:28px;margin:16px 0 0;}
.rq-prod{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
.rq-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;padding:48px 32px;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:inherit;transition:border-color .3s ease,box-shadow .3s ease,transform .3s var(--ease);}
.rq-card:hover{border-color:var(--pt);box-shadow:0 12px 32px rgba(0,0,0,.06);transform:translateY(-2px);}
.rq-card img{height:84px;width:auto;}
.lp .rq-card p{font-size:16px;line-height:22px;margin:0;max-width:380px;flex:1;}
.rq-sec{scroll-margin-top:80px;}
.rq-intro2{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin:40px 0 48px;}
.lp .rq-intro2 p{font-size:17px;line-height:25px;}
.rq-intro2 a,.rq-table a,.rq-check a:not(.lb){color:var(--pt);font-weight:700;}
.rq-nav{display:flex;border-bottom:1px solid var(--line);margin-bottom:8px;overflow-x:auto;}
.rq-nav button{flex:1;min-width:150px;padding:16px 12px;border:0;border-bottom:3px solid transparent;background:var(--grey);font:inherit;font-size:15px;color:var(--ink-soft);cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease;}
.rq-nav button+button{margin-left:4px;}
.rq-nav button[aria-selected="true"]{background:#fff;color:var(--pt);font-weight:700;border-bottom-color:var(--pt);}
.rq-panel[hidden]{display:none;}
.rq-panel:not([hidden]){animation:tsIn .45s var(--ease) both;}
.rq-table{width:100%;border-collapse:collapse;}
.rq-table th,.rq-table td{text-align:left;vertical-align:top;padding:18px 16px;border-bottom:1px solid var(--line);font-size:15px;line-height:22px;}
.rq-table th{width:38%;font-weight:700;color:var(--pt);}
.rq-table td{color:var(--ink);}
.rq-table tr.rq-intro th,.rq-table tr.rq-intro td{background:var(--grey);}
.rq-os{max-width:900px;margin:0 auto;padding:40px 48px;background:var(--grey);border-radius:var(--radius);}
.lp .rq-os h3{color:var(--pt);margin-bottom:16px;}
.rq-os ul{margin:0;padding-left:20px;}
.lp .rq-os li{font-size:16px;line-height:24px;margin-bottom:8px;}
.rq-check article{display:flex;flex-direction:column;padding:32px!important;}
.rq-check .cta-row{margin-top:auto;padding-top:16px;}
.rq-check ol{padding-left:20px;margin:0 0 16px;}
.lp .rq-check li{font-size:16px;line-height:24px;margin-bottom:6px;}
.sw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.sw-card{display:flex;flex-direction:column;padding:28px;background:var(--grey);border-radius:var(--radius);scroll-margin-top:110px;}
.sw-card:target{outline:2px solid var(--pt);outline-offset:2px;}
.sw-logo{height:44px;display:flex;align-items:center;margin-bottom:20px;}
.sw-logo img{height:34px;width:auto;max-width:200px;}
.sw-logo span{font-family:'Oldschool Grotesk','Söhne',sans-serif;font-weight:500;font-size:24px;color:var(--ink);}
.lp .sw-card h3{font-family:inherit;font-weight:700;font-size:20px;line-height:26px;color:var(--ink);margin-bottom:10px;}
.lp .sw-card p{font-size:15px;line-height:22px;flex:1;}
.sw-tag{align-self:flex-start;margin-top:16px;padding:4px 12px;border-radius:999px;background:var(--pt);color:#fff;font-size:13px;font-weight:700;}
.sw-tag.is-file{background:#fff;color:var(--pt);border:1px solid var(--pt);}
.vblock-text a:not(.lb){color:var(--pt);}
@media (max-width:900px){.sw-grid{grid-template-columns:1fr 1fr;}.rq-intro2{gap:24px;}}
@media (max-width:640px){.rq-prod,.rq-intro2,.sw-grid{grid-template-columns:1fr;}.rq-intro2{margin:24px 0 32px;}.rq-card{padding:32px 20px;}
  .rq-table th,.rq-table td{display:block;width:auto;padding:10px 4px;}.rq-table th{border-bottom:0;padding-top:16px;}.rq-table td{padding-top:0;}
  .rq-nav button{min-width:0;padding:12px 6px;font-size:14px;}.rq-os{padding:28px 20px;}}
@media (min-width:1200px){.sw-grid{grid-template-columns:repeat(5,1fr);gap:20px;}.sw-card{padding:24px 20px;}.sw-logo img{max-width:100%;}}
