/*
Theme Name: Favapuccia
Theme URI: https://tandu.it
Author: Tandu
Author URI: https://tandu.it/
Description: Tema di Tandù per Favapuccia
Version: 2024.1
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl.html
Tags: tandu
Text Domain: favapuccia

WordPress Theme © 2024 Tandu
*/

@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Questrial&display=swap');

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}body{line-height:1}button{outline:0}/*ol,ul{list-style:none}*/blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}.screen-reader-text{clip:rect(1px, 1px, 1px, 1px);position:absolute !important}

/* --- GENERIC - TYPOGRAPHY --- */



/* --- :root --- */
:root {
    --header-lg: 84px;
    --header-md: 62px;

    --black: #010C21;
    --white: #ECECEC;
    --grey: #6B818C;
    --light-grey: #6B818C10;
    --blue: #012E71;

    --questrial: 'Questrial', Arial, Helvetica, sans-serif;
    --barlow: 'Barlow', Arial, Helvetica, sans-serif; 

    --gtr: 15px;
    /* --container: xx */
}

/* - Skipping bootstrap's containers - */
/* @media ( max-width: 990.1px ) {
    :root {
        --container: 2rem
    }
} */

/* .container-left { padding-left: var(--container); }
.container-right { padding-right: var(--container); } */

/* - GENERIC FONT FAMILY - */

html, body, div, span, applet, object, iframe, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    font-family: 'Helvetica', 'Arial', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Questrial', 'Arial', sans-serif;
    margin-bottom: 0;   
}

html body {
    width: 100%;
    margin: 0 auto;
    color: var(--black);
    background-color: var(--white);
}

html body p{
    font-family: var(--barlow);
}

/* - Colored text - */
.white-text, .white-text * { color:var(--white) }
.black-text, .black-text * { color:var(--black) }
.blue-text, .blue-text * { color:var(--blue) }
.grey-text, .grey-text * { color:var(--grey) }

/* - Colored backgrounds - */
.black-bcg { background-color: var(--black) }
.white-bcg { background-color: var(--white) }
.grey-bcg { background-color: var(--grey); }
.light-grey-bcg { background-color: var(--light-grey); }

.fixed-background {
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    background-repeat: no-repeat
}

@media screen and ( max-width: 768px ) {
    .fixed-background { background-attachment: scroll; }
}

/* - Uppercase, lowercase, centered text, right text, font weights- */

.no-uppercase, .no-uppercase * { text-transform: none !important }
.all-uppercase, .all-uppercase * { text-transform: uppercase !important }
.all-lowercase, .all-lowercase * { text-transform: lowercase !important }
.centered-text, .centered-text * { text-align: center !important }
.right-text, .right-text * { text-align: right !important; float: right !important }

.font-r,
.font-r > * { font-weight: 400 }
.font-m,
.font-m > * { font-weight: 500 }
.font-sb,
.font-sb > * { font-weight: 600 }
.font-b,
.font-b > * { font-weight: 700 }
.font-eb,
.font-eb > * { font-weight: 900 }
.font-u,
.font-u > * { text-decoration: underline }
.font-i,
.font-i > * { font-style: italic; }
.cap-text,
.cap-text > * { text-transform: capitalize }



/* - Basic definition - p - */
html {
    font-size: 16px !important;
    -webkit-font-3oothing: antialiased;
}
p, li {
    font-size: 1rem;
    line-height: 1.5em;
    margin: 0;
    -webkit-font-3oothing: antialiased;
    font-family: 'Questrial', 'Arial', sans-serif;
    color: var(--grey);
}

.questrial, .questrial * { font-family: var(--questrial) }
.barlow, .barlow * { font-family: var(--barlow); }

.page-title {
    text-transform: uppercase;
    font-size: 3rem;
}
.title-p, .title-p * {
    font-size: 1rem;
    line-height: 1em;
}
.title-15, .title-15 * {
    font-size: 1.5rem;
    line-height: 1em;
}
.title-2, .title-2 * {
    font-size: 2rem;
    line-height: 1em;
}
.title-25, .title-25 * {
    font-size: 2.5rem;
    line-height: 1em;
}
.title-3, .title-3 * {
    font-size: 3rem;
    line-height: 1em;
}
.title-35, .title-35 * {
    font-size: 3.5rem;
    line-height: 1em;
}
.title-4, .title-4 * {
    font-size: 4rem;
    line-height: 1em;
}
.title-5, .title-5 * {
    font-size: 5rem;
    line-height: 1em;
}
.title-6, .title-6 * {
    font-size: 6rem;
    line-height: 1em;
}

.lh-15, .lh-15 * { line-height: 1.5em; }
.ls-2 { letter-spacing: 2px; }

/* - Titles, text, inline elements - */
h1, h2, h3, h4, h5, h6 { margin-bottom: 0; }

a { color: inherit }
.main_color a,
.main_color a:hover { color: inherit }

strong,
strong a,
b,
b a {
    font-size: inherit;
    font-weight: 700 !important;
    color: inherit !important;
}

/* - Readjusting gutters and container dimension for tablets - */
/* body .row {
    --bs-gutter-x: 3.5rem
}

@media ( max-width: 767.9px ) {
    body .row {
        --bs-gutter-x: 1.5rem
    }
} */

@media (max-width: 992px) {
    body .container { max-width: 100%; }
}


/* --- GENERIC --- */

/* - Images - */

img, a img {
    display: block;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    width: 100%;
    height: auto;
}

/* - Hidden elements - */
.hidden-element { display: none !important }
.hidden-title {
    display: none;
    position: fixed;
    top: -300px;
    left: -300px;
}

/* - Selection - */
::-moz-selection {
    background-color:var(--black);
    color:var(--white);
}

::selection {
    background-color:var(--black);
    color:var(--white);
}


/* --- GENERIC - ELEMENTS --- */

/* - Forms - */

.cf-row p {
    display: flex;
    justify-content: space-between;
}
.cf-row p span {
    width: calc(50% - .5rem);
}

textarea, input[type="text"], input[type="email"], input[type="button"], input[type="submit"], input[type="reset"], input[type="search"], input[type="password"] {
    /* border: none;
    border-bottom: 1px #64748B solid;
    color:#64748B; */
    width: 100%;
}
/* .cf-row p span input,
.cf-row p span input::placeholder,
div p span textarea,
div p span textarea::placeholder {
    color: #AAAAAA;
}

.cf-row p span input,
div p span textarea {
    width: 100%;
    background-color: #F5F3F3;
    padding: .5rem 1rem;
    border: none;
    margin-bottom: 2rem;
} */

.wpcf7-form-control-wrap[data-name="acceptance-pp"] {
    padding-left: 1.5rem;
    position: relative;
}


.wpcf7-form-control-wrap[data-name="acceptance-pp"] input[type="checkbox"] { display: none; }
.wpcf7-form-control-wrap[data-name="acceptance-pp"] .wpcf7-list-item-label {
    padding-left: 1.5rem;
    display: block;
    font-size: 1rem;
}
.wpcf7-form-control-wrap[data-name="acceptance-pp"] .wpcf7-list-item-label::before {
    content: ' ';
    width: 1rem;
    height: 1rem;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
    background-color: #F5F3F3;
}
.wpcf7-form-control-wrap[data-name="acceptance-pp"] input:checked ~ .wpcf7-list-item-label::before {
    background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='14px' height='14px' viewBox='0 0 14 14' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3EPath 6%3C/title%3E%3Cg id='22012021' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='associazione' transform='translate(-739.000000, -2300.000000)' stroke='%23CD0067' stroke-width='1.5'%3E%3Cpolyline id='Path-6' points='740.138329 2306.90481 744.823929 2313.09024 751.769219 2300.912'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: .8em .8em;
    background-position: center;
}

