@import url('https://fonts.googleapis.com/css2?family=Cal+Sans&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
:root {
    --white: #ffffff;
    --red: #ED1C24;
    --black : #000000;
}
/* ############ GLOBAL ############ */
html {
    overflow-y: scroll;
    scroll-behavior: auto;
    scroll-padding-top: 14rem;
    scroll-behavior: smooth;
}
html, body {
    font: normal 10px/1.5 arial,sans-serif;
    font-weight: 400;
    font-style: normal;
    font-optical-sizing: auto;
    cursor: default;
    width:100%;
    height:auto;
    margin:0px;
    padding:0px;
    line-height:1.5;
    color: var(--black);
    letter-spacing: 0em;
    font-family: "Montserrat", sans-serif;
    /*scroll-behavior: auto !important;*/
    scroll-behavior: smooth;
}
* {
    box-sizing: border-box;
}

.post,
.page {
	margin: 0;
}

.page-content, .entry-content, .entry-summary {
    margin: 0;
}

.desktop{
    display:block !important;
}
.mobile{
    display:none !important;
}

p{
    font-size:1.9rem;
    margin-bottom: 2.5rem;
    line-height: 1.5;
    color: var(--black);
    font-weight: 500;
}
ul,
ol{
    padding-left: 0rem;
    margin-bottom: 2.7rem;
}
ul li,
ol li{
    font-size: 1.9rem;
    margin-bottom: 1.5rem;
    font-weight: 500;
}

h1, h2, h3, h4, h5, h6 {
    -webkit-margin-before: 0.0em;
    -webkit-margin-after: 0.0em;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
    line-height: 1;
    margin-top:0px;
    margin-bottom: 3rem;
    font-family: "Cal Sans", sans-serif;
    letter-spacing: 0.03em;
}
h1{
    font-size: 9.8rem;
}
h2{
    font-size: 6rem;
}
h3{
    font-size: 4.2rem;
}
h4{
    font-size: 3.6rem;
    color: var(--red);
}
h5{
    font-size: 3rem;
    color: var(--red);
}
h6{
    font-size: 2.1rem;
    text-transform: uppercase;
}

:is(h2, h3) span,
:is(h2, h3) strong {
    font-weight: 400;
    color: var(--red);
}
a,
a:visited {
    color: inherit;
    text-decoration: none;
}
a:hover {
    opacity: 1;
    text-decoration: none;
    color: inherit;
}
a:focus{
    outline: none;
}

b, strong {
    font-weight: 700;
}

img {
    width: auto;
    height:auto;
    max-width: 100%;
    max-height: 100%;
}
.container {
    width:100%;
    margin: 0 auto;
    max-width: 1700px;
    padding-left: 9rem;
    padding-right: 9rem;
}
.container-fluid{
    width:100%;
    max-width:100%;
    margin: 0 auto;
    padding-left:6rem;
    padding-right:6rem;
}
.row {
    margin-right: -1.5rem;
    margin-left: -1.5rem;
}
.row > *{
    padding-right: 1.5rem;
    padding-left: 1.5rem;
}
.row.reverse-order{
    flex-direction: row-reverse !important;
}

button{
    font-size: 1.8rem;
    background-color: var(--red);
    min-height: 4.8rem;
    padding: 1rem 5rem;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-family: "Cal Sans", sans-serif;
    letter-spacing:0.03em;
    border:0.2rem solid var(--red);
    transition-duration: 0.15s;
}
button:hover{
    background-color: var(--white);
    color: var(--red);
    border:0.2rem solid var(--red);
    transition-duration: 0.15s;
}

/* HEADER */
body.home .site-header{
    box-shadow: none;
    transition-duration: 0.3s;
}
body.home.scroll .site-header{
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
    transition-duration: 0.3s;
}
.site-header{
    position: fixed;
    width: 100%;
    z-index: 99;
    background: var(--white);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
    transition-duration: 0.3s;
}
body.page-id-21 .site-header,
body.page-template-legal-page .site-header{
    box-shadow: none;
}
body.page-id-21.scroll .site-header,
body.page-template-legal-page.scroll .site-header{
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
}
.scroll .site-header{
    background-color: var(--white) !important;
    transition-duration: 0.3s;
}
.site-header .inner{
    padding-top: 2.1rem;
    padding-bottom: 2.2rem;
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
.scroll .site-header .inner{
    padding-top: 1rem;
    padding-bottom: 1rem;
    border: none;
    transition-duration: 0.3s;
}
.site-header.site-header-nav-close .inner{
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
.site-header .site-branding{
    width: 36rem;
    transition: all 0.3s;
}
.scroll .site-header .site-branding{
    width: 22.5rem;
    background-image: none !important;
}
.scroll .site-header .site-branding img{
    visibility: visible !important;
}
.site-header .menu-container{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.burger {
    display: none;
}
.site-header .main-navigation{
    width: auto;
    display: flex;
    align-items: center;
}
.site-header ul#main-menu{
    justify-content: flex-end;
    align-items: center;
}
.site-header ul#main-menu > li{
    padding-right: 2.4rem;
    margin-bottom: 0;
}
.scroll .site-header ul#main-menu > li{
    color: var(--black) !important;
}
#main-menu li {
    position:relative;
    margin-bottom: 0;
    display: flex;
    align-items: center;
}
#main-menu li a{
    position:relative;
    font-size: 1.8rem;
    font-family: "Cal Sans", sans-serif;
    letter-spacing:0.03em;
    overflow: hidden;
}
body.home #main-menu li a:before {
    background: var(--white);
}
body.home.scroll #main-menu li a:before {
    background: var(--black);
}
#main-menu li a:before {
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0.2rem;
    background: var(--black);
    transform: translateX(-101%);
    content: '';
    position: absolute;
    transition: transform .5s ease;
}
#main-menu li.current-menu-item a:before,
#main-menu li:hover a:before{
    transform: translateX(0);
}
#main-menu>li .sub-menu{
    display: flex;
    flex-direction: column;
    box-shadow: none;
}
#main-menu>li>.sub-menu>li:hover>.sub-menu{
    left: 100%;
}
@media only screen and (min-width: 992px){
    #main-menu>li:hover>.sub-menu{
        left: 0;
    }
}
#main-menu>li .sub-menu li{
    position: unset;
    padding-top: 1.6rem;
}
#main-menu>li .sub-menu li a{
    font-size: 2rem;
    min-width: max-content;
}
#main-menu>li>.sub-menu {
    padding-left: 3.4rem;
    padding-top: 2rem;
    padding-bottom: 3.5rem;
}
#main-menu>li>.sub-menu li>.sub-menu{
    padding-left: 1rem;   
    padding-right: 3.9rem;    
    padding-top: 2rem;
    padding-bottom: 3.5rem;
}
#contact-menu li {
    margin-bottom: 0;
}
#contact-menu li a{
    font-size: 1.8rem;
    background-color: var(--red);
    min-height: 4.8rem;
    padding: 1rem 5rem;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-family: "Cal Sans", sans-serif;
    letter-spacing:0.03em;
    border:0.2rem solid var(--red);
    transition-duration: 0.15s;
    text-align:center;
}
#contact-menu li a:hover{
    background-color: var(--white);
    color: var(--red);
    border:0.2rem solid var(--red);
    transition-duration: 0.15s;
}
body.home #contact-menu li a:hover{
    background-color: var(--white);
    color: var(--red);
    border:0.2rem solid var(--white);
}
body.home.scroll #contact-menu li a:hover{
    background-color: var(--white);
    color: var(--red);
    border:0.2rem solid var(--red);
}

