/* ==========================================================================
   Delos AI · tema su misura
   Palette ufficiale: Abisso #152A2F, Papiro #F9F9ED, Sinapsi #7B7BFF,
   Micelio #AEF7B4, Cielo #89D2FF, Nebulosa #C7DEFE,
   Grafite #494949, Silicio #7F7F7F, Pulviscolo #DBDBDB.
   Breakpoint: desktop da 1100px, tablet 700-1099px, telefono fino a 699px.
   ========================================================================== */

@font-face{font-family:"Arimo";font-style:normal;font-weight:400;font-display:swap;src:local("Arial"),url(../fonts/arimo-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Arimo";font-style:normal;font-weight:700;font-display:swap;src:local("Arial Bold"),local("Arial-BoldMT"),url(../fonts/arimo-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/geist-mono-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/geist-mono-latin-500-normal.woff2) format("woff2")}

:root{
	--abisso:#152A2F;--papiro:#F9F9ED;--sinapsi:#7B7BFF;--micelio:#AEF7B4;--cielo:#89D2FF;--nebulosa:#C7DEFE;
	--grafite:#494949;--silicio:#7F7F7F;--pulviscolo:#DBDBDB;
	--org:cubic-bezier(0.16,1,0.3,1);
	--mono:"Geist Mono",ui-monospace,monospace;
	--sans:Arial,Arimo,"Liberation Sans",Helvetica,sans-serif;
	--gut:48px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papiro);color:var(--abisso);font-family:var(--sans);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}
img,svg,video{max-width:100%}
img{height:auto}
a{color:inherit}
button{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--sinapsi);outline-offset:3px}
[id]{scroll-margin-top:72px}
main:focus{outline:none}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}

.hp{position:relative;overflow-x:clip}
.mono{font-family:var(--mono);font-size:14px;letter-spacing:.02em}
.grafite{color:var(--grafite)}
.sinapsi{color:var(--sinapsi)}
.wrap{max-width:1312px;margin:0 auto;padding:0 var(--gut)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px}
.sec-pad{padding-top:112px;padding-bottom:112px}
.sec-pad-120{padding-top:120px;padding-bottom:120px}
.stack-48{display:flex;flex-direction:column;gap:48px}
.head-l{display:flex;flex-direction:column;gap:20px}
.h2{margin:0;font-weight:400;letter-spacing:-0.02em}
.h2-56{font-size:56px;line-height:1.02}
.h2-48{font-size:48px;line-height:1.05}
.h2-44{font-size:44px;line-height:1.08}
.h2-60{font-size:60px;line-height:1.02;letter-spacing:-0.03em}
.lead{margin:0;font-size:18px;line-height:1.55}
.lead-20{margin:0;font-size:20px;line-height:1.55;max-width:560px}
.skip{position:absolute;left:16px;top:-80px;z-index:60;background:var(--abisso);color:var(--papiro);padding:12px 16px;border-radius:10px;text-decoration:none}
.skip:focus{top:16px}

.nz{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:overlay;opacity:.4}
.lc{position:relative;overflow:hidden;flex-shrink:0}
.lc .lot{position:absolute;left:0;top:0}

/* Domande-etichetta (la pillola del video del brand) */
.qp{align-self:flex-start;display:inline-flex;align-items:center;min-height:40px;padding:0 18px;border-radius:20px;background:rgba(219,219,219,.85);color:var(--abisso);font-size:16px}
.qp-grey{background:var(--pulviscolo)}
.qp-dark{background:var(--grafite);color:var(--papiro)}
.qp-papiro{background:var(--papiro)}

/* Pulsanti e link */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:10px;font-size:18px;text-decoration:none;font-family:inherit;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.btn-sm{min-height:44px;font-size:16px;padding:0 20px}
.btn-p{background:var(--abisso);color:var(--papiro);border:0}.btn-p:hover{background:var(--sinapsi);color:var(--abisso)}
.btn-s{border:1px solid var(--abisso);color:var(--abisso);background:rgba(255,255,255,.55)}.btn-s:hover{border-color:var(--sinapsi)}
.lk{color:var(--abisso);text-decoration:underline;text-decoration-color:var(--sinapsi);text-decoration-thickness:2px;text-underline-offset:5px;transition:text-underline-offset .4s var(--org)}
.lk:hover{text-underline-offset:9px}
.lk-light{color:var(--papiro);font-size:18px;white-space:nowrap;text-decoration:underline;text-decoration-color:var(--sinapsi);text-decoration-thickness:2px;text-underline-offset:5px;min-height:44px;display:inline-flex;align-items:center;transition:text-underline-offset .4s var(--org)}
.lk-light:hover{text-underline-offset:9px}
.ctl{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:10px;border:1px solid var(--abisso);background:rgba(255,255,255,.8);color:var(--abisso);font-family:var(--mono);font-size:14px;cursor:pointer;white-space:nowrap}

/* Comparsa allo scroll (attiva solo con JavaScript) */
[data-rv]{transition:opacity 1s var(--org),transform 1s var(--org)}
[data-rv][data-pend]{opacity:0;transform:translateY(28px)}

/* ==========================================================================
   Barra del menu
   ========================================================================== */