.wpcf7-form-control-wrap[data-name="acceptance-pp"] ~ br { display: none; }
body form p label {
    width: 100%;
}
body form .cf-row label span.cf-label,
body form p label span.cf-label {
    display: block;
    padding: 0.5em;
    font-weight: 500;
}
body form p,
body form p .wpcf7-form-control-wrap textarea {
    width: 100%;
}
.wpcf7 form.sent .wpcf7-response-output {
    color: var(--black);
    padding: 1rem;
}
span[data-name="acceptance-pp"] .wpcf7-list-item { margin-left: 0; }
span[data-name="acceptance-pp"] .wpcf7-list-item-label { color: var(--black) }
span[data-name="acceptance-pp"] .wpcf7-list-item-label a { color: var(--black) }
@media ( max-width: 576px ) {
    .cf-row p {
        flex-wrap: wrap;
    }
    .cf-row p span {
        width: 100%;
    }
    .cf-row p span:last-child { margin-top: 1rem; }
}

/* - Buttons - */
input[type="submit"],
body div .btn {
    min-width: 200px;
    position: relative;
    font-size: inherit;
    line-height: inherit;
    text-align: center;
    /* 
    Choose:
    width: auto;
    padding: 0; */
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    text-decoration: none;
}
body div .btn span {
    font-family: 'Helvetica', 'Arial', sans-serif;
}

/* body div .btn.icon {
    justify-content: space-between;
}
body div .btn.icon::after {
    content: ' ';
    width: 1.5rem;
    flex: 0 0 1.5rem;
    height: 1.5rem;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    margin-left: 1rem;
} */

a.clean-link,
a.clean-link:hover,
.clean-link a,
.clean-link a:hover {
    color: inherit;
    text-decoration: none;
}

.cmb-75 { margin-bottom: .75rem !important }
.cmb-1 { margin-bottom: 1rem !important }
.cmb-2 { margin-bottom: 2rem !important }
.cmb-3 { margin-bottom: 3rem !important }
.cmb-4 { margin-bottom: 4rem !important }
.cmb-5 { margin-bottom: 5rem !important }
.cmb-6 { margin-bottom: 6rem !important }

.cmt-75 { margin-top: .75rem !important }
.cmt-1 { margin-top: 1rem !important }
.cmt-2 { margin-top: 2rem !important }
.cmt-25 { margin-top: 2.5rem !important }
.cmt-3 { margin-top: 3rem !important }
.cmt-4 { margin-top: 4rem !important }
.cmt-5 { margin-top: 5rem !important }
.cmt-6 { margin-top: 6rem !important }

.cpb-1 { padding-bottom: 1rem !important }
.cpb-2 { padding-bottom: 2rem !important }
.cpb-3 { padding-bottom: 3rem !important }
.cpb-4 { padding-bottom: 4rem !important }
.cpb-5 { padding-bottom: 5rem !important }
.cpb-6 { padding-bottom: 6rem !important }

.cpt-1 { padding-top: 1rem !important }
.cpt-2 { padding-top: 2rem !important }
.cpt-3 { padding-top: 3rem !important }
.cpt-4 { padding-top: 4rem !important }
.cpt-5 { padding-top: 5rem !important }
.cpt-6 { padding-top: 6rem !important }

