/* Bonjour NYC — single.css
 * Rules specific to the single-article template (Divi TB body sections 0-5).
 * Only rules that are NOT already in bonjour-core.css are kept here.
 * Extracted from the live wpr-usedcss of bonjournewyork.fr/4-jours/.
 */

/* Grid helpers — replace the Divi framework rules (.et_pb_row / .et_pb_column_X_Y)
 * which are not shipped in this theme. Kept minimal; the ported section/row
 * overrides below (et_pb_*_N_tb_body) still handle per-section paddings. */

@media (max-width: 768px) {
    .et_pb_section_0_tb_body {
        min-height: 556px !important
    }
}

.single-post .et_pb_section_0_tb_body:before {
    background: linear-gradient(180deg, #cccccca3 6.63%, rgba(255, 255, 255, 0) 34.19%), linear-gradient(0deg, rgba(0, 0, 0, .238) 2.13%, rgba(0, 0, 0, 0) 52.5%) !important
}

@media (max-width: 980px) {
    .et_pb_column_3_tb_body {
        padding-right: 0 !important
    }
}

@media (min-width: 982px) {
    .et_pb_section.et_pb_section_0_tb_body.head-header {
        padding-top: 186px !important;
        padding-bottom: 94px !important
    }
}

.et_pb_section_1_tb_body.et_pb_section {
    padding-top: 29px !important;
    padding-bottom: 9px !important;
    margin-bottom: -3px !important
}

/* Hero background image is set inline on the section element from the post thumbnail — see hero.php. */
.et_pb_section_0_tb_body {
    min-height: 460px
}

.et_pb_section_0_tb_body.et_pb_section {
    padding-top: 94px;
    padding-bottom: 94px
}

.et_pb_section_0_tb_body:before {
    content: '';
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    background: linear-gradient(180deg, #fff 6.63%, rgba(255, 255, 255, 0) 34.19%), linear-gradient(0deg, rgba(0, 0, 0, .238) 2.13%, rgba(0, 0, 0, 0) 52.5%);
    top: 0;
    left: 0
}

.et_pb_row_0_tb_body.et_pb_row {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    padding-top: 3px;
    padding-bottom: 3px
}

.et_pb_row_0_tb_body, body #page-container .et-db #et-boc .et-l .et_pb_row_0_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_0_tb_body.et_pb_row {
    max-width: 1042px
}

.et_pb_text_0_tb_body.et_pb_text {
    color: #fff !important
}

.et_pb_text_0_tb_body h1 {
    font-size: 62px;
    color: #fff !important;
    letter-spacing: .02em;
    line-height: 120%;
    text-align: center
}

.et_pb_text_0_tb_body {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
    text-shadow: 0 3px 5px rgba(17, 37, 64, .2)
}

.et_pb_row_1_tb_body.et_pb_row {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-top: 0;
    padding-bottom: 0
}

.et_pb_row_1_tb_body, .et_pb_row_2_tb_body, .et_pb_row_4_tb_body, .et_pb_row_5_tb_body, body #page-container .et-db #et-boc .et-l .et_pb_row_1_tb_body.et_pb_row, body #page-container .et-db #et-boc .et-l .et_pb_row_2_tb_body.et_pb_row, body #page-container .et-db #et-boc .et-l .et_pb_row_4_tb_body.et_pb_row, body #page-container .et-db #et-boc .et-l .et_pb_row_5_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_1_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_2_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_4_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_5_tb_body.et_pb_row {
    width: 100%;
    max-width: 1440px
}

.et_pb_section_1_tb_body.et_pb_section {
    padding-top: 29px;
    padding-bottom: 9px;
    margin-bottom: -3px
}

.et_pb_row_2_tb_body.et_pb_row {
    padding-right: 40px !important;
    padding-left: 40px !important;
    padding-right: 40px;
    padding-left: 40px
}

.et_pb_row_2_tb_body {
    padding: 1rem
}

.et_pb_post_content_0_tb_body {
    width: 100%;
    max-width: 100%
}

.et_pb_section_2_tb_body.et_pb_section {
    padding-top: 3px;
    padding-right: 79px;
    padding-bottom: 0;
    padding-left: 79px;
    margin-top: 8px;
    margin-bottom: 8px
}

.et_pb_row_3_tb_body, .et_pb_row_7_tb_body, body #page-container .et-db #et-boc .et-l .et_pb_row_3_tb_body.et_pb_row, body #page-container .et-db #et-boc .et-l .et_pb_row_7_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_3_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_7_tb_body.et_pb_row {
    max-width: 1440px
}

.et_pb_row_3_tb_body {
    display: flex;
    align-items: center
}

.et_pb_column_4_tb_body {
    display: flex;
    align-items: center;
    justify-content: center
}

.et_pb_image_0_tb_body, .et_pb_image_1_tb_body {
    text-align: left;
    margin-left: 0
}

