/*  Focacciamo CSS3 Ver. 1.0.0
    Copyright 1999 - 2024 JAM Studio
    Visit Us (https://www.jamstudio.it/)    */

/*  =====================================================
    =   Font utilizzati                                 =
    =   font-family: ;                                  =
    =   font-family: "Red Hat Display", sans-serif;     =
    =   font-family: "Work Sans", sans-serif;           =
    =====================================================   */

/*  =====================================================
    =   PALETTE E TYPOGRAPHY                            =
    =====================================================   */
:root {
/*      --> Fonts sito                                      */
    --hand-font     : ;
    --header-font   :"Red Hat Display", sans-serif;;
    --text-font     :"Work Sans", sans-serif;
/*      --> Main Colors                                     */
    --main-red      : #EE3831;
    --main-blue     : #1961AE;
    --main-red-rgb  : 238,56,49;
    --main-blue-rgb : 25,97,174;

/*      --> Greyscale                                       */
    --black         : #1F1F1F;
    --black-l       : #2B2B2B;
    --grey-d        : #595959;
    --grey          : #A4A4A4;
    --grey-c        : #C5C5C5;
    --grey-l        : #E5E5E5;
    --white-m       : #F5F5F5;
    --white         : #FFFFFF;
/*      --> System Colors                                   */
    --green         : #00BB31;
    --yellow        : #FFE20A;
    --red           : #F83021;
}
/*  =====================================================
    =   SCROLL BAR                                      =
    =====================================================   */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--main-blue); box-shadow: none; border-radius: 0; }
::-webkit-scrollbar-thumb { background: var(--white); border: 0 solid transparent; border-radius: 0; background-clip: content-box; }
::-webkit-scrollbar-thumb:hover { background: var(--main-red); border: 0 solid transparent; background-clip: content-box; }
/*  =====================================================
    =   SETTING BASE PAGINA                             =
    =====================================================   */
html, body { margin: 0; font-family: var(--text-font); color: var(--black); font-style: normal; background-color: transparent; }
html { scroll-padding-top: 8rem; background-image: url("../images/deco/bg-page-tile.svg"); background-repeat: repeat; background-size: 192px; background-position: top center; background-color: var(--white); }
img { max-width: 100%; max-height: 100%; width: auto; height: auto; }
/*      --> Typography                                      */
h1, h2, h3, h4, h5, h6 { font-family: var(--header-font); font-optical-sizing: auto; }
p, li, a, th, td { text-decoration: none; font-optical-sizing: auto; }
b, strong { font-weight: 700!important; }
a {color: var(--main-red); text-decoration: none;}
a:hover {color: var(--main-blue); text-decoration: none;}
a:focus { outline: none; box-shadow: none; }
@media (max-width: 575.98px) {
    /* html { scroll-padding-top: 7rem; } */
    html { background-size: 160px; }
    p { font-size: .875rem; }
}
/*  =====================================================
    =   ICONS                                           =
    =====================================================   */