/* FOOTER */
.site-footer{
    background-color: var(--red);
    color: var(--white);
    padding-top: 12rem;
}
.site-footer .top-footer{
    padding-bottom: 7.7rem;
    border-bottom: 3px solid var(--white);
}
.site-footer .col-footer-menu{
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
}
.site-footer #footer-menu{
    padding: 0;
    margin: 0;
    list-style: none;
    width: 100%;
    display: flex;
    column-gap: 3.5rem;
}
.site-footer #footer-menu>li{
    color: var(--white);
    line-height: 1.5;
}
.site-footer #footer-menu li a{
    font-weight: 500;
    font-size: 2.4rem;
    font-family: "Cal Sans", sans-serif;
}
.site-footer #footer-menu li a:hover{
    opacity:1;
    text-decoration: underline;
}
.site-footer .bottom-footer{
    padding-top: 5rem;
    padding-bottom: 5rem;
    display: flex;
    flex-wrap:wrap;
    justify-content: space-between;
    row-gap: 0.5rem;
}
.site-footer .legal-menu{
    display: flex;
    margin-right: 3rem;
}
.site-footer .legal-menu ul{
    list-style: none;
    display: flex;
    margin: 0;
}
.site-footer .legal-menu ul li{
    font-size: 1.8rem;
    position: relative;
    margin-bottom:0;
    font-weight: 400;
}
.site-footer .legal-menu ul li a:hover{
    text-decoration:underline;
    opacity:1;
}
.site-footer .legal-menu ul li::before{
    content: "|";
    font-size: 1.8rem;
    margin: 0 1rem;
}
.site-footer .copyrights{
    font-size: 1.8rem;
}
.site-footer .credits{
    font-size: 1.8rem;
}
.site-footer .credits a:hover{
    text-decoration:underline;
}
.site-footer .footer-logo{
    width: 36rem;
}
.site-footer .col-social{
    display: flex;
    /*align-items: flex-end;*/
    flex-direction: column;
    /*padding-left:4.5rem;*/
}
.site-footer .col-social ul#legal-menu{
    padding: 0;
    margin: 0;
    list-style: none;
}
.site-footer .col-social #legal-menu li{
    margin-bottom: 1rem;
    line-height: 1.2;
}
.site-footer .col-social #legal-menu li:last-child{
    margin-bottom: 0rem;
}
.site-footer .col-social #legal-menu li a{
    font-size: 1.7rem;
    /*text-transform: uppercase;*/
    font-weight: 600;
}
.site-footer .col-social #legal-menu li a:hover{
    /*opacity: 0.7;*/
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 2px;
}
.site-footer .social{
    margin-top:3rem;
}
.site-footer .social>a:not(:first-child){
    padding-left: 4rem;
}
.site-footer .social>a:hover img{
    opacity:0.7;
}
.site-footer .social img{
    max-width: 3.3rem;
    max-height: 3.3rem;
}
.site-footer .social a:hover{
    opacity:1;
}
.site-footer .footer-cta{
    padding: 8.7rem 0;
    border-bottom: 3px solid var(--white);
}
.site-footer .footer-cta .cta-block{
    max-width: 61.6rem;
}
.site-footer .footer-cta .cta-block a:hover{
    opacity:1;
}
.site-footer .footer-cta .cta-block h4{
    color: var(--white);
    margin-bottom: 2rem;
}
.site-footer .footer-cta .cta-block p{
    line-height: 1.5;
    font-size: 2.1rem;
    color: var(--white);
}
.site-footer .footer-cta button{
    background-color: var(--white);
    color: var(--red);
}
.site-footer .footer-cta button:hover{
    background-color: var(--red);
    color: var(--white);
    border-color: var(--white);
}
.site-footer .company-info-footer{
    padding: 8.7rem 0;
    border-bottom: 3px solid var(--white);
}
.site-footer .company-info-footer .info{
    margin-bottom: 1rem;
}
.site-footer .company-info-footer .col-md-6 > .info:last-child{
    margin-bottom:0;
}
.site-footer .company-info-footer .info .title{
    font-size: 1.7rem;
    margin-bottom: -0.2rem;
    font-weight: 500;
    text-transform: uppercase;
}
.site-footer .company-info-footer .info .copy{
    font-size:1.7rem;
    margin-bottom:0;
    line-height:1.4;
}





/* MAIN CONTENT */
.site-main{
    padding-top: 13.8rem;
}

/* Edit button */

.edit-link{
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    background-color: var(--white);
    color: var(--black);
    width: 8rem;
    height: 3rem;
    text-transform: uppercase;
    font-size: 1.8rem;
    letter-spacing: 1px;
    border: 2px solid var(--black);
    z-index: 999;
}
.edit-link a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.edit-link:hover{
    background-color: var(--red);
    color: var(--white);
    border-color: red;
}

