/* The theme already reserves the inner-page banner height before this template. */
.single-gds_product .wrapper,
.single-gds_product #main,
.single-gds_product #main.gds-product-main,
.single-gds_product .gds-product {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-top: 0 !important;
    background: #fffdf8 !important;
}

.single-gds_product .wrapper,
.single-gds_product #main,
.single-gds_product #main.gds-product-main {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.single-gds_product .inner-wrapper > #main > .container {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.single-gds_product .main-title-section-wrapper {
    display: block !important;
}

.single-gds_product .gds-hero {
    position: relative;
    padding-top: 76px;
}

.single-gds_product .gds-visual-stage {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    overflow: visible;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.single-gds_product .gds-visual-stage::before { display: none; }

.single-gds_product .gds-product-image {
    width: auto;
    height: auto;
    max-width: min(100%, 430px);
    max-height: 520px;
    object-fit: contain;
    filter: none;
}

.single-gds_product #footer .elementor-heading-title {
    color: #fff !important;
}

@media (max-width: 1024px) {
    .single-gds_product .gds-hero { padding-top: 60px; }
    .single-gds_product .gds-product-image { max-width: min(100%, 390px); max-height: 480px; }
}

@media (max-width: 767px) {
    .single-gds_product .gds-hero { padding-top: 48px; }
    .single-gds_product .gds-product-image { max-width: min(100%, 340px); max-height: 430px; }
}