/* - Animations - REDO - */
.animated--bcg {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 1;
}
.animated--bcg > * {
    z-index: 2;
}
.moving--img {
    overflow: hidden;
    position: relative;
}
.moving--img img:first-child { 
    opacity: 0;
    pointer-events: none;
}
.moving--img img:last-child { 
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

/* --- GENERIC - SITE SPECIFIC --- */

a:focus-visible, input:focus-visible {
    outline: black solid 2px;
}

/* #content {
    padding-top: var(--header-lg);
} */

section {
    overflow: hidden;
    position: relative;
    margin-bottom: 12rem;
}

section.no-margin {
    margin-bottom: 0;
}

.gen--title {
    font-family: var(--questrial);
    font-size: 3rem;
    font-weight: 400;
    line-height: normal;
    text-transform: uppercase;
}
.gen--title2 {
    font-family: var(--questrial);
    font-size: 2rem;
    font-weight: 400;
    line-height: normal;
}
.gen--article-title {
    font-family: var(--questrial);
    font-size: 4rem;
    font-weight: 400;
    line-height: normal;
}
.gen--subtitle {
    font-family: var(--questrial);
    font-size: 1rem;
    font-weight: 400;
    line-height: normal;
    text-transform: uppercase;
}
.gen--subtitle2 {
    font-family: var(--barlow);
    font-size: 1.25rem;
    font-weight: 500;
    line-height: normal;
    text-transform: uppercase;
}
.gen--p p {
    margin-bottom: 1em;
    font-family: var(--barlow);
}
.gen--p p:last-child {
    margin-bottom: 0px;
}
.gen--bcg {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.gen--bcg-contain {
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.gen--bcg.gen--bcg-overlay {
    z-index: 1;
    position: relative;
}
.gen--bcg.gen--bcg-overlay::after {
    content: ' ';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    opacity: 0.75;
    background-color:var(--black)
}
.gen--bcg.gen--bcg-overlay > * {
    position: relative;
    z-index: 5;
}
.gen--bef_aft-contain::before,
.gen--bef_aft-contain::after {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.gen--img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.gen--img-contain {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.gen--img-blog{
    aspect-ratio: 16/9;
    object-fit: cover;
}
.gen--round-img{
    width: 8rem;
    border-radius: 50%;
    padding: 2.5rem;
    box-shadow: 0px 4px 17.4px rgba(0, 0, 0, 0.25);
    margin-bottom: 3rem;
    margin: 0 auto 3rem auto;
}
.gen--radius{
    border-radius: 3rem;
}
.gen--hero-video {
    width: 100%;
    height: 100vh;
    position: relative;
}
.gen--hero-video iframe {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.gen--swiper-section {
    position: relative;
}
.gen--swiper-section .swiper-button-next::after,
.gen--swiper-section .swiper-button-prev::after {
    font-size: 1.25rem;
}
.gen--popup-gallery-wrapper .swiper-button-next::after,
.gen--popup-gallery-wrapper .swiper-button-prev::after {
    color:var(--white)
}
.gen--swiper-section .swiper-button-next, .gen--swiper-section .swiper-container-rtl .swiper-button-prev { right: -40px; }
.gen--swiper-section .swiper-button-prev, .gen--swiper-section .swiper-container-rtl .swiper-button-next { left: -40px; }

.gen--btn{
    background-color: var(--blue);
    color: var(--white);
    font-family: var(--questrial);
    text-transform: uppercase;
    font-size: 1rem;
    border-radius: 1.5rem;
    text-decoration: none;
    padding: 1rem 2.5rem;
}

/* .gen--btn span{
    color: var(--white);
    font-family: var(--questrial);
    text-transform: uppercase;
    font-size: 1rem;
    display: flex;
} */

.gen--btn.btn-chiamaci::after{
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33' height='33' viewBox='0 0 33 33' fill='none'%3E%3Cpath d='M28.2963 20.3077L22.4075 17.669L22.3913 17.6615C22.0856 17.5307 21.7521 17.4783 21.421 17.5088C21.0899 17.5394 20.7716 17.652 20.495 17.8365C20.4624 17.858 20.4311 17.8814 20.4013 17.9065L17.3588 20.5002C15.4313 19.564 13.4413 17.589 12.505 15.6865L15.1025 12.5977C15.1275 12.5665 15.1513 12.5352 15.1738 12.5015C15.3543 12.2256 15.4638 11.9094 15.4926 11.581C15.5214 11.2525 15.4686 10.9221 15.3388 10.619V10.604L12.6925 4.70524C12.5209 4.30932 12.2259 3.9795 11.8515 3.76503C11.4771 3.55056 11.0433 3.46294 10.615 3.51524C8.92122 3.73812 7.36649 4.56995 6.24118 5.85535C5.11587 7.14076 4.49695 8.79185 4.50001 10.5002C4.50001 20.4252 12.575 28.5002 22.5 28.5002C24.2084 28.5033 25.8595 27.8844 27.1449 26.7591C28.4303 25.6338 29.2621 24.079 29.485 22.3852C29.5374 21.9571 29.45 21.5234 29.2357 21.149C29.0215 20.7746 28.6919 20.4795 28.2963 20.3077ZM22.5 26.5002C18.258 26.4956 14.191 24.8084 11.1914 21.8088C8.19184 18.8092 6.50464 14.7423 6.50001 10.5002C6.49531 9.2796 6.93507 8.09898 7.73718 7.17887C8.53929 6.25876 9.64889 5.66207 10.8588 5.50024C10.8583 5.50522 10.8583 5.51025 10.8588 5.51524L13.4838 11.3902L10.9 14.4827C10.8738 14.5129 10.85 14.5451 10.8288 14.579C10.6407 14.8676 10.5303 15.2 10.5084 15.5438C10.4865 15.8876 10.5538 16.2313 10.7038 16.5415C11.8363 18.8577 14.17 21.174 16.5113 22.3052C16.8237 22.4538 17.1694 22.5188 17.5144 22.4938C17.8595 22.4688 18.1922 22.3547 18.48 22.1627C18.5121 22.1411 18.543 22.1177 18.5725 22.0927L21.6113 19.5002L27.4863 22.1315C27.4863 22.1315 27.4963 22.1315 27.5 22.1315C27.3402 23.3431 26.7444 24.4549 25.8241 25.259C24.9038 26.0631 23.7221 26.5044 22.5 26.5002Z' fill='%23ECECEC'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    width: 2rem;
    height: 2rem;
    margin-left: 1rem;
}

.gen--btn.btn-whatsapp::after{
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30' fill='none'%3E%3Cmask id='path-1-outside-1_437_257' maskUnits='userSpaceOnUse' x='0.199951' y='0.200012' width='29' height='29' fill='black'%3E%3Crect fill='white' x='0.199951' y='0.200012' width='29' height='29'/%3E%3Cpath d='M15 1.20001C7.38567 1.20001 1.19995 7.38573 1.19995 15C1.19995 17.4475 1.87116 19.7315 2.99058 21.7254L1.22222 28.0383C1.19397 28.1393 1.19269 28.246 1.21851 28.3476C1.24434 28.4493 1.29637 28.5424 1.3694 28.6177C1.44244 28.693 1.53394 28.7478 1.63477 28.7767C1.73561 28.8056 1.84226 28.8076 1.94409 28.7824L8.52651 27.1512C10.4607 28.1838 12.6555 28.8 15 28.8C22.6142 28.8 28.8 22.6143 28.8 15C28.8 7.38573 22.6142 1.20001 15 1.20001ZM15 2.40001C21.9657 2.40001 27.6 8.03429 27.6 15C27.6 21.9657 21.9657 27.6 15 27.6C12.7668 27.6 10.6752 27.0178 8.85698 26.0004C8.724 25.9261 8.56773 25.9051 8.41987 25.9418L2.65542 27.3703L4.20112 21.8555C4.22324 21.7775 4.22935 21.6959 4.21908 21.6156C4.2088 21.5352 4.18237 21.4578 4.14136 21.3879C3.03636 19.5142 2.39995 17.3341 2.39995 15C2.39995 8.03429 8.03423 2.40001 15 2.40001ZM9.9855 7.80001C9.60087 7.80001 9.05158 7.94311 8.60034 8.42931C8.32931 8.72134 7.19995 9.82172 7.19995 11.7563C7.19995 13.7732 8.59879 15.5135 8.76792 15.7371H8.76909V15.7383C8.75305 15.7172 8.98377 16.0513 9.29175 16.452C9.59973 16.8526 10.0304 17.3788 10.5714 17.9485C11.6535 19.0878 13.1749 20.4045 15.0632 21.2098C15.9328 21.5801 16.6189 21.8037 17.1386 21.9668C18.1019 22.2693 18.9792 22.2233 19.6382 22.1262C20.1315 22.0535 20.6741 21.8167 21.2109 21.477C21.7477 21.1373 22.2738 20.7148 22.5058 20.0731C22.672 19.613 22.7565 19.1878 22.7871 18.8379C22.8023 18.663 22.8043 18.5086 22.7929 18.3656C22.7815 18.2227 22.7937 18.1132 22.6605 17.8945C22.3812 17.4359 22.0648 17.4239 21.7347 17.2606C21.5513 17.1698 21.0291 16.9148 20.5054 16.6652C19.9823 16.416 19.5293 16.1952 19.2503 16.0957C19.0741 16.0323 18.8589 15.941 18.5484 15.9762C18.2379 16.0113 17.9312 16.2354 17.7527 16.5C17.5835 16.7509 16.9022 17.555 16.6945 17.7914C16.6917 17.7897 16.7097 17.798 16.6277 17.7574C16.3708 17.6303 16.0566 17.5222 15.5917 17.277C15.1269 17.0317 14.5453 16.6696 13.9089 16.1086V16.1074C12.9618 15.2736 12.2983 14.2267 12.089 13.875C12.1031 13.8582 12.0873 13.8786 12.1171 13.8492L12.1183 13.8481C12.3322 13.6374 12.5218 13.3857 12.682 13.2012C12.9091 12.9395 13.0093 12.7089 13.1179 12.4934C13.3343 12.0639 13.2138 11.5913 13.0886 11.3426V11.3414C13.0973 11.3586 13.0209 11.1901 12.9386 10.9957C12.8561 10.8008 12.7509 10.548 12.6386 10.2785C12.414 9.73951 12.1632 9.13496 12.014 8.78087V8.7797C11.8383 8.36262 11.6006 8.06216 11.2898 7.9172C10.979 7.77224 10.7044 7.81345 10.6933 7.8129H10.6921C10.4704 7.80267 10.227 7.80001 9.9855 7.80001ZM9.9855 9.00001C10.2168 9.00001 10.4449 9.00283 10.6359 9.01173C10.8324 9.02152 10.8202 9.02233 10.7824 9.0047C10.744 8.9868 10.7961 8.98098 10.9078 9.24611C11.0538 9.59282 11.3059 10.1996 11.5312 10.7402C11.6439 11.0106 11.7493 11.2643 11.8335 11.4633C11.9178 11.6623 11.9634 11.7734 12.0164 11.8793V11.8805L12.0175 11.8817C12.0695 11.9841 12.0649 11.9185 12.0468 11.9543C11.9202 12.2056 11.903 12.2673 11.775 12.4149C11.5799 12.6395 11.381 12.8901 11.2757 12.9938C11.1836 13.0843 11.0174 13.2252 10.9136 13.5012C10.8097 13.7776 10.8582 14.1568 11.025 14.4399C11.247 14.8168 11.9786 16.0076 13.1156 17.0086C13.8316 17.6398 14.4987 18.0576 15.0316 18.3387C15.5645 18.6198 15.9985 18.784 16.0957 18.832C16.3263 18.9462 16.5783 19.0348 16.8714 18.9996C17.1645 18.9644 17.4172 18.7866 17.5781 18.6047L17.5792 18.6035C17.7933 18.3608 18.4295 17.6344 18.7347 17.1867C18.7477 17.1913 18.7434 17.1878 18.8449 17.2242V17.2254H18.846C18.8924 17.2419 19.4725 17.5016 19.9898 17.7481C20.5071 17.9945 21.0321 18.2507 21.2027 18.3352C21.4489 18.457 21.5652 18.5363 21.5953 18.5367C21.5973 18.5895 21.5993 18.6467 21.5917 18.7336C21.5707 18.9746 21.5063 19.3081 21.3773 19.6652C21.3141 19.8401 20.985 20.2006 20.5699 20.4633C20.1548 20.726 19.6496 20.9115 19.4625 20.9391C18.8999 21.022 18.232 21.0522 17.4984 20.8219C16.9898 20.6622 16.3555 20.4556 15.5343 20.1059C13.8688 19.3956 12.4533 18.1869 11.4421 17.1223C10.9366 16.59 10.5315 16.0944 10.2433 15.7195C9.95567 15.3454 9.83007 15.1506 9.72534 15.0129L9.72417 15.0117C9.53827 14.7659 8.39995 13.1825 8.39995 11.7563C8.39995 10.2468 9.10105 9.65487 9.48042 9.24611C9.67958 9.03151 9.89732 9.00001 9.9855 9.00001Z'/%3E%3C/mask%3E%3Cpath d='M15 1.20001C7.38567 1.20001 1.19995 7.38573 1.19995 15C1.19995 17.4475 1.87116 19.7315 2.99058 21.7254L1.22222 28.0383C1.19397 28.1393 1.19269 28.246 1.21851 28.3476C1.24434 28.4493 1.29637 28.5424 1.3694 28.6177C1.44244 28.693 1.53394 28.7478 1.63477 28.7767C1.73561 28.8056 1.84226 28.8076 1.94409 28.7824L8.52651 27.1512C10.4607 28.1838 12.6555 28.8 15 28.8C22.6142 28.8 28.8 22.6143 28.8 15C28.8 7.38573 22.6142 1.20001 15 1.20001ZM15 2.40001C21.9657 2.40001 27.6 8.03429 27.6 15C27.6 21.9657 21.9657 27.6 15 27.6C12.7668 27.6 10.6752 27.0178 8.85698 26.0004C8.724 25.9261 8.56773 25.9051 8.41987 25.9418L2.65542 27.3703L4.20112 21.8555C4.22324 21.7775 4.22935 21.6959 4.21908 21.6156C4.2088 21.5352 4.18237 21.4578 4.14136 21.3879C3.03636 19.5142 2.39995 17.3341 2.39995 15C2.39995 8.03429 8.03423 2.40001 15 2.40001ZM9.9855 7.80001C9.60087 7.80001 9.05158 7.94311 8.60034 8.42931C8.32931 8.72134 7.19995 9.82172 7.19995 11.7563C7.19995 13.7732 8.59879 15.5135 8.76792 15.7371H8.76909V15.7383C8.75305 15.7172 8.98377 16.0513 9.29175 16.452C9.59973 16.8526 10.0304 17.3788 10.5714 17.9485C11.6535 19.0878 13.1749 20.4045 15.0632 21.2098C15.9328 21.5801 16.6189 21.8037 17.1386 21.9668C18.1019 22.2693 18.9792 22.2233 19.6382 22.1262C20.1315 22.0535 20.6741 21.8167 21.2109 21.477C21.7477 21.1373 22.2738 20.7148 22.5058 20.0731C22.672 19.613 22.7565 19.1878 22.7871 18.8379C22.8023 18.663 22.8043 18.5086 22.7929 18.3656C22.7815 18.2227 22.7937 18.1132 22.6605 17.8945C22.3812 17.4359 22.0648 17.4239 21.7347 17.2606C21.5513 17.1698 21.0291 16.9148 20.5054 16.6652C19.9823 16.416 19.5293 16.1952 19.2503 16.0957C19.0741 16.0323 18.8589 15.941 18.5484 15.9762C18.2379 16.0113 17.9312 16.2354 17.7527 16.5C17.5835 16.7509 16.9022 17.555 16.6945 17.7914C16.6917 17.7897 16.7097 17.798 16.6277 17.7574C16.3708 17.6303 16.0566 17.5222 15.5917 17.277C15.1269 17.0317 14.5453 16.6696 13.9089 16.1086V16.1074C12.9618 15.2736 12.2983 14.2267 12.089 13.875C12.1031 13.8582 12.0873 13.8786 12.1171 13.8492L12.1183 13.8481C12.3322 13.6374 12.5218 13.3857 12.682 13.2012C12.9091 12.9395 13.0093 12.7089 13.1179 12.4934C13.3343 12.0639 13.2138 11.5913 13.0886 11.3426V11.3414C13.0973 11.3586 13.0209 11.1901 12.9386 10.9957C12.8561 10.8008 12.7509 10.548 12.6386 10.2785C12.414 9.73951 12.1632 9.13496 12.014 8.78087V8.7797C11.8383 8.36262 11.6006 8.06216 11.2898 7.9172C10.979 7.77224 10.7044 7.81345 10.6933 7.8129H10.6921C10.4704 7.80267 10.227 7.80001 9.9855 7.80001ZM9.9855 9.00001C10.2168 9.00001 10.4449 9.00283 10.6359 9.01173C10.8324 9.02152 10.8202 9.02233 10.7824 9.0047C10.744 8.9868 10.7961 8.98098 10.9078 9.24611C11.0538 9.59282 11.3059 10.1996 11.5312 10.7402C11.6439 11.0106 11.7493 11.2643 11.8335 11.4633C11.9178 11.6623 11.9634 11.7734 12.0164 11.8793V11.8805L12.0175 11.8817C12.0695 11.9841 12.0649 11.9185 12.0468 11.9543C11.9202 12.2056 11.903 12.2673 11.775 12.4149C11.5799 12.6395 11.381 12.8901 11.2757 12.9938C11.1836 13.0843 11.0174 13.2252 10.9136 13.5012C10.8097 13.7776 10.8582 14.1568 11.025 14.4399C11.247 14.8168 11.9786 16.0076 13.1156 17.0086C13.8316 17.6398 14.4987 18.0576 15.0316 18.3387C15.5645 18.6198 15.9985 18.784 16.0957 18.832C16.3263 18.9462 16.5783 19.0348 16.8714 18.9996C17.1645 18.9644 17.4172 18.7866 17.5781 18.6047L17.5792 18.6035C17.7933 18.3608 18.4295 17.6344 18.7347 17.1867C18.7477 17.1913 18.7434 17.1878 18.8449 17.2242V17.2254H18.846C18.8924 17.2419 19.4725 17.5016 19.9898 17.7481C20.5071 17.9945 21.0321 18.2507 21.2027 18.3352C21.4489 18.457 21.5652 18.5363 21.5953 18.5367C21.5973 18.5895 21.5993 18.6467 21.5917 18.7336C21.5707 18.9746 21.5063 19.3081 21.3773 19.6652C21.3141 19.8401 20.985 20.2006 20.5699 20.4633C20.1548 20.726 19.6496 20.9115 19.4625 20.9391C18.8999 21.022 18.232 21.0522 17.4984 20.8219C16.9898 20.6622 16.3555 20.4556 15.5343 20.1059C13.8688 19.3956 12.4533 18.1869 11.4421 17.1223C10.9366 16.59 10.5315 16.0944 10.2433 15.7195C9.95567 15.3454 9.83007 15.1506 9.72534 15.0129L9.72417 15.0117C9.53827 14.7659 8.39995 13.1825 8.39995 11.7563C8.39995 10.2468 9.10105 9.65487 9.48042 9.24611C9.67958 9.03151 9.89732 9.00001 9.9855 9.00001Z' fill='%23ECECEC'/%3E%3Cpath d='M15 1.20001C7.38567 1.20001 1.19995 7.38573 1.19995 15C1.19995 17.4475 1.87116 19.7315 2.99058 21.7254L1.22222 28.0383C1.19397 28.1393 1.19269 28.246 1.21851 28.3476C1.24434 28.4493 1.29637 28.5424 1.3694 28.6177C1.44244 28.693 1.53394 28.7478 1.63477 28.7767C1.73561 28.8056 1.84226 28.8076 1.94409 28.7824L8.52651 27.1512C10.4607 28.1838 12.6555 28.8 15 28.8C22.6142 28.8 28.8 22.6143 28.8 15C28.8 7.38573 22.6142 1.20001 15 1.20001ZM15 2.40001C21.9657 2.40001 27.6 8.03429 27.6 15C27.6 21.9657 21.9657 27.6 15 27.6C12.7668 27.6 10.6752 27.0178 8.85698 26.0004C8.724 25.9261 8.56773 25.9051 8.41987 25.9418L2.65542 27.3703L4.20112 21.8555C4.22324 21.7775 4.22935 21.6959 4.21908 21.6156C4.2088 21.5352 4.18237 21.4578 4.14136 21.3879C3.03636 19.5142 2.39995 17.3341 2.39995 15C2.39995 8.03429 8.03423 2.40001 15 2.40001ZM9.9855 7.80001C9.60087 7.80001 9.05158 7.94311 8.60034 8.42931C8.32931 8.72134 7.19995 9.82172 7.19995 11.7563C7.19995 13.7732 8.59879 15.5135 8.76792 15.7371H8.76909V15.7383C8.75305 15.7172 8.98377 16.0513 9.29175 16.452C9.59973 16.8526 10.0304 17.3788 10.5714 17.9485C11.6535 19.0878 13.1749 20.4045 15.0632 21.2098C15.9328 21.5801 16.6189 21.8037 17.1386 21.9668C18.1019 22.2693 18.9792 22.2233 19.6382 22.1262C20.1315 22.0535 20.6741 21.8167 21.2109 21.477C21.7477 21.1373 22.2738 20.7148 22.5058 20.0731C22.672 19.613 22.7565 19.1878 22.7871 18.8379C22.8023 18.663 22.8043 18.5086 22.7929 18.3656C22.7815 18.2227 22.7937 18.1132 22.6605 17.8945C22.3812 17.4359 22.0648 17.4239 21.7347 17.2606C21.5513 17.1698 21.0291 16.9148 20.5054 16.6652C19.9823 16.416 19.5293 16.1952 19.2503 16.0957C19.0741 16.0323 18.8589 15.941 18.5484 15.9762C18.2379 16.0113 17.9312 16.2354 17.7527 16.5C17.5835 16.7509 16.9022 17.555 16.6945 17.7914C16.6917 17.7897 16.7097 17.798 16.6277 17.7574C16.3708 17.6303 16.0566 17.5222 15.5917 17.277C15.1269 17.0317 14.5453 16.6696 13.9089 16.1086V16.1074C12.9618 15.2736 12.2983 14.2267 12.089 13.875C12.1031 13.8582 12.0873 13.8786 12.1171 13.8492L12.1183 13.8481C12.3322 13.6374 12.5218 13.3857 12.682 13.2012C12.9091 12.9395 13.0093 12.7089 13.1179 12.4934C13.3343 12.0639 13.2138 11.5913 13.0886 11.3426V11.3414C13.0973 11.3586 13.0209 11.1901 12.9386 10.9957C12.8561 10.8008 12.7509 10.548 12.6386 10.2785C12.414 9.73951 12.1632 9.13496 12.014 8.78087V8.7797C11.8383 8.36262 11.6006 8.06216 11.2898 7.9172C10.979 7.77224 10.7044 7.81345 10.6933 7.8129H10.6921C10.4704 7.80267 10.227 7.80001 9.9855 7.80001ZM9.9855 9.00001C10.2168 9.00001 10.4449 9.00283 10.6359 9.01173C10.8324 9.02152 10.8202 9.02233 10.7824 9.0047C10.744 8.9868 10.7961 8.98098 10.9078 9.24611C11.0538 9.59282 11.3059 10.1996 11.5312 10.7402C11.6439 11.0106 11.7493 11.2643 11.8335 11.4633C11.9178 11.6623 11.9634 11.7734 12.0164 11.8793V11.8805L12.0175 11.8817C12.0695 11.9841 12.0649 11.9185 12.0468 11.9543C11.9202 12.2056 11.903 12.2673 11.775 12.4149C11.5799 12.6395 11.381 12.8901 11.2757 12.9938C11.1836 13.0843 11.0174 13.2252 10.9136 13.5012C10.8097 13.7776 10.8582 14.1568 11.025 14.4399C11.247 14.8168 11.9786 16.0076 13.1156 17.0086C13.8316 17.6398 14.4987 18.0576 15.0316 18.3387C15.5645 18.6198 15.9985 18.784 16.0957 18.832C16.3263 18.9462 16.5783 19.0348 16.8714 18.9996C17.1645 18.9644 17.4172 18.7866 17.5781 18.6047L17.5792 18.6035C17.7933 18.3608 18.4295 17.6344 18.7347 17.1867C18.7477 17.1913 18.7434 17.1878 18.8449 17.2242V17.2254H18.846C18.8924 17.2419 19.4725 17.5016 19.9898 17.7481C20.5071 17.9945 21.0321 18.2507 21.2027 18.3352C21.4489 18.457 21.5652 18.5363 21.5953 18.5367C21.5973 18.5895 21.5993 18.6467 21.5917 18.7336C21.5707 18.9746 21.5063 19.3081 21.3773 19.6652C21.3141 19.8401 20.985 20.2006 20.5699 20.4633C20.1548 20.726 19.6496 20.9115 19.4625 20.9391C18.8999 21.022 18.232 21.0522 17.4984 20.8219C16.9898 20.6622 16.3555 20.4556 15.5343 20.1059C13.8688 19.3956 12.4533 18.1869 11.4421 17.1223C10.9366 16.59 10.5315 16.0944 10.2433 15.7195C9.95567 15.3454 9.83007 15.1506 9.72534 15.0129L9.72417 15.0117C9.53827 14.7659 8.39995 13.1825 8.39995 11.7563C8.39995 10.2468 9.10105 9.65487 9.48042 9.24611C9.67958 9.03151 9.89732 9.00001 9.9855 9.00001Z' stroke='%23ECECEC' stroke-width='0.6' mask='url(%23path-1-outside-1_437_257)'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    width: 2rem;
    height: 2rem;
    margin-left: 1rem;
}

.gen--btn.btn-mail::after{
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='20' viewBox='0 0 26 20' fill='none'%3E%3Cpath d='M25 0H1C0.734784 0 0.48043 0.105357 0.292893 0.292893C0.105357 0.48043 0 0.734784 0 1V18C0 18.5304 0.210714 19.0391 0.585786 19.4142C0.960859 19.7893 1.46957 20 2 20H24C24.5304 20 25.0391 19.7893 25.4142 19.4142C25.7893 19.0391 26 18.5304 26 18V1C26 0.734784 25.8946 0.48043 25.7071 0.292893C25.5196 0.105357 25.2652 0 25 0ZM13 10.6437L3.57125 2H22.4287L13 10.6437ZM9.33875 10L2 16.7262V3.27375L9.33875 10ZM10.8188 11.3563L12.3188 12.7375C12.5032 12.9069 12.7446 13.0008 12.995 13.0008C13.2454 13.0008 13.4868 12.9069 13.6712 12.7375L15.1712 11.3563L22.4212 18H3.57125L10.8188 11.3563ZM16.6612 10L24 3.2725V16.7275L16.6612 10Z' fill='%23ECECEC'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    width: 2rem;
    height: 2rem;
    margin-left: 1rem;
}

.banner-overlay::before {
    content: '';
    position: absolute;
    top: 0;
    background: var(--blue);
    opacity: 0.8;
    width: 100%;
    height: 100%;
}

@media screen and (max-width:767px) {
    section {
        margin-bottom: 8rem;
    }
    .gen--title {
        font-size: 2.5rem;
    }
    .gen--round-img{
        width: 5rem;
        padding: 1.5rem;
    }
}

/* 
@media ( max-width: 768px ) {
    .gen--swiper-section .swiper-button-next, .gen--swiper-section .swiper-container-rtl .swiper-button-prev { right: -30px; }
    .gen--swiper-section .swiper-button-prev, .gen--swiper-section .swiper-container-rtl .swiper-button-next { left: -30px; }
} */


/* --- HEADER --- */
#masthead { display: none; }
#header {
    z-index: 100;
    position: sticky;
    width: 100%;
    top: 0;
    background-color: var(--white);
}

/* 
Transparent menu > color menu

body.home #header {
    position: fixed;
    background-color: transparent;
    transition: background-color 250ms ease;
}
body.home #header.scrolled {
    transition: background-color 250ms ease;
    background-color: var(--black);
}
body.home #content .home--hero {
    padding-top: calc(var(--header-lg)*2);
} */

#header > .container .row .col-12 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: var(--header-lg);
    position: relative;
    z-index: 110;
}
#logo img {
    width: 12rem;
    -o-object-fit: contain;
       object-fit: contain;
}
.logo-spacer,
.header-spacer { flex-grow: 1; }
.header-spacer { width: 108px; }

#header #menu li a,
#header #menu-mobile li a {
    text-decoration: none;
    color: var(--black);
    font-size: 1rem;
    font-weight: 400;
    text-transform: uppercase;
    font-family: var(--questrial);
}

#header > .container ul.menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 0;
    padding-left: 0;
}

#header > .container ul.menu li {
    padding: 0 20px;
    position: relative;
    display: flex;
    align-items: center;
}