/* HERO */
.general-hero{
    position: relative;
    min-height: 61rem;
    display: flex;
    align-items: flex-end;
}
.general-hero .text-container{
    max-width: 108rem;
    position: relative;
    z-index: 15;
    padding-bottom: 11rem;
}
.general-hero .text-container h1{
    color: var(--white);
}
.general-hero .text-container .copy{
    color: var(--white);
    font-size: 2.4rem;
    font-weight:500;
}
.general-hero .hero-image{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    z-index: 10;
}
/* Homepage hero */
body.home .general-hero::before{
    content:'';
    display:block;
    width: 100%;
    height: 30rem;
    position:absolute;
    top:0;
    left:0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.36) 100%);
    z-index:20;
    opacity:0.5;
}

/* INTRO SECTION */
.intro-section{
    margin: 12rem 0;
}
.intro-section .image{
    padding-left: 4rem;
}
.intro-section .copy-content{
    padding-right: 4rem;
}
.intro-section .copy h2{
    position: relative;
    padding-top: 3rem;
    margin-bottom: 4rem;
}
.intro-section .copy h2::before{
    content: '';
    width: 9.9rem;
    height: 7px;
    background-color: var(--black);
    position: absolute;
    top: 0;
    left: 0;
}
.intro-section .copy h5{
    margin-top: 3.5rem;
    margin-bottom: 2.5rem;
}
.intro-section .copy ul li{
    margin-bottom: 1rem;
}
.intro-section button{
    margin-top: 4rem;
}

/* BANNERS */
.banner.grey{
    background: rgba(0, 0, 0, 0.05);
}
.banner.red{
    background: var(--red);
}
.banner{
    padding: 12rem 0;
}
.banner .title{
    margin-bottom: 7.2rem;
    text-align: center;
}
.banner.red .title{
    color: var(--white);
}
.banner.red .title span{
    color: var(--black);
}
.banner .items{
    display: flex;
    column-gap: 11rem;
    row-gap: 8rem;
    justify-content: center;
    flex-wrap: wrap;
}
.banner .item{
    width: calc(25% - 11rem); 
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 3.9rem;
}
.banner .item .icon {
    width:100%;
    height: 8rem;   
    background-position: center;
    position: relative;
    border-radius:0.5rem;
    overflow:hidden;
}
.banner .item .icon img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:contain;
}
.banner .item h6{
    letter-spacing: 1.05px;
    text-align: center;
    margin-bottom:0;
    line-height: 1.3;
}
.banner.red .item h6{
    color: var(--white);
}
.testimonials-carousel .swiper{
    
}
.swiper-slide {
    /*min-height: 85vh;*/
    height: auto;
}
.swiper-slide a:hover button{
    background-color: var(--white);
    color: var(--red);
    border: 0.2rem solid var(--red);
    transition-duration: 0.15s;
}
.testimonials-carousel .testimonial{
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 12rem;
    padding-bottom: 18rem;
}
.testimonials-carousel .testimonial .image::after{
    content: '';
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    z-index: 11;
    background: rgba(0, 0, 0, 0.5);
}
.testimonials-carousel .testimonial .image img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    z-index: 10;
}
.testimonials-carousel .testimonial .quote{
    position: relative;
    color: var(--white);
    background: url(../img/quotes.svg) no-repeat top center;
    background-size: 7.42rem 5.6rem;
    z-index: 12;
    padding-top: 12.8rem;
    text-align: center;
}
.testimonials-carousel .testimonial .quote p{
    font-size: 3rem;
    margin-bottom: 2.5rem;
    line-height: 1.5;
    color: var(--white);
    font-family: "Cal Sans", sans-serif;
    letter-spacing:0.03em;
}
.testimonials-carousel .testimonial .author{
    position: relative;
    color: var(--white);
    z-index: 12;
    text-align: center;
    margin-bottom:0;
    margin-top: 4rem;
    font-size: 1.9rem;
    line-height: 1.3;
}
.testimonials-carousel button.cta{
    position: absolute;
    bottom: 14rem;
    left: calc(50% - 10.5rem);
    width: 21rem;
    z-index: 12;
}
.testimonials-carousel button.cta:hover{
    border-color:var(--white);
}
.testimonials-carousel .swiper-horizontal>.swiper-pagination-bullets{
    bottom: 3.5rem;
}
.testimonials-carousel .swiper-pagination-bullet{
    opacity: 1;
    background: var(--white);
    width: 2.6rem;
    height: 2.6rem;
    margin: 0 0.7rem !important;
}
.testimonials-carousel .swiper-pagination-bullet-active{
    background: var(--red);
}

/* GALLERY */
.gallery{
    margin: 12rem 0;
}
.gallery h2{
    position: relative;
    padding-top: 3rem;
    margin-bottom: 6.4rem;
}
.gallery h2::before{
    content: '';
    width: 9.9rem;
    height: 7px;
    background-color: var(--black);
    position: absolute;
    top: 0;
    left: 0;
}
.gallery .images{
    row-gap: 3rem;
}
.gallery .images .image{
    position: relative;
    padding-bottom: 60%;
    width: 100%;
}
.gallery .images .image img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
}
.fancybox__caption{
    font-size: 1.8rem;
}
.fancybox__backdrop{
    background: rgba(24, 24, 27, 0.8);
}
/* Pages carousel */
.pages-carousel{
    margin-top: 12rem;
    margin-bottom: 12rem;
}
.pages-carousel .top{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 7rem;
    column-gap: 3rem;
}
.pages-carousel h2{
    margin-bottom: 0;
}
.pages-carousel .swiper {
    width: calc(100% + 9rem);
    padding-top: 1rem;
}
@media (min-width: 1700px) {
    .pages-carousel .swiper {
        width: calc((1510px + 9rem) + ((100vw - 1700px) / 2));
    }
}
.pages-carousel .page-teaser .image{
    position: relative;
    padding-bottom: 70%;
    overflow: hidden;
    border-radius: 1rem;
}
.pages-carousel .page-teaser .image img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    z-index: 10;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.pages-carousel .swiper-slide a:hover .page-teaser .image img{
    transition: 0.3s ease-in-out;
    transform: scale(1.04);
}
.pages-carousel .page-teaser h3{
    margin-top: 2.6rem;
    margin-bottom: 3.2rem;
}
.swiper-button-next:after, .swiper-button-prev:after{
    font-size: 3.5rem;
    font-weight: 900;
}
.swiper-button-prev{
    height: 4rem;
    color: var(--red);
    position: relative;
    top: auto;
    left: auto;
    margin-top: 0;
}
.swiper-button-next{
    height: 4rem;
    color: var(--red);
    position: relative;
    top: auto;
    left: auto;
    right:0;
    margin-top: 0;
}
.swiper-navigation{
    display: flex;
    column-gap: 3rem;
    height: 4rem;
    justify-content: flex-end;
}

