﻿


html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

.smooth {
    transition-duration: 500ms;
}

*, *::before, *::after {
    box-sizing: border-box;
}

b {
    font-weight: 600;
    clear: both;
}

.spazio {
    height: 100px;
}

.grecaptcha-badge {
    display: none;
}

.sectionCentrale.left {
    text-align: left;
}

.lingua {
    display: flex;
    align-items: center;
    position: relative;
    cursor: pointer;
}

    .lingua .contenitorelinguascelta {
        display: flex;
    }

.contenitorelingua {
    display: none;
    position: absolute;
    bottom: -65px;
    width: 75px;
    left: -34px;
    background-color: white;
    border-radius: 9px;
    z-index: 1;
}

    .contenitorelingua.vedi {
        display: block;
    }

    .contenitorelingua a {
        display: flex;
        color: #161615;
        padding: 3px 10px;
        border-radius: 9px;
    }

        .contenitorelingua a:hover {
            background-color: #efefed;
        }

.premiofixed {
    position: fixed;
    bottom: 50px;
    left: 100px;
    max-width: 76px;
    z-index: 5;
}

    .premiofixed img{
        width:100%;
        display:block;
    }


    div.SnippetBreadCrumbs {
        position: relative;
        width: 100%;
        text-align: center;
        margin: 50px 0px;
    }

    div.SnippetBreadCrumbs ol {
        list-style: none;
        margin: 0px;
        padding: 0px;
        display: inline-block;
    }

        div.SnippetBreadCrumbs ol li {
            display: inline-block;
        }

    div.SnippetBreadCrumbs a {
        text-decoration: none;
        font: normal normal 400 16px/28px Jost;
        color: #161615;
        margin: 0 15px;
    }

.SnippetSelezionato {
    color: #32C9C0;
}


.footer2linkregione {
    display: flex;
    flex-flow: wrap;
    align-items: center;
    gap: 10px;
    justify-content: center;
}

    .footer2linkregione img {
        height: 40px;
        display: block;
        mix-blend-mode: darken;
    }

    .footer2linkregione a {
        color: #161615;
    }

.containerFooter.center {
    align-items: center;
}

.borderbottom {
    border-bottom: 1px solid #32C9C0;
}

.menu a.menuinterno.mobile {
    display: none;
}

    body {
        margin: 0px;
        font-size: 14px;
        font-family: 'Jost', sans-serif;
        animation: fadeIn 2s both;
        overflow-x: hidden;
    }

h1, h2, h3, h4, h5 {
    margin: 0px;
}

a {
    text-decoration: none;
}

.container2.maxwidth1200 {
    max-width: 1200px;
}

.splide__pagination {
    display: none;
}

.margintop{
    margin-top:20px;
}
.margintop100 {
    margin-top: 50px;
}


.section.nomargintop {
    margin-top: 0px;
}

.none {
    display: none;
}

    .container {
        margin: auto;
        padding: 0px 30px;
        box-sizing: border-box;
        width: 100%;
        max-width:2000px;
    }

.container.padding100 {
    padding: 0px 100px;
}

.logo img.none {
    display: none;
}

.logo img {
    display: block;
    height: 30px;
    /* margin: 30px 0px; */
}

.prenota {
    margin-left: auto;
    display: flex;
}

.elencobutton {
    font: normal normal 500 14px/28px Jost;
    letter-spacing: 2.45px;
    color: #093959;
    text-transform: uppercase;
    text-decoration:underline;
}

.container2 {
    margin: auto;
    padding: 0px 100px;
    box-sizing: border-box;
    width: 100%;
    max-width: 1800px;
}

.padding30 {
    padding: 0px 30px;
}

.margintop50{
    margin-top:50px;
}

.margintop30 {
    margin-top: 30px;
}
.margintop20 {
    margin-top: 20px;
}

.marginleft20{
    margin-left:20px;
}
.marginleft200 {
    margin-left: 200px;
}

.marginright200 {
    margin-right: 200px;
}

.marginright10 {
    margin-right: 10px;
}

.positionrelative {
    position: relative;
}

.allegatiimmagini .bloccoimmobile {
    height: 100%;
}

.allegatiimmagini .immaginirealizzazioniImg {
    height: 100%;
}

.sfondogruppo {
    position: absolute;
    left: -50px;
}

    .sfondogruppo.dx {
        position: absolute;
        right: -50px;
        left: initial;
        top: -200px;
    }

.mask {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: hsl(0deg 0% 0% / 20%);
    z-index: 1;
}



.popup-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    justify-content: center;
    align-items: center;
    z-index: 999;
    overflow-y: auto;
}

.popup-container {
    background-color: white;
    border-radius: 8px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
    overflow: hidden;
    width: 30em;
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.3s ease-in-out;
    overflow-y: auto;
}

.popup-card {
    padding: 20px;
    text-align: center;
}

    .popup-card img {
        width: 100%;
        display: block;
        max-height: 30vh;
        object-fit: cover;
    }

    .popup-card .pulsante {
        margin: auto;
        margin-top: 20px;
    }

    .popup-card h2 {
        font: normal normal 400 30px/40px Forum;
        text-transform: uppercase;
        letter-spacing: -0.48px;
        color: #093959;
    }

    .popup-card p {
        font: normal normal 400 16px/22px Jost;
        letter-spacing: 0px;
        color: #161615;
        margin: 0px;
    }

#close-popup {
    background-color: #fff;
    color: black;
    border: none;
    padding: 10px 10px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 28px;
    position: absolute;
    right: 0;
}



.c-scroll-container {
    padding: 10px 50px;
    position: absolute;
    bottom: -50px;
    width: 100%;
}
.c-scroll-indicator {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
}
.c-scroll-indicator_value {
    display: inline-block;
    width: 1px;
    height: 100px;
    background-color: #cfd6d9;
    position: relative;
    overflow: hidden;
}
    .c-scroll-indicator_value span {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        background-color: #32C9C0;
        animation: scrollIndicator 1.4s cubic-bezier(.645,.045,.355,1) infinite;
    }
.c-scroll-indicator_label {
    color: white;
    text-align: center;
    margin-bottom: 20px;
    font-size: 1.2vw;
    /* text-decoration: underline; */
    border-bottom: 1px solid white;
    letter-spacing: 0.1em;
    z-index: 5;
    cursor: pointer;
}

@keyframes scrollIndicator {
    0% {
        transform: translate3d(0,-102%,0)
    }
    69.9% {
        transform: translate3d(0,102%,0)
    }
    70% {
        transform: translate3d(0,-102%,0)
    }
    to {
        transform: translate3d(0,-102%,0)
    }
}


.header {
    padding: 23px 100px;
    position: fixed;
    z-index: 6;
    display: block;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    background: #EFEFED;
    transition: all 1500ms;
    opacity: 1;
    top: 0px;
    padding-top: 45px;
}

.headerridotto {
    padding: 2px 30px;
    position: fixed;
    display: block;
    width: 100%;
    box-sizing: border-box;
    background: #32c9c0;
    transition: all 1500ms;
    opacity: 1;
    top: 0px;
    color: white;
    gap: 10px;
    text-align: center;
    letter-spacing: -0.5px;
    z-index: 100;
}

    .headerridotto a {
        text-decoration: underline;
        color: white;
    }   


        .header.headerWhite .menu a {
            color: #000;
        }

#MenuPrincipaleResponsivo {
    display: none;
}

.MenuPrincipale {
    display: flex;
    align-items: center;
}

.flexmenu {
    /* position: absolute; */
    /* left: 50px; */
    display: flex;
    justify-content: center;
    width: 100%;
    z-index: 100;
    align-items: center;
}

