/* HEADER *************************/
#header{position:absolute;top:0;left:0;width:100%;}
#header.sticky{position:fixed;transform:translateY(0);animation:slideDown .4s ease;}
@keyframes slideDown{
    from{transform:translateY(-100%);}
    to{transform:translateY(0);}
}
@media only screen and (max-width: 63.9375rem) {
body.open{overflow:hidden}
#header{width:100%;padding:.75rem 1rem;box-sizing:border-box;background-color:transparent;position:absolute;z-index:10000}
#header.sticky{background-color:#fff;box-shadow: rgba(0, 0, 0, 0.125) 0 8px 24px;}
#header.active .ul-wrapper{opacity:1;transform:scaleY(1)}
#header.active .toggle{transform:rotate(180deg)}
#header.active .li{transform:translateY(0);opacity:1}
#header .container{width:100%;display:flex;justify-content:space-between;align-items:center}
#header .logo{width:40%;max-width:9.125rem;height:65px;margin:0 auto 0 auto;padding:0;display:none;justify-content:center;align-items:center;z-index:10}
#header .logo img{width:100%;height:100%;object-fit:contain}
#header.sticky .logo {display:flex;}
#header .cta-telefono-m{width:fit-content;height:40px;padding:0;display:flex;justify-content:center;align-items:center;text-decoration:none;z-index:10;gap: 1rem;}
#header .cta-telefono-m img{width:100%;height:100%;object-fit:contain}
#header .cta-telefono-m span{font-size:1.1rem;font-family:'Urbanist', Arial;font-weight:700;margin:0 0 0;color:#4b667b;white-space: nowrap;letter-spacing: 3px;}
#header.sticky .cta-telefono-m span{display: none;}
#header .toggle{width:3.5rem;height:3.5rem;margin:0 0 0 auto;border-radius:10rem;background: linear-gradient(90deg, #0187a4 0%, #0398b9 100%);border:none;display:flex;justify-content:center;
   align-items:center;transition:transform .6s}
#header .active .line1{top:50%;transform:translate(-50%,-50%) rotate(225deg)}
#header .active .line2{top:50%;transform-origin:center;transform:translate(-50%,-50%) translateY(0) rotate(-225deg)}
#header .active .line3{bottom:100%;opacity:0}
#header .box{width:clamp(1.5rem,2vw,1.75rem);height:1rem;position:relative}
#header .line{width:100%;height:2px;border-radius:2px;background-color:#fafbfc;position:absolute;left:50%;transform:translateX(-50%)}
#header .line1{top:0;transform-origin:center;transition:transform 0.5s,top 0.3s,left .3s;animation-duration:.7s;animation-timing-function:ease;animation-fill-mode:forwards;animation-direction:normal}
#header .line2{top:50%;transform:translateX(-50%) translateY(-50%);transition:top 0.3s,left 0.3s,transform .5s;animation-duration:.7s;animation-timing-function:ease;animation-fill-mode:forwards;animation-direction:normal}
#header .line3{bottom:0;transition:bottom 0.3s,opacity .3s}
#header .ul-wrapper{width:100%;height:100vh;padding-bottom:2.4em;opacity:0;background-color:#fff;box-shadow:inset #0003 0 8px 24px;overflow:hidden;position:absolute;top:100%;left:0;z-index:-1;transform:scaleY(0);transform-origin:top;transition:transform 0.4s,opacity .3s}
#header .ul{margin:0;padding:3rem 0 0;width:100%;height:auto;max-height:65vh;overflow:scroll;display:flex;justify-content:flex-start;flex-direction:column;
   align-items:center;gap:1.5rem}
#header .li{list-style:none;margin-right:0;transform:translateY(-4.375rem);opacity:0;transition:transform 0.6s,opacity .9s}
#header .li:nth-of-type(1){transition-delay:.05s}
#header .li:nth-of-type(2){transition-delay:.1s}
#header .li:nth-of-type(3){transition-delay:.15s}
#header .li:nth-of-type(4){transition-delay:.2s}
#header .li:nth-of-type(5){transition-delay:.25s}
#header .li:nth-of-type(6){transition-delay:.3s}
#header .li:nth-of-type(7){transition-delay:.35s}
#header .li:nth-of-type(8){transition-delay:.4s}
#header .li:nth-of-type(9){transition-delay:.45s}
#header .li-link{font-size:clamp(1.5rem,5vw,2rem);line-height:1.2em;text-decoration:none;margin:0;color:var(--headerColor);display:inline-block;position:relative;
   font-family:"Poppins",sans-serif;text-transform: uppercase;letter-spacing: 4px}