/* Homepage */
.home .site-main{
    padding-top: 0;
}
.home .site-header{
    background-color: transparent;
}
.home .site-header ul#main-menu>li{
    color: var(--white);
}
.home .site-header .site-branding{
    background-image: url(../img/Logo-white.svg);
    background-size: contain;
    background-repeat:no-repeat;
}
.home .site-header .site-branding img{
    visibility: hidden;
}
.home .general-hero{
    min-height: 84rem;
}
.home .general-hero h1{
    font-size: 11rem;
    position: relative;
    padding-bottom: 7rem;
    margin-bottom: 0;
}
.home .general-hero h1::after{
    content: '';
    width: 35.6rem;
    height: 1.2rem;
    background-color: var(--white);
    position: absolute;
    bottom: 0;
    left: 0 ;
}
.home .general-hero .text-container{
    padding-bottom: 20rem;
}
.home-intro-section{
    margin: 14rem 0;
    text-align: center;
}
.home-intro-section p{
    font-size: 2.7rem;
    line-height: 1.7;
    max-width: 136.7rem;
    margin: 0 auto;
}

.home-pages-teaser{
    margin: 14rem 0;
}
.home-pages-teaser .page-teaser .image{
    width: 100%;
    position: relative;
    padding-bottom: 75%;
}
.home-pages-teaser .page-teaser{
    margin-bottom: 13rem;
}
.home-pages-teaser .page-teaser .copy{
    padding-left: 5.5rem;
}
.home-pages-teaser .page-teaser.reverse-order .copy{
    padding-left: 0;
    padding-right: 5.5rem;
}
.home-pages-teaser .page-teaser .image img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
}
.home-pages-teaser .page-teaser h2{
    font-size: 9.8rem;
    max-width: 54rem;
    padding-top: 4.8rem;
    position: relative;
    margin-bottom: 4.2rem;
}
.home-pages-teaser .page-teaser h2 span{
    color: var(--red);
}
.home-pages-teaser .page-teaser h2::before{
    content: '';
    position: absolute;
    width: 12.8rem;
    height: 1.1rem;
    background-color: var(--black);
    top: 0;
    left: 0;
}
.home-pages-teaser .page-teaser .summary{
    margin-bottom: 5.8rem;
    font-size: 1.9rem;
    font-weight: 500;
}

/* CONTACT PAGE */
.page-id-21 #contact-menu li a {
    background-color: var(--white);
    color: var(--red);
    border: 0.2rem solid var(--red);
    transition-duration: 0.15s;
}
.page-id-21 #contact-menu li a:hover {
    background-color: var(--red);
    color: var(--white);
    border: 0.2rem solid var(--red);
    transition-duration: 0.15s;
}
.page-id-21 main .entry-header > .container{
    max-width:125.9rem;
}
.page-id-21 .entry-header{
    margin-top: 12rem;
    margin-bottom: 16rem;
}
.page-id-21 .entry-header h1 span{
    color: var(--red);
}
.page-id-21 .the-content a{
    color: var(--red);
    text-decoration: underline;
    font-weight: 700;
}
.page-id-21 .the-content p{
    font-size: 2.4rem;
}
.page-id-21 .the-content h4{
    margin-bottom:0;
}
.form-container{
    background: rgba(0, 0, 0, 0.05);
    padding-top: 12rem;
    padding-bottom: 12rem;
}
.wpcf7-spinner{
    display:none;
}
.page-id-21 form > p{
    margin-bottom:0;
}
form h3{
    margin-bottom: 5.4rem;
}
form label{
    margin-bottom: 1.4rem;
}
form input[type="text"],
form input[type="email"],
form input[type="tel"],
form input[type="date"],
form input[type="time"],
form input[type="number"]{
    background-color: transparent;
    height: 5.8rem;
    width: 100%;
    border-radius: 0;
    border: 1px solid var(--black);
    padding: 0 1rem;
}
form textarea{
    background-color: transparent;
    height: 14rem;
    width: 100%;
    border-radius: 0;
    border: 1px solid var(--black);
    padding: 1rem;
}
form .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
    margin-top: 0rem;
}
form .wpcf7-acceptance .wpcf7-list-item>label>input[type=checkbox] {
    height: 100%;
    height: 3.2rem;
    width: 3.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    margin-right: 2.3rem;
    position: relative;
    z-index: 50;
    margin-top: 0rem;
}
form .wpcf7-acceptance .wpcf7-list-item>label>input[type=checkbox]:before{
    content: "";
    position: absolute;
    height: 100%;
    height: 3.2rem;
    width: 3.2rem;
    top: 0;
    left: 0;
    border: solid 1px black;
    border-radius: 0;
    padding: 1px;
    background: rgb(242 242 242);
}
form .wpcf7-acceptance .wpcf7-list-item>label>input[type=checkbox]:checked:after{
    content: "";
    display: block;
    width: 1.2rem;
    height: 1.8rem;
    border: solid var(--red);
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -0.4rem;
    margin-left: 0.1rem;
}
form .wpcf7-acceptance .wpcf7-list-item>label{
    display: flex;
    align-items: center;
    font-weight: 500;
    color: var(--black);
    font-size: 1.7rem;
}
form .wpcf7-acceptance .wpcf7-list-item>label a{
    color: var(--red);
    font-weight: 700;
}
form .wpcf7-acceptance .wpcf7-list-item>label a:hover{
    text-decoration:underline;
}
.wpcf7-not-valid-tip{
    font-size: 1.7rem;
}
form input[type="submit"]{
    font-size: 1.8rem;
    background-color: var(--red);
    min-height: 4.8rem;
    padding: 1.2rem 7rem;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-family: "Cal Sans", sans-serif;
    margin-top: 5.1rem;
}
/* Form messaging */
.wpcf7-not-valid-tip {
    color: var(--red);
    font-weight: 600;
}
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.sent .wpcf7-response-output {
    border-color: var(--red);
    border-color: var(--black);
}
.wpcf7 form .wpcf7-response-output {
    margin: 6rem 0 6rem 0;
    padding: 4rem;
    border: 6px solid var(--red);
    border-color: var(--black);
    font-size: 3rem;
    text-align: center;
    font-weight: 500;
    color: var(--white);
    background-color: var(--red);
    background-color: var(--black);
    border-color: var(--red);
    border-color: var(--black);
}
/* Online Quote Form */
form .online-quote-form{
    max-width:1079px;
    margin: 0 auto;
}
form .online-quote-form .section{
    margin-bottom:6rem;
}
form .online-quote-form .section.your-details{
    margin-top:8rem;
}
form .online-quote-form h4.primary-title{
    color:var(--black);
    position: relative;
    padding-top: 3rem;
}
form .online-quote-form h4.primary-title::before {
    content: '';
    width: 7rem;
    height: 6px;
    background-color: var(--black);
    position: absolute;
    top: 0;
    left: 1.5rem;
}
form .online-quote-form label{
    margin-bottom:0;
    width: 100%;
}
.intro-section .copy form .online-quote-form h5 {
    font-size: 2.7rem;
    margin-top: 0rem;
    margin-bottom: 2rem;
    /*border-bottom: 3px solid var(--red);*/
    padding-left: 0;
    margin-left: 1.5rem;
    width: calc(100% - 3rem);
    padding-bottom: 8px;
}
.intro-section .copy form .online-quote-form h6 {
    font-size: 1.9rem;
    text-transform: none;
    font-family: "Montserrat", sans-serif;
    /*font-weight: 600;*/
    margin-top: 1rem;
    margin-bottom: 1rem;
}
form .online-quote-form p.time{
    margin-bottom: 0rem;
}
form .online-quote-form select{
    background-color: transparent;
    height: 5.8rem;
    width: 100%;
    border-radius: 0;
    border: 1px solid var(--black);
    padding: 0 1rem;
}
form .online-quote-form .hours-minutes-surround > p{
    display:flex;
    column-gap:2px;
}
form .online-quote-form .hours-minutes-surround > p > span{
    width:50%;
    max-width: 10rem;
}
form .online-quote-form .departure-details{
    margin-top: 2rem;
    margin-bottom: 3rem;
}
form .online-quote-form .wpcf7-list-item {
    display: inline-block;
    margin: 0 0rem 0 0em;
    width:100%;
}
form .online-quote-form .address label{
    font-size:1.6rem;
}
form .online-quote-form .section.requirements {
    margin-bottom: 2.5rem;
}



