/* Behind the Scenes: centered, consistent phone layout. */
@media (max-width: 599px) {
    .page-id-413 #main-content .et_pb_section {
        width: 100% !important; max-width: 100% !important;
        margin: 0 !important; padding: 40px 0 !important; box-sizing: border-box;
    }
    .page-id-413 #main-content .et_pb_section_0 { padding: 0 !important; height: 180px; background-position: center !important; }
    .page-id-413 #main-content .et_pb_section_0 .et_pb_row,
    .page-id-413 #main-content .et-vb-row--no-module { display: none !important; }
    .page-id-413 #main-content .et_pb_row {
        width: calc(100% - 48px) !important; max-width: 360px !important;
        height: auto !important; min-height: 0 !important; max-height: none !important;
        margin: 0 auto !important; padding: 0 !important; transform: none !important;
        display: flex !important; flex-direction: column; gap: 32px;
    }
    .page-id-413 #main-content .et_pb_section_1 > .et_pb_row + .et_pb_row { margin-top: 36px !important; }
    .page-id-413 #main-content .et_pb_column {
        width: 100% !important; margin: 0 !important; padding: 0 !important;
        height: auto !important; min-height: 0 !important; max-height: none !important;
        display: flex !important; flex-direction: column; gap: 16px;
    }
    .page-id-413 #main-content :is(.et_pb_heading, .et_pb_text, .et_pb_image, .et_pb_button_module_wrapper) {
        width: 100% !important; max-width: 100% !important;
        height: auto !important; min-height: 0 !important; max-height: none !important;
        margin: 0 !important; padding: 0 !important; transform: none !important; text-align: center !important;
    }
    .page-id-413 #main-content .et_pb_heading .et_pb_module_header {
        font-size: 23px !important; line-height: 1.3 !important;
        margin: 0 !important; padding: 0 !important; text-align: center !important;
    }
    .page-id-413 #main-content .et_pb_heading_0 .et_pb_module_header { font-size: 29px !important; }
    .page-id-413 #main-content .et_pb_text :is(p, span, div) { font-size: 15px !important; line-height: 1.7 !important; text-align: center !important; }
    .page-id-413 #main-content .et_pb_image :is(.et_pb_image_wrap, img) { display: block; width: 100% !important; height: auto !important; margin: 0 !important; transform: none !important; }
    .page-id-413 #main-content .et_pb_image img { aspect-ratio: 3 / 2; object-fit: cover; }
    .page-id-413 #main-content .et_pb_button { margin: 0 !important; transform: none !important; min-height: 44px; box-sizing: border-box; }
}

/* Tablet: shared content edges and vertically stacked stories. */
@media (min-width: 600px) and (max-width: 980px) {
    .page-id-413 #main-content .et_pb_section {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 48px 0 !important;
        box-sizing: border-box;
    }
    .page-id-413 #main-content .et_pb_section_0 {
        height: 260px !important;
        padding: 0 !important;
        background-position: center !important;
    }
    .page-id-413 #main-content .et_pb_section_0 .et_pb_row,
    .page-id-413 #main-content .et-vb-row--no-module { display: none !important; }
    .page-id-413 #main-content .et_pb_row {
        display: flow-root !important;
        width: calc(100% - 64px) !important;
        max-width: 760px !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 auto !important;
        padding: 0 !important;
        transform: none !important;
    }
    .page-id-413 #main-content .et_pb_row::after { display: none; }
    .page-id-413 #main-content .et_pb_column {
        width: 100% !important;
        min-width: 0;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
    }
    .page-id-413 #main-content :is(.et_pb_heading, .et_pb_text, .et_pb_image, .et_pb_button_module_wrapper) {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
    }
    .page-id-413 #main-content .et_pb_row_1 { max-width: 640px !important; margin-bottom: 48px !important; }
    .page-id-413 #main-content .et_pb_heading_0 { margin-bottom: 24px !important; }
    .page-id-413 #main-content .et_pb_heading_0 .et_pb_module_header {
        font-size: 30px !important;
        line-height: 1.3 !important;
        padding: 0 !important;
    }
    .page-id-413 #main-content .et_pb_text_1 :is(p, h3, span) {
        font-size: 16px !important;
        line-height: 1.65 !important;
        font-weight: 400 !important;
        text-align: left !important;
    }
    .page-id-413 #main-content .et_pb_text_1 :is(p, h3) { padding-bottom: 16px !important; }
    .page-id-413 #main-content .et_pb_text_1 h3:empty { display: none; }
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr);
        max-width: 360px !important;
        gap: 28px;
        margin-top: 36px !important;
    }
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_column {
        display: flex !important;
        flex-direction: column;
        gap: 16px;
    }
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_module_header {
        min-height: 0;
        font-size: 20px !important;
        line-height: 1.35 !important;
        padding: 0 !important;
        text-align: left !important;
    }
    .page-id-413 #main-content .et_pb_image :is(a, .et_pb_image_wrap, img) {
        display: block;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
    }
    .page-id-413 #main-content .et_pb_image img { aspect-ratio: 3 / 2; object-fit: cover; border-radius: 0; }
    .page-id-413 #main-content .et_pb_row_6 { margin-top: 48px !important; }
    .page-id-413 #main-content .et_pb_button_module_wrapper { text-align: center !important; }
    .page-id-413 #main-content .et_pb_button {
        position: relative !important;
        inset: auto !important;
        transform: none !important;
        margin: 0 !important;
        min-height: 44px;
    }
}