#header .li-link:before{content:"";width:100%;height:1px;background:currentColor;opacity:1;position:absolute;display:none;bottom:-.125rem;left:0}
#header .li-link.active:before{display:block}
#header .btn-main{display:none}
#header .li{text-align:center;width:100%;display:block}
#header .dropdown{position:relative;color:var(--bodyTextColorWhite)}
#header .dropdown.active .drop-ul{height:auto;opacity:1;visibility:visible;margin:.75rem 0 0;padding:.75rem 0}
#header .dropdown.active .drop-link{opacity:1}
#header .dropdown .li-link{position:relative;transition:opacity .3s}
#header .drop-icon{width:.9375rem;height:auto;position:absolute;top:50%;right:-1.25rem;transform:translateY(-50%)}
#header .drop-ul{width:100%;height:0;margin:0;padding:0;background-color:var(--primary);overflow:hidden;opacity:0;visibility:hidden;display:flex;justify-content:flex-start;flex-direction:column;align-items:center;gap:.75rem;transition:padding 0.3s,margin 0.3s,height 0.3s,opacity 0.3s,visibility .3s}
#header .drop-li{list-style:none}
#header .li-link.drop-link{font-size:clamp(0.875rem,2vw,1.25rem);color:#fff}
}
@media only screen and (min-width: 64rem) {
#header{width:100%;padding:0 1rem;box-sizing:border-box;background-color:transparent;position:absolute;z-index:10000;}
#header.sticky{background-color:#fff;box-shadow: rgba(0, 0, 0, 0.125) 0 8px 24px;}
#header .container{width:100%;height:5.8125rem;max-width:90vw;margin:auto;display:flex;justify-content:flex-end;align-items:center;gap:1.5rem;position:relative}
#header .dropdown{position:relative}
#header .dropdown:hover{cursor:pointer}
#header .dropdown:hover .drop-ul{transform:scaleY(1);opacity:1;visibility:visible}
#header .dropdown:hover .drop-li{opacity:1;transform:translateY(0)}
#header .drop-icon{width:.9375rem;height:auto;display:inline-block}
#header .drop-ul{min-width:12.5rem;margin:0;padding:0;background-color:var(--primary);overflow:hidden;opacity:0;visibility:hidden;border-bottom:5px solid var(--secondary);position:absolute;top:100%;z-index:-100;transform:scaleY(0);transform-origin:top;transition:transform 0.3s,visibility 0.3s,opacity .3s}
#header .drop-li{list-style:none;font-size:1rem;text-decoration:none;opacity:0;width:100%;height:auto;display:block;transform:translateY(-0.625rem);transition:opacity 0.6s,transform .6s}
#header .drop-li:nth-of-type(1){transition-delay:.05s}
#header .drop-li:nth-of-type(2){transition-delay:.1s}
#header .drop-li:nth-of-type(3){transition-delay:.15s}
#header .drop-li:nth-of-type(4){transition-delay:.2s}
#header .drop-li:nth-of-type(5){transition-delay:.25s}
#header .drop-li:nth-of-type(6){transition-delay:.3s}
#header .drop-li:nth-of-type(7){transition-delay:.35s}
#header .drop-li:nth-of-type(8){transition-delay:.4s}
#header .drop-li:nth-of-type(9){transition-delay:.45s}
#header .li-link.drop-link{text-transform: uppercase;white-space:nowrap;width:100%;font-size:.85rem;line-height:1.5em;text-decoration:none;padding:.75rem;
   box-sizing:border-box;color:var(--bodyTextColorWhite);display:block;transition:color 0.3s,background-color .3s;letter-spacing:2px;}
#header .li-link.drop-link:hover{background-color:var(--primaryLight);color:var(--bodyTextColorWhite)}
#header .li-link.drop-link:before{display:none}
#header .toggle{display:none}
#header .logo{width:100%;max-width:270px;height:auto;margin:0 auto 0 0;padding:0;display:none;justify-content:center;align-items:center;z-index:100;
   position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
#header .logo img{width:100%;height:100%;object-fit:contain}
#header.sticky .logo{display:flex;} 
#header .ul-wrapper{position:absolute;left:200px;top:50%;transform:translate(-50%,-50%)}
#header .ul{width:100%;margin:0;padding:0;display:flex;justify-content:flex-start;align-items:center;gap:clamp(1.25rem,2.6vw,2.25rem)}
#header .li{list-style:none;padding:2.25rem 0;flex:none}
#header .li-link{font-size:.95rem;line-height:1.5em;text-decoration:none;text-transform:uppercase;margin:0;color:var(--primary);
   display:inline-block;position:relative;transition:color .3s;letter-spacing:4px;font-family:'Poppins',sans-serif;}
#header .li-link::before{content:"";position:absolute;left:0;bottom:-.25rem;width:100%;height:1px;background:currentColor;transform:scaleX(0);
   transform-origin:center;transition:transform .35s ease}
#header .li-link:hover::before{transform:scaleX(1)}
#header .li-link.active::before{transform:scaleX(1)}
#header .cta-telefono-m{display:none}
}

