/* WO-0009 product page video placements. */
.p4-pvb__frame {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 15px;
    background: #ececec center / cover no-repeat;
    line-height: 0;
}
@supports not (aspect-ratio: 16 / 9) {
    .p4-pvb__frame { height: 0; padding-top: 56.25%; }
}
.p4-pvb__video,
.p4-pvb__iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    margin: 0;
    display: block;
    object-fit: cover;
    border-radius: inherit;
}
.p4-pvb__iframe { pointer-events: none; }
.p4-pvb__video::-webkit-media-controls { display: none !important; }

/* Block 1: centred between the top section and the next gallery section. */
/* Vertical spacing comes from the theme's .pad-t40 / .pad-b40 classes (same as the lower product sections). */
/* Width comes from the same .product-detail-block > .container > .col-*-7 > .product-carousel-inner
   chain as the top gallery; only the horizontal alignment differs (centred). */
.p4-pvb-centred-wrap { margin-left: auto; margin-right: auto; }
/* Client request: +50px top and bottom on the centred block only (theme pad-t40/pad-b40 = 40px, 35px at <=991px). */
.product-detail-block.p4-pvb-section { padding-top: 90px; padding-bottom: 90px; }
@media only screen and (max-width: 991px) {
    .product-detail-block.p4-pvb-section { padding-top: 85px; padding-bottom: 85px; }
}

/* Block 2: under the main gallery in the right column (desktop/tablet),
   below the product text on mobile. */
.p4-pvb--right { margin-top: 130px; margin-bottom: 35px; } /* was 40px top; ~130px visible gap like the centred block */
.p4-pvb-right-wrap { width: 100%; }
.p4-pvb--right.p4-pvb--mobile { display: none; }

@media (max-width: 767px) {
    .p4-pvb__frame { border-radius: 12px; }
    .p4-pvb--right.p4-pvb--desktop { display: none; }
    .p4-pvb--right.p4-pvb--mobile { display: block; margin-top: 120px; margin-bottom: 50px; } /* was 25/10; client asked for desktop-like breathing room */
}

/* Heading + text above the video. Heading uses the theme's h4 sizes; text matches product body copy. */
.p4-pvb__copy { margin-bottom: 20px; }
.p4-pvb__heading { margin-bottom: 12px; }
.product-detail-block .container .p4-pvb .p4-pvb__copy .p4-pvb__text, .product-detail-block .container .p4-pvb .p4-pvb__copy .p4-pvb__text p { font-size: 19px; } /* beats .product-info p inside the top section */
.p4-pvb__text p:last-child { margin-bottom: 0; }
@media (max-width: 1199px) {
    .product-detail-block .container .p4-pvb .p4-pvb__copy .p4-pvb__text, .product-detail-block .container .p4-pvb .p4-pvb__copy .p4-pvb__text p { font-size: 17px; }
}
@media (max-width: 767px) {
    .product-detail-block .container .p4-pvb .p4-pvb__copy .p4-pvb__text, .product-detail-block .container .p4-pvb .p4-pvb__copy .p4-pvb__text p { font-size: 16px; }
    .p4-pvb__copy { margin-bottom: 15px; }
}