#header > .container ul.menu li.menu-item-has-children ul.sub-menu {
    position: absolute;
    background-color: var(--white);
    padding: 5px;
    opacity: 0;
    pointer-events: none;
    top: 103%;
    left: 20px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
}
#header > .container ul.menu li.menu-item-has-children:hover > a {
    border-bottom: 2px solid var(--black)
}
#header > .container ul.menu li.menu-item-has-children:hover ul.sub-menu {
    opacity: 1;
    pointer-events: all;
}
#header > .container ul.menu li.menu-item-has-children ul.sub-menu li { padding: 10px 20px; }
#header > .container ul.menu li.menu-item-has-children ul.sub-menu li a { border-bottom: none }

#menu-mobile ul.menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

#footer .container ul.menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: block;
    margin-bottom: 0;
    padding-left: 0;
}

#footer .container ul.menu li {
    position: relative;
    display: block;
    font-family: var(--barlow);
    text-transform: uppercase;
    font-size: 1rem;
}

#footer .container ul.menu li a {
    position: relative;
    text-decoration: none;
    color: var(--grey);
}

/* --- HEADER - TABLET, MOBILE --- */
@media ( max-width: 1440.1px ) {
    #header > .container ul.menu li {
        padding: 0 10px;
        justify-content: center;
    }
}