/* HERO ***************************/
@media only screen and (min-width: 0rem) {
#hero{min-height:100vh;max-height:100vh;padding:var(--sectionPadding);display:flex;position:relative;z-index:1;overflow: hidden;}
#hero::before{content:"";width:100%;max-width:17rem;height:12%;background-image:url(../images/decorazione-onde.png);position:absolute;bottom:0;left:0;background-size:contain;background-repeat:no-repeat;z-index:0;opacity:1}
#hero .container{width:100%;max-width:80rem;margin:0 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(3.75rem,13vw,11.25rem)}
#hero .content{text-align:center;width:100%;max-width:34.625rem;display:flex;flex-direction:column}
#hero .hero-logo{width: 100%;height: auto;}
#hero .hero-title{font-size:clamp(2.4375rem,5.975vw,3.8125rem);font-family:'Urbanist', Arial;font-weight:400;margin:0 0 0;color:#4b667b}
#hero .hero-undertitle{font-size:clamp(1rem,1.95vw,1.5rem);font-family:'Urbanist', Arial;font-weight:400;margin:0 0 0;color:#4b667b}
#hero .background{width:100%;height:100%;display:block;position:absolute;top:0;left:0;z-index:-2}
#hero .background img{width:100%;height:100%;object-fit:cover;object-position:top;position:absolute;top:0;left:0}
}
@media only screen and (min-width: 64rem) {
   #hero::before{max-width:40rem}
}
/* HERO - animazioni */
#hero .hero-logo,#hero .hero-title,#hero .hero-undertitle{opacity:0;transform:translateY(30px)}
#hero .hero-logo{animation:fadeUp .9s ease forwards}
#hero .hero-title{animation:fadeUp .9s ease forwards;animation-delay:.25s}
#hero .hero-undertitle{animation:fadeUp .9s ease forwards;animation-delay:.5s}
@keyframes fadeUp {
from{opacity:0;transform:translateY(30px)}
to{opacity:1;transform:translateY(0)}
}

/* INTRO *****************************/
#intro{padding:var(--sectionPadding);position: relative;}
#intro::before{content:"";width:100%;max-width: 17rem;height:0;background-image:url(../images/decorazione-intro01.jpg);position:absolute;bottom:15%;left:-26px;background-size:contain;background-repeat:no-repeat;z-index:0;opacity:1}
#intro .container{width:100%;max-width:var(--mobileContainerWidth);margin:auto;display:flex;flex-direction:column;align-items:center;gap:clamp(3rem,6vw,4rem)}
#intro .content{text-align:left;width:100%;max-width:55rem;display:flex;flex-direction:column;align-items:flex-start}
#intro .title span{font-size: clamp(1.5375rem, 7.9vw, 2.6rem);line-height:0px!important}
#intro .text{margin-bottom:1rem}
#intro .text:last-of-type{margin-bottom:2rem}
#intro .picture{position:relative}
#intro .picture img{width:100%;height:auto}
#intro .picture01 img{width:100%;height:auto}
#intro .picture02 img{width:100%;height:auto}
#intro .content-text{margin: auto 0;}
#intro .decorazione-intro02{width: 100%;margin: auto;position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center}
#intro .decorazione-intro02 div{font-size: min(.5vw, 0.7rem);width: 100%;height: 0em}
#intro .decorazione-intro02 div img{position: absolute;width:14%;max-width:30em;height: auto;transform: translateY(20%);right: 0;z-index:0}
/* 1024px */
@media only screen and (min-width: 64rem) {
#intro::before{height:69%}
#intro .container{max-width:80vw;flex-direction:row;justify-content:space-between;align-items:stretch}
#intro .content{padding:3.75rem 0;align-self:center}
#intro .group-img{display:flex;flex-direction:row;gap:4rem;align-items: center}
#intro .picture img{width:100%;height:75%}
#intro .picture02 img{width:80%;height:auto;}
#intro::before{max-width:70rem}
}
/* 1760px */
@media only screen and (min-width: 110rem) {
#intro .picture img{width:100%;height:100%}
}

/* SERVIZI *******************************/
#servizi{padding:var(--sectionPadding);position:relative;background-color: #0187a4;margin:0}
#servizi::before{content:"";width:100%;height:100%;background-image:url(../images/bg-marmo.png);position:absolute;bottom:0;left:0;background-size:cover;background-repeat:repeat;z-index:0;opacity:1}
#servizi .container{width:100%;max-width:var(--mobileContainerWidth);margin:auto;display:flex;flex-direction:column;align-items:center;gap:clamp(3rem,6vw,4rem);
   position:relative}
#servizi .content-text .topper{color:#fff}
#servizi .title{color:#fff;}
#servizi .title span{font-size: clamp(1.5375rem, 7.9vw, 2.6rem);color:#fff}
#servizi .text{color:#fff;margin-bottom:1rem}
#servizi .list{list-style:none;padding:0 1rem;margin:0;color:#fff;font-family:'Poppins',sans-serif;letter-spacing:1px}
#servizi .list li{position:relative;padding-left:42px;margin-bottom:18px;font-size:18px;line-height:1.5}
#servizi .list li::before{content:"";position:absolute;left:0;top:4px;width:24px;height:24px;background-image:url(../images/check.png);
   background-repeat:no-repeat;background-position:center;background-size:contain}