/* Legal page */
.page-template-legal-page article{
    max-width: 125.9rem;
    margin: 0 auto;
}
.page-template-legal-page .entry-header{
    margin-top: 12rem;
}
.page-template-legal-page .entry-header h1{
    margin-bottom: 4rem;
}
.page-template-legal-page .entry-header h1 span{
    color: var(--red);
}
.page-template-legal-page .entry-content{
    margin-bottom: 16rem;
}

/* 404 page */
.error404 .site-main .container{
    max-width: 129rem;
}
.error404 .entry-header{
    margin-top: 13.9rem;
    margin-bottom: 3.3rem;
}
.error404 .entry-header h1{
    color: var(--red);
}
.error404 .entry-content{
    margin-bottom: 26.7rem;
}
.error404 .entry-content p{
    font-size: 3rem;
}
.error404 .entry-content a{
    text-decoration: underline;
}




/* MEDIA QUERIES */
@media only screen and (max-width: 1599px){

    .site-header .site-branding {
        width: 30rem;
    }
    .site-main {
        padding-top: 12.2rem;
    }

    /* Homepage */
    .home-intro-section {
        margin: 12rem 0;
        text-align: center;
    }
    .home-pages-teaser {
        margin: 12rem 0;
    }

    /* BANNER */
    .banner .items {
        column-gap: 8rem;
        row-gap: 8rem;
    }
    .banner .item{
        width: calc(25% - 8rem);
        row-gap: 3.9rem;
    }

    /* FOOTER */
    .site-footer .footer-logo{
        width: 30rem;
    }

}


@media only screen and (max-width: 1499px){

    .home-intro-section p {
        font-size: 2.4rem;
    }

}


@media only screen and (max-width: 1399px){

    .container {
        padding-left: 7rem;
        padding-right: 7rem;
    }
    .pages-carousel .swiper {
        width: calc(100% + 7rem);
    }

    h1 {
        font-size: 8.6rem;
    }
    h2 {
        font-size: 5.6rem;
    }

    /* Homepage */
    .home .general-hero h1 {
        font-size: 10rem;
    }
    .home-pages-teaser .page-teaser h2 {
        font-size: 8.6rem;
        padding-top:4rem;
        margin-bottom: 3.5rem;
    }
    .home-pages-teaser .page-teaser h2::before{
        width: 12rem;
        height: 1rem;
    }
    .home-pages-teaser .page-teaser .summary {
        margin-bottom: 4.5rem;
    }
    .home-pages-teaser .page-teaser{
        margin-bottom: 12rem;
    }
    .home-pages-teaser .page-teaser .copy {
        padding-left: 4rem;
    }
    .home-pages-teaser .page-teaser.reverse-order .copy {
        padding-left: 0;
        padding-right: 4rem;
    }

    /* BANNER */
    .banner .items {
        column-gap: 8rem;
        row-gap: 8rem;
    }
    .banner .item{
        width: calc(33.33333333% - 8rem);
        row-gap: 3.9rem;
    }

}


@media only screen and (max-width: 1299px){

    .site-header .site-branding {
        width: 22.5rem;
    }
    .site-header .inner {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
    .site-main{
        padding-top: 79px;
    }

    /* FOOTER */
    .site-footer .footer-logo{
        width: 22.5rem;
    }
    .site-footer #footer-menu li a {
        font-size: 2.1rem;
    }


}