.mbar{position:sticky;top:0;z-index:30;height:72px;background:rgba(249,249,237,.92);border-bottom:1px solid rgba(21,42,47,.08);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.is-home .mbar{margin-bottom:-72px}
.mbar-in{height:72px;display:flex;align-items:center;gap:32px}
.mlogo{display:flex;flex-shrink:0}
.mlogo img{height:24px;width:auto;display:block}
.is-home .mlogo{opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .4s ease,transform .5s var(--org),visibility 0s linear .5s}
.is-home .mlogo.vis{opacity:1;visibility:visible;transform:none;transition:opacity .4s ease,transform .5s var(--org),visibility 0s}
.mnav{display:flex;align-items:center;gap:28px;margin-left:auto}
.ml{display:inline-flex;align-items:center;min-height:44px;color:var(--abisso);text-decoration:none;font-size:16px;text-decoration-color:var(--sinapsi);text-decoration-thickness:2px;text-underline-offset:6px}
.ml:hover,.ml[aria-current="page"]{text-decoration-line:underline}
.menub{display:none;margin-left:auto;align-items:center;gap:10px;min-height:44px;padding:0 4px;border:0;background:none;color:var(--abisso);font-size:16px;cursor:pointer}
.menub .ln3{display:flex;flex-direction:column;gap:5px}
.menub .ln3 i{display:block;width:22px;height:2px;background:currentColor;transition:transform .3s var(--org),opacity .2s ease}
.menub[aria-expanded="true"] .ln3 i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menub[aria-expanded="true"] .ln3 i:nth-child(2){opacity:0}
.menub[aria-expanded="true"] .ln3 i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ==========================================================================
   Hero
   ========================================================================== */
.hero{position:relative;height:100vh;height:100svh;min-height:760px;overflow:hidden;background:var(--papiro)}
.hzbg{position:absolute;inset:0;overflow:hidden;transition:filter 1.8s var(--org),transform 2.2s var(--org),opacity .9s ease}
.hzbg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hzlogo{position:absolute;left:var(--gut);right:var(--gut);top:112px;margin:0;transition:opacity 1.1s ease,transform 1.6s var(--org)}
.hzlogo img{display:block;width:100%;height:auto}
.hz-ui{position:absolute;left:var(--gut);right:var(--gut);bottom:112px;display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:flex-end;gap:32px}
.hzq{flex:0 1 560px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.hzq-list{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.hzlab{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:8px;background:var(--abisso);color:var(--papiro);margin-bottom:6px;transition:opacity .6s ease}
.hq{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border-radius:24px;border:1px solid transparent;background:var(--papiro);color:var(--abisso);font-size:20px;cursor:pointer;text-align:left;white-space:nowrap;transition:opacity .6s ease,transform .8s var(--org),background-color .3s ease,color .3s ease,border-color .2s ease}
.hq:hover{border-color:var(--sinapsi)}
.hq.on{background:var(--abisso);color:var(--papiro)}
.hq:nth-child(2){transition-delay:.08s,.08s,0s,0s,0s}.hq:nth-child(3){transition-delay:.16s,.16s,0s,0s,0s}.hq:nth-child(4){transition-delay:.24s,.24s,0s,0s,0s}.hq:nth-child(5){transition-delay:.32s,.32s,0s,0s,0s}

.ha{flex:0 1 620px;display:flex;flex-direction:column;gap:18px;padding:28px 32px 32px;border-radius:14px;background:var(--papiro);color:var(--abisso);opacity:0;visibility:hidden;transform:translateY(24px) scale(.97);transform-origin:left bottom;transition:opacity .4s ease,transform .7s var(--org),visibility 0s linear .7s}
.ha.open{opacity:1;visibility:visible;transform:none;transition:opacity .4s ease,transform .7s var(--org),visibility 0s}
.ha-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
.ha-q{color:var(--grafite)}
.hzx{min-height:44px;padding:0 4px;border:0;background:none;color:var(--abisso);font-family:var(--mono);font-size:14px;text-decoration:underline;text-decoration-color:var(--sinapsi);text-decoration-thickness:2px;text-underline-offset:5px;cursor:pointer}
.thk{display:none;align-items:center;gap:10px;height:40px}
.thk .mono{color:var(--grafite)}
.ha.busy .thk{display:flex}
.ain{display:flex;flex-direction:column;gap:18px}
.ha.busy .ain{display:none}
.hzt{margin:0;font-size:44px;line-height:1.05;letter-spacing:-0.02em}
.ln{display:block;overflow:hidden;padding-bottom:.06em}
.ln span{display:block;transition:transform 1s var(--org)}
.ln2 span{transition-delay:.12s}
.ha-p{margin:0;font-size:18px;line-height:1.5}
.ha-act{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}
.ha-2{font-size:16px}
.ap{transition:opacity .8s ease .3s}

.hzcue{position:absolute;left:50%;bottom:32px;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;border-radius:22px;background:var(--papiro);color:var(--abisso);text-decoration:none;transform:translate(-50%,0);transition:opacity .8s ease,transform .8s var(--org)}
.p4 .hzcue svg{animation:bob 2.4s var(--org) infinite}
.paused .hzcue svg{animation:none}
@keyframes bob{0%,100%{transform:none}50%{transform:translateY(4px)}}

/* Stati di ingresso della hero in 4 tempi: valgono solo con JavaScript attivo */
.js .is-home:not(.p1) .hzbg{filter:blur(40px);transform:scale(1.12);opacity:0}
.js .is-home:not(.p2) .hzlogo{opacity:0;transform:translateY(40px)}
.js .is-home:not(.p3) .hzlab{opacity:0}
.js .is-home:not(.p3) .hq{opacity:0;transform:translateY(14px)}
.js .is-home:not(.p4) .hzcue{opacity:0;transform:translate(-50%,10px)}
.js .ln span{transform:translateY(105%);transition:transform .35s ease-in}
.js .p3 .ain .ln span{transform:none;transition:transform 1s var(--org)}
.js .p3 .ain .ln2 span{transition-delay:.12s}
.js .ap{opacity:0;transition:opacity .25s ease}
.js .p3 .ain .ap{opacity:1;transition:opacity .8s ease .3s}

/* ==========================================================================
   Servizi
   ========================================================================== */
.head-split{align-items:end}
.head-split .head-l{grid-column:span 7}
.head-split .head-r{grid-column:9 / span 4}
.stiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stile{position:relative;display:block;height:540px;border-radius:14px;overflow:hidden;color:var(--abisso);text-decoration:none;background:var(--pulviscolo)}
.sti{position:absolute;inset:0}
.sti img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(1.5px);transform:scale(1.02);transition:transform 1.2s var(--org),filter .8s ease}
.sti .nz{opacity:.55 !important}
.stile:hover .sti img,.stile:focus-visible .sti img{transform:scale(1.06);filter:blur(6px)}
.stag{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:8px;background:var(--papiro);transition:opacity .3s ease}
.stag sup,.stp sup{font-size:10px}
.stile:hover .stag,.stile:focus-visible .stag{opacity:0}
.stp{position:absolute;left:12px;right:12px;bottom:12px;display:flex;flex-direction:column;gap:14px;padding:24px;border-radius:10px;background:var(--papiro);opacity:0;transform:translateY(24px);transition:opacity .4s ease,transform .7s var(--org)}
.stile:hover .stp,.stile:focus-visible .stp{opacity:1;transform:none}
.stt{font-size:30px;line-height:1.08;letter-spacing:-0.01em}
.std{font-size:17px;line-height:1.5}
.go{display:inline-flex;align-self:flex-start;font-size:16px;text-decoration:underline;text-decoration-color:var(--sinapsi);text-decoration-thickness:2px;text-underline-offset:5px}
@media (hover: none){.stp{opacity:1;transform:none}.stag{display:none}}

/* ==========================================================================
   Perché scegliere
   ========================================================================== */
.sec-why{background:var(--papiro)}
.why-grid{align-items:start}
.why-head{grid-column:span 5;display:flex;flex-direction:column;gap:24px;position:sticky;top:104px}
.why-head .h2{line-height:1.1}
.ref{font-size:16px;vertical-align:top;position:relative;top:6px;margin-left:2px}
.why-list{grid-column:7 / span 6;display:flex;flex-direction:column;border-bottom:1px solid var(--pulviscolo)}
.why-row{display:grid;grid-template-columns:88px minmax(0,1fr);gap:24px;padding:32px 0;border-top:1px solid var(--pulviscolo)}
.why-row:first-child{border-top-color:var(--abisso)}
.pr-ic{color:var(--abisso)}
.why-txt{display:flex;flex-direction:column;gap:10px}
.why-txt h3{margin:0;font-size:26px;line-height:1.15;font-weight:400}
.why-txt h3 sup{font-size:12px;margin-right:6px;vertical-align:top;position:relative;top:4px}
.why-txt p{margin:0;font-size:18px;line-height:1.55;color:var(--grafite)}

/* ==========================================================================
   Metodo
   ========================================================================== */
.sec-met{position:relative;overflow:hidden;background:var(--papiro)}
.bgv{position:absolute;inset:0;overflow:hidden;background:var(--papiro)}
.bgv video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.met-in{position:relative;padding-top:120px;padding-bottom:120px;display:flex;flex-direction:column;gap:40px}
.met-head{display:flex;justify-content:space-between;align-items:end;gap:32px}
.met-track{position:relative}
.met-line{position:absolute;left:0;right:0;top:27px;border-top:1px dashed var(--abisso)}
.mw{position:absolute;left:0;top:25px;height:4px;width:100%;background:var(--sinapsi);transition:width .5s var(--org)}
.met-steps{position:relative;margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}
.mst{display:flex;flex-direction:column;gap:40px;align-items:flex-start}
.ck{display:flex;gap:10px;align-items:baseline;min-height:54px;padding:14px 18px;border-radius:10px;border:1px solid var(--abisso);background:#FFFFFF;color:var(--abisso);font-size:19px;cursor:pointer;text-align:left;transition:background-color .5s ease,color .5s ease}
.ck.on{background:var(--k);border-color:var(--k);font-weight:700}
.ck.cur{box-shadow:0 0 0 2px var(--abisso)}
.md{margin:0;font-size:16px;line-height:1.5;transition:opacity .6s ease}
.mst.dim .md{opacity:.35}

/* ==========================================================================
   Formazione
   ========================================================================== */
.sec-form{position:relative;height:720px;overflow:hidden;background:var(--papiro)}
.fimg{position:absolute;inset:-40px;overflow:hidden}
.fimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:blur(7px);transform:scale(1.02);transition:filter 1.8s var(--org),transform 2.2s var(--org)}
[data-pend] .fimg img{filter:blur(40px);transform:scale(1.12)}
.form-in{position:relative;height:100%;align-items:center}
.fcard{grid-column:span 5;position:relative;display:flex;flex-direction:column;gap:22px;padding:40px;border-radius:14px;background:var(--papiro);transition:opacity 1s ease .5s,transform 1.2s var(--org) .5s}
[data-pend] .fcard{opacity:0;transform:translateY(24px)}
.sec-form[data-rv][data-pend]{opacity:1;transform:none}

/* ==========================================================================
   Ricerca
   ========================================================================== */
.sec-ric{background:var(--abisso);color:var(--papiro)}
.ric-head{display:flex;justify-content:space-between;align-items:end;gap:32px}
.rc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rc{display:flex;flex-direction:column;gap:14px;padding:28px;border:1px solid var(--grafite);border-radius:14px;color:var(--papiro);text-decoration:none;transition:border-color .2s ease}
.rc:hover,.rc:focus-visible{border-color:var(--sinapsi)}
.rct{font-size:26px;line-height:1.15}
.rcd{font-size:16px;line-height:1.55}
.ul{align-self:flex-start;font-size:16px;text-decoration:underline;text-decoration-color:var(--sinapsi);text-decoration-thickness:2px;text-underline-offset:5px;transition:text-underline-offset .4s var(--org)}
.rc:hover .ul,.rcl:hover .ul{text-underline-offset:9px}

/* ==========================================================================
   Test
   ========================================================================== */
.sec-test{position:relative;height:640px;background:var(--nebulosa);overflow:hidden}
.test-in{height:100%;align-items:center}
.test-txt{grid-column:span 6;display:flex;flex-direction:column;gap:28px}
.test-anim{grid-column:7 / span 6;display:flex;justify-content:flex-end;padding-right:120px}
.chain-box{width:200px;height:200px}
.chain-box .lot{width:238px;height:238px;margin-left:-19px;margin-top:-19px}

/* ==========================================================================
   Team
   ========================================================================== */
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.tm{display:flex;flex-direction:column;gap:14px}
.tm-ph{position:relative;aspect-ratio:4 / 5;background:var(--pulviscolo);display:flex;align-items:flex-end;padding:16px;overflow:hidden}
.tm-ph .mono{color:var(--grafite)}
.tm-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.tm-txt{display:flex;flex-direction:column;gap:14px}
.tm h3{margin:0;font-size:24px;font-weight:400}
.tm p{margin:0;font-size:16px;line-height:1.55}

/* ==========================================================================
   Contatti
   ========================================================================== */
.sec-cont{border-top:1px solid var(--pulviscolo)}
.cont-head{grid-column:span 5;display:flex;flex-direction:column;gap:24px}
.cont-form{grid-column:7 / span 6;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-content:start}
.span2{grid-column:span 2}
.lab{display:flex;flex-direction:column;gap:8px;font-size:16px}
.fld{min-height:52px;padding:0 16px;border:1px solid var(--grafite);border-radius:10px;background:#FFFFFF;font:inherit;font-size:17px;color:var(--abisso);width:100%}
textarea.fld{padding:14px 16px;resize:vertical;min-height:140px}
.chk{display:flex;gap:12px;align-items:flex-start;font-size:16px;line-height:1.5;cursor:pointer}
.chk input{width:22px;height:22px;margin:2px 0 0;accent-color:var(--abisso);flex-shrink:0}
.hp-field{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden}
.send-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.send-osc{opacity:0;transition:opacity .3s ease}
.sending .send-osc{opacity:1}
.cont-sc input,.cont-sc textarea,.cont-sc select{min-height:52px;padding:0 16px;border:1px solid var(--grafite);border-radius:10px;background:#FFFFFF;font:inherit;color:var(--abisso);width:100%}
.cont-sc textarea{padding:14px 16px}
.cont-sc input[type="submit"]{width:auto;background:var(--abisso);color:var(--papiro);border:0;padding:0 26px;cursor:pointer}
.cont-sc{display:block}

/* ==========================================================================
   Chiusura e footer
   ========================================================================== */
.fin{height:480px;display:flex;align-items:center;justify-content:center;background:var(--micelio);transition:background-color 1.2s ease .4s}
.fin:not([data-pend]){background:var(--papiro)}
.fin img{width:420px;height:auto;transition:opacity .8s ease 1s,transform 1.2s var(--org) 1s}
.fin[data-pend] img{opacity:0;transform:scale(.92)}
.fin[data-rv][data-pend]{opacity:1;transform:none}

.ftr{background:var(--abisso);color:var(--papiro)}
.ftr a{color:var(--papiro)}
.ftr-in{padding-top:72px;padding-bottom:40px;display:flex;flex-direction:column;gap:56px}
.ftr-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.ftr-brand{display:flex;flex-direction:column;gap:20px}
.ftr-brand img{height:28px;width:auto;align-self:flex-start}
.ftr-brand p{margin:0;font-size:16px;line-height:1.5}
.ftr-brand img.ftr-spin{height:64px;width:auto;margin-top:12px}
.ric-intro{color:var(--papiro);max-width:640px}
.tm-txt p+p{margin-top:-6px}
.sec-why{border-top:1px solid var(--pulviscolo)}
.ftr-col{display:flex;flex-direction:column;gap:12px;font-size:16px}
.ftr-bottom{display:flex;justify-content:space-between;gap:24px;padding-top:24px;border-top:1px solid var(--grafite)}
.ftr-legal{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.pause{background:none;border:0;padding:0;min-height:24px;color:var(--papiro);font:inherit;text-decoration:underline;cursor:pointer}

/* ==========================================================================
   Pagine interne (modello generico, in attesa dei design dedicati)
   ========================================================================== */
.inner-pad{padding-top:56px;padding-bottom:112px}
.crumb{color:var(--grafite);display:block;margin-bottom:24px}
.crumb a{color:var(--grafite)}
.h1-inner{margin:16px 0 24px;font-size:72px;line-height:1;font-weight:400;letter-spacing:-0.03em}
.inner-art{max-width:820px;display:flex;flex-direction:column;align-items:flex-start}
.entry{font-size:18px;line-height:1.6;margin-top:32px}
.entry a{text-decoration-color:var(--sinapsi);text-decoration-thickness:2px;text-underline-offset:4px}
.list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}
.rcl{display:flex;flex-direction:column;gap:14px;padding:32px;border:1px solid var(--grafite);border-radius:14px;color:var(--abisso);text-decoration:none;transition:border-color .2s ease}
.rcl:hover{border-color:var(--sinapsi)}
.rcl .rct{font-size:28px;line-height:1.12}
.rcl .rcd{color:var(--grafite)}

/* ==========================================================================
   Tablet: 700-1099px
   ========================================================================== */
@media (max-width: 1099px){
	:root{--gut:32px}
	.h2-56{font-size:44px}.h2-48{font-size:40px}.h2-44{font-size:38px}.h2-60{font-size:48px}
	.sec-pad,.sec-pad-120{padding-top:88px;padding-bottom:88px}

	.mbar-in{gap:16px}
	.menub{display:inline-flex}
	.mnav{position:absolute;left:0;right:0;top:72px;margin:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px var(--gut) 32px;background:var(--papiro);border-bottom:1px solid var(--pulviscolo);max-height:calc(100vh - 72px);overflow:auto}
	.mnav.open{display:flex}
	.mnav .ml{min-height:56px;font-size:24px;border-bottom:1px solid var(--pulviscolo)}
	.mnav .btn{margin-top:24px;min-height:52px;font-size:17px}

	.hz-ui{flex-direction:column;align-items:stretch;bottom:96px;gap:20px}
	.ha{flex:none;max-width:620px}
	.hzq,.hzq-list{flex:none}
	.hzq-list{flex-direction:row;flex-wrap:wrap}
	.hq{font-size:17px;min-height:44px;padding:0 18px}
	.hzt{font-size:36px}

	.head-split .head-l,.head-split .head-r{grid-column:1 / -1}
	.stiles{grid-template-columns:repeat(2,minmax(0,1fr))}
	.stile{height:480px}

	.why-head,.why-list{grid-column:1 / -1}
	.why-head{position:static}

	.met-steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:32px}
	.met-line,.mw{display:none}
	.mst{gap:14px}

	.fcard{grid-column:span 8}
	.rc-grid{grid-template-columns:1fr}
	.test-txt{grid-column:span 8}
	.test-anim{grid-column:9 / span 4;padding-right:0}
	.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
	.cont-head,.cont-form{grid-column:1 / -1}
	.ftr-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
	.list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.h1-inner{font-size:56px}
}

/* ==========================================================================
   Telefono: fino a 699px (tavola mobile 390px)
   ========================================================================== */
@media (max-width: 699px){
	:root{--gut:20px}
	body{font-size:17px}
	.mono{font-size:13px}
	.grid{gap:20px}
	.h2-56,.h2-48,.h2-44{font-size:32px;line-height:1.08}
	.h2-60{font-size:36px;line-height:1.06}
	.lead,.lead-20{font-size:17px}
	.sec-pad,.sec-pad-120{padding-top:64px;padding-bottom:64px}
	.stack-48{gap:28px}
	.qp{min-height:36px;padding:0 16px;font-size:15px}
	.btn{font-size:17px}

	.mbar,.mbar-in{height:64px}
	.is-home .mbar{margin-bottom:-64px}
	.mbar.at-hero{background:transparent;border-bottom-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
	.mbar.at-hero.menu-open{background:var(--papiro)}
	.mlogo img{height:20px}
	.mnav{top:64px;padding:12px var(--gut) 32px}
	[id]{scroll-margin-top:64px}

	.hero{min-height:640px}
	.hzlogo{top:84px}
	.hz-ui{left:0;right:0;bottom:28px;gap:14px}
	.ha{margin:0 var(--gut);padding:22px;gap:14px;max-width:none}
	.hzt{font-size:26px;line-height:1.12;letter-spacing:-0.01em}
	.ha-p{font-size:16px}
	.ha-act .btn{min-height:48px}
	.ha-2{display:none}
	.hzq{padding:0}
	.hzlab{margin:0 var(--gut) 0;min-height:28px}
	.hzq-list{flex-wrap:nowrap;overflow-x:auto;width:100%;padding:0 var(--gut) 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
	.hzq-list::-webkit-scrollbar{display:none}
	.hq{flex-shrink:0;font-size:16px}
	.hzcue{display:none}

	.stiles{grid-template-columns:1fr;gap:36px}
	.stile{height:auto;display:flex;flex-direction:column;gap:14px;background:none;overflow:visible;border-radius:0}
	.sti{position:relative;display:block;aspect-ratio:16 / 10;border-radius:14px;overflow:hidden}
	.stile:hover .sti img,.stile:focus-visible .sti img{transform:scale(1.02);filter:blur(1.5px)}
	.stag{display:none}
	.stp{position:static;opacity:1;transform:none;padding:0;background:none;gap:10px}
	.stt{font-size:26px;line-height:1.1}
	.std{color:var(--grafite);font-size:16px}

	.why-row{grid-template-columns:56px minmax(0,1fr);gap:16px;padding:24px 0}
	.why-row .pr-ic{width:52px;height:52px}
	.why-head .h2{font-size:28px;line-height:1.15}
	.ref{font-size:12px;top:3px}
	.why-txt h3{font-size:22px}
	.why-txt p{font-size:16px}

	.met-in{padding-top:64px;padding-bottom:64px;gap:24px}
	.met-head{flex-direction:column;align-items:flex-start;gap:20px}
	.met-steps{grid-template-columns:1fr;gap:0}
	.mst{position:relative;padding-left:36px;padding-bottom:22px;gap:4px}
	.mst::before{content:"";position:absolute;left:7px;top:24px;bottom:-4px;width:3px;background:var(--sinapsi)}
	.mst:last-child::before{display:none}
	.ck{min-height:44px;padding:8px 12px;font-size:18px}
	.mst .ck{margin-left:-36px;padding-left:36px;border:0;background:none;position:relative}
	.mst .ck::before{content:"";position:absolute;left:0;top:13px;width:17px;height:17px;border-radius:50%;border:1px solid var(--abisso);background:#FFFFFF;transition:background-color .5s ease}
	.mst .ck.on{background:none;font-weight:400}
	.mst .ck.on::before{background:var(--k)}
	.mst .ck.cur{box-shadow:none;font-weight:700}
	.md{font-size:16px}

	.sec-form{height:auto;padding-bottom:48px;background:var(--papiro)}
	.fimg{position:relative;inset:auto;height:380px}
	.fimg img{inset:-20px;width:calc(100% + 40px);height:calc(100% + 40px);object-position:60% 30%;filter:blur(6px)}
	.sec-form .nz{height:380px}
	.form-in{height:auto;margin-top:-96px}
	.fcard{grid-column:1 / -1;padding:28px 22px;gap:18px}
	.fcard .btn{width:100%}

	.ric-head{flex-direction:column;align-items:flex-start;gap:16px;order:0}
	.sec-ric .h2-56{font-size:36px}
	.rc{padding:24px;gap:12px}
	.rct{font-size:22px}

	.sec-test{height:auto}
	.test-in{display:flex;flex-direction:column;align-items:stretch;padding-top:64px;padding-bottom:64px;position:relative}
	.test-txt{gap:22px}
	.test-txt .btn{width:100%}
	.test-anim{position:absolute;right:var(--gut);top:56px;padding:0}
	.chain-box{width:96px;height:96px}
	.chain-box .lot{width:114px;height:114px;margin-left:-9px;margin-top:-9px}

	.team-grid{grid-template-columns:1fr;gap:32px}
	.tm{display:grid;grid-template-columns:104px minmax(0,1fr);gap:16px;align-items:start}
	.tm-ph{border-radius:10px;padding:6px}
	.tm-ph .mono{font-size:10px}
	.tm-txt{gap:6px}
	.tm h3{font-size:20px}
	.tm p{font-size:15px}

	.cont-form{grid-template-columns:1fr;gap:16px}
	.span2{grid-column:auto}
	.cont-form .btn{width:100%}
	.chk{font-size:15px}

	.fin{height:280px}
	.fin img{width:240px}

	.ftr-in{padding-top:48px;padding-bottom:32px;gap:32px}
	.ftr-cols{grid-template-columns:1fr 1fr;gap:24px}
	.ftr-brand{grid-column:1 / -1;gap:14px}
	.ftr-brand img{height:24px}
	.ftr-brand img.ftr-spin{height:52px;margin-top:8px}
	.ftr-bottom{flex-direction:column;gap:12px;padding-top:20px}
	.ftr-legal{gap:16px 20px}

	.h1-inner{font-size:40px}
	.list-grid{grid-template-columns:1fr}
	.rcl{padding:24px}
}

/* ==========================================================================
   Movimento ridotto: tutto fermo e visibile
   ========================================================================== */
@media (prefers-reduced-motion: reduce){
	*,*::before,*::after{transition:none !important;animation:none !important}
	.js .is-home .hzbg,.js .is-home .hzlogo,.js .is-home .hq,.js .is-home .hzlab{filter:none !important;transform:none !important;opacity:1 !important}
	.js .is-home .hzcue{opacity:1 !important;transform:translate(-50%,0) !important}
	.js .ln span{transform:none !important}
	.js .ap{opacity:1 !important}
	[data-rv][data-pend]{opacity:1;transform:none}
	[data-pend] .fimg img{filter:blur(7px);transform:none}
	[data-pend] .fcard{opacity:1;transform:none}
	.fin,.fin[data-pend]{background:var(--papiro)}
	.fin[data-pend] img{opacity:1;transform:none}
}

/* ==========================================================================
   Pagine interne · v2.0
   Ricerche (elenco e singola), servizio, pagine generiche, AI Readiness Test.
   ========================================================================== */

.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}
[hidden]{display:none !important}
.btn-pp{background:var(--papiro);color:var(--abisso);border:0}.btn-pp:hover{background:var(--sinapsi);color:var(--abisso)}
.btn-so{border:1px solid var(--papiro);color:var(--papiro);background:transparent}.btn-so:hover{border-color:var(--sinapsi)}
.btn.dis{opacity:.4;cursor:not-allowed}
.btn-p.dis:hover{background:var(--abisso);color:var(--papiro)}
.h1-xl{margin:0;font-size:96px;line-height:.98;font-weight:400;letter-spacing:-0.03em}
a.qp{text-decoration:none}

/* Foto a fascia con sfocatura e rumore */
.rimg{position:relative;overflow:hidden;border-radius:14px;aspect-ratio:21 / 8;background:var(--pulviscolo)}
.rimg img{position:absolute;inset:-30px;width:calc(100% + 60px);height:calc(100% + 60px);max-width:none;object-fit:cover;filter:blur(7px);transform:scale(1.02);transition:filter 1.8s var(--org),transform 2.2s var(--org)}
.rimg.pend img{filter:blur(40px);transform:scale(1.12)}
.ph{position:relative;overflow:hidden;border-radius:14px;aspect-ratio:4 / 5;background:var(--pulviscolo)}
.ph img{position:absolute;inset:-12px;width:calc(100% + 24px);height:calc(100% + 24px);max-width:none;object-fit:cover;filter:blur(3px);transition:opacity .5s ease}

/* Ricerche: elenco */
.ric-hero-in{padding-top:56px;padding-bottom:48px;display:flex;flex-direction:column;gap:32px}
.ric-hero .crumb{margin:0}
.ric-head{align-items:end}
.ric-head-l{grid-column:span 7;display:flex;flex-direction:column;gap:24px}
.ric-head-r{grid-column:8 / span 5;margin:0;font-size:20px;line-height:1.5}
.ric-list-in{padding-top:24px;padding-bottom:112px;display:flex;flex-direction:column;gap:32px}
.chips{display:flex;gap:10px;flex-wrap:wrap}
.fl{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:22px;border:1px solid var(--abisso);background:transparent;color:var(--abisso);font-size:16px;cursor:pointer;transition:background-color .3s ease,color .3s ease,border-color .2s ease}
.fl:hover{border-color:var(--sinapsi)}
.fl.on{background:var(--abisso);color:var(--papiro);border-color:var(--abisso)}
.fl .n{font-family:var(--mono);font-size:13px}
.rcl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rcl{background:#FFFFFF;gap:16px}
.rcl:focus-visible{border-color:var(--sinapsi)}
.rcl-top{display:flex;justify-content:space-between;gap:16px}
.rcl-top sup{font-size:10px}
.rcl .rcd{font-size:16px;line-height:1.6;flex-grow:1}

/* Riquadro finale */
.sec-cta{background:var(--abisso);color:var(--papiro)}
.cta-in{padding-top:112px;padding-bottom:112px;align-items:center}
.cta-l{grid-column:span 7;display:flex;flex-direction:column;gap:20px}
.cta-r{grid-column:8 / span 5;display:flex;gap:16px;flex-wrap:wrap;justify-content:flex-end}
main:has(.sec-cta) + .ftr .ftr-in{border-top:1px solid var(--grafite)}

/* Ricerca, servizio e pagine generiche */
.single-in{padding-top:56px;padding-bottom:96px;display:flex;flex-direction:column;gap:32px}
.single-in .crumb{margin:0}
.single-head{display:flex;flex-direction:column;gap:20px;max-width:900px}
.single-head .h1-inner{margin:0}
.single-in .entry{margin:0;max-width:760px}
.entry>*:first-child{margin-top:0}
.entry h2{font-size:32px;line-height:1.15;font-weight:400;letter-spacing:-0.01em;margin:48px 0 16px}
.entry h3{font-size:24px;line-height:1.2;font-weight:400;margin:36px 0 12px}
.entry img{border-radius:14px}
.entry table{border-collapse:collapse;width:100%;font-size:16px}
.entry td,.entry th{border-bottom:1px solid var(--pulviscolo);padding:10px 8px;text-align:left;vertical-align:top}
.back{margin:0}
.pg-builder{display:block}
.pwd-form{display:flex;flex-direction:column;gap:20px;max-width:480px;padding:28px;border-radius:14px;background:var(--papiro)}
.pwd-form p{margin:0}

/* AI Readiness Test: presentazione */
.tst-intro{background:var(--nebulosa)}
.tst-intro-in{padding-top:64px;padding-bottom:96px;align-items:center}
.tst-intro-l{grid-column:span 7;display:flex;flex-direction:column;gap:28px}
.tst-intro-l .crumb{margin:0}
.tst-intro-r{grid-column:9 / span 4}
.h1-test{margin:0;font-size:64px;line-height:1.02;font-weight:400;letter-spacing:-0.03em}
.ph-m{display:none}
.facts{display:flex;border-top:1px solid var(--abisso);max-width:640px}
.facts>div{flex:1;padding:18px 0;display:flex;flex-direction:column;gap:6px}
.facts>div+div{padding-left:24px;border-left:1px solid rgba(21,42,47,.25)}
.facts .fv-big{font-size:28px}
.facts .fv{font-size:18px;line-height:1.35}
.ts-missing{padding-top:48px;padding-bottom:48px}

/* AI Readiness Test: domande (senza JavaScript il modulo resta un modulo normale) */
.ts{background:var(--papiro)}
.js.ts-ready .ts{display:none}
.js.ts-ready.ts-on .ts{display:block}
.js.ts-on #mbar,.js.ts-on .ftr,.js.ts-on .tst-intro,.js.ts-on .skip{display:none}
html:not(.ts-ready) .ts-bar,html:not(.ts-ready) .ts-aside,html:not(.ts-ready) .ts-head,html:not(.ts-ready) .ts-nav,html:not(.ts-ready) .ts-hint{display:none}
html:not(.ts-ready) .ts-main{padding-top:48px}
html:not(.ts-ready) .ts-body{grid-column:1 / -1;max-width:760px}
.ts-bar{border-bottom:1px solid var(--pulviscolo)}
.ts-bar-in{height:72px;display:flex;align-items:center;justify-content:space-between}
.ts-bar img{height:24px;width:auto;display:block}
.ts-quit{background:none;border:0;padding:0;min-height:44px;font-size:16px;cursor:pointer}
.ts-main{padding-top:48px;padding-bottom:96px;min-height:calc(100vh - 73px);align-items:start}
.ts-aside{grid-column:span 4;display:flex;flex-direction:column;gap:24px;position:sticky;top:24px}
.ts-note{margin:0;font-size:16px;line-height:1.55;color:var(--grafite)}
.ts-body{grid-column:6 / span 7;display:flex;flex-direction:column;gap:32px;min-width:0}
.ts-head{display:flex;flex-direction:column;gap:16px}
.ts-meta{display:flex;justify-content:space-between;gap:16px;min-height:20px}
.ts-prog{height:6px;border-radius:3px;background:var(--pulviscolo);overflow:hidden}
.ts-prog i{display:block;height:100%;width:0;background:var(--sinapsi);transition:width .5s var(--org)}
.ts-steps{margin:0;padding:0;list-style:none;display:flex;align-items:center}
.step{padding:10px 14px;border-radius:10px;border:1px solid var(--pulviscolo);color:var(--grafite);font-size:15px;flex-shrink:0;background:#FFFFFF}
.step.done{border-color:var(--abisso);color:var(--abisso)}
.step.cur{border:2px solid var(--sinapsi);color:var(--abisso)}
.stepl{flex-grow:1;border-top:1px dashed var(--pulviscolo);min-width:8px}
.ts-stage .wpcf7{margin:0}
.ts-stage .wpcf7-form{margin:0}
.ts-s{display:flex;flex-direction:column;gap:28px}
.ts-q{margin:0;font-size:40px;line-height:1.1;font-weight:400;letter-spacing:-0.01em}
.ts-q:focus{outline:none}
.ts-s .box-domanda{margin:0;padding:0;border:0;background:none}
.ts-s .box-domanda br{display:none}
.ts-s .box-domanda p{margin:0}
.ts .wpcf7-radio,.ts .box-domanda .wpcf7-checkbox{display:flex;flex-direction:column;gap:14px}
.opt.opt-m .dot{border-radius:5px}
.opt.opt-m.on .dot::after{width:12px;height:7px;border-radius:0;background:none;border-left:2px solid var(--abisso);border-bottom:2px solid var(--abisso);transform:translateY(-2px) rotate(-45deg)}
.ts-multi{margin:-16px 0 0}
.ts .wpcf7-list-item{display:block;margin:0}
.opt{position:relative;display:flex;gap:16px;align-items:flex-start;width:100%;padding:20px 24px;border-radius:12px;border:1px solid var(--abisso);background:#FFFFFF;color:var(--abisso);font-size:18px;line-height:1.45;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}
.opt:hover{border-color:var(--sinapsi)}
.opt input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.opt:focus-within{outline:3px solid var(--sinapsi);outline-offset:3px}
.opt .dot{flex-shrink:0;width:22px;height:22px;margin-top:1px;border-radius:50%;border:1.5px solid var(--abisso);display:flex;align-items:center;justify-content:center}
.opt.on{background:var(--nebulosa);box-shadow:inset 0 0 0 1px var(--abisso)}
.opt.on .dot::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--abisso)}
.opt-l{margin-right:8px}
.blk{display:flex;flex-direction:column;gap:14px}
.blk-h{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--abisso)}
.priv{padding:18px 20px;border-radius:12px;background:var(--papiro)}
.priv .wpcf7-list-item{margin:0}
.priv label{display:flex;gap:14px;align-items:flex-start;font-size:16px;line-height:1.5;cursor:pointer}
.priv input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--abisso);flex-shrink:0}
.ts-lab{display:block;font-size:18px;font-weight:400;margin-bottom:10px}
.lab2{display:flex;flex-direction:column;gap:10px;font-size:18px}
.fld2{min-height:56px;padding:0 16px;border:1px solid var(--abisso);border-radius:10px;background:#FFFFFF;font:inherit;font-size:18px;color:var(--abisso);width:100%}
select.fld2{appearance:auto}
.ts .wpcf7-form-control-wrap{display:block}
.ts .wpcf7-not-valid-tip{display:block;margin-top:8px;font-size:15px;color:var(--abisso);font-family:var(--mono)}
.ts .wpcf7-not-valid{border-color:var(--sinapsi);box-shadow:0 0 0 1px var(--sinapsi)}
.ts-submit{display:none}
html:not(.ts-ready) .ts-submit{display:block}
.ts .wpcf7-response-output{margin:16px 0 0 !important;padding:14px 18px !important;border-radius:10px;border:1px solid var(--abisso) !important;font-size:16px}
.ts .wpcf7 form.sent .wpcf7-response-output{display:none}
.ts .wpcf7-spinner{display:none}
.ts-nav{display:flex;justify-content:space-between;gap:16px;padding-top:8px}
.ts-hint{margin:-16px 0 0;color:var(--grafite);text-align:right}
.ts-done{display:flex;flex-direction:column;gap:24px}
.ts-done:focus{outline:none}
.ts-ok{background:var(--micelio)}
.ts-done-b{display:flex;gap:16px;flex-wrap:wrap}

@media (max-width: 1099px){
	.h1-xl{font-size:72px}
	.ric-head-l,.ric-head-r,.cta-l,.cta-r{grid-column:1 / -1}
	.cta-r{justify-content:flex-start}
	.rcl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.tst-intro-l{grid-column:span 7}
	.tst-intro-r{grid-column:8 / span 5}
	.h1-test{font-size:52px}
	.ts-aside{grid-column:span 4}
	.ts-body{grid-column:5 / span 8}
	.ts-q{font-size:32px}
	.step{padding:8px 10px;font-size:14px}
}

@media (max-width: 699px){
	.h1-xl{font-size:48px}
	.ric-hero-in{padding-top:28px;padding-bottom:24px;gap:20px}
	.ric-head{gap:20px}
	.ric-head-l{gap:20px}
	.ric-head-r{font-size:18px}
	.rimg{aspect-ratio:16 / 9}
	.ric-list-in{padding-top:0;padding-bottom:64px;gap:20px}
	.chips{flex-wrap:nowrap;overflow-x:auto;margin:0 calc(var(--gut) * -1);padding:0 var(--gut) 4px;scrollbar-width:none}
	.chips::-webkit-scrollbar{display:none}
	.fl{flex-shrink:0}
	.rcl-grid{grid-template-columns:1fr;gap:12px}
	.rcl .rct{font-size:22px}
	.cta-in{padding-top:64px;padding-bottom:64px;gap:24px}
	.cta-r{flex-direction:column}
	.cta-r .btn{width:100%}
	.h2.h2-56.sinapsi{font-size:36px}
	.single-in{padding-top:28px;padding-bottom:64px;gap:24px}
	.rimg{border-radius:12px}

	.tst-intro-in{padding-top:28px;padding-bottom:48px}
	.tst-intro-l{grid-column:1 / -1;gap:20px}
	.tst-intro-r{display:none}
	.ph-m{display:block;aspect-ratio:4 / 3}
	.h1-test{font-size:40px;line-height:1.05}
	.facts .fv-big{font-size:26px}
	.facts .fv{font-size:16px}
	.facts>div+div{padding-left:14px}
	.tst-intro-l .btn{width:100%}

	.ts-bar-in{height:64px}
	.ts-bar img{height:20px}
	.ts-quit{font-size:15px}
	.ts-main{display:block;padding-top:20px;padding-bottom:32px;min-height:calc(100vh - 65px)}
	.ts-aside{display:block;float:left;width:72px;margin-right:14px;position:static}
	.ts-kicker,.ts-note{display:none}
	.ts-ph{width:72px;height:72px;aspect-ratio:auto;border-radius:10px}
	.ts-body{display:block}
	.ts-head{display:block}
	.ts-meta{flex-direction:column;justify-content:center;gap:4px;min-height:72px}
	.ts-prog{clear:both;margin-top:16px}
	.ts-stage,.ts-done{margin-top:24px}
	.ts-nav{margin-top:20px}
	.ts-nav [data-ts-back]{flex:0 0 auto}
	.ts-nav .btn{line-height:1.2;padding:10px 18px}
	.ts-steps{display:none}
	.ts-q{font-size:26px;line-height:1.15}
	.ts-s{gap:20px}
	.ts .wpcf7-radio,.ts .box-domanda .wpcf7-checkbox{gap:10px}
	.ts-multi{margin:-10px 0 0}
	.opt{padding:16px 18px;font-size:16px;gap:12px}
	.fld2{font-size:17px}
	.lab2,.ts-lab{font-size:17px}
	.ts-nav{position:sticky;bottom:0;background:rgba(249,249,237,.96);padding:12px 0;margin:0 calc(var(--gut) * -1);padding-left:var(--gut);padding-right:var(--gut);border-top:1px solid var(--pulviscolo)}
	.ts-nav .btn{flex:1 1 auto}
	.ts-hint{text-align:left;margin:-8px 0 0}
	.ts-done .btn{width:100%}
}

@media (hover: none){
	.btn-p:hover{background:var(--abisso);color:var(--papiro)}
	.btn-pp:hover{background:var(--papiro)}
	.opt:hover{border-color:var(--abisso)}
}

@media (prefers-reduced-motion: reduce){
	.rimg img,.rimg.pend img{transition:none !important;filter:blur(7px) !important;transform:none !important}
	.ts-prog i{transition:none}
}
