/* ===== RESPONSIVE LAYER: TABLET / MOBILE ===== */
/* Original max-width media blocks preserved in source order. */
/* ===== NEUTRA TABLET + MOBILE RESPONSIVE CSS ===== */
/* Original max-width media blocks preserved in source order. */

/* ===== BASKET / MOBILE ===== */
/* ===== RESPONSIVE BLOCK 1 ===== */
@media(max-width:600px){
.basket-modal-backdrop{padding:12px}
.basket-modal{max-height:82dvh;border-radius:16px}
.basket-modal-heading{padding:13px 14px 9px}
.basket-modal-orders{padding-inline:14px}
.basket-modal-grand-total{padding:13px 14px;font-size:14px}
.basket-modal-grand-total strong{font-size:17px}
}

/* ===== GALLERY / MOBILE ===== */
/* ===== RESPONSIVE BLOCK 2 ===== */
@media(max-width:600px){
  .product-gallery-arrow{width:39px;height:46px;border-radius:11px;background:rgba(255,255,255,.93)}
  .product-gallery-arrow--previous{left:7px}
  .product-gallery-arrow--next{right:7px}
  .product-gallery-arrow span{font-size:36px}
}

/* ===== GLOBAL / HEADER / HERO / PRODUCTS / ADMIN OVERRIDES ===== */
/* ===== RESPONSIVE BLOCK 3 ===== */
@media(max-width:1100px){html{scroll-padding-top:104px}
/* THE COLLECTION — shared heading above both tablet columns. */
.product-card{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);grid-template-areas:"copy copy" "visual order" "details details";column-gap:clamp(18px,2.7vw,32px);row-gap:16px}
.product-copy h3,.product-copy h1{font-size:clamp(36px,4.1vw,48px)}
/* HEADER */
.site-header{height:88px;grid-template-columns:160px minmax(0,1fr) auto;gap:16px;padding-inline:20px}
.header-logo{width:160px}
.promo-rotator{height:52px}
.product-nav a{min-width:190px;padding-inline:16px;font-size:12.5px}
/* HERO â€” LOCKED */
.hero{min-height:0;grid-template-columns:minmax(0,1fr);gap:14px;padding:24px 28px 22px;text-align:center}
.hero-content{max-width:650px;justify-self:center}
.hero-brand-logo{margin-inline:auto}
.hero h1,.hero-description{margin-inline:auto}
.hero-socials{margin-inline:auto}
.hero-brand-logo{width:min(280px,80%)}
.hero-showcase{width:100%;max-width:660px}
.hero-social{padding-inline:13px;font-size:12px}
}

/* ===== RESPONSIVE BLOCK 4 ===== */
@media(max-width:900px){.site-header{grid-template-columns:150px minmax(0,1fr) auto;gap:14px;padding-inline:18px}
.header-logo{width:150px}
.promo-message{gap:9px;padding-inline:12px}
.promo-copy strong{font-size:13px}
.product-nav a{min-width:184px}
.hero{grid-template-columns:minmax(0,1fr);gap:12px;padding-inline:22px}
.hero h1{font-size:44px}
.hero-description{font-size:14px}
.hero-socials{gap:8px}
.hero-social{gap:7px;padding-inline:10px;font-size:11px}
.hero-social svg{width:22px;height:22px}
}