@media only screen and (max-width: 1199px){

    .container {
        padding-left: 5rem;
        padding-right: 5rem;
    }
    .pages-carousel .swiper {
        width: calc(100% + 5rem);
    }

    /* Typography */
    h1{
        font-size: 9.8rem;
        font-size: 7.8rem;
    }
    h2{
        font-size: 6rem;
        font-size: 5.2rem;
    }
    h3{
        font-size: 4.2rem;
    }
    h4{
        font-size: 3.6rem;
    }
    h5{
        font-size: 3rem;
    }
    h6{
        font-size: 2.1rem;
    }

    /* Homepage */
    .home .general-hero h1 {
        font-size: 9rem;
    }
    .home-pages-teaser .page-teaser h2 {
        font-size: 7.8rem;
    }
    .home-pages-teaser .page-teaser{
        margin-bottom: 10rem;
    }
    .home-intro-section{
        margin: 10rem 0;
        text-align: center;
    }
    .home-pages-teaser {
        margin: 10rem 0;
    }
    .home-pages-teaser .page-teaser h2::before {
        width: 10rem;
        height: 0.9rem;
    }

    /* VERTICAL SPACING */
    .general-hero .text-container {
        padding-bottom: 9rem;
    }
    .intro-section {
        margin: 10rem 0;
    }
    .banner {
        padding: 10rem 0;
    }    
    .pages-carousel{
        margin-top: 10rem;
        margin-bottom: 10rem;
    }
    .site-footer {
        padding-top: 10rem;
    }

    /* Homepage */
    .home-pages-teaser .page-teaser .copy {
        padding-left: 0rem;
    }
    .home-pages-teaser .page-teaser .surround{
        padding-right:2rem;
    }
    .home-pages-teaser .page-teaser.reverse-order .copy {
        padding-left: 0;
        padding-right: 0rem;
    }
    .home-pages-teaser .page-teaser.reverse-order .surround {
        padding-right: 0rem;
        padding-left:2rem;
    }



    /* BANNER */
    .banner .items {
        column-gap: 8rem;
        row-gap: 8rem;
    }
    .banner .item{
        width: calc(50% - 8rem);
        row-gap: 3.9rem;
    }
    .banner .item .icon{
        max-height:7rem;
    }

    /* Testimonials Carousel */
    .testimonials-carousel .testimonial {
        height: 100%;
    }
    .testimonials-carousel .testimonial .quote {
        padding-top: 10rem;
    }
    .testimonials-carousel .testimonial .quote p {
        font-size: 2.4rem;
    }

    /* CONTACT US */
    .page-id-21 .entry-header {
        margin-top: 10rem;
        margin-bottom: 10rem;
    }
    .form-container {
        padding-top: 10rem;
        padding-bottom: 10rem;
    }
    form h3 {
        margin-bottom: 4rem;
    }

    /* LEGAL PAGE */
    .page-template-legal-page .entry-header {
        margin-top: 10rem;
    }
    .page-template-legal-page .entry-content {
        margin-bottom: 14rem;
    }

    /* FOOTER */
    .site-footer .top-footer {
        padding-bottom: 6rem;
    }
    .site-footer .footer-cta {
        padding: 6rem 0;
    }
    .site-footer .bottom-footer{
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

}


@media only screen and (max-width: 991px){

    html, body {
        font: normal 9px/1.5 arial,sans-serif;
        font-family: "Montserrat", sans-serif;
    }

    .container {
        padding-left: 4rem;
        padding-right: 4rem;
    }
    .pages-carousel .swiper {
        width: calc(100% + 4rem);
    }

    .site-main {
        padding-top: 71px;
    }

    /* General hero */
    .general-hero {
        min-height: 0;
    }
    .general-hero .text-container {
        padding-top: 18rem;
        padding-bottom: 9rem;
    }
    .home .general-hero {
        min-height: 0;
    }
    .home .general-hero .text-container {
        padding-top: 36rem;
        padding-bottom: 27rem;
    }
    .home .general-hero h1::after {
        width: 18rem;
        height: 1.1rem;
    }
    .home .general-hero h1 {
        padding-bottom: 5rem;
    }


    /* Homepage */
    .home-pages-teaser .page-teaser .copy {
        padding-left: 0rem;
    }
    .home-pages-teaser .page-teaser .surround{
        padding-right:1rem;
    }
    .home-pages-teaser .page-teaser.reverse-order .copy {
        padding-left: 0;
        padding-right: 0rem;
    }
    .home-pages-teaser .page-teaser.reverse-order .surround {
        padding-right: 0rem;
        padding-left:1rem;
    }
    .home-pages-teaser .page-teaser h2 {
        font-size: 6rem;
    }
    .home-pages-teaser .page-teaser h2 {
        font-size: 6rem;
        max-width: 100%;
        padding-top: 3rem;
        position: relative;
        margin-bottom: 3.2rem;
    }
    .home-pages-teaser .page-teaser .summary {
        margin-bottom: 4rem;
    }

    /* INTRO SECTION */
    .intro-section .image {
        padding-left: 0rem;
        /*max-width:68rem;*/
        margin-top:6rem;
        margin-bottom:0rem;
    }
    .intro-section .copy h2 {
        margin-bottom: 3rem;
    }

    /* BANNER */
    .banner .title {
        margin-bottom: 6rem;
    }
    .banner .items {
        column-gap: 6rem;
        row-gap: 6rem;
    }
    .banner .item{
        width: calc(50% - 6rem);
        row-gap: 3.5rem;
    }

    /* PAGES CAROUSEL */
    .pages-carousel .top {
        margin-bottom: 5rem;
    }

    /* FORM */
    .wpcf7 form .wpcf7-response-output {
        font-size: 2.4rem;
    }

    /* FOOTER */
    .site-footer .col-footer-menu{
        justify-content: flex-start;
        width: 100%;
        margin-top:3rem;
    }
    .site-footer #footer-menu{
        flex-wrap:wrap;
        column-gap: 2rem;
    }
    .site-footer #footer-menu>li {
        margin-bottom:0;
    }

}


@media only screen and (max-width: 991px) and (orientation:landscape){

    .home .general-hero .text-container {
        padding-top: 18rem;
        padding-bottom: 9rem;
    }

}