.menu a.menuinterno {
    display: block;
    margin: 15px 0px;
    text-decoration: none;
    position: relative;
    font: normal normal normal 6vh/6.5vh Forum;
    letter-spacing: -0.72px;
    color: #093959;
    width: fit-content;
}

    .menu a > span {
        color: #32C9C0;
    }

.header.headerInvisible .menulinkinterno a::before {
    background-color: #093959;
}

.menulinkinterno a::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 2px;
    background-color: #093959;
    scale: 0 1;
    transform-origin: left;
    transition: scale 0.35s;
}

    .menu a:hover::before{
        scale:1;
    }

.menu a.MenuSelezionato::before {
    scale: 1;
}

.menu > input + div {
    position: fixed;
    width: 0px;
    height: 100%;
    position: fixed;
    background-color: #efefed;
    right: 0;
    top: 0px;
    transition-duration: 320ms;
    overflow-y: auto;
    display: flex;
}

    .menu > input + div.widthVar {
        width: 100%;
    }

.menu > div {
    display: flex;
}

.menulink {
    display: flex;
    width: 50%;
    flex-flow: column;
    padding: 50px 100px;
    justify-content: center;
    padding-top: 100px;
    margin-top: -100px;
}

.menuprenotazioni {
    background-color: #d0e8e5;
    width: 50%;
    display: flex;
    flex-flow: column;
    padding: 50px 100px;
    justify-content: space-around;
    padding-top: 100px;
    position: relative;
    /*    margin-top: -100px;
*/
}

.menu a.menuinternocontatti {
    font: normal normal 500 20px/28px Jost;
    letter-spacing: 2.5px;
    color: #093959;
    text-transform: uppercase;
    position: absolute;
    bottom: 50px;
}



.menucontatti {
    position: absolute;
    right: 0px;
    padding: 0px 30px;
}

.logoezona {
    display: flex;
    position: absolute;
    /* margin: auto; */
    /* width: 100%; */
}