.et_pb_text_1_tb_body.et_pb_text, .et_pb_text_3_tb_body.et_pb_text, .et_pb_text_5_tb_body.et_pb_text {
    color: #53b3b7 !important
}

.et_pb_text_1_tb_body {
    font-family: Mulish, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px !important
}

.et_pb_text_2_tb_body.et_pb_text, .et_pb_text_7_tb_body.et_pb_text {
    color: #6f7e97 !important
}

.et_pb_text_2_tb_body {
    line-height: 30px;
    font-family: Mulish, sans-serif;
    font-size: 18px;
    line-height: 30px
}

.et_pb_section_3_tb_body.et_pb_section {
    padding-top: 0;
    margin-top: -23px
}

.et_pb_text_3_tb_body {
    font-family: Mulish, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 2px !important
}

.et_pb_section_4_tb_body.et_pb_section {
    padding-top: 3px;
    padding-right: 79px;
    padding-left: 79px;
    margin-top: -30px;
    background-color: rgba(0, 0, 0, 0) !important
}

.et_pb_comments_0_tb_body .form-submit {
    text-align: center
}

.et_pb_section_5_tb_body.et_pb_section {
    padding-top: 4px;
    padding-bottom: 0
}

.et_pb_section_5_tb_body {
    background: linear-gradient(359.09deg, #ecf0f2 3.25%, rgba(236, 240, 242, 0) 98.61%)
}

.et_pb_text_5_tb_body {
    font-family: Mulish, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-bottom: 0 !important
}

.et_pb_text_7_tb_body {
    line-height: 1.75em;
    font-size: 20px;
    line-height: 1.75em
}

.et_pb_code_4_tb_body {
    margin-bottom: -3px !important
}

.et_pb_post_content_0_tb_body.et_pb_module {
    margin-left: 0 !important;
    margin-right: auto !important
}

.et_pb_code_2_tb_body.et_pb_module {
    margin-left: auto !important;
    margin-right: auto !important
}

.et_pb_row_3_tb_body.et_pb_row {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-top: 4px;
    padding-bottom: 4px
}

.et_pb_row_5_tb_body.et_pb_row {
    padding-right: 79px !important;
    padding-left: 79px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-right: 79px;
    padding-left: 79px
}

@media only screen and (min-width: 981px) {
    .et_pb_image_0_tb_body {
        width: 90%
    }

    .et_pb_row_7_tb_body {
        display: flex;
        justify-content: space-around;
        align-items: center
    }
}

@media only screen and (max-width: 980px) {
    .et_pb_row_2_tb_body.et_pb_row {
        padding-right: 25px !important;
        padding-left: 25px !important;
        padding-right: 25px !important;
        padding-left: 25px !important
    }

    .et_pb_column_3_tb_body {
        width: 80%;
        margin: 0 auto
    }

    .et_pb_code_2_tb_body {
        width: 93%
    }

    .et_pb_section_2_tb_body.et_pb_section {
        padding-right: 10px;
        padding-left: 10px
    }

    .et_pb_row_3_tb_body, body #page-container .et-db #et-boc .et-l .et_pb_row_3_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_3_tb_body.et_pb_row {
        width: 90%
    }

    .et_pb_image_0_tb_body {
        width: 70%
    }

    .et_pb_image_0_tb_body .et_pb_image_wrap img, .et_pb_image_1_tb_body .et_pb_image_wrap img {
        width: auto
    }

    .et_pb_section_3_tb_body.et_pb_section {
        margin-top: 12rem
    }

    .et_pb_row_6_tb_body, body #page-container .et-db #et-boc .et-l .et_pb_row_6_tb_body.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .et_pb_row_6_tb_body.et_pb_row {
        width: 99%
    }

    .et_pb_row_7_tb_body {
        display: flex;
        flex-direction: column;
        align-items: center
    }

    .et_pb_row_3_tb_body.et_pb_row {
        margin-left: auto !important;
        margin-right: auto !important
    }
}

@media only screen and (max-width: 767px) {
    .et_pb_row_2_tb_body.et_pb_row {
        padding-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important
    }

    .et_pb_column_3_tb_body {
        width: 80%;
        margin: 0 auto
    }

    .et_pb_image_0_tb_body .et_pb_image_wrap img, .et_pb_image_1_tb_body .et_pb_image_wrap img {
        width: auto
    }

    .et_pb_row_4_tb_body.et_pb_row, .et_pb_row_5_tb_body.et_pb_row {
        padding-right: 20px !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        padding-left: 20px !important
    }

    .et_pb_section_4_tb_body.et_pb_section {
        padding-top: 3px;
        padding-right: 20px;
        padding-left: 20px
    }

    .et_pb_row_7_tb_body {
        display: flex;
        flex-direction: column;
        align-items: center
    }
}