@media only screen and (max-width: 767px){

    html, body {
        font: normal 8px/1.5 arial,sans-serif;
        font-family: "Montserrat", sans-serif;
    }

    .container {
        padding-left: 3rem;
        padding-right: 3rem;
    }
    .pages-carousel .swiper {
        width: calc(100% + 3rem);
    }

    /* Typography */
    h1{
        font-size: 9.8rem;
        font-size: 7.8rem;
        font-size: 5.6rem;
    }
    h2{
        font-size: 6rem;
        font-size: 5.2rem;
        font-size: 4.2rem;
    }
    h3{
        font-size: 4.2rem;
        font-size: 3.6rem;
    }
    h4{
        font-size: 3.6rem;
        font-size: 3rem;
    }
    h5{
        font-size: 3rem;
        font-size: 2.4rem;
    }
    h6{
        font-size: 2.1rem;
    }


    /* VERTICAL SPACING */
    .general-hero .text-container {
        padding-top: 12rem;
        padding-bottom: 8rem;
    }
    .intro-section {
        margin: 9rem 0;
    }
    .banner {
        padding: 9rem 0;
    }    
    .pages-carousel{
        margin-top: 9rem;
        margin-bottom: 9rem;
    }
    .site-footer {
        padding-top: 9rem;
    }

    /* GENERAL HERO */
    .general-hero {
        min-height: 0;
    }
    .general-hero .text-container .copy{
        font-size: 2.1rem;
    }

    /* Homepage */
    .home .general-hero {
        min-height: 0;
        align-items: center;
    }
    .home .general-hero .text-container {
        padding-top: 18rem;
        padding-bottom: 9rem;
    }
    .home .general-hero h1 {
        font-size: 6.8rem;
        padding-top: 8rem;
        padding-bottom: 4rem;
    }
    .home .general-hero h1::after {
        content: '';
        background-color: var(--white);
        bottom: 0;
        left: 0;
        width: 12.8rem;
        height: 1.1rem;
    }
    .home-intro-section {
        margin: 9rem 0;
    }
    .home-intro-section p {
        font-size: 2.1rem;
    }
    .home-pages-teaser {
        margin: 9rem 0;
    }
    .home-pages-teaser .page-teaser h2::before{
        content:none;
    }
    .home-pages-teaser .page-teaser h2 {
        font-size: 4.8rem;
        padding-top: 0rem;
    }
    .home-pages-teaser .page-teaser{
        margin-bottom: 9rem;
    }
    .home-pages-teaser .page-teaser .surround{
        padding-right:0rem;
    }
    .home-pages-teaser .page-teaser.reverse-order .surround {
        padding-right: 0rem;
        padding-left:0rem;
    }
    .home-pages-teaser .page-teaser .image {
        margin-bottom: 5rem;
    }

    /* BANNER */
    .banner .item .icon {
        max-height: 6rem;
    }

    /* TESTIMONIALS CAROUSEL */
    .testimonials-carousel .testimonial h2.quote {
        font-size:3rem;
    }
    .testimonials-carousel .testimonial {
        align-items: flex-start;
        padding-top: 9rem;
        padding-bottom: 19rem;
        min-height: 0;
    }
    .testimonials-carousel button.cta {
        bottom: 11rem;
    }

    /* Pages Carousel */
    .pages-carousel .top{
        flex-wrap:wrap;
        row-gap:3rem;
    }
    .pages-carousel .top {
        margin-bottom: 3rem;
    }
    .swiper-navigation {
        column-gap: 1rem;
    }

    /* Legal Page */
    .page-template-legal-page .entry-header {
        margin-top: 9rem;
    }
    .page-template-legal-page .entry-content {
        margin-bottom: 9rem;
    }

    /* FOOTER */
    .site-footer .top-footer {
        padding-bottom: 5rem;
    }
    .site-footer .footer-cta {
        padding: 5rem 0;
    }
    .site-footer .bottom-footer{
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
    .site-footer #footer-menu>li{
        width:100%;
    }
    .site-footer .col-social{
        margin-top: 5rem;
        padding-left: 1.5rem;
        align-items: flex-start;
    }

    /* CONTACT US */
    .page-id-21 .the-content p {
        font-size: 2.1rem;
    }
    h4 {
        font-size: 2.7rem;
    }
    .page-id-21 .entry-header {
        margin-top: 9rem;
        margin-bottom: 9rem;
    }
    .form-container {
        padding-top: 9rem;
        padding-bottom: 9rem;
    }

    /* FOOTER */
    .site-footer .company-info-footer .col-md-6 > .info:last-child {
        margin-bottom: 1rem;
    }
    .site-footer .company-info-footer .col-md-6.rhs > .info:last-child {
        margin-bottom: 0;
    }


}


@media only screen and (max-width: 767px) and (orientation: landscape){

    .home .general-hero .text-container {
        padding-top: 12rem;
    }

}


@media only screen and (max-width: 600px){

    /* BANNER */
    .banner .title {
        margin-bottom: 6rem;
    }
    .banner .items {
        column-gap: 6rem;
        row-gap: 6rem;
    }
    .banner .item{
        width: 100%;
        row-gap: 3.5rem;
    }

}