.blocconewsletter {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

    .blocconewsletter h3 {
        font: normal normal normal 10vh/10vh Forum;
        letter-spacing: -1.48px;
        color: #32C9C0;
    }

    .blocconewsletter > div {
        gap: 30px;
        display: flex;
        flex-flow: wrap;
    }

.blocconewsletterpulsanteinterno {
    display: flex;
    width: 100%;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    margin-top: 30px;
    gap: 20px;
    text-align: center;
}


.blocconewsletterpulsanteinput {
    display: block;
    flex: 1;
    background-color: #efefed;
    border: none;
    border-bottom: 1px solid #32C9C0;
    margin-right: 20px;
    outline: none;
    font: normal normal 400 30px/33px Forum;
    letter-spacing: 0px;
    color: #161615;
}


.blocconewsletterpulsanteinputfooter {
    display: block;
    flex: 1;
    background-color: #efefed;
    border: none;
    border-bottom: 1px solid #32C9C0;
    margin-right: 20px;
    outline: none;
    font: normal normal 400 16px/24px Jost;
    letter-spacing: 0.45px;
    color: #161615;
}

.blocconewsletterpulsantefooter {
    display: flex;
    flex-flow: wrap;
}

.footeritem2 a.pulsantefooter {
    background-color: #093959;
    z-index: 2;
    border-radius: 50%;
    color: white;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

 .iconesocial  {
    
    display: flex;
    gap: 20px;
}

.footeritem2 .iconesocial a {
    font-size: 20px;
    color: #32C9C0;
}

span.LabelLognewsletter {
    display: block;
    margin-top: 20px;
    width: 100%;
}


.LabelMenuPrincipale {
    cursor: pointer;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
}

    .LabelMenuPrincipale .material-icons-outlined {
        font-size: 40px;
        line-height: inherit;
    }

.MenuPrincipaletesto {
    font-size: 11px;
    margin-top: -5px;
}


div.first {
    position: relative;
    height: 100vh;
    margin: auto;
    width: 100%;
   /* overflow: hidden;*/
    box-sizing: border-box;
}

.first.dettaglio {
    height: 80vh;
}

.mySlides2 {
    position: absolute;
    height: calc(100% - 200px);
    width: calc(100% - 200px);
    transition: all 1500ms;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 100px;
    margin-bottom: 0px;
    scale: 1;
}

    .mySlides2.fullscreen {
        position: absolute;
        height: 100%;
        width: 100%;
        margin: 0px;
        scale: 1.5;
        cursor: pointer;
        z-index: 5;
    }

.mySlides2.fullscreen .claimHomeCamere {
    opacity: 0;
}





.claimHomeCamere {
    position: absolute;
    left: -40px;
    z-index: 2;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    /* padding: 15px; */
    text-align: center;
    opacity: 1;
}

.cerchio180 {
    width: 180px;
    height: 180px;
}

.claimHomecerchio {
    position:absolute;
    background-color: #093959;
    z-index: 2;
    border-radius: 50%;
    -webkit-transition: -webkit-transform .3s cubic-bezier(.4,0,.2,1);
    transition: -webkit-transform .3s cubic-bezier(.4,0,.2,1);
    -o-transition: transform .3s cubic-bezier(.4,0,.2,1);
    transition: transform .3s cubic-bezier(.4,0,.2,1);
    transition: transform .3s cubic-bezier(.4,0,.2,1),-webkit-transform .3s cubic-bezier(.4,0,.2,1);
}

.claimHometesto {
    color: white;
    z-index: 2;
}


.claimHomeCamere:hover .claimHomecerchio {
    -webkit-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
}

.logoiniziale {
    fill: white;
    height: fit-content;
    width: 30vw;
    margin-top: 1vw;
}



.claimDisponibilita {
    z-index: 2;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    /* padding: 15px; */
    text-align: center;
    height: 0px;
}

.claimDisponibilitacerchio {
    position: absolute;
    background-color: #093959;
    z-index: 2;
    border-radius: 50%;
    -webkit-transition: -webkit-transform .3s cubic-bezier(.4,0,.2,1);
    transition: -webkit-transform .3s cubic-bezier(.4,0,.2,1);
    -o-transition: transform .3s cubic-bezier(.4,0,.2,1);
    transition: transform .3s cubic-bezier(.4,0,.2,1);
    transition: transform .3s cubic-bezier(.4,0,.2,1),-webkit-transform .3s cubic-bezier(.4,0,.2,1);
}

.claimDisponibilitatesto {
    color: white;
    z-index: 2;
    text-transform: uppercase;
}

.justifyend {
    justify-content: end;
}


.claimDisponibilita:hover .claimDisponibilitacerchio {
    -webkit-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
}




.claimHome {
    z-index: 2;
    display: flex;
    margin-left: 50px;
    flex-flow: column;
    text-align: center;
    margin-right: 50px;
    transition: all 1500ms;
    /*max-width:900px;*/
}

    .claimHome.widthvw {
        max-width: 80vw;
    }

    .claimHome h1.upper {
        text-transform: uppercase;
    }

        .claimHome h1 {
            font: normal normal normal 60px/66px Forum;
            letter-spacing: -0.6px;
            color: #FFFFFF;
/*            text-transform:uppercase;
*/        }

    .claimHome h3 {
        font: normal normal normal 34px/42px Forum;
        color: #FFFFFF;
        text-transform: uppercase;
        font-size: 1.5vw;
        line-height: initial;
    }

.sfondonero {
    position: absolute;
    background-color: rgb(0 0 0 / 20%);
    width: 100%;
    height: 100%;
    z-index: 1;
}

.mySlidesHomeVideo {
    position: absolute;
    height: 100%;
    width: 100%;
    transition: all 1500ms;
    object-fit: cover;
}

.section {
    margin: 150px 0px;
}
    .section.nomargin {
        margin: 0px;
    }


.vertical-top {
    background-color: #32C9C0;
    margin-bottom: 20px;
    content: '';
    display: inline-block;
    width: 1px;
    height: 100px;
}

    .vertical-top.ridotto {
        height: 50px;
    }

.immaginefull {
    position: relative;
    height: 100%;
    width: 100%;
    transition: all 1500ms;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0px;
}




.sectiongrey {
    padding: 150px 0px;
    background-color: #EAEAEA;
}

.sectionblack {
    padding: 150px 0px;
    background-color: #000;
}

.sfondogruppo{

}


.sectionCentrale {
    margin: auto;
    max-width: 1400px;
    text-align: center;
    align-items: center;
    display: flex;
    flex-flow: column;
}

    .sectionCentrale.full {
        max-width: initial;
    }

    .sectionCentrale h2 {
        font: normal normal 400 80px/90px Forum;
        letter-spacing: -1px;
        color: #093959;
    }

    .sectionCentrale h3 {
        font: normal normal 400 20px/28px Jost;
        letter-spacing: 0px;
        color: #161615;
        text-transform: uppercase;
        letter-spacing: 2px;
    }

    .sectionCentrale h4 {
        font: normal normal 400 52px/60px Forum;
        letter-spacing: -0.27px;
        color: #161615;
    }

    .sectionCentrale p {
        font: normal normal 400 16px/28px Jost;
        letter-spacing: 0px;
    }

.sectionCentrale a{
    color:initial;
}

.maxwidth900 {
    max-width: 900px;
}
.maxwidth600 {
    max-width: 600px;
}
/*.sectionCentrale p.black {
            color: #000000;
        }*/
        .lineaorizzontale {
    height: 1px;
    background-color: black;
    width: 100%;
}


.sectionCentrale.white h3 {
    color: #fff;
}
    .sectionCentrale.white p {
        color: #fff;
    }

.sezioneblocchimisti {
    display: flex;
    justify-content: center;
    flex-flow: wrap;
}

    .sezioneblocchimisti > div {
        width: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 10% 10%;
        box-sizing: border-box;
    }

    .sezioneblocchimisti .black{
        background-color:black;
    }

    .sezioneblocchimisti img {
        display: block;
        width: 100%;
        max-height: 600px;
        height: 100%;
        object-fit: contain;
    }

.tabella {
    /*width: 100%;*/
    display: flex;
    justify-content: center;
    flex-flow: wrap;
}

    .tabella.center {
        align-items: center;
    }



    .tabellaNews {
        display: flex;
        justify-content: center;
        flex-flow: wrap;
        /* align-items: center;*/
    }

    .tabellaNews > div {
        width: 50%;
    }

        .tabellaNews > div.width45 {
            width: 45%;
        }
        .tabellaNews > div.width55 {
            width: 55%;
        }

.bloccodettagliosx.offerta   {
    font: normal normal 400 19px/29px Jost;
    letter-spacing: 0px;
    color: #161615;
}


    .prezzoofferta b {
        font: normal normal 400 30px/28px Jost;
        letter-spacing: 0px;
        color: #093959;
    }


.tabellaImg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tabellaText {
    padding: 100px;
}

    .tabellaText h1 {
        font: normal normal 600 30px/42px Jost;
        letter-spacing: 2px;
        color: #093959;
        text-transform: uppercase;
    }

    .tabellaText h3 {
        font: normal normal 700 16px/26px Jost;
        letter-spacing: 0px;
        color: #161615;
        margin:20px 0px;
    }

    .containerIntElenco {
        width: 50%;
        box-sizing: border-box;
        z-index: 1;
        position: relative;
        display: flex;
    }
.containerIntDescElenco {
    position: relative;
    text-align: left;
    width: 100%;
}

.containerIntElencoImmagine {
    width: 100%;
    display: block;
    height: 100%;
    object-fit: cover;
}

    .containerIntElencoImmagine.contain {
        object-fit: contain;
    }



.containerIntElenco.dx {
    /* padding: 100px; */
    box-sizing: border-box;
    padding-right: 100px;
}

.containerIntElenco.dxnegativo {
    box-sizing: border-box;
    margin-right: -100px;
    background-color: #efefed;
    padding: 100px;
    margin-left: 100px;
    z-index: 2;
    padding-left: 0px;
}

    .containerIntElenco.dx.nopaddingleft{
        padding-left:0px;
    }

.containerIntElenco.sx {
    box-sizing: border-box;
    padding-left: 100px;
}

.containerIntElenco.sxnegativo {
    z-index: 2;
    display: flex;
    align-items: center;
}
    .containerIntElenco.sxnegativo > div {
        background-color: #efefed;
        margin-left: -100px;
        padding: 100px;
        margin-right: 100px;
        padding-right: 0px;
        margin-top: 50px;
        margin-bottom: 50px;
        height: fit-content;
    }

.containerIntDescElencoInternoDiv {
    font: normal normal normal 16px/28px Jost;
    letter-spacing: 1.6px;
    color: #093959;
    text-transform: uppercase;
}

.bloccodettaglioiconetitolo {
    font: normal normal 500 15px/25px Jost;
    letter-spacing: 2px;
    color: #161615;
    text-transform: uppercase;
}

.maxwidth1200 .containerIntElenco.dx {
    padding: 100px 30px;
}

.maxwidth1200 .containerIntElenco.sx {
    padding: 100px 30px;
}

.containerIntDescElencoInterno {
    padding-left: 10vh;
    padding-top: 10vh;
}

.containerIntDescElenco h2 {
    font: normal normal 400 9vh/9vh Forum;
    color: #093959;
    margin: 0px;
    letter-spacing: -3.5px;
}

    .containerIntDescElenco h2 span {
        color: #32C9C0;
    }

.containerIntDescElenco h3 {
    font: normal normal 400 52px/60px Forum;
    letter-spacing: -0.27px;
    color: #161615;
}

    .containerIntDescElenco h3.link {
        width: fit-content;
        cursor: pointer;
    }

.containerIntDescElenco h3.link.active::before {
    scale: 1;
}

        .containerIntDescElenco h3.link::before {
            content: '';
            position: absolute;
            left: 0;
            bottom: -2px;
            width: 100%;
            height: 2px;
            background-color: #093959;
            scale: 0 1;
            transform-origin: left;
            transition: scale 0.35s;
        }

        .containerIntDescElenco h3.link:hover::before {
            scale: 1;
        }

.contenitoreCaribbean {
    position: relative;
    height: 600px;
}

.imagetransition {
    clip-path: inset(0 100% 0 0);
    -webkit-clip-path: inset(0 100% 0 0);
    -webkit-animation: qodef-inactive-image .8s forwards cubic-bezier(.4,0,.2,1);
    animation: qodef-inactive-image .8s forwards cubic-bezier(.4,0,.2,1);
    position: absolute;
    top: 0;
}

    .imagetransition.active {
        -webkit-animation: qodef-active-image .8s forwards cubic-bezier(.4,0,.2,1);
        animation: qodef-active-image .8s forwards cubic-bezier(.4,0,.2,1);
    }

@keyframes qodef-active-image {
    0% {
        clip-path: inset(0 100% 0 0);
        -webkit-clip-path: inset(0 100% 0 0)
    }

    100% {
        clip-path: inset(0 0 0 0);
        -webkit-clip-path: inset(0 0 0 0)
    }
}

@keyframes qodef-inactive-image {
    0% {
        clip-path: inset(0 0 0 0);
        -webkit-clip-path: inset(0 0 0 0)
    }

    100% {
        clip-path: inset(0 0 0 100%);
        -webkit-clip-path: inset(0 0 0 100%)
    }
}


.containerIntDescElenco p {
    font: normal normal 400 16px/26px Jost;
    letter-spacing: 0px;
    color: #161615;
}

.marginleft100{
    margin-left:100px;
}

.sezioneimmagini3 {
    display: flex;
    gap: 50px;
    margin-top: 50px;
}

    .contenitorecerchio{
        position:relative;
    }



.sezioneimmagini3 img, .sezioneimmagini3 video {
    width: 100%;
    display: block;
}

    .sezioneimmagini3 .margintop120{
        margin-top:120px;
    }

    .pulsante {
        font: normal normal 400 14px/22px Jost;
        letter-spacing: 0px;
        color: #161615;
        background-color: transparent;
        border: 1px solid #093959;
        text-transform: uppercase;
        padding: 15px 27px;
        display: flex;
        text-decoration: none;
        transition: all 0.3s linear;
        width: fit-content;
        cursor: pointer;
        align-items: center;
        justify-content: space-between;
        position: relative;
        -webkit-transition: background .3s,border .3s,border-radius .3s,-webkit-box-shadow .3s;
        transition: background .3s,border .3s,border-radius .3s,-webkit-box-shadow .3s;
        -o-transition: background .3s,border .3s,border-radius .3s,box-shadow .3s;
        transition: background .3s,border .3s,border-radius .3s,box-shadow .3s;
        transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-box-shadow .3s;
    }

    .pulsante.arancione {
        background-color: #32C9C0;
        color: white;
        border-color: #32C9C0;
    }
        .pulsante.arancione:after {
            background-color: #32C9C0;
        }
        .pulsante.arancione:hover:after {
            background-color: #32C9C0;
        }
        .pulsante.arancione:hover {
            background-color: #32C9C0;
            color: white;
            border-color: #32C9C0;
        }

    .pulsante.blu {
        background-color: #093959;
        color: white;
        border-color: #093959;
    }

        .pulsante.blu:after {
            background-color: #093959;
        }

        .pulsante.blu:hover:after {
            background-color: #093959;
        }

        .pulsante.blu:hover {
            background-color: #093959;
            color: white;
            border-color: #093959;
        }


    .pulsante:after {
        content: '';
        width: 100%;
        height: 1px;
        background-color: #093959;
        position: absolute;
        bottom: -4px;
        left: 0;
        right: 0;
        display: inline-block;
        -webkit-transition: color .2s ease-out,background-color .2s ease-out,border-color .2s ease-out;
        -o-transition: color .2s ease-out,background-color .2s ease-out,border-color .2s ease-out;
        transition: color .2s ease-out,background-color .2s ease-out,border-color .2s ease-out;
    }

    .pulsante:hover:after {
        -webkit-transform-origin: 100% 50%;
        -ms-transform-origin: 100% 50%;
        transform-origin: 100% 50%;
        -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-animation: animate-btn-line .5s .2s forwards;
        animation: animate-btn-line .5s .2s forwards;
    }

    .pulsante:hover:after {
        background-color: #093959;
    }

    .pulsante:hover {
        color: #fff;
        background-color: #093959;
        border-color: #093959;
    }



    .pulsante > span {
        margin-left: 30px;
    }

.immaginirealizzazioni {
    display: flex;
    flex-flow: wrap;
    margin: 100px 0px;
    transition: all .5s linear;
    gap: 50px;
    justify-content: center;
}

    .immaginirealizzazioni img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
        transform: scale(1.05);
        -webkit-transition: -webkit-transform .8s cubic-bezier(.4,0,.2,1);
        transition: -webkit-transform .8s cubic-bezier(.4,0,.2,1);
        -o-transition: transform .8s cubic-bezier(.4,0,.2,1);
        transition: transform .8s cubic-bezier(.4,0,.2,1);
        transition: transform .8s cubic-bezier(.4,0,.2,1),-webkit-transform .8s cubic-bezier(.4,0,.2,1);
    }

.bloccoimmobile:hover img {
    -webkit-transform: scale(1.000);
    -ms-transform: scale(1.000);
    transform: scale(1.000);
}



    .immaginirealizzazioni .width50{
        width:calc(50% - 50px);
    }

.immaginirealizzazioni .width33 {
    width: calc(33.33% - 50px);
}

.bloccoimmobileDesc {
    margin-top: 30px;
    text-decoration:none;
}

    .bloccoimmobileDesc.center{
        text-align:center;
    }

.offerte .bloccoimmobileDesc h2 {
    font: normal normal 400 30px/40px Forum;
}

.offerte .bloccoimmobileDesc p {
    padding-right: 0px;
}

.bloccoimmobileDesc p a {
    color: #161615;
    text-decoration: underline;
}

.containerIntDescElenco p a {
    color: #161615;
    text-decoration: underline;
}

.bloccoimmobileDesc h2 {
    font: normal normal 400 44px/53px Forum;
    letter-spacing: -0.48px;
    color: #093959;
    text-transform: uppercase;
}

    .bloccoimmobileDesc.evento h2 {
        font: normal normal 500 30px/42px Jost;
        letter-spacing: 2px;
        color: #093959;
        text-transform: uppercase;
    }

    .bloccoimmobileDesc p {
        font: normal normal 400 16px/28px Jost;
        letter-spacing: 0px;
        color: #161615;
        padding-right: 100px;
    }

    .bloccoimmobileDesc > div {
        margin: 10px 0px;
        font: normal normal 400 16px/28px Jost;
        letter-spacing: 0.4px;
        color: #161615
    }

.calendarioRiga {
    border-top: 1px solid #32C9C0;
    padding: 20px 0px;
    display: flex;
    flex-flow: wrap;
    align-items: center;
}

.calendarioData {
    width: 300px;
}
.data {
    display: flex;
    flex-flow: column;
}
.date-day {
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 0px;
    font-size: 50px;
    line-height: initial;
    color: #32C9C0;
    font: normal normal 400 8vh / 8vh Forum;
}

.date-other {
    line-height: initial;
    text-transform: uppercase;
    letter-spacing: 1px;
    /* margin-bottom: 0px; */
    font-size: 16px;
    line-height: initial;
    color: #09395;
}

.calendarioDescrizione {
    flex: 1;
    margin: 0px;
    /*text-transform: uppercase;*/
    /*letter-spacing: -1.5px;*/
}

    .calendarioDescrizione > span {
        line-height: 28px;
        /*text-transform: uppercase;*/
        font-weight: 500;
        font-size: 20px;
        display: block;
    }

    .calendarioDescrizione h4 {
        font: normal normal 400 30px / 38px Forum;
        letter-spacing: -0.27px;
        color: #161615;
    }

    .calendarioDescrizione p {
        font: normal normal 400 16px / 28px Jost;
        letter-spacing: 0px;
        margin:0px;
    }



    .immaginirealizzazioninero {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: calc(100% - 8px);
        height: calc(100% - 8px);
        opacity: 0;
        background: linear-gradient(0deg,rgba(0,0,0,.63) 0,rgba(0,0,0,.24));
        z-index: -1;
        transition: all .5s linear;
    }

.immaginirealizzazioniImg {
    overflow: hidden;
}

.linkrealizzaione h3 {
    position: absolute;
    display: flex;
    z-index: 2;
    top: 0;
    left: 0;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
    align-items: center;
    justify-content: center;
    opacity: 0;
    font: normal normal 500 24px/34px Jost;
    color: #FFFFFF;
    padding: 0px 30px;
    transition: all .5s linear;
}

.linkrealizzaione:hover h3 {
    opacity: 1;
    z-index: 3;
}

.linkrealizzaione:hover .immaginirealizzazioninero {
    opacity: 1;
    z-index: 2;
}

.width50 {
    width: 50%;
    position: relative;
}
    .width50.full {
        width: 100%;
        position: relative;
    }

.bloccoprenota {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    border: 1px solid #32C9C0;
    padding: 70px 50px;
    color: #093959;
}

    .bloccoprenota.servizi {
        border: none;
        padding: 0px;
    }


        .bloccoprenota.servizi h3 {
            font: normal normal 400 8vh/8vh Forum;
            letter-spacing: -3.5px;
        }



    .bloccoprenota h3 {
        font: normal normal 400 8vh/8vh Forum;
        letter-spacing: -1.44px;
    }

    .bloccoprenota h5 {
        font: normal normal 500 22px/24px Forum;
        color: #161615;
        text-align: center;
        max-width: 200px;
    }

    .bloccoprenota h3 span {
        color: #32C9C0;
        display: block;
    }

.margin200 {
    margin-left: 200px;
}

.margin200200 {
    margin-left: 200px;
    margin-right: 200px;
}

.margin400 {
    margin-right: 400px;
}

.bloccodettaglio{
    display:flex;
}

.bloccodettagliosx{
    flex:1;
}

.bloccodettagliotesto{
    padding-right:50px;
}

    .bloccodettagliotesto h1 {
        font: normal normal 400 60px/70px Forum;
        letter-spacing: -2px;
        color: #093959;
    }

    .bloccodettagliotesto > div {
        font: normal normal 400 35px/45px Forum;
        letter-spacing: 0px;
        color: #161615;
        margin: 10px 0px;
    }

    .bloccodettagliotesto p {
        font: normal normal 400 19px/34px Jost;
        letter-spacing: 0px;
        color: #161615;
    }



.iconecontatti2 {
    display: none;
}


.iconecontatti {
    position: absolute;
    right: 0;
    display: flex;
    flex-flow: column;
    height: 100%;
    align-items: center;
    justify-content: center;
    z-index: 5;
}

    .iconecontatti > a {
        border-bottom: 1px solid black;
        padding: 10px;
        width: 100%;
        padding-top: 20px;
        display: block;
        background-color: #efefed;
    }

    .iconecontatti h5 {
        font: normal normal 400 13px/16px Jost;
        letter-spacing: 0px;
        color: #161615;
        text-align: center;
    }

    .iconecontatti img {
        height: 30px;
        display: block;
        margin: auto;
        margin-bottom: 5px;
    }

.bloccodettaglioimmagine {
    margin: 50px 0px;
}

.bloccodettaglioimmagine img {
    display: block;
    width: 100%;
}

.bloccodettagliodx {
    width: 300px;
    border: 1px solid #CCC1BE;
    padding: 30px;
    text-align: center;
    margin-left: 20px;
    height: 100%;
}


.bloccodettaglioservizititolo {
    font: normal normal 400 35px/45px Forum;
    letter-spacing: 0px;
    color: #161615;
}

.bloccodettaglioiconeinterno {
    display: flex;
    flex-flow: column;
    margin-top: 30px;
}

    .bloccodettaglioiconeinterno > div {
        display: flex;
        flex-flow: column;
        align-items: center;
        padding: 0px;
        margin: 30px 0px;
    }

    .bloccodettaglioiconeinterno h5 {
        font: normal normal 500 22px/24px Forum;
        color: #161615;
        text-align: center;
        margin-top: 5px;
    }

    .bloccodettaglioiconeinterno img {
        height: 50px;
        display: block;
    }

    .bloccodettaglioservizi {
        display: flex;
        flex-flow: wrap;
        margin-top: 30px;
        /* width: 200px; */
    gap: 30px;
}

    .bloccodettaglioservizi > div {
        display: flex;
        flex-flow: wrap;
        align-items: center;
        width: calc(50% - 30px);
    }

    .bloccodettaglioservizi img {
        display: block;
        width: 50px;
    }

    .bloccodettaglioservizi h5 {
        font: normal normal normal 18px/22px Jost;
        letter-spacing: 0px;
        color: #161615;
        padding-left: 15px;
    }


    .bloccoprenotadescrizione {
        margin: 20px 0px;
        color: #161615;
        font: normal normal 400 16px/28px Jost;
        display: flex;
    }

        .bloccoprenotadescrizione.margin200 {
            margin-left: 200px;
        }
/*
.bloccoprenota h3 {
    width: 40%;
}*/

.bloccoprenota.servizi h3 {
    width: 100%;
}

.bloccoprenota.servizi p {
    font: normal normal 400 16px/26px Jost;
    letter-spacing: 0px;
    color: #161615;
    display: flex;
}


.bloccoprenota.servizi > div {
    width: 30%;
}

.bloccoprenotaicone {
    display: flex;
    flex-flow: wrap;
    flex: 1;
    justify-content: space-evenly;
}

    .bloccoprenotaicone > div {
        width: 25%;
        display: flex;
        flex-flow: column;
        align-items: center;
        padding: 20px 10px;
    }

    .bloccoprenotaicone img {
        margin-bottom: 20px;
        height:70px;
        display:block;
    }

    .bloccoprenotaicone.end {
        justify-content: end;
    }

    .bloccoprenota.servizi img {
        height: 50px;
    }



    .blocchiservizi {
        display: flex;
        justify-content: space-evenly;
        align-items: center;
        width: 1400px;
        margin-top: 30px;
    }

.blocchiservizi > div{
    width:220px;
    margin:10px;
}

    .blocchiservizi h5 {
        font: normal normal 700 16px/34px Jost;
    }

    .blocchiservizi p {
        font: normal normal 400 16px/26px Jost;
        color: #000000;
    }

.fasciaservizi {
    height: 450px;
    position: relative;
    display: block;
    margin: 10px 0px;
    display: flex;
    align-items: center;
    transition: all 0.5s linear;
    overflow: hidden;
}

    .fasciaservizi.paddingperc{
        padding-right:20%;
    }

    .fasciaservizi img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: all 0.5s linear;
    }

    .fasciaservizi h2 {
        position: absolute;
        font: normal normal 500 24px/34px Jost;
        letter-spacing: 0px;
        color: #FFFFFF;
        text-transform: uppercase;
        margin: 0px 150px;
        z-index:2;
    }

    .fasciaservizi:hover img {
        transform: scale(1.1) rotate(1deg);
    }