#servizi .content-img{display:flex;flex-direction:column;gap:25px;margin: auto 0;}
#servizi .box{position:relative;height:300px;border-radius:18px;overflow:hidden;background-size:cover;background-position:center;background-repeat:no-repeat;
   -webkit-box-shadow: 1px 4px 22px 1px rgba(255, 255, 255, 0.124);box-shadow: 1px 4px 22px 1px rgba(255,255,255,0.124);}
#servizi .box:nth-child(1){background-image:url(../images/implantologia.jpg)}
#servizi .box:nth-child(2){background-image:url(../images/laser.jpg)}
#servizi .box:nth-child(3){background-image:url(../images/tac.jpg)}
#servizi .box::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,#000000b3,#00000020)}
#servizi .overlay{position:relative;z-index:2;height:100%;padding:20px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;text-align:right;}
#servizi .overlay h3{margin:0 0 10px;font-size:1.75rem;font-weight:700;letter-spacing:10px}
#servizi .overlay p{margin:0;max-width:580px;font-size:1rem;line-height:1.6}
#servizi .decorazione-servizi01{width: 100%;margin: auto;position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center}
#servizi .decorazione-servizi01 div{font-size: min(.5vw, 0.7rem);width: 100%;height: 0em}
#servizi .decorazione-servizi01 div img{position: absolute;width: 44%;max-width: 44em;height: auto;bottom: -159px;left: -100px;z-index:0}
#servizi .decorazione-servizi02{width: 100%;margin: auto;position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center}
#servizi .decorazione-servizi02 div{font-size: min(.5vw, 0.7rem);width: 100%;height: 0em}
#servizi .decorazione-servizi02 div img{position: absolute;width:9%;max-width:8em;height:auto;transform: translateY(35%);right:50px;z-index:0}
/* 1024px */
@media only screen and (min-width: 64rem) {
#servizi{margin:0 1rem}
#servizi .container{max-width:80vw;flex-direction:row;justify-content:space-around;align-items:stretch}
#servizi .list{padding:0}
#servizi .overlay{padding:35px}
}

/* ACCESSIBILITA *****************************/
#accessibilita{padding:var(--sectionPadding);position: relative;}
#accessibilita::before{content:"";width:100%;max-width: 17rem;height:0;background-image:url(../images/decorazione-accessibilita01.png);position:absolute;bottom:15%;right:20px;background-size:contain;background-repeat:no-repeat;z-index:0;opacity:1}
#accessibilita .container{width:100%;max-width:var(--mobileContainerWidth);margin:auto;display:flex;flex-direction:column;align-items:center;gap:clamp(3rem,6vw,4rem)}
#accessibilita .content-img{width:100%;display:flex;flex-direction:column;align-items:center;gap:2rem;}
#accessibilita .title {max-width:40.625rem;font-size: clamp(1.7rem, 7vw, 4rem);}
#accessibilita .text{margin-bottom:1rem}
#accessibilita .text:last-of-type{margin-bottom:2rem}
#accessibilita .list{list-style:none;padding:0;margin:0;font-family:'Poppins',sans-serif;letter-spacing:1px;max-width:40.625rem}
#accessibilita .list li{position:relative;padding-left:42px;margin-bottom:18px;font-size:16px;line-height:1.5}
#accessibilita .list li::before{content:"";position:absolute;left:0;top:4px;width:24px;height:24px;background-image:url(../images/check-primary.png);
   background-repeat:no-repeat;background-position:center;background-size:contain}
#accessibilita .picture{position:relative}
#accessibilita .picture img{width:100%;height:100%;}
#accessibilita .picture01 img{width:100%;height:auto;}
#accessibilita .picture02 img{width:100%;height:auto;}
#accessibilita .content-text{margin: auto 0;}
/* ACCESSIBILITA - video */
#accessibilita .youtube-lite{width:100%;aspect-ratio:16 / 9;position:relative;overflow:hidden;background-color:#000}
#accessibilita .youtube-lite-button{width:100%;height:100%;padding:0;border:0;display:block;position:relative;cursor:pointer;background:transparent}
#accessibilita .youtube-lite-button img{width:100%;height:100%;display:block;object-fit:cover}
#accessibilita .youtube-play{width:138px;height:104px;border-radius:24px;background-color:#0187a4f2;position:absolute;top:50%;left:50%;z-index:2;transform:translate(-50%,-50%);box-shadow:0 4px 18px #ffffff40}
#accessibilita .youtube-play::before{content:"";position:absolute;top:50%;left:52%;transform:translate(-50%,-50%);border-top:20px solid transparent;border-bottom:20px solid transparent;border-left:34px solid #fff}
#accessibilita .youtube-lite iframe{width:100%;height:100%;display:block;border:0}
/* 1024px */
@media only screen and (min-width: 64rem) {
#accessibilita::before{height:65%}
#accessibilita .container{max-width:80vw;flex-direction:row;justify-content:space-around;align-items:stretch}
#accessibilita .content-img{width:55%}
#accessibilita .group-img{display:flex;flex-direction:row;gap:4rem;align-items: center;}
#accessibilita::before{max-width:5rem;right:40px;}
}

