@import url("reset.css");
@import url("responsive28.css");

/* 
font color:#5a5a5a
light font color:#f6f6f6

BLUE 
blue : 1a92d0
very light : e7f6ff
light: 65b5e2
dark: 1b77a7

PUPRPLE
purple: #9019ff

GREEN
green: 0fb259

ORANGE
orange: f2c443


*/

.clr {clear:both;}
body {background:#ffffff; color:#5a5a5a; font-family: 'Inter', sans-serif; font-size:14px;}
strong {font-weight:bold;}
.margin {margin:0 auto; width:1000px;}
.hide {display:none;}
.show {display:block;}
textarea {font-family:inherit; font-size:inherit; font-weight:inherit;}
input[type="text"] {font-family:inherit; font-size:inherit; font-weight:inherit;}
.left {float:left;}
.input {-webkit-appearance:none;}
.resp_clr {display:none;}
.preloader {background-image:url(../images/white-preloader.gif) !important; background-repeat:no-repeat; background-position:center center; background-size:25px 25px;}
.purple {color:#9019ff;}
.green {color:#0fb259;}
.black {color:#000;}
.bold {font-weight:bold;}
.underline {text-decoration:underline;}
@font-face {font-family:"Inter"; src:url("../images/fonts/inter-latin-variable.woff2") format("woff2"); font-style:normal; font-weight:100 900; font-display:swap;}

#fade_in {backdrop-filter: blur(10px); background:url(../images/dark-opacity.png); display:none; height:100%; left:0; position:fixed; top:0; width:100%; z-index:54;}
#preload_fade {background:url(../images/dark-opacity.png); height:1px; width:1px;}

/******************
    HEADER
******************/

/* Existing header support */
#header_mobile {display:none;}
.header_nav_scroll {backdrop-filter:blur(20px); background:rgba(255, 255, 255, 0.7); box-shadow:0px 0px 15px #e1e1e1; position:fixed !important; top:0; width:100% !important;}
#header_spacer {display:none;}
#header_lowest_price {background:#ff0000; color:#fff; font-size:16px; padding:10px 0; text-align:center;}
#header_lowest_price a {font-size:12px; text-decoration:underline;}

/* Delivery and guarantee strip */
#header_usp_cont {background:#000;}
#header_usp {color:#fff; font-weight:400; margin:0 auto; text-align:center; width:1000px;}
#header_usp_delivery {background:url(../images/delivery-white.svg) no-repeat 15px 7px; background-size:24px 24px; display:inline-block; padding:10px 20px 10px 44px;}
#header_usp_guarantee {background:url(../images/guarantee-white.svg) no-repeat 22px 10px; background-size:16px 16px; display:inline-block; padding:10px 20px 10px 44px;}

/* Sale strip */
#header_sale_cont {background:#9019ff; color:#fff; padding:10px; text-align:center;}
#header_sale_black {font-size:20px; font-weight:400; padding-bottom:10px; text-decoration:underline;}
#header_sale_code {font-size:18px; font-weight:200; padding-bottom:10px;}
#header_sale_limited {font-size:14px; font-weight:600;}

/* Retain existing shared controls and hidden panels */
#resp_nav_menu {display:none;}
#header_cart_cont {float:left;}
#header_cart {background:url(../images/cart.svg) no-repeat center 0px; background-size:30px 30px; border-radius:3px; color:#fff; display:block; height:40px; padding:0px 0px 0px 30px; width:22px;}
#cart_quantity {background:#9019ff; border-radius:50%; display:block; font-size:14px; height:24px; line-height:24px; text-align:center; width:24px;}
#header_resp_search {display:none;}

/* Capsule navigation */
#header {-webkit-backdrop-filter:none; backdrop-filter:none; background:transparent; border:0; box-shadow:none; box-sizing:border-box; height:82px; padding:8px 0 10px; position:relative; z-index:30;}
#header.header_nav_scroll {-webkit-backdrop-filter:none; backdrop-filter:none; background:transparent; border:0; box-shadow:none; left:0; top:0;}
#header_nav {-webkit-backdrop-filter:none; align-items:center; backdrop-filter:none; background:transparent; border:1px solid transparent; border-radius:999px; box-shadow:none; box-sizing:border-box; display:grid; gap:16px; grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr); height:64px; margin:0 auto; max-width:1536px; padding:0 20px; position:relative; transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease; width:calc(100% - 44px);}
#header.header_nav_scroll #header_nav {-webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); background:rgba(255, 255, 255, .68); border-color:#e6ddec; box-shadow:0 3px 12px rgba(27, 44, 58, .043);}
#header_nav > .clr, #header_icons > .clr {display:none;}

/* Logo */
#header_logo {justify-self:start; left:auto; min-width:0; position:static; top:auto;}
#header_logo a {display:block;}
#header_logo img {display:block; height:auto; max-width:100%; width:140px;}

/* Navigation links */
#header_nav_links {align-items:center; display:flex; gap:6px; justify-content:center; list-style:none; margin:0; padding:0; width:auto;}
#header_nav_links .header_nav {background:transparent; border:0; border-radius:999px; box-sizing:border-box; color:#49404f; cursor:pointer; display:block; float:none; font-size:14px; font-weight:550; line-height:1.4; margin:0; padding:0; transition:background-color .18s ease, color .18s ease; white-space:nowrap;}
#header_nav_links .header_main {align-items:center; background:none; border-radius:inherit; box-sizing:border-box; color:inherit; display:flex; justify-content:center; min-height:38px; padding:8px 12px; text-decoration:none;}
#header_nav_links .header_current {background:#eee3fa; color:#7227a8 !important; font-weight:650;}
#header_nav_links .header_nav:hover, #header_nav_links .header_nav:focus-within {background:#f1e7fb; color:#7527aa !important;}
#header_nav_links .nav_link_hover {display:none;}

/* Search icon */
#header_nav_links .header_search .header_main {gap:7px;}
#header_nav_links .header_search .header_main::before {-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E") center / contain no-repeat; background:currentColor; content:""; display:block; height:16px; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m16 16 5 5'/%3E%3C/svg%3E") center / contain no-repeat; width:16px;}

/* Account and cart */
#header_icons {align-items:center; display:flex; gap:8px; justify-self:end; left:auto; min-width:0; position:static; right:auto; top:auto;}
#header_icons #header_members_cont, #header_icons #header_cart_cont {float:none;}
#header #header_login, #header #header_cart {align-items:center; background:none; border:0; border-radius:999px; box-sizing:border-box; color:#4a3e55; display:inline-flex; flex-shrink:0; height:40px; justify-content:center; line-height:1; min-height:40px; padding:8px; transition:background-color .18s ease, color .18s ease, box-shadow .18s ease; width:40px;}
#header #header_login::before, #header #header_cart::before {background:currentColor; content:""; display:block; flex:0 0 24px; height:24px; width:24px;}
#header #header_login::before {-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3Cpath d='M4 21v-2a8 8 0 0 1 16 0v2Z'/%3E%3C/svg%3E") center / contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3Cpath d='M4 21v-2a8 8 0 0 1 16 0v2Z'/%3E%3C/svg%3E") center / contain no-repeat;}
#header #header_cart::before {-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h3l3 12h11l2-9H6'/%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='18' cy='20' r='1'/%3E%3C/svg%3E") center / contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h3l3 12h11l2-9H6'/%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='18' cy='20' r='1'/%3E%3C/svg%3E") center / contain no-repeat;}
#header #header_cart {background:#8518f4; box-shadow:0 5px 12px #8518f429; color:#fff; gap:8px; min-width:72px; padding:8px 14px; width:auto;}
#header #header_cart #cart_quantity {background:none; border:0; border-radius:0; box-shadow:none; color:inherit; font-size:12px; font-weight:650; height:auto; line-height:1; margin:0; min-width:8px; padding:0; position:static; width:auto;}
#header #header_login:hover {background:#f1e7fb; color:#7527aa;}
#header #header_cart:hover {background:#7111d7; box-shadow:0 6px 15px #8518f433;}
#header a:focus-visible {outline:2px solid #8d39d0; outline-offset:3px;}

/* SEARCH */

#header_nav_search, #header_nav_search *, #header_nav_search *::before, #header_nav_search *::after {box-sizing:border-box;}

#header_nav_search {background:#ffffff; border:1px solid #e8e0ef; border-radius:28px; box-shadow:0 24px 80px rgba(36, 25, 49, .18); color:#302638; display:none; font-family:"Inter", Arial, sans-serif; height:auto; left:50%; max-height:calc(100vh - 150px); max-height:calc(100dvh - 150px); max-width:1400px; overflow-y:auto; overscroll-behavior:contain; padding:32px; position:fixed; text-align:left; top:130px; transform:translateX(-50%); width:calc(100% - 48px); z-index:60;}

#header_search_title {color:#292331; font-size:28px; font-weight:650; letter-spacing:-.8px; line-height:1.25; margin:0; padding:0 52px 0 0;}

#header_search_close {align-items:center; appearance:none; background:#f6f1fb; border:1px solid #e9e0f2; border-radius:50%; color:#75677f; cursor:pointer; display:flex; font-family:inherit; font-size:28px; font-weight:400; height:40px; justify-content:center; line-height:1; margin:0; padding:0; position:absolute; right:24px; top:24px; transition:background-color .2s ease, color .2s ease; width:40px;}
#header_search_close:hover {background:#eee2fc; color:#8019ef;}
#header_search_close:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}


/* SEARCH FIELD */

#header_search_bar {margin:26px 0 28px; position:relative;}

#header_search_field {appearance:none; background:#ffffff; border:1px solid #ded6e8; border-radius:32px; box-shadow:none; color:#30263d; display:block; font-family:inherit; font-size:17px; font-weight:400; height:58px; line-height:1.4; margin:0; padding:0 70px 0 24px; transition:border-color .2s ease; width:100%;}
#header_search_field:focus {border-color:#8119f5; outline:2px solid #8119f5; outline-offset:3px;}

#header_search_label {background:#ffffff; color:#74677f; font-size:17px; font-weight:400; left:20px; line-height:1.4; margin:0; max-width:calc(100% - 100px); overflow:hidden; padding:0 4px; pointer-events:none; position:absolute; text-overflow:ellipsis; transform-origin:left center; transition:color .2s ease, top .2s ease, transform .2s ease; white-space:nowrap; z-index:1;}
#header_search_label.header_search_label_no_value {top:29px; transform:translateY(-50%) scale(1);}
#header_search_label.header_search_label_value {color:#8119f5; top:0; transform:translateY(-50%) scale(.76);}

/* Decorative search icon — results still update as you type. */
#header_search_bar::before {background:#8119f5; border-radius:50%; content:""; height:44px; pointer-events:none; position:absolute; right:7px; top:7px; width:44px; z-index:2;}
#header_search_bar::after {background:url("../images/categories-search.png") center / 20px 20px no-repeat; content:""; filter:brightness(0) invert(1); height:20px; pointer-events:none; position:absolute; right:19px; top:19px; width:20px; z-index:2;}


/* RESULTS LAYOUT */

#header_search_layout {align-items:start; display:grid; gap:28px; grid-template-columns:minmax(0, 1fr) 190px;}
#header_search_layout.header_search_layout_full {grid-template-columns:minmax(0, 1fr);}

#header_search_popular {background:#f8f6fb; border:1px solid #f0eaf5; border-radius:22px; min-width:0; padding:24px;}
#header_search_popular > h3 {color:#292331; font-size:20px; font-weight:650; letter-spacing:-.4px; line-height:1.4; margin:0 0 22px; overflow-wrap:anywhere; padding:0;}
#header_search_popular > h3 span {color:#8019ef;}

#header_search_popular_cont {display:grid; gap:16px; grid-template-columns:repeat(4, minmax(0, 1fr));}


/* PRODUCT CARDS */

.header_search_popular {background:var(--search-product-bg, #f0eafa); border:1px solid #e3daec; border-radius:18px; cursor:pointer; display:flex; flex-direction:column; min-width:0; overflow:hidden; transition:border-color .2s ease, box-shadow .2s ease;}

.header_search_popular:hover, .header_search_popular:focus-within {border-color:var(--search-product-color, #594372); box-shadow:0 8px 22px rgba(54, 33, 77, .08);}

.header_search_popular h4 {color:var(--search-product-color, #594372); font-size:18px; font-weight:650; letter-spacing:-.4px; line-height:1.3; margin:0; min-height:84px; overflow-wrap:break-word; padding:18px 16px 0;}
.header_search_popular h4 a {color:inherit; text-decoration:none; white-space:normal;}
.header_search_popular h4 a:focus-visible {border-radius:3px; outline:2px solid #9019ff; outline-offset:4px;}

.header_search_product_bottle {align-items:center; display:flex; flex:1 1 auto; justify-content:center; padding:12px 14px 22px;}
.header_search_product_bottle img {display:block; height:180px; max-width:100%; object-fit:contain; width:100%;}

.header_search_shop {align-items:center; background:#ffffff; display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; margin-top:auto; min-height:76px; padding:16px 14px;}

.header_search_price {color:#242333; font-size:17px; font-weight:700; letter-spacing:-.4px; line-height:1.3; white-space:nowrap;}

.header_search_shop a {align-items:center; background:var(--search-product-color, #594372); border:1px solid transparent; border-radius:999px; color:#ffffff; display:inline-flex; flex:0 0 auto; font-size:14px; font-weight:650; gap:12px; justify-content:center; line-height:1.2; margin-left:auto; min-height:42px; min-width:86px; padding:10px 14px; text-decoration:none; transition:filter .2s ease; white-space:nowrap;}

/* Straight-right Shop arrows */
.header_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:13px; transition:transform .2s ease; width:17px;}

.header_search_shop a:hover {filter:brightness(.9);}
.header_search_shop a:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}


/* EXISTING SHARED BENEFITS STYLES */

#header_search_cats {box-sizing:border-box; float:right; padding:0 50px; width:250px;}
#header_search_cats h3 {color:#000000; font-size:24px; height:30px; padding:30px 0;}
#header_search_cats li a {background:#000000; border:1px solid #000000; border-radius:10px; color:#ffffff; display:inline-block; font-size:16px; margin-bottom:10px; padding:5px 15px;}
#header_search_cats_more {color:#000000; font-size:16px; padding-top:5px; text-decoration:underline;}


/* DESKTOP POPUP BENEFITS */

#header_nav_search #header_search_cats {float:none; min-width:0; padding:24px 0 0; width:auto;}
#header_nav_search #header_search_cats h3 {color:#292331; font-size:18px; font-weight:650; height:auto; line-height:1.4; margin:0 0 18px; padding:0;}
#header_nav_search #header_search_cats ul {display:flex; flex-wrap:wrap; gap:9px; list-style:none; margin:0; padding:0;}
#header_nav_search #header_search_cats li {margin:0; padding:0;}

#header_nav_search #header_search_cats li a {background:#f5f0fa; border:1px solid #e8dff1; border-radius:999px; color:#655174; display:inline-flex; font-size:14px; font-weight:500; line-height:1.4; margin:0; padding:9px 14px; text-decoration:none; transition:background-color .2s ease, border-color .2s ease, color .2s ease;}
#header_nav_search #header_search_cats li a:hover {background:#eee1fc; border-color:#d5b8ee; color:#7814d8;}

#header_nav_search #header_search_cats_more {color:#7814d8; display:inline-block; font-size:14px; font-weight:600; line-height:1.5; margin-top:22px; padding:0; text-decoration:underline; text-underline-offset:4px;}
#header_nav_search #header_search_cats a:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}


/* EMPTY RESULTS */

#header_search_no_results {background:#ffffff; border:1px dashed #dfd3eb; border-radius:16px; color:#75677f; font-size:16px; line-height:1.7; padding:48px 24px; text-align:center;}


/* MOTION */

@media (prefers-reduced-motion:no-preference) {
  .header_search_shop a:hover::after, .header_search_shop a:focus-visible::after {transform:translateX(4px);}
}

@media (prefers-reduced-motion:reduce) {
  #header_search_close, #header_search_field, #header_search_label, .header_search_popular, .header_search_shop a, .header_search_shop a::after, #header_nav_search #header_search_cats li a {transition:none;}
}


/* RESPONSIVE */
#resp_header {display:none;}
#resp_nav_cont {display:none;}
#resp_nav_close {display:none;}


/******************
    PRODUCT
******************/

/* INTRO */

/* Complete product-top styles. Load after the site layout and responsive stylesheets. */
#product_intro, #product_intro *, #product_intro *::before, #product_intro *::after {box-sizing:border-box;}
#product_intro {align-items:start; color:#242333; display:grid; font-family:"Inter", Inter, Arial, sans-serif; gap:5%; grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr); margin:16px auto 40px; max-width:1536px; padding:0 0 42px; width:calc(100% - 44px);}
#product_intro > .clr {display:none;}
#product_intro #product_head_image, #product_intro #product_action {float:none; margin:0; min-width:0; padding:0; width:100%;}
/* product gallery */
#product_intro #product_image_cont {align-items:start; display:grid; gap:20px; grid-template-columns:78px minmax(0, 1fr); height:auto; margin:0; overflow:visible; padding:0; width:100%;}
#product_intro #product_image_cont > .clr {display:none;}
/* product thumbnails */
#product_intro #product_thumbs_cont {display:flex; flex-direction:column; float:none; gap:15px; grid-column:1; grid-row:1; margin:0; width:100%;}
/* MULTI-BOTTLE IMAGE BACKGROUNDS */
#product_intro #product_image, #product_intro #product_image .swiper-slide, #product_intro .product_thumbs {background:#f3f5f4; isolation:isolate;}
#product_intro #product_image img, #product_intro .product_thumbs img {mix-blend-mode:darken;}

#product_intro .product_thumbs {background:#f3f5f4; border:2px solid #e2dce9; border-radius:12px; cursor:pointer; display:block; height:auto; margin:0; overflow:hidden; padding:3px; transition:border-color .2s ease; width:100%;}
#product_intro .product_thumbs_current {background:#f3f5f4; border-color:#0fb259;}
#product_intro .product_thumbs_other:hover {border-color:#9b80b6;}
#product_intro .product_thumbs img {aspect-ratio:1; display:block; height:auto; object-fit:contain; width:100%;}
/* main product image */
#product_intro #product_image {background:#f2f5f4; border-radius:24px; float:none; grid-column:2; grid-row:1; margin:0; overflow:hidden; position:relative; width:100%;}
#product_intro #product_image img {aspect-ratio:1; display:block; height:auto; object-fit:contain; width:100%;}
/* third party tests */
#product_intro .products_third_desktop {float:none; margin:16px 0 0 98px; text-align:center; width:calc(100% - 98px);}
#product_intro .products_third {background:#f8f2ff url(../images/product-page/intro-report.svg) no-repeat 16px center; background-position:16px center; background-size:20px; border:1px solid #d8c6e8; border-radius:12px; color:#9019ff; cursor:pointer; display:inline-block; font-size:14px; font-weight:600; line-height:1.5; margin:0; padding:12px 18px 12px 46px; transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease; width:auto;}
#product_intro .products_third:hover {background-color:#f0e5fa; border-color:#cda8eb; box-shadow:0 2px 6px rgba(93,43,133,.07);}
#product_intro .products_third:focus-visible {outline:2px solid #8424d8; outline-offset:3px;}
#product_intro .products_third_mobile {display:none;}
/* product heading */
#product_intro #product_heading_rating_mobile {display:none;}
#product_intro #product_action h1, #product_intro #product_heading_rating_mobile h1 {color:#242333; font-family:inherit; font-size:clamp(28px, 2.7vw, 40px); font-weight:600; letter-spacing:-.035em; line-height:1.15; margin:0 0 16px; padding:0;}
/* customer ratings */
#product_intro #product_stars_cont {align-items:center; display:flex; flex-wrap:wrap; gap:8px; margin:0 0 24px;}
#product_intro #product_stars {display:flex; flex-shrink:0; gap:2px; list-style:none; margin:0; padding:0;}
#product_intro #product_stars li {background-position:center; background-size:18px 18px; height:20px; margin:0; padding:0; width:18px;}
#product_intro #product_stars_avg, #product_intro #product_stars_text {color:#51475c; font-size:13px; line-height:1.5; margin:0; padding:0;}
/* short description */
#product_intro #product_short_desc {color:#756a80; font-size:16px; font-weight:400; line-height:1.6; margin:0 0 18px; padding:0; width:100%;}
/* bottle options */
#product_intro #product_options_cont {margin:0; padding:16px 0 20px; width:100%;}
#product_intro #product_options_cont_one {display:grid; gap:12px; grid-template-columns:repeat(3, minmax(0, 1fr));}
#product_intro #product_options_cont_one > .clr {display:none;}
#product_intro #product_options_cont .product_option {background:#fff; border:1px solid #d5ccdf; border-radius:16px; box-shadow:none; cursor:pointer; float:none; height:auto; margin:0; min-height:130px; min-width:0; padding:30px 8px 14px; position:relative; text-align:center; transition:background-color .2s ease, border-color .2s ease; width:100%;}
#product_intro #product_options_cont .product_option_current {background:#eaf9f2; border-color:#0fb259; box-shadow:inset 0 0 0 1px #0fb259;}
#product_intro #product_options_cont .product_option_other:hover {background:#f9f6fc; border-color:#9b80b6;}
#product_intro #product_options_cont .product_option_label_cont {left:0; position:absolute; top:-14px; width:100%;}
#product_intro .product_option_label {border-radius:8px; color:#fff; display:inline-block; font-size:16px; font-weight:700; line-height:1.2; max-width:calc(100% - 8px); padding:7px 10px; width:auto;}
#product_intro .product_option_popular {background:#16b932;}
#product_intro .product_option_value {background:#9019ff;}
#product_intro .product_option_caps {color:#675972; font-size:14px; line-height:1.4;}
#product_intro .product_option_price {color:#242333; font-size:clamp(20px, 2vw, 30px); font-weight:650; letter-spacing:-.035em; line-height:1.2; padding:6px 0; white-space:nowrap;}
#product_intro .product_option_saving {padding:4px 0 0;}
#product_intro .product_option_saving span {background:#16b932; border-radius:20px; color:#fff; display:inline-block; font-size:14px; font-weight:600; padding:3px 10px;}
/* add to cart */
#product_intro #product_add_cart_cont {margin:0; padding:0; width:100%;}
#product_intro #product_add_cart {align-items:center; background:#9019ff; border:0; border-radius:32px; color:#fff; display:flex; font-family:inherit; font-size:18px; font-weight:600; gap:12px; justify-content:center; line-height:1.4; min-height:56px; padding:14px 20px; transition:background-color .2s ease; width:100%;}
#product_intro #product_add_cart:hover {background:#7412ce; color:#fff; cursor:pointer; transform:none;}
#product_intro #product_add_cart:focus-visible {outline:3px solid #242333; outline-offset:4px;}
#product_intro #cart_icon {flex-shrink:0; height:24px; margin:0; width:24px;}
/* stock and delivery */
#product_intro #product_delivery {background:#effaf4 url(../images/product-page/intro-check.svg) no-repeat 16px center; background-position:14px center; background-size:22px; border:0; border-left:3px solid #0fb259; border-radius:0 10px 10px 0; color:#242333; font-size:14px; line-height:1.5; margin:20px 0; padding:14px 16px 14px 50px; width:100%;}
/* product benefits */
#product_intro #product_benefits {display:grid; gap:14px; grid-template-columns:repeat(2, minmax(0, 1fr)); margin:20px 0; padding:18px 0; width:100%;}
#product_intro #product_benefits > .clr {display:none;}
#product_intro .product_benefit {align-items:center; display:flex; float:none; gap:10px; width:100%;}
#product_intro .product_benefit_image {background:#f1e8fb; border-radius:50%; flex:0 0 36px; float:none; height:36px; margin:0; padding:6px; width:36px;}
#product_intro .product_benefit_image img {display:block; height:24px; width:24px;}
#product_intro .product_benefit_description {color:#675972; float:none; font-size:13px; line-height:1.4; padding:0; width:auto;}
/* product facts */
#product_intro #product_data {display:grid; gap:10px; grid-template-columns:repeat(3, minmax(0, 1fr)); margin:20px 0; padding:0; width:100%;}
#product_intro #product_data > .clr {display:none;}
#product_intro #product_data .product_data_col {background:#fff; border:1px solid #e7deee; border-color:#e5d3f7; border-radius:12px; display:block; float:none; height:auto; margin:0; min-height:118px; padding:18px 14px; text-align:left; width:100%;}
#product_intro .product_data_label {align-items:center; color:#665071; display:flex; font-size:13px; font-weight:600; gap:8px; line-height:1.4; min-height:24px; padding:0 0 20px; padding-bottom:20px;}
#product_intro .product_data_desc {align-items:baseline; color:#7428a6; display:flex; flex-wrap:wrap; font-size:24px; font-weight:650; gap:4px; line-height:1.4;}
/* ingredients and purity */
#product_intro #product_ingredients {align-items:center; background:#f7fbff; border:1px solid #e7deee; border-color:#c6dff6; border-radius:16px; border-top:2px solid #54b4e8; display:grid; gap:14px 12px; grid-template-columns:minmax(0, 1fr) auto; margin:0; padding:20px; width:100%;}
#product_intro .product_ingredients_label {align-items:center; color:#44334f; display:flex; font-size:16px; font-weight:700; gap:8px; line-height:1.4; padding:0;}
#product_intro .product_ingredients_desc {color:#675972; font-size:15px; grid-column:1 / -1; line-height:1.6; padding:0;}
#product_intro #product_gmo_vegan {display:flex; float:none; gap:6px; margin:0; max-width:100%; width:auto;}
#product_intro #product_purity {align-items:center; background:#e3f2fd; border:0; border-radius:12px; border-top:1px solid #eee6f3; color:#285d7e; display:flex; flex-wrap:wrap; font-size:13px; gap:8px; grid-column:1 / -1; line-height:1.6; margin:0; margin-top:10px; padding:12px 14px; padding-top:12px;}
/* allergen statement */
#product_intro #product_allergies {color:#756a80; font-size:12px; line-height:1.6; margin:12px 0 0; padding:0; width:100%;}
/* restore rating stars */
#product_intro #product_stars .product_star {background-image:url(../images/product-page/intro-star-filled.svg); background-repeat:no-repeat; display:block;}
#product_intro #product_stars .product_half_star {background-image:url(../images/product-page/intro-star-half.svg); background-repeat:no-repeat; display:block;}
#product_intro #product_stars_text {cursor:pointer; text-decoration:underline; text-underline-offset:4px;}
/* ingredients panel */
#product_intro .product_ingredients_label, #product_intro .product_ingredients_desc {color:#285d7e;}
#product_intro .product_purity_label {font-weight:650;}
/* non GMO and vegan badges */
#product_intro #product_gmo, #product_intro #product_vegan {background:none; border:1px solid #68a9da; border-radius:3px; color:#2b7fab; display:inline-flex; font-size:10px; font-weight:700; height:auto; line-height:1.4; padding:3px 6px; width:auto;}
#product_intro #product_gmo::before {content:"NON GMO";}
#product_intro #product_vegan::before {content:"VEGAN";}
/* existing featured review */
#product_intro #products_top_review_cont {float:none; margin:24px 0 0 98px; width:calc(100% - 98px);}
#product_intro #products_top_review {background:#f4f7f5; border:1px solid #e1e9e4; border-radius:14px; color:#5f6863; font-size:14px; line-height:1.6; padding:20px;}
#product_intro #products_top_review_name {color:#33443a; font-weight:650; margin-bottom:8px;}
#product_intro #products_top_review p {margin:0;}
/* delivery and guarantee tiles */
#product_intro #product_benefits_usp, #product_intro #product_benefits_usp_cont {display:grid; gap:10px; grid-template-columns:repeat(2, minmax(0, 1fr)); margin:20px 0; padding:0; width:100%;}
#product_intro #product_benefits_usp_left, #product_intro #product_benefits_usp_right {display:contents; float:none; width:auto;}
#product_intro #product_benefits_usp_cont > .clr, #product_intro #product_benefits_usp > .clr {display:none;}
#product_intro #product_benefits_usp_delivery, #product_intro #product_benefits_usp_guarantee, #product_intro #product_benefits_usp_nz, #product_intro #product_benefits_usp_tracked {align-content:center; background:#fff; border:1px solid #dfe8e3; border-radius:12px; color:#343038; display:block; float:none; font-size:14px; font-weight:400; line-height:1.5; margin:0; min-height:62px; padding:14px 14px 14px 48px; position:relative; width:auto;}
#product_intro #product_benefits_usp_nz {order:1;}
#product_intro #product_benefits_usp_delivery {order:2;}
#product_intro #product_benefits_usp_tracked {order:3;}
#product_intro #product_benefits_usp_guarantee {order:4;}
#product_intro #product_benefits_usp_nz span {color:#087f47; font-weight:700;}
#product_intro #product_benefits_usp_delivery span {color:inherit; font-weight:inherit;}
/* assurance icons */
#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 {background:#218c57; content:""; height:24px; left:14px; mask-position:center; mask-repeat:no-repeat; mask-size:contain; position:absolute; top:50%; transform:translateY(-50%); width:24px;}
#product_intro #product_benefits_usp_nz::before {mask-image:url(../images/product-page/intro-nz.svg);}
#product_intro #product_benefits_usp_delivery::before {mask-image:url(../images/product-page/intro-truck.svg);}
#product_intro #product_benefits_usp_tracked::before {mask-image:url(../images/product-page/intro-location.svg);}
#product_intro #product_benefits_usp_guarantee::before {mask-image:url(../images/product-page/intro-shield.svg);}
/* fact values and units */
#product_intro .product_data_number {font-size:36px; font-weight:650; letter-spacing:-.035em; line-height:1.2;}
#product_intro .product_data_unit {font-size:14px; font-weight:400;}
#product_intro .product_data_label::before {background:#9a44df; content:""; flex:0 0 22px; height:22px; mask-position:center; mask-repeat:no-repeat; mask-size:contain; width:22px;}
/* ingredient layout and purity */
#product_intro #product_ingredients > .clr {display:none;}
#product_intro .product_purity_desc {align-items:baseline; display:flex; flex-wrap:wrap; gap:8px;}
#product_intro .product_purity_value {color:#1977a4; font-size:28px; font-weight:700; line-height:1.2;}
#product_intro .product_purity_note {color:#527d9b; font-size:13px; font-weight:400;}
#product_intro .product_ingredients_label::before, #product_intro #product_purity::before {background:#285d7e; content:""; flex:0 0 22px; height:22px; mask-position:center; mask-repeat:no-repeat; mask-size:contain; width:22px;}
#product_intro #product_data > .product_data_col:nth-child(1) .product_data_label::before, #product_intro .product_data_capsule .product_data_label::before {mask-image:url(../images/product-page/intro-capsule.svg);}
#product_intro #product_data > .product_data_col:nth-child(2) .product_data_label::before, #product_intro .product_data_dose .product_data_label::before {mask-image:url(../images/product-page/intro-sun.svg);}
#product_intro #product_data > .product_data_col:nth-child(3) .product_data_label::before, #product_intro .product_data_shelf .product_data_label::before {mask-image:url(../images/product-page/intro-calendar.svg);}
#product_intro .product_ingredients_label::before {mask-image:url(../images/product-page/intro-capsule.svg);}
#product_intro #product_purity::before {mask-image:url(../images/product-page/intro-shield.svg);}


/* product image swipe gallery */
#product_intro #product_image.swiper {min-width:0; overflow:hidden; touch-action:pan-y; width:100%;}
#product_intro #product_image .swiper-wrapper {align-items:stretch;}
#product_intro #product_image .swiper-slide {flex-shrink:0; height:auto;}
#product_intro #product_image .swiper-slide img {aspect-ratio:1; display:block; height:auto; object-fit:contain; user-select:none; width:100%; -webkit-user-drag:none;}
/* thumbnail controls */
#product_intro #product_thumbs_cont .product_thumbs {cursor:pointer;}
#product_intro #product_thumbs_cont .product_thumbs:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}


/* DESCRIPTION */

/* description layout */
#product_what_white, #product_what_white *, #product_what_white *::before, #product_what_white *::after {box-sizing:border-box;}
#product_what_white {background:#fff; clear:both; color:#292331; font-family:"Inter", Inter, Arial, sans-serif; margin:0; padding:36px 0; width:100%;}
#product_what_white #product_what_bg {align-items:start; background:none; display:grid; gap:36px; grid-template-columns:210px minmax(0, 1fr); margin:0 auto; max-width:1100px; padding:30px !important; width:100%;}
#product_what_white #product_what {background:none; float:none; margin:0; min-width:0; padding:0 !important; width:100% !important;}
/* product image */
#product_what_white #product_what_bg::before {background-color:#f4f0f8; background-position:center; background-repeat:no-repeat; background-size:calc(100% - 36px) auto; border-radius:13px; content:""; display:block; min-height:240px; width:100%;}
#product_description_apigenin #product_what_bg::before {background-image:url(../images/product-page/capsules/apigenin.png);}
#product_description_ashwagandha #product_what_bg::before {background-image:url(../images/product-page/capsules/ashwagandha.png);}
#product_description_berberine #product_what_bg::before {background-image:url(../images/product-page/capsules/berberine.png);}
#product_description_biotin #product_what_bg::before {background-image:url(../images/product-page/capsules/biotin.png);}
#product_description_coenzyme-q10 #product_what_bg::before {background-image:url(../images/product-page/capsules/coenzyme-q10.png);}
#product_description_collagen #product_what_bg::before {background-image:url(../images/product-page/capsules/collagen.png);}
#product_description_creatine #product_what_bg::before {background-image:url(../images/product-page/capsules/creatine.png);}
#product_description_fucoidan-capsules #product_what_bg::before {background-image:url(../images/product-page/capsules/fucoidan.png);}
#product_description_glycine-nac #product_what_bg::before {background-image:url(../images/product-page/capsules/glycine-nac.png);}
#product_description_l-glutamine #product_what_bg::before {background-image:url(../images/product-page/capsules/l-glutamine.png);}
#product_description_l-theanine #product_what_bg::before {background-image:url(../images/product-page/capsules/l-theanine.png);}
#product_description_lions-mane #product_what_bg::before {background-image:url(../images/product-page/capsules/lions-mane.png);}
#product_description_magnesium-glycinate #product_what_bg::before {background-image:url(../images/product-page/capsules/magnesium-glycinate.png);}
#product_description_magnesium-l-threonate #product_what_bg::before {background-image:url(../images/product-page/capsules/magnesium-l-threonate.png);}
#product_description_magnesium-oxide #product_what_bg::before {background-image:url(../images/product-page/capsules/magnesium-oxide.png);}
#product_description_melatonin #product_what_bg::before {background-image:url(../images/product-page/capsules/melatonin.png);}
#product_description_nac #product_what_bg::before {background-image:url(../images/product-page/capsules/nac.png);}
#product_description_nad #product_what_bg::before {background-image:url(../images/product-page/capsules/nad.png);}
#product_description_nicotinamide #product_what_bg::before {background-image:url(../images/product-page/capsules/nicotinamide.png);}
#product_description_nmn-capsules #product_what_bg::before {background-image:url(../images/product-page/capsules/nmn.png);}
#product_description_nmn-powder #product_what_bg::before {background-image:url(../images/product-page/capsules/nmn.png);}
#product_description_quercetin #product_what_bg::before {background-image:url(../images/product-page/capsules/quercetin.png);}
#product_description_resveratrol-capsules #product_what_bg::before {background-image:url(../images/product-page/capsules/resveratrol.png);}
#product_description_sea-moss #product_what_bg::before {background-image:url(../images/product-page/capsules/sea-moss.png);}
#product_description_spermidine #product_what_bg::before {background-image:url(../images/product-page/capsules/spermidine.png);}
#product_description_spirulina #product_what_bg::before {background-image:url(../images/product-page/capsules/spirulina.png);}
#product_description_tmg-capsules #product_what_bg::before {background-image:url(../images/product-page/capsules/tmg.png);}
#product_description_vitamin-b12 #product_what_bg::before {background-image:url(../images/product-page/capsules/vitamin-b12.png);}
#product_description_vitamin-c #product_what_bg::before {background-image:url(../images/product-page/capsules/vitamin-c.png);}
#product_description_vitamin-d3 #product_what_bg::before {background-image:url(../images/product-page/capsules/vitamin-d3.png);}
#product_description_vitamin-d3-k2-magnesium #product_what_bg::before {background-image:url(../images/product-page/capsules/vitamin-d3-k2-magnesium.png);}
#product_description_vitamin-e #product_what_bg::before {background-image:url(../images/product-page/capsules/vitamin-e.png);}
#product_description_zinc-glycinate #product_what_bg::before {background-image:url(../images/product-page/capsules/zinc-glycinate.png);}
/* heading */
#product_what_white #product_what h2 {color:#292331; font-family:inherit; font-size:27px; font-weight:600; letter-spacing:-.025em; line-height:1.2; margin:0 0 14px; padding:0; text-align:left !important;}
#product_what_white #product_what h2::before {color:#887298; content:"A CLOSER LOOK"; display:block; font-size:10px; font-weight:650; letter-spacing:.16em; line-height:1.5; margin:0 0 10px;}
/* description text */
#product_what_white .product_what_description {color:#625d67; font-size:15px; font-weight:400; line-height:1.65; margin:0; max-width:75ch; padding:0; text-align:left;}
#product_what_white .product_what_description p {color:inherit; font-family:inherit; font-size:inherit; font-weight:inherit; line-height:inherit; margin:0 0 13px; padding:0;}
#product_what_white .product_what_description p:last-child {margin-bottom:0;}
/* expandable science panel */
#product_what_white .product_what_science {background:#fcfbfd; border:1px solid #e6dfec; border-radius:9px; margin:19px 0 0; padding:0 15px;}
#product_what_white .product_what_science > summary {align-items:center; background:none; border:0; color:#674481; cursor:pointer; display:flex; font-family:inherit; font-size:14px; font-weight:650; gap:20px; justify-content:space-between; line-height:1.4; list-style:none; margin:0; padding:14px 0; text-align:left; text-decoration:none;}
#product_what_white .product_what_science > summary::-webkit-details-marker {display:none;}
#product_what_white .product_what_science > summary::after {content:"+"; flex:0 0 20px; font-size:26px; font-weight:400; line-height:1; text-align:center;}
#product_what_white .product_what_science[open] > summary::after {content:"−";}
#product_what_white .product_what_science > summary:focus-visible {border-radius:4px; outline:2px solid #8424d8; outline-offset:4px;}
#product_what_white .product_what_science > .product_what_description {max-width:none; padding:0 0 16px;}

/* COMPARISON */

/* comparison section */
#products_comparison_cont, #products_comparison_cont *, #products_comparison_cont *::before {box-sizing:border-box;}
#products_comparison_cont {background:#fff; clear:both; color:#292331; font-family:"Inter", Inter, Arial, sans-serif; margin:0; padding:48px 24px; width:100%;}
#products_comparison_header {align-items:center; column-gap:64px; display:grid; grid-template-columns:minmax(0, 1.65fr) minmax(0, 1fr); margin:0 auto 48px; max-width:1200px; padding:12px 0; width:100%;}

#products_comparison_title {min-width:0;}
#products_comparison_cont #products_comparison_eyebrow {color:#7a7086; font-family:inherit; font-size:12px; font-weight:650; letter-spacing:.19em; line-height:1.5; margin:0 0 8px; padding:0; text-align:left;}
#products_comparison_cont #products_comparison_heading {color:#252131; font-family:inherit; font-size:clamp(40px, 4.5vw, 64px); font-weight:650; letter-spacing:-.05em; line-height:1.15; margin:0; padding:0; text-align:left;}
#products_comparison_cont #products_comparison_heading em {color:#8117f5; font-family:Georgia, "Times New Roman", serif; font-size:1.1em; font-style:italic; font-weight:400; letter-spacing:-.055em;}

#products_comparison_intro {border-left:2px solid #e8ddf3; justify-self:end; max-width:400px; min-width:0; padding:4px 0 4px 24px; width:100%;}
#products_comparison_cont #products_comparison_intro h3 {color:#302738; font-family:inherit; font-size:18px; font-weight:600; letter-spacing:-.02em; line-height:1.4; margin:0 0 8px; padding:0; text-align:left;}
#products_comparison_cont #products_comparison_intro p {color:#756b80; font-family:inherit; font-size:16px; font-weight:400; letter-spacing:0; line-height:1.65; margin:0; padding:0; text-align:left;}

#products_comparison_cont #products_comparison {background:#ffffff; border:1px solid #e6daf2; border-radius:20px; display:block; float:none; margin:0 auto; max-width:1200px; overflow:hidden; padding:0; width:100%;}

/* table layout */
#products_comparison .comparison_table {background:transparent; border:0; border-collapse:separate; border-spacing:0; color:inherit; display:table; font-family:inherit; margin:0; table-layout:fixed; width:100%;}
#products_comparison .comparison_table thead {display:table-header-group;}
#products_comparison .comparison_table tbody {display:table-row-group;}
#products_comparison .comparison_table tr {background:transparent; display:table-row;}
#products_comparison .comparison_feature_column {width:40%;}
#products_comparison .comparison_value_column {width:30%;}
#products_comparison .comparison_table th, #products_comparison .comparison_table td {background:#fff; border:0; color:#655e70; display:table-cell; float:none; font-size:15px; font-weight:400; line-height:1.5; padding:18px 24px; text-align:center; vertical-align:middle; white-space:normal;}
#products_comparison .comparison_table .comparison_longevity {background:#ecfff3; color:#087f47; font-weight:650;}
/* column headings */
#products_comparison .comparison_table thead th {height:220px; padding:28px 24px;}
#products_comparison .comparison_table thead th:first-child {text-align:left;}
#products_comparison .comparison_kicker {color:#655e70; display:block; font-size:13px; font-weight:650; letter-spacing:.14em;}
#products_comparison .comparison_brand {color:#292331; display:block; font-size:20px; font-weight:700; line-height:32px;}
/* product images and logo */
#products_comparison .comparison_table .comparison_bottle {border:0; display:block; float:none; height:100px; margin:0 auto 24px; max-height:100px; max-width:100%; object-fit:contain; padding:0; width:100px;}
#products_comparison .comparison_table .comparison_logo {border:0; display:block; float:none; height:auto; margin:0 auto; max-height:none; max-width:100%; object-fit:contain; padding:0; width:150px;}
/* comparison rows */
#products_comparison .comparison_table tbody th, #products_comparison .comparison_table tbody td {border-top:1px solid #eee6f5; transition:background-color .18s ease;}
#products_comparison .comparison_table tbody tr:first-child th, #products_comparison .comparison_table tbody tr:first-child td {border-top:0;}
#products_comparison .comparison_table tbody th {color:#292331; font-weight:600; text-align:left;}
#products_comparison .comparison_feature {align-items:center; display:flex; gap:14px;}
/* feature icons */
#products_comparison .comparison_icon {background:#887298; display:block; flex:0 0 22px; height:22px; mask-image:url(../images/product-page/intro-shield.svg); mask-position:center; mask-repeat:no-repeat; mask-size:contain; width:22px;}
#products_comparison .comparison_capsule_size .comparison_icon, #products_comparison .comparison_capsules .comparison_icon {mask-image:url(../images/product-page/intro-capsule.svg);}
#products_comparison .comparison_cost_serving .comparison_icon {mask-image:url(../images/product-page/intro-sun.svg);}
#products_comparison .comparison_party_testing .comparison_icon {mask-image:url(../images/product-page/intro-report.svg);}
#products_comparison .comparison_free_delivery .comparison_icon {mask-image:url(../images/product-page/intro-truck.svg);}
#products_comparison .comparison_insurance .comparison_icon {mask-image:url(../images/product-page/intro-location.svg);}
#products_comparison .comparison_country_manufacture .comparison_icon {mask-image:url(../images/product-page/intro-nz.svg);}
#products_comparison .comparison_artificial_colours .comparison_icon {mask-image:url(../images/product-page/intro-check.svg);}
/* whole row hover */
@media (hover:hover) {
#products_comparison .comparison_table tbody tr:hover > th, #products_comparison .comparison_table tbody tr:hover > td {background-color:#f8f3fc;}
#products_comparison .comparison_table tbody tr:hover > .comparison_longevity {background-color:#dcf8e7;}
}

/* USPs */

/* quality cards layout */
#products_usps_cont, #products_usps_cont *, #products_usps_cont *::before {box-sizing:border-box;}
#products_usps_cont {align-items:stretch; background:#fff; clear:both; color:#292331; display:grid; font-family:"Inter", Inter, Arial, sans-serif; gap:22px; grid-template-columns:repeat(3, minmax(0, 1fr)); margin:0 auto; max-width:1248px; padding:48px 24px !important; width:100%;}
#products_usps_cont > .clr {display:none;}
/* individual cards */
#products_usps_cont #products_purity, #products_usps_cont #products_nz, #products_usps_cont #products_gmp {background:#fff; border:1px solid #e6daf2; border-radius:20px !important; display:flex; flex-direction:column; float:none !important; margin:0 !important; min-width:0; overflow:hidden; padding:0 28px 30px; position:relative; transition:box-shadow .2s ease, transform .2s ease; width:auto !important;}
/* card images and fade */
#products_usps_cont #products_purity::before, #products_usps_cont #products_nz::before, #products_usps_cont #products_gmp::before {aspect-ratio:1.45; background-position:center; background-repeat:no-repeat; background-size:cover; content:""; display:block; flex-shrink:0; margin:0 -28px; width:calc(100% + 56px);}
#products_usps_cont #products_purity::before {background-image:linear-gradient(to bottom, transparent 65%, #fff 100%), url(../images/products-purity.jpg);}
#products_usps_cont #products_nz::before {background-image:linear-gradient(to bottom, transparent 65%, #fff 100%), url(../images/products-nz.jpg);}
#products_usps_cont #products_gmp::before {background-image:linear-gradient(to bottom, transparent 65%, #fff 100%), url(../images/products-gmp.jpg);}
/* card headings */
#products_usps_cont #products_purity h3, #products_usps_cont #products_nz h3, #products_usps_cont #products_gmp h3 {color:#211c28; font-family:inherit; font-size:27px; font-weight:700; letter-spacing:-.035em; line-height:1.2; margin:0 0 20px; padding:0; text-align:left;}
/* card descriptions */
#products_usps_cont #products_purity_text, #products_usps_cont #products_nz_text, #products_usps_cont #products_gmp_text {color:#655e70; font-family:inherit; font-size:15px; font-weight:400; height:auto !important; line-height:1.65; margin:0 0 26px; padding:0; text-align:left;}
/* purple labels */
#products_usps_cont #products_purity_benefit, #products_usps_cont #products_nz_benefit, #products_usps_cont #products_gmp_benefit {margin: auto 0 0 !important; padding:0;}
#products_usps_cont #products_purity_benefit p, #products_usps_cont #products_nz_benefit p, #products_usps_cont #products_gmp_benefit p {background:#9019ff; border:0; border-radius:7px; color:#fff; display:inline-block; font-family:inherit; font-size:12px; font-weight:700; line-height:1.5; margin:0; padding:9px 12px;}
/* card hover */
@media (hover:hover) {
#products_usps_cont #products_purity:hover, #products_usps_cont #products_nz:hover, #products_usps_cont #products_gmp:hover {box-shadow:0 16px 35px rgba(48, 29, 68, .08); transform:translateY(-6px);}
}
/* smaller desktop and tablet */
@media (max-width:1000px) {
#products_usps_cont {gap:16px;}
#products_usps_cont #products_purity, #products_usps_cont #products_nz, #products_usps_cont #products_gmp {padding:0 20px 24px;}
#products_usps_cont #products_purity::before, #products_usps_cont #products_nz::before, #products_usps_cont #products_gmp::before {margin:0 -20px; width:calc(100% + 40px);}
#products_usps_cont #products_purity h3, #products_usps_cont #products_nz h3, #products_usps_cont #products_gmp h3 {font-size:23px;}
}
/* mobile */
@media (max-width:700px) {
#products_usps_cont {gap:24px; grid-template-columns:minmax(0, 1fr); padding:32px 18px !important;}
#products_usps_cont #products_purity::before, #products_usps_cont #products_nz::before, #products_usps_cont #products_gmp::before {aspect-ratio:1.65;}
#products_usps_cont #products_purity h3, #products_usps_cont #products_nz h3, #products_usps_cont #products_gmp h3 {font-size:26px;}
}
/* reduced motion */
@media (prefers-reduced-motion:reduce) {
#products_usps_cont #products_purity, #products_usps_cont #products_nz, #products_usps_cont #products_gmp {transform:none; transition:none;}
}


/* LABS */

.products_lab_button {align-items:center; background:#8019ef; border:0; border-radius:30px; color:#fff; display:inline-flex; font-family:Arial, sans-serif; font-size:15px; font-weight:600; gap:22px; justify-content:center; line-height:1.4; margin-top:27px; padding:15px 24px; text-decoration:none; transition:background .2s ease; white-space:nowrap;}
.products_lab_button img, .products_lab_button > span {display:none;}
.products_lab_button::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-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
.products_lab_button:hover, .products_lab_button:focus-visible {background:#6816bc; color:#fff; transform:none;}
.products_lab_button:hover::after, .products_lab_button:focus-visible::after {transform:translateX(6px);}
.products_lab_button:focus-visible {outline:3px solid #242333; outline-offset:4px;}

.products_lab_document {align-items:center; color:#39294b; display:flex; flex-direction:column; gap:19px; padding:0; position:relative;}
.products_lab_document:hover .home_lab_certificate {transform:rotate(0);}
.products_lab_document > span {align-items:center; color:#755b87; display:flex; font-size:13px; font-weight:600; gap:8px; line-height:1.65;}
.products_lab_document > span img {flex-shrink:0; height:18px; width:18px;}


/* 3RD PARTY REPORT */
/* laboratory report popup */
#products_third_cont, #products_third_cont * {box-sizing:border-box;}
#products_third_cont {background:#fff; border:1px solid #dde3e9; border-radius:16px; bottom:0; box-shadow:0 24px 80px #17212f38; color:#263445; display:none; font-family:"Inter", Inter, Arial, sans-serif; height:90vh; height:90dvh; left:0; margin:auto; max-height:calc(100dvh - 32px); max-width:calc(100vw - 32px); overflow:hidden; padding:0; position:fixed; right:0; top:0; width:960px;}
#products_third_cont[open] {display:flex; flex-direction:column;}
#products_third_cont::backdrop {backdrop-filter:blur(4px); background:#17212f99;}
/* popup header */
#products_third_cont .products_third_header {align-items:center; background:#fff; border-bottom:1px solid #e1e6ec; display:flex; flex:0 0 auto; gap:24px; justify-content:space-between; margin:0; padding:20px 24px; width:100%;}
#products_third_cont .products_third_heading {min-width:0;}
#products_third_cont .products_third_heading p {color:#67788a; font-size:10px; font-weight:700; letter-spacing:.14em; line-height:1.5; margin:0 0 6px; padding:0;}
#products_third_cont #products_third_title {color:#263445; font-family:inherit; font-size:20px; font-weight:600; letter-spacing:-.025em; line-height:1.3; margin:0; overflow-wrap:anywhere; padding:0; text-align:left;}
/* close button */
#products_third_cont #products_third_close {align-items:center; appearance:none; background:#f3f5f7; border:1px solid #e1e6ec; border-radius:50%; color:#4b5a6b; cursor:pointer; display:flex; flex:0 0 44px; height:44px; justify-content:center; line-height:1; margin:0 0 0 auto; padding:0; position:static; transition:background-color .18s ease, border-color .18s ease; width:44px;}
#products_third_cont #products_third_close svg {display:block; fill:none; height:20px; margin:0; pointer-events:none; stroke:currentColor; stroke-linecap:round; stroke-width:1.8; width:20px;}
#products_third_cont #products_third_close:hover {background:#e8edf2; border-color:#c5d0db;}
#products_third_cont #products_third_close:focus-visible {outline:2px solid #7751a8; outline-offset:3px;}
/* report document */
#products_third_cont .products_third_body {background:#eef1f4; flex:1 1 auto; min-height:0; overflow:auto; overscroll-behavior:contain; padding:28px; scrollbar-gutter:stable;}
#products_third_cont .products_third_body img {background:#fff; border:1px solid #e1e6ec; box-shadow:0 3px 14px #2634450d; display:block; height:auto; margin:0 auto; max-width:820px; padding:0; width:100%;}
/* prevent background scrolling */
html:has(#products_third_cont[open]), body:has(#products_third_cont[open]) {overflow:hidden;}
/* report triggers */
.products_lab_button, .products_lab_document, .products_third, #products_third {cursor:pointer;}
/* reduced motion */
@media (prefers-reduced-motion:reduce) {
#products_third_cont #products_third_close {transition:none;}
}


/* GUARANTEE */

#products_guarantee_bg, #products_guarantee_bg * {box-sizing:border-box;}
#products_guarantee_bg {background:#ffffff; clear:both; color:#222b29; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; line-height:1.65; margin:0; padding:64px 24px; width:100%;}
#products_guarantee {align-items:center; column-gap:60px; display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); margin:0 auto; max-width:1200px; row-gap:44px; width:100%;}
#products_guarantee_heading {color:#222b29; font-family:inherit; font-size:40px; font-weight:700; letter-spacing:-.035em; line-height:1.15; margin:0; padding:0; text-align:left;}
#products_guarantee_text {color:#68716e; font-family:inherit; font-size:16px; font-weight:400; line-height:1.75; margin:0; padding:0; text-align:left;}

#products_guarantee_boxes {align-items:stretch; column-gap:42px; display:grid; grid-column:1 / -1; grid-template-areas:"satisfaction delivery" "satisfaction purity" "satisfaction insured"; grid-template-columns:minmax(0, .95fr) minmax(0, 1.8fr); grid-template-rows:repeat(3, minmax(104px, 1fr)); margin:0; padding:0; width:100%;}
#products_guarantee_boxes .products_guarantee_box {background-color:transparent; background-position:0 26px; background-repeat:no-repeat; background-size:36px 36px; border:0; border-radius:0; display:flex; flex-direction:column; justify-content:center; margin:0; min-width:0; padding:22px 0 22px 66px; width:auto;}
#products_guarantee_boxes .products_guarantee_title {color:#222b29; font-family:inherit; font-size:22px; font-weight:650; letter-spacing:-.025em; line-height:1.3; margin:0 0 8px; padding:0; text-align:left;}
#products_guarantee_boxes .products_guarantee_description {color:#68716e; font-family:inherit; font-size:16px; font-weight:400; line-height:1.65; margin:0; padding:0; text-align:left;}

#products_guarantee_delivery {background-image:url("../images/products-guarantee-delivery.png"); grid-area:delivery;}
#products_guarantee_purity {background-image:url("../images/products-guarantee-purity.png"); grid-area:purity;}
#products_guarantee_insured {background-image:url("../images/products-guarantee-tracked.png"); grid-area:insured;}
#products_guarantee_boxes #products_guarantee_purity, #products_guarantee_boxes #products_guarantee_insured {border-top:1px solid #dce6e0;}

#products_guarantee_boxes #products_guarantee_satisfaction {align-items:center; background:#075b45; border:0; border-radius:48px 8px 48px 8px; color:#ffffff; grid-area:satisfaction; justify-content:center; padding:32px 24px; text-align:center;}
#products_guarantee_satisfaction .products_guarantee_number {color:#ffffff; display:block; font-size:120px; font-weight:700; letter-spacing:-.07em; line-height:1; margin:0; padding:0;}
#products_guarantee_satisfaction .products_guarantee_days {color:#b8e5d3; display:block; font-size:15px; font-weight:650; letter-spacing:.22em; line-height:1.4; margin:10px 0 0; padding:0; text-align:center;}
#products_guarantee_satisfaction .products_guarantee_title {color:#ffffff; font-size:24px; font-weight:700; letter-spacing:-.025em; line-height:1.3; margin:24px 0 16px; text-align:center;}
#products_guarantee_satisfaction .products_guarantee_description {color:#e0f0e8; text-align:center;}


/* CUSTOMERS */

#products_customers_bg, #products_customers_bg * {box-sizing:border-box;}
#products_customers_bg {background:#ffffff; clear:both; color:#222b29; font-family:"Inter", Inter, Arial, sans-serif; font-size:17px; font-weight:400; line-height:1.75; margin:0; padding:64px 24px; width:100%;}
#products_customers {align-items:stretch; column-gap:52px; display:grid; grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr); margin:0 auto; max-width:1200px; width:100%;}
#products_customers_heading {color:#222b29; font-family:inherit; font-size:40px; font-weight:700; grid-column:1 / -1; letter-spacing:-.035em; line-height:1.15; margin:0 0 44px; padding:0; text-align:left;}

#products_customers .products_customers_card {background:transparent; border:0; border-radius:0; display:flex; flex-direction:column; justify-content:center; margin:0; min-width:0; padding:28px 0;}
#products_customers .products_customers_text {color:#5f6965; font-family:inherit; font-size:17px; font-weight:400; line-height:1.75; margin:0; padding:0; text-align:left;}
#products_customers .products_customers_person {align-items:center; display:flex; gap:14px; margin:24px 0 0; padding:0;}
#products_customers .products_customers_photo {background-color:#eceee9; background-position:center; background-repeat:no-repeat; background-size:cover; border:0; border-radius:50%; display:block; flex:0 0 44px; height:44px; margin:0; padding:0; width:44px;}
#products_customers .products_customers_name {color:#29332f; font-family:inherit; font-size:16px; font-weight:650; line-height:1.4; margin:0; padding:0; text-align:left;}

#products_customers #products_customers_1 {background:#fff7e8; border-radius:0 64px 0 0; grid-column:1; grid-row:2 / span 2; justify-content:flex-start; padding:44px 40px;}
#products_customers_1 .products_customers_quote {color:#bd873d; display:block; font-family:Georgia, "Times New Roman", serif; font-size:96px; font-weight:700; line-height:.8; margin:0 0 36px; padding:0;}
#products_customers_1 .products_customers_text {color:#423b2f; font-size:24px; line-height:1.55;}
#products_customers_1 .products_customers_person {margin-top:34px;}
#products_customers_1 .products_customers_photo {background-image:url("../images/products-customer1.jpg");}

#products_customers #products_customers_2 {grid-column:2; grid-row:2;}
#products_customers_2 .products_customers_photo {background-image:url("../images/products-customer2.jpg");}

#products_customers #products_customers_3 {border-top:1px solid #dce2de; grid-column:2; grid-row:3;}
#products_customers_3 .products_customers_photo {background-image:url("../images/products-customer3.jpg");}


/* PRODUCTS VALUE */

#products_value_bg, #products_value_bg *, #products_value_bg *::before {box-sizing:border-box;}
#products_value_bg {background:#ffffff; clear:both; color:#292331; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; line-height:1.65; margin:0; padding:64px 24px; width:100%;}
#products_value {margin:0 auto; max-width:1200px; width:100%;}

/* Background and introduction */

#products_value_banner {align-items:start; background:#183748 url("../images/products-value.jpg") center center / cover no-repeat; border-radius:24px; column-gap:36px; display:grid; grid-template-columns:minmax(0, 1fr) 210px; overflow:hidden; padding:48px; position:relative; row-gap:54px;}
#products_value_text {border-radius:16px; color:#ffffff; isolation:isolate; max-width:670px; padding:24px; position:relative; width:100%;}
#products_value_text::before {background:#0b1d28; border-radius:inherit; content:""; inset:0; opacity:.65; pointer-events:none; position:absolute; z-index:-1;}
#products_value_heading {color:#ffffff; font-family:inherit; font-size:40px; font-weight:700; letter-spacing:-.035em; line-height:1.15; margin:0 0 24px; padding:0; text-align:left;}
#products_value_text .products_value_description {color:#ffffff; font-family:inherit; font-size:16px; font-weight:400; line-height:1.75; margin:0 0 20px; padding:0; text-align:left;}
#products_value_text .products_value_description:last-child {margin-bottom:0;}

/* Savings badge */

#products_value_saving {align-items:center; align-self:start; background:#9019ff; border-radius:20px; color:#ffffff; display:flex; flex-direction:column; gap:10px; justify-content:center; margin:72px 0 0; padding:26px 20px; text-align:center; width:100%;}
#products_value_saving .products_value_saving_text {color:#ffffff; font-family:inherit; font-size:14px; font-weight:500; line-height:1.45; margin:0; padding:0;}
#products_value_saving .products_value_saving_number {color:#ffffff; font-family:inherit; font-size:58px; font-weight:700; letter-spacing:-.04em; line-height:1; margin:0; padding:0;}

/* Comparison cards */

#products_value_boxes {align-items:stretch; display:grid; gap:42px; grid-column:1 / -1; grid-template-columns:repeat(2, minmax(0, 1fr)); margin:0; padding:0; position:relative;}
#products_value_boxes .products_value_box {align-items:center; background:#ffffff; border:0; border-radius:16px; column-gap:20px; display:grid; grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr); margin:0; min-height:160px; min-width:0; padding:36px 24px 24px; position:relative;}
#products_value_boxes .products_value_box_heading {font-family:Georgia; font-style: italic; font-size:20px; font-weight:400; left:50%; line-height:1.25; margin:0; padding:0; position:absolute; text-align:center; top:0; transform:translate(-50%, -50%); white-space:nowrap;}
#products_value_boxes .products_value_box_heading span {border-radius:4px; color:#ffffff; display:inline-block; padding:8px 16px;}
#products_value_box_competition .products_value_box_heading span {background:#526772;}
#products_value_box_longevity .products_value_box_heading span {background:#00b965;}

/* Bottles and quantities */

#products_value_boxes .products_value_box_capsules {align-content:center; column-gap:14px; display:grid; grid-template-columns:70px minmax(0, 1fr); grid-template-rows:auto auto; margin:0; min-height:100px; min-width:0; padding:0; row-gap:4px;}
#products_value_boxes .products_value_bottle {align-self:center; border:0; display:block; grid-row:1 / span 2; height:100px; margin:0; max-width:100%; object-fit:contain; padding:0; width:70px;}
#products_value_boxes .products_value_box_capsules_no {align-self:end; color:#211b29; font-family:inherit; font-size:28px; font-weight:700; letter-spacing:-.035em; line-height:1.15; margin:0; padding:0; white-space:nowrap;}
#products_value_boxes .products_value_box_capsules_caps {align-self:start; color:#655e70; font-family:inherit; font-size:16px; font-weight:400; line-height:1.4; margin:0; padding:0;}

/* Comparison points */

#products_value_boxes .products_value_box_points {display:grid; gap:10px; list-style:none; margin:0; min-width:0; padding:0;}
#products_value_boxes .products_value_box_points li {background-position:0 4px; background-repeat:no-repeat; background-size:16px 16px; color:#655e70; font-family:inherit; font-size:16px; font-weight:400; line-height:1.45; list-style:none; margin:0; padding:0 0 0 24px;}
#products_value_box_competition .products_value_box_points li {background-image:url("../images/products-vs-others.png");}
#products_value_box_longevity .products_value_box_points li {background-image:url("../images/products-vs-longevity.png");}
#products_value_vs {align-items:center; background:#685bc7; border-radius:50%; color:#ffffff; display:flex; font-size:22px; font-weight:500; height:52px; justify-content:center; left:50%; line-height:1; margin:0; padding:0; position:absolute; text-align:center; top:50%; transform:translate(-50%, -50%); width:52px; z-index:2;}

/* Benefits underneath */

#products_value_summary {display:grid; gap:26px; grid-template-columns:repeat(4, minmax(0, 1fr)); margin:64px 0 0; padding:0;}
#products_value_summary .products_value_summary_box {align-items:start; column-gap:14px; display:grid; grid-template-columns:44px minmax(0, 1fr); margin:0; min-width:0; padding:0;}
#products_value_summary .products_value_summary_icon {background-color:#edfff3; background-position:center; background-repeat:no-repeat; background-size:30px 30px; border:1px solid #28d268; border-radius:50%; height:44px; margin:0; padding:0; width:44px;}
#products_value_summary .products_value_summary_text {margin:0; min-width:0; padding:0;}
#products_value_summary .products_value_summary_text h4 {color:#8019ef; font-family:inherit; font-size:16px; font-weight:650; letter-spacing:-.02em; line-height:1.3; margin:0 0 8px; padding:0;}
#products_value_summary .products_value_summary_text p {color:#655e70; font-family:inherit; font-size:14px; font-weight:400; line-height:1.55; margin:0; padding:0;}
#products_value_summary_prices .products_value_summary_icon {background-image:url("../images/products-summary-prices.png");}
#products_value_summary_quality .products_value_summary_icon {background-image:url("../images/products-summary-quality.png");}
#products_value_summary_benefits .products_value_summary_icon {background-image:url("../images/products-summary-bulk.png");}
#products_value_summary_save .products_value_summary_icon {background-image:url("../images/products-summary-save.png");}


/* FAQ */

#products_faq, #products_faq * {box-sizing:border-box;}
#products_faq {align-items:start; background:#ffffff; clear:both; color:#211b29; column-gap:64px; display:grid; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; grid-template-columns:280px minmax(0, 1fr); line-height:1.65; margin:0 auto; max-width:1248px; padding:64px 24px; width:100%;}
#products_faq > .clr, #products_faq_list .clr {display:none;}

/* Left heading */

#products_faq_heading {float:none; margin:0; min-width:0; padding:0; width:auto;}
#products_faq_heading #products_faq_eyebrow {color:#9019ff; font-family:inherit; font-size:12px; font-weight:650; letter-spacing:.16em; line-height:1.4; margin:0 0 18px; padding:0;}
#products_faq_heading h2 {color:#211b29; font-family:inherit; font-size:36px; font-weight:700; letter-spacing:-.035em; line-height:1.2; margin:0; padding:0; text-align:left;}
#products_faq_heading #products_faq_intro {color:#655e70; font-family:inherit; font-size:16px; font-weight:400; line-height:1.65; margin:26px 0 24px; padding:0;}
#products_faq_contact {align-items:center; border-bottom:1px solid currentColor; color:#8019ef; display:inline-flex; font-family:inherit; font-size:14px; font-weight:500; gap:6px; line-height:1.5; margin:0; padding:0 0 6px; text-decoration:none;}
#products_faq_contact span {display:inline-block; font-size:16px; line-height:1;}
#products_faq_contact:hover {color:#6413bc;}
#products_faq_contact:focus-visible {outline:2px solid #8019ef; outline-offset:5px;}

/* Question cards */

#products_faq_list {display:grid; float:none; gap:12px; list-style:none; margin:0; min-width:0; padding:0; width:auto;}
#products_faq_list .products_faq_list {align-items:start; background:#ffffff; border:1px solid #e7d9fb; border-radius:14px; column-gap:20px; cursor:pointer; display:grid; grid-template-columns:minmax(0, 1fr) 18px; list-style:none; margin:0; min-width:0; padding:24px; transition:background-color .18s ease, border-color .18s ease;}
#products_faq_list .products_faq_list_text {float:none; margin:0; min-width:0; padding:0; width:auto;}
#products_faq_list .products_faq_list_text h3 {color:#292331; font-family:inherit; font-size:17px; font-weight:650; letter-spacing:-.015em; line-height:1.4; margin:0; padding:0;}
#products_faq_list .products_faq_list_icon {color:#9019ff; float:none; font-family:inherit; font-size:24px; font-weight:500; line-height:24px; margin:0; padding:0; text-align:center; width:18px;}

/* Answers */

#products_faq_list .products_faq_list_text p {color:#655e70; display:none; font-family:inherit; font-size:15px; font-weight:400; line-height:1.75; margin:0; padding:20px 0 0;}
#products_faq_list .products_faq_list_text p a {color:#8019ef; text-decoration:underline; text-underline-offset:3px;}
#products_faq_list .products_faq_list.faq_open {background:#fcf9ff; border-color:#cba6f5;}

/* Hover and motion */

@media (hover:hover) and (pointer:fine) {
  #products_faq_list .products_faq_list:hover {border-color:#cba6f5;}
}
@media (prefers-reduced-motion:reduce) {
  #products_faq_list .products_faq_list {transition:none;}
}

/* RECOMMENDED */

/* Recommended products: softer typography and feathered carousel edges. */
#products_recommended_cont {box-sizing:border-box; margin:0 auto; max-width:1400px; padding:56px 0 0;}
#products_recommended_cont h2 {color:#292331; font-family:inherit; font-size:clamp(28px, 3vw, 38px); font-weight:550; letter-spacing:-.04em; line-height:1.2; margin:0; padding:0 12px 26px;}
#products_recommended_scroll {position:relative; isolation:isolate;}
#products_recommended {box-sizing:border-box; height:auto; overflow-x:auto; overflow-y:hidden; padding:14px 0 24px; scrollbar-width:thin; scrollbar-color:#c6b5d7 #f5f1f8; white-space:nowrap; width:100%;}
#products_recommended::-webkit-scrollbar {background-color:#f5f1f8; height:5px;}
#products_recommended::-webkit-scrollbar-thumb {background-color:#c6b5d7; border-radius:3px;}
#products_recommended_scroll > .home_products_fade_left,
#products_recommended_scroll > .home_products_fade_right {position:absolute; top:0; bottom:12px; width:clamp(24px, 4.5vw, 72px); z-index:2; pointer-events:none;}
#products_recommended_scroll > .home_products_fade_left {left:0; background:linear-gradient(90deg, #fff 0%, rgba(255,255,255,.88) 18%, rgba(255,255,255,0) 100%);}
#products_recommended_scroll > .home_products_fade_right {right:0; background:linear-gradient(270deg, #fff 0%, rgba(255,255,255,.88) 18%, rgba(255,255,255,0) 100%);}
@media (max-width:600px) {
  #products_recommended_cont {padding-top:36px;}
  #products_recommended_cont h2 {padding:0 16px 20px; font-size:28px; letter-spacing:-.035em;}
  #products_recommended_scroll > .home_products_fade_left,
  #products_recommended_scroll > .home_products_fade_right {width:24px;}
}


/* REVIEWS */

#products_review_bg {background:#fff; padding:50px 0;}
#products_review_cont {margin:0 auto; padding:40px 0; max-width:1400px;}

/* average reviews */
#product_ratings_cont {box-sizing:border-box; float:left; padding-left:20px; width:500px;}
#product_ratings_cont h2 {color:#000; font-size:40px; font-weight:500; padding-bottom:20px;}
#product_average_rating_score {color:#000; float:left; font-size:30px; font-weight:bold; padding-right:10px;}

/* average stars */
#product_average_stars {float:left;}
#product_avg_rating_stars .product_star {background:url(../images/star-filled.svg) no-repeat 0px 3px; background-size:30px 30px; display:inline-block; height:30px; padding:0 2px; width:22px;} 
#product_avg_rating_stars .product_half_star {background:url(../images/star-half.svg) no-repeat 0px 3px; background-size:30px 30px; display:inline-block; height:30px; padding:0 2px; width:22px;}

/* average bars */
#product_ratings {border-bottom:1px solid #e2e5e8; padding-bottom:20px; width:calc(100% - 40px);}
#product_ratings li {padding:10px 10px 10px 0;}
#product_ratings li h4 {color:#000; float:left; font-size:16px; font-weight:bold; width:20px;}
.products_rating_bar {box-sizing:border-box; float:left; border-radius:3px; height:8px; margin-top:6px;}
.products_rating_count {color:#000; float:left; font-size:16px; font-weight:bold; padding-left:10px; text-align:left; width:30px;}

/* add review */
#products_add_review h2 {color:#000; font-size:30px; font-weight:500; padding:20px 0;}
.product_review_field {padding:10px 0;}

.product_review_field input {background-color:#fff !important; border:1px solid #e2e5e8; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; box-sizing:border-box; display:block; font-size:14px; margin:1px; padding:12px; width:calc(100% - 40px);}
.product_review_field input:focus {border:1px solid #9019ff;}

.product_review_field textarea {background-color:#fff !important; border:1px solid #e2e5e8; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; box-sizing:border-box; font-size:14px; height:80px; margin:1px; padding:12px; resize:none; width:calc(100% - 40px);}
.product_review_field textarea:focus {border:1px solid #9019ff;}

#product_review_stars_label {float:left; padding:22px 15px 0 0;}
#product_review_stars {float:left; padding-top:10px;}
#product_review_stars_label {color:#7f7f7f; font-size:16px;}

#product_review_submit_cont {padding-top:20px;}
#product_review_submit {background:#9019ff; border:none; border-radius:20px; color:#fff; cursor:pointer; display:inline-block; font-size:18px; padding:10px 0; text-align:center; width:250px;}

/* reviews list */
#product_reviews {border-left:1px solid #e2e5e8; box-sizing:border-box; float:right; min-height:700px; padding:0 30px; width:calc(100% - 500px);}
#product_reviews h2 {color:#000; font-size:40px; font-weight:500; padding-bottom:20px;}

#products_review_list {padding-top:40px;}
.product_review {border-bottom: 1px solid #e2e5e8; padding:20px 0;}
.product_review h4 {color:#000; font-size:18px; font-weight:bold;}
.product_rating_stars {padding:10px 0;}
.product_rating_star {background:url(../images/review-star.png) no-repeat center center; background-size:15px 15px; float:left; height:15px; padding:0 2px; width:15px;}
.product_review p {font-size:16px; font-weight:200; line-height:26px;}
.product_review_label {padding-top:3px;}
.product_review_label a {color:#9019ff; text-decoration:underline;}
.product_review_label a:hover {text-decoration:none;}

.product_review_text {box-sizing:border-box; float:left; width:calc(100% - 200px);}
.product_review_image {border-radius:5px; height:150px; float:left; width:200px;}

#product_review_more_cont {padding-top:40px; text-align:center;}
#product_review_more {background:#fff url(../images/loading-purple.png) no-repeat right 15px center; background-size:20px 20px; border:1px solid #9019ff; border-radius:5px; color:#9019ff; cursor:pointer; display:inline-block; font-size:16px; font-weight:bold; line-height:16px; line-height:16px; padding:15px 40px 15px 15px; text-align:center; width:160px;}

/* 5 star rating system css */

.product_review_star {font-size: 28px; color: #ccc; cursor: pointer; transition: color 0.3s linear;}
.product_review_star.highlight {color: #f2c443;}
.product_review_star.clicked {color: #ffce00;}


/* STICKY ADD TO CART */

#products_sticky_cont, #products_sticky_cont *, #products_sticky_cont *::before, #products_sticky_cont *::after {box-sizing:border-box;}

#products_sticky_cont {background:#ffffff; border:1px solid #e7deef; border-radius:999px; bottom:24px; box-shadow:0 12px 40px rgba(37, 33, 49, .14); color:#252131; display:none; font-family:"Inter", Inter, Arial, sans-serif; left:50%; max-width:900px; overflow:visible; padding:10px 12px; position:fixed; transform:translateX(-50%); width:calc(100% - 48px); z-index:40;}
#products_sticky_inner {align-items:center; display:flex; gap:16px;}

/* Product image and name */

#products_sticky_image {background:#f6f2f8; border:1px solid #e7deef; border-radius:13px; flex:0 0 54px; height:54px; overflow:hidden; width:54px;}
#products_sticky_image img {display:block; height:100%; object-fit:contain; padding:4px; width:100%;}

#products_sticky_name {flex:1 1 auto; float:none; min-width:0; padding:0; text-align:left; width:auto;}
#products_sticky_name_label {color:#302738; font-size:17px; font-weight:650; line-height:1.4; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}

/* Bottle selector */

#products_sticky_name_quantity {flex:0 0 190px; position:relative;}
#products_sticky_select {appearance:none; background:#faf7fe; border:1px solid #ddcbed; border-radius:14px; color:#493753; cursor:pointer; display:block; font-family:inherit; font-size:16px; font-weight:600; height:54px; line-height:1.3; margin:0; padding:12px 16px; width:100%;}

/* Hide the native select once the custom dropdown exists */

#products_sticky_name_quantity.products_sticky_custom > #products_sticky_select {display:none;}
#products_sticky_name_quantity.products_sticky_custom::after {content:none;}

/* Custom dropdown button */

#products_sticky_dropdown {position:relative; width:100%;}
#products_sticky_trigger {align-items:center; background:#faf7fe; border:1px solid #ddcbed; border-radius:14px; color:#493753; cursor:pointer; display:flex; font-family:inherit; font-size:16px; font-weight:600; height:54px; line-height:1.3; list-style:none; margin:0; padding:12px 42px 12px 16px; position:relative; text-align:left; user-select:none; width:100%;}
#products_sticky_trigger::-webkit-details-marker {display:none;}
#products_sticky_trigger::marker {content:"";}
#products_sticky_trigger::after {border-bottom:2px solid currentColor; border-right:2px solid currentColor; content:""; height:7px; margin-top:-5px; pointer-events:none; position:absolute; right:20px; top:50%; transform:rotate(45deg); width:7px;}
#products_sticky_trigger[aria-disabled="true"] {cursor:default;}
#products_sticky_label {text-transform:lowercase;}

#products_sticky_dropdown[open] > #products_sticky_trigger {background:#f1e5ff; border-color:#9019ff;}
#products_sticky_dropdown[open] > #products_sticky_trigger::after {margin-top:-1px; transform:rotate(225deg);}

/* Dropdown menu */

#products_sticky_menu {background:#ffffff; border:1px solid #e5d5f3; border-radius:18px; bottom:calc(100% + 12px); box-shadow:0 12px 35px rgba(37, 33, 49, .16); display:flex; flex-direction:column; gap:4px; max-height:min(280px, 45vh); overflow-y:auto; padding:7px; position:absolute; right:0; width:100%; z-index:2;}
#products_sticky_dropdown:not([open]) #products_sticky_menu {display:none;}

#products_sticky_menu .products_sticky_option {align-items:center; appearance:none; background:transparent; border:0; border-radius:11px; box-shadow:none; color:#493753; cursor:pointer; display:flex; flex-shrink:0; font-family:inherit; font-size:16px; font-weight:400; gap:10px; justify-content:space-between; line-height:1.4; margin:0; min-height:48px; padding:12px 14px; text-align:left; text-transform:lowercase; width:100%;}
#products_sticky_menu .products_sticky_option::after {content:""; flex:0 0 16px; text-align:center;}
#products_sticky_menu .products_sticky_option[aria-pressed="true"] {background:#efe3ff; color:#8117f5; font-weight:650;}
#products_sticky_menu .products_sticky_option[aria-pressed="true"]::after {content:"✓"; font-weight:700;}
#products_sticky_menu .products_sticky_option:disabled {cursor:default; opacity:.5;}

/* Add to cart */

#products_sticky_cart {flex:0 0 auto; float:none;}
#sticky_add_cart {align-items:center; background:#9019ff; border:0; border-radius:999px; box-shadow:none; color:#ffffff; cursor:pointer; display:flex; font-family:inherit; font-size:18px; font-weight:650; gap:10px; height:54px; justify-content:center; line-height:1.3; margin:0; min-width:262px; padding:12px 24px; text-align:center; transition:background-color .2s ease; white-space:nowrap; width:auto;}
#sticky_add_cart img {display:block; filter:brightness(0) invert(1); flex:0 0 24px; height:24px; width:24px;}
#sticky_add_cart:disabled {cursor:default; opacity:.55;}
#products_sticky_price {font-variant-numeric:tabular-nums;}

/* Keyboard focus */

#products_sticky_select:focus-visible, #products_sticky_trigger:focus-visible, #sticky_add_cart:focus-visible {outline:2px solid #8117f5; outline-offset:3px;}
#products_sticky_menu .products_sticky_option:focus-visible {outline:2px solid #8117f5; outline-offset:-3px;}
#products_sticky_select:disabled {cursor:default; opacity:1;}

/* Hover and motion */

@media (hover:hover) and (pointer:fine) {
  #sticky_add_cart:hover:not(:disabled) {background:#7912db;}
  #products_sticky_menu .products_sticky_option:not([aria-pressed="true"]):not(:disabled):hover {background:#f8f2fc;}
}

@media (prefers-reduced-motion:reduce) {
  #sticky_add_cart {transition:none;}
}



/******************
    CART POPUP
******************/

/* animated preloader */
#cart_pre_loader {padding-top:30px;}
.cart_pre_loader_heading {animation:colorAnimation 1s infinite alternate; background-color:#dcdcdc; border-radius:5px; height:30px; margin-left:25px; width:200px;}
.cart_pre_loader_item {animation:colorAnimation 1s infinite alternate; background-color:#dcdcdc; border-radius:5px; height:115px; margin:40px auto; width:400px;}

@keyframes colorAnimation {
  0% {
    background-color: #cbcbcb; /* Light grey color */
  }
  100% {
    background-color: #dcdcdc; /* Normal grey color */
  }
}

/* CART POPUP HEADER */
#cart_pop_cont {box-sizing:border-box; height:calc(100vh - 124px); height:calc(100dvh - 124px); overflow:auto; padding-bottom:16px;}
#cart_popup {animation:cart_slide_in .35s cubic-bezier(.22,1,.36,1); background:#fff; border-left:1px solid #ece6f2; border-radius:20px 0 0 20px; box-shadow:-12px 0 40px rgba(41,35,49,.12); box-sizing:border-box; color:#292331; display:none; height:100vh; height:100dvh; margin:0; overflow:hidden; position:fixed; right:0; top:0; width:450px; z-index:55;}
@keyframes cart_slide_in {from {transform:translateX(100%);} to {transform:translateX(0);}}
#cart_pop_header {display:flex; align-items:center; justify-content:space-between; gap:16px; box-sizing:border-box; width:100%; padding:22px 26px; background:#fff; border-bottom:1px solid #ece6f2;}
#cart_pop_header h2 {display:flex; align-items:center; flex:1; gap:12px; min-width:0; margin:0; padding:0; color:#292331; font-size:22px; font-weight:600; letter-spacing:-.025em; line-height:1.25;}
#cart_pop_header h2::before {content:""; display:block; flex:0 0 28px; width:28px; height:28px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Ccircle cx='14' cy='14' r='14' fill='%2316ae60'/%3E%3Cpath d='m7.5 14 4.5 4.5 8.5-9' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;}
#close_pop_cart {align-items:center; appearance:none; background:#f5f0fa; border:0; border-radius:50%; color:#71528a; cursor:pointer; display:flex; flex:0 0 40px; height:40px; justify-content:center; padding:0; position:relative; right:auto; top:auto; transform:none; transition:background .2s ease, color .2s ease; width:40px;}
#close_pop_cart::before, #close_pop_cart::after {background:currentColor; border-radius:2px; content:""; height:2px; position:absolute; width:17px;}
#close_pop_cart::before {transform:rotate(45deg);}
#close_pop_cart::after {transform:rotate(-45deg);}
#close_pop_cart:hover {background:#eae0f4; color:#502e70;}
#close_pop_cart:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}
/* CART POPUP FOOTER */
#cart_pop_view {background:#fff; border-top:1px solid #ece6f2; bottom:0; box-shadow:0 -6px 24px rgba(41,35,49,.04); box-sizing:border-box; height:124px; left:0; padding:16px 26px; position:absolute; right:0; text-align:center; z-index:57;}
#cart_pop_checkout {align-items:center; background:#9019ff; border:0; border-radius:999px; box-sizing:border-box; color:#fff; display:flex; font-size:18px; font-weight:700; gap:6px; justify-content:center; line-height:1.3; margin:0; min-height:54px; padding:15px 24px; text-decoration:none; transition:background .2s ease; width:100%;}
#cart_pop_checkout span {font-weight:700;}
#cart_pop_checkout::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:""; flex-shrink:0; height:.75em; margin-left:12px; transition:transform .2s ease; width:1.05em;}
#cart_pop_checkout:hover {background:#7c12dc; color:#fff;}
#cart_pop_checkout:hover::after, #cart_pop_checkout:focus-visible::after {transform:translateX(6px);}
#cart_pop_checkout:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}
#cart_pop_continue {color:#75677f; display:inline-block; font-size:14px; font-weight:500; line-height:1.5; margin:14px 0 0; text-decoration:underline; text-underline-offset:3px;}
#cart_pop_continue:hover {color:#9019ff; text-decoration:none;}
#cart_pop_continue:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}

@media (prefers-reduced-motion:reduce) {
  #close_pop_cart, #cart_pop_checkout, #cart_pop_checkout::after {transition:none;}
  #cart_pop_checkout:hover::after, #cart_pop_checkout:focus-visible::after {transform:none;}
}

/* CART ADDED CONFIRMATION */
#add_cart_info .cart_pop_added_notice {align-items:center; background:#effaf3; border:1px solid #d6efdf; border-radius:12px; color:#167b49; display:flex; font-size:15px; font-weight:600; gap:10px; line-height:1.4; margin:20px 26px; padding:13px 16px;}
#add_cart_info .cart_pop_added_tick {align-items:center; background:#16ae60; border-radius:50%; display:flex; flex:0 0 22px; height:22px; justify-content:center; width:22px;}
#add_cart_info .cart_pop_added_tick::before {border-bottom:2px solid #fff; border-right:2px solid #fff; box-sizing:border-box; content:""; height:10px; margin-top:-3px; transform:rotate(45deg); width:6px;}


/* CART PRODUCT ITEM */
#add_cart_info .cart_pop_item {align-items:center; background:#fff; border-bottom:1px solid #ece6f2; box-sizing:border-box; display:flex; gap:14px; margin:0 26px; padding:14px 0; position:relative;}
#add_cart_info .cart_pop_item_image {background:#f3f5f4; border:1px solid #d9dbda; border-radius:10px; box-sizing:border-box; flex:0 0 72px; float:none; height:72px; isolation:isolate; overflow:hidden; width:72px;}
#add_cart_info .cart_pop_item_image img {display:block; height:100%; mix-blend-mode:darken; object-fit:contain; width:100%;}
#add_cart_info .cart_pop_item_info {flex:1; float:none; min-width:0; padding:0; position:relative; width:auto;}
#add_cart_info .cart_pop_item_desc {float:none; margin:0 0 10px; padding:0 30px 0 0; width:auto;}
#add_cart_info .cart_pop_item_desc a {color:#292331; font-size:14px; font-weight:600; line-height:1.4; text-decoration:none;}
#add_cart_info .cart_pop_item_desc a:hover {color:#9019ff;}
/* REMOVE ITEM */
#add_cart_info .remove_cart_pop_item {appearance:none; background:transparent url(../images/trash.svg) no-repeat center; background-size:14px 14px; border:0; border-radius:50%; cursor:pointer; float:none; height:26px; padding:0; position:absolute; right:0; top:0; transition:background-color .2s ease; width:26px;}
#add_cart_info .remove_cart_pop_item:hover {background-color:#f5f0fa;}
/* QUANTITY AND PRICE */
#add_cart_info .cart_pop_item_price_cont {align-items:center; display:flex; float:none; gap:12px; justify-content:space-between; margin:0; padding:0; width:100%;}
#add_cart_info .cart_pop_item_quantity {align-items:center; background:#fff; border:1px solid #ded5e8; border-radius:999px; display:inline-flex; flex-shrink:0; float:none; height:30px; margin:0; padding:0; width:auto;}
#add_cart_info .cart_pop_item_quantity_less, #add_cart_info .cart_pop_item_quantity_more {align-items:center; appearance:none; background:transparent; border:0; border-radius:50%; color:#71528a; cursor:pointer; display:flex; float:none; font-family:inherit; font-size:18px; font-weight:400; height:28px; justify-content:center; line-height:1; padding:0; transition:background .2s ease; width:28px;}
#add_cart_info .cart_pop_item_quantity_less:hover, #add_cart_info .cart_pop_item_quantity_more:hover {background:#f5f0fa;}
#add_cart_info .cart_pop_item_quantity_field {background:transparent; border:0; color:#292331; float:none; font-size:12px; font-weight:600; height:auto; line-height:1; min-width:24px; padding:0; text-align:center; width:auto;}
#add_cart_info .cart_pop_item_total {color:#292331; float:none; font-size:15px; font-weight:700; line-height:1.3; margin:0; padding:0; text-align:right; width:auto;}
#add_cart_info .cart_pop_item_total span {font-weight:700;}
#add_cart_info .cart_pop_item button:focus-visible, #add_cart_info .cart_pop_item_desc a:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}

/* CART ITEMS */
#cart_pop_heading_cont {margin:24px 26px 0; padding:0;}
#cart_pop_heading {color:#75677f; font-size:12px; font-weight:700; letter-spacing:1.4px; line-height:1.4; margin:0; padding:0; text-transform:uppercase;}
#cart_pop_items {margin:0; padding:0;}
#cart_pop_items .cart_pop_item:last-child {border-bottom:0;}
/* EMPTY CART */
#cart_pop_empty {color:#75677f; margin:0; padding:48px 26px; text-align:center;}
#cart_pop_empty h3 {color:#292331; font-size:22px; font-weight:700; line-height:1.3; margin:0 0 12px;}
#cart_pop_empty p {font-size:15px; line-height:1.6; margin:0;}

/* CART RECOMMENDATIONS */
#cart_pop_rec {background:#faf8fc; border-top:1px solid #ece6f2; box-sizing:border-box; margin:24px 0 0; padding:22px 26px; position:relative;}
#cart_pop_rec h3 {color:#292331; font-size:18px; font-weight:700; line-height:1.4; margin:0 0 18px; padding:0;}
#cart_pop_rec_prods {display:flex; gap:14px; overflow-x:auto; padding:0 0 12px; scrollbar-color:#d4c6e2 transparent; scrollbar-width:thin; scroll-snap-type:x proximity;}
#cart_pop_rec_prods::-webkit-scrollbar {height:5px;}
#cart_pop_rec_prods::-webkit-scrollbar-thumb {background:#d4c6e2; border-radius:999px;}
#cart_pop_rec .cart_pop_rec {background:#fff; border:1px solid #ece6f2; border-radius:14px; box-sizing:border-box; display:flex; flex:0 0 180px; flex-direction:column; float:none; margin:0; overflow:hidden; padding:12px; scroll-snap-align:start; width:180px;}
#cart_pop_rec .cart_pop_rec_img {background:#f3f5f4; border-radius:10px; float:none; height:120px; isolation:isolate; margin:0 0 14px; overflow:hidden; width:100%;}
#cart_pop_rec .cart_pop_rec_img img {display:block; height:100%; mix-blend-mode:darken; object-fit:contain; width:100%;}
#cart_pop_rec .cart_pop_rec_info {display:flex; flex:1; flex-direction:column; float:none; margin:0; padding:0; width:100%;}
#cart_pop_rec .cart_pop_rec_name {margin:0 0 8px; padding:0;}
#cart_pop_rec .cart_pop_rec_name a {color:#292331; display:block; font-size:14px; font-weight:600; line-height:1.45; text-decoration:none;}
#cart_pop_rec .cart_pop_rec_name a:hover {color:#9019ff;}
#cart_pop_rec .cart_pop_rec_price {color:#71528a; font-size:14px; font-weight:600; line-height:1.4; margin:0 0 14px; padding:0;}
#cart_pop_rec .cart_pop_rec_add_cont {margin-top:auto; padding:0;}
#cart_pop_rec .cart_pop_rec_add {align-items:center; background:#f5f0fa; border:1px solid #e5d9f0; border-radius:999px; box-sizing:border-box; color:#7915ce; display:flex; font-size:13px; font-weight:600; gap:10px; justify-content:center; line-height:1.4; min-height:36px; padding:8px 14px; text-decoration:none; transition:background .2s ease; width:100%;}
#cart_pop_rec .cart_pop_rec_add::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:""; flex-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
#cart_pop_rec .cart_pop_rec_add:hover {background:#ece0f7;}
#cart_pop_rec .cart_pop_rec_add:hover::after, #cart_pop_rec .cart_pop_rec_add:focus-visible::after {transform:translateX(6px);}
#cart_pop_rec a:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}

/* CART UPGRADE */
#cart_pop_upgrade {align-items:center; background:#f5f0fa; border:1px solid #e5d9f0; border-radius:14px; box-sizing:border-box; display:flex; gap:18px; justify-content:space-between; margin:18px 26px 24px; padding:18px;}
#cart_pop_upgrade_buy {color:#75677f; flex:1; float:none; font-size:14px; line-height:1.5; margin:0; min-width:0; padding:0; width:auto;}
#cart_pop_upgrade_buy strong {color:#49335c; display:block; font-size:15px; font-weight:700; margin-bottom:4px;}
#cart_pop_upgrade_buy > span {display:block;}
#cart_pop_upgrade_buy .cart_pop_upgrade_saving {background:#e4f5e9; border-radius:999px; color:#167b49; display:inline-block; font-size:12px; font-weight:700; margin-top:9px; padding:3px 10px;}
#cart_pop_upgrade_action {flex-shrink:0; float:none; margin:0; padding:0; width:auto;}
#cart_pop_upgrade_action button {align-items:center; appearance:none; background:#9019ff; border:0; border-radius:999px; color:#fff; cursor:pointer; display:inline-flex; font-family:inherit; font-size:13px; font-weight:700; justify-content:center; line-height:1.4; min-height:40px; padding:10px 17px; transition:background .2s ease;}
#cart_pop_upgrade_action button:hover {background:#7c12dc;}
#cart_pop_upgrade_action button:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}

/* CART FREE DELIVERY */
/* CART FREE DELIVERY */
#cart_pop_ship_cont {background:#edf7f1; border:0; border-radius:10px; box-sizing:border-box; margin:14px 26px; padding:12px 14px;}
#cart_pop_ship_text {align-items:center; color:#35795b; display:flex; font-size:13px; font-weight:400; gap:5px; line-height:1.4; margin:0 0 10px; text-align:left;}
#cart_pop_ship_text::before {background:url(../images/product-page/intro-truck.svg) no-repeat center; background-size:contain; content:""; flex:0 0 20px; height:20px; margin-right:5px;}
#cart_pop_ship_text strong {color:#246a46; font-weight:700;}
#cart_pop_ship_text > span {color:#35795b; font-weight:500;}
#cart_pop_ship_bar {display:block; margin:0; padding:0; position:relative;}
#cart_pop_ship {background:#dcebe1; border:0; border-radius:999px; float:none; height:6px; margin:0; overflow:hidden; padding:0; width:100%;}
#cart_pop_ship_progress {background:#21863e; border-radius:inherit; height:100%; max-width:100%; transition:width .3s ease;}
#cart_pop_ship_free_cont {display:none;}

/******************
    HOMEPAGE
******************/

/* HERO */

#home_hero *, #home_hero *::before, #home_hero *::after {box-sizing:border-box;}
#home_hero {position:relative; isolation:isolate; container-type:inline-size; box-sizing:border-box; box-shadow:0 0 24px #dedde0; width:100%; max-width:none; margin:0 auto; padding:0; aspect-ratio:1858 / 846; overflow:hidden; border:0; border-radius:24px; background:#e8f5fc; color:#272333; font:400 16px/1.6 "Inter",Arial,sans-serif; letter-spacing:normal; max-width:1536px; text-align:left;}
.home_hero_scene {position:absolute; inset:0; overflow:hidden; pointer-events:none; z-index:-1;}
.home_hero_coast {position:absolute; inset:0; display:block; width:100%; height:100%; max-width:none; margin:0; padding:0; border:0; object-fit:cover; object-position:center;}
.home_hero_scene::after {content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(240,248,252,.96),rgba(240,248,252,.8) 29%,rgba(240,248,252,.2) 49%,transparent 60%);}
.home_hero_copy {position:static; display:block; width:44%; max-width:none; padding:6cqw 0 4cqw 5.8cqw;}
#home_hero h1 {margin:0 0 3cqw; padding:0; color:#272333; font:600 6.2cqw/1.07 "Inter",Arial,sans-serif; letter-spacing:-.24cqw; text-transform:none;}
#home_hero h1 em {color:#8019ef; font-family:Georgia,serif; font-size:inherit; font-style:italic; font-weight:400; letter-spacing:-.18cqw;}
.home_hero_copy>p {width:auto; max-width:none; margin:0 0 3.2cqw; padding:0; color:#101812; font:400 1.85cqw/1.45 "Inter",Arial,sans-serif; letter-spacing:normal;}

/* Shop link and the matching arrow hover movement. */
.home_hero_cta {position:relative; display:flex; align-items:center; justify-content:center; gap:2cqw; width:90%; max-width:100%; min-height:0; margin:0; padding:1.25cqw 1.6cqw; border:0; border-radius:40px; background:#9019ff; color:#fff; font:700 1.55cqw/1.4 "Inter",Arial,sans-serif; letter-spacing:normal; text-decoration:none; text-transform:none; transition:background-color .2s ease;}
.home_hero_cta:hover {background:#8019ef; color:#fff;}
.home_hero_cta:focus-visible {outline:3px solid #594273; outline-offset:4px;}
.home_hero_cta>span {position:relative; display:inline-block; width:1.05em; height:1em; flex-shrink:0; color:transparent; font-size:inherit; line-height:1; transition:transform .2s ease;}
.home_hero_cta>span::before {content:""; position:absolute; left:0; right:.1em; top:46%; height:.14em; background:#fff; transform:translateY(-50%);}
.home_hero_cta>span::after {content:""; position:absolute; right:.07em; top:46%; width:.5em; height:.5em; border-top:.14em solid #fff; border-right:.14em solid #fff; transform:translateY(-50%) rotate(45deg);}
.home_hero_cta:hover>span, .home_hero_cta:focus-visible>span {transform:translateX(6px);}

/* New Zealand badge. */
.home_hero_nz {position:absolute; z-index:1; right:2cqw; top:1.7cqw; display:flex; align-items:center; gap:1cqw; padding:1.3cqw 2cqw 1.3cqw 1.15cqw; border-radius:1.6cqw; background:rgba(255,255,255,.85); color:#302738;}
.home_hero_nz img {display:block; width:4.1cqw; height:4.1cqw; margin:0; object-fit:contain; flex-shrink:0;}
.home_hero_nz small {display:block; font-size:1cqw; font-weight:600; line-height:1.5;}
.home_hero_nz strong {font-size:1.85cqw; font-weight:700; letter-spacing:-.05cqw; line-height:1.4;}

/* Customer rating pill. */
.home_hero_rating {align-items:center; background:rgba(255,255,255,.93); border-radius:50px; bottom:1.7cqw; color:#141414; display:flex; font-size:1cqw; gap:.65cqw; line-height:1; margin:0; max-width:calc(100% - 4cqw); padding:.6cqw 1.3cqw; position:absolute; right:2cqw; white-space:nowrap; width:max-content; z-index:1;}
.home_hero_stars {color:#ffbc00; font-size:1.5cqw; letter-spacing:.04cqw; line-height:1; transform:translateY(-.1em);}
.home_hero_score {font-size:1.1cqw; font-weight:700; line-height:1;}
.home_hero_customers {border-left:1px solid #d8d8d8; display:flex; flex-direction:column; font-size:.72cqw; gap:.1cqw; line-height:1.1; margin-left:.15cqw; padding-left:.8cqw; text-align:left;}
.home_hero_customers strong {color:#0bb25b; font-size:.8cqw; font-weight:700;}

@media (prefers-reduced-motion:reduce) {
  .home_hero_cta, .home_hero_cta>span {transition:none;}
  .home_hero_cta:hover>span, .home_hero_cta:focus-visible>span {transform:none;}
}


/* BAR */

.home_standard_heading, .home_standard_heading * {box-sizing:border-box;}
.home_standard_heading {background:#fff; color:#242333; margin:0 auto; max-width:1600px; padding:50px 36px 0px; text-align:center; width:100%;}
.home_standard_heading .home_standard_eyebrow {color:#756a80; font-family:"Inter", Inter, Arial, sans-serif; font-size:12px; font-weight:700; letter-spacing:.18em; line-height:1.5; margin:0 0 10px; padding:0;}
.home_standard_heading h2 {color:#242333; font-family:"Inter",Inter,Arial,sans-serif; font-size:clamp(32px,3.6vw,52px); font-weight:500; letter-spacing:-.045em; line-height:1.1; margin:0; padding:0;}.home_standard_heading h2 em {color:#8019ef; font-family:Georgia, serif; font-size:inherit; font-style:italic; font-weight:400;}

#home_bar, #home_bar *, #home_bar *::before {box-sizing: border-box;}
#home_bar {display:grid; gap:0; grid-template-columns:repeat(6, minmax(0, 1fr)); list-style:none; margin:0; padding:0;}
#home_bar_cont {font-size:16px; font-weight:400; line-height:1.6; margin:0 auto; max-width:1200px; padding:52px 36px 58px; width:100%;}
#home_bar_delivery .home_bar_icon {background:#fcf1d8;}
#home_bar_gmp .home_bar_icon {background:#e5f1f8;}
#home_bar_heart .home_bar_icon {background:#fae9df;}
#home_bar_lab .home_bar_icon {background:#f0e6f6;}
#home_bar_nz .home_bar_icon {background:#e5f3eb;}
#home_bar_purity .home_bar_icon {background:#ebe7f8;}

.home_bar_icon {border-radius:23px; display:grid; height:72px; margin:0 auto 18px; place-items:center; width:72px;}
.home_bar_list {margin:0; padding:4px 14px; position:relative; text-align:center;}
.home_bar_list h3 {color:#242333; font-family:inherit; font-size:16px; font-weight:650; letter-spacing:-0.045em; line-height:1.35; margin:0;}
.home_bar_list img {border:0; display:block; height:22px; margin:0; max-width:none; width:22px;}
.home_bar_list p {color:#695f71; font-family:inherit; font-size:12px; font-weight:400; letter-spacing:normal; line-height:1.5; margin:0;}

/* PRODUCTS */

/* text/headings */
.home_ritual_heading, .home_ritual_heading *, .home_ritual_heading *::before, .home_ritual_heading *::after {box-sizing:border-box;}
.home_ritual_heading {align-items:flex-end; background:#fff; color:#242333; display:flex; font-family:"Inter", Inter, Arial, sans-serif; gap:40px; justify-content:space-between; margin:0 auto; max-width:1360px; padding:48px 36px 32px; text-align:left; width:100%;}
.home_ritual_title_group {min-width:0;}
.home_ritual_heading .home_ritual_eyebrow {color:#242333; font-size:11px; font-weight:700; letter-spacing:.16em; line-height:1.5; margin:0 0 22px; padding:0;}
.home_ritual_heading h2 {color:#242333; font-family:inherit; font-size:clamp(36px, 4vw, 52px); font-weight:600; letter-spacing:-.045em; line-height:1.12; margin:0; padding:0;}
.home_ritual_intro {flex-shrink:0; max-width:380px; padding-bottom:3px;}
.home_ritual_intro p {color:#756f80; font-size:15px; font-weight:400; letter-spacing:normal; line-height:1.6; margin:0 0 18px; padding:0;}
.home_ritual_heading .home_ritual_link {align-items:center; border-bottom:1px solid currentColor; color:#242333; display:inline-flex; font-size:14px; font-weight:600; gap:5px; line-height:1.5; padding:0 0 5px; text-decoration:none; transition:color .2s ease;}
.home_ritual_link span {display:inline-block; font-size:.85em; line-height:1; transition:transform .2s ease;}
.home_ritual_heading .home_ritual_link:hover {color:#8019ef;}
.home_ritual_link:hover span, .home_ritual_link:focus-visible span {transform:translate(3px, -3px);}
.home_ritual_link:focus-visible {outline:3px solid #8019ef; outline-offset:5px;}

/* products */

#home_products_cont {box-sizing:border-box; width:100%; max-width:1360px; margin:0 auto; padding:0 36px 50px;}
#home_products_cont h2 {color:#000; font-size:40px; text-align:center;}

#home_products {display:grid; gap:22px; grid-template-columns:repeat(4, minmax(0, 1fr));}
.home_products {background:#fff; border:1px solid #e4ddea; border-radius:20px; box-shadow:none; display:flex; flex-direction:column; isolation:isolate; min-width:0; overflow:hidden; position:relative;}
.home_products_link {display:flex; flex:1; flex-direction:column;}

#home_products_nmn .home_products_link {background:#eeeaf7; color:#594273;}
#home_products_nad .home_products_link {background:#eaf1f8; color:#315f80;}
#home_products_threonate .home_products_link {background:#f5eaf2; color:#854d77;}
#home_products_glycinate .home_products_link {background:#ebedf8; color:#575b90;}
.home_products_link h3 {font-family:inherit; font-size:23px; font-weight:600; letter-spacing:-0.035em; line-height:1.2; margin:0; min-height:77px; padding:20px 22px 2px;}
#home_products_nmn .home_products_shop {background:#594273;}
#home_products_nad .home_products_shop {background:#315f80;}
#home_products_threonate .home_products_shop {background:#854d77;}
#home_products_glycinate .home_products_shop {background:#575b90;}

.home_products_image {align-items:center; aspect-ratio:1; display:flex; justify-content:center; min-height:0; padding:4px 24px 20px;}
.home_products_image img {display:block; height:100%; max-width:100%; object-fit:contain; transition:transform 0.2s ease; width:100%;}
.home_products_footer {align-items:center; background:#fff; display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; padding:18px 22px;}
.home_products_price {color:#111; font-size:18px; font-weight:650; line-height:1.3; margin:0;}
.home_products_shop {align-items:center; background:var(--lp-ink); border-radius:28px; color:#fff; display:inline-flex; font-size:13px; font-weight:600; gap:13px; justify-content:center; line-height:1.3; padding:10px 17px;}
.home_products_shop span {display:inline-block; font-size:18px; line-height:1; transform:translateX(0); transition:transform 220ms ease-out;}

@media (hover:hover) {.home_products:hover .home_products_shop span {transform:translateX(6px);} .home_products:hover .home_products_image img {transform:translateY(-3px);}}
@font-face {font-family:"Product Arrows"; font-style:normal; font-weight:600; src:url("../images/fonts/inter-symbols-600.woff2") format("woff2");}
.home_products_shop span {font-family:"Product Arrows", sans-serif; font-weight:600;}


/* BENEFITS */

.home_benefits {margin:0 auto; max-width:1360px; padding:20px 36px 76px;}
.home_benefits_heading {align-items:flex-end; display:flex; gap:40px; justify-content:space-between; margin-bottom:32px;}
.home_benefits_heading h2 {font-size:clamp(40px, 4.5vw, 64px); font-weight:550; line-height:1.05; margin:0;}
.home_benefits_heading h2 em {font-family:Georgia, serif; font-weight:400;}
.home_benefits_intro {max-width:430px; padding-bottom:5px;}
.home_benefits_intro p {color:#756a80; font-size:16px; line-height:1.7; margin:0 0 22px;}
.home_benefits_shop {align-items:center; background:#9019ff; border-radius:40px; color:#fff; display:inline-flex; font-size:14px; font-weight:600; gap:32px; padding:13px 23px;}
.home_benefits_shop:hover {background:#8019ef; color:#fff;}
.home_benefits_shop span {font-size:22px; line-height:1;}
.home_benefits_grid {display:grid; gap:24px; grid-template-columns:repeat(3, minmax(0, 1fr));}
.home_benefit_card {background:var(--benefit-colour); border-radius:22px; overflow:hidden; transition:transform .25s ease, box-shadow .25s ease;}
.home_benefit_card:hover {box-shadow:0 12px 28px #42325212; transform:translateY(-4px);}
.home_benefit_photo {height:195px; overflow:hidden; position:relative;}
.home_benefit_photo img {height:100%; object-fit:cover; object-position:center 30%; transition:transform .5s ease; width:100%;}
.home_benefit_card:hover img {transform:scale(1.035);}
.home_benefit_photo span {background:#ffffffed; border-radius:30px; bottom:16px; color:#4c3d5d; font-size:11px; font-weight:650; left:18px; letter-spacing:.035em; padding:7px 14px; position:absolute;}
.home_benefit_copy {padding:24px 26px 26px;}
.home_benefit_copy h3 {color:#40324f; font-size:24px; font-weight:550; letter-spacing:-.035em; line-height:1.16; margin:0 0 12px;}
.home_benefit_copy p {color:#756a80; font-size:14px; line-height:1.6; margin:0;}
@media (prefers-reduced-motion:reduce) {
.home_benefit_card, .home_benefit_photo img {transition:none;}
}
.home_benefits, .home_benefits *, .home_benefits *::before, .home_benefits *::after {box-sizing:border-box;}
.home_benefits {color:#242333; font-family:"Inter", Arial, sans-serif; font-size:16px; font-weight:400; letter-spacing:normal; line-height:1.6; text-align:left;}
.home_benefits_eyebrow {color:#8019ef; font-size:11px; font-weight:700; letter-spacing:.16em; margin:0 0 18px;}
.home_benefits_heading h2 {color:#242333; letter-spacing:-.045em;}
.home_benefits_heading h2 em {color:#8019ef; font-style:italic;}
.home_benefit_card {margin:0;}
.home_benefit_photo img {border:0; display:block; margin:0; max-width:100%; padding:0;}
.home_benefits_shop {text-decoration:none; transition:background .2s ease; white-space:nowrap;}
.home_benefits_shop > span {display:none;}
.home_benefits_shop::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-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
.home_benefits_shop:hover, .home_benefits_shop:focus-visible {background:#6816bc; color:#fff; transform:none;}
.home_benefits_shop:hover::after, .home_benefits_shop:focus-visible::after {transform:translateX(6px);}
.home_benefits_shop:focus-visible {outline:3px solid #242333; outline-offset:4px;}
@media (prefers-reduced-motion:reduce) {
.home_benefits_shop::after {transition:none;}
.home_benefit_card:hover, .home_benefit_card:hover img, .home_benefits_shop:hover::after, .home_benefits_shop:focus-visible::after {transform:none;}
}



/* PURE */

.home_pure, .home_pure *, .home_pure *::before, .home_pure *::after {box-sizing:border-box;}
.home_pure {align-items:center; background:#fff; color:#242333; display:grid; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; gap:8%; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); letter-spacing:normal; line-height:1.6; margin:0 auto; max-width:1360px; padding:44px 36px 50px; text-align:left; width:100%;}
.home_pure_image {border-radius:160px 160px 12px 12px; height:570px; min-width:0; overflow:hidden; position:relative;}
.home_pure_landscape {border:0; display:block; height:calc(100% + 104px); left:0; max-width:none; object-fit:cover; object-position:center; position:absolute; top:-52px; width:100%;}
.home_pure_label {align-items:center; bottom:24px; color:#fff; display:flex; font-size:12px; font-weight:400; gap:12px; left:24px; letter-spacing:.2em; line-height:1.6; position:absolute;}
.home_pure .home_pure__label img {border:0; display:block; flex-shrink:0; height:28px; width:34px;}
.home_pure_copy {min-width:0;}
.home_pure_eyebrow {font-size:11px; font-weight:650; letter-spacing:.15em; line-height:1.6; margin-bottom:20px;}
.home_pure_copy h2 {font-size:clamp(32px, 3.6vw, 52px); font-weight:500; letter-spacing:-.045em; line-height:1.1;}
.home_pure_copy h2 em {color:#8019ef; font-family:Georgia, serif; font-style:italic; font-weight:400;}
.home_pure_intro {color:#696773; font-size:16px; font-weight:400; line-height:1.6; margin:24px 0; max-width:470px;}
.home_pure_standard {border-top:1px solid #d9e2d7; padding:20px 0;}
.home_pure_standard h3 {font-size:20px; font-weight:550; letter-spacing:-.02em; line-height:1.3; margin-bottom:6px;}
.home_pure_standard p {color:#696773; font-size:14px; font-weight:400; line-height:1.6;}
.home_pure_link {border-bottom:1px solid currentColor; color:#242333; display:inline-block; font-family:inherit; font-size:14px; font-weight:550; line-height:1.6; padding-bottom:4px; text-decoration:none;}
.home_pure_link:hover {color:#8019ef;}
.home_pure_link span {font-weight:600;}

/* FREE */

.home_free, .home_free *, .home_free *::before, .home_free *::after {box-sizing:border-box;}
.home_free {align-items:center; background:#fff; color:#242333; display:flex; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; letter-spacing:normal; line-height:1.6; margin:0; padding:64px 0; text-align:center; width:100%;}
.home_free > div {margin:0 auto; max-width:1000px; padding:0; width:100%;}
.home_free h2 {color:#222222; font-family:inherit; font-size:40px; font-weight:600; letter-spacing:-.045em; line-height:1.1; margin:0 0 38px; padding:0; text-align:center;}
.home_free li {align-items:center; color:#222222; display:flex; flex-direction:column; font-family:inherit; font-size:16px; font-weight:400; gap:18px; line-height:1.4; list-style:none; margin:0; min-width:0; padding:0; text-align:center;}.home_free ul {display:grid; gap:22px; grid-template-columns:repeat(7, minmax(0, 1fr)); list-style:none; margin:0; padding:0; width:100%;}
.home_free li::marker {content:"";}
.home_free img {border:0; display:block; flex-shrink:0; height:48px; margin:0; max-width:100%; object-fit:contain; padding:0; width:48px;}
.home_free span {color:inherit; display:block; font:inherit; margin:0; max-width:135px; padding:0;}

/* LAB */

.home_lab, .home_lab *, .home_lab *::before, .home_lab *::after {box-sizing:border-box;}
.home_lab {background:transparent; border-radius:28px; color:#39294b; font:16px/1.65 "Inter", Inter, Arial, sans-serif; letter-spacing:normal; margin:0 auto; max-width:1288px; padding:48px 32px 56px; text-align:left; width:100%;}
.home_lab h2 {color:#39294b; font-family:Arial, sans-serif; font-size:clamp(34px, 3.5vw, 50px); font-weight:500; letter-spacing:-.045em; line-height:1.13; max-width:530px;}
.home_lab h2 em {color:#8051a3; display:block; font-family:Georgia, serif; font-style:italic; font-weight:400; margin-top:4px;}
.home_lab h3 {color:#39294b; font:600 17px/1.35 Arial, sans-serif; letter-spacing:-.02em;}
.home_lab a {text-decoration:none;}
.home_lab a:focus-visible {outline:3px solid #a467d7; outline-offset:5px;}
.home_lab img {border:0; display:block; margin:0; max-width:100%; padding:0;}
.home_lab_top {align-items:center; display:grid; gap:76px; grid-template-columns:minmax(0, 1.12fr) minmax(0, 1fr); margin-bottom:28px;}
.home_lab_top_label {align-items:center; display:flex; gap:14px; margin-bottom:22px;}
.home_lab_top_icon {background:#f1ebfa; border-radius:15px; display:grid; flex-shrink:0; height:46px; place-items:center; width:46px;}
.home_lab_top_icon img {height:25px; width:25px;}
.lab_top_iconeyebrow {color:#835ba0; font:600 11px/1.6 Arial, sans-serif; letter-spacing:.15em;}
.home_lab h2 {color:#39294b; font-family:Arial, sans-serif; font-size:clamp(34px, 3.5vw, 50px); font-weight:500; letter-spacing:-.045em; line-height:1.13; max-width:530px;}
.home_lab h2 em {color:#8051a3; display:block; font-family:Georgia, serif; font-style:italic; font-weight:400; margin-top:4px;}
.home_lab_copy {color:#776b82; font:16px/1.75 Arial, sans-serif; margin-top:25px; max-width:47ch;}
.home_lab .home_lab_button {align-items:center; background:#8019ef; border:0; border-radius:30px; color:#fff; display:inline-flex; font-family:Arial, sans-serif; font-size:15px; font-weight:600; gap:22px; justify-content:center; line-height:1.4; margin-top:27px; padding:15px 24px; text-decoration:none; transition:background .2s ease; white-space:nowrap;}
.home_lab_button img, .home_lab_button > span {display:none;}
.home_lab_button::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-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
.home_lab_button:hover, .home_lab_button:focus-visible {background:#6816bc; color:#fff; transform:none;}
.home_lab_button:hover::after, .home_lab_button:focus-visible::after {transform:translateX(6px);}
.home_lab_button:focus-visible {outline:3px solid #242333; outline-offset:4px;}
@media (prefers-reduced-motion:reduce) {
.home_lab_button::after {transition:none;}
.home_lab_button:hover::after, .home_lab_button:focus-visible::after {transform:none;}
}
.home_lab_evidence {background:#f8f6f2; border-radius:26px; padding:26px 34px 22px; position:relative; text-align:center;}
.home_lab_evidence::before {background:#f0eaf5; border-radius:50%; content:""; height:240px; left:50%; position:absolute; top:78px; transform:translateX(-50%); width:240px;}
.home_lab_document {align-items:center; color:#39294b; display:flex; flex-direction:column; gap:19px; padding:0; position:relative;}
.home_lab_certificate {filter:drop-shadow(0 15px 16px #3623481c); height:350px; object-fit:contain; transform:rotate(-3deg); transition:transform .35s; width:248px;}
.home_lab_document:hover .home_lab_certificate {transform:rotate(0);}
.home_lab_document > span {align-items:center; color:#755b87; display:flex; font-size:13px; font-weight:600; gap:8px; line-height:1.65;}
.home_lab_document > span img {flex-shrink:0; height:18px; width:18px;}
.home_lab_caption {color:#93899b; font:11px/1.6 Arial, sans-serif; margin-top:9px; position:relative;}
.home_lab_checks {display:grid; gap:18px; grid-template-columns:repeat(3, minmax(0, 1fr)); list-style:none;}
.home_lab_checks li {align-items:flex-start; background:#f1ebfa; border-radius:22px; display:flex; gap:16px; list-style:none; margin:0; padding:25px 23px;}
.home_lab_checks li > div {min-width:0;}
.home_lab_icon {background:#e9ddf5; border-radius:50%; display:grid; flex-shrink:0; height:42px; place-items:center; width:42px;}
.home_lab_icon img {height:24px; width:24px;}
.home_lab_checks li:nth-child(2) {background:#edf3e9;}
.home_lab_checks li:nth-child(2) .home_lab_icon {background:#dfebd9;}
.home_lab_checks li:nth-child(3) {background:#fff4e9;}
.home_lab_checks li:nth-child(3) .home_lab_icon {background:#f5e6d5;}
.home_lab_checks p {color:#776b82; font:14px/1.55 Arial, sans-serif; margin-top:7px;}

/* GUARANTEE */

.home_guarantee, .home_guarantee *, .home_guarantee *::before, .home_guarantee *::after {box-sizing:border-box;}
.home_guarantee {background:#fff; color:#242333; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; letter-spacing:normal; line-height:1.6; margin:0; padding:88px 0 0; text-align:left; width:100%;}
.home_guarantee_banner {align-items:center; background:#eeebf7; border-radius:24px; display:flex; gap:56px; margin:0 auto; max-width:1288px; padding:48px 56px;}
.home_guarantee_number {color:#8019ef; flex:0 0 1.25em; font-size:130px; font-variant-numeric:tabular-nums; font-weight:400; letter-spacing:-.04em; line-height:.85; min-width:1.25em; text-align:center; width:1.25em;}
.home_guarantee_number > span {display:block; font-size:13px; font-weight:400; letter-spacing:.3em; line-height:.85; margin-top:20px; text-align:center;}
.home_guarantee_copy {flex:1; min-width:0;}
.home_guarantee_eyebrow {color:#242333; font-size:11px; font-weight:650; letter-spacing:.15em; line-height:1.6; margin-bottom:20px;}
.home_guarantee h2 {color:#242333; font-family:inherit; font-size:40px; font-weight:500; letter-spacing:-.045em; line-height:1.1;}
.home_guarantee_description {color:#625c70; font-size:16px; font-weight:400; line-height:1.6; margin:16px 0;}
.home_guarantee_link {border-bottom:1px solid currentColor; color:#242333; display:inline-block; font-family:inherit; font-size:14px; font-weight:550; line-height:1.6; padding-bottom:4px; text-decoration:none;}
.home_guarantee_link span {font-weight:600;}
.home_guarantee_link:hover {color:#8019ef;}
.home_guarantee svg {display:block; fill:none; flex-shrink:0; stroke:currentColor; stroke-width:1.5;}
.home_guarantee_shield {color:#9681b7; height:80px; stroke-width:.65; width:80px;}
.home_guarantee_benefits {display:grid; gap:36px; grid-template-columns:repeat(3, minmax(0, 1fr)); margin:0 auto; max-width:1360px; padding:50px 36px 0;}
.home_guarantee_benefits article {border-bottom:1px solid #dce3d8; display:flex; gap:16px; padding:20px 0;}
.home_guarantee_benefits article > div {min-width:0;}
.home_guarantee_benefits svg {color:#8019ef; height:28px; width:28px;}
.home_guarantee_benefits h3 {color:#242333; font-family:inherit; font-size:20px; font-weight:550; letter-spacing:-.025em; line-height:1.3; margin-bottom:8px;}
.home_guarantee_benefits p {color:#696773; font-size:14px; font-weight:400; line-height:1.65;}


/* REVIEWS */

.home_reviews, .home_reviews *, .home_reviews *::before, .home_reviews *::after {box-sizing:border-box;}
.home_reviews {background:#f3effb; border-radius:28px; color:#242333; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; letter-spacing:normal; line-height:1.6; margin:72px auto; max-width:1360px; padding:58px 36px; text-align:left;}
.home_reviews_heading {align-items:flex-end; display:flex; gap:40px; justify-content:space-between; margin:0 0 36px;}
.home_reviews_eyebrow > div {min-width:0;}
.home_reviews_eyebrow {color:#7950a3; font-size:11px; font-weight:650; letter-spacing:.15em; line-height:1.6; margin:0 0 20px; padding:0;}
.home_reviews h2 {color:#503076; font-family:inherit; font-size:clamp(32px, 3.6vw, 52px); font-weight:500; letter-spacing:-.045em; line-height:1.1; margin:0; padding:0;}
.home_reviews_next {appearance:none; background:transparent; border:0; border-bottom:1px solid currentColor; border-radius:0; box-shadow:none; color:#7950a3; cursor:pointer; display:inline-block; flex-shrink:0; font:inherit; letter-spacing:normal; margin:0; padding:1px 6px 4px; text-transform:none;}
.home_reviews_next[hidden] {display:none;}
.home_reviews_next:hover {color:#8019ef;}
.home_reviews_next:focus-visible {outline:2px solid #8019ef; outline-offset:5px;}
.home_reviews_grid {display:grid; gap:20px; grid-template-columns:repeat(3, minmax(0, 1fr));}
.home_reviews_card {background:#fff; border:1px solid #e5daf2; border-radius:18px; display:flex; flex-direction:column; margin:0; min-width:0; padding:26px;}
.home_reviews_stars {color:#8a40c0; font-size:17px; font-weight:400; letter-spacing:3px; line-height:1.6;}
.home_reviews blockquote {background:transparent; border:0; color:#45374f; font-family:inherit; font-size:18px; font-style:normal; font-weight:400; letter-spacing:-.015em; line-height:1.6; margin:20px 0 24px; overflow-wrap:anywhere; padding:0;}
.home_reviews blockquote::before, .home_reviews blockquote::after {content:none;}
.home_reviews figcaption {align-items:center; color:#806a92; display:flex; font-size:14px; font-style:normal; font-weight:500; gap:12px; letter-spacing:normal; line-height:1.6; margin:auto 0 0; padding:0;}
.home_reviews_avatar {border-radius:50%; display:block; flex:0 0 42px; height:42px; margin:0; object-fit:cover; width:42px;}


/* VIDEOS */

.home_videos, .home_videos * {box-sizing:border-box;}
.home_videos {background:radial-gradient(ellipse at 95% 0%, #ddd3ff 0%, transparent 48%), linear-gradient(125deg, #faf7ff, #f0eaff); border-radius:32px; color:#242333; display:block; font:400 16px/1.5 "Inter", Arial, sans-serif; margin:40px auto; max-width:1360px; overflow:hidden; padding:64px 48px 52px; position:relative;}
.home_videos_heading {align-items:flex-end; display:flex; gap:24px; justify-content:space-between; margin-bottom:38px;}
.home_videos_eyebrow {align-items:center; color:#7123ba; display:flex; font-size:11px; font-weight:700; gap:9px; letter-spacing:.16em; line-height:1.5; margin:0;}
.home_videos_eyebrow > span {background:#8b18f5; border-radius:50%; box-shadow:0 0 0 5px #8b18f515; flex:0 0 8px; height:8px; width:8px;}
.home_videos h2 {color:#282038; font:650 clamp(40px, 4.8vw, 68px)/1.02 "Longevity Video Inter", Arial, sans-serif; letter-spacing:-.055em; margin:0;}
.home_videos h2 em {color:#8019ef; font-family:Georgia, serif; font-size:inherit; font-style:italic; font-weight:400; line-height:inherit;}
.home_videos_intro {color:#756583; font-size:17px; line-height:1.6; margin:0;}
.home_videos_list {display:grid; gap:24px; grid-template-columns:repeat(4, minmax(0, 1fr)); min-width:0; padding:5px 2px 10px;}
.home_videos_card {background:#fff; border:1px solid #fff; border-radius:24px; box-shadow:0 12px 26px #4024610c; margin:0; min-width:0; padding:8px; transition:transform .22s, box-shadow .22s;}
.home_videos_media {aspect-ratio:9 / 14; background:#eee; border-radius:18px; overflow:hidden; position:relative;}
.home_videos_media video {display:block; height:100%; object-fit:cover; width:100%;}
.home_videos_play {background:#8618f2; border:3px solid #ffffffd9; border-radius:50%; box-shadow:0 4px 24px #300b5460; color:#fff; cursor:pointer; display:grid; height:64px; left:50%; padding:16px; place-items:center; position:absolute; top:50%; touch-action:manipulation; transform:translate(-50%, -50%); width:64px;}
.home_videos_play[hidden] {display:none;}
.home_videos_play svg {display:block; fill:currentColor; height:26px; stroke:none; width:26px;}
.home_videos_play:focus-visible, .home_videos_list:focus-visible {outline:3px solid #8019ef; outline-offset:4px;}
.home_videos figcaption {align-items:center; color:#30213f; display:flex; font:600 17px/1.3 "Longevity Video Inter", Arial, sans-serif; gap:8px; justify-content:space-between; margin:0; padding:14px 10px 10px; text-align:left;}
.home_videos figcaption small {color:#9983ac; display:block; font-size:9px; font-weight:650; letter-spacing:.13em; margin-bottom:4px;}
.home_videos_watch {background:#f3ecfb; border-radius:50%; color:#8b18f5; display:grid; flex:0 0 32px; font-size:21px; height:32px; place-items:center; width:32px;}
@media (hover:hover) {.home_videos_card:hover {box-shadow:0 18px 32px #40246118; transform:translateY(-5px);}}
@media (prefers-reduced-motion:reduce) {.home_videos_card {transition:none;}}

/* MORE */

.home_more, .home_more *, .home_more *::before, .home_more *::after {box-sizing:border-box;}
.home_more {color:#242333; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; letter-spacing:normal; line-height:1.6; margin:0 auto; max-width:1360px; padding:30px 36px 108px; text-align:left;}
.home_more h2, .home_more h3, .home_more p {margin:0; padding:0;}
.home_more img {display:block;}
.home_more svg {fill:none; flex-shrink:0; stroke:currentColor; stroke-width:1.5;}

.home_more_story {align-items:center; background:#eff6ff; border:1px solid #e0ebfa; border-radius:28px; display:grid; gap:48px; grid-template-columns:1.15fr 1fr; padding:40px;}
.home_more_copy {min-width:0;}
.home_more_eyebrow {color:#8019ef; font-size:11px; font-weight:650; letter-spacing:.15em; margin-bottom:20px;}
.home_more h2 {color:#214c76; font-family:inherit; font-size:clamp(32px, 3.3vw, 48px); font-weight:500; letter-spacing:-.045em; line-height:1.12; margin-bottom:24px;}
.home_more h2 em {color:#8019ef; font:inherit;}
.home_more_copy > p:not(.home_more_eyebrow) {color:#696773; font-size:17px; line-height:1.75; margin-bottom:20px; max-width:560px;}
.home_more_copy > p.home_more_lead {color:#365775; font-size:19px;}
.home_more_button {align-items:center; background:#8019ef; border:0; border-radius:30px; color:#fff; display:inline-flex; font-family:inherit; font-size:15px; font-weight:550; gap:30px; justify-content:center; line-height:1.6; margin-top:10px; padding:15px 24px; text-decoration:none; transition:background .2s ease; white-space:nowrap;}
.home_more_button > span {display:none;}
.home_more_button::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-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
.home_more_button:hover, .home_more_button:focus-visible {background:#6611c6; color:#fff; transform:none;}
.home_more_button:hover::after, .home_more_button:focus-visible::after {transform:translateX(6px);}
.home_more_button:focus-visible {outline:3px solid #8019ef; outline-offset:4px;}
@media (prefers-reduced-motion:reduce) {
.home_more_button::after {transition:none;}
.home_more_button:hover::after, .home_more_button:focus-visible::after {transform:none;}
}

/* The three selectable value points. */
.home_more_reasons {display:flex; flex-direction:column; gap:0; margin-top:30px;}
.home_more_reasons article {background:none; border:0; border-radius:0; border-top:1px solid #d8e1ed; column-gap:12px; display:grid; grid-template-columns:36px minmax(0, 1fr); isolation:isolate; padding:16px 12px; position:relative; row-gap:4px; transition:background .2s ease, box-shadow .2s ease;}
.home_more_reasons h3 {color:#64417f; font-family:inherit; font-size:18px; font-weight:550; letter-spacing:-.03em; line-height:1.3;}
.home_more_reasons p {color:#756580; font-size:13px; line-height:1.5;}
.home_more_icon {align-self:center; color:#8154af; display:grid; grid-row:1 / 3; height:34px; place-items:center; width:34px;}
.home_more_icon svg {height:27px; stroke-width:1.6; width:27px;}
.home_more_reasons article:nth-child(2) h3 {color:#28698f;}
.home_more_reasons article:nth-child(2) p {color:#55758b;}
.home_more_reasons article:nth-child(2) .hr-value-icon {color:#327ea9;}
.home_more_reasons article:nth-child(3) h3 {color:#52578e;}
.home_more_reasons article:nth-child(3) p {color:#6a6e92;}
.home_more_reasons article:nth-child(3) .hr-value-icon {color:#686bb1;}
.home_more_reasons article:has([aria-pressed="true"]) {background:#e8ddfa; border-radius:0 12px 12px 0; box-shadow:inset 3px 0 #8518ed;}
.home_more_reasons article:nth-child(2):has([aria-pressed="true"]) {background:#dceefa; box-shadow:inset 3px 0 #327ea9;}
.home_more_reasons article:nth-child(3):has([aria-pressed="true"]) {background:#e3e5f8; box-shadow:inset 3px 0 #686bb1;}
.home_more_reasons article:has([aria-pressed="true"]), .home_more_reasons article:has([aria-pressed="true"]) + article {border-top-color:transparent;}
.home_more_trigger {appearance:none; background:none; border:0; border-radius:0; box-shadow:none; color:inherit; cursor:pointer; font:inherit; letter-spacing:inherit; margin:0; padding:0; text-align:left; text-transform:none;}
.home_more_trigger::after {border-radius:10px; content:""; inset:0; position:absolute; z-index:1;}
.home_more_trigger:focus-visible {outline:none;}
.home_more_trigger:focus-visible::after {outline:3px solid #8019ef; outline-offset:3px;}
.home_more_copy > p.home_more_note {color:#7c7587; font-size:10px; line-height:1.5; margin:12px 0 0;}

/* Keep all three scenes in one grid cell to avoid jumping when switching. */
.home_more_visual {background:linear-gradient(145deg, #e6e7fc, #dceefd); border:1px solid #dbe4f4; border-radius:26px; container:bottle-value-visual / inline-size; display:grid; min-width:0; overflow:hidden; padding:40px 18px; text-align:center;}
.home_more_scene {animation:bottle-value-reveal .3s ease both; grid-area:1 / 1; min-width:0;}
.home_more_scene[hidden] {animation:none; display:block; pointer-events:none; visibility:hidden;}
.home_more_visual strong {color:#36224f; font-weight:500;}
.home_more_scene > p {color:#564a6c; font-size:15px; line-height:1.65; margin-top:12px; min-height:50px;}
.home_more_label {color:#624093; display:grid; font-size:10px; font-weight:600; letter-spacing:.12em; min-height:28px; place-items:center;}
@keyframes bottle-value-reveal {
  from {opacity:0; transform:translateY(7px);}
  to {opacity:1; transform:translateY(0);}
}
@media (prefers-reduced-motion:reduce) {
  .home_more_scene {animation:none;}
}

/* View 1: bottle sizes. */
.home_more_saving {align-items:center; color:#624093; display:flex; flex-direction:column; font-size:15px; gap:3px; line-height:1.4;}
.home_more_saving strong {color:#8019ef; font-size:clamp(64px, 6.2vw, 88px); font-weight:650; letter-spacing:-.065em; line-height:1.04;}
.home_more_bottles {align-items:center; display:flex; height:240px; justify-content:center; padding:18px 0;}
.home_more_bottles img {filter:drop-shadow(0 14px 12px #35205c15); height:100%; margin:0 -3%; object-fit:contain; width:38%;}
.home_more_bottles img:first-child {transform:rotate(-9deg) translateY(12px);}
.home_more_bottles img:nth-child(2) {transform:scale(1.1); z-index:1;}
.home_more_bottles img:last-child {transform:rotate(9deg) translateY(12px);}
.home_more_comparison {align-items:center; background:#ffffffb8; border:1px solid #fff; border-radius:18px; display:grid; gap:8px; grid-template-columns:1fr 24px 1fr; padding:17px 12px;}
.home_more_comparison div {display:flex; flex-direction:column; gap:3px; min-width:0;}
.home_more_comparison div > span {color:#746984; font-size:11px; line-height:1.4;}
.home_more_comparison strong {color:#766b82; font-size:29px; font-weight:650; letter-spacing:0; line-height:1.2;}
.home_more_comparison div:last-child strong {color:#8019ef;}
.home_more_comparison strong .home_more_dash {color:inherit; display:inline-block; font:inherit; letter-spacing:0; margin-inline:.09em; text-align:center; width:.32em;}
.home_more_comparison small {color:#746984; font-size:11px;}
.home_more_arrow {color:#9563b7; font-size:23px;}

/* View 2: price per capsule. The values are in section.html. */
.home_more_cost, .home_more_quality {align-items:center; display:flex; gap:12px; height:350px; justify-content:center; padding:24px 0 10px; position:relative;}
.home_more_cost > img {filter:drop-shadow(0 14px 12px #35205c15); height:90%; object-fit:contain; transform:rotate(-7deg); width:48%;}
.home_more_prices {display:grid; gap:12px; text-align:left; width:45%;}
.home_more_price {background:#ffffffb8; border:1px solid #d8e1ed; border-radius:14px; color:#365775; display:grid; gap:3px; padding:14px;}
.home_more_price:last-child {background:#fff; border-color:#91b7d0;}
.home_more_price > span {font-size:12px;}
.home_more_price > strong {color:#214c76; font-size:clamp(22px, 2.6vw, 34px); line-height:1.1;}
.home_more_price small {font-size:10px;}
.home_more_price b {color:#28698f; font-size:10px; margin-top:4px;}
.home_more_note {color:#776987; display:block; font-size:11px; line-height:1.5; margin:12px auto 0;}

/* View 3: GMP manufacturing. */
.home_more_bottle {filter:drop-shadow(0 14px 12px #35205c15); height:85%; object-fit:contain; position:relative; transform:rotate(-8deg); width:49%; z-index:1;}
.home_more_card {align-items:center; background:#ffffffd9; border:1px solid #dcdcf2; border-radius:20px; box-shadow:0 12px 30px #35205c12; color:#52578e; display:flex; flex-direction:column; gap:14px; justify-content:center; min-height:65%; padding:20px 12px; transform:rotate(5deg); width:43%;}
.home_more_card svg {height:44px; width:44px;}
.home_more_card strong {color:#52578e; font-size:clamp(28px, 4vw, 48px); letter-spacing:.02em; line-height:1;}
.home_more_card > span {font-size:12px; line-height:1.5;}

/* QUALITY */

.home_quality_proof, .home_quality_proof *, .home_quality_proof *::before, .home_quality_proof *::after {box-sizing:border-box;}
.home_quality_proof {background:#fff; color:#242333; font:16px/1.6 "Inter", Arial, sans-serif; margin:0 auto; max-width:1360px; padding:44px 36px; width:100%;}
.home_quality_proof p, .home_quality_proof h2 {margin:0;}
.home_quality_heading {align-items:flex-end; display:flex; gap:40px; justify-content:space-between; margin-bottom:36px;}
.home_quality_eyebrow {color:#8019ef; font-size:11px; font-weight:650; letter-spacing:.15em; margin:0 0 20px;}
.home_quality_proof h2 {color:#242333; font:500 clamp(32px, 3.6vw, 52px)/1.1 "Inter", Arial, sans-serif; letter-spacing:-.045em;}
.home_quality_proof h2 em {color:#8019ef; font-family:inherit; font-style:normal; font-weight:500;}
.home_quality_button {align-items:center; background:#8019ef; border-radius:30px; color:#fff; display:inline-flex; font-size:15px; font-weight:550; gap:30px; justify-content:center; padding:15px 24px; text-decoration:none; transition:background .2s ease; white-space:nowrap;}
.home_quality_button span {color:transparent; display:inline-block; flex-shrink:0; font-size:inherit; height:1em; position:relative; transition:transform .2s ease; width:1.05em;}
.home_quality_button span::before {background:#fff; content:""; height:.14em; left:0; position:absolute; right:.1em; top:46%; transform:translateY(-50%);}
.home_quality_button span::after {border-right:.14em solid #fff; border-top:.14em solid #fff; box-sizing:border-box; content:""; height:.5em; position:absolute; right:.07em; top:46%; transform:translateY(-50%) rotate(45deg); width:.5em;}
.home_quality_proof .home_quality_button:hover {background:#6611c6; transform:none;}
.home_quality_button:hover span, .home_quality_button:focus-visible span {transform:translateX(6px);}
.home_quality_button:focus-visible {outline:3px solid #242333; outline-offset:4px;}
@media (prefers-reduced-motion:reduce) {.home_quality_button span {transition:none;} .home_quality_button:hover span, .home_quality_button:focus-visible span {transform:none;}}
.home_quality_grid {display:grid; gap:22px; grid-template-columns:1.25fr 1fr; grid-template-rows:1fr 1fr;}
.home_quality_grid > div {border-radius:20px; overflow:hidden; position:relative;}
.home_quality_grid span {display:block; font-size:11px; font-weight:600; letter-spacing:.16em;}
.home_quality_origin {background:#123e31; grid-column:1; grid-row:1 / 3; min-height:390px;}
.home_quality_origin img {height:100%; inset:0 0 0 auto; object-fit:cover; object-position:center 45%; position:absolute; width:68%;}
.home_quality_origin::after {background:linear-gradient(90deg, #123e31 0%, #123e31e8 24%, #123e3100 68%), linear-gradient(0deg, #071e23bd, transparent 52%); content:""; inset:0; position:absolute;}
.home_quality_origin > div {bottom:30px; color:white; left:32px; position:absolute; z-index:1;}
.home_quality_origin span {color:#c2dfc9;}
.home_quality_origin strong {display:block; font-size:42px; font-weight:550; letter-spacing:-.035em; line-height:1.1; margin-top:10px;}
.home_quality_standard {align-items:center; background:#e8f4ff; color:#124e88; display:flex; gap:24px; grid-column:2; grid-row:1; min-height:184px; padding:28px;}
.home_quality_standard svg {fill:none; flex-shrink:0; height:44px; stroke:currentColor; stroke-width:1.3; width:44px;}
.home_quality_standard strong {display:block; font-size:29px; font-weight:550; letter-spacing:-.035em; line-height:1.1; margin-top:10px;}
.home_quality_standard p {font-size:12px; line-height:1.5; margin-top:12px;}
.home_quality_guarantee {align-items:center; background:linear-gradient(180deg, transparent 0%, rgba(40, 12, 63, .55) 100%), linear-gradient(110deg, #7832a9 0%, #594b92 48%, #327e92 100%); color:#fff; display:flex; gap:28px; grid-column:2; grid-row:2; min-height:184px; padding:28px;}
.home_quality_guarantee > strong {font-size:92px; font-weight:500; letter-spacing:-.08em; line-height:1;}
.home_quality_guarantee p {font-size:16px; line-height:1.5; margin-top:14px;}

/* COMPARE */

.home_compare, .home_compare * {box-sizing:border-box;}
.home_compare {color:#242333; font:16px/1.6 "Inter", Arial, sans-serif; margin:0 auto; max-width:1360px; padding:26px 36px 12px; width:100%;}
.home_compare_scroll {-webkit-overflow-scrolling:touch; border:1px solid #dce3d8; border-radius:18px; overflow-x:auto;}
.home_compare_scroll:focus-visible {outline:3px solid #841bec; outline-offset:4px;}
.home_compare table {background:#fff; border-collapse:collapse; font:inherit; min-width:780px; table-layout:fixed; width:100%;}
.home_compare_feature_col {width:24%;}
.home_compare_ours_col {width:37%;}
.home_compare caption {background:#fff; color:#747080; font-size:13px; padding:18px 24px; text-align:left;}
.home_compare th, .home_compare td {border-top:1px solid #e1e7dc; hyphens:none; overflow-wrap:normal; padding:20px 24px; text-align:left; vertical-align:middle; word-break:normal;}
.home_compare thead th {font-size:19px; font-weight:550; letter-spacing:-.02em;}
.home_compare tbody th {font-weight:500;}
.home_compare th:nth-child(2), .home_compare td:nth-child(2) {background:#f1eaff; color:#6421a0;}
.home_compare td:last-child {color:#817888; font-size:14px;}
.home_compare_brand, .home_compare_feature, .home_compare_benefit {align-items:center; display:flex;}
.home_compare_brand {gap:14px; min-height:65px;}
.home_compare_bottle {display:block; flex-shrink:0; height:64px; object-fit:contain; width:48px;}
.home_compare_own-bottle {height:64.891px; width:64.891px;}
.home_compare_logo {height:auto; max-width:65%; object-fit:contain; width:130px;}
.home_compare small {color:#827d8a; display:block; font-size:11px; font-weight:400; letter-spacing:0; margin-top:7px;}
.home_compare_feature {gap:12px;}
.home_compare_feature > svg {color:#786589; fill:none; flex-shrink:0; height:23px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.6; width:23px;}
.home_compare_benefit {gap:12px;}
.home_compare strong {font-weight:550;}
.home_compare_tick {background:#841bec; border-radius:50%; color:#fff; display:grid; flex-shrink:0; height:23px; place-items:center; width:23px;}
.home_compare_tick svg {fill:none; height:17px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2.5; width:17px;}
.home_compare td {transition:background-color .18s ease;}
.home_compare_only {border:0; clip:rect(0, 0, 0, 0); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; white-space:nowrap; width:1px;}

.home_compare td {transition:background-color .18s ease;}

@media (hover:hover) and (pointer:fine) {
.home_compare tbody tr:hover td:nth-child(2) {background:#e9dbfb;}
.home_compare tbody tr:hover td:last-child {background:#f5f2f8;}
}

@media (prefers-reduced-motion:reduce) {
.home_compare td {transition:none;}
}

/* TIME */

.home_time, .home_time *, .home_time *::before, .home_time *::after {box-sizing:border-box;}
.home_time {color:#242333; font-family:"Inter", Inter, Arial, sans-serif; font-size:16px; font-weight:400; letter-spacing:normal; line-height:1.6; margin:0 auto; max-width:1360px; padding:108px 36px; text-align:left;}
.home_time_panel {align-items:center; background:#fffdf6 url(../images/home/time-bg.jpg) center / cover no-repeat; border-radius:24px; display:flex; justify-content:flex-end; min-height:410px; overflow:hidden;}
.home_time_copy {color:#242333; min-width:0; padding:44px; width:52%;}
.home_time_eyebrow {color:#242333; font-family:inherit; font-size:11px; font-weight:650; letter-spacing:.15em; line-height:1.6; margin:0 0 20px; padding:0;}
.home_time_title {color:#242333; font-family:inherit; font-size:clamp(32px, 3.8vw, 50px); font-weight:550; letter-spacing:-.045em; line-height:1.12; margin:18px 0 24px; padding:0;}
.home_time_description {color:#242333; font-family:inherit; font-size:18px; font-weight:400; letter-spacing:normal; line-height:1.6; margin:0 0 30px; padding:0;}
.home_time_button {align-items:center; background:#8019ef; border:0; border-radius:30px; color:#fff; display:inline-flex; font-family:inherit; font-size:15px; font-weight:550; gap:30px; letter-spacing:normal; line-height:1.6; margin:0; padding:15px 24px; text-decoration:none; transition:background-color .2s ease;}
.home_time_button:hover {background:#6611c6;}
.home_time_button:focus-visible {outline:3px solid #8019ef; outline-offset:4px;}

/* CSS arrow matches the original and does not depend on a font glyph. */
.home_time_arrow {display:inline-block; flex-shrink:0; height:1em; position:relative; transition:transform .2s ease; width:1.05em;}
.home_time_arrow::before {background:#fff; content:""; height:.14em; left:0; position:absolute; right:.1em; top:46%; transform:translateY(-50%);}
.home_time_arrow::after {border-right:.14em solid #fff; border-top:.14em solid #fff; content:""; height:.5em; position:absolute; right:.07em; top:46%; transform:translateY(-50%) rotate(45deg); width:.5em;}
.home_time_button:hover .home_time_arrow, .home_time_button:focus-visible .home_time_arrow {transform:translateX(6px);}


/* FAQS */

.home_faq {background:#fff; color:#242333; display:grid; font:400 16px/1.6 "Inter", Inter, Arial, sans-serif; gap:80px; grid-template-columns:minmax(0, 1fr) minmax(0, 1.3fr); margin:0 auto; max-width:1360px; padding:0 36px 50px; text-align:left; width:100%;}
.home_faq, .home_faq *, .home_faq *::before, .home_faq *::after {box-sizing:border-box;}
.home_faq_eyebrow {color:#242333; font:650 11px/1.6 "Inter", Inter, Arial, sans-serif; letter-spacing:.15em; margin:0 0 20px; padding:0;}
.home_faq_title {color:#242333; font:500 clamp(32px, 3.6vw, 52px)/1.1 "Inter", Inter, Arial, sans-serif; letter-spacing:-.045em; margin:0; padding:0;}
.home_faq_link {border-bottom:1px solid currentColor; color:#242333; display:inline-block; font:550 14px/1.6 "Inter", Inter, Arial, sans-serif; margin:24px 0 0; padding:0 0 4px; text-decoration:none;}
.home_faq_link:hover {color:#8019ef;}
.home_faq_link:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}
.home_faq_item {background:#fff; border:1px solid #e5d9f4; border-radius:14px; box-shadow:none; display:block; margin:0 0 12px; overflow:hidden; padding:0; transition:border-color .18s, background-color .18s;}
.home_faq_item:hover, .home_faq_item[open] {background:#fcf9ff; border-color:#bd8ce9;}
.home_faq_item > summary {color:#202024; cursor:pointer; display:block; font:600 16px/1.5 "Inter", Inter, Arial, sans-serif; letter-spacing:0; list-style:none; margin:0; padding:23px 52px 23px 24px; position:relative;}
.home_faq_item > summary::-webkit-details-marker {display:none;}
.home_faq_item > summary::marker {content:"";}
.home_faq_item > summary::after {color:#9019ff; content:"+"; font-size:20px; font-weight:500; line-height:1; position:absolute; right:24px; top:50%; transform:translateY(-50%);}
.home_faq_item[open] > summary::after {content:"−";}
.home_faq_item > summary:focus-visible {border-radius:12px; outline:2px solid #9019ff; outline-offset:-4px;}
.home_faq_item > p {color:#64616a; font:400 15px/1.75 "Inter", Inter, Arial, sans-serif; letter-spacing:normal; margin:0; overflow-wrap:anywhere; padding:0 24px 24px;}


/* FEATURED */

.home_featured, .home_featured *, .home_featured *::before, .home_featured *::after {box-sizing:border-box;}
.home_featured {background:linear-gradient(125deg,#f5edff,#edf5ff 65%,#f4faf8); color:#30223f; font-family:"Inter",Inter,Arial,sans-serif; isolation:isolate; margin:24px auto 0; overflow:hidden; padding:64px max(24px,calc((100% - 1200px)/2)) 70px; position:relative; text-align:center;}
.home_featured::before, .home_featured::after {border:1px solid #b998df36; border-radius:50%; content:""; height:300px; pointer-events:none; position:absolute; width:300px; z-index:-1;}
.home_featured::before {box-shadow:0 0 0 40px #b998df0b,0 0 0 80px #b998df07; left:-130px; top:-160px;}
.home_featured::after {bottom:-210px; height:480px; right:-150px; width:480px;}
.home_featured .home_featured_eyebrow {align-items:center; color:#78568f; display:flex; font-size:10px; font-weight:650; gap:9px; justify-content:center; letter-spacing:.19em; line-height:1.6; margin:0 0 12px;}
.home_featured_eyebrow span {color:#9019ff; font-size:18px;}
.home_featured h2 {color:#000; font-size:clamp(30px,3.3vw,46px); font-weight:550; letter-spacing:-1.5px; line-height:1.3; margin:0 0 34px;}
.home_featured h2 em {color:#8424d8; font-family:Georgia,serif; font-style:normal; font-weight:400;}
.home_featured_logos {display:grid; gap:16px; grid-template-columns:repeat(6,minmax(0,1fr)); margin:0 auto; max-width:1200px;}
.home_featured_logo {align-items:center; background:#ffffffc9; border:1px solid #fff; border-radius:18px; box-shadow:0 5px 18px #51367606; display:flex; height:100px; justify-content:center; min-width:0; padding:20px 18px; transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
.home_featured_logo img {display:block; filter:grayscale(1); height:42px; max-width:100%; object-fit:contain; opacity:.8; transition:filter .25s ease,opacity .25s ease; width:140px;}
.home_featured_logo:nth-child(2) img {width:122px;}
.home_featured_logo:nth-child(3) img {width:172px;}
.home_featured_logo:nth-child(4) img {width:155px;}
@media (hover:hover) {
.home_featured_logo:hover {border-color:#dac4ef; box-shadow:0 12px 25px #51367612; transform:translateY(-5px);}
.home_featured_logo:hover img {filter:grayscale(0); opacity:1;}
}

@media (prefers-reduced-motion:reduce) {
.home_featured_logo, .home_featured_logo img {transition:none;}
.home_featured_logo:hover {transform:none;}
}

/* BLOG */


#home_blog_cont {padding-top:50px;}
.home_blog {--blog-ink:#392b47; --blog-muted:#776987; --blog-purple:#8019ef; color:var(--blog-ink); font:400 16px/1.6 Inter, Arial, sans-serif; margin:0 auto; max-width:1360px; scroll-margin-top:100px; text-align:left; width:100%;}
.home_blog, .home_blog *, .home_blog *::before, .home_blog *::after {box-sizing:border-box;}
.home_blog_panel {background:#f4effa; border-radius:28px; padding:40px;}
.home_blog_heading {align-items:center; display:flex; gap:24px; justify-content:space-between; margin-bottom:34px;}
.home_blog_heading h2 {color:var(--blog-ink); font:500 clamp(32px, 3.6vw, 50px)/1.1 Inter, Arial, sans-serif; letter-spacing:-.045em; margin:0; padding:0;}
.home_blog_all {align-items:center; border-bottom:1px solid currentColor; color:#7950a3; display:inline-flex; flex:none; font-size:14px; font-weight:550; gap:12px; line-height:1.6; padding-bottom:5px; text-decoration:none;}
.home_blog_grid {align-items:start; display:grid; gap:36px; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);}
.home_blog_card {border-radius:18px; color:inherit; display:block; text-decoration:none;}
.home_blog_image {aspect-ratio:620 / 350; background:#e6dfed; border-radius:18px; overflow:hidden;}
.home_blog_list .home_blog_card {align-items:center; display:grid; gap:20px; grid-template-columns:38% minmax(0, 1fr);}
.home_blog_list .home_blog_image {aspect-ratio:4 / 3; border-radius:14px;}
.home_blog_list .home_blog_copy {padding-top:0;}
.home_blog_image img {display:block; height:100%; object-fit:cover; transition:transform .3s ease; width:100%;}
.home_blog_copy {padding-top:22px;}
.home_blog_copy h3 {color:var(--blog-ink); font:600 21px/1.25 Inter, Arial, sans-serif; letter-spacing:-.025em; margin:0 0 10px; padding:0; transition:color .2s;}
.home_blog_featured h3 {font-size:28px;}
.home_blog_copy p {color:var(--blog-muted); font:400 14px/1.65 Inter, Arial, sans-serif; letter-spacing:normal; margin:0 0 12px; padding:0;}
.home_blog_featured p {font-size:16px; max-width:49ch;}
.home_blog_read {align-items:center; color:#7950a3; display:inline-flex; font-size:14px; font-weight:550; gap:12px;}
.home_blog_list {display:grid; gap:24px;}
.home_blog_arrow {display:inline-block; flex:none; height:1em; position:relative; transition:transform .2s ease; width:1.05em;}
.home_blog_arrow::before {background:currentColor; content:""; height:.12em; left:0; position:absolute; right:.1em; top:50%; transform:translateY(-50%);}
.home_blog_arrow::after {border-right:.12em solid currentColor; border-top:.12em solid currentColor; content:""; height:.5em; position:absolute; right:.07em; top:50%; transform:translateY(-50%) rotate(45deg); width:.5em;}
.home_blog_all:hover, .home_blog_card:hover h3 {color:var(--blog-purple);}
.home_blog_all:hover .home_blog_arrow, .home_blog_all:focus-visible .home_blog_arrow, .home_blog_card:hover .home_blog_arrow, .home_blog_card:focus-visible .home_blog_arrow {transform:translateX(4px);}
.home_blog_card:focus-visible, .home_blog_all:focus-visible {outline:2px solid var(--blog-purple); outline-offset:6px;}
@media (hover:hover) and (pointer:fine) {.home_blog_card:hover img {transform:scale(1.025);}}


/* HOMEPAGE SCROLL ANIMATIONS */

.home_scroll_enabled .home_scroll_reveal {opacity:0; translate:0 34px; transition:opacity .85s ease, translate 1.05s cubic-bezier(.22,1,.36,1); transition-delay:var(--reveal-delay,0ms);}
.home_scroll_enabled .home_scroll_reveal.home_scroll_visible {opacity:1; translate:0 0;}
.home_scroll_enabled .home_hero_reveal {opacity:0; translate:0 25px; transition:opacity 1s ease, translate 1.2s cubic-bezier(.22,1,.36,1); transition-delay:var(--reveal-delay,0ms);}
.home_scroll_enabled.home_intro_ready .home_hero_reveal {opacity:1; translate:0 0;}
.home_scroll_enabled .home_hero_scene, .home_scroll_enabled .home_pure_image {overflow:hidden;}
.home_scroll_enabled .home_hero_coast {will-change:transform;}
.home_scroll_photo {backface-visibility:hidden;}
.home_scroll_enabled #products_faq_list .products_faq_list.home_scroll_reveal {transition:opacity .85s ease, translate 1.05s cubic-bezier(.22,1,.36,1), background-color .18s ease, border-color .18s ease; transition-delay:var(--reveal-delay,0ms),var(--reveal-delay,0ms),0ms,0ms;}

@media (prefers-reduced-motion:reduce) {
.home_scroll_enabled .home_scroll_reveal, .home_scroll_enabled .home_hero_reveal {opacity:1; translate:none; transition:none;}
}


/******************
    CATEGORIES
******************/

#category_cont {margin:0 auto; max-width:1600px;}

/* top */
#categories_intro {margin:0 auto 20px auto;}
#categories_intro h1 {box-sizing:border-box; color:#000; float:left; font-size:40px; font-weight:300; padding:40px 40px 40px 20px; width:50%;}

#categories_search_cont {--search-x:40px; --search-y:32px; box-sizing:border-box; float:right; font-family:"Inter", Arial, sans-serif; padding:var(--search-y) var(--search-x) 0; position:relative; width:50%;}

#categories_search {appearance:none; background:#ffffff; border:1px solid #ded6e8; border-radius:32px; box-sizing:border-box; color:#30263d; display:block; font-family:inherit; font-size:17px; font-weight:400; height:58px; line-height:1.4; margin:0; padding:0 68px 0 24px; text-align:left; transition:border-color .22s ease; width:100%;}
#categories_search:focus {border-color:#8119f5; outline:2px solid #8119f5; outline-offset:2px;}

#categories_search_label {background:#ffffff; box-sizing:border-box; font-family:inherit; font-size:17px; font-weight:400; left:calc(var(--search-x) + 20px); line-height:1.4; margin:0; max-width:calc(100% - var(--search-x) - var(--search-x) - 84px); overflow:hidden; padding:0 4px; pointer-events:none; position:absolute; text-align:left; text-overflow:ellipsis; transform-origin:left center; transition:color .22s ease, top .22s ease, transform .22s ease; white-space:nowrap; z-index:1;}
#categories_search_label.categories_search_label_no_value {color:#74677f; top:calc(var(--search-y) + 29px); transform:translateY(-50%) scale(1);}
#categories_search_label.categories_search_label_value {color:#8119f5; top:var(--search-y); transform:translateY(-50%) scale(.76);}

#categories_search_cont::before {background:#8119f5; border-radius:50%; content:""; height:44px; pointer-events:none; position:absolute; right:calc(var(--search-x) + 7px); top:calc(var(--search-y) + 7px); width:44px; z-index:2;}
#categories_search_cont::after {background:url("../images/categories-search.png") center / 20px 20px no-repeat; content:""; filter:brightness(0) invert(1); height:20px; pointer-events:none; position:absolute; right:calc(var(--search-x) + 19px); top:calc(var(--search-y) + 19px); width:20px; z-index:2;}

#categories_search_label {left:60px; pointer-events:none; position:absolute; transition: all 0.2s ease;}
.categories_search_label_no_value {color:#000; font-size:24px; top:48px;}
.categories_search_label_value {color:#9b9b9b; font-size:16px; top:36px;}

#categories_search {background:url(../images/categories-search.png) no-repeat right 10px center #fff; background-size:32px 32px; border:1px solid #e1e1e1; border-radius:20px; box-sizing:border-box; font-size:24px; height:24px; padding:40px 20px 20px 20px; width:100%;}


/* side nav */

#category_mobile_filter {display:none;}
#category_side_filter {float:left; margin:20px 20px 0  0; width:220px;}
#category_side_filter h2 {background:url(../images/filter.png) left 15px top no-repeat; background-size:20px 20px; color:#000; font-size:18px; padding:0 0 20px 40px;}
#category_side_filter li {border-radius:10px; cursor:pointer; margin-bottom:5px; padding:7px 15px; width:160px;}
#category_side_filter li:hover {background:#efeef3; color:#000;}
#category_side_filter li:hover .categories_benefit_box {border:1px solid #000;}
#category_side_filter li a {border-radius:10px; display:block; float:left; font-size:14px; }
.categories_benefit_box {background:#fff; border-radius:5px; display:block; float:left; font-size:16px; height:16px; margin:0px 7px 0 0; width:16px;}

#category_side_filter .categories_benefit_current {color:#000; font-weight:bold;}
#category_side_filter .categories_benefit_current .categories_benefit_box {background:url(../images/tick-white.png) center center no-repeat #9019ff; background-size:16px 16px; border:1px solid #9019ff;}
#category_side_filter .categories_benefit_other .categories_benefit_box {border:1px solid #b1b6be;}
 
/* products */

#cat_products {box-sizing:border-box; display:grid; float:left; gap:24px; grid-template-columns:repeat(3, minmax(0, 1fr)); padding:20px 10px; width:calc(100% - 240px);}
#cat_products .categories_product {margin:0; width:100%;}

.categories_product, .categories_product * {box-sizing:border-box;}
.categories_product {background:var(--product-bg, #eeeaf7); border:1px solid #e4ddea; border-radius:20px; box-shadow:none; cursor:pointer; display:inline-flex; flex-direction:column; font-family:"Inter", Inter, Arial, sans-serif; height:auto; margin:20px 10px; min-width:0; overflow:hidden; position:relative; vertical-align:top; width:300px;}
.categories_product:hover {box-shadow:none;}
.categories_product a {color:inherit; text-decoration:none; white-space:normal;}
.categories_product h3 {color:var(--product-color, #594273); float:none; font-size:23px; font-weight:600; height:auto; letter-spacing:-.035em; line-height:1.2; margin:0; min-height:77px; padding:20px 22px 2px; text-align:left; width:auto;}
.categories_product_features, .categories_product_price_from, .categories_product .clr {display:none;}

.categories_product_bottle {aspect-ratio:1; background-position:center calc(50% - 8px); background-repeat:no-repeat; background-size:calc(100% - 48px) auto; flex:0 0 auto; height:auto; margin:0; width:100%;}

.categories_product_price {align-items:center; background:#ffffff; display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; left:auto; margin-top:auto; padding:18px 22px; position:relative; text-align:left;}
.categories_product_price_cont {float:none; width:auto;}
.categories_product_price_dollar {color:#111111; font-size:18px; font-weight:650; line-height:1.3; white-space:nowrap;}

.categories_product_shop {float:none; width:auto;}
.categories_product_shop a {align-items:center; background:var(--product-color, #594273); border:0; border-radius:28px; color:#ffffff; display:inline-flex; font-size:13px; font-weight:600; gap:13px; height:auto; justify-content:center; line-height:1.3; margin:0; min-height:38px; min-width:96px; padding:10px 17px; text-align:center; width:auto;}
.categories_product_shop a span {display:inline-block; flex:0 0 auto; font-family:"Product Arrows", sans-serif; font-size:18px; font-weight:600; line-height:1; transform:translateX(0); transition:transform 220ms ease-out;}
.categories_product a:focus-visible {outline:2px solid var(--product-color, #594273); outline-offset:3px;}
.categories_product_shop a:focus-visible span {transform:translateX(6px);}

.categories_product_bottle {transition:transform .2s ease;}

#cat_products #categories_no_results {grid-column:1 / -1;}

@media (hover:hover) and (pointer:fine) {
  .categories_product:hover .categories_product_shop a span {transform:translateX(6px);}
  .categories_product:hover .categories_product_bottle {transform:translateY(-3px);}
}
@media (prefers-reduced-motion:reduce) {
  .categories_product_bottle, .categories_product_shop a span {transition:none;}
  .categories_product:hover .categories_product_bottle, .categories_product:hover .categories_product_shop a span, .categories_product_shop a:focus-visible span {transform:none;}
}


/******************
    THIRD PARTY TESTING
******************/

#third_cont, #third_cont *, #third_cont *::before, #third_cont *::after, #third_pop_cont, #third_pop_cont * {box-sizing:border-box;}
#third_cont {color:#302638; font-family:"Inter", Inter, Arial, sans-serif; margin:0 auto; max-width:1560px; padding:24px 36px 80px; width:100%;}

/* INTRO */

#third_intro_cont {background:linear-gradient(115deg, #eee8f6, #e9eef6); border-radius:24px; margin:12px 0 36px; overflow:hidden;}
#third_intro {align-items:center; column-gap:40px; display:grid; grid-template-columns:minmax(0, 1.35fr) minmax(0, 1fr); margin:0; padding:48px 56px;}

#third_text {min-width:0;}
#third_cont #third_eyebrow {color:#856497; font-family:inherit; font-size:11px; font-weight:700; letter-spacing:.17em; line-height:1.5; margin:0 0 16px; padding:0; text-align:left;}
#third_cont #third_title {color:#302539; font-family:inherit; font-size:clamp(32px, 3.4vw, 52px); font-weight:600; letter-spacing:-.045em; line-height:1.12; margin:0 0 22px; padding:0; text-align:left;}
#third_cont #third_title em {color:#8019ef; font-family:Georgia, "Times New Roman", serif; font-style:italic; font-weight:400;}
#third_cont #third_description {color:#71657c; font-family:inherit; font-size:16px; font-weight:400; line-height:1.65; margin:0; max-width:560px; padding:0; text-align:left;}

/* REPORT PREVIEW */

#third_image {align-items:center; display:flex; height:290px; justify-content:center; min-width:0; position:relative;}
#third_document_halo {background:rgba(255, 255, 255, .19); border:1px solid #d5c9e6; border-radius:50%; height:280px; position:absolute; width:280px;}
#third_image > img {background:#ffffff; box-shadow:0 18px 40px rgba(85, 64, 118, .15); display:block; height:270px; object-fit:cover; object-position:top; position:relative; transform:rotate(7deg); width:195px;}

#third_document_label {align-items:center; background:rgba(255, 255, 255, .94); border-radius:14px; bottom:4px; box-shadow:0 8px 24px rgba(85, 64, 118, .05); color:#70617e; display:flex; font-size:12px; gap:12px; line-height:1.6; padding:16px 20px; position:absolute; right:0;}
#third_document_label strong {color:#3f3151; font-size:14px; font-weight:600;}
#third_document_label svg {color:#9019ff; display:block; fill:none; flex:0 0 28px; height:28px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.5; width:28px;}

/* PRODUCT REPORT LINKS */

#third_products_cont {align-items:stretch; display:grid; gap:18px; grid-template-columns:repeat(7, minmax(0, 1fr)); margin:0; padding:0; scroll-margin-top:100px; text-align:left;}

#third_products_cont .third_product {align-items:center; background:#ffffff; border:1px solid #e5d9ef; border-radius:14px; box-shadow:none; color:#514859; cursor:pointer; display:flex; gap:12px; height:100%; margin:0; min-height:104px; min-width:0; padding:16px 12px; text-align:left; text-decoration:none; transition:background-color .18s ease, border-color .18s ease; width:100%;}
#third_products_cont .third_product_image {display:block; flex:0 0 44px; float:none; height:62px; margin:0; object-fit:contain; padding:0; width:44px;}
#third_products_cont .third_product_name {display:block; float:none; font-size:13px; font-weight:500; height:auto; line-height:1.4; min-width:0; width:auto;}
#third_products_cont .third_product_name small {color:#8053a2; display:block; font-size:11px; font-weight:400; line-height:1.4; margin-top:7px;}

#third_products_cont .third_product:focus-visible {outline:2px solid #861aeb; outline-offset:3px;}
#third_cont #third_products_empty {color:#71657c; font-size:16px; grid-column:1 / -1; line-height:1.6; margin:0; padding:32px 0; text-align:center;}

/* REPORT POPUP */

#third_pop_cont {background:#ffffff; border:1px solid #dde3e9; border-radius:16px; bottom:0; box-shadow:0 24px 80px rgba(23, 33, 47, .22); color:#263445; display:none; font-family:"Inter", Inter, Arial, sans-serif; height:90vh; height:90dvh; left:0; margin:auto; max-height:calc(100dvh - 32px); max-width:calc(100vw - 32px); overflow:hidden; padding:0; position:fixed; right:0; top:0; width:960px;}
#third_pop_cont[open] {display:flex; flex-direction:column;}
#third_pop_cont::backdrop {backdrop-filter:blur(4px); background:rgba(23, 33, 47, .6);}

/* POPUP HEADER */

#third_pop_cont .third_pop_header {align-items:center; background:#ffffff; border-bottom:1px solid #e1e6ec; display:flex; flex:0 0 auto; gap:24px; justify-content:space-between; margin:0; padding:20px 24px; width:100%;}
#third_pop_cont .third_pop_heading {min-width:0;}
#third_pop_cont .third_pop_heading p {color:#67788a; font-size:10px; font-weight:700; letter-spacing:.14em; line-height:1.5; margin:0 0 6px; padding:0;}
#third_pop_cont #third_pop_title {color:#263445; font-family:inherit; font-size:20px; font-weight:600; letter-spacing:-.025em; line-height:1.3; margin:0; overflow-wrap:anywhere; padding:0; text-align:left;}

/* POPUP CLOSE BUTTON */

#third_pop_cont #third_pop_close {align-items:center; appearance:none; background:#f3f5f7; border:1px solid #e1e6ec; border-radius:50%; color:#4b5a6b; cursor:pointer; display:flex; flex:0 0 44px; height:44px; justify-content:center; line-height:1; margin:0 0 0 auto; padding:0; position:static; transition:background-color .18s ease, border-color .18s ease; width:44px;}
#third_pop_cont #third_pop_close svg {display:block; fill:none; height:20px; margin:0; pointer-events:none; stroke:currentColor; stroke-linecap:round; stroke-width:1.8; width:20px;}
#third_pop_cont #third_pop_close:focus-visible {outline:2px solid #7751a8; outline-offset:3px;}

/* POPUP DOCUMENT */

#third_pop_cont .third_pop_body {background:#eef1f4; flex:1 1 auto; min-height:0; overflow:auto; overscroll-behavior:contain; padding:28px; scrollbar-gutter:stable;}
#third_pop_cont .third_pop_body img {background:#ffffff; border:1px solid #e1e6ec; box-shadow:0 3px 14px rgba(38, 52, 69, .05); display:block; height:auto; margin:0 auto; max-width:820px; padding:0; width:100%;}

html:has(#third_pop_cont[open]), body:has(#third_pop_cont[open]) {overflow:hidden;}

/* HOVER AND MOTION */

@media (hover:hover) and (pointer:fine) {
  #third_products_cont .third_product:hover {background:#fcfaff; border-color:#c9a9e1;}
  #third_pop_cont #third_pop_close:hover {background:#e8edf2; border-color:#c5d0db;}
}

@media (prefers-reduced-motion:reduce) {
  #third_products_cont .third_product, #third_pop_cont #third_pop_close {transition:none;}
}



/******************
    QUALITY
******************/


/* QUALITY PAGE */

#quality_cont {color:#302638; font-family:"Inter", Arial, sans-serif; font-size:15px; margin:0 auto; max-width:1140px; padding:24px 0 70px;}
#quality_cont, #quality_cont *, #quality_cont *::before, #quality_cont *::after {box-sizing:border-box;}
#quality_cont h1, #quality_cont h2, #quality_cont h3 {color:#302638; font-family:inherit; letter-spacing:-.045em; padding:0;}
#quality_cont h2 {font-size:42px; font-weight:500; line-height:1.12; margin:0 0 24px;}
#quality_cont p {line-height:1.7; margin:0 0 18px; padding:0;}
#quality_cont em {color:#8426d9; font-style:normal;}
#quality_cont img {display:block; max-width:100%;}
#quality_cont .quality_eyebrow {color:#876596; font-size:11px; font-weight:600; letter-spacing:.14em; line-height:1.5; margin:0 0 22px;}
#quality_cont .quality_section {padding:80px 0;}
#quality_cont .quality_copy {color:#796d82; font-size:15px;}
#quality_cont .quality_copy > p:last-child {margin-bottom:0;}
#quality_cont .quality_icon {display:block; fill:none; height:28px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.6; width:28px;}

/* INTRO */

#quality_intro {align-items:center; display:grid; gap:50px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); padding:20px 0 38px;}
#quality_intro .quality_intro_text {min-width:0;}
#quality_intro h1 {font-size:56px; font-weight:500; line-height:1.08; margin:0 0 26px;}
#quality_cont .quality_intro_lead {color:#716679; font-size:17px; margin:0 0 30px; max-width:490px;}
#quality_cont .quality_intro_note {color:#8a7d92; font-size:12px; margin:22px 0 0;}
#quality_cont .quality_intro_photo {border-radius:140px 20px 20px 20px; height:500px; margin:0 0 34px; min-width:0; position:relative;}
#quality_cont .quality_landscape {border-radius:inherit; height:100%; object-fit:cover; width:100%;}
#quality_cont .quality_photo_caption {color:#fff; left:30px; position:absolute; text-shadow:0 2px 15px #0008; top:50%;}
#quality_cont .quality_photo_caption > span {display:block; font-size:10px; letter-spacing:.15em; line-height:1.5; margin-bottom:8px;}
#quality_cont .quality_photo_caption > strong {display:block; font-size:38px; font-weight:500; line-height:1.2;}
#quality_cont .quality_bottle_stamp {align-items:center; background:#fff; border:1px solid #ece5ef; border-radius:16px; bottom:-30px; box-shadow:0 12px 35px #3921440c; display:flex; gap:22px; left:24px; padding:14px 26px; position:absolute; right:24px;}
#quality_cont .quality_bottle_stamp img {flex-shrink:0; height:84px; object-fit:contain; width:62px;}
#quality_cont .quality_bottle_stamp p {color:#8a7b93; font-size:13px; margin:0;}
#quality_cont .quality_bottle_stamp strong {color:#46304e; font-weight:500;}

/* BUTTONS AND ARROWS */

#quality_cont .quality_button {align-items:center; background:#9019ff; border:0; border-radius:999px; color:#fff; display:inline-flex; font-family:inherit; font-size:14px; font-weight:650; gap:28px; justify-content:center; line-height:1.5; min-height:50px; padding:15px 25px; text-decoration:none; transition:background .2s ease;}
#quality_cont .quality_button:hover {background:#7c12dc; color:#fff;}
#quality_cont .quality_arrow {background:currentColor; clip-path:polygon(0 40%,72% 40%,46% 12%,58% 0,100% 50%,58% 100%,46% 88%,72% 60%,0 60%); display:inline-block; flex-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
#quality_cont .quality_button:hover .quality_arrow, #quality_cont .quality_button:focus-visible .quality_arrow, #quality_cont .quality_text_link:hover .quality_arrow, #quality_cont .quality_text_link:focus-visible .quality_arrow {transform:translateX(6px);}
#quality_cont .quality_text_link {align-items:center; color:#8426d9; display:inline-flex; font-size:14px; font-weight:600; gap:18px; line-height:1.5; margin-top:6px; padding:4px 0; text-decoration:underline; text-underline-offset:6px;}
#quality_cont .quality_text_link:hover {color:#7c12dc;}
#quality_cont .quality_button:focus-visible, #quality_cont .quality_text_link:focus-visible {outline:2px solid #9019ff; outline-offset:5px;}

/* QUALITY STANDARDS */

#quality_standards {display:grid; gap:16px; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; margin:0; padding:8px 0 0;}
#quality_cont .quality_standard {align-items:center; background:#fff; border:1px solid #e1d5ed; border-radius:16px; box-shadow:0 4px 18px #45205f05; display:flex; gap:14px; margin:0; min-width:0; padding:22px 18px;}
#quality_cont .quality_standard_icon {align-items:center; background:#f1e5fd; border-radius:14px; color:#8426d9; display:flex; flex:0 0 46px; height:46px; justify-content:center; width:46px;}
#quality_cont .quality_standard strong {color:#493052; font-size:15px; font-weight:600; line-height:1.4;}

/* NEW ZEALAND ORIGIN */

#quality_origin {display:grid; gap:70px; grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
#quality_cont .quality_origin_text .quality_large {color:#49364f; font-size:24px; line-height:1.45; margin-bottom:20px;}

/* GMP MANUFACTURING */

#quality_manufacturing {background:#362046; border-radius:24px; color:#ddcfe6; display:grid; gap:70px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); padding:54px;}
#quality_manufacturing h2, #quality_manufacturing h3 {color:#fff;}
#quality_manufacturing .quality_eyebrow {color:#c8a9e4;}
#quality_manufacturing p {font-size:14px;}
#quality_cont .quality_gmp_mark {align-items:center; color:#d6b2ff; display:flex; gap:18px; margin-top:30px;}
#quality_cont .quality_gmp_mark > span {font-size:42px; letter-spacing:-.04em; line-height:1;}
#quality_cont .quality_gmp_mark small {font-size:10px; letter-spacing:.12em; line-height:1.6; max-width:130px;}
#quality_process > article {border-bottom:1px solid #795e874d; padding:22px 0;}
#quality_process > article:first-child {padding-top:0;}
#quality_process > article:last-child {border-bottom:0; padding-bottom:0;}
#quality_process h3 {font-size:20px; font-weight:500; line-height:1.3; margin:0 0 9px;}
#quality_process p {color:#c8b7d1; margin:0;}

/* INGREDIENT PURITY */

#quality_purity {align-items:center; display:grid; gap:70px; grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
#quality_cont .quality_purity_visual {background:#eae5f3; border-radius:22px; min-width:0; padding:34px 26px; text-align:center;}
#quality_cont .quality_purity_bottles {align-items:center; display:flex; justify-content:center; padding:20px 0 30px;}
#quality_cont .quality_purity_bottles img {height:220px; object-fit:contain; width:32%;}
#quality_cont .quality_purity_bottles img:nth-child(2) {height:275px; margin:0 -10px; position:relative; width:36%; z-index:1;}
#quality_cont .quality_purity_caption {color:#7a598e; font-size:25px; line-height:1.35; margin:0;}
#quality_cont .quality_purity_caption strong {color:#483450; font-weight:500;}
#quality_cont .quality_details {margin:25px 0 0; padding:0;}
#quality_cont .quality_details > div {border-top:1px solid #e2d9e6; padding:15px 0;}
#quality_cont .quality_details dt {color:#302638; font-size:14px; font-weight:600; line-height:1.5; margin:0 0 5px;}
#quality_cont .quality_details dd {color:#84768c; font-size:13px; line-height:1.6; margin:0;}

/* INDEPENDENT TESTING */

#quality_cont #quality_testing {align-items:center; display:grid; gap:80px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); padding-top:0;}
#quality_cont .quality_testing_text > p:not(.quality_eyebrow) {max-width:460px;}
#quality_report_guide {background:#eef4f9; border-left:3px solid #83adc9; color:#4f728c; padding:32px 36px;}
#quality_cont .quality_report_label {font-size:10px; letter-spacing:.14em; line-height:1.5; margin:0;}
#quality_report_guide h3 {color:#315770; font-size:28px; font-weight:500; line-height:1.15; margin:20px 0 25px;}
#quality_report_guide ol {list-style:decimal; margin:0; padding:0 0 0 22px;}
#quality_report_guide li {font-size:13px; margin:0; padding:0 0 18px 8px;}
#quality_report_guide li:last-child {padding-bottom:0;}
#quality_report_guide li strong {color:#315770; display:block; line-height:1.5; margin-bottom:5px;}
#quality_report_guide li span {display:block; line-height:1.6;}

/* CLOSING */

#quality_closing {align-items:center; border-top:1px solid #dfd5e5; display:flex; gap:40px; justify-content:space-between; margin-top:0; padding:36px 0 0;}
#quality_closing .quality_eyebrow {margin-bottom:12px;}
#quality_closing h2 {font-size:30px; margin-bottom:12px;}
#quality_cont .quality_closing_description {color:#84748c; font-size:14px; margin:0; max-width:640px;}
#quality_closing .quality_button {flex-shrink:0;}


/******************
    PAYMENT PAGE
******************/

/* CHECKOUT LAYOUT */

#payment_cont {background:#fff; color:#302638; font-family:"Inter", Inter, Arial, sans-serif;}
#payment_layout {align-items:start; box-sizing:border-box; display:grid; gap:38px; grid-template-columns:minmax(0,1fr) 500px; margin:0 auto; max-width:1100px; padding:36px 0 64px 28px;}

/* HEADER */

#payment_header_cont {background:#fff; border-bottom:1px solid #e9e3ee; height:auto;}
#payment_header_width {box-sizing:border-box; margin:0 auto; max-width:1100px; padding:20px 28px; width:100%;}
#payment_header {align-items:center; display:flex; float:none; justify-content:space-between; position:relative; width:100%;}

#payment_logo {padding:0; text-align:left;}
#payment_logo img {display:block; height:32px; width:150px;}
#payment_secure {align-items:center; color:#897b94; display:flex; flex-shrink:0; font-size:14px; font-weight:500; gap:9px; line-height:1.4; margin-left:24px; white-space:nowrap;}
#payment_secure svg {display:block; flex-shrink:0; height:20px; width:20px;}

/* FORM COLUMN */

#payment_form_cont {border:0; box-sizing:border-box; float:none; min-height:0; min-width:0; padding:0; width:100%;}
#payment_form {float:none; padding:0; width:100%;}
#payment {margin:0;}
#checkout_contact_head, #checkout_shipping_head {color:#302638; font-size:20px; font-weight:650; letter-spacing:-.4px; line-height:1.3; margin:0 0 18px; padding:0;}
#payment_form_email_phone {padding:0;}
#customer_email_cont {display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr));}
#customer_email_cont > .clr, .new_address_fields > .clr {display:none;}
#address_container {margin-top:30px;}
.new_address_fields {border-radius:0; display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); padding:0;}
#payment_hidden_totals, #hidden_fields {display:none;}
.payment_cont {box-sizing:border-box; float:none; min-width:0; position:relative; width:100%;}
.payment_cont_full {box-sizing:border-box; grid-column:1 / -1; min-width:0; position:relative; width:100%;}
.payment_field_left, .payment_field_right, .payment_field_full {padding:0;}

/* INPUTS AND LABELS */

.payment_label {color:#897b94; display:block; font-size:11px; font-weight:400; left:14px; line-height:1.2; pointer-events:none; position:absolute; top:9px; transition:top .18s ease, font-size .18s ease, transform .18s ease; z-index:1;}.payment_label.payment_label_no_value {color:#897b94; font-size:15px; top:29px; transform:translateY(-50%);}
.payment_label.payment_label_value {color:#897b94; font-size:11px; top:9px; transform:none;}
.payment_field_left .payment_label, .payment_field_right .payment_label, .payment_field_full .payment_label {left:14px;}
.payment_field {background:#fff; border:1px solid #dfd5e8; border-radius:12px; box-sizing:border-box; color:#302638; font-family:inherit; font-size:15px; font-weight:400; height:58px; line-height:20px; margin:0; outline:none; padding:25px 14px 9px; transition:border-color .2s ease, box-shadow .2s ease; width:100%;}
.payment_field:focus {border:1px solid #9019ff; box-shadow:0 0 0 3px rgba(144,25,255,.07); padding:25px 14px 9px;}
#shipping_address_label {background-image:url(../images/search-address.png); background-position:right 16.5px center; background-repeat:no-repeat; background-size:19px 19px; padding-right:40px;}

/* REGION SELECT */

/* REGION SELECT */
/* SEARCHABLE REGION DROPDOWN */
#payment_select_state.region_search_ready {overflow:visible;}
#payment_select_state.region_search_ready:focus-within {z-index:30;}
#payment_select_state.region_search_ready .payment_field_select {display:none;}
#payment_region_search {appearance:none; background:transparent; border:0; border-radius:12px; box-shadow:none; box-sizing:border-box; color:#302638; display:block; font-family:inherit; font-size:15px; height:56px; margin:0; outline:none; padding:23px 52px 8px 14px; width:100%;}
#payment_region_search::placeholder {color:#302638; opacity:1;}
#payment_region_results {background:#fff; border:1px solid #e5dced; border-radius:12px; box-shadow:0 12px 30px rgba(48,38,56,.12); box-sizing:border-box; left:0; list-style:none; margin:8px 0 0; max-height:240px; overflow-y:auto; overscroll-behavior:contain; padding:6px; position:absolute; right:0; scrollbar-color:#d8cce4 transparent; scrollbar-width:thin; top:100%; z-index:31;}
#payment_region_results li {background:none; border:0; border-radius:7px; color:#493b54; cursor:pointer; display:block; font-size:14px; line-height:1.4; list-style:none; margin:0; padding:10px 12px;}
#payment_region_results li:hover, #payment_region_results li.region_active {background:#f3ebfc; color:#7915ce;}
#payment_region_results li.region_no_results {background:none; color:#897b94; cursor:default;}

#payment_select_state {background:#fff; border:1px solid #dfd5e8; border-radius:12px; box-sizing:border-box; height:58px; margin:0; overflow:hidden; position:relative; width:100%;}
#payment_select_state:focus-within {border-color:#9019ff; box-shadow:0 0 0 3px rgba(144,25,255,.07);}
#payment_select_state .payment_label_select {color:#897b94; display:block; font-size:11px; left:14px; line-height:1.2; pointer-events:none; position:absolute; top:9px;}
#payment_select_state .payment_field_select {-webkit-appearance:none; appearance:none; background:transparent; border:0; border-radius:12px; box-shadow:none; box-sizing:border-box; color:#302638; cursor:pointer; display:block; font-family:inherit; font-size:15px; height:56px; margin:0; outline:none; padding:23px 52px 8px 14px; width:100%;}
#payment_select_state::after {background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 4L6 8L10 4' fill='none' stroke='%23302638' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain; border:0; content:""; height:12px; pointer-events:none; position:absolute; right:20px; top:50%; transform:translateY(-50%); width:12px;}

/* COUNTRY */

#payment_field_country {background:#fff; border:1px solid #dfd5e8; border-radius:12px; box-sizing:border-box; height:58px; padding:25px 14px 9px; position:relative; width:100%;}
#payment_form_country_label {color:#897b94; display:block; font-size:11px; left:14px; line-height:1.2; position:absolute; top:9px;}
#payment_form_country_value {background:transparent; border:0; border-radius:0; box-sizing:border-box; color:#302638; font-size:15px; height:auto; line-height:20px; padding:0; width:100%;}

/* VALIDATION */

#payment .payment_field.payment_error_border, #payment .payment_field.error_field, #payment_select_state.payment_error_border, #payment_select_state.error_field {background:#fffafb; border:1px solid #c52b50 !important; box-shadow:none;}#payment .payment_field.payment_error_border:focus, #payment .payment_field.error_field:focus, #payment_select_state.payment_error_border:focus-within, #payment_select_state.error_field:focus-within {box-shadow:0 0 0 3px rgba(197,43,80,.08);}
#pay_error_msg {background:#fff2f5; border:1px solid #f0c5d0; border-radius:10px; color:#ae294b; font-size:14px; line-height:1.5; margin:0 0 22px; padding:13px 16px; text-align:left;}
.payment_error {color:#ae294b; font-size:12px; line-height:1.4; padding-top:6px;}
.payment_error_check {color:#ae294b; display:none; font-size:12px; line-height:1.4; padding-top:6px;}
#checkout_error {color:#ae294b; display:none; font-size:13px; line-height:1.5; margin-top:18px; text-align:left;}

/* PAYMENT BUTTON */

#checkout_order {padding:26px 0 0; text-align:center;}
#checkout_button {align-items:center; appearance:none; background:#9019ff; border:0; border-radius:999px; box-sizing:border-box; color:#fff; cursor:pointer; display:flex; font-family:inherit; font-size:16px; font-weight:700; gap:16px; justify-content:center; line-height:1.3; margin:0; min-height:54px; padding:16px 24px; transition:background .2s ease; width:100%;}
#checkout_button::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 auto; height:.75em; transition:transform .2s ease; width:1.05em;}
#checkout_button:hover {background:#7c12dc;}
#checkout_button:hover::after, #checkout_button:focus-visible::after {transform:translateX(6px);}
#checkout_button:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}
#checkout_button:disabled {cursor:wait; opacity:.65;}

/* ORDER SUMMARY */

#cart_area {background:transparent; box-sizing:border-box; float:none; min-height:0; min-width:0; padding:0; width:100%;}
#cart_cont {padding:0; width:100%;}
#resp_cart_items {display:none;}
#cart_items {background:#faf7fe; border:1px solid #e4dbee; border-radius:18px; box-sizing:border-box; padding:28px;}
#payment_summary_heading {align-items:center; display:flex; gap:20px; justify-content:space-between; margin-bottom:24px;}
#payment_summary_heading h2 {margin:0; padding:0;}
#payment_edit_cart {color:#8525cc; flex-shrink:0; font-size:14px; font-weight:400; line-height:1.5; text-decoration:underline; text-underline-offset:4px;}
#payment_edit_cart:hover {color:#6517a0;}
#payment_edit_cart:focus-visible {border-radius:2px; outline:2px solid #9019ff; outline-offset:4px;}
#cart_cont h2 {color:#302638; font-size:24px; font-weight:650; letter-spacing:-.6px; line-height:1.3; margin:0; padding:0;}

/* ORDER PRODUCTS */

.payment_cart_item {align-items:center; border-radius:0; display:grid; gap:16px; grid-template-columns:72px minmax(0,1fr); height:auto; margin:0 0 20px; padding:0; width:100%;}
.payment_cart_item > .clr {display:none;}
.payment_cart_item_img {background:#f3f5f4; border:1px solid #c5cbc8; border-radius:12px; box-sizing:border-box; float:none; height:72px; position:relative; width:72px;}
.payment_cart_item_img img {border-radius:11px; display:block; height:100%; object-fit:contain; width:100%;}
.payment_cart_item_quant {background:#79747e; border-radius:50%; color:#fff; font-size:11px; font-weight:500; height:21px; line-height:21px; opacity:1; position:absolute; right:-7px; text-align:center; top:-7px; width:21px;}
.payment_cart_item_name_price {align-items:start; display:grid; float:none; gap:12px; grid-template-columns:minmax(0,1fr) auto; min-width:0; padding:0; width:100%;}
.payment_cart_item_name {height:auto; min-width:0;}
.payment_cart_item_name h4 {color:#302638; font-size:14px; font-weight:650; line-height:1.45; margin:0; padding:0;}
.payment_cart_item_name p {color:#897b94; font-size:13px; font-weight:400; line-height:1.5; margin:4px 0 0; padding:0;}
.payment_cart_item_quant_price {color:#302638; font-size:14px; font-weight:650; line-height:1.45; text-align:right; white-space:nowrap;}

/* TOTALS */

#payment_cart_totals {border-top:1px solid #e4dbee; margin-top:24px; padding:18px 0 0;}
.cart_totals_cont {padding:0;}
.cart_totals {color:#74697e; float:left; font-size:14px; font-weight:400; line-height:1.5; margin:0; padding:9px 0;}
.cart_costs {color:#51465b; display:block; float:right; font-size:14px; font-weight:400; line-height:1.5; margin:0; padding:9px 0; text-align:right;}
#shipping_cost .payment_delivery_free {color:#198954; font-weight:650;}
#cart_grand_totals_cont {border-top:1px solid #e4dbee; margin-top:13px; padding-top:13px;}
#cart_grand_total_text {color:#302638; font-size:22px; font-weight:700; letter-spacing:-.4px;}
#grand_total_cont {color:#302638; display:block; font-size:22px; font-weight:700; letter-spacing:-.4px;}
#saving_amount {color:#318353; font-weight:600;}

/* COUPON */

#payment_coupon_cont {padding:20px 0 0;}
#payment_coupon_apply {color:#8052a0; cursor:pointer; display:inline-block; font-size:13px; line-height:1.5; text-decoration:underline; text-underline-offset:3px;}
#payment_coupon_form_cont {display:none; padding-top:12px;}
#payment_coupon_form {background:#fff; border:1px solid #dfd5e8; border-radius:9px; box-sizing:border-box; color:#302638; font-family:inherit; font-size:13px; height:42px; line-height:20px; outline:none; padding:10px 12px; vertical-align:middle; width:calc(100% - 88px);}
#payment_coupon_form:focus {border-color:#9019ff; box-shadow:0 0 0 3px rgba(144,25,255,.07);}
#payment_coupon_btn {background:#9019ff; border:0; border-radius:999px; box-sizing:border-box; color:#fff; cursor:pointer; font-family:inherit; font-size:13px; font-weight:600; height:42px; margin-left:8px; padding:0 16px; transition:background .2s ease; vertical-align:middle; width:76px;}
#payment_coupon_btn:hover {background:#7c12dc;}
#payment_coupon_error {color:#ae294b; font-size:12px; line-height:1.5; padding:6px 0 0;}

/* REASSURANCE */

#payment_summary_promises {border-top:1px solid #e4dbee; margin-top:24px; padding-top:20px;}
#payment_summary_promises p {align-items:center; color:#81718e; display:flex; font-size:13px; gap:12px; line-height:1.5; margin:0; padding:7px 0;}
#payment_summary_promises svg {color:#8b2bd6; display:block; fill:none; flex:0 0 24px; height:24px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; width:24px;}
#payment_summary_promises strong {color:#43354f; font-weight:650;}

/******************
    ORDER SUCCESS
******************/


/* PAYMENT SUCCESS */
#success_cont, #success_cont * {box-sizing:border-box;}
#success_cont {align-items:start; background:#fff; border:0; color:#2c2638; display:grid; font-family:"Inter", Inter, Arial, sans-serif; gap:44px; grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr); margin:0 auto; max-width:1224px; padding:48px 32px 60px; width:100%;}
#success_cont > .clr {display:none;}
#success_cont #order_success_cont {background:none; border:0; float:none; margin:0; min-width:0; padding:0; width:auto;}
#success_cont #order_success {margin:0; padding:0; width:100%;}
/* THANK YOU */
#success_cont #success_intro {align-items:center; background:none; display:flex; gap:18px; margin:0 0 28px; padding:0;}
#success_cont .success_check {align-items:center; background:#e9f8ef; border-radius:50%; display:flex; flex:0 0 58px; height:58px; justify-content:center; width:58px;}
#success_cont .success_check::before {border-bottom:3px solid #10a55b; border-right:3px solid #10a55b; content:""; height:23px; margin-top:-6px; transform:rotate(45deg); width:12px;}
#success_cont .success_eyebrow {color:#86778e; font-size:11px; font-weight:700; letter-spacing:1.4px; line-height:1.4; margin:0 0 8px; text-transform:uppercase;}
#success_cont #success_intro h1 {color:#2c2638; font-size:32px; font-weight:650; letter-spacing:-1px; line-height:1.15; margin:0 0 10px; padding:0;}
#success_cont #success_intro p:not(.success_eyebrow) {color:#82778b; font-size:14px; line-height:1.6; margin:0;}
/* CONFIRMATION */
#success_cont #success_confirmation {background:#f2faf5; border:1px solid #d9eee1; border-radius:13px; margin:0 0 22px; padding:24px;}
#success_cont #success_confirmation h2 {color:#178752; font-size:17px; font-weight:600; line-height:1.4; margin:0 0 8px; padding:0;}
#success_cont #success_confirmation p {color:#687769; font-size:13px; line-height:1.6; margin:0; overflow-wrap:anywhere;}
#success_cont .success_timeline {display:flex; margin:24px 0 3px;}
#success_cont .success_step {color:#948c9b; flex:1; font-size:11px; padding-top:21px; position:relative; text-align:center;}
#success_cont .success_step::before {background:#fff; border:2px solid #d7d3dc; border-radius:50%; content:""; height:12px; left:50%; position:absolute; top:0; transform:translateX(-50%); width:12px; z-index:1;}
#success_cont .success_step:not(:last-child)::after {background:#dad7df; content:""; height:1px; left:50%; position:absolute; top:5px; width:100%;}
#success_cont .success_step_done {color:#16844b; font-weight:700;}
#success_cont .success_step_done::before {background:#0eac60; border-color:#0eac60;}
/* CUSTOMER DETAILS */
#success_cont #success_address_cont {border:1px solid #e6e0ed; border-radius:13px; margin:0 0 22px; padding:24px;}
#success_cont #success_address_cont h2 {color:#2c2638; font-size:17px; font-weight:600; margin:0 0 22px; padding:0;}
#success_cont .success_details_grid {display:grid; gap:24px 28px; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);}
#success_cont .success_details_grid h3 {color:#2c2638; font-size:13px; font-weight:600; margin:0 0 8px; padding:0;}
#success_cont .success_details_grid p, #success_cont .success_address {color:#7c7184; font-size:13px; line-height:1.65; margin:0; overflow-wrap:anywhere; padding:0;}
#success_cont .success_shipping_address {float:none; margin:0; padding:0; width:auto;}
#success_cont .success_details_grid .success_delivery_note {color:#139458; margin-top:8px;}
/* ACTIONS */
#success_cont .success_actions {align-items:center; display:flex; gap:20px; justify-content:space-between; margin-top:22px;}
#success_cont #success_contact {background:none; float:none; margin:0; padding:0; width:auto;}
#success_cont #success_contact p {color:#8b7e92; font-size:12px; line-height:1.7; margin:0; padding:0;}
#success_cont #success_contact a {color:#8250a3; text-decoration:underline; text-underline-offset:3px;}
#success_cont #success_continue {float:none; margin:0; padding:0; width:auto;}
#success_cont #success_continue a {align-items:center; background:#9019ff; border:0; border-radius:999px; color:#fff; display:inline-flex; font-size:13px; font-weight:600; gap:12px; justify-content:center; line-height:1.4; padding:15px 22px; text-decoration:none; transition:background .2s ease; white-space:nowrap;}
#success_cont #success_continue 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:""; flex-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
#success_cont #success_continue a:hover {background:#7c12dc;}
#success_cont #success_continue a:hover::after, #success_cont #success_continue a:focus-visible::after {transform:translateX(6px);}
#success_cont a:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}
/* ORDER SUMMARY */
#success_cont #success_cart {background:none; border:0; float:none; margin:0; min-width:0; padding:0; position:static; width:auto;}
#success_cont #success_cart_cont {background:#faf7fd; border:1px solid #e7deef; border-radius:16px; margin:0; padding:28px; width:100%;}
#success_cont #payment_logo {margin:0 0 24px; padding:0; text-align:left;}
#success_cont #payment_logo img {display:block; height:auto; width:160px;}
#success_cont #success_cart_cont > h2 {color:#2c2638; font-size:21px; font-weight:600; line-height:1.3; margin:0 0 24px; padding:0;}
#success_cont #cart_items {background:none; border:0; border-radius:0; margin:0; padding:0;}
/* ORDER ITEMS */
#success_cont .success_item {align-items:center; border:0; display:grid; gap:15px; grid-template-columns:68px minmax(0, 1fr) auto; margin:0; padding:0 0 24px;}
#success_cont .success_item + .success_item {padding-top:8px;}
#success_cont .success_item_image {background:#f3f5f4; border:1px solid #e8e0ee; border-radius:12px; float:none; height:77px; margin:0; padding:0; position:relative; width:68px;}
#success_cont .success_item_image img {border-radius:12px; display:block; height:100%; mix-blend-mode:darken; object-fit:contain; width:100%;}
#success_cont .success_item_quantity {align-items:center; background:#82778a; border-radius:999px; color:#fff; display:flex; float:none; font-size:10px; height:20px; justify-content:center; line-height:1; margin:0; min-width:20px; padding:0 5px; position:absolute; right:-6px; top:-6px; width:auto;}
#success_cont .success_item_info {float:none; margin:0; min-width:0; padding:0; width:auto;}
#success_cont .success_item_desc {margin:0 0 7px; padding:0;}
#success_cont .success_item_desc a {color:#2c2638; font-size:14px; font-weight:600; line-height:1.4; text-decoration:none;}
#success_cont .success_item_desc a:hover {color:#9019ff;}
#success_cont .success_item_price_money {color:#8a7d93; float:none; font-size:12px; line-height:1.5; margin:0; padding:0; width:auto;}
#success_cont .success_item_total {color:#3e3449; float:none; font-size:13px; font-weight:700; line-height:1.4; margin:0; padding:0; text-align:right; white-space:nowrap; width:auto;}
/* ORDER TOTALS */
#success_cont #success_cart_totals {border-top:1px solid #e4ddea; margin:0; padding:14px 0 0;}
#success_cont .success_total_row {align-items:baseline; color:#7a6d84; display:flex; font-size:13px; gap:20px; justify-content:space-between; line-height:1.5; padding:7px 0;}
#success_cont .success_total_row > span:last-child {color:#3e3449; font-weight:500; text-align:right;}
#success_cont .success_total_final {border-top:1px solid #e4ddea; color:#352a40; font-size:18px; font-weight:600; margin-top:13px; padding-top:20px;}
#success_cont .success_total_final #grand_total {color:#352a40; font-size:24px; font-weight:700;}
#success_cont .success_assurance {border-top:1px solid #e5ddeb; color:#8a769b; font-size:12px; line-height:1.5; margin:22px 0 0; padding:19px 0 0;}

/******************
    EMPTY CART PAYMENT
******************/


/* EMPTY CART — PAYMENT PAGE */

#empty_cart, #empty_cart * {box-sizing:border-box;}

#empty_cart {align-items:center; background:#f8f5fc; border:1px solid #e9e1f2; border-radius:28px; display:flex; flex-direction:column; margin:32px auto 64px; max-width:1280px; padding:64px 24px; text-align:center; width:calc(100% - 48px);}

#empty_cart_icon {align-items:center; background:#ffffff; border:1px solid #ece6f2; border-radius:24px; display:flex; height:80px; justify-content:center; margin-bottom:24px; width:80px;}
#empty_cart_icon img {display:block; height:38px; width:38px;}

#empty_cart_title {color:#242333; font-size:clamp(32px, 3vw, 46px); font-weight:700; letter-spacing:-1.2px; line-height:1.15; margin:0 0 16px; padding:0;}

#empty_cart_description {color:#75677f; font-size:17px; line-height:1.7; margin:0; max-width:460px; padding:0;}

#empty_cart_shop {align-items:center; background:#9019ff; border:1px solid #9019ff; border-radius:999px; color:#ffffff; display:inline-flex; font-size:16px; font-weight:700; gap:28px; justify-content:center; line-height:1.4; margin-top:28px; min-height:54px; padding:15px 28px; text-decoration:none; transition:background-color .2s ease, border-color .2s ease;}

/* Straight-right arrow */
#empty_cart_shop::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 20px; height:15px; transition:transform .2s ease; width:20px;}

#empty_cart_shop:hover, #empty_cart_shop:focus-visible {background:#7814d8; border-color:#7814d8; color:#ffffff;}
#empty_cart_shop:focus-visible {outline:3px solid #b77bed; outline-offset:4px;}

#empty_cart_help {color:#75677f; font-size:14px; line-height:1.6; margin:22px 0 0; padding:0;}
#empty_cart_help a {color:#7314c9; font-weight:600; text-decoration:underline; text-underline-offset:3px;}
#empty_cart_help a:hover {color:#50108b;}
#empty_cart_help a:focus-visible {border-radius:3px; outline:2px solid #9019ff; outline-offset:4px;}

@media (prefers-reduced-motion:no-preference) {
  #empty_cart_shop:hover::after, #empty_cart_shop:focus-visible::after {transform:translateX(4px);}
}

@media (prefers-reduced-motion:reduce) {
  #empty_cart_shop, #empty_cart_shop::after {transition:none;}
}



/******************
    ADD ORDER
******************/



#add_order_cont {margin:20px auto; max-width:1600px;}

#add_order_welcome_heading {color:#000; font-size:30px; font-weight:600; padding:40px 0 10px 0;}
#add_order_welcome {font-size:20px; font-weight:300; padding:10px 0 40px 0;}

.add_order_intro_box {float:left; width:33%;}
.add_order_intro_box h3 {font-size:30px; padding-bottom:10px; text-align:center;}
.add_order_intro_box p {color:#9019ff; font-size:40px; font-weight:bold; text-align:center;}

#add_order_products {margin:0 auto; max-width:1600px; text-align:center;}

/* products */
.add_order_product {background:#efeef3; border-radius:16px; box-shadow: 0 0 0 rgba(0, 0, 0, 0); display:inline-block; height:410px; margin:20px 10px; overflow:hidden; position:relative; transition:box-shadow 0.3s ease-in-out; width:300px;}
.add_order_product:hover {box-shadow: 0 0 10px rgb(156, 156, 156);}

.add_order_product a {white-space:normal;}
.add_order_product h3 {color:#000; font-size:24px; height:24px; padding:20px 20px 10px 20px; text-align:center;}
.add_order_product_price_dollar {color:#00b92f; font-weight:600; font-size:22px; padding-bottom:8px; text-decoration:line-through;}


.add_order_product_bottle {background-position:center center; background-repeat:no-repeat; background-size:270px 270px; height:254px; margin:0 auto; position:relative; z-index:5;}
.add_order_product_price_cont {text-align:center;}
.add_order_product_price {background:#9019ff; border:1px solid #9019ff; border-radius:10px; color:#fff; cursor:pointer; display:inline-block; font-size:16px; margin-top:10px; padding:10px 20px; position:relative; text-align:center; z-index:5;}
.add_order_product_price span {font-weight:bold;}
.add_order_product_white {background:#fff; bottom:0px; height:160px; border-radius:0px 0px 16px 16px; position:absolute; width:100%;}




/******************
    CUSTOMER LOGIN
******************/

/* login page */
#login_cont {background:#fff; border:1px solid #ece6f1; border-radius:24px; box-shadow:none; box-sizing:border-box; color:#302838; font-family:"Inter",Arial,sans-serif; margin:30px auto 60px; max-width:1200px; overflow:hidden; padding:0; width:calc(100% - 48px);}
#login_cont * {box-sizing:border-box;}
#login_cont > .clr {display:none;}
#login_cont p {margin:0; padding:0;}
#login_cont a {color:#7842a2; text-decoration:none;}
#login_cont a:hover {text-decoration:underline;}
#login_cont a:focus-visible, #login_cont button:focus-visible {outline:3px solid #a76bdd; outline-offset:5px;}
#login_cont .login_layout {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); min-height:640px;}
/* gradient brand panel */
#login_cont .login_art {background:linear-gradient(150deg,#ece2fa,#e1effa); color:#4a355e; display:flex; flex-direction:column; gap:50px; justify-content:space-between; padding:50px;}
#login_cont .login_logo {align-self:flex-start; display:block;}
#login_cont .login_logo img {display:block; height:auto; max-width:100%; width:190px;}
#login_cont .login_kicker {color:#82539d; font-size:11px; font-weight:700; letter-spacing:.15em; line-height:1.55;}
#login_cont .login_art h2 {color:#493054; font-family:inherit; font-size:50px; font-weight:500; letter-spacing:-2px; line-height:1.15; margin:22px 0; padding:0;}
#login_cont .login_art_copy > p:not(.login_kicker) {color:#746181; font-size:17px; line-height:1.65; max-width:380px;}
#login_cont .login_art_footer {color:#806a91; font-size:10px; letter-spacing:.16em; line-height:1.6;}
/* form panel */
#login_cont #login_customer {align-items:center; background:#fff; border:0; display:flex; float:none; justify-content:center; margin:0; min-width:0; padding:50px; width:auto;}
#login_cont .login_form_inner {max-width:390px; width:100%;}
#login_cont .login_form_inner > .login_kicker {margin-bottom:15px;}
#login_cont h1 {color:#302838; font-family:inherit; font-size:31px; font-weight:600; letter-spacing:-1px; line-height:1.2; margin:0 0 14px; padding:0;}
#login_cont .login_intro {color:#62778a; font-size:14px; line-height:1.65; margin-bottom:30px;}
#login_cont #login_form {margin:0; padding:0; width:100%;}
/* form fields */
#login_cont .login_field {margin:0 0 20px; padding:0;}
#login_cont .login_field label {color:#302838; display:block; font-size:13px; font-weight:500; line-height:1.5; margin:0 0 8px; padding:0; text-align:left; width:auto;}
#login_cont .login_field input {background:#fff; border:1px solid #c9d6e2; border-radius:6px; color:#302838; display:block; font-family:inherit; font-size:16px; height:auto; line-height:1.5; margin:0; min-height:46px; padding:11px 12px; transition:border-color .15s ease,box-shadow .15s ease; width:100%;}
#login_cont .login_field input:focus {border-color:#9855d0; box-shadow:0 0 0 3px #8426d914; outline:none;}
#login_cont .login_password_heading {align-items:baseline; display:flex; flex-wrap:wrap; gap:8px 12px; justify-content:space-between;}
#login_cont .login_password_heading a {font-size:12px; line-height:1.5; margin-bottom:8px;}
/* sign in button */
#login_cont #login_customer_button_cont {margin:25px 0 0; padding:0;}
#login_cont #login_customer_button {align-items:center; background:#8426d9; border:0; border-radius:6px; color:#fff; cursor:pointer; display:flex; font-family:inherit; font-size:13px; font-weight:600; gap:18px; justify-content:space-between; line-height:1.5; margin:0; min-height:46px; padding:13px 20px; text-align:left; transition:background-color .2s ease; width:100%;}
#login_cont #login_customer_button:hover, #login_cont #login_customer_button:focus-visible {background:#6c1db5; color:#fff; transform:none;}
/* straight sliding arrow */
#login_cont #login_customer_button::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 auto; height:.75em; transition:transform .2s ease; width:1.05em;}
#login_cont #login_customer_button:hover::after, #login_cont #login_customer_button:focus-visible::after {transform:translateX(6px);}
/* registration and back link */
#login_cont #login_sign_up {color:#6b6575; font-size:12px; line-height:1.8; margin:20px 0 30px; padding:0; text-align:center;}
#login_cont #login_sign_up a {font-weight:600;}
#login_cont .login_back {align-items:center; display:inline-flex; font-size:13px; gap:8px; line-height:1.5;}
/* login errors */
#login_cont #login_errors {background:#fff1f3; border:1px solid #f1cdd4; border-radius:6px; color:#a12b46; font-size:13px; line-height:1.5; margin:0 0 20px; padding:12px 15px; width:100%;}
#login_cont #login_errors ul {list-style:none; margin:0; padding:0;}
#login_cont #login_errors li {margin:0; padding:0;}
#login_cont #login_errors li + li {margin-top:6px;}
/* tablet */
@media (max-width:1000px) {
#login_cont .login_art {padding:35px;}
#login_cont .login_art h2 {font-size:42px;}
#login_cont #login_customer {padding:35px;}
}
/* mobile */
@media (max-width:760px) {
#login_cont {border-radius:20px; margin:20px auto 40px; width:calc(100% - 32px);}
#login_cont .login_layout {grid-template-columns:minmax(0,1fr); min-height:0;}
#login_cont .login_art {gap:0; padding:25px;}
#login_cont .login_logo img {width:160px;}
#login_cont .login_art_copy, #login_cont .login_art_footer {display:none;}
#login_cont #login_customer {padding:35px 25px;}
#login_cont h1 {font-size:29px;}
}
/* reduced motion */
@media (prefers-reduced-motion:reduce) {
#login_cont .login_field input, #login_cont #login_customer_button, #login_cont #login_customer_button::after {transition:none;}
#login_cont #login_customer_button:hover::after, #login_cont #login_customer_button:focus-visible::after {transform:none;}
}
/******************
    FORGOTTEN PASSWORD
******************/

/* FORGOTTEN PASSWORD */

#forgotten_password {box-sizing:border-box; display:grid; grid-template-columns:1fr 1fr; align-items:stretch; gap:80px; max-width:1300px; margin:48px auto 72px; padding:0 24px; color:#302738; font-family:"Inter", Inter, Arial, sans-serif; text-align:left;}
#forgotten_password *, #forgotten_password *::before, #forgotten_password *::after {box-sizing:border-box;}


/* INTRO PANEL */

#forgotten_password_intro {display:flex; flex-direction:column; justify-content:center; align-items:flex-start; min-height:610px; padding:64px 44px; border-radius:28px; background:linear-gradient(135deg, #e9f6fa 0%, #f1e8fa 100%);}
#forgotten_password .forgotten_eyebrow {margin:0 0 30px; padding:0; color:#8956ad; font-size:12px; font-weight:700; line-height:1.5; letter-spacing:.15em;}
#forgotten_password_intro h2 {margin:0; padding:0; color:#302738; font-size:64px; font-weight:700; line-height:1.2; letter-spacing:-.045em;}
#forgotten_password_intro h2 em {display:inline-block; margin-top:12px; color:#8956ad; font-family:Georgia, "Times New Roman", serif; font-style:italic; font-weight:400;}
#forgotten_password_intro .forgotten_intro_text {margin:44px 0 52px; padding:0; color:#776d81; font-size:17px; font-weight:400; line-height:1.7;}


/* FORM PANEL */

#forgotten_password_panel {display:flex; flex-direction:column; justify-content:center; min-width:0; padding:40px 0;}
#forgotten_password_title {margin:0 0 28px; padding:0; color:#302738; font-size:42px; font-weight:700; line-height:1.15; letter-spacing:-.04em;}
#forgotten_password_panel .forgotten_description {margin:0 0 26px; padding:0; color:#776d81; font-size:17px; font-weight:400; line-height:1.65;}

#forgotten_password_form {width:100%; margin:0; padding:0;}
.forgoten_password_field {margin:0; padding:0;}
.forgoten_password_field label {display:block; margin:0 0 10px; padding:0; color:#302738; font-size:15px; font-weight:650; line-height:1.4;}
#forgotten_email {display:block; width:100%; height:56px; margin:0; padding:14px 16px; border:1px solid #ddcbed; border-radius:11px; background:#fff; color:#302738; font:400 17px/1.4 "Inter", Inter, Arial, sans-serif; box-shadow:none;}
#forgotten_email:focus {border-color:#9019ff; outline:2px solid #ead8ff; outline-offset:2px;}


/* BUTTON AND SLIDING ARROW */

#forgoten_password_button_cont {margin:24px 0 0; padding:0;}
#forgoten_password_button {appearance:none; display:flex; align-items:center; justify-content:center; gap:18px; width:100%; min-height:54px; margin:0; padding:14px 24px; border:0; border-radius:999px; background:#9019ff; color:#fff; cursor:pointer; font:650 17px/1.4 "Inter", Inter, Arial, sans-serif; transition:background-color .2s ease;}
#forgoten_password_button:hover, #forgoten_password_button:focus-visible {background:#6c1db5; color:#fff; transform:none;}
#forgoten_password_button:focus-visible {outline:2px solid #6c1db5; outline-offset:4px;}
#forgoten_password_button span {display:none;}
#forgoten_password_button::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 auto; height:.75em; width:1.05em; transition:transform .2s ease;}
#forgoten_password_button:hover::after, #forgoten_password_button:focus-visible::after {transform:translateX(6px);}


/* LINKS */

.forgotten_text_link {color:#8956ad; font-size:16px; font-weight:500; line-height:1.5; text-decoration:underline; text-underline-offset:5px;}
.forgotten_text_link:hover {color:#7015b6;}
.forgotten_text_link:focus-visible {outline:2px solid #9019ff; outline-offset:5px;}
.forgotten_signin {margin:26px 0 0; text-align:center;}


/* ERRORS */

#forgotten_errors {width:auto; margin:0 0 24px; padding:16px 20px; border:1px solid #efc9d0; border-radius:12px; background:#fff3f5; color:#922b42; font-size:15px; line-height:1.6;}
#forgotten_errors ul {margin:0; padding-left:18px;}
#forgotten_errors li {margin:0; padding:0;}
#forgotten_errors a {color:inherit; text-decoration:underline;}


/******************
    REFUNDS
******************/

/* refund page */
#refund_cont.policy_page {background:transparent; border-radius:0; box-shadow:none; box-sizing:border-box; color:#62596c; font-family:"Inter",Arial,sans-serif; margin:24px auto 64px; max-width:1200px; padding:0; width:calc(100% - 48px);}
#refund_cont.policy_page * {box-sizing:border-box;}
#refund_cont.policy_page p {line-height:1.7; margin:0; padding:0;}
#refund_cont.policy_page svg {display:block; fill:none; flex:none; height:24px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.5; width:24px;}
/* introduction */
#refund_cont .policy_hero {align-items:center; background:#fff; border:1px solid #ece6f1; border-radius:28px; display:grid; gap:60px; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); padding:48px;}
#refund_cont .policy_intro {min-width:0;}
#refund_cont.policy_page h1 {color:#342344; font-family:inherit; font-size:clamp(38px,4.2vw,56px); font-weight:600; letter-spacing:-.055em; line-height:1.1; margin:20px 0 24px; padding:0;}
#refund_cont.policy_page h1 em {color:#8219e8; font-style:normal;}
#refund_cont.policy_page .policy_eyebrow {color:#7a5195; font-size:10px; font-weight:700; letter-spacing:.16em; line-height:1.5;}
#refund_cont.policy_page .policy_lead {font-size:16px; line-height:1.8; margin-bottom:22px; max-width:490px;}
#refund_cont.policy_page .policy_support {color:#83748f; font-size:13px; line-height:1.8; max-width:490px;}
/* gradient promise panel */
#refund_cont .policy_promise {align-items:center; align-self:stretch; background:linear-gradient(135deg,#eee3fb,#e4effb); border-radius:22px; color:#57416d; display:flex; flex-direction:column; justify-content:center; min-height:390px; padding:34px 20px; text-align:center;}
/* 90 day display */
#refund_cont .policy_days {align-items:baseline; color:#8051b0; display:flex; gap:10px; margin:22px 0 10px;}
#refund_cont .policy_days strong {font-size:clamp(110px,12vw,160px); font-weight:500; letter-spacing:-.075em; line-height:1;}
#refund_cont .policy_days > span {font-size:22px; letter-spacing:-.03em;}
#refund_cont.policy_page .policy_money_back {color:#675476; font-size:21px; letter-spacing:-.035em; line-height:1.45;}
#refund_cont .policy_money_back strong {color:#413150; font-weight:600;}
/* promise footer */
#refund_cont .policy_promise_footer {align-items:center; border-top:1px solid #b9a9ce66; color:#756183; display:flex; font-size:11px; gap:8px; justify-content:center; margin-top:30px; padding-top:18px; width:85%;}
#refund_cont .policy_promise_footer svg {height:18px; width:18px;}
/* policy cards */
#refund_cont .policy_cards {display:grid; gap:20px; grid-template-columns:repeat(3,minmax(0,1fr)); margin:24px 0;}
#refund_cont .policy_card {background:#fff; border:1px solid #e8e0ef; border-radius:20px; padding:30px;}
#refund_cont .policy_icon {background:#f2eaf8; border-radius:13px; color:#795293; display:grid; height:44px; margin-bottom:22px; place-items:center; width:44px;}
#refund_cont .policy_card:nth-child(2) .policy_icon {background:#eaf3fa; color:#3f789b;}
#refund_cont .policy_card:nth-child(3) .policy_icon {background:#f9edf4; color:#975a84;}
#refund_cont .policy_card h2 {color:#493354; font-family:inherit; font-size:19px; font-weight:600; letter-spacing:-.035em; line-height:1.3; margin:0 0 12px; padding:0;}
#refund_cont.policy_page .policy_card p {color:#706479; font-size:13px; line-height:1.8;}
/* refund process */
#refund_cont .policy_information {background:#ece6f4; border-radius:22px; margin-top:28px; padding:34px 38px;}
#refund_cont .policy_information h2 {color:#493354; font-family:inherit; font-size:28px; font-weight:500; letter-spacing:-.045em; line-height:1.2; margin:10px 0; padding:0;}
#refund_cont.policy_page .policy_information p:not(.policy_eyebrow) {font-size:13px; line-height:1.8; max-width:720px;}
/* tablet */
@media (max-width:900px) {
#refund_cont .policy_hero {gap:30px; padding:32px;}
#refund_cont .policy_card {padding:24px;}
#refund_cont .policy_information {padding:30px;}
}
/* mobile */
@media (max-width:650px) {
#refund_cont.policy_page {margin:18px auto 40px; width:calc(100% - 32px);}
#refund_cont .policy_hero {border-radius:22px; gap:28px; grid-template-columns:minmax(0,1fr); padding:26px 22px;}
#refund_cont.policy_page h1 {font-size:clamp(30px,8vw,38px);}
#refund_cont .policy_promise {min-height:300px; padding:28px 20px;}
#refund_cont .policy_days strong {font-size:120px;}
#refund_cont .policy_cards {gap:14px; grid-template-columns:minmax(0,1fr);}
#refund_cont .policy_icon {margin-bottom:16px;}
#refund_cont .policy_information {padding:28px 24px;}
}


/******************
    GUARANTEE
******************/

/* price guarantee page */
#gurantee_cont.price_guarantee {background:transparent; border-radius:0; box-shadow:none; box-sizing:border-box; color:#62596c; font-family:"Inter",Arial,sans-serif; margin:24px auto 64px; max-width:1200px; padding:0; width:calc(100% - 48px);}
#gurantee_cont.price_guarantee * {box-sizing:border-box;}
#gurantee_cont.price_guarantee p {line-height:1.7; margin:0; padding:0;}
#gurantee_cont.price_guarantee a {color:#743d9e; text-decoration:none;}
#gurantee_cont.price_guarantee svg {fill:none; flex:none; height:24px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.5; width:24px;}
#gurantee_cont.price_guarantee a:focus-visible {outline:3px solid #a37acb; outline-offset:5px;}
/* introduction */
#gurantee_cont .guarantee_hero {align-items:center; background:#fff; border:1px solid #ece6f1; border-radius:28px; display:grid; gap:60px; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); padding:48px;}
#gurantee_cont .guarantee_intro {min-width:0;}
#gurantee_cont.price_guarantee h1 {color:#342344; font-family:inherit; font-size:clamp(38px,4.2vw,56px); font-weight:600; letter-spacing:-.055em; line-height:1.1; margin:20px 0 24px; padding:0;}
#gurantee_cont.price_guarantee h1 em {color:#8219e8; font-style:normal;}
#gurantee_cont.price_guarantee .guarantee_eyebrow {color:#7a5195; font-size:10px; font-weight:700; letter-spacing:.16em; line-height:1.5;}
#gurantee_cont.price_guarantee .guarantee_lead {font-size:16px; line-height:1.8; margin-bottom:28px; max-width:490px;}
#gurantee_cont.price_guarantee .guarantee_note {color:#83748f; font-size:11px; line-height:1.6; margin-top:12px;}
/* contact buttons */
#gurantee_cont.price_guarantee .guarantee_button {align-items:center; background:#8317ea; border:0; border-radius:32px; color:#fff; cursor:pointer; display:inline-flex; font-size:13px; font-weight:600; gap:20px; justify-content:center; line-height:1.4; padding:16px 22px; text-decoration:none; transition:background-color .2s ease;}
#gurantee_cont.price_guarantee .guarantee_button:hover, #gurantee_cont.price_guarantee .guarantee_button:focus-visible {background-color:#6e15c5; color:#fff; transform:none;}
/* hide previous button arrows */
#gurantee_cont .guarantee_button > svg, #gurantee_cont .guarantee_button > .guarantee_arrow {display:none;}
/* straight arrow and hover movement */
#gurantee_cont .guarantee_button::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 auto; height:.75em; transition:transform .2s ease; width:1.05em;}
#gurantee_cont .guarantee_button:hover::after, #gurantee_cont .guarantee_button:focus-visible::after {transform:translateX(6px);}
/* gradient promise panel */
#gurantee_cont .guarantee_promise {align-items:center; align-self:stretch; background:linear-gradient(135deg,#eee3fb,#e4effb); border-radius:22px; color:#57416d; display:flex; flex-direction:column; justify-content:center; min-height:390px; padding:34px 20px; text-align:center;}
#gurantee_cont .guarantee_price_icon {background:#ffffff55; border:1px solid #c6b2db; border-radius:20px; color:#865caf; display:grid; height:64px; margin:30px 0 20px; place-items:center; width:64px;}
#gurantee_cont .guarantee_price_icon svg {height:32px; width:32px;}
#gurantee_cont .guarantee_promise h2 {color:#513563; font-family:inherit; font-size:32px; font-weight:500; letter-spacing:-.04em; line-height:1.18; margin:0; padding:0;}
#gurantee_cont .guarantee_promise h2 em {color:#8352a8; font-style:normal;}
#gurantee_cont .guarantee_promise_footer {align-items:center; border-top:1px solid #b9a9ce66; color:#756183; display:flex; font-size:11px; gap:8px; justify-content:center; margin-top:30px; padding-top:18px; width:85%;}
#gurantee_cont .guarantee_promise_footer svg {height:18px; width:18px;}
/* comparison heading */
#gurantee_cont .guarantee_heading {margin:40px 4px 22px;}
#gurantee_cont .guarantee_heading h2 {color:#493354; font-family:inherit; font-size:28px; font-weight:500; letter-spacing:-.04em; line-height:1.25; margin:10px 0 0; padding:0;}
/* comparison cards */
#gurantee_cont .guarantee_cards {display:grid; gap:20px; grid-template-columns:repeat(3,minmax(0,1fr)); margin:24px 0;}
#gurantee_cont .guarantee_card {background:#fff; border:1px solid #e8e0ef; border-radius:20px; padding:30px;}
#gurantee_cont .guarantee_icon {background:#f2eaf8; border-radius:13px; color:#795293; display:grid; height:44px; margin-bottom:22px; place-items:center; width:44px;}
#gurantee_cont .guarantee_card:nth-child(2) .guarantee_icon {background:#eaf3fa; color:#3f789b;}
#gurantee_cont .guarantee_card:nth-child(3) .guarantee_icon {background:#f9edf4; color:#975a84;}
#gurantee_cont .guarantee_card h3 {color:#493354; font-family:inherit; font-size:19px; font-weight:600; letter-spacing:-.035em; line-height:1.3; margin:0 0 12px; padding:0;}
#gurantee_cont.price_guarantee .guarantee_card p {color:#706479; font-size:13px; line-height:1.8;}
/* contact panel */
#gurantee_cont .guarantee_contact {align-items:center; background:#ece6f4; border-radius:22px; display:flex; gap:40px; justify-content:space-between; margin-top:28px; padding:34px 38px;}
#gurantee_cont .guarantee_contact > div {max-width:650px;}
#gurantee_cont .guarantee_contact h2 {color:#493354; font-family:inherit; font-size:28px; font-weight:500; letter-spacing:-.045em; line-height:1.2; margin:10px 0; padding:0;}
#gurantee_cont.price_guarantee .guarantee_contact p:not(.guarantee_eyebrow) {font-size:13px; max-width:540px;}
#gurantee_cont .guarantee_contact .guarantee_button {flex:none;}
/* refund policy link */
#gurantee_cont .guarantee_related {align-items:center; color:#8a7d95; display:flex; font-size:12px; gap:20px; justify-content:space-between; padding:26px 6px 0;}
#gurantee_cont .guarantee_related a {font-weight:600;}
#gurantee_cont .guarantee_related a:hover {text-decoration:underline;}
#gurantee_cont .guarantee_related a span {margin-left:8px;}
/* tablet */
@media (max-width:900px) {
#gurantee_cont .guarantee_hero {gap:30px; padding:32px;}
#gurantee_cont .guarantee_card {padding:24px;}
#gurantee_cont .guarantee_contact {gap:24px; padding:30px;}
#gurantee_cont .guarantee_contact > div {max-width:60%;}
}
/* mobile */
@media (max-width:650px) {
#gurantee_cont.price_guarantee {margin:18px auto 40px; width:calc(100% - 32px);}
#gurantee_cont .guarantee_hero {border-radius:22px; gap:28px; grid-template-columns:minmax(0,1fr); padding:26px 22px;}
#gurantee_cont.price_guarantee h1 {font-size:clamp(30px,8vw,38px);}
#gurantee_cont .guarantee_promise {min-height:300px; padding:28px 20px;}
#gurantee_cont .guarantee_cards {gap:14px; grid-template-columns:minmax(0,1fr);}
#gurantee_cont .guarantee_icon {margin-bottom:16px;}
#gurantee_cont .guarantee_heading {margin-top:30px;}
#gurantee_cont .guarantee_heading h2 {font-size:25px;}
#gurantee_cont .guarantee_contact {align-items:flex-start; flex-direction:column; gap:22px; padding:28px 24px;}
#gurantee_cont .guarantee_contact > div {max-width:none;}
#gurantee_cont .guarantee_related {align-items:flex-start; flex-direction:column; gap:10px; padding:24px 6px 0;}
}
/* reduced motion */
@media (prefers-reduced-motion:reduce) {
#gurantee_cont.price_guarantee .guarantee_button, #gurantee_cont .guarantee_button::after {transition:none;}
#gurantee_cont .guarantee_button:hover::after, #gurantee_cont .guarantee_button:focus-visible::after {transform:none;}
}


/******************
    PRIVACY & LEGAL
******************/

/* PRIVACY PAGE */

#privacy_cont.privacy_page, #privacy_cont.privacy_page *, #privacy_cont.privacy_page *::before, #privacy_cont.privacy_page *::after {box-sizing:border-box;}
#privacy_cont.privacy_page {background:transparent; border:0; border-radius:0; box-shadow:none; color:#655b70; font-family:"Inter",Arial,sans-serif; font-size:16px; line-height:1.8; margin:36px auto 80px; max-width:1280px; padding:0; text-align:left; width:calc(100% - 48px);}
#privacy_cont.privacy_page p {font-size:16px; line-height:1.85; margin:0 0 18px; padding:0;}
#privacy_cont.privacy_page a {color:#7816c9; overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:4px; transition:color .2s ease;}
#privacy_cont.privacy_page a:hover {color:#551294;}
#privacy_cont.privacy_page a:focus-visible {border-radius:4px; outline:2px solid #8019ef; outline-offset:5px;}

/* INTRODUCTION */

#privacy_cont.privacy_page .privacy_hero {align-items:center; background:linear-gradient(120deg,#f5effb,#eeeafb); border:1px solid #e8def2; border-radius:28px; display:grid; gap:48px; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); padding:48px;}
#privacy_cont.privacy_page .privacy_eyebrow {color:#82718f; font-size:11px; font-weight:700; letter-spacing:.18em; line-height:1.5; margin:0 0 14px; padding:0;}
#privacy_cont.privacy_page h1 {color:#292333; font-family:inherit; font-size:60px; font-weight:650; letter-spacing:-.055em; line-height:1.08; margin:0; padding:0;}
#privacy_cont.privacy_page h1 em {color:#8019ef; display:block; font-family:Georgia,"Times New Roman",serif; font-style:italic; font-weight:400; letter-spacing:-.045em; margin-top:4px;}
#privacy_cont.privacy_page .privacy_hero_copy {max-width:370px;}
#privacy_cont.privacy_page .privacy_hero_copy p {color:#75677f; font-size:17px; line-height:1.8; margin:0 0 18px;}
#privacy_cont.privacy_page .privacy_text_link {display:inline-flex; font-size:14px; font-weight:600; gap:10px; line-height:1.6; text-decoration:none;}
#privacy_cont.privacy_page .privacy_text_link span {transition:transform .2s ease;}
#privacy_cont.privacy_page .privacy_text_link:hover span, #privacy_cont.privacy_page .privacy_text_link:focus-visible span {transform:translateX(4px);}

/* PAGE LAYOUT */

#privacy_cont.privacy_page .privacy_layout {align-items:start; display:grid; gap:40px; grid-template-columns:250px minmax(0,1fr); margin-top:40px;}
#privacy_cont.privacy_page .privacy_sidebar {max-height:calc(100vh - 48px); max-height:calc(100dvh - 48px); min-width:0; overflow-y:auto; padding:6px; position:sticky; top:24px;}
#privacy_cont.privacy_page #privacy_text {background:#ffffff; border:1px solid #e8e0ef; border-radius:24px; font-size:16px; min-width:0; overflow-wrap:anywhere; padding:40px 44px;}

/* CONTENTS MENU */

#privacy_cont.privacy_page .privacy_navigation {background:#faf7fd; border:1px solid #ece4f3; border-radius:20px; padding:22px 16px;}
#privacy_cont.privacy_page .privacy_navigation .privacy_eyebrow {margin:0 10px 16px;}
#privacy_cont.privacy_page .privacy_navigation ol {display:grid; gap:3px; list-style:none; margin:0; padding:0;}
#privacy_cont.privacy_page .privacy_navigation li {list-style:none; margin:0; padding:0;}
#privacy_cont.privacy_page .privacy_navigation a {align-items:baseline; border-radius:9px; color:#655b70; display:flex; font-size:13px; font-weight:500; gap:10px; line-height:1.5; padding:9px 10px; text-decoration:none; transition:background-color .2s ease,color .2s ease;}
#privacy_cont.privacy_page .privacy_navigation a span {color:#a393b1; flex:0 0 20px; font-size:10px; font-variant-numeric:tabular-nums; letter-spacing:.05em;}
#privacy_cont.privacy_page .privacy_navigation a:hover, #privacy_cont.privacy_page .privacy_navigation a:focus-visible {background:#eee2fc; color:#7816c9;}

/* POLICY SECTIONS */

#privacy_cont.privacy_page .privacy_section {margin:0; padding:0; scroll-margin-top:120px;}
#privacy_cont.privacy_page .privacy_section + .privacy_section {border-top:1px solid #eee7f3; margin-top:34px; padding-top:34px;}
#privacy_cont.privacy_page .privacy_section_heading {align-items:flex-start; display:flex; gap:14px; margin-bottom:20px;}
#privacy_cont.privacy_page .privacy_number {align-items:center; background:#f3ebfb; border-radius:10px; color:#8a53b1; display:flex; flex:0 0 34px; font-size:11px; font-variant-numeric:tabular-nums; font-weight:650; height:34px; justify-content:center; margin-top:1px;}
#privacy_cont.privacy_page .privacy_section h2 {color:#342b40; font-family:inherit; font-size:23px; font-weight:650; letter-spacing:-.035em; line-height:1.45; margin:0; padding:0;}
#privacy_cont.privacy_page .privacy_section h3 {color:#544260; font-family:inherit; font-size:17px; font-weight:650; letter-spacing:-.015em; line-height:1.5; margin:26px 0 10px; padding:0;}
#privacy_cont.privacy_page .privacy_section > :last-child {margin-bottom:0;}
#privacy_cont.privacy_page .privacy_section:target .privacy_number {background:#8019ef; color:#ffffff;}

/* CONTACT */

#privacy_cont.privacy_page .privacy_help {margin-top:22px; padding:8px 12px 12px;}
#privacy_cont.privacy_page .privacy_help h2 {color:#342b40; font-family:inherit; font-size:20px; font-weight:600; letter-spacing:-.03em; line-height:1.4; margin:0 0 10px; padding:0;}
#privacy_cont.privacy_page .privacy_help p {color:#82738e; font-size:13px; line-height:1.75; margin:0 0 18px;}
#privacy_cont.privacy_page .privacy_button {align-items:center; background:#8019ef; border:0; border-radius:30px; color:#ffffff; display:inline-flex; font-size:13px; font-weight:650; gap:22px; justify-content:center; line-height:1.4; padding:14px 22px; text-decoration:none; transition:background-color .2s ease;}

/* STRAIGHT-RIGHT BUTTON ARROW */

#privacy_cont.privacy_page .privacy_button::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 auto; height:.75em; transition:transform .2s ease; width:1.05em;}
#privacy_cont.privacy_page .privacy_button:hover, #privacy_cont.privacy_page .privacy_button:focus-visible {background:#6913c6; color:#ffffff;}
#privacy_cont.privacy_page .privacy_button:hover::after, #privacy_cont.privacy_page .privacy_button:focus-visible::after {transform:translateX(5px);}

/* REDUCED MOTION */

@media (prefers-reduced-motion:reduce) {
  #privacy_cont.privacy_page a, #privacy_cont.privacy_page .privacy_navigation a, #privacy_cont.privacy_page .privacy_button, #privacy_cont.privacy_page .privacy_button::after, #privacy_cont.privacy_page .privacy_text_link span {transition:none;}
  #privacy_cont.privacy_page .privacy_button:hover::after, #privacy_cont.privacy_page .privacy_button:focus-visible::after, #privacy_cont.privacy_page .privacy_text_link:hover span, #privacy_cont.privacy_page .privacy_text_link:focus-visible span {transform:none;}
}



/******************
    SALE
******************/

#sale_cont {margin:0 auto; max-width:1600px; padding:20px 0}

#sale_intro {background:#ffffff; border-radius:15px; box-shadow:0px 0px 15px #efefef; margin:0 auto 20px auto;}
#sale_intro h1 {box-sizing:border-box; color:red; font-size:40px; font-weight:500; padding:40px;}

#sale_products {text-align:center;}


.sale_product_price_dollar {background:url(../images/home/purple-arrow.svg) 110px center no-repeat; background-size:34px 34px; color:#000; font-weight:600; font-size:22px; float:left;}
.sale_price_percent {background:red; border-radius:5px; color:#fff; float:right; font-size:16px; font-weight:bold; margin-right:50px; padding:5px 10px;}

/******************
    COOKIE
******************/

/*#cookies_notification {background:#1a92d0;color:#f6f6f6; cursor:pointer; font-size:12px; padding:2px 0; text-align:center; position:fixed; bottom:0; z-index:99999; width:100%;}
#cookies_notification span {font-size:14px; font-style:times new roman; font-weight:bold; margin-left:5px;}*/

#cookies_notification {background:#f6fffa; box-sizing:border-box; color:#f6f6f6; cursor:pointer; text-align:center; padding:10px; position:fixed; bottom:0; z-index:9; width:100%;}
#cookies_notification_description {color:#000; display:inline-block; font-size:14px; padding-right:50px;}
#cookies_notification_description a {color:#a1b2bb; text-decoration:underline;}
#cookies_notification_button {background:#0fb259; border-radius:5px; color:#fff; display:inline-block; font-weight:bold; padding:10px 20px;}
#cookies_notification span {font-size:14px; font-style:times new roman; font-weight:bold; margin-left:5px;}



/******************
    FOOTER
******************/

/* Add this block at the end of css/layout38.css, after the existing rules. */

#footer_cont {box-sizing:border-box; color:#535853; font-family:Inter, Arial, sans-serif; font-size:14px; line-height:1.5; margin:0 auto; max-width:1440px; padding:50px 24px 0; width:100%;}
#footer_cont #footer, #footer_cont #footer *, #footer_cont #footer *::before, #footer_cont #footer *::after, #footer_copy_cont, #footer_copy_cont * {box-sizing:border-box;}
#footer_cont #footer {background:#eaf3fc; border:1px solid #cfdeeb; border-radius:20px; box-shadow:none; margin:0; padding:32px 40px 34px;}
#footer_top {align-items:center; border-bottom:1px solid #cfdeeb; display:grid; gap:30px; grid-template-columns:minmax(0, 2.4fr) minmax(160px, .85fr); padding-bottom:26px;}
#footer_top > .clr, #footer_newsletter_cont > .clr, #footer_newsletter > .clr, #footer_bottom > .clr, #footer_copy > .clr, #footer .footer_nav .clr {display:none;}

/* Newsletter and logo */
#footer_newsletter_cont {align-items:center; display:grid; float:none; gap:30px; grid-column:1; grid-row:1; grid-template-columns:minmax(0, 1.1fr) minmax(0, 1.3fr); min-width:0; padding:0; width:auto;}
#footer_newsletter_text {float:none; min-width:0; width:auto;}
#footer_newsletter_text h3 {color:#08783f; font-size:22px; font-weight:550; letter-spacing:0; line-height:1.3; margin:0 0 6px; padding:0;}
#footer_newsletter_text p {font-size:14px; line-height:1.5; margin:0;}
#footer_newsletter {align-items:center; background:#ffffff; border:1px solid #cfdeeb; border-radius:40px; display:flex; float:none; margin:0; min-width:0; overflow:visible; padding:5px; position:relative; width:auto;}
#footer_newsletter:focus-within {outline:2px solid #9019ff; outline-offset:2px;}
#footer_newsletter_field {background:transparent; border:0; box-shadow:none; color:#111111; flex:1 1 0; float:none; font-family:inherit; font-size:16px; height:48px; line-height:24px; margin:0; min-width:0; outline:0; padding:19px 14px 3px; width:0;}
#footer_newsletter_label {left:19px; line-height:20px; pointer-events:none; position:absolute; transition:color .2s ease, font-size .2s ease, top .2s ease;}
#footer_newsletter_label.footer_newsletter_label_no_value {color:#111111; font-size:16px; top:19px;}
#footer_newsletter_label.footer_newsletter_label_value {color:#797e79; font-size:12px; top:8px;}
/* newsletter subscribe icon */
/* newsletter subscribe button */
#footer_newsletter_btn {background-color:#9019ff; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 2-7 20-4-9-9-4 20-7Z'/%3E%3Cpath d='M22 2 11 13'/%3E%3C/svg%3E"); background-position:right 13px center; background-repeat:no-repeat; background-size:18px 18px; border:0; border-radius:30px; color:#fff; cursor:pointer; flex:0 0 auto; float:none; font-family:inherit; font-size:14px; height:40px; line-height:20px; margin:0; padding:10px 40px 10px 13px; transition:background-color .2s ease; white-space:nowrap; width:auto;}
#footer_newsletter_btn:hover {background-color:#7411d0;}
#footer_logo {float:none; grid-column:2; grid-row:1; justify-self:center; min-width:0; padding:0; width:auto;}
#footer_logo img {display:block; height:auto; max-width:100%; width:160px;}

/* Links, social icons and contact details */
#footer_bottom {display:grid; gap:30px; grid-template-columns:repeat(4, minmax(0, 1fr)); padding-top:22px;}
#footer .footer_nav, #footer_social_nav {float:none; min-width:0; padding:0; width:auto;}
#footer .footer_nav h5, #footer_social h3 {color:#363c38; font-size:16px; font-weight:650; letter-spacing:0; line-height:1.3; margin:0 0 10px; padding:0;}
#footer .foot_nav_cont {list-style:none; margin:0; padding:0;}
#footer .footer_nav li {font-size:14px; line-height:1.5; margin:0 0 6px; padding:0;}
#footer .footer_nav li a {color:inherit; display:block; text-decoration:none;}
#footer .footer_nav li a:hover {color:#9019ff; text-decoration:underline; text-underline-offset:4px;}
#footer_social {display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:0; padding:0;}
#footer_social:empty {display:none;}
#footer_social h3 {flex-basis:100%; margin-bottom:2px;}
#footer_social li {display:block; margin:0;}
#footer_social li a {background-position:center; background-repeat:no-repeat; background-size:20px 20px; border-radius:50%; display:block; height:36px; padding:0; transition:background-color .2s ease; width:36px;}
#footer_social li a:hover {background-color:#dce9f6;}
#footer_address {font-size:14px; line-height:1.5; margin:0; padding:16px 0 0;}
#footer_social:empty + #footer_address {padding-top:0;}
#footer_email {font-size:14px; line-height:1.5; margin:12px 0 0; overflow-wrap:anywhere; padding:0; text-decoration:underline; text-underline-offset:3px;}
#footer a:focus-visible, #footer button:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}

#footer_social_facebook a {background-image:url(../images/footer-facebook.png);}
#footer_social_youtube a {background-image:url(../images/footer-youtube.png);}
#footer_social_instagram a {background-image:url(../images/footer-instagram.png);}

/* Copyright and payment logos */
#footer_copy_cont {font-size:13px; padding:18px 10px 30px;}
#footer_copy {align-items:center; display:flex; gap:24px; justify-content:space-between;}
#footer_rights_cont {float:none; line-height:1.5; padding:0;}
#footer_copy a {color:inherit;}
#footer_copy a:hover {color:#9019ff;}
#footer_copy_privacy {text-decoration:underline; text-underline-offset:3px;}
#footer_payment_cont {flex:none; float:none;}
#footer_payment {display:block; height:auto; max-width:100%; padding:0; width:180px;}


/******************
  FAQS
******************/

#faq_cont, #faq_cont *, #faq_cont *::before, #faq_cont *::after {box-sizing:border-box;}

#faq_cont {background:#ffffff; color:#655e70; font-family:"Inter", Inter, Arial, sans-serif; margin:0 auto; max-width:1248px; padding:64px 36px 80px; width:100%;}


/* INTRO */

#faq_text {align-items:end; display:grid; float:none; gap:64px; grid-template-columns:minmax(0, 1.3fr) minmax(0, 1fr); margin:0 0 38px; padding:0; width:auto;}
#faq_cont .faq_heading {min-width:0;}
#faq_text #faq_eyebrow {color:#85549e; font-size:11px; font-weight:650; letter-spacing:.16em; line-height:1.5; margin:0 0 14px; padding:0;}
#faq_text #faq_title {color:#242333; font-family:inherit; font-size:48px; font-weight:600; letter-spacing:-.045em; line-height:1.12; margin:0; padding:0;}
#faq_text #faq_title em {color:#9019ff; font-family:Georgia, serif; font-style:italic; font-weight:400;}
#faq_text #faq_intro {color:#756a80; font-size:16px; line-height:1.75; margin:0; max-width:400px; padding:0 0 3px;}


/* QUESTION LIST */

#faqs {display:grid; float:none; gap:12px; list-style:none; margin:0; min-width:0; padding:0; width:100%;}
#faqs .faq_item {background:transparent; border:0; border-radius:0; list-style:none; margin:0; min-width:0; padding:0;}
#faqs .faq_details {background:#ffffff; border:1px solid #e7d9fb; border-radius:14px; margin:0; overflow:hidden; padding:0; transition:background-color .18s ease, border-color .18s ease;}
#faqs .faq_details[open] {background:#fcf9ff; border-color:#cba6f5;}


/* QUESTION BUTTON */

#faqs .faq_toggle {color:#292331; cursor:pointer; display:block; font-family:inherit; font-size:17px; font-weight:600; letter-spacing:-.015em; line-height:1.5; list-style:none; margin:0; padding:24px 60px 24px 24px; position:relative; text-align:left;}
#faqs .faq_toggle::-webkit-details-marker {display:none;}
#faqs .faq_toggle::marker {content:"";}
#faqs .faq_toggle:focus-visible {border-radius:12px; outline:2px solid #9019ff; outline-offset:-5px;}


/* PLUS / MINUS ICON */

#faqs .faq_toggle::before,
#faqs .faq_toggle::after {background:#9019ff; border-radius:1px; content:""; height:2px; pointer-events:none; position:absolute; right:24px; top:50%; width:14px;}

#faqs .faq_toggle::before {transform:translateY(-50%);}
#faqs .faq_toggle::after {transform:translateY(-50%) rotate(90deg); transition:opacity .18s ease;}
#faqs .faq_details[open] > .faq_toggle::after {opacity:0;}


/* ANSWERS */

#faqs .faq_answer {color:#655e70; display:block; font-family:inherit; font-size:15px; font-weight:400; line-height:1.85; margin:0; overflow-wrap:anywhere; padding:0 24px 26px;}
#faqs .faq_answer a {color:#8019ef; text-decoration:underline; text-underline-offset:3px;}


/* CONTACT PANEL */

#faq_contact {align-items:center; background:#f3eef9; border:1px solid #e7deef; border-radius:20px; display:flex; gap:32px; justify-content:space-between; margin:32px 0 0; padding:28px 30px;}
#faq_cont .faq_contact_text {min-width:0;}
#faq_contact h2 {color:#422c50; font-family:inherit; font-size:22px; font-weight:600; letter-spacing:-.025em; line-height:1.3; margin:0 0 6px; padding:0;}
#faq_contact p {color:#756a80; font-size:15px; line-height:1.6; margin:0; padding:0;}


/* PURPLE BUTTON */

#faq_contact_button {align-items:center; background:#9019ff; border:0; border-radius:32px; color:#ffffff; display:inline-flex; flex:0 0 auto; font-family:inherit; font-size:14px; font-weight:600; gap:24px; justify-content:center; line-height:1.4; margin:0; min-height:50px; padding:15px 23px; text-decoration:none; transition:background-color .2s ease;}

#faq_contact_button::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 1.05em; font-size:inherit; height:.75em; margin:0; padding:0; position:static; transform:translateX(var(--site-button-arrow-offset, 0px)); transition:var(--site-button-arrow-transition, transform .2s ease); width:1.05em;}

#faq_contact_button:focus-visible {outline:3px solid #9472b5; outline-offset:5px;}


/* HOVER */

@media (hover:hover) and (pointer:fine) {
  #faqs .faq_details:hover {border-color:#cba6f5;}
  #faq_contact_button:hover {background:#7814d6;}
}


/* ARROW MOVEMENT */

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  #faq_contact_button:hover {--site-button-arrow-offset:4px;}
}

@media (prefers-reduced-motion:no-preference) {
  #faq_contact_button:focus-visible {--site-button-arrow-offset:4px;}
}


/* REDUCED MOTION */

@media (prefers-reduced-motion:reduce) {
  #faqs .faq_details,
  #faqs .faq_toggle::after,
  #faq_contact_button {transition:none;}

  #faq_contact_button::after {transform:none; transition:none;}
}

/************
  ABOUT
*************/

#about_cont, #about_cont *, #about_cont *::before, #about_cont *::after {box-sizing:border-box;}

#about_cont {background:#ffffff; border-radius:0; box-shadow:none; color:#716579; font-family:"Inter", Inter, Arial, sans-serif; margin:0 auto; max-width:1440px; padding:24px 36px 64px; width:100%;}
#about_cont h1, #about_cont h2, #about_cont h3 {color:#422c50; font-family:inherit; letter-spacing:-.045em; padding:0;}
#about_cont h1 em, #about_cont h2 em {color:#861de6; font-style:normal; font-weight:inherit;}
#about_cont h2 {font-size:clamp(30px, 3.2vw, 43px); font-weight:500; line-height:1.12; margin:0 0 25px;}
#about_cont p {font-size:15px; line-height:1.85; margin:0 0 18px; padding:0;}
#about_cont strong {font-weight:600;}
#about_cont img {display:block; max-width:100%;}
#about_cont .about_eyebrow {color:#85549e; font-size:10px; font-weight:650; letter-spacing:.16em; line-height:1.5; margin:0 0 18px; padding:0;}
#about_cont a:focus-visible {outline:3px solid #9472b5; outline-offset:5px;}

#about_cont .about_icon {display:block; fill:none; flex:0 0 auto; height:27px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.5; width:27px;}


/* INTRO */

#about_intro {align-items:center; background:#f0eafa; border:1px solid #e7ddf1; border-radius:28px; display:grid; gap:64px; grid-template-columns:minmax(0, 1fr) minmax(0, 1.05fr); overflow:hidden; padding:44px;}
#about_cont .about_intro_text {min-width:0;}
#about_cont #about_title {font-size:clamp(44px, 5.4vw, 74px); font-weight:500; line-height:1.05; margin:0 0 26px; padding:0;}
#about_cont .about_intro_lead {font-size:18px; line-height:1.75; margin:0 0 30px; max-width:430px;}

#about_cont .about_photo {border-radius:140px 22px 22px 22px; height:470px; margin:0; min-width:0; overflow:hidden; position:relative;}
#about_cont .about_photo img {height:100%; object-fit:cover; object-position:38% center; width:100%;}
#about_cont .about_photo_caption {background:linear-gradient(transparent, rgba(36, 53, 37, .79)); bottom:0; color:#ffffff; font-size:15px; left:0; line-height:1.7; margin:0; padding:58px 30px 26px; position:absolute; right:0;}


/* PURPLE BUTTONS */

#about_cont .about_button {align-items:center; background:#9019ff; border:0; border-radius:32px; color:#ffffff; display:inline-flex; font-size:13px; font-weight:600; gap:24px; justify-content:center; line-height:1.4; min-height:52px; padding:17px 23px; text-decoration:none; transition:background-color .2s ease;}

/* Matches the shared straight-right button arrow. */
#about_cont .about_button::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 1.05em; font-size:inherit; height:.75em; margin:0; padding:0; position:static; transform:translateX(var(--site-button-arrow-offset, 0px)); transition:var(--site-button-arrow-transition, transform .2s ease); width:1.05em;}


/* TEXT LINKS */

#about_cont .about_text_link {align-items:center; color:#7e3da6; display:inline-flex; font-size:13px; font-weight:600; gap:16px; line-height:1.5; margin:8px 0 0; padding:4px 0; text-decoration:none; text-underline-offset:5px;}
#about_cont .about_text_link .about_icon {height:20px; transform:translateX(var(--site-button-arrow-offset, 0px)); transition:transform .2s ease; width:20px;}


/* RESEARCH */

#about_research {align-items:start; display:grid; gap:80px; grid-template-columns:minmax(0, 1fr) minmax(0, 1.25fr); margin:76px 24px 36px;}
#about_cont .about_section_heading {min-width:0;}
#about_cont .about_copy {min-width:0;}
#about_cont .about_copy > p:last-of-type {margin-bottom:0;}
#about_text {font-size:15px; padding:0;}
#about_text > p:first-child {color:#574460; font-size:18px; line-height:1.75;}


/* WELLNESS TOPICS */

#about_topics {border-bottom:1px solid #e5ddec; border-top:1px solid #e5ddec; display:grid; gap:16px; grid-template-columns:repeat(4, minmax(0, 1fr)); list-style:none; margin:0 24px 70px; padding:25px 0;}
#about_topics li {align-items:center; color:#78568e; display:flex; font-size:13px; gap:12px; line-height:1.5; margin:0; min-width:0; padding:0;}


/* QUALITY */

#about_quality {align-items:center; display:grid; gap:70px; grid-template-columns:minmax(0, 1fr) minmax(0, 1.1fr); margin:0 24px 70px;}
#about_cont .about_quality_visual {background:linear-gradient(145deg, #ede4f8, #e4f0fa); border-radius:24px; min-width:0; padding:36px 28px; text-align:center;}
#about_cont .about_quality_bottles {align-items:center; display:flex; height:300px; justify-content:center; padding:24px 0;}
#about_cont .about_quality_bottles img {filter:drop-shadow(0 16px 13px rgba(79, 54, 109, .09)); height:100%; object-fit:contain; width:49%;}
#about_cont .about_quality_bottles img:first-child {transform:rotate(-9deg);}
#about_cont .about_quality_bottles img:last-child {transform:rotate(8deg);}
#about_cont .about_quality_caption {color:#6e547f; font-size:17px; line-height:1.6; margin:18px 0 0;}
#about_quality .about_text_link {margin-top:22px;}


/* VALUES */

#about_values {display:grid; gap:20px; grid-template-columns:repeat(3, minmax(0, 1fr)); margin:0 24px 64px;}
#about_cont .about_values_heading {grid-column:1 / -1; margin:0 0 10px; text-align:center;}
#about_cont .about_values_heading h2 {margin-bottom:12px;}
#about_cont .about_values_heading > p:last-child {margin-bottom:0;}

#about_cont .about_value {background:#f1edf8; border:1px solid #e7deef; border-radius:20px; min-width:0; padding:28px;}
#about_cont .about_value:nth-of-type(2) {background:#ebf3f9; border-color:#ddeaf3;}
#about_cont .about_value:nth-of-type(3) {background:#f8edf5; border-color:#eedfeb;}
#about_cont .about_value_icon {color:#835f9b; display:block; margin:0 0 20px;}
#about_cont .about_value h3 {font-size:20px; font-weight:550; line-height:1.2; margin:0 0 14px;}
#about_cont .about_value p {font-size:13px; line-height:1.8; margin:0;}


/* CLOSING */

#about_closing {align-items:center; background:#ebe5f5; border-radius:24px; display:flex; gap:40px; justify-content:space-between; padding:40px;}
#about_cont .about_closing_text {min-width:0;}
#about_closing h2 {margin:0;}
#about_cont .about_closing_links {align-items:flex-start; display:flex; flex:0 0 auto; flex-direction:column; gap:14px;}
#about_cont .about_closing_links .about_text_link {margin-top:0;}


/* HOVER */

@media (hover:hover) and (pointer:fine) {
  #about_cont .about_button:hover {background:#7814d6;}
  #about_cont .about_text_link:hover {text-decoration:underline;}
}


/* ARROW MOVEMENT */

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  #about_cont .about_button:hover,
  #about_cont .about_text_link:hover {--site-button-arrow-offset:4px;}
}

@media (prefers-reduced-motion:no-preference) {
  #about_cont .about_button:focus-visible,
  #about_cont .about_text_link:focus-visible {--site-button-arrow-offset:4px;}
}


/* REDUCED MOTION */

@media (prefers-reduced-motion:reduce) {
  #about_cont .about_button {transition:none;}

  #about_cont .about_button::after,
  #about_cont .about_text_link .about_icon {transform:none; transition:none;}
}

/************ 
	REVIEWS
*************/

#reviews_cont {background:#fff; color:#302638; font-family:"Inter", Arial, sans-serif; font-size:14px; margin:0 auto; max-width:1140px; padding:0 0 35px;}
#reviews_cont, #reviews_cont *, #reviews_cont *::before, #reviews_cont *::after {box-sizing:border-box;}
#reviews_cont [hidden] {display:none !important;}
#reviews_cont button, #reviews_cont input, #reviews_cont select, #reviews_cont textarea {font:inherit;}
#reviews_cont button, #reviews_cont select {cursor:pointer;}
#reviews_cont a {text-decoration:none;}
#reviews_cont button:focus-visible, #reviews_cont a:focus-visible, #reviews_cont input:focus-visible, #reviews_cont select:focus-visible, #reviews_cont textarea:focus-visible {outline:2px solid #9019ff; outline-offset:4px;}
#reviews_cont .reviews_eyebrow {color:#895da4; font-size:10px; font-weight:650; letter-spacing:1.7px; line-height:1.5; margin:0 0 15px; padding:0;}
#reviews_cont h2 {color:#302638; font-size:25px; font-weight:600; letter-spacing:-.7px; line-height:1.25; margin:0; padding:0;}
#reviews_intro {align-items:center; background:none; border:0; border-radius:0; box-shadow:none; display:grid; gap:60px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); margin:20px 0 38px; padding:40px 0;}
#reviews_intro_content {min-width:0;}
#reviews_intro h1 {color:#302638; font-size:48px; font-weight:600; letter-spacing:-1.8px; line-height:1.12; margin:0 0 19px; padding:0;}
#reviews_intro_description {color:#80718d; font-size:14px; line-height:1.7; margin:0; padding:0;}
#reviews_intro_links {align-items:center; display:flex; gap:24px; margin-top:26px;}
#reviews_cont .reviews_button {align-items:center; background:#9019ff; border:0; border-radius:999px; color:#fff; display:inline-flex; font-size:12px; font-weight:650; gap:20px; justify-content:center; line-height:1.5; min-height:46px; padding:14px 24px; text-decoration:none; transition:background .2s ease;}
#reviews_cont .reviews_button:hover {background:#7c12dc; color:#fff;}
#reviews_cont .reviews_arrow {background:currentColor; clip-path:polygon(0 40%,72% 40%,46% 12%,58% 0,100% 50%,58% 100%,46% 88%,72% 60%,0 60%); display:inline-block; flex-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
#reviews_cont .reviews_button:hover .reviews_arrow, #reviews_cont .reviews_button:focus-visible .reviews_arrow, #reviews_cont .reviews_button_secondary:hover .reviews_arrow, #reviews_cont .reviews_button_secondary:focus-visible .reviews_arrow, #reviews_cont .reviews_page_direction:not(:disabled):hover .reviews_arrow, #reviews_cont .reviews_page_direction:not(:disabled):focus-visible .reviews_arrow {transform:translateX(6px);}
#reviews_cont .reviews_arrow_reverse {display:inline-flex; transform:rotate(180deg);}
#reviews_cont .reviews_text_link {color:#8355a3; font-size:12px; font-weight:550; text-decoration:underline; text-underline-offset:4px;}
#reviews_cont .reviews_text_link:hover {color:#9019ff;}
#reviews_featured {background:#f2eafa; border-radius:24px; min-width:0; padding:34px;}
#reviews_quote {color:#b998d2; display:block; font-family:Georgia, serif; font-size:70px; line-height:.8; margin-bottom:14px;}
#reviews_cont .review_stars {background:linear-gradient(to right,#f5b928 var(--star-fill),#d9cedf var(--star-fill)); background-clip:text; -webkit-background-clip:text; color:transparent; display:inline-block; font-size:15px; letter-spacing:2px; line-height:1.4; white-space:nowrap;}
#reviews_featured blockquote {color:#61476f; font-size:20px; line-height:1.65; margin:16px 0; overflow-wrap:anywhere; padding:0; white-space:pre-line;}
#reviews_featured_name {color:#302638; font-size:12px; font-weight:600; line-height:1.5; margin:0; padding:0;}
#reviews_featured_name span {color:#947f9f; font-weight:400;}
#reviews_featured_description {color:#81718e; font-size:14px; line-height:1.7; margin:15px 0 0;}
#reviews_bg {align-items:start; background:none; display:grid; gap:40px; grid-template-columns:270px minmax(0,1fr); margin:0; padding:0;}
#reviews_rating_cont {background:#fff; border:1px solid #e5dcec; border-radius:17px; padding:25px;}
#reviews_average {color:#302638; font-size:62px; font-weight:600; letter-spacing:-3px; line-height:1.1; margin:20px 0 8px;}
#reviews_average span {color:#9a8ba4; font-size:16px; font-weight:400; letter-spacing:0; margin-left:10px;}
#reviews_rating_count {color:#8c7d97; font-size:11px; line-height:1.6; margin:9px 0 23px; padding:0;}
#reviews_ratings {display:grid; gap:9px; margin-bottom:25px;}
#reviews_cont .reviews_rating_row {align-items:center; background:none; border:0; color:#887491; display:grid; font-size:10px; gap:8px; grid-template-columns:25px minmax(0,1fr) 30px; line-height:1.5; padding:0; text-align:left; width:100%;}
#reviews_cont .reviews_rating_row:hover, #reviews_cont .reviews_rating_row[aria-pressed="true"] {color:#9019ff;}
#reviews_cont .reviews_rating_row > span:last-child {text-align:right;}
#reviews_cont .reviews_rating_track {background:#f0eaf5; border-radius:8px; display:block; height:6px; overflow:hidden;}
#reviews_cont .reviews_rating_track i {background:#b598cd; border-radius:8px; display:block; height:100%;}
#reviews_cont .reviews_rating_row:first-child .reviews_rating_track i {background:#20a36a;}
#reviews_rating_cont .reviews_button {padding:12px; width:100%;}
#reviews_rating_note {color:#908099; font-size:10px; line-height:1.5; margin:12px 0 0; padding:0; text-align:center;}
#reviews_sidebar_note {padding:25px 10px;}
#reviews_sidebar_note h2 {font-size:16px; letter-spacing:-.3px;}
#reviews_sidebar_note p {color:#8a7a95; font-size:12px; line-height:1.8; margin:12px 0 0; padding:0;}
#reviews_results {min-width:0; scroll-margin-top:100px;}
#reviews_results_heading {align-items:end; display:flex; gap:20px; justify-content:space-between; margin-bottom:23px;}
#reviews_results_heading .reviews_eyebrow {margin-bottom:8px;}
#reviews_result_count {color:#8a7a95; font-size:11px; line-height:1.5; text-align:right;}
#reviews_filters {display:flex; gap:10px; margin-bottom:14px;}
#reviews_search_cont {flex:1; min-width:0;}
#reviews_filters input, #reviews_filters select {background:#fff; border:1px solid #e1d6eb; border-radius:8px; color:#71617e; font-size:11px; height:41px; margin:0; padding:0 12px; width:100%;}
#reviews_filter_links {display:flex; gap:8px; margin:0 0 22px;}
#reviews_filter_links button {background:#fff; border:1px solid #e7ddef; border-radius:20px; color:#897491; font-size:10px; line-height:1.4; padding:7px 12px;}
#reviews_filter_links .reviews_filter_current {background:#f0e4fc; border-color:#e0c4f6; color:#8224bb;}
#reviews_list {display:grid; gap:17px; grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
#reviews_cont .review_card {background:#fdfbff; border:1px solid #e6deed; border-radius:14px; min-width:0; padding:22px;}
#reviews_cont .review_heading {align-items:center; display:flex; gap:10px;}
#reviews_cont .review_avatar {align-items:center; background:#f0e8f7; border-radius:50%; color:#8d66a5; display:flex; flex-shrink:0; height:32px; justify-content:center; width:32px;}
#reviews_cont .review_avatar svg {fill:none; height:17px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.5; width:17px;}
#reviews_cont .review_customer {flex:1; min-width:0;}
#reviews_cont .review_customer h3 {color:#302638; font-size:12px; font-weight:650; line-height:1.4; margin:0; overflow-wrap:anywhere; padding:0;}
#reviews_cont .review_customer > span {color:#9c8da6; display:block; font-size:9px; line-height:1.4; margin-top:3px;}
#reviews_cont .review_heading .review_stars {font-size:11px; letter-spacing:1px;}
#reviews_cont .review_card blockquote {color:#6e617b; font-size:13px; line-height:1.85; margin:20px 0 0; overflow-wrap:anywhere; padding:0; white-space:pre-line;}
#reviews_cont .reviews_button_secondary {align-items:center; background:#fff; border:1px solid #ddcde9; border-radius:25px; color:#81519d; display:inline-flex; font-size:12px; gap:16px; justify-content:center; line-height:1.5; padding:11px 21px;}
#reviews_cont .reviews_button_secondary:hover {background:#faf6fe; color:#9019ff;}
#reviews_empty {border:1px dashed #decfe9; border-radius:12px; padding:35px; text-align:center;}
#reviews_empty h3 {font-size:16px; margin:0 0 10px;}
#reviews_empty p {color:#81718e; font-size:12px; margin:0 0 18px;}
#reviews_pagination {align-items:center; border-top:1px solid #e9e0f0; display:flex; gap:14px; justify-content:space-between; margin-top:30px; padding-top:25px;}
#reviews_page_numbers {align-items:center; display:flex; flex-wrap:wrap; gap:6px; justify-content:center;}
#reviews_cont .reviews_page_number {align-items:center; background:#fff; border:1px solid #e2d6eb; border-radius:50%; color:#796387; display:inline-flex; font-size:12px; font-weight:600; height:38px; justify-content:center; line-height:1; min-width:38px; padding:0 8px; transition:background .2s ease, color .2s ease;}
#reviews_cont .reviews_page_number:hover {background:#f3eafa; border-color:#cba6e8; color:#9019ff;}
#reviews_cont .reviews_page_number[aria-current="page"] {background:#9019ff; border-color:#9019ff; color:#fff;}
#reviews_cont .reviews_page_number[aria-current="page"]:hover {background:#7c12dc; border-color:#7c12dc;}
#reviews_cont .reviews_page_direction {align-items:center; background:#fff; border:1px solid #e2d6eb; border-radius:999px; color:#81519d; display:inline-flex; flex-shrink:0; font-size:12px; font-weight:600; gap:12px; justify-content:center; min-height:40px; padding:10px 17px; transition:background .2s ease;}
#reviews_cont .reviews_page_direction:not(:disabled):hover {background:#faf6fe; color:#9019ff;}
#reviews_cont .reviews_page_direction:disabled {cursor:default; opacity:.4;}
#reviews_cont .reviews_page_gap {color:#9a8ba4; font-size:12px; padding:0 3px;}
#reviews_page_summary {color:#8a7a95; font-size:11px; line-height:1.5; margin:14px 0 0; padding:0; text-align:center;}
#reviews_bottom {align-items:center; background:#f5f0fa; border:1px solid #ece4f3; border-radius:20px; display:flex; justify-content:space-between; margin:48px 0; padding:33px 37px;}
#reviews_bottom h2 {font-size:27px;}
#reviews_bottom p:not(.reviews_eyebrow) {color:#887491; font-size:12px; line-height:1.7; margin:12px 0 0; padding:0;}
#reviews_cont .reviews_notice {border:1px solid; border-radius:12px; font-size:13px; line-height:1.7; margin:25px 0; padding:17px 21px;}
#reviews_cont .reviews_success {background:#f1faf5; border-color:#cfe8d9; color:#237c4e;}
#reviews_cont .reviews_error {background:#fffafb; border-color:#edbac8; color:#b6254c;}
#reviews_cont .reviews_notice ul {list-style:disc; margin:0; padding-left:18px;}
#reviews_form_cont {background:#fff; border:1px solid #dfd1e9; border-radius:20px; margin:0 auto 40px; max-width:560px; padding:35px; position:relative; scroll-margin-top:100px;}
#reviews_dialog {background:#fff; border:1px solid #dfd1e9; border-radius:20px; box-shadow:0 25px 100px #39254730; color:#302638; margin:auto; max-height:90vh; overflow:auto; padding:0; width:520px;}
#reviews_dialog::backdrop {background:rgba(45,28,61,.44);}
#reviews_dialog #reviews_form_cont {border:0; margin:0; max-width:none;}
#reviews_cont #reviews_form_close {background:none; border:0; color:#897491; font-size:28px; height:35px; line-height:1; padding:0; position:absolute; right:14px; top:12px; width:35px;}
#reviews_form {display:grid; gap:9px; margin-top:24px;}
#reviews_form > label {color:#302638; font-size:12px; font-weight:550; line-height:1.5;}
#reviews_cont #reviews_form input:not([type="hidden"]):not([type="radio"]), #reviews_cont #reviews_form select, #reviews_cont #reviews_form textarea {background:#fff; border:1px solid #ded0e8; border-radius:8px; color:#302638; font-family:inherit; font-size:14px; line-height:1.5; margin:0 0 9px; padding:11px; width:100%;}
#reviews_form textarea {resize:vertical;}
#reviews_form fieldset {border:0; margin:0 0 15px; min-width:0; padding:0;}
#reviews_form legend {color:#302638; font-size:12px; font-weight:550; margin-bottom:10px; padding:0;}
#review_rating_choices {align-items:center; display:inline-flex; gap:2px;}
#reviews_cont #review_rating_choices .review_rating_star {align-items:center; cursor:pointer; display:inline-flex; height:44px; justify-content:center; margin:0; padding:3px; position:relative; width:44px;}
#reviews_cont #review_rating_choices input[type="radio"] {clip-path:inset(50%); display:block; height:1px; margin:0; opacity:0; overflow:hidden; padding:0; position:absolute; width:1px;}
#review_rating_choices .review_rating_star svg {display:block; fill:transparent; height:36px; pointer-events:none; stroke:#c9c9c9; stroke-linejoin:miter; stroke-width:1.5; transition:fill .12s ease, stroke .12s ease; width:36px;}
#review_rating_choices .review_rating_star.review_rating_filled svg {fill:#f5b928; stroke:#f5b928;}
#review_rating_choices .review_rating_star input:focus-visible ~ svg {border-radius:4px; outline:2px solid #9019ff; outline-offset:3px;}
#reviews_form .reviews_button {margin-top:5px; width:100%;}
#reviews_cont .reviews_hidden_label {clip-path:inset(50%); height:1px; overflow:hidden; position:absolute; width:1px;}

/************ 
	BLOG
*************/

/* BLOG LISTING AND ARTICLES */

#blogs_cont, #blog_cont {box-sizing:border-box; width:calc(100% - 48px); margin:40px auto 80px; color:#392b47; font-family:"Inter", Inter, Arial, sans-serif; text-align:left;}
#blogs_cont *, #blogs_cont *::before, #blogs_cont *::after, #blog_cont *, #blog_cont *::before, #blog_cont *::after {box-sizing:border-box;}
#blogs_cont {max-width:1300px;}

.blogs_heading {position:static; display:block; width:auto; height:auto; max-width:none; margin:0 0 28px; padding:48px; border:0; border-radius:28px; background:#f4effa;}
.blogs_eyebrow {margin:0 0 14px; padding:0; color:#7950a3; font-size:12px; font-weight:700; line-height:1.5; letter-spacing:.15em;}
#blogs_title {margin:0; padding:0; color:#302738; font-size:clamp(40px, 5vw, 64px); font-weight:650; line-height:1.08; letter-spacing:-.045em;}
#blogs_title em {color:#9019ff; font-family:Georgia, "Times New Roman", serif; font-style:italic; font-weight:400;}
.blogs_intro {max-width:55ch; margin:20px 0 0; padding:0; color:#776987; font-size:18px; line-height:1.7;}

.blogs_navigation {position:static; display:block; margin:0 0 32px; padding:0; transform:none;}
.blog_topics {display:flex; flex-wrap:wrap; gap:10px; margin:0; padding:0; list-style:none;}
.blog_topics li {margin:0; padding:0; list-style:none;}
.blog_topics a {display:inline-flex; align-items:center; min-height:42px; padding:9px 18px; border:1px solid #e5d9ef; border-radius:999px; background:#fff; color:#67477f; font-size:14px; font-weight:600; line-height:1.4; text-decoration:none;}
.blog_topics a:hover {border-color:#9019ff; background:#f4effa;}
.blog_topics a[aria-current="page"] {border-color:#9019ff; background:#9019ff; color:#fff;}

.blogs_grid {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:28px; margin:0; padding:0; list-style:none;}
.blog_result {min-width:0; margin:0; padding:0; overflow:hidden; border:1px solid #e8dfef; border-radius:22px; background:#fff; list-style:none;}
.blog_result article {height:100%;}
.blog_result_link {display:flex; flex-direction:column; height:100%; color:inherit; text-decoration:none;}
.blog_result_image {overflow:hidden; background:#f0eaf6; aspect-ratio:16 / 10;}
.blog_result_image img {display:block; width:100%; height:100%; object-fit:cover;}
.blog_result_copy {display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:26px;}
.blog_result_copy h2 {margin:0 0 12px; padding:0; color:#392b47; font-size:24px; font-weight:650; line-height:1.25; letter-spacing:-.025em;}
.blog_result_desc {margin:0 0 24px; padding:0; color:#776987; font-size:15px; line-height:1.7;}
.blog_result_read {display:inline-flex; align-items:center; gap:12px; margin-top:auto; color:#7950a3; font-size:15px; font-weight:650;}
.blog_result_read span {font-size:23px; line-height:1;}
.blog_result_link:hover h2 {color:#9019ff;}


/* FEATURED CARD */

.blog_result_featured {grid-column:1 / -1; background:#f4effa;}
.blog_result_featured .blog_result_link {display:grid; grid-template-columns:1.15fr 1fr;}
.blog_result_featured .blog_result_image {min-height:350px; height:100%; aspect-ratio:auto;}
.blog_result_featured .blog_result_copy {justify-content:center; padding:40px;}
.blog_result_featured h2 {font-size:clamp(28px, 3vw, 40px);}
.blog_result_featured .blog_result_desc {font-size:17px;}
.blog_result_featured .blog_result_read {margin-top:0;}
.blogs_empty {padding:40px 0; color:#776987;}


/* INDIVIDUAL ARTICLE */

#blog_cont {max-width:1040px;}
.blog_back {display:inline-flex; align-items:center; gap:10px; color:#7950a3; font-size:15px; font-weight:600; text-decoration:none;}
.blog_back:hover {color:#9019ff;}
.blog_article_header {position:static; display:block; width:auto; height:auto; max-width:none; margin:26px 0 40px; padding:44px; border:0; border-radius:28px; background:#f4effa;}
#blog_title {max-width:24ch; margin:0 0 26px; padding:0; color:#302738; font-size:clamp(34px, 4.5vw, 56px); font-weight:650; line-height:1.12; letter-spacing:-.04em;}

.blog_article_body {max-width:760px; margin:0 auto; color:#625a6b; font-size:18px; line-height:1.85; overflow-wrap:anywhere;}
.blog_article_body p {margin:0 0 24px; padding:0; font-size:inherit; line-height:inherit;}
.blog_article_body h2 {margin:44px 0 18px; padding:0; color:#392b47; font-size:clamp(26px, 3vw, 34px); font-weight:650; line-height:1.25; letter-spacing:-.025em;}
.blog_article_body h3 {margin:32px 0 14px; padding:0; color:#392b47; font-size:24px; font-weight:650; line-height:1.35;}
.blog_article_body img {display:block; max-width:100%; height:auto; margin:28px auto; border-radius:18px;}
.blog_article_body figure {max-width:100%; margin:28px 0;}
.blog_article_body figcaption {margin-top:10px; color:#776987; font-size:14px; text-align:center;}
.blog_article_body a {color:#7919d1; text-decoration:underline; text-underline-offset:3px;}
.blog_article_body ul, .blog_article_body ol {margin:0 0 26px; padding-left:26px;}
.blog_article_body li {margin-bottom:10px;}
.blog_article_body blockquote {margin:30px 0; padding:24px 28px; border-left:4px solid #9019ff; border-radius:0 16px 16px 0; background:#f4effa; color:#493753;}
.blog_article_body table {display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; margin:28px 0;}
.blog_article_body th, .blog_article_body td {padding:12px 16px; border:1px solid #e5d9ef; text-align:left;}
.blog_article_body iframe, .blog_article_body video {max-width:100%;}
.blog_article_footer {max-width:760px; margin:44px auto 0; padding:26px 0 0; border-top:1px solid #e5d9ef; background:transparent; color:inherit;}


/* KEYBOARD ACCESSIBILITY */

.blog_result_link:focus-visible, .blog_topics a:focus-visible, .blog_back:focus-visible {outline:3px solid #9019ff; outline-offset:-3px;}


/************ 
	SIGN UP
*************/

/* close register popup */
#close_register_popup { margin-left:590px; margin-top:-30px;}

#signup_popup { background:#fff; /*background:-webkit-gradient(linear, 0 0, 0 bottom, from(#f7f7f7), to(#fff)) no-repeat; background:-webkit-linear-gradient(#f7f7f7, #fff) no-repeat; background:-moz-linear-gradient(#f7f7f7, #fff) no-repeat; background:-ms-linear-gradient(#f7f7f7, #fff) no-repeat; background:-o-linear-gradient(#f7f7f7, #fff) no-repeat; background:linear-gradient(#f7f7f7, #fff) no-repeat;*/ -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; -moz-box-shadow:0px 0px 5px #434343 inset; -webkit-box-shadow:0px 0px 5px #434343 inset; box-shadow:0px 0px 5px #434343 inset; color:#5a5a5a; display:none; padding:10px; position:fixed; left:50%; top:5%; z-index:100;}

#signup_popup h2 { color:#3463a0; font-size:30px; margin:10px 0; text-align:center;}

#signup_popup input[type="text"],#signup_popup input[type="password"] ,#signup_popup select { border:3px solid #f6f6f6; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; display:block; float:left; font-size:18px; padding:5px; margin:10px 20px; width:250px;}

#signup_button { background:#f4af40; border:none; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; color:#fff; cursor:pointer; font-size:24px; font-weight:bold; margin:10px 20px; padding:5px 20px;}

#signup_button:hover {background:#ffc25f;}



/******************
    CUSTOMER ACCOUNT
******************/


/* ACCOUNT LAYOUT */

#account_wrapper {box-sizing:border-box; max-width:1040px; width:calc(100% - 48px); margin:40px auto 64px; padding:0; overflow:hidden; border:1px solid #e8e1ee; border-radius:22px; background:#fff; box-shadow:0 8px 30px rgba(56,35,75,.03); color:#362440; font-family:"Inter", Inter, Arial, sans-serif; text-align:left;}
#account_wrapper *, #account_wrapper *::before, #account_wrapper *::after {box-sizing:border-box;}
#account_content {float:none; width:100%; margin:0; padding:32px 40px 38px;}
#account_content h1 {margin:0 0 24px; padding:0; color:#362440; font-size:28px; font-weight:650; line-height:1.2; letter-spacing:-.035em;}
#account_content h2 {margin:24px 0 16px; padding:0; color:#362440; font-size:22px; font-weight:650; line-height:1.35;}
#account_content h3 {margin:0 0 12px; padding:0; color:#493753; font-size:17px; font-weight:600; line-height:1.5;}
#account_content p {margin:0 0 18px; padding:0; color:#81718b; font-size:14px; line-height:1.7;}
#account_content .account_intro {margin:-16px 0 28px; padding:0; color:#81718b; font-size:14px; line-height:1.6;}


/* ACCOUNT NAVIGATION */

#account_nav {display:flex; align-items:center; gap:5px; float:none; width:100%; margin:0; padding:16px 24px; border-bottom:1px solid #eee6f4; background:#fcfafe; list-style:none;}
#account_nav .clr {display:none;}
#account_nav li {flex-shrink:0; float:none; margin:0; padding:0; list-style:none;}
#account_nav li:last-of-type {margin-left:auto;}
#account_nav li a {display:block; padding:10px 14px; border-radius:24px; color:#80698f; font-size:13px; font-weight:500; line-height:1.4; text-decoration:none;}
#account_nav li a:hover {background:#f1eaf7; color:#7435a3;}
#account_nav li a.account_nav_current {background:#eee2fa; color:#7426ae; font-weight:650;}
#account_nav li a:focus-visible {outline:2px solid #9019ff; outline-offset:3px;}


/* ACCOUNT INFORMATION */

#edit_account_form {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; max-width:none; margin:0; padding:0; border:0; border-radius:0; background:none;}
#edit_account_form > .clr {display:none;}
#edit_account_form .account_form_heading {grid-column:1 / -1; margin:16px 0 0; padding:0; color:#79568e; font-size:12px; font-weight:650; line-height:1.5; letter-spacing:.055em;}
#edit_account_form .account_form_heading:first-child {margin-top:0;}
#edit_account_form .account_wide {grid-column:1 / -1;}
#edit_account_form .edit_account {position:relative; float:none; width:auto; min-width:0; height:58px; margin:0; padding:0; border:1px solid #dcd3e4; border-radius:10px; background:#fff; transition:border-color .2s ease, box-shadow .2s ease;}
#edit_account_form .account_floating label, #edit_account_form .account_field_label {position:absolute; z-index:1; top:50%; left:14px; right:12px; width:auto; margin:0; padding:0; color:#8b7b95; font-size:14px; font-weight:400; line-height:18px; text-align:left; pointer-events:none; transform:translateY(-50%); transform-origin:left top; transition:top .2s ease, transform .2s ease;}
#edit_account_form .edit_account_optional {font-size:inherit; font-weight:400;}
#edit_account_form .account_floating input, #edit_account_form .account_floating select {display:block; float:none; width:100%; max-width:100%; height:100%; margin:0; padding:23px 14px 6px; border:0; border-radius:10px; outline:none; background:transparent; box-shadow:none; color:#362e3f; font:400 15px/22px "Inter", Inter, Arial, sans-serif;}
#edit_account_form .account_floating select {padding-right:32px; cursor:pointer;}
#edit_account_form .account_floating:focus-within {border-color:#a26acb; box-shadow:0 0 0 3px rgba(162,106,203,.09);}
#edit_account_form .account_floating:focus-within label, #edit_account_form .account_floating:has(input:not(:placeholder-shown)) label, #edit_account_form .account_floating:has(select) label, #edit_account_form .account_readonly .account_field_label {top:7px; transform:translateY(0) scale(.78);}
#edit_account_form .account_readonly {background:#faf8fc;}
#customers_country_value {display:block; width:auto; height:auto; margin:0; padding:24px 14px 6px; border:0; background:transparent; color:#71627d; font:400 15px/22px "Inter", Inter, Arial, sans-serif;}
#edit_account_button_cont {grid-column:1 / -1; display:flex; justify-content:flex-end; margin:12px 0 0; padding:10px 0 0;}


/* CHANGE PASSWORD */

#account_passwords {width:100%; margin:0; padding:0;}
#account_password_form {display:grid; grid-template-columns:minmax(0,1fr); gap:20px; max-width:620px; margin:0; padding:0; border:0; border-radius:0; background:none;}
#account_password_form .account_password {float:none; width:100%; margin:0; padding:0;}
#account_password_form .account_password label {display:block; width:auto; margin:0 0 9px; padding:0; color:#493753; font-size:14px; font-weight:600; line-height:1.5; text-align:left;}
#account_password_form .account_password input {display:block; width:100%; height:54px; margin:0; padding:14px 16px; border:1px solid #dcd3e4; border-radius:10px; background:#fff; box-shadow:none; color:#362e3f; font:400 15px/1.5 "Inter", Inter, Arial, sans-serif;}
#account_password_form .account_password input::placeholder {color:#9b8da4;}
#account_password_form .account_password input:focus {border-color:#a26acb; outline:2px solid #eee2fa; outline-offset:2px;}
#account_password_button_cont {display:flex; justify-content:flex-end; margin:4px 0 0; padding:0;}


/* SHARED ACTION BUTTONS */

#account_wrapper :is(#edit_account_button, #account_password_button, #add_address_button, #add_new_address, .previous_add_product, .subsciption_add) {appearance:none; display:inline-flex; align-items:center; justify-content:center; gap:18px; width:auto; min-height:46px; margin:0; padding:13px 24px; border:0; border-radius:999px; background:#9019ff; color:#fff; cursor:pointer; font:650 14px/1.4 "Inter", Inter, Arial, sans-serif; text-align:center; text-decoration:none; transition:background-color .2s ease;}
#account_wrapper :is(#edit_account_button, #account_password_button, #add_address_button, #add_new_address, .previous_add_product, .subsciption_add):hover, #account_wrapper :is(#edit_account_button, #account_password_button, #add_address_button, #add_new_address, .previous_add_product, .subsciption_add):focus-visible {background:#6c1db5; color:#fff; transform:none;}
#account_wrapper :is(#edit_account_button, #account_password_button, #add_address_button, #add_new_address, .previous_add_product, .subsciption_add):focus-visible {outline:2px solid #6c1db5; outline-offset:4px;}
#account_wrapper :is(#edit_account_button, #account_password_button, #add_address_button, #add_new_address, .previous_add_product, .subsciption_add)::after {display:block; flex:0 0 auto; width:1.05em; height:.75em; background:currentColor; clip-path:polygon(0 40%,72% 40%,46% 12%,58% 0,100% 50%,58% 100%,46% 88%,72% 60%,0 60%); content:""; transition:transform .2s ease;}
#account_wrapper :is(#edit_account_button, #account_password_button, #add_address_button, #add_new_address, .previous_add_product, .subsciption_add):hover::after, #account_wrapper :is(#edit_account_button, #account_password_button, #add_address_button, #add_new_address, .previous_add_product, .subsciption_add):focus-visible::after {transform:translateX(6px);}


/* ORDER HISTORY AND SUBSCRIPTION TABLES */

#account_history, #order_history, #account_subscriptions {width:100%; margin:0; padding:0;}
#account_wrapper :is(#account_order_history, .account_subscriptions_table) {width:100%; margin:0 0 24px; border:1px solid #e8e1ee; border-collapse:separate; border-spacing:0; border-radius:12px; overflow:hidden; background:#fff; color:#62546e; font:400 14px/1.6 "Inter", Inter, Arial, sans-serif;}
#account_wrapper :is(#account_order_history, .account_subscriptions_table) :is(th, td) {padding:16px 18px; border:0; border-bottom:1px solid #eee6f4; text-align:left; vertical-align:middle;}
#account_wrapper :is(#account_order_history, .account_subscriptions_table) th {background:#faf7fd; color:#79568e; font-size:13px; font-weight:650;}
#account_wrapper :is(#account_order_history, .account_subscriptions_table) td {background:#fff;}
#account_wrapper :is(#account_order_history, .account_subscriptions_table) tr:last-child > * {border-bottom:0;}
#account_wrapper :is(#account_order_history, .account_subscriptions_table) a:not(.subsciption_add) {color:#7950a3; font-weight:600; text-decoration:underline; text-underline-offset:3px;}
#account_order_history :is(th, td) {line-height:18px; margin:0;}
#account_order_history tr:hover td {background:#fcfafe;}
#account_order_history .account_order_history_id {width:15%; color:#493753; font-weight:650;}
#account_order_history .account_order_history_date {width:25%;}
#account_order_history .account_order_history_total {width:20%; font-weight:600;}
#account_order_history .account_order_history_items {width:15%;}
#account_order_history .account_order_history_status {width:25%;}


/* SUBSCRIPTIONS */

.account_subscriptions_table tr:first-child th[colspan] {padding:18px; background:#f4effa;}
.account_subscriptions_table tr:nth-child(n+3) th {background:#fff; color:#62546e; font-size:14px; font-weight:400;}
.subsciption_id {display:inline-block; margin-right:24px; color:#493753; font-weight:650;}
.subsciption_start {display:inline-block; margin-right:24px; color:#81718b; font-weight:400;}
.subsciption_frequency {display:inline-block; color:#7950a3; font-weight:650;}
.subscription_status_update {display:inline-block;}
.subscription_status_label {display:inline-block; margin:0 10px 0 0; padding:0; color:#62546e; font-size:14px;}
.subscription_status {width:150px; min-height:42px; margin:0; padding:9px 12px; border:1px solid #dcd3e4; border-radius:9px; background:#fff; color:#493753; font:400 14px/1.5 "Inter", Inter, Arial, sans-serif; cursor:pointer;}
.subscription_status:focus {border-color:#a26acb; outline:2px solid #eee2fa; outline-offset:2px;}
.subscription_status_message {display:none; padding-left:12px; color:#26864b; font-size:13px; font-weight:600;}


/* ORDER DETAILS */

#order_information {width:100%; margin:0; padding:0;}
#order_info_date {margin:0 0 24px; padding:0; color:#81718b; font-size:14px; line-height:1.6;}
#order_info_date span {margin-left:10px; color:#493753; font-weight:600;}
#order_info, #order_billing_info {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:24px; margin:0 0 24px; padding:0;}
#order_info > .clr, #order_billing_info > .clr {display:none;}
#order_info_shipping, #order_info_billing {float:none; width:auto; min-width:0; margin:0; padding:22px; border:1px solid #e8e1ee; border-radius:12px; background:#faf7fd; color:#62546e; font-size:14px; line-height:1.8;}
#order_info_products, #order_info_totals {float:none; width:auto; min-width:0; margin:0; padding:0;}
#product_order_heading, .product_order_info {display:grid; grid-template-columns:minmax(0,1fr) 90px 50px 100px; gap:12px; align-items:center; margin:0; padding:16px; border-bottom:1px solid #eee6f4; color:#62546e; font-size:14px; line-height:1.6;}
#product_order_heading {border-radius:12px 12px 0 0; background:#f4effa;}
#product_order_heading .clr, .product_order_info .clr {display:none;}
#product_order_heading h3 {margin:0; font-size:13px; font-weight:650;}
.order_info_product, .order_info_price, .order_info_qty, .order_info_total {float:none; width:auto; min-width:0; margin:0; padding:0;}
.order_info_qty {text-align:center;}
.order_info_price, .order_info_total {text-align:right;}
.billing_info_totals {display:flex; justify-content:space-between; gap:20px; margin:0; padding:14px 18px; border-bottom:1px solid #eee6f4; color:#493753; font-size:14px; line-height:1.6; text-align:right;}
.billing_info_totals span {float:none; width:auto; margin:0; padding:0; color:#81718b; text-align:left;}
.billing_info_totals:last-child {border-bottom:0; border-radius:0 0 12px 12px; background:#f4effa; color:#493753; font-size:17px; font-weight:650;}
#payment_method {grid-column:1 / -1; margin:0; padding:20px 22px; border:1px solid #e8e1ee; border-radius:12px; background:#fff;}
#payment_method p {margin:0;}


/* ORDER STATUS HISTORY */

#order_status_history {margin:32px 0 0; padding:0;}
#product_status_heading, .product_status_info {display:grid; grid-template-columns:160px 140px minmax(0,1fr); gap:20px; margin:0; padding:16px 18px; border-bottom:1px solid #eee6f4; color:#62546e; font-size:14px; line-height:1.6;}
#product_status_heading {border-radius:12px 12px 0 0; background:#f4effa;}
#product_status_heading h3 {margin:0; font-size:13px; font-weight:650;}
#product_status_heading .clr, .product_status_info .clr {display:none;}
.status_info_date, .status_info_status, .status_info_comments {float:none; width:auto; min-width:0; margin:0; padding:0;}
.status_info_comments {overflow-wrap:anywhere;}


/* PREVIOUSLY ORDERED PRODUCTS */

.previous_product_order {display:grid; grid-template-columns:minmax(0,1fr) 90px 50px 100px auto; align-items:center; gap:16px; margin:0; padding:18px 0; border-bottom:1px solid #eee6f4; color:#62546e; font-size:14px; line-height:1.6;}
.previous_product_order .clr {display:none;}
.previous_order_product, .previous_order_price, .previous_order_quantity, .previous_order_total {float:none; width:auto; margin:0; padding:0;}
.previous_order_product > span {color:#493753; font-weight:600;}
.previous_order_model {margin-top:4px; color:#81718b; font-size:12px;}
.previous_order_price, .previous_order_total {text-align:right;}
.previous_order_quantity {text-align:center;}


/* ADDRESS BOOK AND ADD ADDRESS */

#account_addresses {width:100%; margin:0; padding:0;}
#account_wrapper #add_address, #account_wrapper .other_address {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; width:100%; margin:24px 0 0; padding:24px; border:1px solid #e8e1ee; border-radius:14px; background:#fcfafe;}
#account_wrapper #add_address > .clr, #account_wrapper .other_address > .clr {display:none;}
#account_wrapper #add_address > .left, #account_wrapper .other_address > .left {float:none; width:auto; min-width:0; margin:0; padding:0;}
#account_wrapper :is(#add_address, .other_address) label {display:block; width:auto; margin:0 0 8px; padding:0; color:#493753; font-size:14px; font-weight:600; line-height:1.5; text-align:left;}
#account_wrapper :is(#add_address, .other_address) :is(input:not([type="hidden"]):not([type="submit"]), select) {display:block; width:100%; height:52px; margin:0; padding:12px 14px; border:1px solid #dcd3e4; border-radius:10px; background:#fff; color:#362e3f; font:400 15px/1.5 "Inter", Inter, Arial, sans-serif;}
#account_wrapper :is(#add_address, .other_address) :is(input:not([type="hidden"]):not([type="submit"]), select):focus {border-color:#a26acb; outline:2px solid #eee2fa; outline-offset:2px;}
#account_wrapper #add_address_button {grid-column:1 / -1; justify-self:end; margin-top:8px;}


/* SUCCESS AND ERROR MESSAGES */

#account_notification, #address_notification {width:auto; margin:18px 0 24px; padding:14px 18px; border:1px solid #cde8d7; border-radius:10px; background:#eef7f0; color:#35724b; font-size:14px; line-height:1.6;}
#account_errors {width:auto; margin:18px 0 24px; padding:14px 18px; border:1px solid #efc9d0; border-radius:10px; background:#fff2f4; color:#9a4158; font-size:14px; line-height:1.6;}
#account_errors ul {margin:0; padding-left:18px;}
#account_errors li {margin:0; padding:0;}
#account_errors a {color:inherit; text-decoration:underline;}


/******************
    CONTACT FORM
******************/

#contact_page, #contact_page *, #contact_page *::before, #contact_page *::after {box-sizing:border-box;}

#contact_page {background:#f5f3f9; color:#344138; font-family:"Inter", Arial, sans-serif; margin:0; padding:48px 30px 70px;}
#contact_form_container {margin:0 auto; max-width:1200px; width:100%;}

/* Heading */
#contact_heading {margin:0 0 32px;}
#contact_page .contact_eyebrow {color:#7b24cc; font-size:11px; font-weight:650; letter-spacing:.14em; line-height:1.5; margin:0 0 14px; padding:0;}
#contact_heading h1, #contact_page #success_success h1 {color:#243a30; font-size:52px; font-weight:550; letter-spacing:-.04em; line-height:1.1; margin:0 0 18px; padding:0;}
#contact_heading .contact_intro_text {color:#677269; font-size:17px; line-height:1.65; margin:0; max-width:740px; padding:0;}

/* Two-column layout */
#contact_grid {align-items:start; display:grid; gap:26px; grid-template-columns:minmax(0, 1.35fr) minmax(0, 1fr);}
#contact_page .contact_card {background:#ffffff; border:1px solid #e4e0e9; border-radius:18px; box-shadow:0 8px 24px rgba(48, 16, 77, .02); min-width:0; padding:32px;}
#contact_page .contact_card h2 {color:#243a30; font-size:24px; font-weight:600; letter-spacing:-.03em; line-height:1.3; margin:0 0 8px; padding:0;}

/* Form */
#contact_form {float:none; margin:0; width:100%;}
#contact_page .contact_hint {color:#737c75; font-size:12px; line-height:1.6; margin:0 0 24px; padding:0;}
#contact_fields {display:grid; gap:22px 18px; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);}
#contact_page .contact_field_cont {min-width:0; padding:0;}
#contact_page .contact_field_wide {grid-column:1 / -1;}
#contact_page .contact_input_label {color:#344138; display:block; font-size:14px; font-weight:500; line-height:1.5; margin:0 0 9px;}

#contact_page .contact_field {appearance:none; background:#ffffff; border:1px solid #d5d9d4; border-radius:8px; box-shadow:none; color:#273a2e; display:block; font-family:inherit; font-size:16px; font-weight:400; height:48px; line-height:1.5; margin:0; min-width:0; padding:12px 14px; transition:border-color .2s ease; width:100%;}
#contact_page .contact_field::placeholder {color:#7b807c; opacity:1;}
#contact_page .contact_field:focus {border-color:#9019ff; outline:2px solid #9019ff; outline-offset:2px;}
#contact_page #contact_message {height:auto; min-height:190px; resize:vertical;}
#contact_page #contact_message_hint {margin:12px 0 24px;}

/* Submit button */
#contact_submit_cont {margin:0; padding:0; text-align:left;}
#contact_page .contact_button {align-items:center; appearance:none; background:#9019ff; border:1px solid #9019ff; border-radius:999px; color:#ffffff; cursor:pointer; display:inline-flex; font-family:inherit; font-size:15px; font-weight:600; gap:35px; justify-content:space-between; line-height:1.4; margin:0; min-height:50px; min-width:200px; padding:14px 24px; text-decoration:none; transition:background-color .2s ease, border-color .2s ease;}
#contact_page .contact_button:hover {background:#7814d8; border-color:#7814d8;}
#contact_page .contact_button:focus-visible {outline:3px solid #b17be5; outline-offset:4px;}
#contact_page #contact_reply {color:#64756a; font-size:12px; line-height:1.6; margin:16px 0 0; padding:0; text-align:left;}

/* Straight-right arrows */
#contact_page .contact_button::after, #contact_page .contact_arrow {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 18px; height:13px; transition:transform .2s ease; width:18px;}

/* Contact details */
#contact_page #contact_address {float:none; margin:0; width:100%;}
#contact_info_heading {align-items:center; display:flex; gap:14px; padding-bottom:24px;}
#contact_page #contact_info_heading h2 {font-size:22px; margin:0;}
#contact_info_icon {align-items:center; border:1px solid #e6d5f5; border-radius:12px; color:#9019ff; display:flex; flex:0 0 42px; height:42px; justify-content:center; width:42px;}
#contact_info_icon svg {display:block; height:24px; width:24px;}

#contact_page .contact_info_section {border-top:1px solid #e3e6df; padding:26px 0;}
#contact_page .contact_info_section:last-child {padding-bottom:0;}
#contact_page .contact_info_section h3 {color:#727e74; font-size:11px; font-weight:650; letter-spacing:.09em; line-height:1.6; margin:0 0 16px; padding:0;}
#contact_page .contact_info_section p {color:#6c786e; font-size:14px; line-height:1.65; margin:12px 0 0; padding:0;}

#contact_email_link {color:#8019df; font-size:18px; font-weight:500; line-height:1.5; overflow-wrap:anywhere; text-decoration:none;}
#contact_email_link:hover {text-decoration:underline; text-underline-offset:4px;}

#contact_page .contact_info_section address {color:#344138; font-size:16px; font-style:normal; line-height:1.8;}
#contact_page .contact_address {font-size:inherit; line-height:inherit; margin:0; padding:0;}

#contact_map_link {align-items:center; color:#7814d8; display:inline-flex; font-size:13px; gap:12px; line-height:1.5; margin-top:16px; text-decoration:none;}
#contact_map_link:hover {text-decoration:underline; text-underline-offset:4px;}

#contact_faq_link {align-items:center; background:#f1e9f9; border-radius:10px; color:#7115c5; display:flex; font-size:14px; font-weight:500; gap:16px; justify-content:space-between; line-height:1.5; margin-top:18px; padding:14px 16px; text-decoration:none; transition:background-color .2s ease;}
#contact_faq_link:hover {background:#e9daf6;}
#contact_page #contact_address a:focus-visible {border-radius:4px; outline:2px solid #9019ff; outline-offset:4px;}

/* Validation feedback */
#contact_errors {background:#fff3f5; border:1px solid #edccd4; border-radius:10px; color:#923c52; font-size:14px; line-height:1.6; margin:0 0 24px; padding:16px 18px; width:100%;}
#contact_errors p {font-weight:600; margin:0 0 6px; padding:0;}
#contact_errors ul {list-style:disc; margin:0; padding:0 0 0 20px;}
#contact_errors li {margin:0; padding:2px 0;}


/******************
    CONTACT SUCCESS
******************/

#contact_page.contact_success_page {padding-bottom:80px; padding-top:64px;}
#contact_page #success_success {margin:0 auto; max-width:760px; padding:56px 40px; text-align:center;}
#contact_page #success_success h1 {font-size:42px;}
#contact_success_text {color:#677269; font-size:17px; line-height:1.7; margin:0 auto 28px; max-width:480px; padding:0;}


/* Motion */
@media (prefers-reduced-motion:no-preference) {
  #contact_page .contact_button:hover::after,
  #contact_page .contact_button:focus-visible::after,
  #contact_page a:hover .contact_arrow,
  #contact_page a:focus-visible .contact_arrow {transform:translateX(4px);}
}

@media (prefers-reduced-motion:reduce) {
  #contact_page .contact_field,
  #contact_page .contact_button,
  #contact_page .contact_button::after,
  #contact_page .contact_arrow,
  #contact_faq_link {transition:none;}
}


/******************
    404
******************/

/* 404 PAGE */
#error_404 {align-items:center; box-sizing:border-box; color:#302638; display:grid; font-family:"Inter", Arial, sans-serif; gap:64px; grid-template-columns:380px minmax(0,1fr); margin:64px auto 80px; max-width:1100px; padding:0 28px;}
#error_404 .error_404_art {align-items:center; background:linear-gradient(135deg,#edf6fc 0%,#f0e6fa 100%); border:1px solid #e9e0f1; border-radius:32px; display:flex; height:380px; justify-content:center; overflow:hidden;}
#error_404 .error_404_art span {color:#8355a3; font-size:126px; font-weight:650; letter-spacing:-9px; line-height:1;}
#error_404 .error_404_content {min-width:0; padding:20px 0;}
#error_404 .error_404_eyebrow {color:#8757a5; font-size:11px; font-weight:700; letter-spacing:1.8px; line-height:1.5; margin:0 0 18px;}
#error_404 h1 {color:#302638; font-size:44px; font-weight:650; letter-spacing:-1.6px; line-height:1.15; margin:0 0 22px; padding:0;}
#error_404 h1 em {color:#8355a3; display:block; font-family:Georgia, serif; font-style:italic; font-weight:400;}
#error_404 .error_404_description {color:#81718e; font-size:15px; line-height:1.8; margin:0; max-width:470px;}
#error_404 .error_404_actions {align-items:center; display:flex; gap:24px; margin-top:30px;}
#error_404 .error_404_shop {align-items:center; background:#9019ff; border-radius:999px; box-sizing:border-box; color:#fff; display:inline-flex; font-size:14px; font-weight:650; gap:18px; justify-content:center; min-height:50px; padding:14px 25px; text-decoration:none; transition:background .2s ease;}
#error_404 .error_404_shop span {background:currentColor; clip-path:polygon(0 40%,72% 40%,46% 12%,58% 0,100% 50%,58% 100%,46% 88%,72% 60%,0 60%); display:block; flex-shrink:0; height:.75em; transition:transform .2s ease; width:1.05em;}
#error_404 .error_404_shop:hover {background:#7c12dc; color:#fff;}
#error_404 .error_404_shop:hover span, #error_404 .error_404_shop:focus-visible span {transform:translateX(6px);}
#error_404 .error_404_home {color:#80509f; font-size:13px; font-weight:550; text-decoration:underline; text-underline-offset:4px;}
#error_404 .error_404_help {color:#81718e; font-size:12px; line-height:1.6; margin:27px 0 0;}
#error_404 .error_404_help a {color:#80509f; text-decoration:underline; text-underline-offset:3px;}
#error_404 .error_404_home:hover, #error_404 .error_404_help a:hover {color:#9019ff;}
#error_404 a:focus-visible {outline:2px solid #9019ff; outline-offset:5px;}

#preloader
{top:185px; left:730px;  width:106px;  position:absolute;}

#preloader img
{border:none !important;}