.panelservizi {
    z-index: 1;
    position: absolute;
    background: rgb(0,0,0);
    background: linear-gradient(90deg, rgba(0,0,0,0.8099614845938375) 0%, rgba(255,255,255,0) 63%);
    width: 100%;
    height: 100%;
}


    .panelservizi.paddingperc {
        width: calc(100% - 20%);
    }

.footer {
    background-color: #EFEFED;
    border-top: 1px solid #32C9C0;
    border-bottom: 1px solid #32C9C0;
}

.footer2 {
    background-color: #EFEFED;
}

.containerFooter {
    padding: 30px 100px;
    display: flex;
    color: #161615;
    max-width: 1600px;
    margin: auto;
}

    .containerFooter.padding100 {
        padding: 100px 100px;
    }

    .containerFooter > .footeritem1 {
        width: 33.333%;
        flex: inherit;
    }
    .containerFooter > .footeritem2 {
        flex: 1;
        display: flex;
        flex-flow: wrap;
        column-gap: 20px;
    }

.footeritem2 > div {
    flex: 1;
}

.footeritem1 img {
    width: 100%;
    display: block;
    /* padding-right: 50px; */
        max-width: 300px;
        padding-right: 20px;
    }

/*.footeritem2 a.sottolineato > span {
    text-decoration: underline;
}*/