.icon { min-width: 1.25rem; height: 1.25rem; display: inline-block; }
.icon.white { background-color: var(--white); }
.icon.darkest { background-color: var(--black-l); }
.icon.dark { background-color: var(--grey-d); }
.icon.grey { background-color: var(--grey); }
.icon.main-red { background-color: var(--main-red); }
.icon.main-blue { background-color: var(--main-blue); }
.icon-xs { min-width: .75rem!important; height: .75rem!important; }
.icon-sm { min-width: 1rem!important; height: 1rem!important; }
.icon-md { min-width: 1.5rem!important; height: 1.5rem!important; }
.icon-lg { min-width: 2rem!important; height: 2rem!important; }
.icon-xl { min-width: 2.5rem!important; height: 2.5rem!important; }
.icon-xxl { min-width: 3rem!important; height: 3rem!important; }
.icon-big { min-width: 5rem!important; height: 5rem!important; }
/*      --> Icone Navigazione                               */
.ico-menu {
    -webkit-mask: url("../images/icons/nav-menu.svg") no-repeat center;
    mask: url("../images/icons/nav-menu.svg") no-repeat center;
}
.ico-close {
    -webkit-mask: url("../images/icons/nav-close.svg") no-repeat center;
    mask: url("../images/icons/nav-close.svg") no-repeat center;
}
.ico-home {
    -webkit-mask: url("../images/icons/nav-home.svg") no-repeat center;
    mask: url("../images/icons/nav-home.svg") no-repeat center;
}
.ico-plus {
    -webkit-mask: url("../images/icons/nav-plus.svg") no-repeat center;
    mask: url("../images/icons/nav-plus.svg") no-repeat center;
}
.ico-minus {
    -webkit-mask: url("../images/icons/nav-minus.svg") no-repeat center;
    mask: url("../images/icons/nav-minus.svg") no-repeat center;
}
.ico-chevron-y {
    -webkit-mask: url("../images/icons/nav-chevron-y.svg") no-repeat center;
    mask: url("../images/icons/nav-chevron-y.svg") no-repeat center;
}
.ico-chevron-x, .ico-chevron-x.left {
    -webkit-mask: url("../images/icons/nav-chevron-x.svg") no-repeat center;
    mask: url("../images/icons/nav-chevron-x.svg") no-repeat center;
}
.ico-chevron-x.left {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}
/*      --> Icone Contatti e Social                         */
.ico-gps {
    -webkit-mask: url("../images/icons/contatti-gps.svg") no-repeat center;
    mask: url("../images/icons/contatti-gps.svg") no-repeat center;
}
.ico-ind {
    -webkit-mask: url("../images/icons/contatti-indirizzo.svg") no-repeat center;
    mask: url("../images/icons/contatti-indirizzo.svg") no-repeat center;
}
.ico-mail {
    -webkit-mask: url("../images/icons/contatti-email.svg") no-repeat center;
    mask: url("../images/icons/contatti-email.svg") no-repeat center;
}
.ico-tel {
    -webkit-mask: url("../images/icons/contatti-telefono.svg") no-repeat center;
    mask: url("../images/icons/contatti-telefono.svg") no-repeat center;
}
.ico-whatsapp {
    -webkit-mask: url("../images/icons/contatti-whatsapp.svg") no-repeat center;
    mask: url("../images/icons/contatti-whatsapp.svg") no-repeat center;
}
.ico-facebook {
    -webkit-mask: url("../images/icons/social-facebook.svg") no-repeat center;
    mask: url("../images/icons/social-facebook.svg") no-repeat center;
}
.ico-instagram {
    -webkit-mask: url("../images/icons/social-instagram.svg") no-repeat center;
    mask: url("../images/icons/social-instagram.svg") no-repeat center;
}
.ico-tripadvisor {
    -webkit-mask: url("../images/icons/social-tripadvisor.svg") no-repeat center;
    mask: url("../images/icons/social-tripadvisor.svg") no-repeat center;
}
/*      --> Icone Esiti                                     */
.ico-ok {
    -webkit-mask: url("../images/icons/esito-ok.svg") no-repeat center;
    mask: url("../images/icons/esito-ok.svg") no-repeat center;
}
.ico-ko {
    -webkit-mask: url("../images/icons/esito-ko.svg") no-repeat center;
    mask: url("../images/icons/esito-ko.svg") no-repeat center;
}
/*      --> Icone Pagamenti                                 */
.payments-icons { height: 2rem; }
.payments-icons-sm { height: 1.75rem; }
/*  =====================================================
    =   BUTTONS                                         =
    =====================================================   */
