/* ANCHOR Elementi generici  */

a {
    text-decoration: none;
}

button {
    background: none;
    border: none;
}

ul {
    list-style: none;
}

html {
    overflow-x: hidden;
}

body {
    min-height: 200vh;
}

ion-icon,
.feather {
    pointer-events: none;
}

p strong {
    font-weight: 500;
}

img {
    max-width: 100%;
}

/* ANCHOR Margin */
.mart30 {
    margin-top: 30px;
}

/* SECTION Elementi Grid layout */

.content-grid {
    width: 100%;
    --padding-inline: 2rem;
    --content-max-width: 1400px;
    /* --breakout-max-width: 1600px; */
    --breakout-max-width: 95vw;
    --breakout-size: calc((var(--breakout-max-width) - var(--content-max-width)) / 2);
    display: grid;
    grid-template-columns: [full-width-start] minmax(var(--padding-inline), 1fr) [breakout-start] minmax(0, var(--breakout-size)) [content-start] min(100% - (var(--padding-inline) * 2),
            var(--content-max-width)) [content-end] minmax(0, var(--breakout-size)) [breakout-end] minmax(var(--padding-inline), 1fr) [full-width-end];
}

.content-grid> :not(.breakout, .full-width),
.full-width> :not(.breakout, .full-width) {
    grid-column: content;
}

.content-grid>.breakout {
    grid-column: breakout;
}

.content-grid>.full-width {
    grid-column: full-width;
    display: grid;
    grid-template-columns: inherit;
}

.grid {
    display: grid;
}

.auto_grid {
    grid-auto-flow: column;
}

.align_center {
    align-items: center;
}

/* SECTION Privacy Policy  */

.wt-cli-manage-consent-link {
    cursor: pointer;
}

.policy h3 {
    /* font-size: 2vw; */
    margin: 20px auto;
    font-size: var(--fs-600);
}

.policy h4 {
    margin: 10px auto;
    font-size: var(--fs-450);
}

.policy h5 {
    margin: 10px 0;
    font-size: var(--fs-400);
}
.policy p,
.policy ul,
.policy ul>*{
    font-size: var(--fs-350);
}
.policy p {
    line-height: 1.5;
    margin-bottom: 10px;
    text-align: justify;
}

.policy p strong {
    letter-spacing: 1px;
    line-height: 2;
}

.policy ul {
    list-style: lower-latin;
    margin-left: 25px;
    padding: 15px 0;
    /* line-height: 1.6; */
}

.policy ul li {
    line-height: 1.6;
}

/* !SECTION  */

/* SECTION Pagina di ringraziamento */
#ringraziamento {
    display: flex;
    justify-content: center;
    text-align: center;
    background: var(--white);
    padding: 20px;
}

#ringraziamento .wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 30px;
}

#ringraziamento h2 {
    text-transform: uppercase;
    font-size: 28px;
    padding-bottom: 20px;
    color: var(--maincolor);
    border-bottom: 1px solid var(--secondarycolor);
}

#ringraziamento p {
    /* margin: 30px 0; */
    font-size: 20px;
}

.page-id-141 .header_container,
.page-id-3 .header_container {
    justify-content: center;
}


/* !SECTION  */
/*SECTION - Landing */
/*ANCHOR - Hero */

/*ANCHOR - Form */
.hero_col .form_container {
    border-radius: 1rem;
    padding: 1.5rem;
}

.hero_col .form_header h2 {
    font-size: var(--fs-500);
}

.hero_col .form_body {
    align-items: initial;
    gap: 2rem;
}

.hero_col p.req_fields_alert {
    text-align: left;
    max-width: initial;
    margin-inline: initial;
}

.form_row .input_wrapper.is_checkbox {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: nowrap;
}

.form_row .input_wrapper.is_checkbox a,
.form_row .input_wrapper.is_checkbox span {
    font-size: 1rem;
    color: var(--dark);

}

.form_row .input_wrapper.is_checkbox a {
    text-decoration: underline;
}

.form_header p {
    color: var(--dark);
}

/*ANCHOR - Spazi */

.thumb-frame-container {
    width: 100%;
    height: 100%;
}