/* --- MENU - MOBILE --- */
#menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
#nav-icon2 { display: none; }
.menu-phone-mobile { display: none; }
@media ( max-width: 1200px ) {
    #header > .container .row .col-12,
    #header > .container {
        height: var(--header-md)
    }
    #content {
        /* padding-top: var(--header-md); */
        padding-top: 0;
    } 
    /* 
    Transparent header > color header
    body.home #content {
        padding-top: 0;
    } 
    body.home #content .home--hero {
        padding-top: calc(var(--header-md)*2);
    } */
    #logo img {
        width: 9rem;
    }
}
@media ( max-width: 990.1px ) {
    #menu { display: none; }
    #nav-icon2 { display: block }
    .menu-phone-mobile { display: block; }
    .header--mobile {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
}

#nav-icon2 {
    z-index: 150;
    width: 30px;
    height: 22.5px;
    position: relative;
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
    border: none;
    background-color: transparent;
}

#nav-icon2 span {
  display: block;
  position: absolute;
  height: 2px;
  width: 50%;
  background: var(--white);
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

#nav-icon2 span:nth-child(even) {
  left: 50%;
  border-radius: 0 9px 9px 0;
}

#nav-icon2 span:nth-child(odd) {
  left:0px;
  border-radius: 9px 0 0 9px;
}