.btn { --bs-btn-font-family: var(--header-font); --bs-btn-focus-shadow-rgb: none; --bs-btn-active-shadow: none; --bs-btn-border-radius: .5rem; }
.btn-icon { min-width: 3rem; min-height: 3rem; --bs-btn-padding-x: 0.5rem; --bs-btn-padding-y: 0.5rem; --bs-btn-border-width: 0; display: flex; align-items: center; justify-content: center; }
.btn-icon-sm { min-width: 2rem; min-height: 2rem; --bs-btn-padding-x: 0.25rem; --bs-btn-padding-y: 0.25rem; }
.btn-icon.menu, .btn-icon.back { --bs-btn-bg: var(--main-red); --bs-btn-hover-bg: var(--main-blue); --bs-btn-active-bg: var(--main-blue); --bs-btn-focus-bg: var(--main-red); --bs-btn-disabled-bg: var(--main-red); }
.btn-icon.menu .icon, .btn-icon:hover.menu .icon, .btn-icon:focus.menu .icon, .btn-icon.back .icon, .btn-icon:hover.back .icon, .btn-icon:focus.back .icon { background-color: var(--white); }
.btn-icon.social { --bs-btn-border-radius: 50rem; --bs-btn-bg: var(--main-red); --bs-btn-hover-bg: var(--main-blue); --bs-btn-active-bg: var(--main-blue); --bs-btn-disabled-bg: var(--main-red); }
.btn-icon.social .icon { background-color: var(--white); }
.btn-icon.social:hover .icon, .btn-icon.social:active .icon, .btn-icon.social.active .icon { background-color: var(--white); }
.btn-icon.contacts { --bs-btn-bg: var(--main-d); --bs-btn-hover-bg: var(--main); --bs-btn-active-bg: var(--main); --bs-btn-disabled-bg: var(--main-d); }
.btn-icon.contacts .icon { background-color: var(--contrast); }
.btn-icon.contacts:hover .icon, .btn-icon.social:active .icon, .btn-icon.social.active .icon { background-color: var(--white); }
.btn-red, .btn-red-lg {
    --bs-btn-color: var(--white);
    --bs-btn-bg: var(--main-red);
    --bs-btn-hover-color: var(--white);
    --bs-btn-hover-bg: var(--main-blue);
    --bs-btn-active-color: var(--white);
    --bs-btn-active-bg: var(--main-blue);
    --bs-btn-disabled-color: var(--white);
    --bs-btn-disabled-bg: var(--main-red);
    --bs-btn-padding-x: 1rem;
    --bs-btn-padding-y: .75rem;
    --bs-btn-font-size: 1.125rem;
    --bs-btn-line-height: 1;
    --bs-btn-font-weight: 500;
    display:flex;
    align-items: center;
    justify-content: center;
}
.btn-blue, .btn-blue-lg {
    --bs-btn-color: var(--white);
    --bs-btn-bg: var(--main-blue);
    --bs-btn-hover-color: var(--white);
    --bs-btn-hover-bg: var(--main-red);
    --bs-btn-active-color: var(--white);
    --bs-btn-active-bg: var(--main-red);
    --bs-btn-disabled-color: var(--white);
    --bs-btn-disabled-bg: var(--main-blue);
    --bs-btn-padding-x: 1rem;
    --bs-btn-padding-y: .75rem;
    --bs-btn-font-size: 1.125rem;
    --bs-btn-line-height: 1;
    --bs-btn-font-weight: 500;
    display:flex;
    align-items: center;
    justify-content: center;
}
.btn-white, .btn-white-lg {
    --bs-btn-color: var(--main-red);
    --bs-btn-bg: var(--white);
    --bs-btn-hover-color: var(--main-blue);
    --bs-btn-hover-bg: var(--white);
    --bs-btn-active-color: var(--main-blue);
    --bs-btn-active-bg: var(--white);
    --bs-btn-disabled-color: var(--main-red);
    --bs-btn-disabled-bg: var(--white);
    --bs-btn-padding-x: 1rem;
    --bs-btn-padding-y: .75rem;
    --bs-btn-font-size: 1.125rem;
    --bs-btn-line-height: 1;
    --bs-btn-font-weight: 500;
    display:flex;
    align-items: center;
    justify-content: center;
}
.btn-red-lg, .btn-blue-lg, .btn-white-lg { --bs-btn-padding-x: 2rem; --bs-btn-padding-y: 1.25rem; --bs-btn-font-size: 1.5rem; --bs-btn-font-weight: 600; --bs-btn-border-radius: 1rem; }
/*      --> Dropdown Cambio Lingua                          */
.btn-lang, .btn-lang:hover {
    min-width: 4.25rem;
    color: var(--blue-d);
    font-size: 1.25rem;
    font-weight: 500;
    text-decoration: none;
    text-transform: uppercase;
    background-color: rgba(255,255,255,.5);
    border-radius: .5rem;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: 200ms ease-in-out;
    -moz-transition: 200ms ease-in-out;
    -o-transition: 200ms ease-in-out;
    -ms-transition: 200ms ease-in-out;
    transition: 200ms ease-in-out;
    transition-property: background-color;
}
.btn-lang-flag { width: 3rem; height: auto; }
.btn-lang-icon, .btn-dropdown-icon {
    min-width: 1.5rem;
    height: 1.5rem;
    background-color: var(--main-blue);
    -webkit-mask: url("../images/icons/nav-chevron-y.svg") no-repeat center;
    mask: url("../images/icons/nav-chevron-y.svg") no-repeat center;
    display: inline-block;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transition: -webkit-transform .5s ease-in-out;
    transition: transform .5s ease-in-out;
}
.btn-lang.show .btn-lang-icon { background-color: var(--main-blue); }
.btn-lang:not(.show) .btn-lang-icon, .dropdown .menu-link:not(.show) .btn-dropdown-icon { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
.lang-dropdown-menu {
    margin-top: .5rem!important;
    width: 100%;
    min-width: 8rem;
    background-color: var(--white);
    left: auto;
    right: 0;
    border: 0;
    border-radius: .25rem;
}
.lang-dropdown-item {
    padding: .25rem;
    font-size: 1rem;
    font-weight: 300;
    color: var(--black-l);
    text-align: center;
    display: flex;
    align-items: center;
}
.lang-dropdown-flag {
    margin-left: .25rem;
    width: auto;
    height: 1.5rem;
    -webkit-filter: drop-shadow( 0 .125rem .125rem rgba(var(--main-blue-rgb),.45));
    filter: drop-shadow( 0 .125rem .125rem rgba(var(--main-blue-rgb),.45));
}
.lang-dropdown-item:hover { color: var(--white); background-color: rgba(var(--main-blue-rgb),.5); }
.lang-dropdown-item.active, .lang-dropdown-item:active { color: var(--white); text-decoration: none; background-color: var(--main-red); }
.menu-link-dropdown {
    margin-top: .5rem!important;
    background-color: var(--white);
    left: auto;
    right: 0;
    border: 0;
    border-radius: .25rem;
}
.menu-link-dropdown-item {
    padding: .25rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    color: var(--main);
    /* white-space: normal; */
}
.menu-link-dropdown-item:hover {
    color: var(--main);
    background-color: rgba(var(--main-blue),.125);
}
.menu-link-dropdown-item.active, .menu-link-dropdown-item:active {
    color: var(--white);
    text-decoration: none;
    background-color: var(--main-red);
}
.btn-dropdown-icon { background-color: var(--white); }
.dropdown .menu-link.show .btn-dropdown-icon { background-color: var(--white); }
/*      --> Bottoni Carousel                                */
.btn-carousel { width: 3rem; height: 3rem; background-color: transparent; border-radius: 0; display: flex; align-items: center; justify-content: center; opacity: 1; }
.btn-carousel .icon { background-color: var(--white); }
.btn-carousel:hover { background-color: transparent; }
.btn-carousel:hover .icon { background-color: var(--yellow) }
.btn-carousel.prev { left: 1rem; }
.btn-carousel.next { right: 1rem; }
@media (max-width: 1399.98px) {
    .menu-link-dropdown {
        --bs-dropdown-padding-y: 0.25rem;
        position: relative!important;
        transform: none!important;
        box-shadow: none!important;
        background-color: var(--white-m);
    }
    .btn-dropdown-icon { background-color: var(--main); }
    .dropdown .menu-link.show .btn-dropdown-icon { background-color: var(--main); }
    .menu-link-dropdown-item { white-space: normal; }
}
@media (max-width: 1199.98px) {
    .btn-carousel.prev { left: 0; }
    .btn-carousel.next { right: 0; }
}
@media (max-width: 575.98px) {
    .lang-dropdown-menu { inset: 0px 0px auto auto!important; transform: translate(0px, 40px)!important; }
    .btn-action-lg, .btn-submit-lg { --bs-btn-padding-x: .5rem; --bs-btn-font-size: 1.375rem;}
}
/*  =====================================================
    =   NAVBAR                                          =
    =====================================================   */
.page-navbar {
    flex-direction: column;
    justify-content: center;
    z-index: 1030;
    -webkit-transition: 200ms linear;
    -moz-transition: 200ms linear;
    -o-transition: 200ms linear;
    -ms-transition: 200ms linear;
    transition: 200ms linear;
    transition-property: padding;
}
.navbar-container {
    min-height: 4.5rem;
    background: rgba(255,255,255,.5);
    box-shadow: 0 .25rem 2rem rgba(var(--main-blue-rgb),.25);
    backdrop-filter: blur(.5rem);
    -webkit-backdrop-filter: blur(.5rem);
    border-radius: .5rem;
    display: flex;
    flex-direction: column;
    -webkit-transition: 200ms linear;
    -moz-transition: 200ms linear;
    -o-transition: 200ms linear;
    -ms-transition: 200ms linear;
    transition: 200ms linear;
    transition-property: all;
}
#pagebar .navbar-container {
    box-shadow: 0 .25rem .5rem rgba(var(--main-blue-rgb),.125);
}
.navbar-container .col-12 {
    display: flex;
    align-items: center;
    -webkit-transition: 200ms linear;
    -moz-transition: 200ms linear;
    -o-transition: 200ms linear;
    -ms-transition: 200ms linear;
    transition: 200ms linear;
    transition-property: padding;
}
#homepagebar.scrolled .page-navbar, #pagebar.scrolled .page-navbar {
    max-width: 100%;
    padding: 0!important;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    -webkit-transition: 200ms linear;
    -moz-transition: 200ms linear;
    -o-transition: 200ms linear;
    -ms-transition: 200ms linear;
    transition: 200ms linear;
    transition-property: padding;
}
#homepagebar.scrolled .navbar-container, #pagebar.scrolled .navbar-container {
    background: rgba(255,255,255, 0.75);
    box-shadow: 0 .5rem 1rem rgba(var(--main-blue-rgb),.125);
    border-radius: 0;
    -webkit-transition: 200ms linear;
    -moz-transition: 200ms linear;
    -o-transition: 200ms linear;
    -ms-transition: 200ms linear;
    transition: 200ms linear;
    transition-property: all;
}
#homepagebar.scrolled .navbar-container .col-12, #pagebar.scrolled .navbar-container .col-12 {
    padding: .75rem 3.5rem!important;
    -webkit-transition: 200ms linear;
    -moz-transition: 200ms linear;
    -o-transition: 200ms linear;
    -ms-transition: 200ms linear;
    transition: 200ms linear;
    transition-property: padding;
}
.logo-navbar { width: auto; height: 0; opacity: 0; -webkit-transition: 200ms linear; -moz-transition: 200ms linear; -o-transition: 200ms linear; -ms-transition: 200ms linear; transition: 200ms linear; transition-property: all; }
#homepagebar.scrolled .logo-navbar, #pagebar.scrolled .logo-navbar { height: 3.5rem; opacity: 1; }
/*      --> Menu                                            */
.menu-link {
    padding: .5rem .5rem;
    color: var(--black-l);
    font-family: var(--header-font);
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1;
    background-color: rgba(255,255,255,.5);
    border-radius: .5rem;
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    white-space: nowrap;
    position: relative;
    -webkit-transition: 400ms ease;
    -moz-transition: 400ms ease;
    -o-transition: 400ms ease;
    -ms-transition: 400ms ease;
    transition: 400ms ease;
    transition-property: all;
}
.menu-link .link-text { padding: .25rem .5rem; border-top: 2px solid transparent; border-bottom: 2px solid transparent; z-index: +1; -webkit-transition: 400ms ease; -moz-transition: 400ms ease; -o-transition: 400ms ease; -ms-transition: 400ms ease; transition: 400ms ease; transition-property: all; }
.menu-link:hover, .menu-link.active {
    color: var(--main-blue);
    text-decoration: none;
    -webkit-transition: 400ms ease;
    -moz-transition: 400ms ease;
    -o-transition: 400ms ease;
    -ms-transition: 400ms ease;
    transition: 400ms ease;
    transition-property: all;
}
.menu-link:hover .link-text { border-bottom-color: var(--main-red); }
.menu-link.active { color: var(--main-red); font-weight: 600; }
.menu-link-leaf {
    width: 1rem;
    height: 1rem;
    -webkit-mask: url("../images/deco/leaf.svg") no-repeat center;
    mask: url("../images/deco/leaf.svg") no-repeat center;
    background-color: var(--green);
    display: block;
    opacity: 0;
    position: absolute;
    top: .25rem;
    right: .5rem;
    -webkit-transition: 200ms ease;
    -moz-transition: 200ms ease;
    -o-transition: 200ms ease;
    -ms-transition: 200ms ease;
    transition: 200ms ease;
    transition-property: all;
}
.menu-link.active .menu-link-leaf {
    opacity: .5;
    -webkit-transition: 200ms ease;
    -moz-transition: 200ms ease;
    -o-transition: 200ms ease;
    -ms-transition: 200ms ease;
    transition: 200ms ease;
    transition-property: all;
}
@media (max-width: 1199.98px) {
    #homepagebar.scrolled .navbar-container .col-12, #pagebar.scrolled .navbar-container .col-12 { padding: .75rem!important; }
    .menu-link, #homepagebar.scrolled .menu-link, #pagebar.scrolled .menu-link { padding: .25rem .5rem; flex-direction: row; }
    .menu-link .link-text { margin-top: 0; }
    .menu-link-leaf { position: relative; margin-bottom: auto; margin-left: .25rem; }
}
/*  =====================================================
    =   ELEMENTI COMUNI                                 =
    =====================================================   */