.thumb-frame-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cta-button {
    width: 50%;
}

#prefooter .cta-button {
    width: 100%;
}

/*ANCHOR - Servizi */
#servizi .image-container {
    height: 300px;
    width: 100%;
}

#servizi .image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cta-button.bg_verdeCTA {
    transition: .4s;
}

.main_cta_bottom.bg_verdeCTA:hover,
.cta-button.bg_verdeCTA:hover {
    background-color: var(--verdeCTAdark);
}

.sector-card .img_mask {
    --img-t-width: 80px;
    --img-t-height: 80px;
}

/* .merci-list {
  padding-left: 40px; 
} */

.merci-list::before {
    content: "";
    position: absolute;
    left: 0;
    /* distanza dal bordo */
    top: 0;
    bottom: 0;
    /* così copre tutta la lista */
    width: 5px;
    background: var(--mainglass);
    /* colore linea */
}

.merci-list li {
    position: relative;
}

/*ANCHOR - Contatti */
.single-contact svg {
    font-size: var(--fs-400);
    width: 24px;
    height: 24px;
}

#contatti .cta-button {
    width: 50%;
}

.single-sede .text_maincolor,
.single-sede .text_mainglass,
.single-social .text_maincolor,
.single-social .text_mainglass,
.single-contact .text_maincolor,.single-contact .text_mainglass {
    transition: .4s;
}

.single-contact:hover .text_mainglass,
.single-sede:hover .text_mainglass {
    color: var(--maincolor)
}

.single-contact:hover .text_maincolor,
.single-sede:hover .text_maincolor {
    color: var(--mainglass)
}

.pos_abs.full-bottom{
    bottom: 0;
}



/* !SECTION  */

/*!SECTION */
/* SECTION Sezione Posizione */
#test_zone {
    margin: 100px 0;
}

.position-paragraph ul {
    display: flex;
    flex-direction: column;
    padding: 2rem 1rem;
    /* margin-bottom: .5rem; */
    /* background: var(--maincolor); */
    gap: 30px;
    text-align: center;
    justify-content: center;
}

.position-paragraph ul li {
    font-weight: var(--fw-500);
    font-size: var(--fs-500);
    background-color: var(--darkcolor);
    border-radius: 1rem;
    padding: .5rem;

}

.position-paragraph ul li strong {
    font-weight: var(--fw-700);
    color: var(--secondarycolor);
}

.map-wrapper {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 75%;
    /* 4:3 aspect ratio (450/600 = 0.75) */
    overflow: hidden;
}

.map-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.map-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}


/*!SECTION */

/* LINK Media */
/*SECTION - 1480px*/
@media only screen and (max-width: 1480px) {}

/* !SECTION */

/*SECTION - 900px*/
@media only screen and (max-width: 900px) {

    .grid_2_cols,
    .grid_3_cols,
    .grid_4_cols,
    .grid_5_cols,
    .grid_1_2_cols,
    .grid_2_3_cols,
    .grid_2_1_cols,
    .grid_3_2_cols,
    .grid_2_1_1_cols {
        grid-template-columns: 1fr;
    }

    .wrapper,
    .major_wrapper {
        width: 100%;
        padding-left: 25px;
        padding-right: 25px;
    }

    .trigger_mobile_menu{
        color: var(--maincolor);
    }
    .trigger_mobile_menu svg{
        fill: var(--maincolor);
    }

    .cta-button,
    #contatti .cta-button {
        width: 100%;
    }

    body section#hero,
    body.mobile_mode section#hero .hero_col {
        min-height: initial;
    }

    /*ANCHOR - Servizi e settori */
    .merci_list_wrap,
    .grid_col.list-container {
        width: 100%;
    }

    /*ANCHOR - Spazi */
    .space-detail.grid.grid_1_2_cols {
        grid-template-columns: 1fr 2fr;
    }

    .card-intro h4 {
        text-align: center;
    }

    /*ANCHOR - Contatti */
    #contatti .cb-title-wrapper.flex {
        align-items: center;
    }

    #contatti .cb-title-wrapper>*,
    #contatti p {
        text-align: center;
    }

    .main-cta-button{
        display: none;
    }
}

/* !SECTION */