#nav-icon2 span:nth-child(1), #nav-icon2 span:nth-child(2) {
  top: 0px;
}

#nav-icon2 span:nth-child(3), #nav-icon2 span:nth-child(4) {
  top: 10px;
}

#nav-icon2 span:nth-child(5), #nav-icon2 span:nth-child(6) {
  top: 20px;
}

.hamburger-active #nav-icon2 span:nth-child(1),.hamburger-active #nav-icon2 span:nth-child(6) {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}

.hamburger-active #nav-icon2 span:nth-child(2),.hamburger-active #nav-icon2 span:nth-child(5) {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
}

.hamburger-active #nav-icon2 span:nth-child(1) { left: 5px; top: 7px; }
.hamburger-active #nav-icon2 span:nth-child(2) { left: calc(50% - 5px); top: 7px; }
.hamburger-active #nav-icon2 span:nth-child(3) { left: -50%; opacity: 0; }
.hamburger-active #nav-icon2 span:nth-child(4) { left: 100%; opacity: 0; }
.hamburger-active #nav-icon2 span:nth-child(5) { left: 5px; top: 12px; }
.hamburger-active #nav-icon2 span:nth-child(6) { left: calc(50% - 5px); top: 12px; }

.menu-mobile--overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color:rgba(0,0,0,.5);
    -webkit-transform: translateX(120%);
        -ms-transform: translateX(120%);
            transform: translateX(120%);
    -webkit-transition: -webkit-transform 500ms ease-in-out;
    transition: -webkit-transform 500ms ease-in-out;
    -o-transition: transform 500ms ease-in-out;
    transition: transform 500ms ease-in-out;
    transition: transform 500ms ease-in-out, -webkit-transform 500ms ease-in-out;
    -webkit-backdrop-filter: blur(1px);
            backdrop-filter: blur(1px);
    z-index: 129;
}
#menu-mobile {
    z-index: 130;
    position: fixed;
    background-color: var(--white);
    width: 400px;
    text-align: center;
    right: 0;
    top: 0;
    bottom: 0;
    -webkit-transform: translateX(120%);
        -ms-transform: translateX(120%);
            transform: translateX(120%);
    -webkit-transition: -webkit-transform 500ms ease-in-out;
    transition: -webkit-transform 500ms ease-in-out;
    -o-transition: transform 500ms ease-in-out;
    transition: transform 500ms ease-in-out;
    transition: transform 500ms ease-in-out, -webkit-transform 500ms ease-in-out;
    padding-top: 90px;
    -webkit-box-shadow: -25px 0px 15px -5px rgba(0,0,0,0.15);
    box-shadow: -25px 0px 15px -5px rgba(0,0,0,0.15);
}
#menu-mobile ul li a {
    color:var(--black);
    text-decoration: none;
}


.hamburger-active #menu-mobile {
    -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
            transform: translateX(0%);
    -webkit-transition: -webkit-transform 500ms ease-in-out;
    transition: -webkit-transform 500ms ease-in-out;
    -o-transition: transform 500ms ease-in-out;
    transition: transform 500ms ease-in-out;
    transition: transform 500ms ease-in-out, -webkit-transform 500ms ease-in-out;

}
.hamburger-active .menu-mobile--overlay {
    -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
            transform: translateX(0%);
    -webkit-transition: -webkit-transform 500ms ease-in-out;
    transition: -webkit-transform 500ms ease-in-out;
    -o-transition: transform 500ms ease-in-out;
    transition: transform 500ms ease-in-out;
    transition: transform 500ms ease-in-out, -webkit-transform 500ms ease-in-out;
}

/* .hamburger-active #menu-mobile { display: none; } */

#logo-mobile {
    display: block;
    padding: 0;
    width: 180px;
    margin-left: 60px;
    margin-bottom: 30px;
}


.hamburger-wrapper {
    background-color: var(--black);
    display: none;
    align-items: center;
    justify-content: center;
    height: 3rem;
    width: 3rem;
    border-radius: 50%;
    transition: background 250ms ease;
    position: relative;
    z-index: 500;
}

body.hamburger-active .hamburger-wrapper {
    background-color: var(--white);
}
body.hamburger-active #nav-icon2 span {
    background: var(--black);
}

@media ( max-width: 990.1px) {
    .hamburger-wrapper {
        display: flex;
    }
}

/* --- HOMEPAGE --- */

section.hero-home{
    height: 70vh;
}

.hero-home .overlay-hero, .hero-about .overlay-hero-about, .servizi .overlay-hero-servizi{
    background-color: var(--blue);
    opacity: .5;
    width: 100%;
    height: 100%;
}