.footeritem2 a.margintop30 {
    margin-top:30px;
}

.containerFooter h3 {
    margin-bottom: 20px;
    font: normal normal normal 30px/33px Forum;
    letter-spacing: 0px;
    color: #161615;
}

.footeritem2 a, .footertext {
    text-decoration: none;
    color: white;
    font: normal normal 400 16px/24px Jost;
    /* letter-spacing: 0.45px; */
    color: #161615;
    margin: 10px 0px;
    display: block;
}

.containerFooter.flex {
    justify-content: space-between;
}

.footer2link{
    display:flex;
}

    .footer2link > a {
        display: block;
        margin-left: 50px;
        color: #161615;
    }

.upper{
    text-transform:uppercase;
}

.containerprogettazione {
    display: flex;
    flex-flow: wrap;
}

.bloccoProgSx {
    width: 35%;
}

.bloccoProgDx {
    flex: 1;
}

.bloccoProgSxSticky {
    position: sticky;
    top: 0px;
    text-align: left;
    box-sizing: border-box;
    color: white;
    display: flex;
    flex-flow: column;
    padding: 100px;
}

    .bloccoProgSxSticky a {
        display: block;
        font: normal normal 300 20px/55px Jost;
        letter-spacing: 0px;
        color: #FFFFFF;
        text-transform: uppercase;
        margin: 10px 0px;
        text-decoration:none;
    }


    .bloccoProgImgfull {
        display: block;
        width: 100%;
    }