/* ===== RESPONSIVE BLOCK 5 ===== */
@media(max-width:800px){/* HERO â€” LOCKED */
.hero{min-height:0;grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "kicker" "title" "description" "showcase" "socials";align-content:start;gap:0;padding:22px 18px 14px;text-align:center}
.hero::after{width:760px;right:-70%;top:-25%}
.hero-content{display:contents}
.hero-brand-logo{grid-area:brand;width:min(240px,68vw);margin:0 auto 6px}
.hero-kicker{grid-area:kicker;margin:0 0 4px}
.hero h1{grid-area:title;max-width:680px;margin:auto;font-size:clamp(42px,8vw,58px)}
.hero-description{grid-area:description;max-width:600px;margin:12px auto 8px;text-align:center}
.hero-socials{grid-area:socials;max-width:520px;margin:auto}
.hero-showcase{grid-area:showcase;width:min(100%,600px);max-width:600px;min-width:0;height:auto;padding:0;margin:8px auto 14px;align-self:auto}
/* THE COLLECTION — TABLET & MOBILE */
.products{padding:10px 18px 62px}
.product-card{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "visual" "order" "details";gap:18px;padding:23px 20px 25px;border-radius:20px}
/* Mobile: keep the price directly after the product heading, including when the title wraps. */
.product-visual{align-self:start}
.product-copy{display:block;margin:0}
.product-copy .eyebrow{display:block;margin-bottom:7px}
.product-copy h3,.product-copy h1{display:inline;font-size:clamp(24px,6.25vw,32px);line-height:1.3;margin:0}
.product-main-price{display:inline;margin-inline-start:10px;white-space:nowrap;font-size:clamp(19px,4.6vw,24px);font-weight:600;line-height:1.3}
.product-media-frame{border-radius:20px}
.product-copy .intro{display:block;margin-top:9px;font-size:18px;font-weight:600;line-height:1.7}
.product-order-panel{padding:18px}
/* Keep two short rows on tablet and wider mobiles; stack only on very narrow screens. */
/* ===== MOBILE FOOTER ===== */
/* Footer: two compact rows on tablets and phones. */
.site-footer__inner{grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:0}
.site-footer__copyright{grid-column:1/-1;justify-self:center}
/* ADMIN */
.admin-main{padding:40px 18px}
.admin-heading{display:block}
.admin-heading h1{font-size:42px;margin-bottom:22px}
.admin-grid{grid-template-columns:1fr}
.admin-product{grid-template-columns:90px 1fr}
.admin-product>img{width:90px;height:120px}
.order-row{display:grid}
.order-row form{justify-content:space-between}
.admin-panel{padding:20px}
}

/* ===== RESPONSIVE BLOCK 6 ===== */
@media(max-width:600px){html{scroll-padding-top:88px}
/* COMPACT FOOTER */
.site-footer{padding:9px 13px 8px}
.site-footer__brand img{width:104px}
.site-footer__brand span{display:none}
.site-footer__links{gap:0}
.site-footer__links a{min-height:40px;padding:7px 7px;font-size:12px}
.site-footer__copyright{font-size:10px;line-height:1.4}
/* HEADER */
.site-header{height:76px;grid-template-columns:112px minmax(0,1fr) auto;gap:10px;padding:8px 10px}
.header-logo{width:112px}
.promo-rotator{height:48px;border-radius:14px}
.promo-message{gap:7px;padding:6px 8px}
.promo-icon{font-size:14px}
.promo-copy small{font-size:7.5px;letter-spacing:.1em}
.promo-copy strong{font-size:11px}
.header-actions{gap:6px}
.shop-pill{min-height:42px;padding:9px 10px;font-size:11px}
.order-pill{min-height:42px;gap:6px;padding:9px 10px;font-size:11px}
.basket-icon{width:16px;height:16px}
.product-nav{--marquee-gap:8px;padding-block:7px}
.product-nav a{min-width:170px;min-height:42px;padding:9px 14px;font-size:12px}
/* HERO â€” LOCKED */
.hero{padding:20px 14px 12px}
.hero-brand-logo{width:min(225px,68vw)}
.hero-kicker{margin-bottom:9px;font-size:10px;letter-spacing:.22em}
.hero h1{font-size:clamp(36px,9.2vw,46px);line-height:.98}
.hero-description{margin:12px auto 6px;font-size:13px}
.hero-socials{gap:8px}
.hero-social{min-height:48px;padding:9px 10px;border-radius:14px;font-size:12px}
.hero-social svg{width:22px;height:22px}
/* THE COLLECTION — NARROW MOBILE */
.products{padding:10px 16px 64px}
.product-card{gap:20px;padding:18px 14px 21px;border-radius:18px}
.product-media-frame{border-radius:18px}
.product-card-image{width:100%;height:100%}
.product-gallery-thumb{width:69px;height:69px;flex-basis:69px}
.product-place-order{min-height:48px}
}

