


/* ==================================================
   HEADER
================================================== */

#mobile_nav_backdrop {display:none;}

@media (max-width:1000px) {

   /* announcement bar */
   #header {display:none!important;}
   #header_usp {align-items:center; box-sizing:border-box; display:flex; font-size:11px; justify-content:center; line-height:1.4; min-height:32px; width:100%;}
   #header_usp>.clr {display:none;}
   #header_usp_delivery {background-position:0 center; background-size:18px; font-size:13px; padding:9px 14px 9px 25px;}
   #header_usp_guarantee {background-position:0 center; background-size:14px; padding:9px 0 9px 22px;}

   /* header layout */
   #header_mobile {align-items:center; background:#fff; box-sizing:border-box; display:grid!important; gap:10px; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); height:76px; padding:12px 20px; position:relative; width:100%; z-index:40;}
   #header_mobile.header_nav_scroll {-webkit-backdrop-filter:none; backdrop-filter:none; background:transparent; box-shadow:none; isolation:isolate;}
   #header_mobile.header_nav_scroll::before {-webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); background:rgba(255,255,255,.85); border:1px solid #e6ddec; border-radius:999px; box-shadow:0 3px 12px rgba(27,44,58,.06); content:""; inset:6px 10px; pointer-events:none; position:absolute; z-index:-1;}

   /* header logo */
   #header_mobile_logo {justify-self:center; margin:0; min-width:0; padding:0; position:static; transform:none;}
   #header_mobile_logo a {display:block;}
   #header_mobile_logo img {display:block; height:auto; max-width:100%; width:135px;}

   /* header links */
   #header_mobile_icons {align-items:center; display:flex; gap:8px; justify-self:end; margin:0; padding:0; position:static;}
   #mobile_account {color:#4a3e55; display:grid; height:40px; place-items:center; width:36px;}
   #mobile_account svg {fill:none; height:24px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; width:24px;}
   #header_mobile a:focus-visible, #header_mobile button:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}

   /* header cart */
   #resp_cart_cont {float:none; padding:0; position:static;}
   #resp_header_cart {align-items:center; background:#9019ff; border:0; border-radius:24px; box-shadow:0 3px 12px #9019ff24; box-sizing:border-box; color:#fff; display:flex; gap:4px; height:40px; justify-content:center; min-width:55px; padding:8px 12px; text-decoration:none; width:auto;}
   #resp_header_cart svg {fill:none; height:23px; stroke:currentColor; stroke-linejoin:round; stroke-width:1.6; width:23px;}
   #resp_cart_quantity {background:none; color:#fff; font-size:11px; height:auto; line-height:1; padding:0; width:auto;}

   /* header menu button */
   #resp_nav_menu {align-items:center; appearance:none; background:#f3eafa; border:0; border-radius:50%; cursor:pointer; display:flex!important; flex-direction:column; gap:4px; height:40px; justify-content:center; padding:10px; position:static; width:40px;}
   .resp_men_bar {background:#715386; border-radius:2px; display:block; height:1.5px; margin:0; width:18px;}

   /* header nav panel */
   #mobile_nav_backdrop.lp_open {backdrop-filter:blur(4px); background:#221a345e; border:0; display:block; height:100%; inset:0; position:fixed; width:100%; z-index:80;}
   #resp_nav_cont {background:#fff; border-radius:0 24px 24px 0; box-sizing:border-box; display:none; height:100vh; height:100dvh; inset:0 auto 0 0; left:0; overflow-y:auto; overscroll-behavior:contain; padding:30px 24px; position:fixed; width:min(90vw,390px); z-index:81;}
   #resp_nav_cont.lp_open {display:block!important;}
   #resp_nav_cont #resp_nav_close {background:#f3eafa; border:0; border-radius:50%; box-sizing:border-box; color:#715386; cursor:pointer; display:grid; font-size:0; height:38px; line-height:1; padding:0; place-items:center; position:absolute; right:16px; top:16px; width:38px;}
   #resp_nav_cont #resp_nav_close::before, #resp_nav_cont #resp_nav_close::after {background:currentColor; border-radius:2px; content:""; height:2px; left:50%; position:absolute; top:50%; width:18px;}
   #resp_nav_cont #resp_nav_close::before {transform:translate(-50%,-50%) rotate(45deg);}
   #resp_nav_cont #resp_nav_close::after {transform:translate(-50%,-50%) rotate(-45deg);}
   .mobile_nav_intro {color:#292331; font-size:20px; font-weight:550; letter-spacing:-.04em; margin:44px 0 24px; padding:0;}

   /* mobile nav USPs */
   #resp_nav_cont .mobile_nav_usps {display:grid; gap:16px; list-style:none; margin:26px 0 0; padding:0;}
   #resp_nav_cont .mobile_nav_usps li {align-items:flex-start; color:#7d7285; display:flex; font-size:12px; gap:12px; line-height:1.6; list-style:none; margin:0; padding:0;}
   #resp_nav_cont .mobile_nav_usps svg {display:block; fill:none; flex:0 0 22px; height:22px; max-width:22px; stroke:#9019ff; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; width:22px;}
   #resp_nav_cont .mobile_nav_usps strong {color:#493b55; font-weight:650;}

   /* header nav links */
   #resp_nav {list-style:none; margin:0; padding:0;}
   #resp_nav li {border-bottom:1px solid #eee6f4; list-style:none; margin:0; padding:0;}
   #resp_nav li a {color:#292331; display:block; font-size:19px; font-weight:500; letter-spacing:-.025em; line-height:1.25; margin:0; padding:17px 28px 17px 0; position:relative; text-decoration:none;}
   #resp_nav li a>span {color:#9019ff; font-size:18px; position:absolute; right:0; top:18px;}
   #resp_nav li small {color:#817589; display:block; font-size:11px; font-weight:400; letter-spacing:0; line-height:1.5; margin-top:5px;}
   #resp_nav_cont a:focus-visible, #resp_nav_cont button:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}

   /* header nav checkout */
   #header_resp_check_cont {margin:24px 0 0; padding:0;}
   #header_resp_check {background:#9019ff; border-radius:28px; box-sizing:border-box; color:#fff; display:block; font-size:15px; font-weight:600; padding:13px 20px; text-align:center; text-decoration:none; width:100%;}

   /* header search button */
   #resp_nav_search {align-items:center; background:#faf7fd; border:1px solid #e8ddef; border-radius:12px; color:#665571; cursor:pointer; display:flex; font:inherit; font-size:13px; gap:12px; justify-content:space-between; margin:0 0 20px; min-height:50px; padding:12px 15px; width:100%;}
   #resp_nav_search svg {display:block; fill:none; flex-shrink:0; height:20px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; width:20px;}

   /* header search panel */
   #header_resp_search {background:#fff; box-sizing:border-box; height:100vh; height:100dvh; inset:0; overflow:auto; padding:70px 20px 24px; position:fixed; z-index:85;}
   #header_mobile_search_close {background:#f3eafa; border-radius:50%; cursor:pointer; font-size:26px; height:40px; line-height:40px; position:absolute; right:20px; text-align:center; top:18px; width:40px;}
   #header_mobile_search_bar {height:70px; margin:0 0 20px; position:relative; width:100%;}
   #header_mobile_search_label {color:#7d7285; font-size:13px; left:16px; pointer-events:none; position:absolute;}
   .header_search_mobile_label_no_value {top:18px;}
   .header_search_mobile_label_value {font-size:10px!important; top:5px;}
   #header_mobile_search_field {background:#fff; border:1px solid #e6dcec; border-radius:12px; box-sizing:border-box; font-size:16px; height:58px; padding:20px 16px 7px; width:100%;}

   /* header search products */
   #header_mobile_search_popular {display:block; width:100%;}
   #header_mobile_search_popular h3 {font-size:21px; margin:0 0 10px;}
   #header_mobile_search_popular_cont {display:grid; gap:12px; grid-template-columns:repeat(2,minmax(0,1fr)); padding:0; width:100%;}
   .header_mobile_search_popular {background:#f4f0fa; border-radius:14px; box-sizing:border-box; float:none; margin:0; min-width:0; padding:12px; text-align:center; width:auto;}
   .header_mobile_search_popular h4 {font-size:13px; line-height:1.35; margin:0 0 12px; padding:0;}
   .header_mobile_search_product_bottle {background-position:center!important; background-repeat:no-repeat!important; background-size:contain!important; height:135px;}
   .header_mobile_search_price {font-size:14px; padding:10px 0;}
   .header_mobile_search_shop a {background:#9019ff; border-radius:20px; color:#fff; display:block; padding:8px;}
}


/* ==================================================
   SEARCH
================================================== */

@media (max-width:1000px) {

   /* mobile search panel */
   #header_resp_search, #header_resp_search *, #header_resp_search *::before, #header_resp_search *::after {box-sizing:border-box;}
   #header_resp_search {background:#fff; color:#292331; font-family:"Inter",Arial,sans-serif; height:100vh; height:100dvh; inset:0; overflow-y:auto; overscroll-behavior:contain; padding:76px 20px 30px; position:fixed; z-index:85;}

   /* mobile search close */
   #header_mobile_search_close {appearance:none; background:#f3eafa; border:0; border-radius:50%; color:#715386; cursor:pointer; display:block; font-size:0; height:40px; margin:0; padding:0; position:absolute; right:20px; top:18px; width:40px;}
   #header_mobile_search_close::before, #header_mobile_search_close::after {background:currentColor; border-radius:2px; content:""; height:2px; left:50%; position:absolute; top:50%; width:18px;}
   #header_mobile_search_close::before {transform:translate(-50%,-50%) rotate(45deg);}
   #header_mobile_search_close::after {transform:translate(-50%,-50%) rotate(-45deg);}
   #header_mobile_search_close:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}

   /* mobile search field */
   #header_mobile_search_bar {height:60px; margin:0 0 26px; position:relative; width:100%;}
   #header_mobile_search_field {appearance:none; background:#fff; border:1px solid #dfd4e9; border-radius:16px; color:#292331; display:block; font:400 16px/1.4 "Inter",Arial,sans-serif; height:60px; margin:0; outline:none; padding:23px 48px 8px 16px; width:100%;}
   #header_mobile_search_field:focus {border-color:#9019ff; box-shadow:0 0 0 3px #9019ff15;}

   /* mobile search label */
   #header_mobile_search_label {color:#7d7285; left:16px; line-height:1.4; pointer-events:none; position:absolute; right:48px; z-index:1;}
   #header_mobile_search_label.header_search_mobile_label_no_value {font-size:16px; top:19px;}
   #header_mobile_search_label.header_search_mobile_label_value {font-size:10px!important; top:7px;}

   /* mobile search icon */
   #header_mobile_search_bar>svg {fill:none; height:22px; pointer-events:none; position:absolute; right:16px; stroke:#8d8493; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; top:19px; width:22px;}

   /* mobile search results */
   #header_mobile_search_popular {background:#f7f5f8; border-radius:20px; display:block; padding:18px 14px; width:100%;}
   #header_mobile_search_popular>h3 {color:#292331; font-size:22px; font-weight:650; line-height:1.25; margin:0 0 20px; padding:0;}
   #header_mobile_search_popular_cont {display:grid; gap:12px; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; padding:0; width:100%;}
   #header_mobile_search_no_results {color:#796c82; font-size:14px; line-height:1.6; padding:12px 0;}

   /* mobile search product cards */
   #header_resp_search .header_mobile_search_popular {background:var(--search-product-bg,#eeeaf7); border:1px solid #e4dbea; border-radius:16px; display:flex; flex-direction:column; float:none; margin:0; min-width:0; overflow:hidden; padding:0; text-align:left; width:auto;}
   #header_resp_search .header_mobile_search_popular h4 {color:var(--search-product-color,#594372); font-size:16px; font-weight:650; line-height:1.25; margin:0; min-height:76px; overflow-wrap:anywhere; padding:16px 12px 0;}
   #header_resp_search .header_mobile_search_popular h4 a {color:inherit; text-decoration:none;}

   /* mobile search product images */
   #header_resp_search .header_mobile_search_product_bottle {aspect-ratio:1; display:grid; height:auto; margin:0; padding:10px; place-items:center;}
   #header_resp_search .header_mobile_search_product_bottle img {display:block; height:100%; min-height:0; object-fit:contain; width:100%;}

   /* mobile search product prices */
   #header_resp_search .header_mobile_search_shop {align-items:flex-start; background:#fff; display:flex; flex-direction:column; gap:12px; margin-top:auto; padding:14px 12px;}
   #header_resp_search .header_mobile_search_price {color:#242333; display:block; font-size:16px; font-weight:700; line-height:1.3; white-space:nowrap;}

   /* mobile search product buttons */
   #header_resp_search .header_mobile_search_shop a {align-items:center; background:var(--search-product-color,#594372); border:0; border-radius:999px; color:#fff; display:inline-flex; font-size:13px; font-weight:650; gap:10px; justify-content:center; line-height:1.3; margin:0; min-height:38px; padding:9px 13px; text-decoration:none; transition:filter .2s ease; width:auto;}
   #header_resp_search .header_mobile_search_shop a:hover {filter:brightness(.92);}
   #header_resp_search .header_mobile_search_shop a:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}

   /* mobile search button arrows */
   #header_resp_search .header_mobile_search_shop a::after {background:currentColor; clip-path:polygon(0 40%,72% 40%,46% 12%,58% 0,100% 50%,58% 100%,46% 88%,72% 60%,0 60%); content:""; display:block; flex:0 0 17px; height:15px; transition:transform .22s ease; width:17px;}
   #header_resp_search .header_mobile_search_shop a:hover::after {transform:translateX(6px);}
}

@media (prefers-reduced-motion:reduce) {

   /* mobile search button animation */
   #header_resp_search .header_mobile_search_shop a, #header_resp_search .header_mobile_search_shop a::after {transition:none;}
}

@media (max-width:650px) {

   /* announcement bar */
   #header_usp_guarantee {display:none;}
   #header_usp_delivery {font-size:12px; padding:9px 0 9px 24px;}

   /* header layout */
   #header_mobile {gap:8px; height:72px; padding:10px 16px;}

   /* header logo */
   #header_mobile_logo img {width:125px;}

   /* header links */
   #header_mobile_icons {gap:4px;}
}

@media (max-width:360px) {

   /* header layout */
   #header_mobile {gap:5px; padding-inline:16px;}

   /* header logo */
   #header_mobile_logo img {width:110px;}

   /* header links */
   #mobile_account {width:30px;}

   /* header cart */
   #resp_header_cart {min-width:48px; padding:8px 9px;}
}


/* ==================================================
   HOMEPAGE
================================================== */

/* retain desktop hero wording */
.home_hero_eyebrow, .home_hero_cta_mobile, .home_hero_out_of {display:none;}
.home_hero_cta_desktop {font:inherit;}
.home_more_mobile_text {display:none;}

@media (max-width:1200px) {

   /* homepage products scroll */
   #home_products_cont #home_products {box-sizing:border-box; display:grid; gap:16px; grid-auto-columns:min(280px,85%); grid-auto-flow:column; grid-template-columns:none; min-width:0; overflow-x:auto; overflow-y:hidden; padding:0 0 14px; scroll-snap-type:x proximity; scrollbar-color:#c6b5d7 #f5f1f8; scrollbar-width:thin; width:100%;}
   #home_products_cont #home_products > .categories_product {scroll-snap-align:start;}
}

@media (max-width:1000px) {

   /* page layout */
   html {scroll-padding-top:90px;}
   body {min-width:0;}
   #site_cont {max-width:100%; width:100%;}
   .home_standard_heading, #home_bar_cont, .home_ritual_heading, #home_products_cont, .home_benefits, .home_pure, .home_free, .home_lab, .home_guarantee, .home_reviews, .home_videos, .home_more, .home_quality_proof, .home_compare, .home_time, .home_faq, .home_featured, #home_blog_cont {box-sizing:border-box; margin-left:auto; margin-right:auto; max-width:100%; padding-left:24px; padding-right:24px; width:100%;}
   .home_standard_heading, .home_ritual_heading, .home_benefits_heading, .home_lab_top, .home_guarantee_banner, .home_reviews_heading, .home_videos_heading, .home_more_story, .home_quality_heading, .home_faq, .home_blog_heading {gap:24px;}

   /* hero */
   #home_hero {border-radius:22px; box-shadow:none; margin:0 auto; width:calc(100% - 32px);}

   /* coloured section panels */
   .home_reviews, .home_videos, .home_featured {padding:36px 24px; width:calc(100% - 48px);}

   /* section headings */
   .home_standard_heading h2, .home_ritual_heading h2, .home_benefits_heading h2, .home_pure_copy h2, .home_lab h2, .home_guarantee h2, .home_reviews h2, .home_videos h2, .home_more h2, .home_quality_proof h2, .home_compare #home_compare_title, .home_time_title, .home_faq_title, .home_featured h2, .home_blog_heading h2 {font-size:clamp(30px,4vw,40px);}
   .home_ritual_heading, .home_benefits_heading, .home_reviews_heading, .home_videos_heading, .home_quality_heading, .home_blog_heading {flex-wrap:wrap; gap:20px;}
   .home_ritual_intro {flex-shrink:1; min-width:0;}
   .home_benefits_intro {flex:1 1 280px; min-width:0;}

   /* longevity standard */
   #home_bar {gap:20px; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; width:100%;}

   /* product cards */
   #home_products .categories_product, #home_products .home_products {box-sizing:border-box; display:flex; flex-direction:column; float:none; height:auto; margin:0; min-width:0; width:auto;}

   /* benefits */
   .home_benefits_grid {gap:16px; grid-template-columns:repeat(2,minmax(0,1fr));}
   .home_benefit_copy {padding:20px;}
   .home_benefit_copy h3 {font-size:22px;}

   /* new zealand and purity */
   .home_pure {gap:24px; grid-template-columns:repeat(2,minmax(0,1fr));}

   /* lab testing */
   .home_lab_top {grid-template-columns:repeat(2,minmax(0,1fr));}
   .home_lab_certificate {height:auto; width:220px;}
   .home_lab_checks {gap:16px;}
   .home_lab_checks li {flex-wrap:wrap; padding:20px;}
   .home_lab_checks li > div:not(.home_lab_icon) {flex:1 1 140px;}

   /* free-from icons */
   .home_free li {flex-basis:calc((100% - 66px)/4);}

   /* guarantee */
   .home_guarantee_banner {padding:28px 24px; width:100%;}
   .home_guarantee_number {font-size:96px;}
   .home_guarantee_benefits {gap:15px; padding-left:0; padding-right:0;}
   .home_guarantee_benefits article {flex-wrap:wrap;}
   .home_guarantee_benefits article > div {flex:1 1 160px;}

   /* reviews */
   .home_reviews_grid {gap:16px;}
   .home_reviews_card {padding:18px;}
   .home_reviews blockquote {font-size:16px;}

   /* videos */
   .home_videos_list {display:flex; gap:16px; overflow-x:auto; padding:0 0 16px; scroll-snap-type:x mandatory;}
   .home_videos_card {flex:0 0 43%; margin:0; min-width:0; scroll-snap-align:start;}
   .home_videos_media {aspect-ratio:9/14; height:auto;}
   .home_videos_media video {height:100%; object-fit:cover; width:100%;}

   /* bigger bottles and better value */
   .home_more_story {grid-template-columns:1fr; padding:28px;}

   /* quality */
   .home_quality_grid {gap:15px; grid-template-columns:repeat(2,minmax(0,1fr));}
   .home_quality_standard, .home_quality_guarantee {padding:24px;}
   .home_quality_standard strong {font-size:25px;}
   .home_quality_guarantee > strong {font-size:64px;}

   /* comparison table */
   .home_compare_scroll {-webkit-overflow-scrolling:touch; max-width:100%; overflow-x:auto;}
   .home_compare table {min-width:620px;}

   /* daily routine */
   .home_time_copy {padding:28px; width:60%;}

   /* featured logos */
   .home_featured_logos {grid-template-columns:repeat(3,minmax(0,1fr));}

   /* blog */
   .home_blog_panel {padding:24px;}
   .home_blog_grid {gap:24px;}
   .home_blog_list .home_blog_card {gap:12px; grid-template-columns:30% minmax(0,1fr);}
   .home_blog_list h3 {font-size:18px;}
}

@media (max-width:650px) {

   /* page spacing */
   .home_standard_heading, #home_bar_cont, .home_ritual_heading, #home_products_cont, .home_benefits, .home_pure, .home_free, .home_lab, .home_guarantee, .home_reviews, .home_videos, .home_more, .home_quality_proof, .home_compare, .home_time, .home_faq, .home_featured, #home_blog_cont {margin:0 auto; max-width:100%; padding:36px 0; width:calc(100% - 40px);}

   /* section headings */
   .home_standard_heading h2, .home_ritual_heading h2, .home_benefits h2, .home_pure h2, .home_free h2, .home_lab h2, .home_guarantee h2, .home_reviews h2, .home_videos h2, .home_more h2, .home_quality_proof h2, .home_time h2, .home_faq h2, .home_featured h2, #home_blog h2 {font-size:30px; letter-spacing:-.04em; line-height:1.16; margin:0 0 18px; padding:0;}
   .home_standard_eyebrow, .home_ritual_eyebrow, .home_benefits_eyebrow, .home_pure_eyebrow, .lab_top_iconeyebrow, .home_guarantee_eyebrow, .home_reviews_eyebrow, .home_videos_eyebrow, .home_more_eyebrow, .home_quality_eyebrow, .home_time_eyebrow, .home_faq_eyebrow, .home_featured_eyebrow {font-size:10px; letter-spacing:.12em; line-height:1.5; margin:0 0 14px;}

   /* hero background */
   #home_hero {aspect-ratio:408/740; background:#e2f0f7; border-radius:17px; container-type:inline-size; height:auto; margin:0 auto 28px; overflow:hidden; width:calc(100% - 28px);}
   #home_hero .home_hero_scene {background:#e2f0f7; inset:0; z-index:-1;}
   #home_hero .home_hero_coast {bottom:0; top:auto; left:0; width:115%; height:auto; max-width:none; aspect-ratio:800/826; object-fit:contain; transform:none!important; mask-image:linear-gradient(to bottom,transparent,#000 5%); -webkit-mask-image:linear-gradient(to bottom,transparent,#000 5%);}
   #home_hero .home_hero_scene::after {background:none;}

   /* hero text */
   #home_hero .home_hero_copy {padding:10cqw 6cqw 0; position:static; width:100%;}
   #home_hero .home_hero_eyebrow {display:flex; align-items:center; gap:3cqw; color:#7008bd; font-size:3cqw; font-weight:650; letter-spacing:.23cqw; line-height:1.3; margin:0 0 4cqw; white-space:nowrap;}
   #home_hero .home_hero_eyebrow::before {content:""; width:14.7cqw; height:2px; background:#9019ff; flex:none;}
   #home_hero h1 {color:#050505; font-size:12.1cqw; font-weight:650; letter-spacing:-.45cqw; line-height:1.05; margin:0 0 5.5cqw; padding:0;}
   #home_hero h1>span {color:#4b087e;}
   #home_hero .home_hero_copy>p {color:#131b20; font-size:3.85cqw; font-weight:400; letter-spacing:0; line-height:1.3; margin:0 0 4cqw; padding:0;}
   #home_hero .home_hero_copy>p br {display:none;}

   /* hero button */
   #home_hero .home_hero_cta {background:#9019ff; border-radius:30cqw; box-sizing:border-box; color:#fff; display:flex; font-size:4.1cqw; font-weight:650; gap:3cqw; line-height:1.25; margin:0; min-height:11.8cqw; padding:2.4cqw 3cqw; width:100%;}
   #home_hero .home_hero_cta_desktop {display:none;}
   #home_hero .home_hero_cta_mobile {display:inline; color:inherit; font:inherit; width:auto; height:auto; transform:none;}

   /* hero new zealand badge */
   #home_hero .home_hero_nz {background:#fff; border-radius:20cqw; bottom:auto; color:#000; gap:2.4cqw; left:6cqw; padding:1.8cqw 3.5cqw; right:auto; top:79.5cqw;}
   #home_hero .home_hero_nz img {height:7cqw; width:7cqw;}
   #home_hero .home_hero_nz small {font-size:2.45cqw; font-weight:400; line-height:1.3;}
   #home_hero .home_hero_nz strong {color:#000; display:block; font-size:3.3cqw; font-weight:700; letter-spacing:0; line-height:1.2;}

   /* hero reviews */
   #home_hero .home_hero_rating {background:#fff; border-radius:20cqw; bottom:5.8cqw; gap:1.7cqw; left:6cqw; max-width:88cqw; padding:1.7cqw 3cqw; right:auto; top:auto;}
   #home_hero .home_hero_stars {font-size:4.8cqw; letter-spacing:.15cqw; transform:none;}
   #home_hero .home_hero_score {font-size:3.5cqw; font-weight:750;}
   #home_hero .home_hero_out_of {display:inline;}
   #home_hero .home_hero_customers {border-left:1px solid #999; font-size:2.4cqw; gap:.25cqw; line-height:1.1; margin-left:.5cqw; padding-left:2.6cqw;}
   #home_hero .home_hero_customers strong {font-size:2.8cqw; font-weight:700; color:#0bb25b;}

   /* longevity standard heading */
   .home_standard_heading {padding-bottom:15px; text-align:center;}
   .home_standard_heading h2 {font-size:25px;}
   .home_standard_heading h2 em {display:block;}

   /* homepage USPs */
   #home_bar_cont {box-sizing:border-box; padding:16px 0 36px;}
   #home_bar {display:grid; gap:28px 16px; grid-template-columns:repeat(2,minmax(0,1fr)); list-style:none; margin:0; padding:0; width:100%;}
   #home_bar .home_bar_list {align-items:center; box-sizing:border-box; display:flex; flex-direction:column; float:none; margin:0; min-width:0; padding:0 4px; text-align:center; width:auto;}

   /* homepage USP icons */
   #home_bar .home_bar_icon {border-radius:20px; display:grid; flex-shrink:0; height:60px; margin:0 auto 14px; place-items:center; width:60px;}
   #home_bar .home_bar_icon img {display:block; height:24px; margin:0; max-width:none; object-fit:contain; width:24px;}

   /* homepage USP text */
   #home_bar h3 {font-size:14px; font-weight:650; letter-spacing:-.035em; line-height:1.3; margin:0 0 5px; padding:0;}
   #home_bar p {font-size:12px; letter-spacing:normal; line-height:1.5; margin:0; padding:0;}

   /* homepage USP dividers */
   #home_bar .home_bar_list::before, #home_bar .home_bar_list::after {content:none;}

   /* products heading */
   .home_ritual_heading {display:block; padding-bottom:22px;}
   .home_ritual_intro {margin-top:17px; max-width:none;}
   .home_ritual_intro p {font-size:13px; line-height:1.65; margin:0 0 15px;}
   .home_ritual_link {font-size:12px;}

   /* products layout */
   #home_products_cont {overflow:visible; padding:0 0 30px;}
   #home_products {gap:12px;}
   #home_products .categories_product {background:var(--product-bg,#eeeaf7); border-radius:14px; overflow:hidden; padding:0;}
   #home_products .categories_product h3 {box-sizing:border-box; flex:0 0 auto; font-size:16px; line-height:1.25; margin:0; min-height:76px; padding:14px 12px 2px; text-align:left; white-space:normal;}
   #home_products .categories_product .clr {display:none;}

   /* product bottles */
   #home_products .categories_product_bottle {aspect-ratio:1; background-position:center!important; background-repeat:no-repeat; background-size:calc(100% - 24px) auto!important; flex:0 0 auto; height:auto; margin:0; width:100%;}

   /* product prices and buttons */
   #home_products .categories_product_price {align-items:center; background:#fff; border:0; border-radius:0; display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; margin-top:auto; padding:12px;}
   #home_products .categories_product_price_cont, #home_products .categories_product_shop {float:none; padding:0; width:auto;}
   #home_products .categories_product_price_from {font-size:8px; line-height:1.3; margin:0 0 3px;}
   #home_products .categories_product_price_dollar {font-size:17px; font-weight:650; line-height:1.2;}
   #home_products .categories_product_shop a {align-items:center; background:var(--product-color,#594273); border-radius:22px; color:#fff; display:inline-flex; font-size:12px; gap:8px; justify-content:center; min-height:38px; min-width:0; padding:8px 12px; text-decoration:none;}

   /* alternate product markup */
   #home_products .home_products_link {display:block; padding:14px;}
   #home_products .home_products h3 {font-size:17px; line-height:1.2;}
   #home_products .home_products_image {height:165px;}
   #home_products .home_products_image img {height:100%; object-fit:contain; width:100%;}
   #home_products .home_products_footer {flex-wrap:wrap; gap:8px; padding:13px;}

   /* benefits heading */
   .home_benefits_heading {display:block; margin-bottom:24px;}
   .home_benefits_intro {margin-top:18px; max-width:none; width:auto;}
   .home_benefits_intro p {font-size:13px; line-height:1.65;}

   /* benefits cards */
   .home_benefits_grid {gap:14px; grid-template-columns:repeat(2,minmax(0,1fr));}
   .home_benefit_card {border-radius:16px; min-width:0; overflow:hidden;}
   .home_benefit_photo {aspect-ratio:4/3; height:auto; width:100%;}
   .home_benefit_photo img {height:100%; object-fit:cover; width:100%;}
   .home_benefit_copy {padding:16px 12px;}
   .home_benefit_copy h3 {font-size:18px; line-height:1.25; margin-bottom:9px; overflow-wrap:break-word;}
   .home_benefit_copy p {font-size:12px; line-height:1.6;}

   /* new zealand image */
   .home_pure {display:block;}
   .home_pure_image {border-radius:18px; height:250px; margin-bottom:25px; min-height:0; overflow:hidden; width:100%;}
   .home_pure_landscape {height:calc(100% + 104px); object-fit:cover; top:-52px; width:100%;}
   .home_pure_label {bottom:16px; font-size:9px; left:16px; padding:9px 12px;}
   .home_pure_label img {height:22px; width:24px;}

   /* purity text */
   .home_pure_copy {padding:0; width:auto;}
   .home_pure_intro, .home_pure_standard p {font-size:13px; line-height:1.75;}
   .home_pure_standard {margin-top:20px; padding-top:18px;}
   .home_pure_standard h3 {font-size:17px; margin-bottom:8px;}
   .home_pure_link {font-size:12px; margin-top:20px;}

   /* free-from icons */
   .home_free {padding-bottom:16px; padding-top:16px;}
   .home_free>div {border-radius:18px; padding:10.67px 0;}
   .home_free h2 {color:#252333; font-size:clamp(28px,7.5vw,36px); font-weight:600; letter-spacing:-.04em; line-height:1.15; margin:0 0 32px; text-align:center;}
   .home_free ul {display:flex; flex-wrap:wrap; gap:28px 10px; justify-content:center; margin:0; padding:0;}
   .home_free li {color:#596762; flex:0 0 calc((100% - 30px)/4); font-size:12px; font-weight:500; gap:14px; line-height:1.35; padding:0; width:auto;}
   .home_free li img {height:38px; margin:0 auto; width:38px;}
   .home_free li span {color:inherit; font:inherit; max-width:100%;}

   /* lab testing introduction */
   .home_lab {background:transparent; border-radius:0; padding:36px 0;}
   .home_lab_top {display:block;}
   .home_lab_copy {font-size:13px; line-height:1.75; margin-bottom:20px;}
   .home_lab_button {font-size:13px; min-height:46px; padding:13px 20px;}

   /* lab testing certificate */
   .home_lab_evidence {margin:30px auto 20px; max-width:230px;}
   .home_lab_certificate {height:auto; width:100%;}
   .home_lab_document>span {font-size:10px;}
   .home_lab_caption {font-size:10px;}

   /* lab testing checks */
   .home_lab_checks {display:grid; gap:12px; grid-template-columns:minmax(0,1fr); margin:25px 0 0; padding:0;}
   .home_lab_checks li {align-items:flex-start; border-radius:22px; display:flex; gap:16px; padding:22px;}
   .home_lab_checks h3 {font-size:16px; margin:0 0 5px;}
   .home_lab_checks p {font-size:12px; line-height:1.6; margin:7px 0 0;}

   /* guarantee banner */
   .home_guarantee_banner {border-radius:20px; display:flex; flex-direction:column; gap:20px; padding:28px 20px; text-align:center;}
   .home_guarantee_number {font-size:68px; line-height:1;}
   .home_guarantee_number span {display:block; font-size:12px; letter-spacing:.12em;}
   .home_guarantee_description {font-size:13px; line-height:1.75;}
   .home_guarantee_shield {display:none;}
   .home_guarantee_link {font-size:12px;}

   /* guarantee benefits */
   .home_guarantee_benefits {display:grid; gap:24px; grid-template-columns:1fr; padding:26px 0 0;}
   .home_guarantee_benefits article {display:flex; gap:14px; padding:0 0 22px;}
   .home_guarantee_benefits svg {flex:none; height:25px; width:25px;}
   .home_guarantee_benefits h3 {font-size:17px; margin-bottom:7px;}
   .home_guarantee_benefits p {font-size:13px; line-height:1.7;}

   /* reviews */
   .home_reviews {border-radius:24px; margin:36px auto; padding:28px 20px;}
   .home_reviews_heading {display:block; margin:0 0 24px;}
   .home_reviews_eyebrow {line-height:1.6; margin:0 0 12px;}
   .home_reviews h2 {font-size:30px; line-height:1.15; margin:0;}
   .home_reviews_next {font-size:13px; margin-top:14px; min-height:42px;}
   .home_reviews_grid {-webkit-overflow-scrolling:touch; align-items:stretch; display:flex; gap:14px; margin:0; overflow-x:auto; padding:0 0 10px; scroll-padding-inline:0; scroll-snap-type:x mandatory;}
   .home_reviews_card {border-radius:18px; box-sizing:border-box; flex:0 0 calc(100% - 24px); margin:0; min-width:0; padding:22px; scroll-snap-align:start;}
   .home_reviews_stars {font-size:16px; letter-spacing:2px; line-height:1.4;}
   .home_reviews_card blockquote {font-size:16px; line-height:1.6; margin:18px 0 24px;}
   .home_reviews_card figcaption {font-size:13px; gap:10px; line-height:1.4; margin-top:auto;}
   .home_reviews_avatar {flex:0 0 38px; height:38px; width:38px;}

   /* videos */
   .home_videos {border-radius:24px; margin:36px auto; padding:28px 20px;}
   .home_videos_heading {display:block; margin:0 0 24px;}
   .home_videos_eyebrow {line-height:1.6; margin:0 0 14px;}
   .home_videos h2 {font-size:30px; line-height:1.15; margin:0;}
   .home_videos_intro {font-size:14px; line-height:1.6; margin:16px 0 0;}
   .home_videos_list {-webkit-overflow-scrolling:touch; align-items:stretch; display:flex; gap:14px; margin:0; overflow-x:auto; padding:5px 0 12px; scroll-snap-type:x mandatory;}
   .home_videos_card {border-radius:20px; flex:0 0 86%; margin:0; max-width:300px; overflow:hidden; padding:8px; scroll-snap-align:start;}
   .home_videos_media {aspect-ratio:9/14; border-radius:14px; height:auto;}
   .home_videos_media video {display:block; height:100%; object-fit:cover; width:100%;}
   .home_videos_play {height:56px; padding:13px; width:56px;}
   .home_videos_play svg {height:23px; width:23px;}
   .home_videos_card figcaption {font-size:14px; line-height:1.4; padding:14px 10px 10px;}

   /* better value introduction */
   .home_more {padding:24px 0 36px;}
   .home_more_story {align-items:stretch; background:radial-gradient(ellipse at 100% 0%,#e7dcff 0%,transparent 48%),linear-gradient(145deg,#f8fbff,#edf4ff); border:1px solid #e0e5f6; border-radius:24px; display:flex; flex-direction:column; gap:0; padding:28px 20px;}
   .home_more_copy {display:contents;}
   .home_more_copy>.home_more_eyebrow {color:#7830bf; font-size:10px; font-weight:700; letter-spacing:.1em; line-height:1.6; margin:0 0 14px; order:0;}
   .home_more h2 {color:#253b60; font-size:clamp(26px,7.5vw,34px); font-weight:600; letter-spacing:-.045em; line-height:1.12; margin:0 0 16px; order:1;}
   .home_more h2 em {color:#8019ef;}
   .home_more_copy>p:not(.home_more_eyebrow) {color:#686779; display:none; font-size:14px; line-height:1.65; margin:0 0 20px; max-width:none; order:4;}
   .home_more_copy>p.home_more_lead {color:#3d5273; font-size:15px; font-weight:500; line-height:1.5; margin:0 0 22px; order:2;}
   .home_more_button {background:linear-gradient(110deg,#971bff,#7118e8); box-shadow:0 6px 16px #8019ef20; font-size:14px; gap:16px; margin:0 0 22px; min-height:48px; order:5; padding:13px 16px; white-space:normal; width:100%;}

   /* better value options */
   .home_more_reasons {gap:10px; margin:4px 0 22px; order:2;}
   .home_more_desktop_text {display:none;}
   .home_more_mobile_text {display:inline;}
   .home_more_reasons article {background:#ffffffb3; border:1px solid #e4def0; border-radius:14px; column-gap:10px; grid-template-columns:28px minmax(0,1fr); padding:14px 12px;}
   .home_more_reasons article:has([aria-pressed="true"]) {background:#eee4fc; border:1px solid #d8c2f3; border-radius:14px; box-shadow:inset 3px 0 #8518ed;}
   .home_more_reasons h3 {font-size:14px; line-height:1.4;}
   .home_more_trigger {font-size:14px; line-height:1.4; min-height:0; text-align:left;}
   .home_more_reasons p {font-size:12px; line-height:1.55;}
   .home_more_icon, .home_more_icon svg {height:26px; width:26px;}
   .home_more_note {color:#7c7587; font-size:10px; line-height:1.6; margin:16px 0 0; order:7;}

   /* better value display */
   .home_more_visual {background:radial-gradient(ellipse at 50% 35%,#fff 0%,#f2e9ff 42%,#e2edff 100%); border:1px solid #e2d9f4; border-radius:20px; box-shadow:0 10px 24px #4b267b0a; margin:0 0 24px; min-height:0; order:3; padding:22px 14px; width:100%;}
   .home_more_scene {padding:0;}
   .home_more_scene[hidden] {display:none!important;}
   .home_more_scene>p {font-size:12px; line-height:1.6; min-height:0;}
   .home_more_saving strong {color:#8019ef; font-size:64px; line-height:1;}
   .home_more_saving>span {font-size:12px;}

   /* better value bottles */
   .home_more_bottles {gap:0; height:180px; margin:12px 0; padding:8px 0;}
   .home_more_bottles img {height:100%; max-width:34%; object-fit:contain;}

   /* better value comparison */
   .home_more_comparison {gap:8px; grid-template-columns:minmax(0,1fr) 20px minmax(0,1.2fr); padding:15px 0;}
   .home_more_comparison strong {font-size:clamp(14px,8cqw,26px); white-space:nowrap;}
   .home_more_comparison div>span, .home_more_comparison small {font-size:10px; line-height:1.4;}
   .home_more_comparison .home_more_dash {font-size:inherit;}

   /* better value pricing */
   .home_more_cost {gap:12px;}
   .home_more_cost>img {max-height:250px; object-fit:contain; width:40%;}
   .home_more_prices {gap:12px; width:60%;}
   .home_more_price {padding:14px 10px;}
   .home_more_price strong {font-size:25px;}
   .home_more_price span, .home_more_price small, .home_more_price b {font-size:10px;}

   /* better value quality */
   .home_more_quality {gap:12px;}
   .home_more_bottle {height:230px; object-fit:contain; width:45%;}
   .home_more_card {padding:18px 10px; width:48%;}
   .home_more_card strong {font-size:30px;}
   .home_more_card span {font-size:11px;}

   /* quality cards */
   .home_quality_heading {display:block;}
   .home_quality_button {font-size:13px; margin:6px 0 20px;}
   .home_quality_grid {gap:14px; grid-template-columns:minmax(0,1fr); grid-template-rows:auto;}
   .home_quality_grid>div {grid-column:auto; grid-row:auto; min-width:0;}
   .home_quality_origin {height:280px; min-height:0;}
   .home_quality_standard, .home_quality_guarantee {min-height:150px; padding:25px;}
   .home_quality_standard strong {font-size:23px;}
   .home_quality_guarantee>strong {font-size:72px;}

   /* comparison table */
   .home_compare {padding-top:0;}
   .home_compare table {font-size:12px; min-width:640px; table-layout:fixed; width:100%;}
   .home_compare_feature_col {width:180px;}
   .home_compare_ours_col {width:230px;}

   /* comparison heading */
   .home_compare_heading {margin:0 0 24px; padding:0;}
   .home_compare .home_compare_eyebrow {font-size:10px; margin:0 0 10px;}
   .home_compare #home_compare_title {font-size:clamp(28px,7.8vw,38px); line-height:1.15;}
   .home_compare th, .home_compare td {font-size:12px; line-height:1.5; padding:18px;}
   .home_compare_feature {gap:10px;}
   .home_compare_logo {height:auto; max-width:90px;}

   /* daily routine */
   .home_time_panel {align-items:stretch; background:#fffdf6; border-radius:24px; display:flex; flex-direction:column; height:auto; min-height:0; overflow:hidden; padding:0;}
   .home_time_panel::before {aspect-ratio:5/4; background:url(../images/home/time-bg.jpg) left center / cover no-repeat; content:""; display:block; flex:none; width:100%;}
   .home_time_copy {margin:0; max-width:none; padding:28px 24px; width:100%;}
   .home_time_eyebrow {margin:0 0 20px;}
   .home_time h2 {font-size:clamp(26px,7.5vw,34px); line-height:1.12; margin:0 0 22px;}
   .home_time_description {font-size:15px; line-height:1.6; margin:0 0 24px;}
   .home_time_button {display:flex; font-size:14px; gap:14px; justify-content:space-between; min-height:50px; padding:14px 20px; width:100%;}

   /* faqs */
   .home_faq {display:block;}
   .home_faq_intro {margin-bottom:24px;}
   .home_faq_link {font-size:12px;}
   .home_faq_item summary {font-size:14px; line-height:1.5; min-height:60px; padding:20px 48px 20px 20px;}
   .home_faq_item>summary::after {right:20px;}
   .home_faq_item p {font-size:13px; line-height:1.8; padding:0 20px 20px;}

   /* featured logos */
   .home_featured {padding:32px 20px; text-align:center;}
   .home_featured_logos {display:grid; gap:14px; grid-template-columns:repeat(3,minmax(0,1fr));}
   .home_featured_logo {border-radius:16px; height:84px; padding:14px 10px;}
   .home_featured_logo img {display:block; height:26px; margin:auto; max-width:100px; object-fit:contain; width:100%;}

   /* blog layout */
   #home_blog {padding:0; width:100%;}
   .home_blog_panel {border-radius:20px; padding:26px 20px;}
   .home_blog_heading {display:block; margin-bottom:23px;}
   .home_blog_all {font-size:12px;}
   .home_blog_grid, .home_blog_list {display:grid; gap:22px; grid-template-columns:minmax(0,1fr); min-width:0;}
   .home_blog_card, .home_blog_list .home_blog_card {display:block; min-width:0;}

   /* blog images */
   .home_blog_image {border-radius:12px; height:190px; overflow:hidden; width:100%;}
   .home_blog_image img {height:100%; object-fit:cover; width:100%;}

   /* blog text */
   .home_blog_copy, .home_blog_list .home_blog_copy {padding:16px 0 0;}
   .home_blog_copy h3 {font-size:21px; line-height:1.25; margin-bottom:10px;}
   .home_blog_copy p {font-size:12px; line-height:1.75;}
   .home_blog_read {font-size:11px; margin-top:14px;}
}

@media (max-width:420px) {

   /* featured logos */
   .home_featured_logos {grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:380px) {

   /* homepage benefit cards */
   .home_benefits_grid {gap:10px;}
   .home_benefit_copy {padding:12px 10px;}
   .home_benefit_copy h3 {font-size:16px; margin-bottom:8px;}
   .home_benefit_copy p {font-size:11px; line-height:1.6;}
}

@media (max-width:360px) {

   /* products */
   #home_products .categories_product h3 {font-size:15px;}
   #home_products .categories_product_price_dollar {font-size:15px;}

   /* free-from icons */
   .home_free li {flex-basis:calc((100% - 10px)/2);}

   /* better value comparison */
   .home_more_comparison strong {font-size:clamp(14px,8cqw,26px);}
}


/* ==================================================
   PRODUCTS
================================================== */

@media (min-width:801px) {

   /* sticky image */
   #product_intro #product_head_image.product_gallery_sticky {align-self:start; position:sticky; top:var(--product-gallery-top,100px);}
}


@media (max-width:1400px) {

   /* product gallery */
   #product_intro #product_image_cont {grid-template-columns:minmax(0,1fr);}
   #product_intro #product_image {grid-column:1;}

   /* centred thumbnails */
   #product_intro #product_thumbs_cont {flex-direction:row; flex-wrap:wrap; grid-column:1; grid-row:2; justify-content:center;}
   #product_intro .product_thumbs {flex:0 0 78px; width:78px;}

   /* centre test report beneath gallery */
   #product_intro .products_third_desktop {margin-left:0; width:100%;}
   
   /* review matches main image width */
   #product_intro #products_top_review_cont {margin-left:0; width:100%;}
}

@media (min-width:1001px) and (max-width:1300px) {

   /* product facts */
   #product_intro .product_data_label {font-size:12px; gap:6px;}
   #product_intro .product_data_label::before {flex-basis:18px; height:18px; width:18px;}
   #product_intro .product_data_desc {font-size:clamp(16px,1.4vw,18px);}
   #product_intro .product_data_number {font-size:inherit;}
   #product_intro .product_data_unit {font-size:13px;}
}

@media (min-width:801px) and (max-width:1000px) {

   /* product columns */
   #product_intro {column-gap:24px; grid-template-columns:repeat(2,minmax(0,1fr));}

   /* heading */
   #product_intro #product_action h1 {font-size:clamp(24px,2.8vw,28px); margin-bottom:14px;}

   /* customer rating */
   #product_intro #product_stars_cont {gap:6px; margin-bottom:16px;}
   #product_intro #product_stars li {background-size:16px 16px; height:18px; width:16px;}
   #product_intro #product_stars_avg, #product_intro #product_stars_text {font-size:12px;}

   /* description */
   #product_intro #product_short_desc {font-size:14px; line-height:1.5; margin-bottom:16px;}

   /* bottle options */
   #product_intro #product_options_cont_one {gap:8px;}
   #product_intro #product_options_cont .product_option {min-height:112px; padding:22px 6px 12px;}
   #product_intro #product_options_cont .product_option_label_cont {top:-12px;}
   #product_intro .product_option_label {font-size:12px; padding:6px 8px; white-space:nowrap;}
   #product_intro .product_option_caps {font-size:12px;}
   #product_intro .product_option_price {font-size:clamp(17px,2vw,20px);}
   #product_intro .product_option_saving span {font-size:12px; padding:3px 8px;}

   /* add to cart */
   #product_intro #product_add_cart {font-size:16px; gap:8px; min-height:50px; padding:12px 16px;}
   #product_intro #cart_icon {height:20px; width:20px;}

   /* stock and delivery */
   #product_intro #product_delivery {background-position:12px center; background-size:18px; font-size:13px; padding:12px 12px 12px 40px;}

   /* delivery and guarantee tiles */
   #product_intro #product_benefits_usp_delivery, #product_intro #product_benefits_usp_guarantee, #product_intro #product_benefits_usp_nz, #product_intro #product_benefits_usp_tracked {font-size:12px; min-height:54px; padding:12px 10px 12px 34px;}
   #product_intro #product_benefits_usp_delivery::before, #product_intro #product_benefits_usp_guarantee::before, #product_intro #product_benefits_usp_nz::before, #product_intro #product_benefits_usp_tracked::before {height:18px; left:10px; width:18px;}

   /* product benefits */
   #product_intro .product_benefit {gap:8px; min-width:0;}
   #product_intro .product_benefit_image {flex-basis:32px; height:32px; padding:7px; width:32px;}
   #product_intro .product_benefit_image img {height:18px; width:18px;}
   #product_intro .product_benefit_description {font-size:12px; min-width:0;}

   /* product facts */
   #product_intro #product_data {gap:8px;}
   #product_intro #product_data .product_data_col {min-height:92px; min-width:0; padding:14px 10px;}
   #product_intro .product_data_label {font-size:11px; gap:5px; min-height:18px; padding-bottom:12px;}
   #product_intro .product_data_label::before {flex-basis:14px; height:14px; width:14px;}
   #product_intro .product_data_desc {font-size:14px; gap:3px; line-height:1.4;}
   #product_intro .product_data_number {font-size:inherit;}
   #product_intro .product_data_unit {font-size:12px;}

   /* ingredients */
   #product_intro #product_ingredients {gap:12px 8px; padding:16px;}
   #product_intro .product_ingredients_label {font-size:14px; gap:6px;}
   #product_intro .product_ingredients_label::before, #product_intro #product_purity::before {flex-basis:18px; height:18px; width:18px;}
   #product_intro .product_ingredients_desc {font-size:13px; line-height:1.5;}

   /* purity */
   #product_intro #product_purity {font-size:12px; gap:6px; padding:10px;}
   #product_intro .product_purity_desc {gap:6px; min-width:0;}

   /* featured review */
   #product_intro #products_top_review {font-size:13px; padding:16px;}
   
   /* equal ratings and reviews columns */
   #product_ratings_cont, #product_reviews {width:50%;}
}

@media (max-width:800px) {

   /* hide featured review and short description */
   #product_intro #products_top_review_cont, #product_intro #product_short_desc {display:none;}

   /* product layout */
   #product_intro {gap:28px; grid-template-columns:minmax(0,1fr); margin-top:16px; padding-bottom:24px; width:calc(100% - 40px);}
   #product_intro #product_head_image {position:static;}

   /* heading above image */
   #product_intro #product_heading_rating_mobile {display:block;}
   #product_intro #product_heading_rating_cont {display:none;}
   #product_intro #product_heading_rating_mobile h1 {font-size:clamp(28px,4.5vw,36px); margin-bottom:14px;}
   #product_intro #product_heading_rating_mobile #product_stars_cont {margin-bottom:24px;}

   /* gallery */
   #product_intro #product_image_cont {gap:16px;}
   #product_intro #product_image {border-radius:20px;}
   #product_intro #product_thumbs_cont {gap:12px;}
   #product_intro .product_thumbs {flex-basis:70px; width:70px;}

   /* bottle options */
   #product_intro #product_options_cont_one {gap:clamp(4px,1.5vw,10px);}
   #product_intro #product_options_cont .product_option {min-height:clamp(100px,calc(84px + 5vw),124px); padding:clamp(22px,4.8vw,26px) clamp(3px,1.2vw,8px) clamp(12px,2.5vw,14px);}
   #product_intro .product_option_label {font-size:clamp(10px,2.6vw,14px); padding:6px clamp(6px,1.4vw,8px); white-space:nowrap;}
   #product_intro .product_option_caps {font-size:clamp(11px,2.8vw,14px);}
   #product_intro .product_option_price {font-size:clamp(14px,4.3vw,28px);}
   #product_intro .product_option_saving span {font-size:clamp(10px,2.6vw,14px); padding:3px clamp(6px,1.5vw,10px);}

   /* add to cart */
   #product_intro #product_add_cart {font-size:clamp(16px,2.25vw,18px); gap:clamp(8px,1.5vw,12px); min-height:clamp(50px,7vw,56px); padding:clamp(12px,1.75vw,14px) clamp(16px,2.5vw,20px);}
   #product_intro #cart_icon {height:clamp(20px,3vw,24px); width:clamp(20px,3vw,24px);}

   /* stock and delivery */
   #product_intro #product_delivery {background-position:clamp(10px,1.75vw,14px) center; background-size:clamp(18px,2.75vw,22px); font-size:clamp(11px,calc(9px + .625vw),14px); padding:clamp(12px,1.75vw,14px) clamp(10px,2vw,16px) clamp(12px,1.75vw,14px) clamp(36px,6.25vw,50px);}

   /* delivery and guarantee tiles */
   #product_intro #product_benefits_usp, #product_intro #product_benefits_usp_cont {gap:clamp(6px,1.25vw,10px);}
   #product_intro #product_benefits_usp_delivery, #product_intro #product_benefits_usp_guarantee, #product_intro #product_benefits_usp_nz, #product_intro #product_benefits_usp_tracked {font-size:clamp(10px,calc(7.33px + .833vw),14px); min-height:clamp(54px,7.5vw,60px); padding:clamp(10px,1.5vw,12px) clamp(3px,calc(-1.67px + 1.458vw),10px) clamp(10px,1.5vw,12px) clamp(20px,calc(8px + 3.75vw),38px);}
   #product_intro #product_benefits_usp_delivery::before, #product_intro #product_benefits_usp_guarantee::before, #product_intro #product_benefits_usp_nz::before, #product_intro #product_benefits_usp_tracked::before {height:clamp(14px,calc(10px + 1.25vw),20px); left:clamp(3px,calc(-1.67px + 1.458vw),10px); width:clamp(14px,calc(10px + 1.25vw),20px);}

   /* product benefits */
   #product_intro #product_benefits {gap:clamp(8px,1.75vw,14px);}
   #product_intro .product_benefit {gap:clamp(4px,1.25vw,10px); min-width:0;}
   #product_intro .product_benefit_image {flex-basis:clamp(24px,calc(16px + 2.5vw),36px); height:clamp(24px,calc(16px + 2.5vw),36px); padding:clamp(5px,1vw,6px); width:clamp(24px,calc(16px + 2.5vw),36px);}
   #product_intro .product_benefit_image img {height:100%; width:100%;}
   #product_intro .product_benefit_description {font-size:clamp(11px,calc(9.67px + .417vw),13px); min-width:0;}

   /* capsule size, daily dose and shelf life */
   #product_intro #product_data {gap:clamp(4px,1.25vw,10px);}
   #product_intro #product_data .product_data_col {min-height:clamp(88px,calc(80px + 2.5vw),100px); min-width:0; padding:clamp(14px,2vw,16px) clamp(3px,calc(-3px + 1.875vw),12px);}
   #product_intro .product_data_label {font-size:clamp(10px,calc(8px + .625vw),13px); gap:clamp(3px,calc(1px + .625vw),6px); min-height:clamp(18px,calc(14px + 1.25vw),24px); padding-bottom:clamp(12px,2vw,14px);}
   #product_intro .product_data_label::before {flex-basis:clamp(12px,calc(8px + 1.25vw),18px); height:clamp(12px,calc(8px + 1.25vw),18px); width:clamp(12px,calc(8px + 1.25vw),18px);}
   #product_intro .product_data_desc {font-size:clamp(12px,calc(6.67px + 1.667vw),20px); gap:clamp(3px,.5vw,4px);}
   #product_intro .product_data_number {font-size:inherit;}
   #product_intro .product_data_unit {font-size:clamp(11px,calc(9px + .625vw),14px);}

   /* ingredients */
   #product_intro #product_ingredients {gap:12px 10px; padding:16px;}
   #product_intro .product_ingredients_label {font-size:14px; gap:6px;}
   #product_intro .product_ingredients_desc {font-size:14px;}
   #product_intro #product_purity {gap:6px; padding:12px;}

   /* product description */
   #product_what_white #product_what_bg {gap:24px; grid-template-columns:minmax(0,1fr); padding:24px 20px !important;}
   #product_what_white #product_what_bg::before {justify-self:center; max-width:220px; min-height:220px;}

   /* comparison */
   #products_comparison_cont {padding:36px 20px;}
   #products_comparison_header {gap:20px; grid-template-columns:minmax(0,1fr); margin-bottom:24px;}
   #products_comparison_cont #products_comparison_heading {font-size:clamp(30px,5vw,40px);}
   #products_comparison_intro {justify-self:start; max-width:none;}
   #products_comparison_cont #products_comparison {overflow-x:auto;}
   #products_comparison .comparison_table {min-width:600px;}

   /* guarantee */
   #products_guarantee_bg {padding:36px 20px;}
   #products_guarantee {gap:24px; grid-template-columns:minmax(0,1fr);}
   #products_guarantee_heading {font-size:32px;}
   #products_guarantee_boxes {gap:16px; grid-template-areas:"satisfaction" "delivery" "purity" "insured"; grid-template-columns:minmax(0,1fr); grid-template-rows:auto;}
   #products_guarantee_boxes .products_guarantee_box {background-position:0 20px; padding:16px 0 16px 52px;}
   #products_guarantee_satisfaction .products_guarantee_number {font-size:96px;}

   /* customer stories */
   #products_customers_bg {padding:36px 20px;}
   #products_customers {gap:24px; grid-template-columns:minmax(0,1fr);}
   #products_customers_heading {font-size:32px; margin-bottom:0;}
   #products_customers #products_customers_1, #products_customers #products_customers_2, #products_customers #products_customers_3 {grid-column:1; grid-row:auto; padding:24px;}
   #products_customers_1 .products_customers_text {font-size:22px;}

   /* better value */
   #products_value_bg {padding:36px 20px;}
   #products_value_banner {gap:32px; grid-template-columns:minmax(0,1fr); padding:24px;}
   #products_value_text {padding:20px;}
   #products_value_heading {font-size:32px;}
   #products_value_saving {justify-self:start; margin:0; padding:16px 20px; width:auto;}
   #products_value_boxes {gap:24px;}
   #products_value_boxes .products_value_box {gap:18px; grid-template-columns:minmax(0,1fr); padding:32px 16px 20px;}
   #products_value_boxes .products_value_box_heading {font-size:16px;}
   #products_value_boxes .products_value_box_heading span {padding:8px 10px;}
   #products_value_boxes .products_value_box_capsules {grid-template-columns:minmax(0,1fr); justify-items:center; text-align:center;}
   #products_value_boxes .products_value_bottle {grid-row:auto;}
   #products_value_boxes .products_value_box_capsules_no {font-size:22px;}
   #products_value_boxes .products_value_box_capsules_caps, #products_value_boxes .products_value_box_points li {font-size:14px;}
   #products_value_vs {font-size:18px; height:40px; width:40px;}
   #products_value_summary {gap:24px 20px; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:32px;}

   /* ratings and reviews */
   #products_review_bg {padding:32px 0;}
   #products_review_cont {box-sizing:border-box; padding:0; width:calc(100% - 40px);}
   #product_ratings_cont, #product_reviews {float:none; min-width:0; padding:0; width:100%;}
   #product_reviews {border-left:0; border-top:1px solid #e2e5e8; margin-top:32px; min-height:0; padding-top:28px;}
   #product_ratings_cont h2, #product_reviews h2 {font-size:clamp(26px,4vw,32px); line-height:1.2;}
   #products_add_review h2 {font-size:26px;}
   #product_ratings {box-sizing:border-box; width:100%;}
   .product_review_field input, .product_review_field textarea {display:block; font-size:16px; margin:0; width:100%;}
   #product_review_submit {max-width:100%; min-height:44px;}
   #products_review_list {padding-top:0;}
   .product_review_text {float:none; width:100%;}
   .product_review_image {float:none; height:auto; margin-top:16px; max-width:100%;}
   .product_review p {overflow-wrap:break-word;}

   /* frequently asked questions */
   #products_faq {gap:24px; grid-template-columns:minmax(0,1fr); padding:36px 20px;}
   #products_faq_heading h2 {font-size:32px;}
   #products_faq_heading #products_faq_intro {margin:16px 0;}
   #products_faq_list .products_faq_list {column-gap:12px; padding:20px;}

   /* sticky add to cart */
   #products_sticky_cont {border-radius:20px; bottom:12px; padding:8px; width:calc(100% - 32px);}
   #products_sticky_inner {display:grid; gap:8px; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);}
   #products_sticky_image, #products_sticky_name {display:none;}
   #products_sticky_name_quantity, #products_sticky_cart {min-width:0; width:100%;}
   #products_sticky_select, #products_sticky_trigger {font-size:14px; height:48px; padding:10px 32px 10px 12px;}
   #products_sticky_trigger::after {right:14px;}
   #sticky_add_cart {font-size:14px; gap:6px; height:48px; min-width:0; padding:10px; width:100%;}
   #sticky_add_cart img {flex-basis:18px; height:18px; width:18px;}
}

@media (max-width:500px) {
   #product_intro #product_benefits_usp_delivery, #product_intro #product_benefits_usp_guarantee, #product_intro #product_benefits_usp_nz, #product_intro #product_benefits_usp_tracked {min-height:42px; padding-top:8px; padding-bottom:8px;}
   #product_intro #product_benefits_usp, #product_intro #product_benefits_usp_cont {margin-top:12px; margin-bottom:12px;}
   #product_intro #product_benefits {margin-top:12px; margin-bottom:12px; padding-top:6px; padding-bottom:6px;}
   #product_intro #product_data {margin-top:12px; margin-bottom:12px;}
   #product_intro #product_data .product_data_col {min-height:0; padding-top:12px; padding-bottom:12px;}
   #product_intro .product_data_label {padding-bottom:8px;}
}


@media (max-width:450px) {
   
   /* ingredients */
   #product_intro #product_ingredients {gap:12px 6px; padding:12px;}
   #product_intro .product_ingredients_label {font-size:clamp(11px,2.8vw,12px); gap:5px; min-width:0;}
   #product_intro .product_ingredients_label::before, #product_intro #product_purity::before {flex-basis:16px; height:16px; width:16px;}
   #product_intro .product_ingredients_desc {font-size:clamp(12px,2.9vw,13px); line-height:1.5;}
   
   /* non GMO and vegan badges */
   #product_intro #product_gmo_vegan {gap:4px;}
   #product_intro #product_gmo, #product_intro #product_vegan {font-size:9px; padding:2px 4px; white-space:nowrap;}
   
   /* purity */
   #product_intro #product_purity {font-size:clamp(11px,2.7vw,12px); gap:5px; margin-top:4px; padding:10px;}
   #product_intro .product_purity_desc {gap:4px; min-width:0;}
   
   /* shorter best value introduction */
   #products_value_text .products_value_description:nth-of-type(n+2) {display:none;}
   #products_value_text .products_value_description:first-of-type {margin-bottom:0;}

   /* sticky add to cart */
   #products_sticky_price {display:none;}
   #products_sticky_inner {grid-template-columns:repeat(2,minmax(0,1fr));}
   #products_sticky_select, #products_sticky_trigger {font-size:clamp(12px,3.1vw,14px); padding:10px 28px 10px 10px; white-space:nowrap;}
   #sticky_add_cart {font-size:clamp(12px,3.1vw,14px); padding:10px 8px;}

   /* stacked comparison cards */
   #products_value_boxes {grid-template-columns:minmax(0,1fr);}
   #products_value_vs {justify-self:center; left:auto; position:static; top:auto; transform:none;}
}



/* ==================================================
   PRODUCTS LISTING
================================================== */


@media (min-width:1000px) and (max-width:1200px) {

   /* product prices and buttons */
   #cat_products .categories_product_price {flex-direction:row; flex-wrap:nowrap; align-items:center; justify-content:space-between; gap:8px; padding:16px 14px;}
   #cat_products .categories_product_price_cont {width:auto;}
   #cat_products .categories_product_price_dollar {font-size:16px; white-space:nowrap;}
   #cat_products .categories_product_shop {width:auto; flex-shrink:0;}
   #cat_products .categories_product_shop a {font-size:12px; min-width:80px; padding:10px 12px; gap:8px;}
}

@media (max-width:999px) {

   /* product grid */
   #cat_products {grid-template-columns:repeat(2,minmax(0,1fr));}

   /* product prices and buttons */
   #cat_products .categories_product_price {flex-direction:row; flex-wrap:nowrap; align-items:center; justify-content:space-between; gap:8px; padding:16px 14px;}
   #cat_products .categories_product_price_cont {width:auto;}
   #cat_products .categories_product_price_dollar {font-size:16px; white-space:nowrap;}
   #cat_products .categories_product_shop {width:auto; flex-shrink:0;}
   #cat_products .categories_product_shop a {font-size:12px; min-width:80px; padding:10px 12px; gap:8px;}
}

@media (max-width:799px) {

   /* side navigation */
   #category_side_filter {display:none;}

   /* top navigation */
   #category_mobile_filter {display:block; clear:both; width:100%; padding:12px 10px; box-sizing:border-box;}
   #category_mobile_filter ul {display:flex; flex-wrap:nowrap; gap:8px; width:100%; margin:0; padding:4px 0 10px; overflow-x:auto; list-style:none; -webkit-overflow-scrolling:touch;}
   #category_mobile_filter li {flex:0 0 auto; margin:0; padding:0; list-style:none;}
   #category_mobile_filter li a {display:block; float:none; padding:11px 16px; border:1px solid #e5ddec; border-radius:24px; background:#fff; color:#65546f; font-size:13px; line-height:1.4; text-decoration:none; white-space:nowrap;}
   #category_mobile_filter .categories_benefit_current a {background:#9019ff; border-color:#9019ff; color:#fff; font-weight:600;}
   #category_mobile_filter a:focus-visible {outline:2px solid #9019ff; outline-offset:2px;}
   #category_mobile_filter .categories_benefit_box, #category_mobile_filter .clr, #category_mobile_filter .category_mobile_fade_left, #category_mobile_filter .category_mobile_fade_right {display:none;}

   /* product grid */
   #cat_products {width:100%; float:none; grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:450px) {
   
   /* heading */
   #categories_intro h1 {float:none; width:100%; padding:24px 10px 16px; margin:0; text-align:center;}
   
   /* search */
   #categories_search_cont {--search-x:10px; --search-y:12px; float:none; clear:both; width:100%; box-sizing:border-box;}
   #categories_search_label {left:calc(var(--search-x) + 20px);}
   
   /* category navigation */
   #category_mobile_filter {padding-top:22px;}

   /* product grid */
   #cat_products {grid-template-columns:repeat(2,minmax(0,1fr));}

   /* product prices and buttons */
   #cat_products .categories_product_price {flex-direction:column; flex-wrap:nowrap; align-items:flex-start; justify-content:flex-start; gap:10px;}
   #cat_products .categories_product_price_cont {width:100%;}
   
   /* shop button */
   #cat_products .categories_product_shop {width:100%;}
   #cat_products .categories_product_shop a {display:flex; width:100%; justify-content:center;}
}

@media (max-width:399px) {

   /* product grid */
   #cat_products {grid-template-columns:minmax(0,1fr);}

   /* product prices and buttons */
   #cat_products .categories_product_price {flex-direction:row; flex-wrap:nowrap; align-items:center; justify-content:space-between; gap:12px;}
   #cat_products .categories_product_price_cont {width:auto;}
   #cat_products .categories_product_shop {width:auto; flex-shrink:0;}
   #cat_products .categories_product_shop a {width:auto; display:inline-flex;}
}

/* ==================================================
   FOOTER
================================================== */

@media (max-width:1000px) {

   /* centered footer */
   #footer_cont #footer, #footer_copy {box-sizing:border-box; margin:0 auto; max-width:760px; width:calc(100% - 40px);}

   /* footer layout */
   #footer_top {gap:25px; grid-template-columns:1fr;}
   #footer_logo, #footer_newsletter_cont {grid-column:1; grid-row:auto;}
   #footer_bottom {gap:30px; grid-template-columns:repeat(2,minmax(0,1fr));}

   /* footer newsletter */
   #footer_newsletter_cont {gap:15px; grid-template-columns:1fr; width:100%;}
   #footer_newsletter {min-width:0; width:100%;}

   /* footer copyright */
   #footer_copy {flex-wrap:wrap; gap:20px;}
}

@media (max-width:650px) {

   /* footer container */
   #footer_cont {padding:20px 0 0;}
   #footer_cont #footer {padding:24px 20px;}

   /* footer top */
   #footer_top {align-items:stretch; display:flex; flex-direction:column; gap:25px;}

   /* wider products column */
   #footer_bottom {display:grid; gap:26px 20px; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); margin-top:30px;}

   /* footer logo */
   #footer_logo {width:145px;}

   /* newsletter heading */
   #footer_newsletter_cont {display:block;}
   #footer_newsletter_text h3 {font-size:24px;}
   #footer_newsletter_text p {font-size:12px; line-height:1.6; margin-bottom:18px;}

   /* newsletter field */
   #footer_newsletter {align-items:center; display:flex; gap:8px; position:relative; width:100%;}
   #footer_newsletter_field {font-size:16px; min-width:0; width:100%;}

   /* subscribe button and icon spacing */
   #footer_newsletter_btn {background-position:right 12px center; background-size:16px 16px; flex:none; font-size:12px; padding:10px 36px 10px 12px;}

   /* footer navigation */
   #footer .footer_nav {float:none; padding:0; width:auto;}
   #footer .footer_nav h3, #footer .footer_nav h5 {font-size:15px; margin-bottom:13px;}
   #footer .footer_nav li {font-size:12px; line-height:1.6; margin-bottom:9px;}

   /* footer contact */
   #footer_social_nav {grid-column:1/-1;}
   #footer_address, #footer_email {font-size:12px; line-height:1.6;}

   /* footer copyright */
   #footer_copy {display:block; font-size:10px; line-height:1.7;}

   /* footer payment icons */
   #footer_payment {margin-top:20px; width:190px;}
}

@media (max-width:360px) {

   /* prevent email label crowding the subscribe button */
   #footer_newsletter_label.footer_newsletter_label_no_value {font-size:14px;}
}


/* ==================================================
   CHECKOUT
================================================== */

@media (max-width:1000px) {

   /* checkout layout */
   #payment_header_width {padding:18px clamp(16px,3vw,28px);}
   #payment_layout {gap:28px; grid-template-columns:minmax(0,1fr); padding:24px clamp(16px,3vw,28px) 40px;}
   #payment_layout > #cart_area {grid-row:1;}
   #payment_layout > #payment_form_cont {grid-row:2;}
   #payment_cont .payment_field, #payment_region_search, #payment_select_state .payment_field_select {font-size:16px;}

   /* order summary */
   #payment_cont #cart_cont {background:#faf7fe; border:1px solid #e4dbee; border-radius:18px; box-sizing:border-box;}
   #payment_cont #cart_items {background:transparent; border:0; border-radius:0; padding:22px clamp(16px,3vw,24px);}
   #payment_cont #resp_cart_items {display:flex;}
   #payment_cont #cart_items {display:none;}
   #payment_cont #cart_area.payment_summary_open #cart_items {display:block; padding-top:6px;}

   /* order details */
   #payment_summary_heading {gap:12px; margin-bottom:22px;}
   #payment_cont #payment_summary_heading h2 {font-size:clamp(20px,2.8vw,24px);}
   #payment_cont .payment_cart_item {gap:12px; grid-template-columns:64px minmax(0,1fr);}
   #payment_cont .payment_cart_item_img {height:64px; width:64px;}
   #payment_cont .payment_cart_item_name_price {gap:10px;}
   #payment_cont .payment_cart_item_name h4 {font-size:14px; overflow-wrap:anywhere;}
   #payment_cont .payment_cart_item_quant_price {font-size:14px;}
   #payment_cont #payment_summary_promises p {align-items:flex-start;}

}

@media (max-width:450px) {

   /* checkout header and form */
   #payment_logo img {height:auto; width:125px;}
   #payment_secure {font-size:11px; gap:6px; margin-left:12px;}
   #payment_secure svg {height:16px; width:16px;}
   #customer_email_cont, #payment_cont .new_address_fields {gap:12px; grid-template-columns:minmax(0,1fr);}

   /* compact order summary */
   #payment_cont #cart_items {padding:20px 16px;}
   #payment_cont #cart_area.payment_summary_open #cart_items {padding-top:6px;}
   #payment_cont .payment_cart_item {gap:10px; grid-template-columns:50px minmax(0,1fr);}
   #payment_cont .payment_cart_item_img {height:50px; width:50px;}
   #payment_cont .payment_cart_item_name_price {gap:8px;}
   #payment_cont .payment_cart_item_name h4, #payment_cont .payment_cart_item_quant_price {font-size:13px;}
   #payment_cont .payment_cart_item_name p {font-size:12px;}
   #payment_cont #cart_grand_total_text, #payment_cont #grand_total_cont {font-size:20px;}
   #payment_cont #payment_summary_promises p {font-size:12px; gap:10px;}
   #payment_cont #payment_summary_promises svg {flex-basis:20px; height:20px; width:20px;}

}


/* ==================================================
   CHECKOUT
================================================== */

@media (max-width:1000px) {

   /* checkout layout */
   #payment_header_width {padding:18px clamp(16px,3vw,28px);}
   #payment_layout {gap:28px; grid-template-columns:minmax(0,1fr); padding:24px clamp(16px,3vw,28px) 40px; width:100%;}
   #payment_layout > #cart_area {grid-row:1; min-width:0;}
   #payment_layout > #payment_form_cont {grid-row:2; min-width:0;}
   #payment_cont .payment_field, #payment_region_search, #payment_select_state .payment_field_select {font-size:16px;}

   /* order summary */
   #payment_cont #cart_cont {background:#faf7fe; border:1px solid #e4dbee; border-radius:18px; box-sizing:border-box; width:100%;}
   #payment_cont #cart_items {background:transparent; border:0; border-radius:0; display:none; padding:22px clamp(16px,3vw,24px);}
   #payment_cont #cart_area.payment_summary_open #cart_items {display:block; padding-top:6px;}

   /* full-width summary button */
   #payment_cont #resp_cart_items {align-items:center; appearance:none; background:transparent; border:0; border-radius:18px; box-shadow:none; box-sizing:border-box; color:#302638; cursor:pointer; display:flex; font-family:inherit; font-size:clamp(12px,3.3vw,14px); font-weight:500; gap:8px; justify-content:space-between; line-height:1.4; margin:0; min-height:64px; padding:18px clamp(12px,3vw,24px); text-align:left; width:100%;}
   #payment_cont #resp_cart_items:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}
   #payment_cont #resp_cart_items_text {display:block; flex:0 0 auto; white-space:nowrap;}
   #payment_cont #resp_cart_items_price {align-items:center; display:inline-flex; flex:0 0 auto; font-size:clamp(16px,4.5vw,22px); font-weight:700; gap:12px; line-height:1.3; white-space:nowrap;}
   #payment_cont #resp_cart_items_price::after {border-bottom:2px solid currentColor; border-right:2px solid currentColor; content:""; flex:0 0 7px; height:7px; transform:rotate(45deg); transition:transform .2s ease; width:7px;}
   #payment_cont #cart_area.payment_summary_open #resp_cart_items_price::after {transform:rotate(225deg);}

   /* order details */
   #payment_summary_heading {gap:12px; margin-bottom:22px;}
   #payment_cont #payment_summary_heading h2 {font-size:clamp(20px,2.8vw,24px);}
   #payment_cont .payment_cart_item {gap:12px; grid-template-columns:64px minmax(0,1fr);}
   #payment_cont .payment_cart_item_img {height:64px; width:64px;}
   #payment_cont .payment_cart_item_name_price {gap:10px;}
   #payment_cont .payment_cart_item_name h4 {font-size:14px; overflow-wrap:anywhere;}
   #payment_cont .payment_cart_item_quant_price {font-size:14px;}
   #payment_cont #payment_summary_promises p {align-items:flex-start;}
}

@media (max-width:450px) {

   /* checkout header and form */
   #payment_logo img {height:auto; width:125px;}
   #payment_secure {font-size:11px; gap:6px; margin-left:12px;}
   #payment_secure svg {height:16px; width:16px;}
   #customer_email_cont, #payment_cont .new_address_fields {gap:12px; grid-template-columns:minmax(0,1fr);}

   /* compact order details */
   #payment_cont #cart_items {padding:20px 16px;}
   #payment_cont #cart_area.payment_summary_open #cart_items {padding-top:6px;}
   #payment_cont .payment_cart_item {gap:10px; grid-template-columns:50px minmax(0,1fr);}
   #payment_cont .payment_cart_item_img {height:50px; width:50px;}
   #payment_cont .payment_cart_item_name_price {gap:8px;}
   #payment_cont .payment_cart_item_name h4, #payment_cont .payment_cart_item_quant_price {font-size:13px;}
   #payment_cont .payment_cart_item_name p {font-size:12px;}
   #payment_cont #cart_grand_total_text, #payment_cont #grand_total_cont {font-size:20px;}
   #payment_cont #payment_summary_promises p {font-size:12px; gap:10px;}
   #payment_cont #payment_summary_promises svg {flex-basis:20px; height:20px; width:20px;}
}



/* ==================================================
   ACCESSIBILITY
================================================== */

@media (prefers-reduced-motion:reduce) {

   /* page scrolling */
   html {scroll-behavior:auto;}

   /* header animation */
   #resp_nav_cont, #header_mobile {transition:none!important;}

   /* product faq animation */
   body.home_scroll_enabled #products_faq_list .products_faq_list.home_scroll_reveal {transition:none;}
}