/* Sito creato con ❤ custom da MarTe Graphics | autore e sito web: www.martegraphics.it | All Rights Reserved. */
:root{
  --nero:#1b1b1b;--nero-2:#111;--chiaro:#d9d9d9;--grigio:#f1f2eb;--fondo:#f9f9f9;--linea:#d5d8dc;
  --testo:#1b1b1b;--testo-art:#666;--titolo-art:#202020;--viola:#605be5;
  --f:'Heebo',system-ui,-apple-system,'Segoe UI',sans-serif;--f-tit:'Source Sans Pro','Heebo',sans-serif;
  --cnt:1180px;--gutter:16px;--hdr:114px
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body{margin:0;background:var(--fondo);color:var(--nero-2);font-family:var(--f);font-size:16.8px;line-height:1.55;font-weight:400;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
p{margin:0 0 1em}
h1,h2,h3,h4{margin:0;font-family:var(--f);color:var(--nero);line-height:1.15}
figure{margin:0}
button{font:inherit}
:focus-visible{outline:2px solid #4a90e2;outline-offset:3px}
mark.nuovo,.sec-nuova mark{background:#fff3a0;color:inherit;padding:0 .1em}
.sf-scuro mark.nuovo,.sf-scuro .sec-nuova mark{background:#6b5f10;color:#fff}
.senza-evidenze mark.nuovo{background:none;padding:0}
.salta{position:absolute;left:-9999px;top:8px;z-index:200;background:#fff;color:var(--nero);padding:10px 16px}
.salta:focus{left:12px}
.cnt{width:100%;max-width:calc(var(--cnt) + 2*var(--gutter));margin:0 auto;padding:0 var(--gutter)}
.giust{text-align:justify;hyphens:none}
@media (max-width:600px){.giust,.punti-testo .testo{text-align:left}}
.testo-ricco>*:last-child{margin-bottom:0}
.testo-ricco ul,.testo-ricco ol{padding-left:1.3em;margin:0 0 1em}
.testo-ricco li{margin:.2em 0}
.testo-ricco a{text-decoration:underline;text-underline-offset:2px}
.sec{padding:80px 0;position:relative}
.sec-poco{padding:40px 0}
.sec-zero{padding:0}
.sf-grigio{background:var(--grigio)}
.sf-scuro{background:var(--nero);color:var(--chiaro)}
.sf-scuro h2,.sf-scuro h3{color:var(--chiaro)}

/* Intestazione */
.hdr{position:absolute;top:10px;left:0;right:0;z-index:50;padding:0 var(--gutter)}
.hdr-box{max-width:1140px;margin:0 auto;background:var(--nero);padding:10px;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:var(--hdr)}
.logo{display:block;flex:none;line-height:0}
.logo img{width:188px;height:auto}
.nav ul{list-style:none;margin:0;padding:0 10px;display:flex;gap:0 26px;align-items:center}
.nav a{display:block;color:#fff;text-decoration:none;text-transform:uppercase;font-size:16.8px;line-height:26px;padding:8px 0;position:relative}
.nav a::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:#fff;transform:scaleX(0);transition:transform .25s}
.nav a:hover::after,.nav a[aria-current]::after{transform:scaleX(1)}
.hdr-tog,.hdr-chiudi{display:none;background:none;border:0;color:#fff;padding:10px;cursor:pointer;min-width:46px;min-height:46px;align-items:center;justify-content:center}
.pan-m{position:fixed;inset:0;z-index:100;background:var(--nero);padding:12px var(--gutter) 40px;overflow:auto}
.pan-m-testa{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.pan-m .logo img{width:130px}
.nav-m ul{list-style:none;margin:0;padding:0}
.nav-m a{display:block;padding:16px 4px;border-bottom:1px solid rgba(255,255,255,.14);font-size:20px;text-transform:uppercase;color:#fff;text-decoration:none;letter-spacing:.04em}
.nav-m a[aria-current]{font-weight:700}
@media (max-width:1000px){.nav{display:none}.hdr-tog,.hdr-chiudi{display:inline-flex}}
@media (max-width:600px){:root{--hdr:72px}.hdr{top:8px;padding:0 10px}.hdr-box{padding:6px 6px 6px 10px}.logo img{width:118px}}

/* Testata */
.testata{position:relative;overflow:hidden;background:var(--nero);height:471px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}
.testata-foto{position:absolute;inset:0}
.testata-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity .8s ease}
.testata-foto img.attiva{opacity:1}
.testata-in{position:relative;z-index:1;padding-top:calc(var(--hdr) + 10px)}
.testata-tit{margin:0;font-family:var(--f-tit);color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.testata-tit .r1{display:block;font-size:82px;line-height:1;font-weight:600;letter-spacing:0}
.testata-tit .r2{display:block;font-size:55px;line-height:1;font-weight:700;margin-top:16px}
.testata-slider{height:62.5vw;max-height:900px;min-height:560px;align-items:stretch}
.testata-slider .testata-in{display:flex;flex-direction:column;justify-content:flex-start;padding-top:0}
.testata-occ{margin:0;position:absolute;left:0;right:0;top:45%;font-family:var(--f-tit);font-size:20px;line-height:25px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:var(--nero);padding:0 var(--gutter)}
.testata-slider .testata-tit{position:absolute;left:0;right:0;top:69%;padding:0 var(--gutter)}
.testata-slider .testata-tit .r1{font-size:90px;letter-spacing:2px;font-weight:600}
.testata-slider .testata-tit .r2{font-size:90px;letter-spacing:2px;font-weight:900;margin-top:18px}
.sl-f{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:rgba(0,0,0,.55);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .2s}
.sl-f:hover{background:rgba(0,0,0,.85)}
.sl-prec{left:20px}.sl-succ{right:20px}
@media (max-width:1200px){.testata-slider .testata-tit .r1,.testata-slider .testata-tit .r2{font-size:74px}.testata-occ{font-size:16px;letter-spacing:1px}}
@media (max-width:1000px){.testata-tit .r1{font-size:60px}.testata-tit .r2{font-size:40px}.testata-slider .testata-tit .r1,.testata-slider .testata-tit .r2{font-size:56px}.testata-occ{font-size:13px;letter-spacing:0}}
@media (max-width:600px){.testata{height:auto;min-height:330px;padding:0 0 48px}.testata-tit .r1{font-size:34px}.testata-tit .r2{font-size:26px;margin-top:10px}.testata-slider{height:auto;min-height:560px}.testata-slider .testata-tit{top:58%}.testata-slider .testata-tit .r1,.testata-slider .testata-tit .r2{font-size:32px;letter-spacing:1px;margin-top:6px}.testata-occ{top:40%;font-size:15px;letter-spacing:0;line-height:20px}.sl-f{top:auto;bottom:16px;transform:none;width:44px;height:44px}.sl-prec{left:16px}.sl-succ{right:16px}}

/* Pulsanti con cornice */
.sec-azioni{display:flex;flex-wrap:wrap;gap:24px;margin-top:40px}
.sec-azioni-c{justify-content:center}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:0 28px;margin:10px;background:var(--nero);color:#fff;font-weight:600;font-size:16.8px;text-decoration:none;transition:background .2s,color .2s}
.btn::before{content:'';position:absolute;inset:-10px;background:url(../img/cornice-scura.png) center/100% 100% no-repeat;pointer-events:none}
.btn span{position:relative;z-index:1}
.btn span::after{content:' \2192';font-family:system-ui,sans-serif}
.btn{min-width:190px}
.btn:hover{background:#000}
.btn-chiaro{background:#fff;color:var(--nero)}
.btn-chiaro::before{background-image:url(../img/cornice-chiara.png)}
.btn-chiaro:hover{background:var(--grigio)}
.btn-bordo{background:transparent;color:var(--nero);box-shadow:inset 0 0 0 1px var(--nero)}

/* Presentazione */
.presenta{padding:80px 0}
.presenta-in{display:grid;grid-template-columns:551fr 560fr;gap:49px;align-items:center}
.presenta-tit{font-size:21px;line-height:1;font-weight:600;color:var(--nero);margin-bottom:14px}
.presenta-sotto{font-size:19px;line-height:1;font-weight:300;color:var(--nero);margin:0 0 22px}
.presenta-testo .testo{color:var(--nero)}
@media (max-width:860px){.presenta{padding:56px 0}.presenta-in{grid-template-columns:1fr;gap:32px}}

/* Fascia scura */
.punti{padding:120px 0}
.punti-testo{padding:46px 0}
.punti-in{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:40px}
.punti-icone .punto{text-align:center}
.punto-ico{width:80px;height:80px;object-fit:contain;margin:0 auto 20px}
.punto-tit{font-size:19px;line-height:1;font-weight:600;color:var(--chiaro);margin-bottom:20px}
.punti .testo{color:var(--chiaro)}
.punti-testo .testo{text-align:justify}
.punti-testo .punto{padding:0 10px}
@media (max-width:1000px){.punti-icone .punti-in{grid-template-columns:repeat(2,1fr);gap:48px 24px}.punti{padding:72px 0}}
@media (max-width:767px){.punti-testo .punti-in{grid-template-columns:1fr;gap:30px}.punti-testo{padding:48px 0}}
@media (max-width:480px){.punti-icone .punti-in{grid-template-columns:1fr}}

/* Approccio */
.approccio-in{display:grid;grid-template-columns:646fr 534fr;max-width:1200px;padding:0 10px}
.approccio-sx{display:grid;grid-template-columns:255fr 391fr;min-height:750px;background:var(--nero)}
.approccio-foto{position:relative;overflow:hidden}
.approccio-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.approccio-scuro{padding:30px 30px 30px 30px;display:flex;flex-direction:column;justify-content:center;color:var(--chiaro)}
.approccio-tit{font-size:19px;line-height:1;font-weight:600;color:var(--chiaro);text-align:center;margin-bottom:24px}
.approccio-scuro .sec-azioni{justify-content:center;margin-top:30px}
.approccio-dx{background:var(--grigio);display:flex;flex-direction:column;justify-content:space-around;padding:40px 40px 40px 30px;gap:30px}
.approccio-voce{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:center}
.approccio-ico img{width:80px;height:80px;object-fit:contain;margin:0 auto;opacity:.9}
.voce-tit{font-size:19px;line-height:1;font-weight:600;margin-bottom:18px}
@media (max-width:1000px){.approccio-in{grid-template-columns:1fr}.approccio-sx{min-height:0}}
@media (max-width:600px){.approccio-sx{grid-template-columns:1fr}.approccio-foto{height:220px}.approccio-scuro{padding:36px 20px}.approccio-dx{padding:32px 20px}.approccio-voce{grid-template-columns:64px 1fr;align-items:start}.approccio-ico img{width:56px;height:56px}}

/* Titolo grande + due colonne */
.tit-grande{font-size:65px;line-height:1;font-weight:900;letter-spacing:4.9px;text-align:center;color:var(--nero);margin:0 0 40px}
.studio-col{display:grid;grid-template-columns:450fr 570fr;gap:140px;align-items:center}
.studio-lead{font-size:26px;line-height:40.3px;font-weight:700;color:var(--nero)}
.studio-lead p{margin:26px 0}
.studio .testo{color:var(--nero)}
@media (max-width:1000px){.studio-col{gap:48px}.tit-grande{font-size:48px;letter-spacing:3px}}
@media (max-width:767px){.studio-col{grid-template-columns:1fr;gap:16px}.studio-lead{font-size:21px;line-height:1.5}.tit-grande{font-size:36px;letter-spacing:2px;margin-bottom:24px}}

/* Invito a contattare */
.cta{padding:0 0 80px}
.studio+.cta{padding-top:0}
.cta-in{display:grid;grid-template-columns:813fr 347fr;max-width:calc(1160px + 2*var(--gutter))}
.cta-foto{min-height:391px;position:relative;overflow:hidden}
.cta-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cta-scuro{background:var(--nero);display:flex;align-items:center;justify-content:center;padding:30px 20px}
.cta-box{width:173px}
.cta-tit{font-size:19px;line-height:24px;font-weight:600;color:var(--chiaro);margin:0}
.cta-box .sec-azioni{margin-top:30px}
.cta-box .btn{min-width:153px}
@media (max-width:767px){.cta-in{grid-template-columns:1fr}.cta-foto{min-height:240px}.cta-box{width:auto;text-align:center}.cta-box .sec-azioni{justify-content:center}}

/* Servizi */
.servizi{padding:80px 0}
.servizi-testa{margin-bottom:40px}
.casa .servizi-intro{text-align:center}
.servizi-intro{color:var(--nero)}
.servizi-lista{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:30px}
.servizio{background:#fff;border:1px solid var(--linea);transition:box-shadow .3s,border-color .3s,transform .3s}
.servizio:hover{border-color:var(--nero);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.servizio summary{list-style:none;display:flex;align-items:center;gap:22px;padding:16px 18px 16px 24px;cursor:pointer;transition:background .25s,color .25s;-webkit-tap-highlight-color:transparent}
.servizio summary::-webkit-details-marker{display:none}
.servizio summary:hover{background:var(--grigio)}
.servizio summary:focus-visible{outline:2px solid var(--nero);outline-offset:-2px}
.servizio-num{flex:none;font-family:var(--f-tit);font-size:15px;font-weight:700;letter-spacing:1px;color:#9a9a9a;min-width:24px;transition:color .25s}
.servizio-tit{flex:1;font-size:25px;line-height:1.3;font-weight:600;color:#1f2124;text-align:left;transition:color .25s}
.servizio-vedi{flex:none;display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--nero);transition:color .25s}
.servizio-segno{width:44px;height:44px;border-radius:50%;position:relative;flex:none;background:var(--nero);transition:background .25s,transform .35s}
.servizio-segno::before,.servizio-segno::after{content:'';position:absolute;left:14px;right:14px;top:50%;height:2px;margin-top:-1px;background:#fff;transition:transform .35s,background .25s}
.servizio-segno::after{transform:rotate(90deg)}
.servizio summary:hover .servizio-segno{transform:scale(1.08)}
.servizio[open]{border-color:var(--nero)}
.servizio[open] summary{background:var(--nero)}
.servizio[open] .servizio-tit,.servizio[open] .servizio-vedi{color:#fff}
.servizio[open] .servizio-num{color:var(--chiaro)}
.servizio[open] .servizio-segno{background:#fff}
.servizio[open] .servizio-segno::before{background:var(--nero)}
.servizio[open] .servizio-segno::after{transform:rotate(0);background:var(--nero)}
.servizio-vedi-txt::before{content:'Dettagli'}
.servizio[open] .servizio-vedi-txt::before{content:'Chiudi'}
.servizio-corpo{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:26px 24px 26px 70px;align-items:center}
.servizio[open] .servizio-corpo{animation:servizio-apri .45s ease both}
@keyframes servizio-apri{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.servizio-corpo .testo{color:var(--nero)}
.servizio-foto{overflow:hidden}
.servizio-foto img{width:100%;aspect-ratio:550/291;object-fit:cover;transition:transform .8s ease}
.servizio:hover .servizio-foto img{transform:scale(1.04)}
@media (max-width:767px){.servizio summary{gap:12px;padding:14px 12px 14px 14px}.servizio-tit{font-size:18px}.servizio-vedi-txt{display:none}.servizio-segno{width:40px;height:40px}.servizio-segno::before,.servizio-segno::after{left:13px;right:13px}.servizio-corpo{grid-template-columns:1fr;gap:16px;padding:18px 14px 20px}}

/* Contatti */
.contatti{padding:80px 0}
.contatti-in{display:grid;grid-template-columns:534fr 646fr;min-height:750px}
.contatti-lista{list-style:none;margin:0;padding:60px 40px 60px 70px;background:var(--grigio);display:flex;flex-direction:column;justify-content:center;gap:46px}
.contatti-lista li{display:grid;grid-template-columns:50px 1fr;gap:46px;align-items:center}
.contatti-ico{color:var(--nero);display:grid;place-items:center}
.contatti-ico svg{width:auto;height:44px;max-width:50px}
.contatti-tit{display:block;font-size:19px;line-height:1;font-weight:600;color:var(--nero);margin-bottom:10px}
.contatti-dati a,.contatti-dati>span:last-child{color:var(--nero);text-decoration:none}
.contatti-dati a:hover{text-decoration:underline}
.contatti-foto{position:relative;display:flex;justify-content:flex-end;background:var(--nero)}
.contatti-sfondo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.contatti-scuro{position:relative;width:61%;background:var(--nero);color:var(--chiaro);padding:30px;display:flex;flex-direction:column;justify-content:center}
@media (max-width:900px){.contatti-in{grid-template-columns:1fr;min-height:0}.contatti-lista{padding:40px 24px}.contatti-foto{min-height:420px}}
@media (max-width:600px){.contatti-lista li{gap:20px;grid-template-columns:40px 1fr}.contatti-foto{display:block;min-height:0}.contatti-sfondo{position:relative;height:220px}.contatti-scuro{width:auto}}

/* News */
.news{padding:80px 0}
.news-tit{font-size:40px;line-height:1;font-weight:600;color:var(--titolo-art);text-align:center;margin-bottom:34px}
.news-intro{color:var(--testo-art);max-width:1120px;margin:0 auto 50px}
.news-griglia{display:grid;grid-template-columns:1fr 1fr;gap:15px 16px;max-width:1100px;margin:0 auto}
.news-voce{display:flex;gap:20px;align-items:flex-start;text-align:left;min-height:112px}
.news-foto{flex:0 0 163px;line-height:0}
.news-foto img{width:163px;height:86px;object-fit:cover}
.news-dx{flex-direction:row-reverse;text-align:right}
.news-voce-tit{font-size:21px;line-height:23px;font-weight:700;margin:0 0 4px}
.news-voce-tit a{color:#333;text-decoration:none}
.news-voce-tit a:hover{text-decoration:underline}
.news-data{font-size:14px;line-height:21.7px;color:#9c9c9c;margin:0}
.news-data time::first-letter,.news-data::first-letter{text-transform:uppercase}
.news-data::after{content:' /'}
.news-leggi{font-size:14px;line-height:21.7px;margin:0}
.news-leggi a{color:var(--viola);text-decoration:none}
.news-leggi a:hover{text-decoration:underline}
@media (max-width:860px){.news-griglia{grid-template-columns:1fr;gap:24px}.news-dx{flex-direction:row;text-align:left}}
@media (max-width:480px){.news-foto{flex-basis:110px}.news-foto img{width:110px;height:72px}.news-voce-tit{font-size:18px}}

/* Testo libero */
.testo-libero .tit{font-size:40px;font-weight:600;color:var(--titolo-art);margin-bottom:24px}
.testo-libero .testo h2{font-size:28px;font-weight:600;margin:1.4em 0 .5em}
.testo-libero .testo h3{font-size:21px;font-weight:600;margin:1.2em 0 .4em}
.cnt-lettura{max-width:calc(860px + 2*var(--gutter))}

/* FAQ */
.faq{padding:80px 0}
.faq .tit{font-size:40px;line-height:1.1;font-weight:600;color:var(--titolo-art);text-align:center;margin-bottom:30px}
.faq-intro{text-align:center;margin-bottom:24px}
.faq-lista{display:flex;flex-direction:column;gap:26px;padding:10px 0}
.faq-voce{background:#fff;border:1px solid var(--linea);transition:border-color .3s}
.faq-voce summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;cursor:pointer;font-size:19px;font-weight:600;color:var(--nero)}
.faq-voce summary::-webkit-details-marker{display:none}
.faq-voce summary .ico{transition:transform .3s;flex:none}
.faq-voce[open] summary .ico{transform:rotate(45deg)}
.faq-risposta{padding:0 22px 20px;color:var(--nero)}
.faq-d{font-size:19px;font-weight:600;margin:0;line-height:1.35}

/* Articolo */
.art-cnt{max-width:calc(1140px + 2*var(--gutter));padding-top:80px;padding-bottom:80px}
.briciole{display:flex;flex-wrap:wrap;gap:2px 8px;align-items:center;font-size:14px;color:#777;margin-bottom:22px}
.briciole a{color:#555;text-decoration:none}
.briciole a:hover{text-decoration:underline}
.art-tit{font-size:52.32px;line-height:1;font-weight:600;color:var(--titolo-art);margin:0 0 14px}
.art-meta{font-size:14px;color:#9c9c9c;margin:0 0 30px}
.art-contenuto{color:var(--testo-art)}
.art-contenuto h2{font-size:40px;line-height:48px;font-weight:500;color:var(--nero-2);margin:33px 0}
.art-contenuto h3{font-size:29.6px;line-height:1.2;font-weight:500;color:var(--nero-2);margin:30px 0}
.art-contenuto p{margin:16.8px 0}
.art-contenuto strong{font-weight:700}
.art-contenuto a{color:var(--nero)}
.art-contenuto .tabella-scroll{overflow-x:auto;margin:24px 0;-webkit-overflow-scrolling:touch}
.art-contenuto .tabella-scroll table{margin:0;min-width:640px}
.box-agg,.box-nota,.box-lista{position:relative;background:#fff;border:1px solid var(--linea);padding:18px 24px;margin:28px 0;color:var(--nero);--linea-x:#b9bcc0}
.box-agg{background:#fffdf3}
.box-agg::before,.box-nota::before,.box-lista::before,.box-agg::after,.box-nota::after,.box-lista::after{content:'';position:absolute;pointer-events:none;border:0 solid var(--linea-x)}
.box-agg::before,.box-nota::before,.box-lista::before{inset:-1px -11px;border-top-width:1px;border-bottom-width:1px}
.box-agg::after,.box-nota::after,.box-lista::after{inset:-11px -1px;border-left-width:1px;border-right-width:1px}
.art-contenuto .box-agg p,.art-contenuto .box-nota p,.art-contenuto .box-lista p{margin:8px 0;color:var(--nero)}
.art-contenuto .box-agg-tit,.art-contenuto .box-nota-tit,.art-contenuto .box-lista-tit{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px!important}
.box-lista ul,.box-lista ol{margin:6px 0 4px;padding-left:1.3em;color:var(--nero)}
.art-contenuto table{width:100%;border-collapse:collapse;background:#fff;font-size:15.5px;line-height:1.5;color:var(--nero);margin:24px 0}
.art-contenuto .tab-scorri table{margin:0;min-width:640px}
.art-contenuto th,.art-contenuto td{border:1px solid var(--linea);padding:12px 14px;text-align:left;vertical-align:top}
.art-contenuto thead th{background:var(--nero);color:#fff;font-weight:600;border-color:var(--nero)}
.art-contenuto tbody tr:nth-child(even){background:#fafaf7}
.art-contenuto thead mark.nuovo{background:#7a6a12;color:#fff}
.art-contenuto tbody th{background:var(--grigio);font-weight:600}
.agg-box{position:relative;background:#fff;border:1px solid var(--linea);padding:6px 24px;margin:26px 0;--linea-x:#b9bcc0;color:var(--nero)}
.agg-box::before,.agg-box::after{content:'';position:absolute;pointer-events:none;border:0 solid var(--linea-x)}
.agg-box::before{inset:-1px -11px;border-top-width:1px;border-bottom-width:1px}
.agg-box::after{inset:-11px -1px;border-left-width:1px;border-right-width:1px}
.agg-box h2,.agg-box h3{font-size:22px!important;line-height:1.3!important;margin:16px 0 8px!important;font-weight:600!important}
.in-breve{background:var(--grigio);padding:22px 26px;margin:0 0 30px;border-left:0}
.in-breve-tit{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--nero);margin:0 0 8px}
.in-breve .testo-ricco{font-size:17.5px;font-weight:500;color:#333}
.indice-box{background:#fff;border:1px solid var(--linea);padding:14px 20px;margin:0 0 20px}
.indice-box summary{list-style:none;display:flex;align-items:center;gap:8px;font-weight:600;cursor:pointer;min-height:44px}
.indice-box summary::-webkit-details-marker{display:none}
.indice-box ol{margin:8px 0 4px;padding-left:1.4em}
.indice-box li{margin:.3em 0}
.indice-box a{color:var(--nero);text-decoration:none}
.indice-box a:hover{text-decoration:underline}
.art-faq{margin-top:50px}
.art-faq h2{font-size:32px;font-weight:600;margin-bottom:18px}
.art-cta{background:var(--nero);color:var(--chiaro);padding:40px;margin-top:60px;text-align:center}
.art-cta-tit{font-size:24px;font-weight:600;color:#fff;margin:0 0 8px}
.art-cta .sec-azioni{justify-content:center;margin-top:26px}
.correlati{padding:70px 0}
.correlati-tit{font-size:32px;font-weight:600;text-align:center;margin-bottom:34px}
@media (max-width:767px){.art-cnt{padding-top:44px;padding-bottom:56px}.art-tit{font-size:32px;line-height:1.15}.art-contenuto h2{font-size:26px;line-height:1.25;margin:28px 0 14px}.art-contenuto h3{font-size:22px}.art-cta{padding:30px 18px}}

/* Pie' di pagina */
.ftr{background:var(--nero);color:var(--chiaro);margin-top:0}
.ftr-in{display:grid;grid-template-columns:267px 1fr 1fr;gap:60px;padding-top:70px;padding-bottom:60px;max-width:calc(1140px + 2*var(--gutter))}
.ftr-logo img{width:267px;height:auto}
.ftr-tit{font-size:19px;line-height:1;font-weight:600;color:var(--chiaro);margin:0 0 14px}
.ftr-col p{margin-bottom:20px}
.ftr-col p:not(.ftr-tit){line-height:1.55}
.ftr a{color:var(--chiaro);text-decoration:none}
.ftr a:hover{text-decoration:underline}
.ftr-fondo{border-top:1px solid rgba(255,255,255,.12);font-size:14px}
.ftr-fondo-in{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:18px;padding-bottom:18px;max-width:calc(1140px + 2*var(--gutter))}
.ftr-fondo p{margin:0}
.ftr-legale .sep{margin:0 8px;opacity:.5}
.ftr-firma a{text-decoration:underline}
@media (max-width:900px){.ftr-in{grid-template-columns:1fr 1fr;gap:36px}.ftr-logo{grid-column:1/-1}.ftr-logo img{width:200px}}
@media (max-width:560px){.ftr-in{grid-template-columns:1fr;padding-top:48px}.ftr-fondo-in{flex-direction:column}}
.sec+.ftr,main+.ftr{margin-top:0}

/* Pulsanti fissi */
.wa{position:fixed;right:15px;bottom:15px;z-index:70;width:50px;height:50px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.22);transition:transform .2s}
.wa:hover{transform:scale(1.06);color:#fff}
.su{position:fixed;right:20px;bottom:80px;z-index:65;width:42px;height:42px;background:var(--nero);color:#fff;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .3s}
.su.vista{opacity:.85;pointer-events:auto}
@media (max-width:600px){.su{display:none}}

/* Comparsa allo scorrimento */
.js .rivela{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--ritardo,0ms)}
.js .rivela.visto{opacity:1;transform:none}
.js .presenta-foto.rivela,.js .contatti-in.rivela .contatti-foto{transform:translateX(40px)}
.js .approccio-sx.rivela{transform:translateX(-40px)}
.js .rivela.visto .contatti-foto,.js .presenta-foto.rivela.visto,.js .approccio-sx.rivela.visto{transform:none}
.js .servizio.rivela{transition:opacity .7s ease,transform .7s ease,box-shadow .3s,border-color .3s;transition-delay:var(--ritardo,0ms),var(--ritardo,0ms),0s,0s}
.contatti-foto{transition:transform .9s ease .15s}
.js .tit-grande.rivela,.js .rivela .tit-grande{letter-spacing:16px;transition:letter-spacing 1.3s cubic-bezier(.2,.7,.2,1),opacity .8s,transform .8s}
.js .tit-grande.rivela.visto,.js .rivela.visto .tit-grande{letter-spacing:4.9px}

/* Effetti */
.testata-foto img.attiva{animation:avvicina 9s ease-out both}
@keyframes avvicina{from{transform:scale(1.09)}to{transform:scale(1)}}
.testata-in>*{animation:entra 1s cubic-bezier(.2,.7,.2,1) both}
.testata-in>*:nth-child(2){animation-delay:.18s}
@keyframes entra{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.testata-slider .testata-tit{animation-delay:.25s}
.presenta-foto,.cta-foto,.approccio-foto,.news-foto{overflow:hidden}
.presenta-foto img,.cta-foto img,.approccio-foto img,.news-foto img{transition:transform 1s ease}
.presenta-foto:hover img,.cta-in:hover .cta-foto img,.approccio-sx:hover .approccio-foto img,.news-voce:hover .news-foto img{transform:scale(1.05)}
.punto-ico{transition:transform .4s ease}
.punto:hover .punto-ico{transform:translateY(-8px)}
.approccio-ico img{transition:transform .5s ease,opacity .3s}
.approccio-voce:hover .approccio-ico img{transform:rotate(-8deg) scale(1.1);opacity:1}
.btn::before{transition:inset .3s ease}
.btn:hover::before{inset:-14px}
/* Linee a crocino sui riquadri (come la cornice dei pulsanti) */
.servizio,.faq-voce,.in-breve,.indice-box,.art-cta{position:relative;--linea-x:#b9bcc0}
.servizio::before,.faq-voce::before,.in-breve::before,.indice-box::before,.art-cta::before,
.servizio::after,.faq-voce::after,.in-breve::after,.indice-box::after,.art-cta::after{content:'';position:absolute;pointer-events:none;border:0 solid var(--linea-x);transition:inset .35s ease,border-color .3s}
.servizio::before,.faq-voce::before,.in-breve::before,.indice-box::before,.art-cta::before{inset:-1px -11px;border-top-width:1px;border-bottom-width:1px}
.servizio::after,.faq-voce::after,.in-breve::after,.indice-box::after,.art-cta::after{inset:-11px -1px;border-left-width:1px;border-right-width:1px}
.servizio:hover::before,.faq-voce:hover::before,.indice-box:hover::before{inset:-1px -17px}
.servizio:hover::after,.faq-voce:hover::after,.indice-box:hover::after{inset:-17px -1px}
.servizio:hover,.servizio[open],.faq-voce:hover,.faq-voce[open]{--linea-x:var(--nero)}
.art-cta{--linea-x:#8a8a8a}
.contatti-lista li{transition:transform .3s}
.contatti-lista li:hover{transform:translateX(6px)}

/* 404 */
.sec-404{padding:200px 0 100px;text-align:center}
.n404{font-size:120px;font-weight:900;line-height:1;margin:0 0 10px;color:var(--nero)}
.sec-404 .sec-azioni{justify-content:center}
.risultati{padding-left:1.2em}

@media print{.hdr,.wa,.su,.ftr,.sl-f{display:none}.testata{height:auto;background:none;color:#000}.testata-foto{display:none}.testata-tit{color:#000;text-shadow:none}}