/* MOBILE NAVIGATION */

    @media only screen and (max-width: 1199px){

        .home .site-header.site-header-nav-close .site-branding {
            background-image: none;
        }
        .home .site-header.site-header-nav-close .site-branding img {
            visibility: visible;
        }
        /*.site-header .inner {
            padding-top: 2.9rem;
            padding-bottom: 3rem;
        }*/

        /*.site-header .col-branding{
            width:calc(100% - 7.1rem);
        }*/
        .site-header .col-main-menu{
            display: flex;
            flex-direction: row-reverse;
            align-items: center;
        }
        #contact-menu{
            margin-right: 7.9rem;
        }
        .site-header ul#main-menu {
            position: fixed;
            width: 100%;
            min-height: calc(100vh - 9.5rem);
            background: white;
            right: 0rem;
            left:auto;
            top: 73px;
            flex-direction: column;
            justify-content: flex-start;
            padding: 2rem 5rem 8rem 5rem;
            list-style: none;
            margin: 0;
            -webkit-transform: translateX(100%);
            -moz-transform: translateX(100%);
            -ms-transform: translateX(100%);
            -o-transform: translateX(100%);
            transform: translateX(100%);
            -webkit-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
            -moz-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
            -o-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
            transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
            display: flex;
            height: 100%;
            align-items: start;
            overflow-y: auto;
        }
        /*.site-header.slim ul#main-menu {
            top: 73px;
        }*/
        #main-menu li{
            margin-bottom: 0rem;
        }
        .site-header #main-menu li a{
            font-size: 2.4rem;
            display: block;
            width: 100%;
            padding: 1rem 0;
        }
        .site-header #main-menu li.current-menu-item a,
        .site-header #main-menu li a:hover{
            text-decoration: underline;
            text-decoration-thickness: 2px;
            text-underline-offset: 3px;
        }
        #main-menu li a:before{
            display:none;
        }
        .site-header ul#main-menu > li{
            padding-top: 0rem;
            width: 100%;
            padding-right: 0rem;
            margin-bottom: 0rem;
        }
        .site-header #main-menu > li.cta{
            margin-top:4rem;
            padding-top: 0;
            width: auto;
        }
        
        .site-header .show #main-menu {
            -webkit-transform: translateX(0px);
            -moz-transform: translateX(0px);
            -ms-transform: translateX(0px);
            -o-transform: translateX(0px);
            transform: translateX(0px);
        }
        
        .burger-container{
            position: relative;
            height: 20px;
            width:22px;
        }
        .burger {
            width: 22px;
            height: 20px;
            position: absolute;
            top: 0;
            right: 0rem;
            left: auto;
            z-index: 999999;
            display: block;
            border-radius: 20px 0px;
            padding: 0rem;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .burger span {
            position: relative;
            margin-top: -2px;
            -webkit-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none;
            user-select: none;
            position: absolute;
            top: 50%;
        }
        .burger span, .burger span::before, .burger span::after {
            display: block;
            width: 22px;
            height: 2px;
            border-radius: 5px;
            background-color: var(--red);
            outline: 1px solid transparent;
            -webkit-transition-property: background-color, -webkit-transform;
            -moz-transition-property: background-color, -moz-transform;
            -o-transition-property: background-color, -o-transform;
            transition-property: background-color, transform;
            -webkit-transition-duration: 0.3s;
            -moz-transition-duration: 0.3s;
            -o-transition-duration: 0.3s;
            transition-duration: 0.3s;
        }
        .burger span::before{
            transition: all .3s;
        }
        .burger span::before, .burger span::after {
            position: absolute;
            content: "";
        }
        .burger span::before {
            top: -9px;  
        }
        .burger span::after {
            top: 9px;
        }
        header.slim .burger.clicked span,
        .burger.clicked span {
            background-color: transparent !important;
        }
        .burger.clicked span::before {
            top: -7px;
            -webkit-transform: translateY(7px) rotate(45deg);
            -moz-transform: translateY(7px) rotate(45deg);
            -ms-transform: translateY(7px) rotate(45deg);
            -o-transform: translateY(7px) rotate(45deg);
            transform: translateY(7px) rotate(45deg);
        }
        .burger.clicked span::after {
            top: 7px;
            -webkit-transform: translateY(-7px) rotate(-45deg);
            -moz-transform: translateY(-7px) rotate(-45deg);
            -ms-transform: translateY(-7px) rotate(-45deg);
            -o-transform: translateY(-7px) rotate(-45deg);
            transform: translateY(-7px) rotate(-45deg);
        }
        .burger:hover {
            cursor: pointer;
        }
        #contact-menu {
            margin-right: 4rem;
            /*display:none;*/
        }
        
        /* Home */
        .home .burger span, 
        .home .burger span::before, 
        .home .burger span::after {
            background-color: var(--white);
        }     
        .home.scroll .burger span, 
        .home.scroll .burger span::before, 
        .home.scroll .burger span::after,
        .home header.site-header.site-header-nav-close .burger span, 
        .home header.site-header.site-header-nav-close .burger span::before, 
        .home header.site-header.site-header-nav-close .burger span::after {
            background-color: var(--red);
        }      
        .home .site-header.site-header-nav-close{
            background-color: var(--white);
        }
        .home .site-header.site-header-nav-close ul#main-menu>li {
            color: var(--black);
        }

    }


    @media only screen and (max-width: 991px){

        .site-header ul#main-menu {
            top: 71px;
        }
        .site-header ul#main-menu {
            padding: 2rem 4rem 8rem 4rem;
        }

    }


    @media only screen and (max-width: 767px){

        .scroll .site-header .site-branding,
        .site-header .site-branding {
            width: 18.5rem;
        }
        .site-header ul#main-menu {
            top: 54px;
            min-height: 0;
            padding: 0;
            height: auto;
        }
        .site-main {
            padding-top: 55px;
        }
        .main-navigation ul {
            display: flex;
        }
        #contact-menu{
            margin-right:0;
            margin-top: 2rem;
        }
        #contact-menu li a:hover {
            background-color: var(--red) !important;
            color: var(--white) !important;
            border: 0.2rem solid var(--red) !important;
        }
        /*#contact-menu li a {
            padding: 1.2rem 2rem;
        }*/

        .site-header .main-navigation {
            top: 54px;
            position: fixed;
            width: 100%;
            min-height: calc(100vh - 55px);
            background: white;
            right: 0rem;
            left: auto;
            flex-direction: column;
            justify-content: flex-start;
            padding: 2rem 3rem 14rem 3rem;
            list-style: none;
            margin: 0;
            -webkit-transform: translateX(100%);
            -moz-transform: translateX(100%);
            -ms-transform: translateX(100%);
            -o-transform: translateX(100%);
            transform: translateX(100%);
            -webkit-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
            -moz-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
            -o-transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
            transition: transform 0.55s cubic-bezier(0.785, 0.135, 0.15, 0.86);
            display: flex    ;
            height: 100%;
            align-items: start;
            overflow-y: auto;
        }
        .site-header  .main-navigation.show {
            -webkit-transform: translateX(0px);
            -moz-transform: translateX(0px);
            -ms-transform: translateX(0px);
            -o-transform: translateX(0px);
            transform: translateX(0px);
        }
        .site-header ul#main-menu {
            top: 0px;
            position:relative;
        }

    }

    @media only screen and (max-width: 360px){

        #contact-menu li a {
            padding: 1.2rem 1rem;
        }
        #contact-menu {
            margin-right: 6rem;
        }

    }