.bloccoProgDx h2 {
    font: normal normal 300 45px/55px Jost;
    letter-spacing: 0px;
    color: #FFFFFF;
    text-transform:uppercase;
}

.bloccoProgDx > div{
    position:relative;
}

.bloccoProgDx > div > a {
    position: absolute;
    top:0;
    margin-top:-100px;
}

.bloccoProgDxText {
    display: flex;
    flex-flow: wrap;
}
    .bloccoProgDxText p {
        width: 50%;
        color: white;
        font: normal normal 300 18px/28px Jost;
        letter-spacing: 0px;
        color: #FFFFFF;
        margin: 50px 0px;
        padding-right: 100px;
    }

.bloccoProgImg {
    display: flex;
    flex-flow: wrap;
    margin-left: -5px;
    margin-right: -5px;
}

.bloccoProgImg img{
    width:50%;
    padding:5px;
}

.splide__list {
    transition: all .4s linear;
}

.splide__slide {
    padding-right: 50px;
}

.splide__arrow {
    height: 50px;
    width: 50px;
    background: #143a59;
}

.splide__arrows .splide__arrow svg {
    fill: #fff;
}

.splide__slide img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}


.contatti-icon {
    position: fixed;
    z-index: 100;
    bottom: 30px;
    right: 30px;
    background-color: #000;
    color: white;
    padding: 15px 15px;
    box-sizing: border-box;
    display: block;
    transition: all 0.7s linear;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    flex-flow: row-reverse;
}

    .contatti-icon:hover .icontext {
        margin-right: 0.625rem;
        height: auto;
        width: auto;
        opacity: 1;
    }

    .icontext {
        height: 0;
        width: 0;
        overflow: hidden;
        --tw-text-opacity: 1;
        opacity: 0;
        -webkit-transition: opacity .6s ease-in-out;
        transition: opacity .6s ease-in-out;
    }







.traslateup {
    transition: transform 400ms ease-in-out,opacity 400ms ease-out;
    opacity: 0;
    transform: translateY(50px);
}

    .traslateup.visibile {
        transform: translateY(0);
        opacity: 1;
    }

.traslateopacity {
    transition: transform 800ms ease-in-out,opacity 800ms ease-out;
    opacity: 0;
}

    .traslateopacity.visibile {
        opacity: 1;
    }

.traslaterigth {
    transition: transform 1000ms ease-in-out,opacity 1000ms ease-out;
    opacity: 0;
    transform: translateX(100%);
}

    .traslaterigth.visibile {
        transform: translateX(0);
        opacity: 1;
    }

.traslateleft {
    transition: transform 1000ms ease-in-out,opacity 1000ms ease-out;
    opacity: 0;
    transform: translateX(-100%);
}

    .traslateleft.visibile {
        transform: translateX(0);
        opacity: 1;
    }