.mw-1920 { max-width: 1920px; }
.mw-1600 { max-width: 1600px; }
.mw-1400 { max-width: 1400px; }
.mw-1200 { max-width: 1200px; }
.mw-992 { max-width: 992px; }
.mw-960 { max-width: 960px; }
.mw-800 { max-width: 800px; }
.mw-768 { max-width: 768px; }
.mw-640 { max-width: 640px; }
.mw-576 { max-width: 576px; }
.mw-480 { max-width: 480px; }
.mw-360 { max-width: 360px; }
.mw-320 { max-width: 320px; }
.anchor-spacer { width: 100%; height: 4px; }
.homepage-card, .page-card { background-color: var(--white); --bs-box-shadow-lg: 0 1rem 3rem rgba(var(--main-blue-rgb), 0.25); border-top-left-radius: 1.5rem; border-top-right-radius: 1.5rem; display: flex; flex-direction: column; overflow: hidden; }
.page-card { border-radius: 1.5rem; }
.homepage-card-header { background-image: url("../images/homepage/header_bg.webp"); background-repeat: no-repeat; background-size: cover; background-position: center; display: flex; flex-direction: column; } 
.page-card-header { background-color: var(--main-blue); display: flex; flex-direction: column; } 
.container-red { background-color: var(--main-red); }
.container-blue { background-color: var(--main-blue); }
/*      --> Custom HR                                       */
.section-hr { margin: auto 0; border-top: 2px solid; opacity: 1 }
.section-hr.tin { border-top: 1px solid; }
.section-hr.white { color: var(--white); }
.section-hr.darkest { color: var(--grey-d); }
.section-hr.dark { color: var(--grey-d); }
.section-hr.grey { color: var(--grey); }
.section-hr.main-red { color: var(--main-red); }
.section-hr.main-blue { color: var(--main-blue); }
/*      --> Typography                                      */
.section-title { font-family: var(--header-font); color: var(--main-red); font-weight: 900!important; }
.section-title.white { color: var(--white); }
.section-subtitle { font-family: var(--header-font); color: var(--main-blue); font-weight: 700!important; }
.section-subtitle.white { color: var(--white); }
.section-subtitle.green { color: var(--green); }
.section-subtitle.fw-light { font-weight: 400!important; }
.section-text { color: var(--black-l); display: flex; flex-direction: column; }
.section-text.homepage { font-family: var(--header-font); }
.section-text p, .section-text ul { margin-bottom: 1.25rem; }
.section-text li { margin-bottom: .75rem; }
.section-text p:last-child, .section-text li:last-child { margin-bottom: 0; }
.section-text b, .section-text strong { color: var(--main-red); }
.section-text li::marker { content: "● "; font-size: 1.125rem; color: var(--main-red); }
.section-text a { color: var(--main-blue); font-weight: 500; }
.section-text a:hover { color: var(--main-blue); text-decoration: underline; }
/*      --> Breadcrumb                                      */
.page-breadcrumb-container { background-color: var(--white-m); border-radius: .5rem; display: flex; flex-direction: column; }
.page-breadcrumb { font-family: var(--header-font); font-size: 1rem; font-weight: 400; line-height: 1; }
.page-breadcrumb a { color: var(--yellow); font-weight: 500; }
.page-breadcrumb a:hover { color: var(--yellow); }
.page-breadcrumb .breadcrumb-item+.breadcrumb-item::before { color: var(--white); }
.page-breadcrumb .breadcrumb-item.active { color: var(--grey-l); font-weight: 500; }
/*      --> Images Ratio                                    */
.page-img-frame { width: 100%; position: relative; overflow: hidden; }
.page-img-frame.portrait { padding-top: 140%; }
.page-img-frame.square { padding-top: 100%; }
.page-img-frame.landscape { padding-top: 66.64%; }
.page-img-frame.panoramic { padding-top: 56%; }
.page-img-frame.wide { padding-top: 43%; }
.page-img { width: 100%; height: 100%; border-radius: .5rem; object-fit: cover; object-position: center; position: absolute; top: 0; }
.page-img-placeholder { width: 100%; height: 100%; border-radius: .5rem; background-color: var(--grey-l); display: block; position: absolute; top: 0; }
/*      --> Logos                                           */
.header-logo-frame { width: 24rem; height: 6rem; background-color: var(--main-red); display: flex; align-items: center; justify-content: center; }
.header-logo {  width: auto; height: 4rem; }
.logo-big {  width: auto; height: 5rem; }
@media (max-width: 575.98px) {
    .header-logo-frame {  margin-top: 5rem; margin-bottom: 2.5rem; width: 20rem; height: 5rem; }
}
/*  =====================================================
    =   FOOTER                                          =
    =====================================================   */