/* Match the product overview's subtle image hover effect. */
.page-id-413 #main-content .et_pb_image .et_pb_image_wrap { overflow: hidden; }
.page-id-413 #main-content .et_pb_image img { transition: scale .25s ease, filter .25s ease; }
@media (hover: hover) and (pointer: fine) {
    .page-id-413 #main-content .et_pb_image:has(a):hover img { scale: 1.035; filter: brightness(1.08); }
}
@media (prefers-reduced-motion: reduce) {
    .page-id-413 #main-content .et_pb_image img { transition: none; }
    .page-id-413 #main-content .et_pb_image:hover img { scale: 1; }
}

/* Matching image frames for all six celebration links. */
.page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_image {
    width: 100% !important; max-width: 100% !important;
    height: auto !important; min-height: 0 !important; max-height: none !important;
    margin-left: 0 !important; margin-right: 0 !important; padding: 0 !important; transform: none !important;
}
.page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_image :is(a, .et_pb_image_wrap) {
    display: block; width: 100% !important; height: auto !important;
    margin: 0 !important; padding: 0 !important; transform: none !important;
}
.page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_image img {
    display: block; width: 100% !important; height: auto !important;
    aspect-ratio: 3 / 2; object-fit: cover;
    margin: 0 !important; padding: 0 !important; transform: none !important;
}
@media (min-width: 981px) {
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) {
        display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 64px; width: 86% !important; max-width: 1080px !important;
        margin-left: auto !important; margin-right: auto !important; transform: none !important;
    }
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4)::after { display: none; }
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) > .et_pb_column { width: 100% !important; margin: 0 !important; min-width: 0; }
}
.page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) { padding-left: 0 !important; padding-right: 0 !important; box-sizing: border-box; }
.page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) > .et_pb_column { padding-left: 0 !important; padding-right: 0 !important; }
.page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_image img { min-height: 0 !important; max-height: none !important; min-width: 0 !important; max-width: 100% !important; }

/* Smaller story cards with a shared title area and aligned image tops. */
@media (min-width: 981px) {
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) { max-width: 920px !important; }
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) > .et_pb_column { display: flex !important; flex-direction: column; gap: 20px; }
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_heading {
        width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; transform: none !important;
        height: auto !important; min-height: 73px !important; max-height: none !important;
    }
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_module_header { font-size: 28px !important; line-height: 1.3 !important; margin: 0 !important; padding: 0 !important; }
}
.page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) .et_pb_image { margin-top: 0 !important; margin-bottom: 0 !important; }
@media (max-width: 980px) {
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) { max-width: 320px !important; }
}
@media (max-width: 599px) {
    .page-id-413 #main-content :is(.et_pb_row_2, .et_pb_row_3, .et_pb_row_4) { max-width: 300px !important; }
}