/* SANIFICAZIONE *****************************/
#sanificazione{padding:clamp(1.75rem, 2.82vw, 6.25rem) 0 clamp(2.5rem, 6.82vw, 6.25rem);position: relative;}
#sanificazione .container{width:100%;max-width:var(--mobileContainerWidth);margin:auto;display:flex;flex-direction:column;align-items:center;gap:clamp(3rem,6vw,4rem)}
#sanificazione .content-img{width:100%;display:none;flex-direction:column;align-items:center;gap:2rem;}
#sanificazione .title {max-width:40.625rem;font-size: clamp(1.7rem, 7vw, 4rem)}
#sanificazione .text{margin-bottom:1rem}
#sanificazione .text:last-of-type{margin-bottom:2rem}
#sanificazione .picture{position:relative}
#sanificazione .picture img{width:100%;height:auto}
#sanificazione .content-text{margin: auto 0;}
/* 1024px */
@media only screen and (min-width: 64rem) {
#sanificazione .container{max-width:80vw;flex-direction:row;justify-content:space-around;align-items:stretch}
#sanificazione .content-img{display:flex;width:50%}
#sanificazione .group-img{display:flex;flex-direction:row;gap:4rem;align-items: center;}
}

/* GALLERY *****************************/
/* CAROUSEL ********************************/
#gallery{padding:var(--sectionPadding);padding-top:clamp(2rem,5vw,4rem);}
#gallery .gallery-heading{width:80vw;max-width:55rem;margin:0 auto clamp(2.5rem,5vw,4rem);text-align:center}
#gallery .gallery-heading .topper{margin-left:auto;margin-right:auto;justify-content:center}
#gallery .gallery-heading .title{margin-left:auto;margin-right:auto}
#gallery .gallery-heading .title span{font-size: clamp(1.5375rem, 7.9vw, 3.4rem);line-height:0px!important}
#gallery .gallery-heading .text{max-width:52rem;margin:.75rem auto 0;padding:0}
.carousel-wrapper{width:80vw;margin:0 auto;overflow:hidden}
.carousel-window{overflow:hidden}
.carousel-track{display:flex;touch-action:pan-y pinch-zoom;margin-left:-1rem}
.carousel-item{flex:0 0 50%;min-width:0;padding-left:1rem} /* flex: 0 0 100%;  1 img per slide - occupa il 100% dello spazio */
.carousel-item img{width:100%;border-radius:12px;object-fit:cover}
.carousel-controls{position:relative;display:flex;justify-content:center;gap:1rem;margin-top:1.5rem} /* position:absolute;top:50%;left:50%;transform:translate(-50%,-50%); */
.btn-prev,.btn-next{min-width:9rem;padding:.85rem 1.75rem;border:0;border-radius:4px;background:linear-gradient(90deg,var(--primary) 0%,var(--primaryLight) 100%);color:var(--bodyTextColorWhite);cursor:pointer;font-family:'Poppins',sans-serif;font-size:.75rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;box-shadow:0 8px 20px rgba(1,135,164,.2);transition:filter .3s ease,transform .3s ease,box-shadow .3s ease}
.btn-prev:hover,.btn-next:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 12px 25px rgba(1,135,164,.28)}
.btn-prev:active,.btn-next:active{transform:translateY(0)}
.btn-prev:focus-visible,.btn-next:focus-visible{outline:3px solid rgba(1,135,164,.3);outline-offset:3px}
@media only screen and (max-width:37.5rem){
.carousel-item{flex:0 0 100%}
.carousel-controls{gap:.75rem}
.btn-prev,.btn-next{min-width:0;flex:1;padding:.8rem 1rem;letter-spacing:2px}
}

/* CTA EMERGENZA *****************************/
#emergenza-dentale{padding:var(--sectionPadding);position:relative}
#emergenza-dentale .container{width:100%;margin:auto;display:flex;flex-direction:column;align-items:center}
#emergenza-dentale .cta-wrapper{position:relative;width:100%}
#emergenza-dentale .topper{position:absolute;top:-12px;left:clamp(1.5rem,4vw,2.5rem);transform:translateY(-50%);z-index:0;margin-bottom:0}
#emergenza-dentale .cta-box{width:100%;padding:clamp(2.5rem,5vw,4rem) clamp(1.25rem,4vw,3rem);padding-top:clamp(3rem,6vw,4.5rem);
   background-image:linear-gradient(135deg, #90ddee 0%, #0187a4 100%);background-size:cover;background-position:center;background-repeat:no-repeat;
   position:relative;overflow:hidden}
