/* BustMaxx V12.6 — original/main website visual recovery and polish */

/* 1) Pack selector: give every pack enough breathing room and keep the primary single bottle visible cleanly. */
.pack-selector-sheet{
    width:min(720px,calc(100vw - 34px))!important;
    max-height:min(88vh,850px)!important;
    overflow:auto!important;
}
.pack-selector-sheet .pack-selector-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
}
.pack-selector-sheet .pack-selector-card{
    grid-template-columns:78px minmax(0,1fr) 44px!important;
    min-height:104px!important;
    padding:11px!important;
    border-radius:21px!important;
    border-color:#eadde4!important;
    box-shadow:0 12px 32px rgba(36,8,22,.07)!important;
}
.pack-selector-sheet .pack-selector-image{
    width:78px!important;
    height:82px!important;
}
.pack-selector-sheet .pack-selector-copy small{font-size:8px!important;letter-spacing:.1em!important}
.pack-selector-sheet .pack-selector-copy strong{font-size:14px!important;line-height:1.2!important}
.pack-selector-sheet .pack-selector-copy span{font-size:15px!important}
.pack-selector-sheet .pack-selector-form button{width:42px!important;height:42px!important}

/* 2) “Every angle” gallery: restore a controlled editorial layout instead of giant cropped label fragments. */
.home-page .editorial-gallery{
    padding:clamp(78px,8vw,118px) 5vw clamp(88px,9vw,130px)!important;
    background:#fff9fc!important;
}
.home-page .editorial-gallery>header,
.home-page .editorial-gallery .masonry-x{
    width:min(1440px,100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
}
.home-page .editorial-gallery>header{margin-bottom:42px!important}
.home-page .editorial-gallery h2{
    max-width:820px!important;
    margin-bottom:0!important;
    font-size:clamp(46px,5.2vw,82px)!important;
    line-height:.92!important;
    letter-spacing:-.055em!important;
}
.home-page .masonry-x{
    display:grid!important;
    grid-template-columns:repeat(12,minmax(0,1fr))!important;
    grid-auto-rows:76px!important;
    gap:14px!important;
}
.home-page .gallery-tile{
    border:1px solid #eadfe5!important;
    border-radius:24px!important;
    background:linear-gradient(145deg,#fff,#f8edf3)!important;
    box-shadow:0 18px 48px rgba(31,8,19,.07)!important;
}
.home-page .gallery-tile img{
    transition:transform .45s ease!important;
}
.home-page .gallery-tile:nth-child(-n+3) img{
    object-fit:contain!important;
    padding:24px!important;
    background:linear-gradient(145deg,#fff,#fbf2f6)!important;
}
.home-page .gallery-tile:nth-child(n+4) img{object-fit:cover!important}
.home-page .gallery-tile:hover img{transform:scale(1.025)!important}
.home-page .tile-1{grid-column:1/5!important;grid-row:span 5!important}
.home-page .tile-2{grid-column:5/9!important;grid-row:span 5!important}
.home-page .tile-3{grid-column:9/13!important;grid-row:span 5!important}
.home-page .tile-4{grid-column:1/7!important;grid-row:span 4!important}
.home-page .tile-5{grid-column:7/13!important;grid-row:span 4!important}
.home-page .tile-6{grid-column:3/11!important;grid-row:span 4!important}
.home-page .gallery-tile span{
    right:14px!important;
    bottom:14px!important;
    padding:8px 11px!important;
    background:rgba(17,7,13,.78)!important;
    backdrop-filter:blur(8px)!important;
}

/* 3) Photo-review showcase: premium proportions, readable type and only genuine image-backed entries from controller. */
.home-page .review-showcase-section{
    background:
        radial-gradient(circle at 10% 12%,rgba(232,0,113,.15),transparent 28%),
        radial-gradient(circle at 86% 74%,rgba(255,143,189,.08),transparent 28%),
        #12070d!important;
    padding:clamp(80px,8vw,124px) 5vw!important;
}
.home-page .review-showcase-head,
.home-page .review-showcase-viewport{
    width:min(1440px,100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
}
.home-page .review-showcase-head{margin-bottom:34px!important}
.home-page .review-showcase-head h2{
    max-width:820px!important;
    font-size:clamp(50px,5.4vw,82px)!important;
    line-height:.93!important;
    letter-spacing:-.055em!important;
}
.home-page .review-showcase-head p{
    max-width:640px!important;
    margin-top:18px!important;
    font-size:14px!important;
    line-height:1.65!important;
}
.home-page .review-showcase-track{gap:16px!important}
.home-page .review-showcase-card{
    flex:0 0 clamp(330px,30vw,420px)!important;
    width:clamp(330px,30vw,420px)!important;
    min-height:515px!important;
    border-radius:26px!important;
    border:1px solid rgba(255,255,255,.2)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
}
.home-page .review-showcase-media{height:270px!important;background:#f6edf2!important}
.home-page .review-showcase-media img{
    object-fit:cover!important;
    object-position:center!important;
    padding:0!important;
}
.home-page .review-showcase-media span{
    left:16px!important;
    right:16px!important;
    bottom:14px!important;
    font-size:9px!important;
    letter-spacing:.08em!important;
}
.home-page .review-showcase-body{padding:22px 22px 20px!important}
.home-page .review-showcase-stars{font-size:13px!important;letter-spacing:2px!important}
.home-page .review-showcase-body h3{
    margin-top:12px!important;
    font-size:20px!important;
    line-height:1.12!important;
}
.home-page .review-showcase-body blockquote{
    margin:16px 0 22px!important;
    font-size:14px!important;
    line-height:1.58!important;
    -webkit-line-clamp:5!important;
}
.home-page .review-showcase-body footer{padding-top:16px!important}
.home-page .review-showcase-body footer b{font-size:13px!important}
.home-page .review-showcase-body footer span,
.home-page .review-showcase-body footer time{font-size:9px!important}
.home-page .review-showcase-actions a{
    transition:color .2s ease,border-color .2s ease,transform .2s ease!important;
}
.home-page .review-showcase-actions a:hover{
    color:#ff8fbd!important;
    border-color:#ff8fbd!important;
    transform:translateY(-1px)!important;
}

/* 4) Cart drawer contrast: cream/white surface must always use dark copy. */
.cart-drawer>aside,
.cart-drawer aside>header,
.cart-drawer .drawer-items,
.cart-drawer .empty-cart,
.cart-drawer aside>footer{
    color:#1a0b12!important;
}
.cart-drawer header h2,
.cart-drawer .empty-cart h3,
.cart-drawer .empty-cart a,
.cart-drawer .drawer-items strong,
.cart-drawer .drawer-items article>b,
.cart-drawer .mini-qty span,
.cart-drawer .mini-qty button,
.cart-drawer .remove-line,
.cart-drawer aside>footer>div,
.cart-drawer aside>footer>div span,
.cart-drawer aside>footer>div b{
    color:#1a0b12!important;
}
.cart-drawer .empty-cart h3{font-size:22px!important;margin:14px 0 0!important}
.cart-drawer .empty-cart a{
    font-weight:750!important;
    border-bottom:1px solid rgba(26,11,18,.32)!important;
    text-decoration:none!important;
    padding-bottom:4px!important;
}
.cart-drawer .empty-cart i{color:#d9cbd3!important}
.cart-drawer .checkout-link,
.cart-drawer .checkout-link span{color:#fff!important}
.cart-drawer aside>footer>small{color:#786872!important}

/* 5) Short, readable footer disclaimer. Full legal wording remains on /disclaimer. */
.global-footer .footer-bottom{
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:28px!important;
    color:rgba(255,255,255,.56)!important;
    font-size:10px!important;
}
.global-footer .footer-legal-compact{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:5px!important;
    align-items:center!important;
}
.global-footer .footer-legal-compact a{
    color:#ff8fbd!important;
    text-decoration:none!important;
    border-bottom:1px solid rgba(255,143,189,.45)!important;
    transition:.22s ease!important;
}
.global-footer .footer-legal-compact a:hover{color:#fff!important;border-color:#fff!important}

/* 7) Footer navigation hover treatment. */
.global-footer .footer-grid section>a,
.global-footer .social-row a{
    position:relative!important;
    transition:color .22s ease,transform .22s ease!important;
}
.global-footer .footer-grid section>a:hover,
.global-footer .social-row a:hover{
    color:#fff!important;
    transform:translateX(6px)!important;
}
.global-footer .footer-grid section>a::before{
    content:"";
    position:absolute;
    left:-13px;
    top:50%;
    width:0;
    height:1px;
    background:var(--brand);
    transition:width .22s ease;
}
.global-footer .footer-grid section>a:hover::before{width:8px}

/* 8) Pink service strip: enter from the RIGHT edge and travel fully to the LEFT. */
.home-page .kinetic-strip{position:relative!important;overflow:hidden!important}
.home-page .kinetic-strip div{
    position:absolute!important;
    left:100%!important;
    width:max-content!important;
    margin:0!important;
    animation:bustmaxxRightToLeft 28s linear infinite!important;
    will-change:transform!important;
}
@keyframes bustmaxxRightToLeft{
    from{transform:translateX(0)}
    to{transform:translateX(calc(-100% - 100vw))}
}
.home-page .kinetic-strip:hover div{animation-play-state:paused!important}

@media(max-width:760px){
    .pack-selector-sheet{width:calc(100vw - 18px)!important;max-height:86vh!important;padding:22px 13px calc(18px + env(safe-area-inset-bottom))!important}
    .pack-selector-sheet .pack-selector-grid{grid-template-columns:1fr!important;gap:9px!important}
    .pack-selector-sheet .pack-selector-card{grid-template-columns:72px minmax(0,1fr) 42px!important;min-height:92px!important;padding:9px!important}
    .pack-selector-sheet .pack-selector-image{width:72px!important;height:74px!important}
    .pack-selector-sheet .pack-selector-copy strong{font-size:13px!important}

    .home-page .editorial-gallery{padding:70px 14px 78px!important}
    .home-page .editorial-gallery>header{margin-bottom:28px!important}
    .home-page .editorial-gallery h2{font-size:46px!important;letter-spacing:-.05em!important}
    .home-page .masonry-x{
        display:flex!important;
        overflow-x:auto!important;
        gap:12px!important;
        padding:2px 1px 14px!important;
        scroll-snap-type:x mandatory!important;
        scrollbar-width:none!important;
    }
    .home-page .masonry-x::-webkit-scrollbar{display:none!important}
    .home-page .gallery-tile{
        flex:0 0 84vw!important;
        width:84vw!important;
        height:320px!important;
        min-height:320px!important;
        scroll-snap-align:center!important;
    }
    .home-page .gallery-tile:nth-child(-n+3) img{padding:18px!important}

    .home-page .review-showcase-section{padding:68px 14px 58px!important}
    .home-page .review-showcase-head{margin-bottom:24px!important}
    .home-page .review-showcase-head h2{font-size:43px!important}
    .home-page .review-showcase-head p{font-size:13px!important}
    .home-page .review-showcase-viewport{
        width:calc(100% + 28px)!important;
        margin-left:-14px!important;
        padding:4px 14px 18px!important;
    }
    .home-page .review-showcase-card{
        flex-basis:84vw!important;
        width:84vw!important;
        min-height:480px!important;
        border-radius:23px!important;
    }
    .home-page .review-showcase-media{height:235px!important}
    .home-page .review-showcase-body{padding:19px 18px 18px!important}

    .global-footer .footer-bottom{
        grid-template-columns:1fr!important;
        gap:10px!important;
        margin-top:48px!important;
    }

    .home-page .kinetic-strip div{animation-duration:22s!important}
}

@media(prefers-reduced-motion:reduce){
    .home-page .kinetic-strip div{position:static!important;transform:none!important;animation:none!important;padding-left:16px!important}
}