.hero-home .overlay-hero{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.hero-home .video-hero {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}

.hero-home .video-hero iframe {
  object-fit: cover;
  pointer-events: none;
  z-index: 1;
}

.hero-home .logo-home {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 5rem;
    height: 5rem;
    z-index: 3;
}

.valori .row > .col-12:nth-child(even) .card-valori {
  margin-top: 50%;
}

.card-servizi, .card-servizi .card-overlay{
    width: 100%;
    height: 100%;
    border-radius: 2.5rem;
}
.card-servizi .card-overlay{
    padding: 2rem;
    padding-top: 250px;
    background: linear-gradient(180deg, rgba(1, 60, 147, 0.00) 0%, rgba(1, 46, 113, 0.80) 100%);
}

.img-45{
    width: 45%;
}

.faq .accordion {
    border: 1px solid var(--black);
    border-radius: 2.5rem;
    margin-bottom: 1.5rem;
}

.faq .accordion-item {
    background-color: transparent;
    border: none;
    border-radius: 2.5rem;
}

.faq .accordion-header {
    background-color: var(--white);
    border-bottom: none;
    border-radius: 2.5rem;
    padding: 2rem;
}

.faq .accordion-button {
    padding: 0; 
    background: none;
    border: none;
}
.faq .accordion-body {
    padding: 0 2.5rem 2.5rem 2.5rem
}

.faq .accordion-button:focus {
    z-index: 3;
    border-color: transparent;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(0, 0, 0, 0.25);
}
.faq .accordion-button:not(.collapsed) {
    color: var(--black);
    background-color: transparent;
    box-shadow: none;
}

.light-grey-bcg .accordion-item{
    border-radius: 10px !important;
}

.light-grey-bcg .accordion-button{
    padding: 40px 60px;
    margin-bottom: 8px;
}

.light-grey-bcg .accordion-button:focus {
    box-shadow: none;
    border-color: transparent;
}

.light-grey-bcg .accordion-button:not(.collapsed) {
    color: var(--black);
    background-color: transparent;
    box-shadow: none;
}


.light-grey-bcg .accordion-body{
    margin-bottom: 8px;
}

.light-grey-bcg .accordion-button::after{
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-left: auto;
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='27' viewBox='0 0 27 27' fill='none'%3E%3Cpath d='M26.625 13.5C26.625 13.7901 26.5098 14.0683 26.3046 14.2734C26.0995 14.4785 25.8213 14.5938 25.5312 14.5938H14.5938V25.5312C14.5938 25.8213 14.4785 26.0995 14.2734 26.3046C14.0683 26.5098 13.7901 26.625 13.5 26.625C13.2099 26.625 12.9317 26.5098 12.7266 26.3046C12.5215 26.0995 12.4062 25.8213 12.4062 25.5312V14.5938H1.46875C1.17867 14.5938 0.90047 14.4785 0.695352 14.2734C0.490234 14.0683 0.375 13.7901 0.375 13.5C0.375 13.2099 0.490234 12.9317 0.695352 12.7266C0.90047 12.5215 1.17867 12.4062 1.46875 12.4062H12.4062V1.46875C12.4062 1.17867 12.5215 0.90047 12.7266 0.695352C12.9317 0.490234 13.2099 0.375 13.5 0.375C13.7901 0.375 14.0683 0.490234 14.2734 0.695352C14.4785 0.90047 14.5938 1.17867 14.5938 1.46875V12.4062H25.5312C25.8213 12.4062 26.0995 12.5215 26.3046 12.7266C26.5098 12.9317 26.625 13.2099 26.625 13.5Z' fill='%23010C21'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 1.25rem;
    transition: transform .2s ease-in-out;
}

@media screen and (max-width:767px) {
    section.hero-home{
        height: 30vh;
    }
    .hero-home .logo-home {
        width: 3rem;
        height: 3rem;
    }
    .img-45{
        width: 100%;
    }
    .valori .row > .col-12:nth-child(even) .card-valori {
        margin-top: 0;
    }
}

/* --- ABOUT --- */

section.hero-about{
    height: 50vh;
}

.hero-about .overlay-hero-about{
    opacity: .2;
}

@media screen and (max-width:767px) {
    section.hero-about{
        height: 30vh;
    }
}

/* --- SERVIZI --- */

section.servizi{
    /* height: 35vh; */
}

.servizi .overlay-hero-servizi{
    opacity: .2;
}

.servizi .the-title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#tabs-nav .list-group-item {
    padding: .5rem 1rem;
    color: var(--black);
    text-decoration: none;
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid var(--black);
}

#tabs-nav .list-group-item.active{
    color: var(--black);
    background-color: transparent;
    border-bottom: 3px solid var(--black);
}

@media screen and (max-width:767px) {
    section.servizi{
        height: 30vh;
    }
}

/* --- RECENSIONI --- */

.card-recensione{
    padding: 3rem 0;
    box-shadow: 0px 4px 17.4px 0px rgba(0, 0, 0, 0.25);
    border-radius: 2.5rem;
}

.recensioni .list-group-item.active, 
.recensioni .list-group-item, 
.recensioni .list-group-item-action:focus, 
.recensioni .list-group-item-action:hover {
    color: var(--black);
    background-color: transparent;
    border-color: transparent;
    border: 0;
    padding: 0;
}

.recensioni .list-group-item.active{
    transform: scale(1);
    transition: transform 300ms;
}

.recensioni .list-group-item {
    transform: scale(.6);
    transition: transform 300ms;
}

.recensioni-nav{
    border-left: 1px solid var(--grey);
    height: 100%;
    margin-left: 2rem;
}

.recensioni-nav .nav-round{
    background-color: var(--grey);
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    transform: scale(.7);
    margin-left: -50%;
    transition: transform 300ms;
}

.recensioni-nav .nav-round.active{
    background-color: var(--blue);
    transform: scale(1);
    transition: transform 300ms;
}

/* --- FOOTER --- */