#emergenza-dentale .cta-box::before {content: "";position: absolute;inset: 0;background-image: url("../images/bg-cta.png");background-size: cover;
   background-position: center;background-repeat: no-repeat;opacity: 1;pointer-events: none;z-index: 0;}
#emergenza-dentale .cta-content{display:flex;flex-direction:column;align-items:center;gap:clamp(2rem,4vw,3rem)}
#emergenza-dentale .cta-col{width:100%}
#emergenza-dentale .title{color:var(--bodyTextColorWhite);max-width:none;margin-bottom:clamp(1rem,2vw,1.5rem)}
#emergenza-dentale .text{color:var(--bodyTextColorWhite);margin-bottom:0}
#emergenza-dentale .cta-action-text{font-family:'Urbanist',sans-serif;font-size:clamp(1.8rem,2.5vw,2.2rem);line-height:1.5em;letter-spacing:4px;
   text-transform:uppercase;color:var(--bodyTextColorWhite);margin:0 0 clamp(1rem,2vw,1.5rem);text-align:center}
#emergenza-dentale .cta-phone-link{display:inline-block;text-decoration:none;transition:transform .3s ease}
#emergenza-dentale .cta-phone-link:hover{transform:scale(1.02)}
#emergenza-dentale .cta-phone-link img{width:100%;max-width:40rem;height:auto;display:block}
#emergenza-dentale .cta-col-action{display:flex;flex-direction:column;align-items:center}
/* 1024px */
@media only screen and (min-width: 64rem) {
#emergenza-dentale .container{max-width:80vw}
#emergenza-dentale .cta-content{align-items:center;justify-content:space-around;gap:clamp(2rem,5vw,4rem)}
#emergenza-dentale .cta-col-text{flex:1;max-width:55rem}
#emergenza-dentale .cta-col-action{flex:0 0 auto;max-width:40rem}
#emergenza-dentale .cta-col-action .text{text-align:center;margin-top:30px}
#emergenza-dentale .cta-action-text{text-align:center}
#emergenza-dentale .cta-box{border-radius:18px;padding:clamp(3rem,6vw,12rem) clamp(2rem,4vw,4rem)}
}
@media only screen and (min-width: 64rem) and (max-width: 110rem) {
#emergenza-dentale .cta-col-text{display:flex;flex-direction:column;align-items:center;text-align:center}
}
/* 1760px */
@media only screen and (min-width: 110rem) {
#emergenza-dentale .cta-content{flex-direction:row;align-items:center;justify-content:space-around;gap:clamp(2rem,5vw,4rem)}
}
/* mobile */
@media only screen and (max-width: 63.9375rem) {
#emergenza-dentale .topper{left:35%;transform:translate(-50%,-50%)}
#emergenza-dentale .cta-col-text,#emergenza-dentale .cta-col-action{text-align:center}
#emergenza-dentale .title,#emergenza-dentale .text{text-align:center}
#emergenza-dentale .cta-phone-link{max-width:100%}
}

