/* Tecnoimpianti: riproduzione dell'originale (Helix Ultimate + SP Page Builder) con le misure rilevate a 1440, 1024, 768 e 390 px.
   Contenitore come Bootstrap (540/720/960/1140/1320 con 15 px di margine), sezioni con gli sfondi originali sovrapposti. */
@font-face { font-family: "catamaran"; font-weight: 100 900; font-display: swap; src: url("/assets/fonts/catamaran-variable.ttf") format("truetype"); }
:root { --colore-1:#4186d3; --testo:#252525; --font:system-ui; --titolo:#363636 }
body { font-size:16px; line-height:24px; color:var(--testo) }
.s p { font-size:18px; line-height:27px }
.logo { font-size:24px; line-height:24px; color:#0345bf }
.contenitore { width:100%; max-width:var(--cont, 100%); padding-inline:15px; margin-inline:auto }
@media (min-width:576px) { :root { --cont:540px } } @media (min-width:768px) { :root { --cont:720px } } @media (min-width:992px) { :root { --cont:960px } }
@media (min-width:1200px) { :root { --cont:1140px } } @media (min-width:1400px) { :root { --cont:1320px } }

/* testata */
.testata { position:relative; box-shadow:none } .testata__in { min-height:114px }
.logo img { width:200px; height:60px } .menu ul { gap:0; margin-right:-40px } .menu a { font:700 16px/80px catamaran,sans-serif; padding:0 20px; color:#252525; text-transform:uppercase }
@media (width >= 992px) { .menu a { position:relative; top:1px } } .menu li:last-child a { margin:0 5px 0 -5px } .menu a[aria-current] { color:#0345bf; font-weight:500 } .menu a:hover { color:#0345bf }
@media (width < 992px) { .logo img { width:133px; height:40px } }
@media (width < 576px) { .logo img { width:120px; height:36px } }

/* sezioni */
.s { position:relative; background:var(--img) center top / 100% 100% no-repeat; text-align:left }
.s h2 { font:800 52px/62.4px var(--font); color:var(--titolo); text-transform:none; margin:0 }
.s p + p { margin:0 }
.s-hero { height:736px; padding-top:300px; text-align:center; color:#fff; background-size:cover }
.s-hero h1 { font:800 60px/80px var(--font); text-transform:uppercase } .s-hero p { font:400 36px/26px var(--font); margin-top:10px }
.s-aree { height:856px; margin-top:-130px; padding-top:220px }
.s-aree h2 { text-transform:uppercase } .s-aree__testo { margin-top:9px; max-width:615px }
.icone > div { text-align:center } .icone p { margin:0 }
.icone--aree { display:grid; grid-template-columns:repeat(3, 257px); margin:29px 0 0 -16px }
.icone--aree img { width:180px; height:180px; margin-inline:auto } .s .icone--aree p { font:800 16px/22px var(--font); color:#4a4a4a }
.s-mission { height:667px; margin-top:-70px; padding-top:100px }
.s-mission { background-size:cover; background-position:50% 100% } .s-mission::before { content:""; position:absolute; inset:0 0 0 51%; background:#fff } @media (992px <= width < 1200px) { .s-mission::before { left:calc(50% - 465px); right:auto; width:449px } } .s-mission > .contenitore { position:relative } .s-privacy { background-size:auto; background-position:100% 0 } .s-aree { z-index:2 } .s-hero { background-size:cover; background-position:50% 50% } .s-aree { background-size:cover; background-position:0 0 } .s-sicurezza, .s-perche { background-size:auto; background-position:50% 0 } .s-contatti { background-size:cover; background-position:50% 0 }
.s-mission__col { margin-left:760px; width:480px } .s-mission__col img { margin-top:21px } .s-mission__col p { margin-top:30px }
.s-sicurezza { height:794px; margin-top:-119px; padding-top:150px; text-align:center }
.s-sicurezza h2, .s-perche h2 { color:#343434 } .s .s-sicurezza__testo { font-size:20px; line-height:30px; margin-top:30px } .giostra__voce[data-pos=via], .giostra__voce:nth-child(4):not([data-pos]) { display:none }
.giostra { position:relative; height:378px; margin-top:30px }
.giostra { --cap:30px } .giostra__voce figcaption { font-size:var(--cap) !important; line-height:1.2 !important } .giostra__voce[data-pos=sx] figcaption, .giostra__voce[data-pos=dx] figcaption, .giostra__voce:nth-child(1):not([data-pos]) figcaption, .giostra__voce:nth-child(3):not([data-pos]) figcaption { transform:scale(.8); transform-origin:top center }
.giostra__voce { position:absolute; margin:0; transition:all .4s; left:409px; top:0; width:473px; opacity:0 }
.giostra__voce:nth-child(1):not([data-pos]) { left:-27px; top:35px; width:379px; opacity:1 } .giostra__voce:nth-child(2):not([data-pos]) { opacity:1 } .giostra__voce:nth-child(3):not([data-pos]) { left:940px; top:35px; width:379px; opacity:1 }
.giostra__voce[data-pos=sx], .giostra__voce[data-pos=centro], .giostra__voce[data-pos=dx] { opacity:1 }
.giostra__voce:nth-child(1):not([data-pos]) img { height:246px } .giostra__voce:nth-child(2):not([data-pos]) img { height:338px } .giostra__voce:nth-child(3):not([data-pos]) img { height:248px } .giostra__voce figcaption { font:600 30px/36px var(--font); color:#333; text-align:center }
.giostra__voce img { width:100%; object-fit:cover }
.giostra__voce[data-pos=sx] { left:-27px; top:35px; width:379px } .giostra__voce[data-pos=sx] img { height:246px }
.giostra__voce[data-pos=centro] { left:409px; top:0; width:473px } .giostra__voce[data-pos=centro] img { height:338px }
.giostra__voce[data-pos=dx] { left:940px; top:35px; width:379px } .giostra__voce[data-pos=dx] img { height:248px }
.giostra__voce[data-pos=via] { opacity:0; pointer-events:none; left:409px; top:0; width:473px }
.giostra button { position:absolute; top:130px; width:44px; height:44px; border-radius:50%; border:0; background:#fff; font-size:34px; line-height:40px; cursor:pointer; color:#222 }
.giostra__prec { left:338px } .giostra__succ { left:930px }
.s-privacy { height:874px; padding-top:210px }
.s-privacy__col { margin-left:664px; width:639px; padding-inline:31px } .s-privacy h3 { font:800 30px/36px var(--font); color:var(--titolo); text-transform:none; margin-top:21px }
.s-privacy__col > p { margin-top:20px; max-width:545px } .icone--ditec { display:grid; grid-template-columns:213px 197px 243px; margin:30px 0 0 -32px }
.icone--ditec img { width:140px; height:125px; margin-inline:auto } .s .icone--ditec p { font:500 16px/22px var(--font); color:#4a4a4a }
.s-perche { height:632px; margin-top:-119px; padding-top:150px; text-align:center } @media (min-width:1400px) { .s-perche > .contenitore { padding-left:30px; padding-right:0 } }
.s-perche__testo { margin-top:30px } .icone--perche { display:grid; grid-template-columns:410px 440px 440px; margin:30px 0 0 0 }
.icone--perche img { width:130px; height:130px; margin-inline:auto } .icone--perche h3 { font:500 24px/22px var(--font); color:#333; text-transform:none; margin:0; padding-top:0; height:30px } .icone--perche > :nth-child(3) h3 { line-height:28.8px; height:37px }
.s .icone--perche p { font-size:16px; line-height:16px; max-width:396px; margin-inline:auto }
.s-contatti { height:767px; padding-top:199px; text-align:center; color:#fff }
.s.s-contatti h2 { font:500 20px/24px var(--font); color:#fff } .s.s-contatti > .contenitore > p { margin-top:18px; font-size:18px; line-height:27px }
.modulo--compatto { max-width:700px; margin:48px auto 0; gap:20px } .modulo--compatto input, .modulo--compatto textarea { height:38px; border:0; border-radius:3px; padding:9px; background:rgb(255 255 255 / .44); color:#fff; font:16px/20px var(--font) }
.modulo--compatto textarea { height:118px; resize:vertical } .modulo--compatto ::placeholder { color:#fff; opacity:1 }
.modulo--compatto .bottone { justify-self:start; margin-top:14px; height:44px; padding:0 50px; border-radius:22px; background:#464646; font:400 16px/20px var(--font); text-transform:none }

/* piè di pagina */
.pie { background:#2f323b; padding:0; text-align:left; font-size:14px; line-height:22.4px } .pie p { line-height:18px }
.pie__in { display:flex; justify-content:space-between; padding-block:0 46px } .pie__sx { width:517px } .pie__sx p { margin-top:15px } .pie__sx hr { border:0; border-top:1px solid #4b4e57; margin:15px 0 0 }
.pie__sx a { color:#4186d3; line-height:22.4px; display:inline-block; margin-top:3px } .pie__logo { width:248px; height:77px; max-height:none }
.pie__dx { width:409px; display:grid; gap:36px; padding-top:31px; align-content:start } .pie__dx li { display:flex; align-items:center; gap:14px; font:600 16px/25.6px var(--font) }
.pie__dx svg { width:36px; height:36px; color:#fff } .pie__dx a { color:#fff; text-decoration:none } .pie__dx .pie__mail { color:#a2a2a2 }
.pie__fondo { height:62px; background:#464646; border-top:1px solid #5a5a5a }

/* tablet e mobile: valori rilevati sull'originale */
@media (1200px <= width < 1400px) { .s-mission__col { margin-left:calc(var(--cont) * 7/12 - 15px) } .s-privacy__col { margin-left:calc(var(--cont) / 2 - 15px); width:calc(var(--cont) / 2) } .giostra { transform:scale(.86); transform-origin:top left } }
/* 992–1199 (misure a 1024) */
@media (width < 1200px) {
  .s p, .s-aree__testo { font-size:16px; line-height:24px } .s h2 { font-size:46px; line-height:55.2px }
  .s-hero { height:374px; padding-top:119px } .s-hero h1 { font-size:50px; line-height:70px } .s-hero p { font-size:26px; line-height:24px; margin-top:21px }
  .s-aree { height:800px; margin-top:-145px; padding-top:220px } .s-aree__testo { margin-top:9px }
  .icone--aree { grid-template-columns:repeat(3, 187px); margin:22px 0 0 -15px } .icone--aree img { width:157px; height:157px }
  .s-mission { height:601px; padding-top:98px } .s-mission__col { margin-left:15px; width:420px } .s-mission__col img { width:420px; height:214px } .s-mission__col p { margin-top:22px }
  .s-sicurezza { height:673px; margin-top:-120px; padding-top:148px } .s .s-sicurezza__testo { margin-top:21px; font-size:16px; line-height:24px } 
  .giostra { height:270px; margin-top:32px } .giostra { --cap:24px }
  .giostra__voce, .giostra__voce[data-pos=centro], .giostra__voce[data-pos=via], .giostra__voce:nth-child(2):not([data-pos]) { left:298px; top:0; width:335px }
  .giostra__voce img, .giostra__voce[data-pos] img, .giostra__voce:nth-child(n):not([data-pos]) img { height:239px }
  .giostra__voce[data-pos=sx], .giostra__voce:nth-child(1):not([data-pos]) { left:-13px; top:24px; width:268px } .giostra__voce[data-pos=dx], .giostra__voce:nth-child(3):not([data-pos]) { left:676px; top:25px; width:268px }
  .giostra__voce[data-pos=sx] img, .giostra__voce[data-pos=dx] img, .giostra__voce:nth-child(1):not([data-pos]) img, .giostra__voce:nth-child(3):not([data-pos]) img { height:175px }
  .giostra button { top:100px } .giostra__prec { left:255px } .giostra__succ { left:640px }
  .s-privacy { height:851px; padding-top:150px } .s-privacy__col { margin-left:480px; width:435px; padding:0 } .s-privacy h3 { margin-top:18px } .s-privacy__col > p { margin-top:21px; max-width:440px }
  .icone--ditec, .icone--perche { grid-template-columns:290px 320px 320px; margin-left:-465px } .icone--ditec { margin-top:22px }
  .s-perche { height:562px; margin-top:-120px; padding-top:148px } .s-perche > .contenitore { padding-left:15px } .s-perche__testo { margin-top:32px; max-width:900px; margin-inline:auto } .s-perche__testo br { display:none }
  .s .icone--perche { margin:22px 0 0 15px } .s .icone--perche p { font-size:14px; line-height:16px } .s .icone--perche > :nth-child(1) p { max-width:210px } .s .icone--perche > :nth-child(2) p { max-width:240px } .s .icone--perche > :nth-child(3) p { max-width:275px }
  .s-contatti { height:717px; padding-top:159px } .modulo--compatto { margin-top:48px }
  .pie__sx { width:372px } .pie__dx { width:289px } }
/* 768–991 (misure a 768) */
@media (width < 992px) {
  .s-hero { height:444px; padding-top:119px } .s-aree { height:824px }
  .icone--aree { grid-template-columns:repeat(3, 240px); margin-top:19px } .icone--aree img { width:180px; height:180px }
  .s-mission { background:none; height:auto; margin-top:0; padding:30px 0 0 } .s-mission__col { margin:0 15px; width:auto } .s-mission__col img { width:100%; height:auto; aspect-ratio:660/336; margin-top:20px } .s-mission__col p { margin-top:20px }
  .s-sicurezza { height:856px; margin-top:0; padding-top:150px } .s .s-sicurezza__testo { margin-top:20px } .giostra { height:440px; margin-top:30px }
  .giostra { --cap:18px }
  .giostra__voce, .giostra__voce[data-pos=centro], .giostra__voce[data-pos=via], .giostra__voce:nth-child(2):not([data-pos]) { left:61px; width:568px } .giostra__voce img, .giostra__voce[data-pos] img, .giostra__voce:nth-child(n):not([data-pos]) img { height:406px }
  .giostra__voce[data-pos=sx], .giostra__voce:nth-child(1):not([data-pos]) { left:-489px; top:20px; width:511px } .giostra__voce[data-pos=dx], .giostra__voce:nth-child(3):not([data-pos]) { left:668px; top:20px; width:511px }
  .giostra__voce[data-pos=sx] img, .giostra__voce[data-pos=dx] img, .giostra__voce:nth-child(1):not([data-pos]) img, .giostra__voce:nth-child(3):not([data-pos]) img { height:332px }
  .giostra button { top:180px } .giostra__prec { left:40px } .giostra__succ { left:610px } .s-sicurezza { overflow:hidden }
  .s-privacy { height:689px; padding-top:151px } .s-privacy h3 { margin-top:21px } .s-privacy__col > p { margin-top:20px } .icone--ditec { margin-top:20px } .s-privacy__col { margin:0 15px; width:auto } .s-privacy__col > p { max-width:none }
  .icone--ditec, .s .icone--perche { grid-template-columns:225px 225px 255px; margin-left:-7.5px } .s .icone--perche { margin:32px 0 0 7.5px }
  .s .icone--perche > :nth-child(1) p, .s .icone--perche > :nth-child(2) p { max-width:182px } .s .icone--perche > :nth-child(3) p { max-width:210px }
  .s-perche { height:602px; margin-top:-119px; padding-top:149px } .s-contatti { padding-top:160px } .s.s-contatti > .contenitore > p { margin-top:15px } .s-perche__testo { max-width:634px } .s .icone--perche { margin-top:19px } .pie__sx { width:265px } .pie__dx { width:209px } }
@media (width < 768px) {
  .s p, .s-aree__testo { font-size:16px; line-height:22px } .s h2 { font-size:30px; line-height:36px }
  .s-hero { height:217px; padding-top:60px } .s-hero h1 { font-size:30px; line-height:32px } .s-hero p { font-size:18px; line-height:22px; margin-top:1px }
  .s-aree { height:415px; margin-top:-90px; padding-top:90px } .s-aree__testo br { display:none } .s-aree__testo { max-width:322px }
  .icone--aree { grid-template-columns:repeat(3, 130px); margin:9px 0 0 -15px } .icone--aree img { width:100px; height:100px }
  .s-mission { padding:30px 0 0 } .s-mission__col img { width:330px; height:168px; margin-top:10px } .s-mission__col p { margin-top:10px }
  .s-sicurezza { height:586px; margin-top:-9px; padding-top:109px } .s .s-sicurezza__testo { margin-top:20px; font-size:16px; line-height:22px }
  .giostra { --k:1; height:230px; margin:20px 0 0; --cap:18px }
  .giostra__voce, .giostra__voce[data-pos=centro], .giostra__voce[data-pos=via], .giostra__voce:nth-child(2):not([data-pos]) { left:45px; top:0; width:270px } .giostra__voce img, .giostra__voce[data-pos] img, .giostra__voce:nth-child(n):not([data-pos]) img { height:193px }
  .giostra__voce[data-pos=sx], .giostra__voce:nth-child(1):not([data-pos]) { left:-221px; top:10px; width:243px } .giostra__voce[data-pos=dx], .giostra__voce:nth-child(3):not([data-pos]) { left:338px; top:10px; width:243px }
  .giostra__voce[data-pos=sx] img, .giostra__voce[data-pos=dx] img, .giostra__voce:nth-child(1):not([data-pos]) img, .giostra__voce:nth-child(3):not([data-pos]) img { height:158px }
  .giostra button { top:70px } .giostra__prec { left:20px } .giostra__succ { left:300px } .s-sicurezza { overflow:hidden }
  .s-privacy { height:602px; padding-top:140px } .s-privacy__col { margin:0; padding-inline:15px } .s-privacy h3 { font-size:20px; line-height:24px; margin-top:10px } .s-privacy__col > p { margin-top:11px }
  .icone--ditec { grid-template-columns:repeat(3, 115px); margin:10px 0 0 -7.5px } .icone--ditec img { width:70px; height:62px } .s .icone--ditec p { font-size:14px; line-height:16px; max-width:70px; margin-inline:auto }
  .s-perche { height:963px; margin-top:-39px; padding-top:99px } .s-perche > .contenitore { padding-left:15px } .s-perche__testo { margin-top:20px } .s-perche__testo br { display:none } .s-perche__testo { max-width:325px; margin-inline:auto }
  .s .icone--perche { grid-template-columns:1fr; margin:20px 0 0; row-gap:10px } .s .icone--perche > :nth-child(1) { position:relative; left:15px } .s .icone--perche > :nth-child(n) p { font-size:14px; line-height:16px; max-width:345px }
  .s-contatti { height:707px; padding-top:159px } .s.s-contatti > .contenitore > p { margin-top:16px } .modulo--compatto { margin-top:48px } .modulo--compatto { margin-top:53px }
  .pie__in { flex-direction:column } .pie__sx, .pie__dx { width:auto } .pie__dx { padding-top:38px } .pie__dx li { margin-left:1px } }

/* --- Azienda (misure a 1440, 1024, 768) --- */
.a-testata { height:494px; padding-top:100px; text-align:center; color:#fff; background-size:cover }
.a-testata h1 { font:500 52px/62.4px var(--font); text-transform:none } .s.a-testata p { font:italic 400 24px/36px var(--font); margin-top:32px; max-width:1270px; margin-inline:auto }
.a-storia { height:856px; margin-top:-120px; padding-top:200px; background-size:cover; background-position:0 0 }
.a-storia__col { margin-left:660px; width:630px } .a-storia h2 { color:#252525 } .a-storia__col > h2 + p { margin-top:42px }
.a-cosa { height:668px; margin-top:-119px; padding-top:148px; color:#fff; background-size:cover }
.a-cosa__col { margin-left:0; width:580px; text-align:right } .a-cosa h2 { color:#fff } .a-cosa__col > h2 + p { margin-top:61px }
.a-assistenza { padding:51px 0 63px; text-align:center; background:#efefef }
.s .a-assistenza__intro { font-size:18px; line-height:24px } .a-assistenza h2 { margin-top:29px; text-transform:uppercase; color:#252525 }
.icone--assistenza { display:grid; grid-template-columns:repeat(4, 330px); margin:60px 0 0 -15px } .icone--assistenza img { width:180px; height:180px; margin-inline:auto }
.s .icone--assistenza p { font:700 20px/22px var(--font); color:#4a4a4a; margin-top:16px } .s .a-assistenza__myhome { margin:31px auto 0; max-width:1240px }
.a-anche { height:632px; padding-top:178px; text-align:center; color:#fff; background-size:cover; background-color:#eeeeec } .a-anche h2 { color:#fff }
.a-anche__lista { display:grid; grid-template-columns:repeat(4, 330px); margin:66px 0 0 11px } .a-anche__lista li { display:grid; gap:35px; align-content:start; justify-items:center }
.a-anche__lista span { display:block; font:300 16px/40px var(--font); text-align:center } @media (min-width:1200px) { .a-anche__lista span { max-width:240px } }
@media (width < 1200px) {
  .a-testata { height:269px; padding-top:50px } .a-testata h1 { font-size:46px; line-height:55.2px } .s.a-testata p { font:italic 400 18px/22px var(--font); margin-top:22px; max-width:920px }
  .a-storia { height:681px; padding-top:140px } .a-storia__col { margin-left:480px; width:450px } .a-storia__col > h2 + p { margin-top:31px }
  .a-cosa { height:435px; margin-top:-30px; padding-top:50px } .a-cosa__col { width:400px } .a-cosa__col > h2 + p { margin-top:22px }
  .a-assistenza { padding:52px 0 52px } .s .a-assistenza__intro { font-size:18px; line-height:22px } .a-assistenza h2 { margin-top:19px }
  .icone--assistenza { grid-template-columns:repeat(2, 480px); row-gap:23px; margin:49px 0 0 -15px } .s .a-assistenza__myhome { margin-top:21px; max-width:910px }
  .a-anche { height:645px } .a-anche__lista { grid-template-columns:repeat(2, 480px); row-gap:25px; margin:49px 0 0 11px } .a-anche__lista li { gap:25px } }
@media (width < 992px) {
  .a-storia { height:586px; padding-top:139px } .a-storia__col { margin-left:0; width:auto }
  .a-cosa { height:340px } .s .a-assistenza__intro { line-height:24px } .a-cosa__col { width:640px }
  .icone--assistenza { grid-template-columns:repeat(2, 360px) } .s .a-assistenza__myhome { max-width:690px }
  .a-anche { height:685px } .a-anche__lista { grid-template-columns:repeat(2, 360px); margin-left:11px } }
/* --- Contatti --- */
.c-mappa { height:680px; background:linear-gradient(45deg,#00c6fb 0%,#005bea 100%) } .c-mappa iframe { display:block; width:100%; height:600px; border:0 }
.c-dati { padding:40px 0 31px } .c-dati__in { display:flex; justify-content:space-between; align-items:start }
.c-dati img { width:380px; height:114px } .c-dati p { font-size:14px; line-height:18px; color:#343434; margin-top:10px }
.c-dati__dx { width:400px; display:grid; gap:15px; padding-top:20px } .c-dati__dx li { display:grid; grid-template-columns:32px 1fr; align-items:center; text-align:center; font:500 16px/34px var(--font) }
.c-dati__dx svg { width:32px; height:32px; color:#343434 } .c-dati__dx a { color:#343434; text-decoration:none }
.c-dati + .s-contatti { margin-top:0 }

/* --- Realizzazioni --- */
.album { display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; margin-bottom:11px } .album__col { display:grid; gap:20px; align-content:start }
.album__voce { position:relative; display:block; aspect-ratio:1; overflow:hidden } .album__voce--v { aspect-ratio:467/700 }
.album__voce a { display:block; height:100% } .album__voce img { width:100%; height:100%; object-fit:cover }
.album__voce::after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 55%, rgb(0 0 0 / .55)); pointer-events:none; opacity:0; transition:opacity .3s }
.album__voce span { opacity:0; transition:opacity .3s; position:absolute; z-index:1; left:10px; bottom:10px; font:700 13px/15.6px var(--font); letter-spacing:1px; color:#fff }
.album__voce:hover::after, .album__voce:hover span, .album__voce:focus-within::after, .album__voce:focus-within span { opacity:1 }

@media (width < 1200px) { .c-mappa { height:670px } .c-dati { padding:40px 0 20px } .c-dati p { margin-top:20px } .c-dati img { width:370px; height:111px } .c-dati__dx { width:272px; gap:25px } }
@media (width < 992px) { .c-dati { padding:40px 0 24px } .c-dati p { margin-top:20px } .c-dati img { width:380px; height:114px } .c-dati__in { flex-direction:column; gap:0 } .c-dati__dx { width:100%; padding:41px 0 0 18px } }
@media (width < 576px) { .c-dati { padding:30px 0 14px } .c-dati img { width:360px; height:108px } .c-dati p { margin-top:10px } .c-dati__dx { padding-top:32px; gap:15px } }
@media (width < 768px) {
  .a-testata { height:272px; padding-top:47px } .a-testata h1 { font-size:30px; line-height:36px } .s.a-testata p { font:italic 400 14px/22px var(--font); margin-top:11px }
  .a-storia { height:633px; padding-top:130px } .a-storia h2 { line-height:36px } .s .a-storia__col p { font-size:14px; line-height:21px } .a-storia__col > h2 + p { margin-top:21px }
  .a-cosa { height:auto; padding:19px 0 49px } .a-cosa__col { width:310px } .a-cosa h2 { line-height:36px } .s .a-cosa__col p { font-size:14px; line-height:22px } .a-cosa__col > h2 + p { margin-top:21px }
  .s .a-assistenza__intro { font-size:14px; line-height:22px; max-width:345px; margin-inline:auto } .s .a-assistenza__intro { line-height:22px } .s.a-assistenza h2 { font-size:26px; line-height:31.2px; margin-top:32px }
  .icone--assistenza { grid-template-columns:repeat(2, 195px); row-gap:8px; margin:39px 0 0 -15px } .icone--assistenza img { width:165px; height:165px } .s .icone--assistenza p { font-size:16px; line-height:22px; max-width:150px; margin-inline:auto }
  .s .a-assistenza__myhome { font-size:14px; line-height:22px; margin-top:7px }
  .a-anche { height:796px; padding-top:179px } .a-anche h2 { line-height:36px } .a-anche__lista { grid-template-columns:1fr; row-gap:15px; margin:49px 0 0 52px } .a-anche__lista li { gap:15px }
  .album { grid-template-columns:1fr } }

/* menu a scomparsa sotto i 992 px, come Helix */
@media (width < 992px) { .menu-toggle { display:block } .menu { display:none; position:absolute; inset-inline:0; top:100%; background:var(--sfondo); padding:var(--spazio); box-shadow:0 8px 12px rgb(0 0 0/.1); z-index:30 } .menu.aperto { display:block } .menu ul { flex-direction:column; margin-right:0 } .menu a { line-height:40px } }
@media (width < 992px) { .album, .album__col { gap:10px } }
@media (width < 992px) { .album { margin-bottom:5px } }
@media (width < 768px) { .album { margin-bottom:0 } .album__voce--v { aspect-ratio:2/3 } }
.a-testata { z-index:1 }
@media (width < 992px) { .a-cosa { background:#4895ef } }

/* icona «spunta» davanti a ogni voce (FontAwesome check-circle-o dell'originale) */
.a-anche__lista span { position:relative; justify-self:stretch; padding-inline:45px } @media (min-width:1200px) { .a-anche__lista span { max-width:none } }
.a-anche__lista span::before { content:""; position:absolute; left:-11px; top:2px; width:36px; height:36px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='15' fill='none' stroke='%23fff' stroke-width='2.6'/%3E%3Cpath d='M10.5 18.5l5.5 5.5 10-11' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 36px no-repeat }
@media (width < 768px) { .a-anche__lista span { padding-inline:0 } .a-anche__lista span::before { left:-52px } }
@media (768px <= width < 992px) { .a-assistenza { padding-bottom:47px } }
@media (width < 768px) { .a-assistenza { padding-bottom:40px } .a-anche__lista { margin-top:40px } }
@media (width < 576px) { .c-dati + .s-contatti { padding-top:160px } .c-dati + .s-contatti > .contenitore > p { margin-top:15px } .c-dati + .s-contatti .modulo--compatto { margin-top:50px } .c-dati + .s-contatti .modulo--compatto .bottone { margin-top:15px } }
@media (width < 576px) { .pie__fondo { height:56px } }
@media (992px <= width < 1200px) { .s .a-assistenza__myhome { margin-top:20px } .a-assistenza { padding-bottom:50px } .a-anche { padding-top:180px } .a-anche__lista { margin-top:50px } .pie__in { padding-bottom:44px } }
@media (992px <= width < 1200px) { .s-aree__testo { margin-top:8px } .icone--aree { margin-top:20px } .s-mission { padding-top:100px } .s-mission__col img { position:relative; top:-1px } .s-mission__col p { margin-top:20px } }

/* Banner cookie (PCRT Cookie Consent), riquadri dei contenuti bloccati, consenso nel modulo e pagine delle policy */
html:root { --pcc-accent:#0345bf; --pcc-font:var(--font) }   /* html:root batte il :root di consenso.css, caricato dopo */
iframe[hidden] { display:none }
.c-mappa .pcc-ph { height:100%; min-height:0; margin:0; border:0; border-radius:0 }
.modulo--compatto .modulo__privacy { color:#fff; font:400 14px/18px var(--font); margin-top:-6px } .modulo--compatto .modulo__privacy a { color:#fff; text-decoration:underline }
.pie__fondo p { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:0 6px; height:100%; margin:0; padding-inline:15px; text-align:center; font-size:14px; line-height:20px; color:#a2a2a2 } .pie__fondo a { color:#fff; text-decoration:underline }
.pg-testo { padding:70px 0 60px; font:400 16px/26px var(--font); color:var(--testo) }
.pg-testo h1 { font:700 40px/48px var(--font); color:var(--titolo); margin-bottom:8px }
.pg-testo h2 { font:700 26px/34px var(--font); color:var(--colore-1); margin:36px 0 10px }
.pg-testo h3 { font:700 19px/26px var(--font); margin:24px 0 8px }
.pg-testo p, .pg-testo ul, .pg-testo table { margin-bottom:14px }
.pg-testo ul { list-style:disc; padding-left:24px }
.pg-testo a { color:#0345bf; text-decoration:underline }
.pg-agg { color:#555; font-size:14px }
.pg-testo table { border-collapse:collapse; width:100%; font-size:14px; line-height:20px }
.pg-testo th, .pg-testo td { border:1px solid #d6dae0; padding:6px 10px; text-align:left; vertical-align:top }
.pg-testo thead th { background:#f2f4f7 }
@media (width < 768px) { .pg-testo { padding:40px 0 40px } .pg-testo h1 { font-size:32px; line-height:40px } .pg-testo h2 { font-size:22px; line-height:30px } .pg-testo table { display:block; overflow-x:auto } }

/* testata fissa (Helix: .header-sticky) */
.testata { background:#fff; z-index:99 } .testata--fissa { position:fixed; top:0; left:0; width:100%; z-index:9999; box-shadow:0 0 4px 0 rgb(0 0 0 / .1); animation:testataGiu .5s }
@keyframes testataGiu { from { opacity:0; transform:translateY(-20px) } to { opacity:1; transform:none } }
