/* Keep the complete product between the live copy and controls. */
.form-offer { margin-bottom: 12px; padding: 14px 16px 12px; border: 1px solid rgba(248,207,66,.5); border-radius: 4px; background: rgba(11,28,39,.48); }
.form-offer__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.form-offer__top p { font-size: 10px; line-height: 1.4; font-weight: 700; letter-spacing: .12em; }
.form-offer__badge { flex-shrink: 0; padding: 3px 8px; border-radius: 3px; background: var(--yellow); color: var(--ink); font-size: 12px; line-height: 1.3; font-weight: 800; }
.order-card .form-offer .price { gap: 12px; margin-bottom: 6px; }
.order-card .form-offer .price__new { font-size: 19px; }
.order-card .form-offer .price__new span { font-size: clamp(38px, 3.3vw, 48px); }
.order-card .form-offer .price__old { color: #dce5e9; font-size: 16px; }
.form-offer__saving { color: #e0e9ed; font-size: 12px; line-height: 1.45; }
.form-offer__saving strong { color: var(--yellow); font-weight: 700; }
.form-trust { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; list-style: none; padding: 0; margin: 0 0 18px; }
.form-trust li { display: flex; align-items: center; gap: 7px; color: #f4f7f8; font-size: 11px; line-height: 1.4; }
.form-trust svg { flex-shrink: 0; width: 18px; height: 18px; color: var(--yellow); }
.video-lead strong { color: #fff; font-weight: 700; }
.product-space { display: none; }
.order-product-space { height: 320px; }
.order-card { overflow: hidden; background: #5b7180 url('../img/order-snow-continuous.webp') center bottom / 100% auto no-repeat; }
.order-card__scene { position: absolute; inset: var(--scene-top, 0px) 0 auto; z-index: -2; display: block; width: 100%; pointer-events: none; -webkit-mask-image: linear-gradient(transparent, #000 40px, #000 calc(100% - 60px), transparent); mask-image: linear-gradient(transparent, #000 40px, #000 calc(100% - 60px), transparent); }
.order-card__scene img { display: block; width: 100%; max-width: 100%; height: auto; object-fit: contain; }
.order-card::before { background: linear-gradient(to bottom, rgba(12,30,42,.64), rgba(12,30,42,.58) calc(var(--product-top, 360px) - 22px), rgba(12,30,42,.02) var(--product-top, 360px), rgba(12,30,42,.02) var(--product-bottom, 660px), rgba(12,30,42,.7) calc(var(--product-bottom, 660px) + 24px), rgba(12,30,42,.78)); }
.lookbook-grid figure .photo-crop { aspect-ratio: var(--photo-ratio); }
.lookbook-grid figure:not(.lookbook-main) .photo-crop { aspect-ratio: var(--photo-ratio); }

@media (max-width: 900px) {
    .product-space { display: block; flex-shrink: 0; width: 100%; }
    .header__product-space { height: calc(60.85vw + 44px); }
    .final__product-space { height: calc(56.37vw + 44px); }
    .order-product-space { height: calc(67.68vw + 44px); }
    .header--outdoor .header__scene, .features__scene, .delivery__scene, .final__scene { position: absolute; inset: var(--scene-top, 0px) 0 auto; width: 100%; max-width: none; height: auto; grid-area: auto; align-self: auto; z-index: -2; pointer-events: none; -webkit-mask-image: linear-gradient(transparent, #000 40px, #000 calc(100% - 60px), transparent); mask-image: linear-gradient(transparent, #000 40px, #000 calc(100% - 60px), transparent); }
    .header--outdoor .header__scene img, .features__scene img, .delivery__scene img, .final__scene img { width: 100%; height: auto; max-width: 100%; aspect-ratio: auto; object-fit: contain; }
    .header--outdoor, .features, .delivery, .final { overflow: hidden; }
    .header--outdoor .header__wrap { margin-top: 0; }
    .features__content { display: block; }
    .feature-grid { margin-top: 0; }
    .delivery-content, .final-content { padding-bottom: 20px; }
    .header--outdoor::before { background: linear-gradient(rgba(12,30,42,.46), rgba(12,30,42,.16) calc(var(--product-top, 260px) - 20px), transparent var(--product-top, 260px), transparent var(--product-bottom, 510px), rgba(12,30,42,.66) calc(var(--product-bottom, 510px) + 24px), rgba(12,30,42,.78)); }
    .features::before { background: linear-gradient(rgba(12,30,42,.54), rgba(12,30,42,.2) calc(var(--product-top, 260px) - 20px), transparent var(--product-top, 260px), transparent var(--product-bottom, 510px), rgba(12,30,42,.72) calc(var(--product-bottom, 510px) + 24px), rgba(12,30,42,.78)); }
    .delivery::before, .final::before { background: linear-gradient(rgba(12,30,42,.57), rgba(12,30,42,.28) calc(var(--product-top, 420px) - 20px), transparent var(--product-top, 420px), transparent var(--product-bottom, 660px), rgba(12,30,42,.23)); }
}

@media (max-width: 900px) {
    /* Explicit layers and dimensions also keep positioned pictures visible in WebKit. */
    .header--outdoor .header__scene, .features__scene, .delivery__scene, .final__scene, .order-card__scene { z-index: 0; }
    .header--outdoor::before, .header--outdoor::after, .features::before, .delivery::before, .delivery::after, .final::before, .final::after, .order-card::before { z-index: 1; }
    .header--outdoor .header__container, .features__content, .delivery-content, .final-content, .order-card > :not(.order-card__scene) { position: relative; z-index: 2; }
    .header--outdoor .header__scene { aspect-ratio: 876 / 1795; }
    .final__scene { aspect-ratio: 887 / 1774; }
    .order-card__scene { aspect-ratio: 724 / 2172; }
    .header--outdoor .header__scene img, .final__scene img, .order-card__scene img { height: 100%; }
    .features__scene, .delivery__scene { inset: 0; height: 100%; aspect-ratio: auto; -webkit-mask-image: none; mask-image: none; }
    .features__scene img, .delivery__scene img { height: calc(100% + 28px); width: 100%; object-fit: cover; object-position: center; transform: translateY(-28px); }
    .features__heading > p:last-child { margin-top: 12px; }
    .feature-grid { margin-top: 18px; row-gap: 20px; }
    .features::before { background: linear-gradient(rgba(12,30,42,.51), rgba(12,30,42,.7)); }
    .delivery-content { padding-top: 28px; padding-bottom: 24px; }
    .delivery-heading { margin-bottom: 16px; }
    .delivery-grid { row-gap: 16px; }
    .delivery::before { background: linear-gradient(rgba(12,30,42,.5), rgba(12,30,42,.62)); }
}

/* Repeat the offer at the end without covering the complete pair. */
.final-order-form { width: 100%; max-width: 430px; }
.final .final-order-form .price { display: flex; gap: 12px; margin-bottom: 6px; }
.final .final-order-form .price__new { color: var(--yellow); font-size: 19px; }
.final .final-order-form .price__new span { font-size: clamp(38px, 3.3vw, 48px); }
.final .final-order-form .price__old { margin-top: 0; color: #dce5e9; font-size: 16px; }
.final .final-order-form .button { width: 100%; font-size: 16px; }
@media (max-width: 900px) {
    .final-order-form { max-width: none; }
    .final::before { background: linear-gradient(rgba(12,30,42,.57), rgba(12,30,42,.28) calc(var(--product-top, 260px) - 20px), transparent var(--product-top, 260px), transparent var(--product-bottom, 510px), rgba(12,30,42,.68) calc(var(--product-bottom, 510px) + 24px), rgba(12,30,42,.75)); }
}
@media (min-width: 901px) {
    .final__scene { -webkit-mask-image: linear-gradient(#000 calc(100% - 90px), transparent); mask-image: linear-gradient(#000 calc(100% - 90px), transparent); }
}

/* Desktop columns follow their content height instead of the mobile photo slot. */
@media (min-width: 901px) {
    .order-layout { grid-template-columns: minmax(0, 1.15fr) minmax(390px, 1fr); align-items: stretch; }
    .product-gallery { justify-content: flex-start; align-self: start; padding-block: 36px; }
    .order-card { padding: 36px clamp(28px, 3vw, 64px) 42px; background: #2d4352 url('../img/scene-terrain.webp') center / cover no-repeat; }
    .order-card__scene, .order-product-space { display: none; }
    .order-card::before { background: linear-gradient(rgba(12,30,42,.75), rgba(12,30,42,.84)); }
    .order-card .order-logo { width: 165px; margin-bottom: 18px; }
    .order-card h2 { font-size: clamp(40px, 3.4vw, 64px); }
    .order-card > .price { display: none; }
    .order-card .product-specs { margin-bottom: 24px; font-size: 14px; }
    .order-card .form-offer .price__new span { font-size: 46px; }
    .order-card .size-picker legend { font-size: 16px; }
    .order-card .button-group button { min-height: 48px; font-size: 20px; }
    .order-card .order-fields input { min-height: 54px; }
    .order-card .form__button { min-height: 60px; }
    .final { overflow: hidden; }
    .final-content { width: 46%; max-width: 800px; padding: 40px 32px 44px 4.7%; }
    .final h2 { font-size: clamp(40px, 4vw, 72px); }
    .final::before { background: linear-gradient(90deg, rgba(9,24,35,.8), rgba(9,24,35,.68) 44%, rgba(9,24,35,.12) 58%, transparent 72%); }
    .features, .delivery { overflow: hidden; }
    .feature-grid article > div { min-width: 0; }
    .feature-grid h3 { overflow-wrap: anywhere; }
}
@media (min-width: 901px) and (max-width: 1100px) {
    .order-layout { grid-template-columns: minmax(0, 1fr) minmax(390px, 1fr); }
    .order-card { padding-inline: 28px; }
    .final-content { width: 45%; padding-right: 28px; }
    .final h2 { font-size: 40px; }
}