.footer-container { font-size: .875rem; color: var(--black-l); background-color: var(--white); display:flex; flex-direction: column; }
.footer-logo { width: auto; height: 4rem; }
.footer-info { width: 100%; color: var(--black-l); }
.footer-info a { color: var(--black-l); font-weight: 400; }
.footer-info a:hover { color: var(--main-blue); }
.footer-link { color: var(--main-blue)!important; font-weight: 500; text-decoration: none; white-space: nowrap; }
.footer-link:hover { color: var(--main-red)!important; text-decoration: none; }
/*      --> Footer Bottom                                   */
.footer-bottom { background-color: var(--main-blue); }
.footer-bottom p { font-size: .875rem; color: var(--white); }
.bookingbar-footer .footer-bottom { padding-bottom: 8rem!important; }
/*      --> Firma                                           */
#jamstudio { width: auto; height: 1.75rem; }
.logo-signature { fill: var(--white); }
/*  =====================================================
    =   FORMS CONTROLS                                  =
    =====================================================   */
.contacts-form-label { font-family: var(--text-font); font-weight: 400; color: var(--grey-d); }
.contacts-form-control { border-color: var(--grey-l); border-radius: .25rem; }
.contacts-form-control:focus { border-color: var(--main-blue); box-shadow: none; }
.contacts-form-check { border-color: var(--grey-c); }
.contacts-form-check:focus { border-color: var(--main-red); box-shadow: none; }
.contacts-form-check:checked { background-color: var(--main-red); border-color: var(--main-red); }
/*      --> Box Mappa                                       */
.box-mappa { padding-top: 50%; background-color: var(--white); position: relative; }
.box-mappa iframe { width: 100%; height: 100%; overflow: hidden; border: 1px solid var(--grey-)!important; border-radius: .5rem; position: absolute; top: 0; }
@media (max-width: 991.98px) {
    .box-mappa { padding-top: 150%; }
}

/*  =====================================================
    =   ESITI                                           =
    =====================================================   */
.box-esito { border-radius: .5rem; line-height: 1.25; }
.title-esito { font-family: var(--text-font); font-weight: 500!important; }
.box-esito.ok { background-color: var(--green); }
.box-esito.ok .icon { background-color: var(--white); }
.box-esito.ok .title-esito, .box-esito.ok .text-esito { color: var(--white); }
.box-esito.ko { background-color: var(--yellow); }
.box-esito.ko .icon { background-color: var(--black-l); }
.box-esito.ko .title-esito, .box-esito.ko .text-esito { color: var(--black-l); }
/*  =====================================================
    =   HOMEPAGE                                        =
    =====================================================   */
.container-promo {
    background: #1F1F1F;
    background: radial-gradient(circle, rgba(31, 31, 31, 0.75) 10%, rgba(31, 31, 31, 0) 30%);
}
.img-menu { margin-top: -9rem;}
.img-ape { margin-top: -3rem; margin-bottom: -5rem; }
@media (max-width: 1199.98px) {
    .img-ape { margin-bottom: 0;}
}
@media (max-width: 767.98px) {
    .img-menu { margin-top: -7.5rem;}
}