.immaginetopbottom {
    clip-path: inset(0 0 100% 0);
    -webkit-clip-path: inset(0 0 100% 0);
    -webkit-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    transform: translateY(-30px);
    will-change: transform;
    -webkit-transition: -webkit-clip-path 1.2s ease,-webkit-transform 1s ease-out;
    transition: -webkit-clip-path 1.2s ease,-webkit-transform 1s ease-out;
    -o-transition: clip-path 1.2s ease,transform 1s ease-out;
    transition: clip-path 1.2s ease,transform 1s ease-out;
    transition: clip-path 1.2s ease,transform 1s ease-out,-webkit-clip-path 1.2s ease,-webkit-transform 1s ease-out;
}

    .immaginetopbottom.visibile {
        clip-path: inset(0 0 0 0);
         -webkit-clip-path: inset(0 0 0 0); 
         -webkit-transform: translateY(0); 
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

.immagineleftright {
    clip-path: inset(0 100% 0 0);
    -webkit-clip-path: inset(0 100% 0 0);
    -webkit-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    transform: translateY(-30px);
    will-change: transform;
    -webkit-transition: -webkit-clip-path 1.2s ease,-webkit-transform 1s ease-out;
    transition: -webkit-clip-path 1.2s ease,-webkit-transform 1s ease-out;
    -o-transition: clip-path 1.2s ease,transform 1s ease-out;
    transition: clip-path 1.2s ease,transform 1s ease-out;
    transition: clip-path 1.2s ease,transform 1s ease-out,-webkit-clip-path 1.2s ease,-webkit-transform 1s ease-out;
}

    .immagineleftright.visibile {
        clip-path: inset(0 0 0 0);
        -webkit-clip-path: inset(0 0 0 0);
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

.transitionleft {
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
    clip-path: inset(0 100% -5px 0);
    -webkit-clip-path: inset(0 100% -5px 0);
    -webkit-transition: -webkit-clip-path 1s ease,-webkit-transform .8s ease-out;
    transition: -webkit-clip-path 1s ease,-webkit-transform .8s ease-out;
    -o-transition: clip-path 1s ease,transform .8s ease-out;
    transition: clip-path 1s ease,transform .8s ease-out;
    transition: clip-path 1s ease,transform .8s ease-out,-webkit-clip-path 1s ease,-webkit-transform .8s ease-out;
    will-change: transform;
}

    .transitionleft.visibile {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
        clip-path: inset(0 0 -5px 0);
        -webkit-clip-path: inset(0 0 -5px 0);
    }




.hero-headline {
    animation: fade-in-hero 1s ease-out 0.3s 1 forwards;
    transform: translateY(50px);
    opacity: 0;
}

@keyframes fade-in-hero {
    100% {
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes animate-btn-line {
    0% {
        -webkit-transform-origin: 0 50%;
        transform-origin: 0 50%;
        -webkit-transform: scaleX(0);
        transform: scaleX(0)
    }

    100% {
        -webkit-transform-origin: 0 50%;
        transform-origin: 0 50%;
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

@keyframes animate-btn-line {
    0% {
        -webkit-transform-origin: 0 50%;
        transform-origin: 0 50%;
        -webkit-transform: scaleX(0);
        transform: scaleX(0)
    }

    100% {
        -webkit-transform-origin: 0 50%;
        transform-origin: 0 50%;
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}


.instagram-feed {
    display: flex;
    flex-flow: wrap;
    gap: 50px;
    margin-bottom: 220px;
}

    .instagram-feed > div {
        flex: 1;
    }

    .instagram-feed a {
        display: block;
        height: 100%;
    }

    .instagram-feed img {
        width: 100%;
        display: block;
        height: 100%;
        object-fit: cover;
    }

.feed2 {
    margin-top: 70px;
}

@media screen and (min-width: 1200px) and (max-width: 1600px) {

    .premiofixed {
        left: 70px;
    }   

    .margin200200 {
        margin-left: 50px;
        margin-right: 50px;
    }

    .margin400 {
        margin-right: 0px;
    }

    .mySlides2 {
        height: calc(100% - 140px);
        width: calc(100% - 140px);
        margin: 70px;
    }

    .cerchio180 {
        width: 150px;
        height: 150px;
    }


    .bloccoprenota h3 {
        font: normal normal 400 6vh/6vh Forum;
    }

    .bloccoprenota h5 {
        font: normal normal 500 19px/21px Forum;
    }

    .bloccoprenotaicone img {
        height: 60px;
    }

    .marginleft200 {
        margin-left: 50px;
    }

    .marginright200 {
        margin-right: 50px;
    }

    .bloccodettaglioiconeinterno img {
        height: 50px;
    }

    .margin200 {
        margin-left: 100px;
    }

    .bloccoprenotadescrizione.margin200 {
        margin-left: 100px;
    }

    .tabellaText {
        padding: 50px;
    }

    .contenitorerichiesta {
        padding: 50px 100px;
    }
}

@media screen and (min-width: 988px) and (max-width: 1199px) {

    .premiofixed {
        bottom: 30px;
        left: 30px;
    }

    .iconecontatti img {
        height: 25px;
    }

    .section {
        margin: 125px 0px;
    }

    .offerte.immaginirealizzazioni .width33 {
        width: calc(50% - 50px);
    }

    .footeritem1 img {
        max-width: 200px;
    }

    .contenitorecalendario {
        max-width: 330px;
    }

    .bloccodettagliodx {
        width: 240px;
    }

    .bloccodettagliotesto h1 {
        font: normal normal 400 42px/50px Forum;
    }
    .bloccodettagliotesto > div {
        font: normal normal 400 28px/36px Forum;
    }

    .containerFooter > .footeritem1 {
        width: 100%;
    }

    .footer2link {
        gap: 50px;
    }
        .footer2link > a {
            margin-left: 0px;
        }

    .containerFooter {
        padding: 30px 30px;
        flex-flow: column;
        gap: 30px;
    }

    .containerFooter.padding100 {
        padding: 100px 30px;
    }

    .header {
        padding: 23px 30px;
        padding-top: 45px;
    }

    .sectionCentrale h2 {
        font: normal normal 400 50px/60px Forum;
    }

    .container2 {
        padding: 0px 30px;
    }

    .margin200200 {
        margin-left: 50px;
        margin-right: 50px;
    }

    .margin400 {
        margin-right: 0px;
    }

    .mySlides2 {
        height: calc(100% - 60px);
        width: calc(100% - 60px);
        margin: 30px;
    }

    .sezioneimmagini3 {
        gap: 30px;
    }

    .instagram-feed {
        gap: 30px;
    }

    .containerIntDescElenco h3 {
        font: normal normal 400 42px/50px Forum;
    }

    .claimHomeCamere {
        left: 0px;
    }

    .cerchio180 {
        width: 150px;
        height: 150px;
    }


    .bloccoprenota h3 {
        font: normal normal 400 6vh/6vh Forum;
    }

    .bloccoprenota h5 {
        font: normal normal 500 19px/21px Forum;
    }

    .bloccoprenotaicone img {
        height: 60px;
    }

    .marginleft200 {
        margin-left: 50px;
    }

    .marginright200 {
        margin-right: 50px;
    }

    .bloccodettaglioiconeinterno img {
        height: 50px;
    }

    .margin200 {
        margin-left: 100px;
    }

    .bloccoprenotadescrizione.margin200 {
        margin-left: 100px;
    }

    .tabellaText {
        padding: 50px;
    }

    .contenitorerichiesta {
        padding: 50px 100px;
    }

}


@media screen and (max-width: 987px) {

    .calendarioRiga {
        flex-flow: column;
        align-items: baseline;
        gap: 10px;
    }

    .calendarioDescrizione {
        flex: initial;
        width: 100%;
    }

    .headerridotto {
        font-size: 13px;
    }

    .premiofixed {
        bottom: 30px;
        left: 30px;
        max-width: 70px;
    }

    .footer2linkregione {
        flex-flow: column;
    }

    .mobiletop81 {
        position: absolute;
        top: 123px;
        right: 0px;
        width: 100px;
        padding: 10px 0px;
        justify-content: center;
    }

    .mobiletop120 {
        position: absolute;
        top: 167px;
        right: 0px;
        width: 100px;
        padding: 10px 0px;
        justify-content: center;
    }

    .splide__slide {
        padding-right: 0px;
    }

    .padding30 {
        padding: 0px;
    }

    .contenitorelingua {
        bottom: -80px;
    }

    .menu a.menuinterno.mobile {
        display: block;
    }

    .splide__arrow--prev {
        left: -25px;
    }

    .splide__arrow--next {
        right: -25px;
    }

    .iconecontatti2 {
        position: absolute;
        right: 30px;
        display: flex;
        flex-flow: column;
        height: auto;
        align-items: center;
        justify-content: center;
        z-index: 5;
    }

        .iconecontatti2 > a {
            border-bottom: 1px solid black;
            padding: 10px;
            width: 100%;
            padding-top: 20px;
            display: block;
            background-color: #efefed;
        }

        .iconecontatti2 img {
            height: 25px;
            display: block;
            margin: auto;
            margin-bottom: 5px;
        }


    .iconecontatti {
        display: none;
    }

    .claimHome h3 {
        font-size: 3vw;
    }

    .c-scroll-indicator_label {
        font-size: 4.2vw;
    }

    .logoiniziale {
        width: 50vw;
    }

    .menu a.menuinterno {
        font: normal normal normal 4vh/4.5vh Forum;
        letter-spacing: -0.40px;
    }

    .instagram-feed {
        flex-flow: column;
        gap: 50px;
        margin-bottom: 0px;
    }

    .feed2 {
        margin-top: 0px;
    }

    .spazio {
        height: 81px;
    }

    .immaginirealizzazioni .width33 {
        width: 100%;
    }

    .tabellaText {
        padding: 30px 0px;
    }

    .bloccodettagliodx {
        display: none;
    }

    .tabellaNews > div.width45 {
        width: 100%;
    }

    .tabellaNews > div.width55 {
        width: 100%;
    }

    .bloccodettagliotesto h1 {
        font: normal normal 400 42px/50px Forum;
    }

    .bloccodettagliotesto > div {
        font: normal normal 400 28px/36px Forum;
    }

    .marginleft200.splide {
        margin-left: 30px;
        margin-right: 30px;
    }

    .splide__list {
        gap: 0px;
    }

    .bloccodettaglioservizi {
        justify-content: space-between;
    }

        .bloccodettaglioservizi > div {
            flex-flow: column;
        }

        .bloccodettaglioservizi h5 {
            text-align: center;
            padding-top: 10px;
            padding-left: 0px;
        }

    .bloccodettaglio {
        flex-flow: column;
    }

    .bloccodettagliotesto {
        padding-right: 0px;
    }

    .marginleft200 {
        margin-left: 0px;
    }

    .flexmenu {
        background-color: #efefed;
    }


    .menu > input + div {
        flex-flow: column;
    }

    .menulink {
        padding: 50px 30px;
        padding-top: 130px;
        margin-top: 0px;
        width: 100%;
    }

    .menu a.menuinternocontatti {
        position: relative;
        bottom: 0px;
        font: normal normal 500 16px/26px Jost;
    }

    .testoverticale {
        display: none;
    }


    .contenitorecalendario {
        max-width: initial;
        width: 100%;
    }

    .menuprenotazioni {
        width: 100%;
        padding: 50px 30px;
    }

    .claimHomeCamere {
        z-index: 16;
        bottom: 80px;
        left: inherit;
    }

    div.first {
        height: 90vh;
    }

    .iconecontatti {
        display: none;
    }


    .header {
        padding: 15px 30px;
        padding-top: 57px;
    }

    /*.prenota .pulsante {
        display: none;
    }*/



    /*.logo img {
        height: 20px;
    }*/

    .MenuPrincipale {
        margin-right: auto;
    }

    .mySlides2 {
        height: calc(100% - 0px);
        width: calc(100% - 0px);
        margin: 0px;
        z-index: 2;
    }

    .cerchio180 {
        width: 150px;
        height: 150px;
    }

    .sectionCentrale h2 {
        font: normal normal 400 50px/60px Forum;
    }

    .sectionCentrale h3 {
        font: normal normal 400 18px/26px Jost;
    }

    .section {
        margin: 100px 0px;
    }

    .container2 {
        padding: 0px 30px;
    }

    .sezioneimmagini3 {
        flex-flow: column;
    }

        .sezioneimmagini3 .margintop120 {
            margin-top: 50px;
        }

    .bloccoprenota {
        flex-flow: column;
    }

        .bloccoprenota h3 {
            font: normal normal 400 6vh/6vh Forum;
        }

    .bloccoprenotaicone {
        margin-top: 50px;
    }

        .bloccoprenotaicone > div {
            width: 50%;
        }

        .bloccoprenotaicone img {
            height: 50px;
        }

    .bloccoprenota h5 {
        font: normal normal 500 17px/20px Forum;
    }

    .containerIntDescElenco h3 {
        font: normal normal 400 42px/50px Forum;
    }

    .claimHome h1 {
        font: normal normal normal 50px/60px Forum;
    }

    .tabella {
        flex-flow: column;
        align-items: center;
    }

    .containerIntElenco {
        width: 100%;
    }

        .containerIntElenco.dx {
            padding-right: 0px;
        }

    .containerIntDescElencoInterno {
        padding-left: 0px;
        padding-top: 30px;
    }

    .margin200 {
        margin-left: 0px;
    }

    .bloccoprenotadescrizione.margin200 {
        margin-left: 0px;
    }

    .bloccoprenotaicone.end {
        justify-content: center;
        margin-top: 80px;
        margin-bottom: 30px;
    }

    .margin200200 {
        margin-left: 0px;
        margin-right: 0px;
    }

    .bloccoprenota {
        padding: 50px 30px;
    }

    .containerIntElencoImmagine {
        height: inherit;
    }

    .immaginirealizzazioni .width50 {
        width: 100%;
    }

    .bloccoimmobileDesc p {
        padding-right: 0px;
    }

    .containerIntElenco.sxnegativo > div {
        background-color: transparent;
        margin-left: 0px;
        padding: 0px;
        margin-right: 0px;
        padding-right: 0px;
        margin-top: 30px;
        margin-bottom: 30px;
        background-color: transparent;
    }

    .tabella.reverse {
        flex-flow: column-reverse;
    }

    .margin400 {
        margin-right: 0px;
    }

    .bloccoprenota.servizi > div {
        width: 100%;
    }

    .blocconewsletter {
        flex-flow: column;
        justify-content: flex-start;
        align-items: baseline;
    }

    .sectionCentrale h4 {
        font: normal normal 400 42px/50px Forum;
    }

    .blocconewsletter > div {
        width: 100%;
        display: flex;
        flex-flow: column;
        row-gap: 30px;
        margin-top: 30px;
    }

    .blocconewsletterpulsante > input {
        margin-right: 0px;
    }

    .containerFooter.padding100 {
        padding: 50px 30px;
    }

    .containerFooter {
        flex-flow: column;
    }

        .containerFooter > .footeritem2 {
            flex-flow: column;
            column-gap: initial;
            row-gap: 30px;
        }

        .containerFooter > .footeritem1 {
            width: 100%;
            flex: inherit;
        }

    .footeritem1 img {
        padding-right: 0px;
        margin-bottom: 30px;
    }

    .containerFooter {
        padding: 30px 30px;
    }

    .footer2link {
        justify-content: space-evenly;
    }

        .footer2link > a {
            margin-left: 0px;
        }

    .containerFooter.flex {
        justify-content: initial;
        row-gap: 30px;
        text-align: center;
    }
}




    /*###################  AREA RISERVATA #######################*/
    .contenitoreArea {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        /* display: -webkit-flex; */
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column;
        min-height: 80vh;
        position: relative;
        background-color: rgb(245,245,245);
    }

        .contenitoreArea:before, .contenitoreArea:after {
            -webkit-box-flex: 1;
            box-flex: 1;
            -webkit-flex-grow: 1;
            flex-grow: 1;
            content: '';
            display: block;
            height: 24px;
        }

    .internoArea {
        -webkit-flex-shrink: 0;
        flex-shrink: 0;
        background: #fff;
        -webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2);
        box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2);
        display: block;
        margin: 0 auto;
        min-height: 0;
        width: 400px;
        min-height: 428px;
        padding: 48px 40px 36px;
        box-sizing: border-box;
    }

        .internoArea img {
            height: 30px;
            display: block;
        }

    .accedi {
        font-size: 24px;
        font-weight: 400;
        line-height: 32px;
        margin: 0;
        padding-top: 16px;
    }

    .utilizza {
        padding-bottom: 3px;
        padding-top: 1px;
    }

    .accesso {
        padding: 30px 0px 0px 0px;
    }

    .inputBot {
        width: 100%;
        box-sizing: border-box;
        border: 0;
        border-bottom: 1px solid lightgrey;
        padding: 3px;
        font-size: 14px;
        font-weight: 300;
        margin-bottom: 20px;
        outline: none;
    }

    .accessonegato {
        font-size: 12px;
    }

    .contenitoreNega {
        height: 20px;
    }

    .contenitoreaccedi {
        margin-top: 30px;
    }

    .accessoform {
        -webkit-user-select: none;
        -webkit-transition: background .2s .1s;
        transition: background .2s .1s;
        border: 0;
        -webkit-border-radius: 3px;
        border-radius: 3px;
        cursor: pointer;
        display: inline-block;
        font-size: 14px;
        font-weight: 500;
        min-width: 4em;
        outline: none;
        overflow: hidden;
        position: relative;
        text-align: center;
        text-transform: uppercase;
        -webkit-tap-highlight-color: transparent;
        z-index: 0;
        background: #4285f4;
        color: #fff;
        padding: 10px 30px;
        float: right;
        width: 150px;
    }



/*########    SPINNER     ############*/
.modal {
    position: fixed;
    /* background-color: white; */
    background-color: rgb(165 165 165 / 70%);
    z-index: 200;
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.circle-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100px;
    aspect-ratio: 1/1;
}

.circle-svg {
    --_circle-radius: 45px;
    --_svg-width: 100px;
    --_stroke-width: 10px; /* svg-width - (circle-radius * 2) */

    width: var(--_svg-width);
    height: var(--_svg-width);
    stroke: white;
    /*   stroke-linecap: round; */
    stroke-width: var(--_stroke-width);
    stroke-dashoffset: 1;
    stroke-dasharray: 1 1000;
    animation: loader 1500ms infinite linear, spin 3000ms infinite linear;
}

@keyframes loader {
    0% {
        stroke-dashoffset: 1;
        stroke-dasharray: 1 1000;
    }

    100% {
        stroke-dashoffset: calc(var(--_circle-radius) * -2 * 3.1415);
        stroke-dasharray: calc(var(--_circle-radius) * 2 * 3.1415) 1000;
    }
}

@keyframes spin {
    0% {
        rotate: 0deg;
    }

    100% {
        rotate: 360deg;
    }
}