#aree,.home-content-section{scroll-margin-top:128px}.home-section-title{font-family:Georgia,serif;font-size:clamp(36px,4.6vw,68px);font-weight:400;line-height:1.12;margin:20px 0 30px}.home-content-section{border-top:1px solid #dedde0}@media(min-width:951px) and (max-width:1399px){#aree,.home-content-section{scroll-margin-top:206px}}@media(max-width:950px){#aree,.home-content-section{scroll-margin-top:184px}}
/* Percorso editoriale centrale, coerente con l'apertura della home. */
.home-editorial{padding:76px 6%;color:#292936;background:radial-gradient(ellipse at 85% 15%,#e2dfea66,transparent 60%),linear-gradient(125deg,#f5f4ef,#eeedf2);border-top:1px solid #d9d7e1;scroll-margin-top:128px}
.home-editorial:nth-of-type(even){background:linear-gradient(125deg,#f8f7f3,#efedf3)}
.home-editorial-inner{max-width:1180px;margin:0 auto}.home-editorial .eyebrow{margin:0 0 24px;color:#756386}
.home-editorial h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(36px,4vw,62px);line-height:1.13;letter-spacing:-.035em;margin:0 0 38px}.home-editorial h2 span{color:#756386}
.home-editorial-text{max-width:920px;font:19px/1.78 'Segoe UI',Arial,sans-serif;color:#3f3e4b}.home-editorial-text>p{margin:0 0 20px}.home-editorial-text .home-editorial-lead{font-size:23px;line-height:1.55;font-weight:500;color:#292936}.home-editorial-closing{font-weight:600;color:#756386}.home-editorial .button{margin-top:12px}.home-editorial form{margin-top:32px}.home-editorial-direct{margin-top:32px;font-size:17px}.home-editorial-direct a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.home-editorial{padding:45px 6%;scroll-margin-top:184px}.home-editorial h2{font-size:38px;margin-bottom:28px}.home-editorial-text{font-size:17px;line-height:1.75}.home-editorial-text .home-editorial-lead{font-size:20px}}

/* Dalla rete neurale alla materia: ciclo sincronizzato di tre secondi. */
#azienda.home-editorial .home-editorial-inner{max-width:1400px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);column-gap:7%;align-items:start}
#azienda .home-editorial-inner>.eyebrow,#azienda .home-editorial-inner>h2,#azienda .home-editorial-text{grid-column:1}
#azienda .home-neural-visual{grid-column:2;grid-row:1/4;align-self:center;margin:0;width:100%;border-radius:12px;overflow:hidden;box-shadow:6px 12px 24px #75638633;border:1px solid #bbb6c4}
.home-neural-visual svg{display:block;width:100%;height:auto}.neural-stream{stroke-width:5;stroke-dasharray:9 91;stroke-dashoffset:9;animation:neural-travel 3s linear infinite}.neural-stream-halo{stroke-width:18;filter:url(#neural-glow)}
.neural-origin{animation:neural-source 3s ease-out infinite;filter:drop-shadow(0 0 12px #afffd9)}.neural-arrival{animation:neural-material 3s ease-in-out infinite;filter:drop-shadow(0 0 14px #bcfff0)}
@keyframes neural-travel{0%{stroke-dashoffset:9;opacity:0}8%{opacity:1}85%{opacity:1}100%{stroke-dashoffset:-100;opacity:0}}
@keyframes neural-source{0%,100%{opacity:.2}12%{opacity:.95}35%,90%{opacity:.15}}
@keyframes neural-material{0%,65%,100%{opacity:0}87%{opacity:.85}}
@media(max-width:800px){#azienda.home-editorial .home-editorial-inner{display:block}#azienda .home-neural-visual{max-width:400px;margin:30px auto 0}}
@media(prefers-reduced-motion:reduce){.neural-stream,.neural-origin,.neural-arrival{animation:none;opacity:0}}

/* Metodo: sfere luminose convergenti sui collegamenti del nodo centrale. */
#metodo.home-editorial .home-editorial-inner{max-width:1400px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);column-gap:7%;align-items:start}
#metodo .home-editorial-inner>.eyebrow,#metodo .home-editorial-inner>h2,#metodo .home-editorial-text{grid-column:1}
#metodo .home-hub-visual{grid-column:2;grid-row:1/4;align-self:center;margin:0;width:100%;border-radius:12px;overflow:hidden;box-shadow:6px 12px 24px #75638633;border:1px solid #bbb6c4}
.home-hub-visual svg{display:block;width:100%;height:auto}.hub-arrival-glow{animation:hub-arrival 3s ease-in-out infinite}
@keyframes hub-arrival{0%,50%,100%{opacity:.2}85%{opacity:1}}
@media(max-width:800px){#metodo.home-editorial .home-editorial-inner{display:block}#metodo .home-hub-visual{max-width:400px;margin:30px auto 0}}
@media(prefers-reduced-motion:reduce){.hub-traveller{display:none}.hub-arrival-glow{animation:none;opacity:.3}}

/* Assistenza: anelli diffusi, convergenza e dissolvenza sull'infinito. */
#assistenza.home-editorial .home-editorial-inner{max-width:1400px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);column-gap:7%;align-items:start}
#assistenza .home-editorial-inner>.eyebrow,#assistenza .home-editorial-inner>h2,#assistenza .home-editorial-text{grid-column:1}
#assistenza .home-infinity-visual{grid-column:2;grid-row:1/4;align-self:center;margin:0;width:100%;border-radius:12px;overflow:hidden;box-shadow:6px 12px 24px #75638633;border:1px solid #bbb6c4}
.home-infinity-visual svg{display:block;width:100%;height:auto}.support-energy-ring{transform-origin:444px 854px;animation:support-converge 3s linear infinite;pointer-events:none}
@keyframes support-converge{0%{transform:scale(1);opacity:0}12%{transform:scale(.91);opacity:.12}45%{transform:scale(.67);opacity:.4}68%{transform:scale(.50);opacity:.8}82%{transform:scale(.39);opacity:.5}100%{transform:scale(.23);opacity:0}}
@media(max-width:800px){#assistenza.home-editorial .home-editorial-inner{display:block}#assistenza .home-infinity-visual{max-width:400px;margin:30px auto 0}}
@media(prefers-reduced-motion:reduce){.support-energy-ring{animation:none;opacity:0}}

/* Sequenza neurale 5s: ingresso 0–0.5, picco 0.5–1, uscita 1–1.5; flusso da 1s. */
.neural-origin{animation:neural-source 5s linear infinite;filter:drop-shadow(0 0 18px #b8ffe0)}
.neural-stream{animation:neural-travel 5s linear infinite}
.neural-arrival{animation:neural-material 5s ease-in-out infinite}
@keyframes neural-source{0%{opacity:0}10%,26%{opacity:1}36%,100%{opacity:0}}
@keyframes neural-travel{0%,20%{stroke-dashoffset:9;opacity:0}24%{opacity:1}87%{opacity:1}96%,100%{stroke-dashoffset:-100;opacity:0}}
@keyframes neural-material{0%,78%,100%{opacity:0}92%{opacity:.85}}
@media(prefers-reduced-motion:reduce){.neural-stream,.neural-origin,.neural-arrival{animation:none;opacity:0}}

/* Un solo segmento per percorso: evita la ricomparsa della trama prima della partenza. */
.neural-stream{stroke-dasharray:9 220}
@keyframes neural-travel{0%,20%{stroke-dashoffset:9;opacity:0}24%{stroke-dashoffset:3;opacity:1}87%{stroke-dashoffset:-90;opacity:1}96%,100%{stroke-dashoffset:-110;opacity:0}}

/* Compact the three animated home sections without scaling typography. */
:is(#azienda,#metodo,#assistenza).home-editorial{padding-top:60.8px;padding-bottom:60.8px}
:is(#azienda,#metodo,#assistenza).home-editorial .home-editorial-inner{grid-template-rows:auto auto 1fr;align-content:start}
:is(#azienda,#metodo,#assistenza) .home-editorial-inner>.eyebrow{margin-bottom:18px}
:is(#azienda,#metodo,#assistenza) .home-editorial-inner>h2{margin-bottom:24px}
#azienda .home-neural-visual,#metodo .home-hub-visual,#assistenza .home-infinity-visual{width:80%;justify-self:center;align-self:start}
@media(max-width:800px){#azienda .home-neural-visual,#metodo .home-hub-visual,#assistenza .home-infinity-visual{width:80%;max-width:320px;margin-top:24px}}
@media(max-width:700px){:is(#azienda,#metodo,#assistenza).home-editorial{padding-top:36px;padding-bottom:36px}}

/* FAQ in home: visual rhythm aligned with the editorial sections. */
.home-faq{padding:76px 6%;color:#292936;background:radial-gradient(ellipse at 85% 15%,#e2dfea66,transparent 60%),linear-gradient(125deg,#f5f4ef,#eeedf2);border-top:1px solid #d9d7e1;scroll-margin-top:128px}
.home-faq .section-top{max-width:1400px;margin:0 auto 44px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);column-gap:7%;align-items:end}
.home-faq .section-top .eyebrow{margin:0 0 18px;color:#756386}
.home-faq .section-top h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4vw,62px);font-weight:400;letter-spacing:-.035em;line-height:1.13;margin:0}
.home-faq .section-top p{max-width:520px;margin:0 0 8px;color:#3f3e4b;font:19px/1.65 'Segoe UI',Arial,sans-serif}
.home-faq .faq{max-width:1400px;margin:0 auto;counter-reset:home-faq}
.home-faq .faq details{display:grid;grid-template-columns:72px minmax(0,1fr);column-gap:18px;padding:22px 0;border-bottom:1px solid #d9d7e1}
.home-faq .faq details:first-child{border-top:1px solid #d9d7e1}
.home-faq .faq summary{grid-column:2;position:relative;list-style:none;padding-right:44px;color:#292936;font:22px/1.4 Georgia,'Times New Roman',serif;cursor:pointer}
.home-faq .faq summary::-webkit-details-marker{display:none}
.home-faq .faq summary::before{counter-increment:home-faq;content:counter(home-faq,decimal-leading-zero);position:absolute;right:calc(100% + 18px);top:1px;color:#756386;font:13px/1.8 'Segoe UI',Arial,sans-serif;letter-spacing:.08em}
.home-faq .faq summary::after{content:'+';position:absolute;right:4px;top:50%;transform:translateY(-50%);color:#756386;font:26px/1 Arial,sans-serif}
.home-faq .faq details[open] summary::after{content:'−'}
.home-faq .faq details p{grid-column:2;max-width:780px;margin:14px 44px 3px 0;color:#4c4b56;font:17px/1.7 'Segoe UI',Arial,sans-serif}
@media(max-width:800px){.home-faq{padding:54px 6%}.home-faq .section-top{display:block;margin-bottom:32px}.home-faq .section-top p{margin-top:18px;font-size:17px}.home-faq .faq details{grid-template-columns:40px minmax(0,1fr);column-gap:10px;padding:19px 0}.home-faq .faq summary{font-size:19px;padding-right:34px}.home-faq .faq summary::before{right:calc(100% + 10px);font-size:11px}.home-faq .faq details p{font-size:16px;margin-right:28px}}


/* FAQ home italiana: risposta leggibile e righe più compatte. */
html .home-faq .faq{width:min(100%,980px)}
html .home-faq .faq details{display:block}
html .home-faq .faq summary{display:block;padding-left:0}
html .home-faq .faq summary::before{left:-62px;right:auto}
html .home-faq .faq details p{width:min(100%,780px);max-width:780px;margin:14px 44px 3px 0}
@media(max-width:800px){
 html .home-faq .faq{width:100%}
 html .home-faq .faq summary{padding-left:42px}
 html .home-faq .faq summary::before{left:0;right:auto}
 html .home-faq .faq details p{width:auto;margin:14px 28px 3px 42px}
}


/* Allinea titolo e domande FAQ al margine del testo di contatto. */
html .home-faq .section-top,
html .home-faq .faq{max-width:1060px;width:100%;margin-left:auto;margin-right:auto}

/* Mantieni la seconda riga del titolo FAQ su una sola riga. */
html .home-faq .section-top{grid-template-columns:minmax(0,3fr) minmax(220px,1fr);column-gap:40px}

@media(min-width:801px){html .home-faq .faq-title-single-line{display:inline-block;white-space:nowrap}}