/* ===== RESPONSIVE BLOCK 7 ===== */
@media(max-width:440px){.site-header{grid-template-columns:96px minmax(0,1fr) auto;gap:8px;padding-inline:8px}
.header-logo{width:96px}
.shop-pill{padding-inline:9px}
.order-pill{padding-inline:8px}
.order-label{display:none}
/* THE COLLECTION — KEEP APPROVED TWO-FIELD ROWS AT ALL SIZES */
.products{padding-inline:8px}
.product-card{padding:15px 11px 18px}
.products > .product-card + .product-card{margin-top:24px}
.products > .product-card + .product-card::before{top:-13px}
/* HERO â€” LOCKED */
.hero{padding-inline:14px}
.hero-brand-logo{width:min(210px,68vw)}
.hero-social{gap:6px;padding-inline:7px;font-size:11px}
.hero-social svg{width:20px;height:20px}
}

/* ===== SHOP / RELATED PRODUCTS / MOBILE ===== */
/* ===== RESPONSIVE BLOCK 8 ===== */
@media (max-width: 1100px) {
    .shop-page .shop-grid,
    #related-products .shop-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ===== RESPONSIVE BLOCK 9 ===== */
@media (max-width: 600px) {
    .shop-page .shop-products,
    #related-products.shop-products {
        padding-inline: 12px;
    }

    .shop-page .shop-grid,
    #related-products .shop-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}

/* ===== RESPONSIVE BLOCK 10 ===== */
@media (max-width: 600px) {
    .site-header {
        grid-template-columns: 112px minmax(0, 1fr) max-content;
        gap: 8px;
        padding-inline: 8px;
    }

    .header-actions {
        min-width: max-content;
        flex-shrink: 0;
        gap: 6px;
    }

    .shop-pill {
        min-width: 60px;
        min-height: 44px;
        padding: 10px 12px;
        font-size: 12px;
    }

    .order-pill {
        width: 44px;
        min-width: 44px;
        min-height: 44px;
        gap: 4px;
        padding: 8px;
    }

    .order-label {
        display: none;
    }

    .basket-icon {
        width: 17px;
        height: 17px;
        flex: 0 0 17px;
    }

    .order-pill #basket-count {
        flex: 0 0 23px;
    }

    .promo-rotator,
    .promo-message,
    .promo-copy {
        min-width: 0;
    }
}

/* ===== RESPONSIVE BLOCK 11 ===== */
@media (max-width: 440px) {
    .site-header {
        grid-template-columns: 96px minmax(0, 1fr) max-content;
        gap: 6px;
        padding-inline: 6px;
    }

    .header-actions {
        gap: 5px;
    }

    .shop-pill {
        min-width: 58px;
        padding-inline: 10px;
    }
}

/* ===== RESPONSIVE BLOCK 12 ===== */
@media (max-width: 440px) {
    .product-detail-page > #products .product-gallery-thumbs:has(> .product-gallery-thumb:nth-child(4):last-child) > .product-gallery-thumb {
        width: auto;
        min-width: 0;
        flex: 1 1 0;
    }
}

/* ===== HOMEPAGE EXPLORE / MOBILE ===== */
/* ===== RESPONSIVE BLOCK 13 ===== */
@media (max-width: 600px) {
    .home-explore-products {
        width: calc(100% - 24px);
        margin-block: 30px 42px;
        padding: 30px 18px 32px;
        border-radius: 19px;
    }

    .home-explore-products__intro {
        margin-top: 11px;
        margin-bottom: 20px;
    }

    .home-explore-products__button {
        width: 100%;
    }
}

