/*
* --------------------------------------------------------------------------------------------------------
* COMUNI
* --------------------------------------------------------------------------------------------------------
*/
.page_layout_1 .page_main{
    background: #FFF;
}

.page_layout_1-section {
    padding: 0 30px 60px 30px;
    background: #FFF;
    max-width: 1188px;
    padding-left: 30px;
    padding-right: 30px;
    margin: 0 auto;
}

    .page_layout_1-section img {width: 100%; height: auto;}

    .page_layout_1-section .text {
        padding: 1.5rem 20px 0;
        box-sizing: border-box;
        margin-top: -2rem;
        background: #FFF;
        z-index: 10;
        line-height: 1.923;
    }

        .page_layout_1-section .text .title {
            font-size: 2rem;
            font-weight: 400;
            margin-bottom: 1.5rem;
        }    

    .page_layout_1 .page_inner_header {padding-bottom: 1px; /* per collasso dei marigni */}

@media only screen and (max-width: 1023px) {
   
    .page_layout_1-section .image {
        margin-left: -30px;
        margin-right: -30px;
    }

    .page_layout_1 .page_inner_header-nav {display: none;}

}

@media only screen and (min-width: 1024px) {

/**
 * I contenitori ".page_layout_1-section" sono centrati a 1188px.
 * Struttura delle sezioni ad una larghezza di riferimento di 1440px
 * (le larghezze si intendono comprensive di padding) :
 *  
 * type_1: img a sx con larghezza di 694px / testo a destra in basso di 626px con posizione alterata a dx fuori dal contenitore di 78px;
 * type_2: testo a sinistra - basso con largh. 525px / img a dx con larghezza di 750px
 * type_3: img a sx con larghezza di 750px / testo a destra in alto con largh. 626px e posizione alterata verso sx di 38px
 * type_4: come tipo 2 ma con testo allineato in cima
 * type_5: come tipo 1 ma con testo allineato in cima
 * type_6: come tipo 3 ma con testo allineato in basso
 * 
 */

.page_layout_1-section {display: flex; padding: 60px 0;}

.page_layout_1-section:last-child {padding-bottom: 120px;}

.page_layout_1-section.type_bg_gray::before {
    background-color: #F0F0F0;
    width: 106vw;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 0;
    content: '';
    display: block;
    transform: translateX(-50%);
}

.page_layout_1-section .text {margin: 0;flex-grow: 0;}
    .page_layout_1-section .text p {margin: 1.3em 0;}
    .page_layout_1-section .text p:last-child {margin-bottom: 0;}
.page_layout_1-section .image {flex-grow: 0;}


.page_layout_1-section.type_1 .text {order: 2; width: 52.69%; right: -78px; align-self: flex-end; padding: 50px 120px 55px 60px;}
.page_layout_1-section.type_1 .image {order: 1; width: 47.31%;}
    .page_layout_1-section.type_1 .image img {width: 124%;}

.page_layout_1-section.type_2 .text {order: 1; width: 44.19%; align-self: flex-end;  padding: 80px 40px  100px 80px;}
.page_layout_1-section.type_2 .image {order: 2; width: 55.81%;}
    .page_layout_1-section.type_2 .image img {width: 113%; float: right;}

.page_layout_1-section.type_3 .text {order: 2; width: 52.69%; align-self: flex-start; right: 38px; padding: 60px 115px 120px 80px;}
.page_layout_1-section.type_3 .image {order: 1; width: 47.31%;}
    .page_layout_1-section.type_3 .image img {width: 133.5%;}

.page_layout_1-section.type_4 .text {order: 1; width: 44.19%; align-self: flex-start;  padding: 80px 40px  120px 80px;}
.page_layout_1-section.type_4 .image {order: 2; width: 55.81%;}
    .page_layout_1-section.type_4 .image img {width: 113%; float: right;}

.page_layout_1-section.type_5 .text {order: 2; width: 52.69%; right: -78px; align-self: flex-start;padding: 50px 120px 55px 60px;}
.page_layout_1-section.type_5 .image {order: 1; width: 47.31%;}
    .page_layout_1-section.type_5 .image img {width: 124%;}

.page_layout_1-section.type_6 .text {order: 2; width: 52.69%; align-self: flex-end; right: 38px; padding: 60px 115px 120px 80px;}
.page_layout_1-section.type_6 .image {order: 1; width: 47.31%;}
    .page_layout_1-section.type_6 .image img {width: 133.5%;}

.page_layout_1-section .text .title {font-size: 2.769rem;}

}



/*
* --------------------------------------------------------------------------------------------------------
* AZIENDA
* --------------------------------------------------------------------------------------------------------
*/
#company-story .text{padding-bottom: 0;}

    /* .bg_full */
#company-header::before {
    background-size: auto 200%;
    background-position: -50px -30px;
    background-color: #782227;
}

#company-sessantacampi {
    padding: 60px 50px;
    background: #F0F0F0;
    margin: 0 auto;
}
        
        #company-sessantacampi .wrapper {max-width: 780px; margin: 0 auto;}

        #company-sessantacampi .title {
            font-size: 2rem;
            font-weight: 400;
            margin-bottom: 1.5rem;
        } 

        #company-sessantacampi .text {margin: 1rem 0 0;}

        #company-sessantacampi .image {
            margin: 2rem 0 0;
            padding: 2rem 0 0;
            border-top: 2px solid #FFF;
        }

            #company-sessantacampi .image img {max-width: 90%; margin: 0 auto; height: auto;}



@media only screen and (min-width: 1024px) {
    
    #company-sessantacampi {padding: 60px 0;}
        #company-sessantacampi .title { font-size: 2.769rem; }
        #company-sessantacampi .wrapper {display: flex; flex-wrap: wrap; justify-content: space-between;}
        #company-sessantacampi .title {width: 100%;}

        #company-sessantacampi .text {width: 46%; margin: 0; line-height: 1.923;}

        #company-sessantacampi .image {width: 100%;}

            #company-sessantacampi .image img {max-width: 591px;}

}



/*
* --------------------------------------------------------------------------------------------------------
* PRODUZIONE
* --------------------------------------------------------------------------------------------------------
*/
#production-header::before {
    background-color: #D1B800;
    background-size: auto 200%;
    background-position: -50px -30px;
}


/*
* --------------------------------------------------------------------------------------------------------
* VISITA CANTINA
* --------------------------------------------------------------------------------------------------------
*/

#visit_us-header::before {
    background-color: #026241;
    background-size: auto 200%;
    background-position: -50px -30px;
}

#visit_us-vendita a.map {
    padding-left: 1.4em;
    width: 1.4em;
    box-sizing: border-box;
    display: inline-block;
    overflow: hidden;
    vertical-align: middle;
    margin-left: 0.2em;
    background: url(../../img/icons/bg_ft_map_path.svg) left center / 1.3em auto no-repeat;
}

#visit_us-vendita .text .info , #visit_us-tour .text .info {
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: underline;
    color: #484F41;
    margin-top: 2em;
    display: inline-block;
    padding-right: 3em;
    background: url(../../img/icons/arrow_right_2.svg) center right no-repeat;
}
    
    /* orari */
#visit_us-vendita .text p:nth-of-type(2) {white-space: nowrap;}