/* MASTER-PACK selected homepage 0.7.34 density correction.
 * Staging first.
 *
 * The 0.7.32 visual rebalance reduced individual image/text sizes, but the
 * older Concept 1 viewport-fit layer still kept every desktop product section
 * at 100svh and every product band stretched to the remaining viewport height.
 * The approved reference is materially denser: product bands are horizontal,
 * image-led and readable without each category consuming a full screen.
 *
 * This layer changes only Concept 1 geometry/typographic density. It preserves
 * the existing content, horizontal slider controls, swipe/keyboard behaviour,
 * CTA hierarchy and routes.
 */

/* --------------------------------------------------------------------------
   DESKTOP / LARGE TABLET — compact reference-led horizontal product bands
   -------------------------------------------------------------------------- */

@media (min-width: 901px) {
    .mp-prototype-1 .mp-product-section {
        height: auto;
        min-height: 0;
        display: block;
        overflow: hidden;
        padding-top: calc(var(--mp-header-height) + clamp(28px, 3vw, 42px));
        padding-bottom: clamp(38px, 4vw, 58px);
    }

    .mp-prototype-1 .mp-product-section .mp-section-heading {
        margin-bottom: clamp(18px, 2vw, 26px);
    }

    .mp-prototype-1 .mp-product-section .mp-section-copy h2 {
        font-size: clamp(30px, 2.45vw, 40px);
        line-height: 1.04;
    }

    .mp-prototype-1 .mp-slider-shell {
        width: 100%;
        height: auto;
        min-height: 0;
        display: block;
    }

    .mp-prototype-1 .mp-slider {
        height: auto;
        min-height: 0;
        padding-block: 0;
    }

    .mp-prototype-1 .mp-slide {
        height: clamp(450px, 29vw, 520px);
        min-height: 0;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        grid-template-rows: minmax(0, 1fr);
    }

    .mp-prototype-1 .mp-slide-media {
        height: 100%;
        min-height: 0;
        padding: clamp(26px, 3vw, 42px);
    }

    .mp-prototype-1 .mp-slide-media > img:first-child {
        width: min(72%, 500px);
        height: min(76%, 390px);
        object-fit: contain;
    }

    .mp-prototype-1 .mp-slide-detail-image {
        right: clamp(18px, 2.5vw, 42px);
        bottom: clamp(18px, 2.5vw, 38px);
        width: clamp(92px, 11vw, 170px);
        height: clamp(76px, 9vw, 132px);
        border-width: 5px;
    }

    .mp-prototype-1 .mp-slide-content {
        height: 100%;
        min-height: 0;
        padding: clamp(28px, 3vw, 44px) clamp(38px, 4.5vw, 72px);
    }

    .mp-prototype-1 .mp-slide-subtitle {
        margin-bottom: 11px;
    }

    .mp-prototype-1 .mp-slide-content h3 {
        margin-bottom: 15px;
        font-size: clamp(29px, 2.25vw, 40px);
        line-height: 1.04;
    }

    .mp-prototype-1 .mp-slide-description {
        margin-bottom: 17px;
        font-size: clamp(14px, 1vw, 16px);
        line-height: 1.52;
    }

    .mp-prototype-1 .mp-slide-facts {
        margin-bottom: 20px;
    }

    .mp-prototype-1 .mp-slide-actions {
        gap: 14px;
    }

    .mp-prototype-1 .mp-slide-actions .mp-button {
        min-height: 44px;
        padding: 10px 18px;
    }

    .mp-prototype-1 .mp-slider-shell > .mp-slider-controls {
        top: 50%;
    }
}

/* --------------------------------------------------------------------------
   TABLET — retain the stacked card but remove the 4:3 full-width media block
   -------------------------------------------------------------------------- */

@media (min-width: 601px) and (max-width: 900px) {
    .mp-prototype-1 .mp-product-section {
        padding-top: calc(var(--mp-header-height) + 34px);
        padding-bottom: 44px;
    }

    .mp-prototype-1 .mp-slide {
        min-height: 0;
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto auto;
    }

    .mp-prototype-1 .mp-slide-media {
        height: clamp(330px, 44vw, 370px);
        min-height: 0;
        aspect-ratio: auto;
        padding: 28px 42px;
    }

    .mp-prototype-1 .mp-slide-media > img:first-child {
        width: min(70%, 470px);
        height: min(78%, 290px);
        object-fit: contain;
    }

    .mp-prototype-1 .mp-slide-content {
        min-height: 0;
        padding: 30px 34px 38px;
    }

    .mp-prototype-1 .mp-slide-content h3 {
        margin-bottom: 13px;
        font-size: clamp(31px, 4.5vw, 36px);
    }

    .mp-prototype-1 .mp-slide-description {
        margin-bottom: 16px;
    }

    .mp-prototype-1 .mp-slide-facts {
        margin-bottom: 18px;
    }

    .mp-prototype-1 .mp-slider-shell > .mp-slider-controls {
        top: 22%;
    }
}

/* --------------------------------------------------------------------------
   PHONE — bring the enquiry CTA into the first product view more reliably
   -------------------------------------------------------------------------- */

@media (max-width: 600px) {
    .mp-prototype-1 .mp-product-section {
        padding-top: calc(var(--mp-header-height) + 28px);
        padding-bottom: 38px;
    }

    .mp-prototype-1 .mp-product-section .mp-section-heading {
        margin-bottom: 16px;
    }

    .mp-prototype-1 .mp-section-copy h2 {
        font-size: clamp(27px, 7.7vw, 30px);
        line-height: 1.05;
    }

    .mp-prototype-1 .mp-slide {
        min-height: 0;
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto auto;
    }

    .mp-prototype-1 .mp-slide-media {
        height: 238px;
        min-height: 0;
        aspect-ratio: auto;
        padding: 24px 26px;
    }

    .mp-prototype-1 .mp-slide-media > img:first-child {
        width: min(72%, 250px);
        height: min(78%, 180px);
        object-fit: contain;
    }

    .mp-prototype-1 .mp-slide-detail-image {
        right: 12px;
        bottom: 12px;
        width: 88px;
        height: 68px;
        border-width: 4px;
    }

    .mp-prototype-1 .mp-slide-content {
        min-height: 0;
        padding: 25px 20px 34px;
    }

    .mp-prototype-1 .mp-slide-subtitle {
        margin-bottom: 10px;
    }

    .mp-prototype-1 .mp-slide-content h3 {
        margin-bottom: 12px;
        font-size: clamp(26px, 7.4vw, 29px);
        line-height: 1.06;
    }

    .mp-prototype-1 .mp-slide-description {
        margin-bottom: 15px;
        font-size: 13.5px;
        line-height: 1.48;
    }

    .mp-prototype-1 .mp-slide-facts {
        gap: 7px;
        margin-bottom: 17px;
    }

    .mp-prototype-1 .mp-slide-facts li {
        padding: 6px 9px;
        font-size: 10.5px;
    }

    .mp-prototype-1 .mp-slide-actions {
        gap: 11px 14px;
    }

    .mp-prototype-1 .mp-slide-actions .mp-button {
        min-height: 44px;
        padding: 10px 16px;
    }

    .mp-prototype-1 .mp-slider-shell > .mp-slider-controls {
        top: 20%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mp-prototype-1 .mp-slide-media > img:first-child {
        transform: none !important;
    }
}