/* ===== REVIEWS / MOBILE ===== */
/* ===== RESPONSIVE BLOCK 14 ===== */
@media (max-width: 600px) {
    .storefront-reviews {
        width: calc(100% - 24px);
        margin-block: 30px 42px;
        padding: 30px 18px 32px;
        border-radius: 19px;
    }

    .storefront-review__header {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
    }

    .storefront-reviews__form {
        width: 100%;
        min-width: 0;
    }

    .storefront-reviews__form input:not(.storefront-reviews__rating-input),
    .storefront-reviews__form textarea {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    .storefront-reviews__rating-stars {
        display: flex;
        width: 100%;
        max-width: 100%;
        gap: 5px;
    }

    .storefront-reviews__rating-stars label {
        flex: 0 0 44px;
    }

    .storefront-reviews__form button {
        width: 100%;
    }
}

/* ===== RESPONSIVE BLOCK 15 ===== */
@media(max-width:600px){.reviews-page .storefront-reviews__list{grid-template-columns:1fr}.reviews-pagination{width:calc(100% - 24px);margin-top:-18px;gap:8px}.reviews-pagination span{order:-1;width:100%;text-align:center}}/* Step 38B: accessible native star rating for the review form. */

/* ===== RESPONSIVE BLOCK 16 ===== */
@media (max-width: 600px) {
    .storefront-reviews__rating-stars {
        gap: 5px;
    }
    .storefront-reviews__rating-stars label {
        width: 44px;
        height: 44px;
        border-radius: 10px;
        font-size: 32px;
    }
}

/* ===== FINAL HEADER / BASKET / GALLERY OVERRIDES ===== */
/* ===== RESPONSIVE BLOCK 17 ===== */
@media (max-width: 900px) {
    .product-nav .product-nav-disabled {
        min-width: 184px;
    }
}

/* ===== RESPONSIVE BLOCK 18 ===== */
@media (max-width: 600px) {
    .product-nav .product-nav-disabled {
        min-width: 170px;
        min-height: 42px;
        padding: 9px 14px;
        font-size: 12px;
    }
}

/* ===== RESPONSIVE BLOCK 19 ===== */
@media (max-width: 600px) {
    .shop-pill {
        min-width: 60px;
        min-height: 44px;
        padding: 10px 12px;
        font-size: 12px;
    }
    .order-pill {
        width: 44px;
        min-width: 44px;
        min-height: 44px;
        gap: 4px;
        padding: 8px;
        font-size: 11px;
    }
}

/* ===== RESPONSIVE BLOCK 20 ===== */
@media (max-width: 440px) {
    .shop-pill {
        min-width: 58px;
        padding-inline: 10px;
    }
    .order-pill {
        padding-inline: 8px;
    }
}


/* Preserve the original cascade: the shared rating base kept the star rail content-sized on mobile. */
@media (max-width: 600px) {
    .storefront-reviews__rating-stars {
        width: max-content;
    }
}

/* ===== ABOUT / CONTACT PAGES / MOBILE ===== */
@media (max-width: 900px) {
    .contact-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .info-page {
        width: calc(100% - 24px);
        padding: 30px 0 48px;
    }

    .info-hero {
        margin-bottom: 30px;
    }

    .info-hero h1 {
        font-size: clamp(32px, 10vw, 46px);
    }

    .info-hero > p:last-child,
    .info-card p:last-child,
    .info-callout p,
    .contact-panel > p {
        font-size: 15px;
        line-height: 1.7;
    }

    .info-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .info-card,
    .info-callout,
    .contact-panel {
        border-radius: 18px;
        padding: 22px 18px;
    }

    .info-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .info-button {
        width: 100%;
    }

    .contact-layout {
        gap: 16px;
    }

    .contact-form .info-button,
    .contact-whatsapp {
        width: 100%;
    }

    .site-footer__inner {
        grid-template-columns: 1fr;
        row-gap: 8px;
    }

    .site-footer__brand {
        justify-content: center;
    }

    .site-footer__links {
        justify-content: center;
        flex-wrap: wrap;
        white-space: normal;
    }

    .site-footer__copyright {
        grid-column: auto;
    }
}