/* PRIVACY *****************************/
/* PRIVACY - header */
.legal-page a,.legal-page-header a{color:var(--primary);text-decoration:none;transition:color .2s ease}
.legal-page a:hover,.legal-page-header a:hover{color:var(--primaryLight)}
.legal-page-header{background:var(--bodyTextColorWhite);border-bottom:1px solid rgba(61, 57, 59, 0.12);position:sticky;top:0;z-index:100}
.legal-page-header .inner{width:min(920px,92vw);margin:0 auto;padding:1rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.legal-page-header .logo img{display:block;width:clamp(140px,28vw,190px);height:auto}
.legal-page-header .back-home{font-size:.75rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--primary);font-family:'Poppins', sans-serif}
.legal-page-back-home:hover{color:var(--primaryLight)}
/* PRIVACY - content */
.legal-page{width:min(920px,92vw);margin:clamp(2rem,5vw,3.5rem) auto clamp(3rem,6vw,5rem);background:#fff;padding:clamp(1.75rem,4vw,3.25rem);border-radius:4px;box-shadow:0 8px 30px #3d393b0f}
.legal-page .eyebrow{font-family:'Antigua Presidente',sans-serif;font-size:clamp(1.4rem,3vw,1.8rem);color:var(--primary);margin:0 0 .6rem}
.legal-page h1{font-family:'Urbanist',sans-serif;font-size:clamp(1.7rem,4.5vw,2.6rem);font-weight:400;line-height:1.15;letter-spacing:4px;text-transform:uppercase;color:var(--headerColor);margin:0 0 1rem}
.legal-page .updated{font-size:.95rem;color:#3d393bbf;margin:0 0 2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(61, 57, 59, 0.12)}
.legal-page h2{font-family:'Urbanist',sans-serif;font-size:clamp(1.15rem,2.4vw,1.4rem);font-weight:400;letter-spacing:1px;color:var(--primary);margin:2.25rem 0 .9rem}
.legal-page p{margin:0 0 1rem;max-width:48rem}
.legal-page strong{font-weight:700;color:var(--headerColor)}
.legal-page hr{border:0;border-top:1px solid rgba(61, 57, 59, 0.12);margin:2rem 0}
.legal-page .info-block{margin:.35rem 0 1.1rem;padding-left:.1rem}
.legal-page .info-block p{margin:.15rem 0}
.legal-page .info-label{display:block;font-size:.78rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--primary);margin-bottom:.25rem;font-family:'Poppins', sans-serif}
@media (max-width: 640px) {
.legal-page h1{letter-spacing:2px}
.legal-page-header .inner{padding:.85rem 0}
}

/* PAGINA SERVIZI *****************************/
/* PAGINA SERVIZI - sbs */
#sbs-servizi{padding:clamp(8.5rem,14vw,11rem) 5vw clamp(4rem,8vw,7rem);overflow:hidden}
#sbs-servizi .container{width:100%;margin:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2.5rem,6vw,6rem)}
#sbs-servizi .contatti-hero-copy .title{margin:0 0 1.75rem}
#sbs-servizi .contatti-hero-copy>p{font-size:1.05rem;line-height:1.75;color:var(--bodyTextColor);max-width:39rem;margin:0 0 1rem}
#sbs-servizi .contatti-hero-copy .contatti-appointment{font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:2px;font-size:.88rem}
#sbs-servizi .contatti-hero-images{display:flex;flex-direction:column;gap:clamp(1rem,2vw,1.5rem)}
#sbs-servizi .contatti-hero-images picture{display:block}
#sbs-servizi .contatti-hero-images img{width:100%;height:clamp(12rem,22vw,18.75rem);display:block;object-fit:cover;border:0;border-radius:0}
@media only screen and (min-width: 64rem) {
#sbs-servizi .container{width:80vw}
}
@media only screen and (max-width:63.9375rem){
#sbs-servizi .container{grid-template-columns:1fr}
#sbs-servizi .contatti-hero-copy{text-align:center}
#sbs-servizi .contatti-hero-copy .topper{justify-content:center}
#sbs-servizi .contatti-hero-copy>p{margin-left:auto;margin-right:auto}
#sbs-servizi .contatti-hero-images{width:min(38rem,100%);margin:1rem auto 0}
}
@media only screen and (max-width:35rem){
#sbs-servizi{padding-bottom:0}
#sbs-servizi .contatti-hero-images img{height:auto}
}

/* PAGINA CONTATTI *****************************/
/* PAGINA CONTATTI - hero */
#contatti-hero{padding:clamp(8.5rem,14vw,11rem) 5vw clamp(1rem,4vw,5rem);overflow:hidden;position:relative;z-index:1}
#contatti-hero .container{width:100%;margin:auto;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}
#contatti-hero .content{text-align:center;width:100%;margin-bottom:clamp(2.5rem,5vw,3.25rem);display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}
#contatti-hero .flex{flex:none}
#contatti-hero .title-wrapper{display: grid;place-items:center}
#contatti-hero .text{max-width:none}
#contatti-hero .contatti-appointment{font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:2px;font-size:.88rem}
#contatti-hero .pictures{width:100%;display:grid;grid-template-columns:1fr;gap:clamp(1rem,2vw,1.5rem)}
#contatti-hero .picture{width:100%;display:block;overflow:hidden}
#contatti-hero .picture img{width:100%;height:auto;display:block}
@media only screen and (min-width: 37.5625rem) {
#contatti-hero .pictures{grid-template-columns:repeat(2,minmax(0,1fr))}
#contatti-hero .picture img{height:clamp(16rem,27vw,31.875rem);object-fit:cover}
}
@media only screen and (min-width: 64rem) {
#contatti-hero .container{max-width:80vw}
#contatti-hero .content{display:flex;flex-direction:column}
}
@media only screen and (min-width: 81.25rem) {
#contatti-hero .container{flex-direction:column}
#contatti-hero .content{text-align:left;gap:1.25rem;flex-direction:row;align-items:flex-start;justify-content:space-between}
#contatti-hero .flex{width:50%;text-align:end}
#contatti-hero .title-wrapper{display: grid;place-items:start}
}
/* PAGINA CONTATTI - info */
#contatti-info{padding:clamp(4.5rem,9vw,8rem) 5vw}
#contatti-info .contatti-section-heading{width:min(80rem,100%);margin:0 auto clamp(2.5rem,5vw,4.5rem);text-align:center}
#contatti-info .contatti-section-heading .topper{margin-left:auto;margin-right:auto}
#contatti-info .contatti-section-heading .title{font-size:clamp(2rem,5vw,4rem)}
#contatti-info .contatti-cards{width:min(80rem,100%);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
#contatti-info .contatti-card{min-width:0;padding:clamp(1.75rem,3.5vw,3rem);background:rgba(255,255,255,.72);border-top:4px solid var(--primary);box-shadow:0 18px 45px rgba(61,57,59,.08)}
#contatti-info .contatti-card-number img{width:50px;height:auto}
#contatti-info .contatti-card h3{font-size:1.6rem;font-weight:400;letter-spacing:4px;text-transform:uppercase;color:var(--headerColor);margin:.8rem 0 1rem}
#contatti-info .contatti-card p,#contatti-info .contatti-card address{font-style:normal;font-size:.95rem;line-height:1.7;color:var(--bodyTextColor);margin:0 0 1.5rem}
#contatti-info .contatti-card a{color:var(--primary);font-weight:700;line-height:1.5;overflow-wrap:anywhere;text-underline-offset:4px}
@media only screen and (max-width:63.9375rem){
#contatti-info .contatti-cards{grid-template-columns:1fr}
#contatti-info .contatti-card{text-align:center}
}
@media only screen and (max-width:35rem){
#contatti-info .contatti-section-heading .title{letter-spacing:6px}
}
.decorazione-intro02{width: 100%;margin: auto;position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center}
.decorazione-intro02 div{font-size: min(.5vw, 0.7rem);width: 100%;height: 0em}
.decorazione-intro02 div img{position: absolute;width:14%;max-width:30em;height: auto;transform: translateY(20%);right: 0;z-index:-1}

/* FOOTER *****************************/
#footer{position:relative;background-color:var(--headerColor);padding:90px 20px 20px 10px;overflow:hidden}
#footer::before{content:"";position:absolute;inset:0;opacity:.02;background-image:url(../images/bg-footer.png);background-size:cover;background-position:center;background-repeat:no-repeat;pointer-events:none;z-index:0}
#footer .container{position:relative;z-index:1;width:100%;max-width:80rem;margin:auto;display:flex;flex-direction:column;gap:clamp(2rem,4vw,3rem)}
#footer .footer-grid{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,3.5rem);align-items:center}
#footer .footer-title{font-family:'Urbanist',sans-serif;font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700;line-height:1.2em;margin:0 0 clamp(1.25rem,2.5vw,1.75rem);color:var(--bodyTextColorWhite);letter-spacing:8px;text-transform:uppercase}
#footer .footer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}
#footer .footer-list-pages .footer-link{text-decoration:underline}
#footer .footer-list-legal{margin-top:clamp(1.5rem,3vw,2rem)}
#footer .footer-link{font-family:'Poppins',sans-serif;font-size:1rem;line-height:1.5em;text-decoration:none;text-transform:uppercase;letter-spacing:2px;color:var(--bodyTextColorWhite);display:inline-block;transition:color .3s}
#footer .footer-list-legal .footer-link{text-transform:none;letter-spacing:1px;font-family:'Poppins',sans-serif}
#footer .footer-link:hover{color:var(--primary)}
#footer .footer-logo-link{display:inline-block;margin:0 auto clamp(1.25rem,2.5vw,1.75rem)}
#footer .footer-logo{width:100%;max-width:25rem;height:auto;display:block;margin:0 auto}
#footer .footer-tagline{font-family:'Poppins',sans-serif;font-size:var(--bodyFontSize);line-height:1.5em;letter-spacing:1px;color:var(--bodyTextColorWhite);margin:0 auto;text-align:center}
#footer .footer-col-contact{font-style: normal;text-align:right}
#footer .footer-contact-cta{font-family:'Poppins',sans-serif;font-size:1.3rem;line-height:1.5em;letter-spacing:1px;color:var(--bodyTextColorWhite);margin:0 0 clamp(1rem,2vw,1.25rem)}
#footer .footer-contact-block{font-family:'Poppins',sans-serif;font-size:var(--bodyFontSize);line-height:1.5em;letter-spacing:1px;color:var(--bodyTextColorWhite);margin:0 0 clamp(1rem,2vw,1.25rem)}
#footer .footer-contact-block:last-child{margin-bottom:0}
#footer .footer-contact-link{font-size:inherit;letter-spacing:1px;text-transform:none}
#footer .footer-divider{width:100%;margin:0;border:none;border-top:2px solid rgba(255,255,255,.18)}
#footer .footer-copyright{font-family:'Poppins',sans-serif;font-size:clamp(.75rem,1.5vw,.875rem);line-height:1.5em;letter-spacing:1px;color:rgba(255,255,255,.75);margin:0;text-align:center}
/* mobile */
@media only screen and (max-width: 63.9375rem) {
#footer .footer-grid{display:flex;flex-direction:column;align-items:center;}
#footer .footer-col-brand{order:1}
#footer .footer-col-links{order:2}
#footer .footer-title{text-align:center}
#footer .footer-list{align-items:center}
#footer .footer-col-contact{order:3;text-align:center}
#footer .footer-link{padding:.25rem 0}
}
/* 1024px */
@media only screen and (min-width: 64rem) {
#footer .footer-col-brand{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}
#footer .footer-tagline{text-align:center}
#footer .footer-divider{margin:0}
#footer .container{max-width:80vw}
#footer .footer-grid{grid-template-columns:repeat(3,1fr);gap:clamp(2rem,4vw,3.5rem)}
}
