@charset "utf-8";
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url(/caratteri/barlow-400.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500;font-display:swap;src:url(/caratteri/barlow-500.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url(/caratteri/barlow-600.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Barlow Semi Condensed";font-style:normal;font-weight:500;font-display:swap;src:url(/caratteri/barlow-semi-condensed-500.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Barlow Semi Condensed";font-style:normal;font-weight:600;font-display:swap;src:url(/caratteri/barlow-semi-condensed-600.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Barlow Semi Condensed";font-style:normal;font-weight:700;font-display:swap;src:url(/caratteri/barlow-semi-condensed-700.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{
  --blu:#005393; --blu-medio:#4d7eae; --grigio:#ebebeb; --ink:#10212f; --ink-2:#3d4b58;
  --acqua:#22696a; --riga:#e2e5e8;
  --m:40px; --cols:12; --testata:72px;
  --cond:"Barlow Semi Condensed","Barlow",system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0}
body{font-family:"Barlow",system-ui,sans-serif;font-size:17px;line-height:1.5;color:var(--ink);background:#fff;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}
h1,h2,h3,p,ul,ol,figure{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
a:focus-visible,button:focus-visible{outline:2px solid var(--blu);outline-offset:3px}
.sottolineato{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.sottolineato:hover{color:var(--blu)}
.pagina{position:relative}
.reticolo{position:absolute;inset:0;pointer-events:none;z-index:0}
.reticolo div{position:absolute;top:0;bottom:0;
  left:calc(max(0px, (100% - 1520px) / 2) + var(--m));right:calc(max(0px, (100% - 1520px) / 2) + var(--m))}
.reticolo span{position:absolute;top:0;bottom:0;width:1px;background:var(--riga);left:calc(var(--i) * 100% / 12)}
.reticolo span:last-child{left:auto;right:0}
.foglio{position:relative;z-index:1;max-width:1520px;margin:0 auto;padding:0 var(--m)}
.g{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));container-type:inline-size}
.filetto::after{content:"";position:absolute;left:var(--m);right:var(--m);bottom:0;height:1px;background:var(--ink);z-index:2}
.testata .g{height:var(--testata)}
.firma{grid-column:1/5;display:flex;align-items:center;gap:14px;align-self:center}
.firma .logo{height:60px;width:auto;display:block}
.p-firma .logo{height:56px;width:auto;display:block}
.menu{grid-column:7/13;display:flex;align-items:center;gap:30px;padding-left:18px}
.menu a{font-size:15px;font-weight:500;white-space:nowrap}
.menu a:hover{color:var(--blu)}
.menu a[aria-current]{color:var(--blu)}
.apri-menu{display:none}
.apertura .g{min-height:calc(100svh - var(--testata));grid-template-rows:1fr}
.marchio{grid-column:1/7;grid-row:1;align-self:center;width:41.667cqw;aspect-ratio:1;position:relative;margin:48px 0}
.cerchi{position:absolute;inset:0;width:100%;height:100%;display:block}
.q,.vq{position:absolute;background:var(--blu);container-type:size;overflow:hidden}
.marchio .q{width:26.351%;height:26.351%;opacity:0}
.q.c{left:20.27%;top:19.324%}.q.d{left:55.135%;top:19.324%}.q.t{left:20.27%;top:53.919%}.q.l{left:55.135%;top:53.919%}
.lettera{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font:500 102cqh/1 "Barlow",sans-serif;color:var(--grigio);transform:translateY(-4.5cqh)}
.nome{position:absolute;left:8cqw;right:6cqw;bottom:7cqw;font:600 12.5cqw/1.04 var(--cond);color:#fff;letter-spacing:.005em}
.dire{grid-column:7/13;grid-row:1;align-self:center;height:41.667cqw;margin:48px 0;display:flex;flex-direction:column;padding:0 0 0 18px}
.dire h1{font:600 clamp(44px,5.4cqw,78px)/.98 var(--cond);letter-spacing:-.012em;margin-top:-.16em}
.dire h1 .riga{display:block}
.chiama{margin-top:auto;padding-top:28px;margin-bottom:-.2em;display:flex;align-items:baseline;flex-wrap:wrap;column-gap:18px;row-gap:6px}
.chiama .tel{font:600 48px/1 var(--cond);color:var(--blu);letter-spacing:-.005em}
.chiama .tel:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.chiama span{font-size:18px;flex-basis:100%}   
.wa-eroe{align-self:center;display:inline-flex;align-items:center;gap:9px;background:var(--acqua);color:#fff;font:600 19px/1 var(--cond);padding:11px 16px 11px 13px}
.wa-eroe svg{width:20px;height:20px;flex:none}
.wa-eroe:hover{background:#1a5556}
.ingresso{font:600 22px/1.2 var(--cond);color:var(--ink-2);margin-top:14px}
.q4 .ingresso,.dove .ingresso{font-size:18px;margin-top:6px}
.volo{position:absolute;left:0;top:0;width:0;height:0;z-index:30;pointer-events:none}
.vq{left:0;top:0;width:10px;height:10px;visibility:hidden;will-change:transform;
  outline:2px solid rgb(235 235 235 / calc(.9 * var(--l, 1)));outline-offset:-2px}
.vq .lettera{opacity:var(--l,1)}
.vq .nome{opacity:var(--n,0)}
.in-volo .vq{visibility:visible}
.in-volo .marchio .q{visibility:hidden}
.in-volo .indice a{opacity:0}
.indice{display:none}
.quadranti{position:relative;z-index:1;background:#fff;--croce:1}
.quadranti .g{position:relative}
.quadranti .g::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--ink);z-index:2;
  transform:scaleY(var(--croce));transform-origin:50% 0}
.quad{grid-column:span 6;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-content:start;position:relative;padding-bottom:64px}
.q3::after,.q4::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink);z-index:2;transform:scaleX(var(--croce))}
.q3::after{transform-origin:100% 50%}
.q4::after{transform-origin:0 50%}
.testa{grid-column:1/3;grid-row:1;align-self:start;aspect-ratio:1;position:relative;background:var(--blu);container-type:size;font-weight:600}
@media (min-width: 1000px){ .in-volo .testa{opacity:0} }
.blocco-testo{padding:12px 20px 0 18px}
.famiglia h3{display:flex;align-items:center;gap:10px;font:600 21px/1.2 var(--cond);margin-bottom:10px}
.famiglia h3::before{content:"";width:12px;height:12px;background:var(--blu);flex:none}
.viso h3::before{background:var(--acqua)}
.famiglia li{font-size:17px;line-height:1.32;padding:5px 0}
.q1 .denti{grid-column:3/7;grid-row:1/span 2}
.q1 .viso{grid-column:1/3;grid-row:2;padding:30px 20px 0 18px}
.q2 .fondi{grid-column:3/7;grid-row:1/span 2;columns:2;column-gap:0;padding-top:8px}
.fondi li{break-inside:avoid;font:500 19px/1.2 var(--cond);padding:6px 16px 6px 18px}
.q2 .loghi{columns:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 4px;padding:0 0 0 4px}
.loghi li{padding:0;display:flex;flex-direction:column;gap:6px}
.loghi .lg{display:block;position:relative;aspect-ratio:16/9;background:var(--fondo,#fff);outline:1px solid #d9dcdf;outline-offset:-1px}
.loghi .lg img{position:absolute;inset:14px 16px;width:calc(100% - 32px);height:calc(100% - 28px);object-fit:contain;display:block}
.loghi .solo{position:absolute;inset:0;display:grid;place-items:center;padding:0 10px;font:600 19px/1.1 var(--cond);color:var(--ink);text-align:center}
.loghi .nm{font:500 14px/1.25 var(--cond);color:var(--ink-2);padding:0 2px}
.q2 .nota{grid-column:1/3;grid-row:2;padding:26px 22px 0 18px;font-size:16px;line-height:1.45}
.q3 .riassunto{grid-column:3/7;grid-row:1;padding-top:14px}
.grande{font:600 30px/1.1 var(--cond)}
.settimana{grid-column:1/7;grid-row:2;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));column-gap:4px;margin-top:40px}
.g-nome{display:block;font:600 16px/1 var(--cond);margin-bottom:10px}
.blocco{display:flex;flex-direction:column;gap:4px;aspect-ratio:1}
.mezza{flex:1;background:var(--blu);color:#fff;font-size:14px;font-weight:500;line-height:1.2;padding:8px 7px 0;font-variant-numeric:tabular-nums;white-space:nowrap}
.mezza small{display:block;font-size:14px;margin-top:3px}
.mezza.chiusa{background:var(--grigio);color:var(--ink-2)}
.q4 .dove{grid-column:3/7;grid-row:1;padding-top:12px;padding-bottom:26px}
.indirizzo{font:600 30px/1.1 var(--cond)}
.q4 .tel{display:inline-block;margin-top:18px;font:600 40px/1 var(--cond);color:var(--blu)}
.q4 .tel:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.dove .wa{display:inline-block;margin-top:14px;font-weight:500}
.linea{grid-row:2;aspect-ratio:1;background:var(--grigio);position:relative;padding:18px 18px 16px;display:flex;flex-direction:column;justify-content:flex-end;gap:6px}
.l16{grid-column:1/3}.l92{grid-column:3/5;border-left:3px solid #fff}
.linea-nome{font:600 30px/1.1 var(--cond)}
.linea-nome b{font-weight:600;color:var(--blu)}
.fermata{font-size:15px;line-height:1.35}
.posta{margin-top:22px;font-size:15px;line-height:1.5}
.lm3{grid-column:5/7;border-left:3px solid #fff}
.lm3 .linea-nome b{background:#febf2e;color:var(--ink);padding:0 .12em}
.posta p+p{margin-top:8px}
.immagini .g{padding-top:64px;padding-bottom:96px;grid-auto-rows:calc(100cqw / 6)}
.immagini .g::before{content:"";position:absolute;left:var(--m);right:var(--m);top:0;height:1px;background:var(--ink)}
.im-testo{grid-column:1/3;grid-row:1}
.im-testo h2{display:inline-block;background:#fff;padding:0 12px 4px 0;font:600 34px/1.05 var(--cond)}
.foto{position:relative;margin:0}
.foto img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.04) brightness(1.02)}
.foto figcaption{position:absolute;left:0;top:100%;padding:10px 10px 2px 0;background:#fff;font-size:14px;color:var(--ink-2)}
.f-grande{grid-column:3/7;grid-row:1/span 2}
.f-grande img{object-position:72% 50%}
.f-rx{grid-column:7/9;grid-row:1}
.f-rx img{object-position:88% 40%}
.f-acqua{grid-column:7/9;grid-row:2;background:var(--acqua);color:#fff;padding:18px;display:flex;align-items:flex-end}
.f-acqua p{font-size:15px;line-height:1.35}
.f-acqua b{display:block;font:600 21px/1.1 var(--cond);margin-bottom:8px}
.f-attesa{grid-column:9/13;grid-row:1/span 2}
.f-attesa img{object-position:78% 50%}
.piede{position:relative;z-index:1;background:var(--grigio)}
.piede .g{padding-top:40px;padding-bottom:44px;row-gap:24px;font-size:14px;line-height:1.55}
.p-firma{grid-column:1/4;display:flex;align-items:flex-start;gap:12px}
.p-contatti{grid-column:4/7;padding-left:18px}
.p-legale{grid-column:7/13;padding-left:18px;color:var(--ink-2)}
.js [data-rivela]{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--ritardo,0s)}
.js [data-rivela].visto{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.js [data-rivela]{opacity:1;transform:none;transition:none}}
@media (min-width: 1000px) and (max-width: 1279px){
  .menu{grid-column:5/13;gap:24px}
}
@media (max-width: 999px){
  :root{--m:16px;--cols:4;--testata:64px}
  .reticolo span{display:none}
  .reticolo span.r4{display:block}
  .reticolo span:last-child{left:auto}
  .testata{position:relative;z-index:20}
  .firma{grid-column:1/4;gap:10px}
  .firma .logo{height:44px}
  .apri-menu{display:flex;grid-column:4/5;justify-self:end;align-self:center;align-items:center;
    background:none;border:1px solid var(--ink);color:var(--ink);font:600 15px/1 var(--cond);padding:9px 12px;border-radius:0;cursor:pointer}
  .menu{display:none;position:absolute;grid-column:1/-1;grid-row:1;left:0;right:0;top:100%;background:#fff;border:1px solid var(--ink);border-top:0;
    flex-direction:column;align-items:stretch;gap:0;padding:0}
  .menu-aperto .menu{display:flex}
  .menu a{padding:14px 16px;font-size:17px;border-top:1px solid var(--riga)}
  .menu a:first-child{border-top:0}
  .apertura .g{grid-template-rows:auto 1fr}
  .dire{grid-column:1/5;grid-row:1;align-self:auto;height:auto;margin:0;padding:28px 0 0}
  .dire h1{font-size:clamp(32px,10cqw,44px);margin-top:0}
  .chiama{margin-top:0;margin-bottom:0;padding-top:24px;column-gap:14px}
  .chiama .tel{font-size:40px}
  .chiama span{font-size:16px}
  .wa-eroe{font-size:17px;padding:10px 14px 10px 12px}
  .ingresso{font-size:18px;margin-top:10px}
  .marchio{grid-column:1/5;grid-row:2;align-self:center;width:75cqw;margin:28px 0 24px}
  .indice{display:block}
  .quattro{grid-column:1/5;position:relative;height:100cqw;margin:28px 0 36px}
  .indice a{position:absolute;width:42.857cqw;height:42.857cqw;background:var(--blu);container-type:size}
  .indice a:nth-child(1){left:0;top:0}.indice a:nth-child(2){right:0;top:0}
  .indice a:nth-child(3){left:0;bottom:0}.indice a:nth-child(4){right:0;bottom:0}
  .quadranti .g::before{display:none}
  .quad{grid-column:1/5;grid-template-columns:repeat(4,minmax(0,1fr));padding-bottom:48px}
  .quad::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink);z-index:2;transform:none}
  .testa{grid-column:1/5;aspect-ratio:auto;height:auto;container-type:normal;background:none;padding-top:28px}
  .testa .nome{position:static;display:block;font-size:34px;line-height:1;color:var(--ink)}
  .blocco-testo{padding:20px 0 0}
  .q1 .denti{grid-column:1/5;grid-row:auto}
  .q1 .viso{grid-column:1/5;grid-row:auto;padding:30px 0 0}
  .q2 .fondi{grid-column:1/5;grid-row:auto;padding-top:20px}
  .fondi li{padding:6px 10px 6px 0;font-size:18px}
  .q2 .loghi{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 4px;padding:20px 0 0}
  .loghi li{padding:0}
  .q2 .nota{grid-column:1/5;grid-row:auto;padding:18px 0 0}
  .q3 .riassunto{display:none}
  .settimana{grid-column:1/5;grid-row:auto;grid-template-columns:1fr;row-gap:4px;margin-top:22px}
  .giorno{display:grid;grid-template-columns:1fr 3fr;align-items:center}
  .g-nome{margin:0}
  .blocco{flex-direction:row;aspect-ratio:auto;height:46px}
  .mezza{display:flex;align-items:center;padding:0 10px}
  .mezza small{display:inline;margin:0 0 0 6px}
  .q4 .dove{grid-column:1/5;grid-row:auto;padding-top:20px}
  .indirizzo{font-size:28px}
  .linea{grid-row:auto;margin-top:28px;padding:14px}
  .l16{grid-column:1/3}.l92{grid-column:3/5}
  .lm3{grid-column:1/5;border-left:0;aspect-ratio:auto;min-height:120px;margin-top:4px}
  .linea-nome{font-size:26px}
  .fermata{font-size:14px}
  .posta{margin-top:18px}
  .immagini .g{padding-top:48px;padding-bottom:64px;grid-auto-rows:auto;row-gap:0}
  .im-testo{grid-column:1/5;grid-row:auto;padding:0 0 22px}
  .f-grande{grid-column:1/5;grid-row:auto;aspect-ratio:1;margin-bottom:44px}
  .f-rx{grid-column:1/3;grid-row:auto;aspect-ratio:1}
  .f-acqua{grid-column:3/5;grid-row:auto;aspect-ratio:1;padding:12px}
  .f-acqua p{font-size:14px;line-height:1.3}
  .f-acqua b{font-size:17px;margin-bottom:6px}
  .f-attesa{grid-column:1/5;grid-row:auto;aspect-ratio:1;margin-top:4px}
  .p-firma,.p-contatti,.p-legale{grid-column:1/5;padding-left:0}
}
@media (min-width: 1000px) and (max-width: 1279px) {
  .mezza { white-space: normal; font-size: 13.5px; padding: 7px 5px 0; }
  .mezza small { font-size: 12px; }
}
.colonne { display: grid; grid-template-columns: 1fr 1fr; gap: 0 clamp(20px, 2.4vw, 36px); align-items: start; }
.cure { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--filo); }
.cura { border-bottom: 1px solid var(--filo); }
.cura h3 { font: inherit; }
.cura button {
  --col: var(--blu);
  display: grid; grid-template-columns: 46px minmax(0, 1fr) 18px; align-items: center; gap: 16px;
  width: 100%; min-height: 78px; padding: 14px 12px 14px 6px; border: 0; background: transparent;
  font: inherit; font-size: 17.5px; font-weight: 500; line-height: 1.3; color: var(--inchiostro);
  text-align: left; cursor: pointer; transition: background-color .35s ease;
}
#pan-est .cura button { --col: var(--verde); }
.cura button:hover, .cura.aperta button { background: var(--tinta); }
.cura.aperta .cura-nome { color: var(--col); }
.ico { width: 46px; height: 46px; fill: none; stroke: var(--col); stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round; overflow: visible; transition: transform .45s var(--morbido); }
.cura button:hover .ico { transform: translateY(-2px); }
.piu { position: relative; width: 18px; height: 18px; }
.piu::before, .piu::after { content: ""; position: absolute; left: 2px; right: 2px; top: 50%; height: 1.6px; margin-top: -.8px; background: var(--col); transition: transform .4s var(--morbido); }
.piu::after { transform: rotate(90deg); }
.cura.aperta .piu::after { transform: rotate(0deg); }
.cura button:hover .piu::before { transform: scaleX(1.15); }
.apri { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .45s var(--morbido); }
.apri > div { overflow: hidden; visibility: hidden; transition: visibility 0s linear .45s; }
.cura.aperta .apri { grid-template-rows: 1fr; }
.cura.aperta .apri > div { visibility: visible; transition-delay: 0s; }
.apri p { padding: 2px 14px 22px 68px; font-size: 16px; line-height: 1.55; color: var(--testo2); max-width: 54ch; }
.serv-nota { margin-top: 28px; color: var(--testo2); font-size: 16px; }
.serv-nota a { color: var(--inchiostro); font-weight: 600; text-underline-offset: 3px; }
.js .pannello .ico :is(path, circle) { stroke-dasharray: 1 2; stroke-dashoffset: 1; }
.js .pannello .cura { opacity: 0; transform: translateY(10px); }
.js .pannello.visto .cura { opacity: 1; transform: none; transition: opacity .6s ease, transform .7s var(--morbido); transition-delay: calc(var(--i) * 45ms); }
.js .pannello.visto .ico :is(path, circle) { stroke-dashoffset: 0; transition: stroke-dashoffset 1.1s cubic-bezier(.45, .05, .25, 1); transition-delay: calc(var(--i) * 70ms + 160ms); }
@media (max-width: 1100px) {
  .colonne { grid-template-columns: 1fr; }
  .colonne .cure + .cure { border-top: 0; }
}
@media (max-width: 860px) {
  .cura button { min-height: 68px; grid-template-columns: 40px minmax(0, 1fr) 18px; gap: 14px; font-size: 17px; padding: 12px 8px 12px 4px; }
  .ico { width: 40px; height: 40px; }
  .apri p { padding: 0 8px 20px 58px; font-size: 15.5px; }
}
@media (prefers-reduced-motion: reduce) {
  .js .pannello .ico :is(path, circle) { stroke-dasharray: none; stroke-dashoffset: 0; transition: none; }
  .js .pannello .cura { opacity: 1; transform: none; transition: none; }
  .apri { transition: none; }
}
.mappa { position: relative; aspect-ratio: var(--ar-d); overflow: hidden; background: #edefef; }
.mappa-svg { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.m-campo { fill: #edefef; }
.m-isolati { fill: #dde2e2; }
.m-strada { fill: none; stroke: #fff; stroke-linecap: round; stroke-linejoin: round; }
.m-viale { stroke-width: 15; }
.m-via { stroke-width: 8; }
.m-minore { stroke-width: 3.5; }
.m-linea { fill: none; stroke-linejoin: round; stroke-linecap: round; }
.m-16 { stroke: var(--blu); stroke-width: 5; }
.m-92 { stroke: var(--verde); stroke-width: 6.4; }
.m-92b { stroke: #fff; stroke-width: 1.5; }
.m-M3c { stroke: var(--giallo-bordo); stroke-width: 8.4; }
.m-M3 { stroke: var(--giallo); stroke-width: 5.4; }
.m-p16 circle { fill: var(--blu); }
.m-p92 circle { fill: var(--verde); }
.m-pM3 circle { fill: var(--giallo); stroke: var(--giallo-bordo); stroke-width: 1; }
.m-fermata { fill: #fff; stroke-width: 3; }
.m-f16 { stroke: var(--blu); }
.m-f92 { stroke: var(--verde); }
.m-fM3 { stroke: var(--giallo-bordo); stroke-width: 3.4; }
.m-s-anello { fill: #fff; stroke: var(--inchiostro); stroke-width: 3.6; }
.m-s-punto { fill: var(--inchiostro); }
text.m-via { fill: #53646b; font-weight: 600; letter-spacing: .02em; paint-order: stroke; stroke: #edefef; stroke-width: 3.6; stroke-linejoin: round; }
.m-fer { fill: var(--inchiostro); font-weight: 600; paint-order: stroke; stroke: #edefef; stroke-width: 4; stroke-linejoin: round; }
.m-chip rect { stroke: none; }
.m-c16 rect { fill: var(--blu); }
.m-c92 rect { fill: var(--verde); }
.m-cM3 rect { fill: var(--giallo); }
.m-chip text { fill: #fff; font-weight: 700; }
.m-cM3 text { fill: var(--inchiostro); }
.m-targa rect { fill: #fff; stroke: var(--inchiostro); stroke-width: 1.4; }
.m-t1 { fill: var(--inchiostro); font-weight: 700; }
.m-t2 { fill: var(--testo2); }
.m-filo { stroke: var(--inchiostro); stroke-width: 1.4; fill: none; }
.m-m { display: none; }
.osm { position: absolute; right: 0; bottom: 0; font-size: 12px; color: #4d5d63; background: rgba(237, 239, 239, .9); padding: 2px 8px; }
.js .mappa .m-linea { stroke-dasharray: 1 2; stroke-dashoffset: 1; }
.js .mappa .m-piedi circle { opacity: 0; }
.js .mappa .m-studio { opacity: 0; transform: scale(.4); transform-box: fill-box; transform-origin: center; }
.js .mappa.visto .m-16 { stroke-dashoffset: 0; transition: stroke-dashoffset 1.5s cubic-bezier(.45, .05, .25, 1) .2s; }
.js .mappa.visto .m-92, .js .mappa.visto .m-92b { stroke-dashoffset: 0; transition: stroke-dashoffset 1.5s cubic-bezier(.45, .05, .25, 1) .5s; }
.js .mappa.visto .m-M3, .js .mappa.visto .m-M3c { stroke-dashoffset: 0; transition: stroke-dashoffset 1.5s cubic-bezier(.45, .05, .25, 1) .8s; }
.js .mappa.visto .m-p16 circle { opacity: 1; transition: opacity .2s ease calc(1.7s + var(--k) * 22ms); }
.js .mappa.visto .m-p92 circle { opacity: 1; transition: opacity .2s ease calc(2s + var(--k) * 22ms); }
.js .mappa.visto .m-pM3 circle { opacity: 1; transition: opacity .2s ease calc(2.3s + var(--k) * 8ms); }
.js .mappa.visto .m-studio { opacity: 1; transform: none; transition: opacity .4s ease 3.1s, transform .7s var(--morbido) 3.1s; }
.chiave { list-style: none; margin: 0; padding: 30px 28px; display: grid; align-content: start; gap: 26px; border-left: 1px solid var(--filo); }
.chiave li { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 4px 14px; align-items: start; }
.chiave b { display: block; font-size: 18px; font-weight: 600; line-height: 1.3; }
.chiave span.f { display: block; color: var(--testo2); font-size: 15.5px; line-height: 1.4; }
.sw { display: block; margin-top: 11px; height: 0; }
.sw16 { border-top: 4px solid var(--blu); }
.sw92 { border-top: 5px solid var(--verde); position: relative; }
.sw92::after { content: ""; position: absolute; left: 0; right: 0; top: -3px; border-top: 1px solid #fff; }
.swM3 { height: 7px; margin-top: 9px; background: var(--giallo); border: 1.5px solid var(--giallo-bordo); }
.swp { height: 5px; margin-top: 10px; position: relative; background: radial-gradient(circle, var(--blu) 1.5px, transparent 1.8px) 0 50% / 7px 5px repeat-x; }
.swp::before, .swp::after { content: ""; position: absolute; top: 0; bottom: 0; right: 0; background-color: #fff; background-position: 0 50%; background-size: 7px 5px; background-repeat: repeat-x; }
.swp::before { left: 14px; background-image: radial-gradient(circle, var(--verde) 1.5px, transparent 1.8px); }
.swp::after { left: 28px; background-image: radial-gradient(circle, var(--giallo) 1.3px, var(--giallo-bordo) 1.5px 2.1px, transparent 2.4px); }
.swa { width: 18px; height: 18px; margin: 3px 0 0 12px; border: 3px solid var(--inchiostro); border-radius: 50%; position: relative; background: #fff; }
.swa::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: var(--inchiostro); }
@media (max-width: 1180px) {
  .chiave { border-left: 0; border-top: 1px solid var(--filo); grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 22px 28px; }
}
@media (max-width: 860px) {
  .mappa { aspect-ratio: var(--ar-m); }
  .m-d { display: none; }
  .m-m { display: inline; }
  .chiave { grid-template-columns: 1fr; padding: 24px 18px; gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .js .mappa .m-linea { stroke-dasharray: none; stroke-dashoffset: 0; transition: none; }
  .js .mappa .m-piedi circle, .js .mappa .m-studio { opacity: 1; transform: none; transition: none; }
}
:root{
  --verde:var(--acqua); --verde-scuro:#1a5556; --blu-scuro:#00467c;
  --campo:var(--grigio); --inchiostro:var(--ink); --testo2:var(--ink-2);
  --filo:#dcdfe2; --tinta:#f3f4f5; --morbido:cubic-bezier(.22,.7,.2,1);
  --giallo:#febf2e; --giallo-bordo:#b8860f;
}
@media (min-width: 1000px){
  .q2::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink);z-index:2;
    transform:scaleX(var(--croce));transform-origin:0 50%}
  .qe .testa{background:var(--acqua)}
}
.volo .vq.est::before{content:"";position:absolute;inset:0;background:var(--acqua);opacity:var(--n,0)}
.indice a:nth-child(2){background:var(--acqua)}
@media (min-width: 1000px){ .in-volo .contatti .testa{opacity:1} }
.quad.cure-q{padding-bottom:56px}
.cure-q .intro{grid-column:3/7;grid-row:1;padding:14px 20px 0 18px}
.cure-q .intro p:not(.grande){margin-top:12px;font-size:16px;line-height:1.45;color:var(--ink-2)}
.cure-q .pannello{grid-column:1/7;grid-row:2;margin-top:28px}
.js .cure-q .pannello[data-rivela]{transform:none}
.cure-q .colonne{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;align-items:start}
.cure-q .colonne .cure + .cure{border-top:1px solid var(--filo)}
.cure-q .colonne .cure:first-child:not(:last-child){margin-right:20px}
.qe .colonne{grid-template-columns:minmax(0,1fr)}
.cure-q .cura button{grid-template-columns:42px minmax(0,1fr) 18px;gap:16px;min-height:62px;padding:9px 18px 9px 18px;
  font:500 17px/1.3 "Barlow",system-ui,sans-serif}
.cure-q .ico{width:42px;height:42px}
.cure-q .apri p{padding:0 18px 20px 76px;max-width:none;font-size:16px;line-height:1.5}
.qe{grid-template-rows:auto auto 1fr;align-content:stretch}
.qe .serv-nota{grid-column:1/7;grid-row:3;align-self:stretch;display:flex;align-items:flex-end;margin:28px 0 0;
  padding:22px 22px 20px 18px;min-height:96px;background:var(--grigio);font:600 22px/1.25 var(--cond);color:var(--ink)}
.qe .serv-nota a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.qe .serv-nota a:hover{color:var(--blu)}
.qe .serv-nota a[href^="tel"]{white-space:nowrap}
.contatti{position:relative;z-index:1;background:#fff}
.contatti .g{position:relative;padding-bottom:64px}
.contatti .g::before{content:"";position:absolute;left:var(--m);right:var(--m);top:0;height:1px;background:var(--ink);z-index:2}
.contatti .testa{grid-column:1/3;grid-row:1}
.contatti .dove{grid-column:3/7;grid-row:1;padding:12px 20px 0 18px}
.contatti .tel{display:inline-block;margin-top:18px;font:600 40px/1 var(--cond);color:var(--blu)}
.contatti .tel:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.contatti .posta{overflow-wrap:anywhere}
.contatti .legenda{grid-column:7/13;grid-row:1;display:flex;flex-direction:column;padding-top:12px}
.contatti .legenda h3{display:flex;align-items:center;gap:10px;font:600 21px/1.2 var(--cond);padding:0 0 12px 18px}
.contatti .legenda h3::before{content:"";width:12px;height:12px;background:var(--blu);flex:none}
.contatti .chiave{margin-top:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:0;border:0}
.contatti .chiave li{background:var(--grigio);display:flex;flex-direction:column;justify-content:space-between;gap:10px;
  padding:12px 14px 12px 16px;min-height:0}
.contatti .chiave li:last-child{grid-column:span 2}
.contatti .chiave b{font:600 20px/1.15 var(--cond)}
.contatti .chiave span.f{font-size:14.5px;line-height:1.35;color:var(--ink-2)}
.contatti .chiave .sw{width:44px;margin-top:6px;flex:none}
.contatti .chiave .swM3{margin-top:4px}
.contatti .chiave .swp::before,.contatti .chiave .swp::after{background-color:var(--grigio)}
.contatti .chiave .swa{margin:0}
.contatti .mappa{grid-column:1/13;grid-row:2;margin-top:28px;aspect-ratio:var(--ar-d);background:var(--grigio)}
.m-d{display:inline}
.m-m{display:none}
.m-campo{fill:var(--grigio)}
.m-isolati{fill:#d8dbde}
.mappa-svg text{font-family:"Barlow",system-ui,sans-serif}
.mappa-svg .m-chip text{font-family:var(--cond);font-weight:700}
text.m-via{fill:#4b5764;stroke:var(--grigio)}
.m-fer{stroke:var(--grigio)}
.osm{font-size:12px;color:var(--ink-2);background:rgba(235,235,235,.92)}
.foto img{filter:none}
.f-grande img{object-position:45% 50%}
.f-rx img{object-position:50% 8%}
.f-attesa img{object-position:85% 50%}
@media (min-width: 1000px){
  .contatti.con-foto .al-telefono{grid-column:7/13;grid-row:1;align-self:start;aspect-ratio:2/1;margin-bottom:34px}
  .contatti.con-foto .legenda{grid-column:1/13;grid-row:2;padding-top:36px}
  .contatti.con-foto .legenda h3{padding-left:0}
  .contatti.con-foto .chiave{grid-template-columns:repeat(6,minmax(0,1fr))}
  .contatti.con-foto .mappa{grid-row:3;margin-top:3px}
}
.contatti.con-foto .al-telefono img{object-position:50% 36%}
@media (min-width: 1000px) and (max-width: 1279px){
  .mezza{white-space:normal;font-size:13.5px;padding:7px 5px 0}
  .mezza small{font-size:12px}
  .cure-q .intro .grande{font-size:26px}
  .cure-q .cura button{grid-template-columns:34px minmax(0,1fr) 16px;gap:12px;padding:9px 12px 9px 14px;font-size:16px}
  .cure-q .ico{width:34px;height:34px}
  .cure-q .apri p{padding:0 12px 18px 60px;font-size:15px}
  .cure-q .colonne .cure:first-child:not(:last-child){margin-right:14px}
  .contatti .tel{font-size:34px}
  .contatti .chiave li{padding:12px 12px 12px 14px}
  .contatti .chiave b{font-size:18px}
  .contatti .chiave span.f{font-size:13.5px}
}
@media (max-width: 999px){
  .quad.cure-q{padding-bottom:48px}
  .cure-q .intro{grid-column:1/5;grid-row:auto;padding:16px 0 0}
  .cure-q .intro .grande{font-size:24px}
  .cure-q .pannello{grid-column:1/5;grid-row:auto;margin-top:20px}
  .cure-q .colonne{grid-template-columns:minmax(0,1fr)}
  .cure-q .colonne .cure:first-child:not(:last-child){margin-right:0}
  .cure-q .colonne .cure + .cure{border-top:0}
  .cure-q .cura button{grid-template-columns:40px minmax(0,1fr) 18px;gap:14px;min-height:64px;padding:10px 6px 10px 2px}
  .cure-q .ico{width:40px;height:40px}
  .cure-q .apri p{padding:0 6px 20px 56px;font-size:15.5px}
  .qe{grid-template-rows:none;align-content:start}
  .qe .serv-nota{grid-column:1/5;grid-row:auto;margin-top:24px;padding:18px 16px 18px;min-height:0;font-size:20px}
  .contatti .g{padding-bottom:48px}
  .contatti .testa{grid-column:1/5}
  .contatti .dove{grid-column:1/5;grid-row:auto;padding:20px 0 0}
  .contatti .tel{font-size:36px}
  .contatti.con-foto .al-telefono{grid-column:1/5;aspect-ratio:4/3;margin:28px 0 34px}
  .contatti .legenda{display:contents}
  .contatti .legenda h3{grid-column:1/5;order:1;padding:36px 0 14px}
  .contatti .mappa{grid-column:1/5;grid-row:auto;order:2;margin-top:0;aspect-ratio:var(--ar-t)}
  .contatti .chiave{grid-column:1/5;order:3;grid-template-columns:minmax(0,1fr);margin-top:3px}
  .contatti .chiave li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:2px 12px;align-items:start;padding:13px 14px 14px}
  .contatti .chiave li:last-child{grid-column:auto}
  .contatti .chiave b{font-size:19px}
  .contatti .chiave .sw{width:auto;margin-top:9px}
  .contatti .chiave .swM3{margin-top:7px}
  .contatti .chiave .swa{margin:2px 0 0 12px}
  .m-d{display:none}
  .m-m{display:inline}
}
@media (max-width: 699px){
  .contatti .mappa{aspect-ratio:var(--ar-m)}
}
.vai-pagina{display:block;margin-top:14px;font:500 16px/1.4 "Barlow",system-ui,sans-serif}
.vai-pagina a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.vai-pagina a:hover{color:var(--blu)}
.cure-q .apri p.vai{margin-top:-10px;font-size:15px;color:var(--ink)}
.cure-q .apri p.vai a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.cure-q .apri p.vai a:hover{color:var(--col)}
.q2 .nota .vai-pagina{margin-top:10px;font-size:15px}
.im-testo .vai-pagina{display:inline-block;margin-top:8px;padding:2px 12px 4px 0;background:#fff;font-size:15px}
.dove .vai-pagina{margin-top:18px;font-size:15px}
html:has(body.interna){scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){ html:has(body.interna){scroll-behavior:auto} }
.interna .capo .g{padding-bottom:56px}
.interna .capo .testa{grid-column:1/3;grid-row:1}
.capo-testo{grid-column:3/9;grid-row:1;padding:14px 20px 0 18px}
.capo-testo .titolo{font:600 clamp(36px,3.6cqw,52px)/1.02 var(--cond);letter-spacing:-.008em;color:var(--ink)}
.capo-testo .titolo + p{margin-top:18px;max-width:46ch;font-size:18px;line-height:1.5;color:var(--ink-2)}
.capo-testo .ingresso{margin-top:12px}
.capo-lato{grid-column:9/13;grid-row:1;align-self:end;padding:0 0 0 18px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.capo-lato .tel{font:600 40px/1 var(--cond);color:var(--blu)}
.capo-lato .tel:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.capo-lato .wa-eroe{align-self:flex-start}
.capo-lato .posta{margin-top:4px;font-size:15px;line-height:1.5}
.capo-lato .posta p+p{margin-top:4px}
.capo-lato .piccolo{font-size:16px;color:var(--ink-2)}
.fascia{position:relative;z-index:1;background:#fff}
.fascia .g{position:relative;padding-bottom:72px}
.fascia .g::before{content:"";position:absolute;left:var(--m);right:var(--m);top:0;height:1px;background:var(--ink);z-index:2}
.titoletto{grid-column:1/3;display:flex;align-items:center;gap:10px;align-self:start;padding-top:16px;font:600 21px/1.2 var(--cond)}
.titoletto::before{content:"";width:12px;height:12px;background:var(--blu);flex:none}
.servizi-p .g::after{content:"";position:absolute;top:0;bottom:0;left:calc(var(--m) + (100% - 2 * var(--m)) * 9 / 12);
  width:1px;background:var(--ink);z-index:2}
.indice-cure{grid-column:10/13;grid-row:1;align-self:start;position:sticky;top:0;padding:22px 0 32px 22px;
  max-height:100vh;overflow-y:auto;scrollbar-width:thin}
.indice-cure .ind-t{display:flex;align-items:center;gap:10px;font:600 19px/1.2 var(--cond);margin:0 0 8px}
.indice-cure .ind-t a:hover{color:var(--blu)}
.indice-cure .ind-t::before{content:"";width:12px;height:12px;background:var(--blu);flex:none}
.indice-cure .ind-est{margin-top:26px}
.indice-cure .ind-est .ind-t::before{background:var(--acqua)}
.indice-cure li a{display:block;position:relative;padding:4px 0 4px 22px;font-size:15px;line-height:1.3;color:var(--ink-2);transition:color .25s ease}
.indice-cure li a::before{content:"";position:absolute;left:0;top:calc(4px + .65em - 1px);width:12px;height:2px;background:currentColor;
  transform:scaleX(0);transform-origin:0 50%;transition:transform .3s var(--morbido)}
.indice-cure li a:hover{color:var(--ink)}
.indice-cure li a[aria-current]{color:var(--blu);font-weight:500}
.indice-cure .ind-est li a[aria-current]{color:var(--acqua)}
.indice-cure li a[aria-current]::before{transform:none}
.gruppi{grid-column:1/10;grid-row:1;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));align-content:start}
.gruppo{grid-column:1/10;display:grid;grid-template-columns:subgrid;position:relative;padding-bottom:40px}
.gruppo + .gruppo{margin-top:40px}
.gruppo + .gruppo::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink);z-index:2}
.gruppo .testa{grid-column:1/3;grid-row:1}
.gruppo.est .testa{background:var(--acqua)}
.gruppo-riga{grid-column:3/9;grid-row:1;padding:14px 20px 0 18px}
.gruppo-riga p:not(.grande){margin-top:12px;font-size:16px;line-height:1.45;color:var(--ink-2)}
.scheda{grid-column:2/10;display:grid;grid-template-columns:subgrid;align-items:start;padding:30px 0 34px;
  border-top:1px solid var(--filo);scroll-margin-top:48px;--col:var(--blu)}
.gruppo .testa + .gruppo-riga + .scheda{margin-top:40px}
.gruppo.est .scheda{--col:var(--acqua)}
.scheda .ico{grid-column:1/2;justify-self:end;width:52px;height:52px;margin-right:2px}
.scheda-corpo{grid-column:2/8;padding-left:18px}
.scheda h3{font:600 30px/1.1 var(--cond);color:var(--ink);margin-top:6px}
.scheda-corpo p{margin-top:12px;max-width:62ch;font-size:17px;line-height:1.55;color:var(--ink-2)}
.scheda-corpo h3 + p{margin-top:14px}
.scheda-corpo a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;white-space:nowrap}
.scheda-corpo a:hover{color:var(--blu)}
.js .scheda .ico :is(path, circle){stroke-dasharray:1 2;stroke-dashoffset:1}
.js .scheda.visto .ico :is(path, circle){stroke-dashoffset:0;transition:stroke-dashoffset 1.1s cubic-bezier(.45,.05,.25,1) .25s}
@media (prefers-reduced-motion: reduce){ .js .scheda .ico :is(path, circle){stroke-dasharray:none;stroke-dashoffset:0;transition:none} }
.gruppo-foto{grid-column:3/10;margin-top:28px;display:flex;gap:4px}
.gruppo-foto + .scheda{margin-top:40px}
.scheda-foto{display:flex;gap:4px;margin-top:22px;max-width:680px}
:is(.gruppo-foto, .scheda-foto) figure{margin:0;flex:var(--r) 1 0;min-width:0;aspect-ratio:var(--r);overflow:hidden;background:var(--grigio)}
:is(.gruppo-foto, .scheda-foto) img{display:block;width:100%;height:100%;object-fit:cover}
:is(.gruppo-foto, .scheda-foto).sola figure{flex:1 1 0}
.gruppo-foto.sola figure{aspect-ratio:2/1}
.gruppo-foto img{object-position:50% 25%}
.scheda-foto.sola figure{aspect-ratio:3/2}
#radiologia .scheda-foto img{object-position:50% 9%}
.prenota{grid-column:3/10;margin-top:8px;padding:22px 22px 20px 18px;background:var(--grigio);font:600 22px/1.25 var(--cond);color:var(--ink)}
.prenota a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.prenota a:hover{color:var(--blu)}
.prenota a[href^="tel"]{white-space:nowrap}
.pag-immagini .galleria .g{padding-top:16px;padding-bottom:96px}
.album{grid-column:1/-1;display:grid;grid-template-columns:subgrid;align-items:start;position:relative}
.album + .album{margin-top:48px;padding-top:16px}
.album + .album::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink);z-index:2}
.album .titoletto{grid-column:1/3;grid-row:1;padding-top:0}
.righe{grid-column:3/-1;grid-row:1;display:flex;flex-direction:column;gap:4px}
.riga{display:flex;gap:4px}
.riga .scatto{flex:var(--r) 1 0;min-width:0;aspect-ratio:var(--r)}
.scatto{position:relative;margin:0;overflow:hidden;background:var(--grigio)}
.scatto a{display:block;width:100%;height:100%;cursor:zoom-in}
.scatto img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--morbido)}
.scatto a:hover img{transform:scale(1.025)}
.scatto a:focus-visible{outline:none}
.scatto a:focus-visible::after{content:"";position:absolute;inset:0;border:3px solid var(--blu)}
.scatto figcaption{position:absolute;left:0;bottom:0;padding:9px 14px 0 0;background:#fff;font:500 15px/1.2 "Barlow",system-ui,sans-serif;color:var(--ink);pointer-events:none}
.album .dove-siamo{grid-column:1/3;grid-row:1;align-self:end;aspect-ratio:1;margin-right:4px;padding:18px 16px 18px 18px}
.album .dove-siamo b{font-size:clamp(20px,1.75cqw,26px)}
.dove-siamo{background:var(--acqua);color:#fff;padding:22px 22px 20px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px}
.dove-siamo b{font:600 30px/1.05 var(--cond)}
.dove-siamo p{font-size:16px;line-height:1.4}
.dove-siamo a{margin-top:6px;align-self:flex-start;font:600 19px/1 var(--cond);color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.dove-siamo a:hover{text-decoration-thickness:2px}
.lente{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fff;overflow:hidden}
.lente::backdrop{background:rgb(16 33 47 / .97)}
.lente[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.lente-su{display:flex;justify-content:space-between;align-items:center;padding:16px var(--m)}
.lente-conta{font:600 17px/1 var(--cond);font-variant-numeric:tabular-nums;opacity:.8}
.lente button{background:none;border:1px solid rgb(255 255 255 / .6);color:#fff;font:600 16px/1 var(--cond);padding:10px 14px;border-radius:0;cursor:pointer}
.lente button:hover{background:#fff;color:var(--ink)}
.lente button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.lente-centro{min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:0 var(--m) 24px}
.lente figure{margin:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.lente img{max-width:100%;max-height:calc(100dvh - 150px);width:auto;height:auto;object-fit:contain;display:block}
.lente .lente-freccia{width:64px;height:64px;padding:0;border:0;display:grid;place-items:center;color:#fff;background:none}
.lente .lente-freccia:hover{background:rgb(255 255 255 / .12);color:#fff}
.lente-freccia svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:square}
.lente{touch-action:pan-y}
.lente img{-webkit-user-drag:none;user-select:none}
.lente figcaption{margin-top:12px;font-size:16px;opacity:.9;text-align:center}
.pag-contatti .capo-testo .titolo{font-size:clamp(36px,3.9cqw,56px)}
.pag-contatti .capo-testo .ingresso{font-size:24px}
.orari-p .riassunto{grid-column:3/7;grid-row:1;padding:14px 20px 0 18px}
.orari-p .riassunto p:not(.grande){margin-top:12px;font-size:16px;line-height:1.45;color:var(--ink-2)}
@media (min-width: 1000px){
  .orari-p .settimana{grid-column:7/13;grid-row:1;align-self:end;margin-top:0}
}
.capo-foto{grid-row:2;margin:40px 0 34px}
.cf-1{grid-column:3/9;aspect-ratio:2/1}
.cf-1 img{object-position:50% 36%}
.cf-2{grid-column:9/13;align-self:stretch;margin-left:4px}
.cf-2 img{position:absolute;inset:0}
.cf-2 img{object-position:50% 57%}
.pag-contatti .come .g{padding-bottom:72px}
.pag-contatti .come .legenda{grid-column:3/13;grid-row:1;padding:0 0 0 3px}
.pag-contatti .come .chiave{flex:1 1 auto;margin-top:0;align-content:stretch;grid-template-columns:repeat(5,minmax(0,1fr))}
.pag-contatti .come .chiave li{padding:16px 14px 14px 16px}
.pag-contatti .come .chiave li:last-child{grid-column:auto}
.pag-contatti .come .mappa{margin-top:3px}
.societa .dati{grid-column:3/13;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding-left:3px}
.societa .dati li{background:var(--grigio);display:flex;flex-direction:column;gap:8px;padding:14px 14px 16px 16px}
.societa .dati b{font:600 18px/1.15 var(--cond)}
.societa .dati span{font-size:15px;line-height:1.4;color:var(--ink-2);font-variant-numeric:tabular-nums}
.elenco-conv{grid-column:1/13;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:relative}
.elenco-conv::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--ink);z-index:2}
.conv{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:start;padding:22px 0 24px;border-top:1px solid var(--filo)}
.conv:nth-child(-n+2){border-top:0}
.conv .lg{grid-column:1/3;display:block;position:relative;aspect-ratio:16/9;background:var(--fondo,#fff);outline:1px solid #d9dcdf;outline-offset:-1px}
.conv .lg img{position:absolute;inset:14px 16px;width:calc(100% - 32px);height:calc(100% - 28px);object-fit:contain;display:block}
.conv .solo{position:absolute;inset:0;display:grid;place-items:center;padding:0 10px;font:600 21px/1.1 var(--cond);color:var(--ink);text-align:center}
.conv-testo{grid-column:3/7;padding:2px 20px 0 18px}
.conv h2{font:600 24px/1.1 var(--cond)}
.conv p{margin-top:8px;font-size:16px;line-height:1.45;color:var(--ink-2)}
.pagine-404{grid-column:3/13;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding-left:3px}
.pagine-404 a{display:flex;align-items:flex-end;min-height:120px;padding:14px 14px 16px 16px;background:var(--grigio);
  font:600 21px/1.15 var(--cond);color:var(--ink);transition:background .2s ease,color .2s ease}
.pagine-404 a:hover{background:var(--blu);color:#fff}
@media (max-width: 999px){
  .pagine-404{grid-column:1/5;grid-template-columns:minmax(0,1fr);padding:18px 0 0}
  .pagine-404 a{min-height:0;padding:16px 14px}
}
@media (min-width: 1000px) and (max-width: 1279px){
  .capo-lato .tel{font-size:34px}
  .indice-cure li a{font-size:14px}
  .scheda h3{font-size:26px}
  .scheda .ico{width:44px;height:44px}
  .pag-contatti .come .chiave li{padding:12px 10px 12px 12px}
  .pag-contatti .come .chiave b{font-size:17px}
  .pag-contatti .come .chiave span.f{font-size:13px}
  .societa .dati b{font-size:16px}
  .societa .dati span{font-size:14px}
  .conv h2{font-size:21px}
  .conv p{font-size:15px}
  .orari-p .settimana{grid-column:3/13;grid-row:2;align-self:start;margin-top:28px}
  .orari-p .mezza{white-space:nowrap;font-size:14px;padding:8px 7px 0}
  .orari-p .mezza small{font-size:14px}
}
@media (max-width: 999px){
  .interna .capo .g{padding-bottom:40px}
  .interna .capo .testa{grid-column:1/3;aspect-ratio:1;container-type:size;background:var(--blu);padding-top:0;margin-top:24px}
  .interna .capo .testa .nome{position:absolute;left:8cqw;right:6cqw;bottom:7cqw;display:block;font:600 12.5cqw/1.04 var(--cond);color:#fff}
  .capo-testo{grid-column:1/5;grid-row:auto;padding:24px 0 0}
  .capo-testo .titolo{font-size:clamp(30px,8.6cqw,40px)}
  .capo-testo .titolo + p{font-size:17px}
  .capo-lato{grid-column:1/5;grid-row:auto;padding:26px 0 0}
  .capo-lato .tel{font-size:36px}
  .fascia .g{padding-bottom:48px}
  .titoletto{grid-column:1/5;padding-top:28px}
  .servizi-p .g::after{display:none}
  .indice-cure{grid-column:1/5;grid-row:auto;position:static;max-height:none;overflow:visible;padding:28px 0 36px}
  .indice-cure ul{columns:1}
  .indice-cure li a{font-size:16px;padding:6px 0 6px 22px}
  .gruppi{grid-column:1/5;grid-row:auto;grid-template-columns:repeat(4,minmax(0,1fr))}
  .gruppo{grid-column:1/5;padding-bottom:24px}
  .gruppo::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink);z-index:2}
  .gruppo + .gruppo{margin-top:24px}
  .gruppo + .gruppo::before{display:none}
  .gruppo .testa{grid-column:1/5}
  .gruppo.est .testa{background:none}
  .gruppo-riga{grid-column:1/5;grid-row:auto;padding:16px 0 0}
  .gruppo-riga .grande{font-size:24px}
  .gruppo .testa + .gruppo-riga + .scheda{margin-top:28px}
  .scheda{grid-column:1/5;grid-template-columns:44px minmax(0,1fr);column-gap:14px;padding:24px 0 28px}
  .scheda .ico{grid-column:1;justify-self:start;width:44px;height:44px;margin:0}
  .scheda-corpo{grid-column:2;padding-left:0}
  .scheda h3{font-size:25px;margin-top:6px}
  .scheda-corpo p{font-size:16px;margin-left:-58px}
  .scheda-corpo h3 + p{margin-top:16px}
  .prenota{grid-column:1/5;font-size:20px;padding:18px 16px}
  .pag-immagini .galleria .g{padding-bottom:64px}
  .album .titoletto{grid-column:1/-1;grid-row:auto;padding:0 0 14px}
  .album + .album{margin-top:36px;padding-top:24px}
  .righe{grid-column:1/-1;grid-row:auto}
  .album .dove-siamo{grid-column:1/-1;grid-row:auto;order:2;aspect-ratio:auto;margin:4px 0 0;padding:18px}
  .scatto figcaption{font-size:14px;padding:7px 10px 0 0}
  .gruppo-foto{grid-column:1/5;margin-top:24px}
  .gruppo-foto.sola figure{aspect-ratio:3/2}
  .gruppo-foto + .scheda{margin-top:28px}
  .scheda-foto{margin-left:-58px;max-width:none}
  .capo-foto{grid-column:1/5;grid-row:auto;aspect-ratio:4/3;margin:28px 0 34px}
  .cf-2{align-self:auto;margin:0 0 34px}
  .dove-siamo b{font-size:26px}
  .lente-centro{gap:0;padding:0 2px 18px}
  .lente .lente-freccia{width:44px;height:64px}
  .lente-freccia svg{width:26px;height:26px}
  .pag-contatti .capo-testo .ingresso{font-size:20px}
  .orari-p .riassunto{grid-column:1/5;grid-row:auto;padding:16px 0 0}
  .orari-p .riassunto .grande{font-size:24px}
  .pag-contatti .come .legenda{padding:0}
  .pag-contatti .come .chiave{grid-template-columns:minmax(0,1fr)}
  .pag-contatti .come .chiave li{padding:13px 14px 14px}
  .pag-contatti .come .mappa{margin-top:20px}
  .societa .dati{grid-column:1/5;grid-template-columns:minmax(0,1fr);padding:18px 0 0}
  .elenco-conv{grid-column:1/5;grid-template-columns:minmax(0,1fr)}
  .elenco-conv::before{display:none}
  .conv{grid-template-columns:repeat(4,minmax(0,1fr));padding:20px 0 22px}
  .conv:nth-child(2){border-top:1px solid var(--filo)}
  .conv .lg{grid-column:1/3}
  .conv-testo{grid-column:3/5;padding:0 0 0 14px}
  .conv h2{font-size:21px}
  .conv p{font-size:15px}
}
@media (min-width: 600px) and (max-width: 999px){
  .interna .capo .testa{grid-column:1/2}
  .conv .lg{grid-column:1/2}
  .conv-testo{grid-column:2/5}
}
@media (max-width: 699px){
  .righe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;grid-auto-flow:dense}
  .riga{display:contents}
  .riga .scatto{aspect-ratio:1}
  .riga .scatto.tel-g{grid-column:span 2;aspect-ratio:4/3}
}