#logo-footer img{
    max-width: 12rem;
}
.social a {
    margin-left: 1rem;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    display: block;
}
.social a:first-child{
    margin-left: 0;
}
.social a.ig::after, .social a.fb::after, .social a.ln::after{
    content: '';
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    width: 2rem;
    height: 2rem;
}
.social a.ig::after{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 42' fill='none'%3E%3Cpath d='M21 13.125C19.4425 13.125 17.9199 13.5869 16.6249 14.4522C15.3298 15.3175 14.3205 16.5474 13.7244 17.9864C13.1284 19.4253 12.9725 21.0087 13.2763 22.5363C13.5802 24.0639 14.3302 25.4671 15.4315 26.5685C16.5329 27.6698 17.9361 28.4198 19.4637 28.7237C20.9913 29.0275 22.5747 28.8716 24.0136 28.2756C25.4526 27.6795 26.6825 26.6702 27.5478 25.3751C28.4131 24.0801 28.875 22.5575 28.875 21C28.8728 18.9121 28.0424 16.9103 26.5661 15.4339C25.0897 13.9576 23.0879 13.1272 21 13.125ZM21 26.25C19.9616 26.25 18.9466 25.9421 18.0833 25.3652C17.2199 24.7883 16.547 23.9684 16.1496 23.0091C15.7523 22.0498 15.6483 20.9942 15.8509 19.9758C16.0534 18.9574 16.5535 18.0219 17.2877 17.2877C18.0219 16.5535 18.9574 16.0534 19.9758 15.8509C20.9942 15.6483 22.0498 15.7523 23.0091 16.1496C23.9684 16.547 24.7883 17.2199 25.3652 18.0833C25.9421 18.9466 26.25 19.9616 26.25 21C26.25 22.3924 25.6969 23.7277 24.7123 24.7123C23.7277 25.6969 22.3924 26.25 21 26.25ZM28.875 3.9375H13.125C10.6891 3.94011 8.35376 4.90891 6.63133 6.63133C4.90891 8.35376 3.94011 10.6891 3.9375 13.125V28.875C3.94011 31.3109 4.90891 33.6462 6.63133 35.3687C8.35376 37.0911 10.6891 38.0599 13.125 38.0625H28.875C31.3109 38.0599 33.6462 37.0911 35.3687 35.3687C37.0911 33.6462 38.0599 31.3109 38.0625 28.875V13.125C38.0599 10.6891 37.0911 8.35376 35.3687 6.63133C33.6462 4.90891 31.3109 3.94011 28.875 3.9375ZM35.4375 28.875C35.4375 30.6155 34.7461 32.2847 33.5154 33.5154C32.2847 34.7461 30.6155 35.4375 28.875 35.4375H13.125C11.3845 35.4375 9.71532 34.7461 8.48461 33.5154C7.2539 32.2847 6.5625 30.6155 6.5625 28.875V13.125C6.5625 11.3845 7.2539 9.71532 8.48461 8.48461C9.71532 7.2539 11.3845 6.5625 13.125 6.5625H28.875C30.6155 6.5625 32.2847 7.2539 33.5154 8.48461C34.7461 9.71532 35.4375 11.3845 35.4375 13.125V28.875ZM31.5 12.4688C31.5 12.8581 31.3845 13.2388 31.1682 13.5625C30.9519 13.8863 30.6444 14.1386 30.2847 14.2876C29.9249 14.4366 29.5291 14.4756 29.1472 14.3997C28.7653 14.3237 28.4145 14.1362 28.1391 13.8609C27.8638 13.5855 27.6763 13.2347 27.6003 12.8528C27.5244 12.4709 27.5634 12.0751 27.7124 11.7153C27.8614 11.3556 28.1137 11.0481 28.4375 10.8318C28.7612 10.6155 29.1419 10.5 29.5312 10.5C30.0534 10.5 30.5542 10.7074 30.9234 11.0766C31.2926 11.4458 31.5 11.9466 31.5 12.4688Z' fill='%236B818C'/%3E%3C/svg%3E");
}
.social a.fb::after{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 42' fill='none'%3E%3Cpath d='M21 3.9375C17.6254 3.9375 14.3265 4.9382 11.5206 6.81305C8.71468 8.6879 6.52773 11.3527 5.23631 14.4705C3.94489 17.5882 3.607 21.0189 4.26536 24.3287C4.92372 27.6385 6.54876 30.6788 8.935 33.065C11.3212 35.4512 14.3615 37.0763 17.6713 37.7346C20.9811 38.393 24.4118 38.0551 27.5295 36.7637C30.6473 35.4723 33.3121 33.2853 35.187 30.4794C37.0618 27.6735 38.0625 24.3746 38.0625 21C38.0577 16.4762 36.2585 12.1391 33.0597 8.94027C29.8609 5.74146 25.5238 3.94228 21 3.9375ZM22.3125 35.3768V24.9375H26.25C26.5981 24.9375 26.9319 24.7992 27.1781 24.5531C27.4242 24.3069 27.5625 23.9731 27.5625 23.625C27.5625 23.2769 27.4242 22.9431 27.1781 22.6969C26.9319 22.4508 26.5981 22.3125 26.25 22.3125H22.3125V18.375C22.3125 17.6788 22.5891 17.0111 23.0814 16.5188C23.5736 16.0266 24.2413 15.75 24.9375 15.75H27.5625C27.9106 15.75 28.2444 15.6117 28.4906 15.3656C28.7367 15.1194 28.875 14.7856 28.875 14.4375C28.875 14.0894 28.7367 13.7556 28.4906 13.5094C28.2444 13.2633 27.9106 13.125 27.5625 13.125H24.9375C23.5451 13.125 22.2098 13.6781 21.2252 14.6627C20.2406 15.6473 19.6875 16.9826 19.6875 18.375V22.3125H15.75C15.4019 22.3125 15.0681 22.4508 14.8219 22.6969C14.5758 22.9431 14.4375 23.2769 14.4375 23.625C14.4375 23.9731 14.5758 24.3069 14.8219 24.5531C15.0681 24.7992 15.4019 24.9375 15.75 24.9375H19.6875V35.3768C15.9876 35.039 12.5602 33.2879 10.1185 30.4877C7.67668 27.6874 6.40841 24.0536 6.57746 20.3421C6.74651 16.6307 8.33988 13.1272 11.0261 10.5605C13.7124 7.99388 17.2847 6.56158 21 6.56158C24.7153 6.56158 28.2877 7.99388 30.9739 10.5605C33.6601 13.1272 35.2535 16.6307 35.4226 20.3421C35.5916 24.0536 34.3233 27.6874 31.8816 30.4877C29.4398 33.2879 26.0125 35.039 22.3125 35.3768Z' fill='%236B818C'/%3E%3C/svg%3E");
}
.social a.ln::after{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 42' fill='none'%3E%3Cpath d='M35.4375 3.9375H6.5625C5.86631 3.9375 5.19863 4.21406 4.70634 4.70634C4.21406 5.19863 3.9375 5.86631 3.9375 6.5625V35.4375C3.9375 36.1337 4.21406 36.8014 4.70634 37.2937C5.19863 37.7859 5.86631 38.0625 6.5625 38.0625H35.4375C36.1337 38.0625 36.8014 37.7859 37.2937 37.2937C37.7859 36.8014 38.0625 36.1337 38.0625 35.4375V6.5625C38.0625 5.86631 37.7859 5.19863 37.2937 4.70634C36.8014 4.21406 36.1337 3.9375 35.4375 3.9375ZM35.4375 35.4375H6.5625V6.5625H35.4375V35.4375ZM15.75 18.375V28.875C15.75 29.2231 15.6117 29.5569 15.3656 29.8031C15.1194 30.0492 14.7856 30.1875 14.4375 30.1875C14.0894 30.1875 13.7556 30.0492 13.5094 29.8031C13.2633 29.5569 13.125 29.2231 13.125 28.875V18.375C13.125 18.0269 13.2633 17.6931 13.5094 17.4469C13.7556 17.2008 14.0894 17.0625 14.4375 17.0625C14.7856 17.0625 15.1194 17.2008 15.3656 17.4469C15.6117 17.6931 15.75 18.0269 15.75 18.375ZM30.1875 22.9688V28.875C30.1875 29.2231 30.0492 29.5569 29.8031 29.8031C29.5569 30.0492 29.2231 30.1875 28.875 30.1875C28.5269 30.1875 28.1931 30.0492 27.9469 29.8031C27.7008 29.5569 27.5625 29.2231 27.5625 28.875V22.9688C27.5625 22.0985 27.2168 21.2639 26.6014 20.6486C25.9861 20.0332 25.1515 19.6875 24.2812 19.6875C23.411 19.6875 22.5764 20.0332 21.9611 20.6486C21.3457 21.2639 21 22.0985 21 22.9688V28.875C21 29.2231 20.8617 29.5569 20.6156 29.8031C20.3694 30.0492 20.0356 30.1875 19.6875 30.1875C19.3394 30.1875 19.0056 30.0492 18.7594 29.8031C18.5133 29.5569 18.375 29.2231 18.375 28.875V18.375C18.3766 18.0535 18.4962 17.7438 18.711 17.5046C18.9258 17.2654 19.221 17.1134 19.5405 17.0774C19.8599 17.0414 20.1815 17.1239 20.4442 17.3092C20.7069 17.4946 20.8924 17.7699 20.9655 18.083C21.8534 17.4807 22.8886 17.1316 23.9599 17.0732C25.0312 17.0148 26.0982 17.2494 27.0463 17.7517C27.9944 18.2539 28.7877 19.005 29.3411 19.9241C29.8945 20.8433 30.1871 21.8958 30.1875 22.9688ZM16.4062 13.7812C16.4062 14.1706 16.2908 14.5513 16.0745 14.875C15.8581 15.1988 15.5506 15.4511 15.1909 15.6001C14.8312 15.7491 14.4353 15.7881 14.0534 15.7122C13.6715 15.6362 13.3207 15.4487 13.0454 15.1734C12.77 14.898 12.5825 14.5472 12.5066 14.1653C12.4306 13.7834 12.4696 13.3876 12.6186 13.0278C12.7676 12.6681 13.02 12.3606 13.3437 12.1443C13.6675 11.928 14.0481 11.8125 14.4375 11.8125C14.9596 11.8125 15.4604 12.0199 15.8296 12.3891C16.1988 12.7583 16.4062 13.2591 16.4062 13.7812Z' fill='%236B818C'/%3E%3C/svg%3E");
}

/* --- 404 --- */
.error-404 {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.error-404 img {
    padding: 0 15px;
    max-width: 425px;
    margin: 0 auto 3rem;
}
body.error404 header { position: fixed !important }
body.error404 #content { padding-top: 0 }




/* --- STAMPA --- */
@media screen {
    .print-only { display: none; }
}
@media print {
    .screen-only { display: none; }
}