/** Shopify CDN: Minification failed

Line 583:21 Unexpected "{"
Line 583:32 Expected ":"
Line 590:20 Unexpected "{"
Line 590:31 Expected ":"
Line 590:35 Unexpected "{"

**/
/**********************
 * 0) GLOBAL / RESET
 **********************/

/* Make pointer cursor consistent on all links/buttons */
button,
a,
a:link,
a:hover,
a:active {
  cursor: pointer !important;
}
/* a:link, .rte a {
  color: var(--color-foreground);
} */
:root {
  --color-cream: #fffbea;
  --color-foreground: #00a2d7;
}


/* Base text color (avoid forcing links so nav colors can override) */
html,
body,
p,
em,
ul,
li,
h1,
h2,
h3,
h4,
h5,
h6 {
  color: #838485 !important
}

/* mostly uses headings */
h1,h2 {
  color:  #00a2d7 !important;
}

h2 {
  font-size: 2.2rem !important;
}
/* Primary button */
.button:before {
  border-radius: 8px !important;
}

/* weirder input border */
.field:after {
  border: none !important;
  box-shadow: none !important;
}
.field__input:focus {
  border-radius: 8px !important;
  border: #00a2d7 2px solid !important; 
  box-shadow: none !important;
}
/* input border radius */
input, select, textarea {
  border-radius: 8px !important;
  border: #00a2d7 2px solid !important; 
}

/* For Firefox (and other Gecko-based browsers) */
::-moz-selection {
  color: var(--color-cream); /* Text color */
  background: var(--color-foreground); /* Background color */
}

/* For all modern browsers */
::selection {
  color: var(--color-cream); /* Text color */
  background: var(--color-foreground); /* Background color */
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 80px; /* Adjust for fixed headers */
}

/* For specific elements */
.smooth-scroll {
  transition: all 0.3s ease-in-out;
}


/**********************
 * 1) FONTS
 **********************/
@font-face {
  font-family: "Sacramento";
  src:
    url('/cdn/shop/files/Sacramento-Regular.woff2?v=1758393278') format('woff2'),
    url('/cdn/shop/files/Sacramento-Regular.woff?v=1758393279') format('woff'),
    url('/cdn/shop/files/Sacramento-Regular.ttf?v=1758393279') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Kalam-Regular";
  src:
    url('/cdn/shop/files/Kalam-Regular.woff2?v=1755223026') format('woff2'),
    url('/cdn/shop/files/Kalam-Regular.woff?v=1755223026') format('woff'),
    url('/cdn/shop/files/Kalam-Regular.ttf?v=1755223026') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Kalam-Light";
  src:
    url('/cdn/shop/files/Kalam-Light.woff2?v=1755223026') format('woff2'),
    url('/cdn/shop/files/Kalam-Light.woff?v=1755223026') format('woff'),
    url('/cdn/shop/files/Kalam-Light.ttf?v=1755223026') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* Headings */
h1,
h2,
h3 {
  font-family: "Sacramento", system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
  font-weight: 400;
}
h4,
h5,
h6 {
  font-family: "Kalam-Light", system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
  font-weight: 300;
}

/* Global heading font size overrides */
h1 {
  font-size: clamp(2rem, 5vw, 6rem) !important;
  line-height: 1.2 !important;
  margin-bottom: 1rem !important;
}

h2, ol.sections>li>h2 {
  font-size: clamp(3rem, 4vw, 5rem) !important;
  line-height: 1.3 !important;
  margin-bottom: 0.8rem !important;
}

h3 {
  font-size: clamp(1.5rem, 3vw, 3rem) !important;
  line-height: 1.4 !important;
  margin-bottom: 0.6rem !important;
}


/**********************
 * 2) HEADER
 **********************/

 /* top announcement bar */
 .announcement-bar__message.h5 span {
  color: #fff !important;
 }

header,
.header:not(.drawer-menu).page-width {
  padding-top: 0;
  padding-bottom: 0;
}

sticky-header {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); /* soft, subtle shadow */
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  -moz-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* Top menu (desktop) */
.list-menu.list-menu--inline.list-menu__item {
  font-size: 2rem !important;
}
.header__menu-item:hover span  {
  color: #00a2d7 !important;
}

/* Top Announcements */
.utility-bar.color-scheme-2.gradient.utility-bar--bottom-border.header-localization {
  /* background-color: #00a2d7 !important;
  color: #fff !important; */
  background-color: var(--color-cream) !important;
  color: #ccc !important;
}

.announcement-bar__message h5 {
  font-size: 1.8em !important;
}

/* Desktop submenu (popup) */
.header__submenu.list-menu.list-menu--disclosure.color-scheme-3.gradient.caption-large.motion-reduce.global-settings-popup,
.disclosure__list-wrapper.language-selector {
  background-color: #fffbea;
  border: #00a2d7 solid 1px;
  border-radius: 25px;
}

.header__submenu.list-menu.list-menu--disclosure.color-scheme-3.gradient.caption-large.motion-reduce.global-settings-popup li a {
  color: #00a2d7 !important;
}
.header__submenu.list-menu.list-menu--disclosure.color-scheme-3.gradient.caption-large.motion-reduce.global-settings-popup li a:hover {
  color: #626262 !important;
}





/* 1) Put the header and dropdowns on top */
.shopify-section-header-sticky,
sticky-header,
.header-wrapper,
header.header {
  position: relative;           /* establishes a stacking context */
  z-index: 10000 !important;    /* higher than any section */
  overflow: visible;            /* never clip dropdowns */
}

.header__submenu,
.header__submenu .list-menu {   /* Dawn’s dropdown panel */
  position: absolute;           /* it usually already is */
  z-index: 10001 !important;    /* above the header shell */
}

/* 2) Lower the hero layers (headline + its container) */
:where(.banner, .slideshow, [class*="ai-hero-slider__container"]) {
  position: relative;
  z-index: 0 !important;
}

:where(h1[class*="ai-hero-slider__headline"],
       .title-glass, .home-hero__title, .crystal-title) {
  position: relative;
  z-index: 1 !important;        /* below header (10000) */
}

/* Safety: if any section wrapper near the top creates a new stack,
   keep it low and non-clipping. */
.section, .shopify-section {
  isolation: auto;              /* don’t force a new stacking context */
  overflow: visible;            /* siblings (like header) won’t be clipped */
}








/* 1) Make the whole header layer the topmost thing */
.header-group,
.shopify-section-header-sticky,
.header-wrapper,
header.header {
  position: sticky;         /* or relative if your theme isn’t sticky */
  top: 0;
  z-index: 5000;            /* > any section content */
}

/* 2) Ensure the dropdown paints above the header itself */
.header__submenu {
  position: absolute;       /* it already is in most themes */
  z-index: 5001;            /* just above the header layer */
}

/* 3) Lower the glass title/pill layer */
.title-glass,               /* <- use the class on your pill */
.collection-title--glass,
.home-hero__title,
.crystal-title {
  position: relative;
  z-index: 1 !important;    /* lower than the header (5000) */
}

/* If a section wrapper around the title has isolate, keep it low */
.section .content-container.isolate {
  position: relative;
  z-index: 0;               /* don’t let it sit above the header */
  /* (optional) isolation:auto;  — if your theme allows overriding */
}




/**********************
 * 3) MOBILE DRAWER MENU
 **********************/

/* Drawer panel shell */
.menu-drawer__inner-container {
  background-color: #fffbea;
  border: #00a2d7 solid 1px;
  border-radius: 0 5px 5px 0;
}

/* Override scheme color so our text color rules resolve */
.menu-drawer {
  --color-foreground: 0, 162, 215; /* slate-800; change to taste */
}

/* Top-level items that are SUMMARY rows */
.menu-drawer details > summary.menu-drawer__menu-item, .menu-drawer__menu-item {
  color: rgb(var(--color-foreground)) !important;
  font-size: 2.5rem !important;
  line-height: 1.2;
}

/* Top-level direct links (when a top item is an <a>, not a <summary>) */
.menu-drawer > .menu-drawer__navigation
  .menu-drawer__menu.has-submenu.list-menu > li > a.menu-drawer__menu-item {
  color: rgb(var(--color-foreground)) !important;
  font-size: 2.5rem !important;
}

/* First-level submenu links */
.menu-drawer__submenu .menu-drawer__menu a.menu-drawer__menu-item {
  color: rgb(var(--color-foreground)) !important;
  font-size: 2rem !important;
}

/* First-level submenu SUMMARY rows */
.menu-drawer__submenu details > summary.menu-drawer__menu-item {
  color: rgb(var(--color-foreground)) !important;
  font-size: 2rem !important;
}

/* Optional: deeper nesting sizes */
.menu-drawer__menu.has-submenu.list-menu li ul li a, .menu-drawer__menu.has-submenu.list-menu li ul li a.link--text { 
  font-size: 2rem !important;
  color: var(--color-cream) !important;
}
.menu-drawer__menu.has-submenu.list-menu li ul li ul li a, .menu-drawer__menu.has-submenu.list-menu li ul li ul li a.link--text, .menu-drawer__close-button.link.link--text.focus-inset { 
  font-size: 2.5rem !important; 
  color: var(--color-cream) !important;
}

/* Hover/focus consistency */
.menu-drawer .menu-drawer__menu-item:hover,
.menu-drawer .menu-drawer__menu-item:focus {
  color: rgb(var(--color-foreground)) !important;
  opacity: 0.9;
}

/* Inner Sub menu */
.menu-drawer__inner-submenu {
  background-color: rgb(var(--color-foreground)) !important;
  color: var(--color-cream);
}



/* If you want all drawer links blue like desktop submenu, uncomment:
.menu-drawer .menu-drawer__menu-item { color: #00a2d7 !important; }
*/


/**********************
 * 4) FOOTER
 **********************/

 footer {
  background-color: var(--color-cream) !important;
  color: rgb(var(--color-foreground)) !important;
 }
 .footer__content-bottom-wrapper {
  justify-content: center;
}
.copyright__content,
.footer__copyright.caption {
  text-align: center !important;
}

.newsletter-form__field-wrapper {
  border: none !important;
  
}

/* social media */

.list-social__item > .svg-wrapper {
  width: 5rem !important;
  height: 5rem !important;
  color: var(--color-foreground) !important;
}

.ai-footer-image-wrapper-ashg5uzrmswxpl3rataigenblock32f30camwtqf6 {
  margin-bottom: 5rem;
}
.ai-footer-image-wrapper-ashg5uzrmswxpl3rataigenblock32f30camwtqf6 img {
  border-radius: 12px;
}

.ai-footer-links-column-al01anjruefnjogf1caigenblockf3e9aa0gwnf8e a:hover, 
.ai-footer-links-column-addi1q2nytkzvqvrpnaigenblockf3e9aa08mktkm a:hover, 
.ai-footer-links-column-acvfhk0ncovnjm0xvdaigenblockf3e9aa0gyxkqi a:hover, 
.ai-footer-links-container-aufzkuly0d1ltbvnqyaigenblockf3e9aa03ump9m a:hover, 
.ai-footer-links-column-azdz1q2hbuutlwwlqdaigenblockf3e9aa0j6rwqm a:hover  {
  text-decoration: underline;
  color: #00a2d7;
}


/**********************
 * 5) MAIN CONTENT
 **********************/
/* page template background */
/* Default , offer and contact page template */
/* 1) Ensure the section itself is transparent and creates a stacking context */
#shopify-section-template--20317715693789__main, #shopify-section-template--20039606141149__main, #shopify-section-template--20039606075613__main,  #shopify-section-template--20039606075613__form {
  position: relative;
  isolation: isolate;                 /* new stacking context */
  background: transparent !important; /* remove any theme bg */
  overflow: hidden;                   /* avoid blur edge clip */
}

/* 2) Blurred bamboo only on the pseudo-element */
#shopify-section-template--20317715693789__main::before, #shopify-section-template--20039606141149__main::before, #shopify-section-template--20039606075613__main::before, #shopify-section-template--20039606075613__form::before {
  content: "";
  position: absolute;
  inset: -24px;  /* expand to prevent blur clipping on edges */
  background-image: url("/cdn/shop/files/bamboo_tile_512_deyellow_soft-2.jpg?v=1758461765");
  background-repeat: repeat;
  background-position: 0 0;
  background-size: 512px 512px;
  filter: blur(2px);
  pointer-events: none;
  z-index: -1;    /* sit behind content within the isolated stack */
}

/* 3) Make sure common inner wrappers don’t repaint a background */
#shopify-section-template--20317715693789__main .section,
#shopify-section-template--20317715693789__main .gradient,
#shopify-section-template--20317715693789__main .page-width,
#shopify-section-template--20039606141149__main .section,
#shopify-section-template--20039606141149__main .gradient,
#shopify-section-template--20039606141149__main .page-width,
#shopify-section-template--20039606075613__main .section,
#shopify-section-template--20039606075613__main .gradient,
#shopify-section-template--20039606075613__main .page-width,
#shopify-section-template--20039606075613__form .section,
#shopify-section-template--20039606075613__form .gradient,
#shopify-section-template--20039606075613__form .page-width {
  background: transparent !important;
}

 /* hero slider */
.ai-hero-slider__container-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm {
      height: 40vw !important;
      z-index: 1;
}

h1.ai-hero-slider__headline-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm, h1.ai-hero-slider__headline-arlhuymnbrnzabln6taigenblock3a91b4dgxbdcc {
  color: rgb(255, 255, 255) !important;
  background: rgba(255, 255, 255, 0.15); /* translucent white */
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  backdrop-filter: blur(12px) saturate(180%);
  border-radius: 12px; /* smooth edges */
  padding-left: 10px;  /* adjust as needed */
  padding-right: 10px; /* adjust as needed */
  padding-top: 10px;   /* optional, tweak vertically */
  padding-bottom: 10px;/* optional */
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); /* soft shadow for depth */
  width: 90%;
  text-align: center;
  font-size: 2rem;
  margin: 0 auto;
  text-shadow:
    /* 1px “stroke” in 8 directions */
     1px  0   0 rgba(0,0,0,.38),
    -1px  0   0 rgba(0,0,0,.38),
     0    1px 0 rgba(0,0,0,.38),
     0   -1px 0 rgba(0,0,0,.38),
     1px  1px 0 rgba(0,0,0,.30),
    -1px  1px 0 rgba(0,0,0,.30),
     1px -1px 0 rgba(0,0,0,.30),
    -1px -1px 0 rgba(0,0,0,.30),
    /* subtle depth */
     0    2px 8px rgba(0,0,0,.28);
}



.ai-hero-slider__button-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm:hover {
  color: #00a2d7;

}


/* graceful fallback when backdrop-filter is unsupported */
@supports not (
  (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))
) {
  ai-hero-slider__headline-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm,
  h1.ai-hero-slider__headline-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm,
  .banner__box.content-container.content-container--full-width-mobile.color-scheme-1.gradient,
  h1.ai-hero-slider__headline-arlhuymnbrnzabln6taigenblock3a91b4dgxbdcc {
    background: rgba(255, 255, 255, 0.85);
  }
}

 /* Featured collection */
.full-unstyled-link {
  /* font-size: 2.2rem !important; */
  font-size: 3rem !important;
}
 
.price__container>.price__regular {
      color: #00a2d7 !important;
  }
.price__regular .price-item--regular {
  font-size: 3rem !important
}


/* Shipping Parallax Text */
.banner__box.content-container.content-container--full-width-mobile.color-scheme-1.gradient {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.15); /* translucent white */
    -webkit-backdrop-filter: blur(12px) saturate(180%);
  backdrop-filter: blur(12px) saturate(180%);
  border-radius: 12px; /* smooth edges */
  padding-left: 10px;  /* adjust as needed */
  padding-right: 10px; /* adjust as needed */
  padding-top: 10px;   /* optional, tweak vertically */
  padding-bottom: 10px;/* optional */
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); /* soft shadow for depth */
  text-align: center;
  margin-top: 10rem;
  margin-bottom: 10rem;
} 

.banner__box.content-container.content-container--full-width-mobile.color-scheme-1.gradient p {
  color: #333 !important;
  font-size: 4rem;
  font-family: "Kalam-Regular";
}
.banner__box.content-container.content-container--full-width-mobile.color-scheme-1.gradient::after {
  filter: blur(5px);
}


/* Flip box card */
.ai-icon-placeholder-aafbos2zkwju1tdl6uaigenblock320c5c1nwgwxj {
  width: 200px !important;
  height: 200px !important;
  background-color: transparent !important;
  background: transparent !important;
}

.ai-back-text-aafbos2zkwju1tdl6uaigenblock320c5c1nwgwxj {
    color: #fff !important;
}

/* Flip card h3 font size */
h3.ai-collection-name-aafbos2zkwju1tdl6uaigenblock320c5c1nwgwxj {
  font-size: 1.3rem !important;
  font-family: var(--font-body-family) !important;
}


/* Ensure the front-side link stays clickable over 3D transforms */
.ai-icon-card-front-{{ ai_gen_id }} a {
  position: relative;
  z-index: 2;
  pointer-events: auto;
}

/* Prevent the back face from eating clicks unless you add controls there */
.ai-icon-card-back-{{ ai_gen_id }} {
  pointer-events: none;
}

/* #shopify-section-template--20039606042845__1758282861df46f020 {
    background: url("/cdn/shop/files/vecteezy_spa-background-with-white-stones-flowers-and-candle_50402526-optimized-2.jpg?v=1758303533");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    background-attachment: fixed;

} */


/* Desktop: keep as you have it */
#shopify-section-template--20039606042845__1758282861df46f020 {
  background: url("/cdn/shop/files/vecteezy_spa-background-with-white-stones-flowers-and-candle_50402526-optimized-2.jpg?v=1758303533")
              no-repeat center 240px fixed;
  background-size: cover;
}


.ai-icon-grid-aafbos2zkwju1tdl6uaigenblock320c5c1nwgwxj {
    max-width: 1200px !important;
    margin: 0 auto !important;
}


/* last parallax height resize */
.ai-parallax-section-aahm5bnz0y2k2euf5kaigenblockd6d82bfaqrd6g {
  height: 60vw !important;
}


/* default page content box */
.rte.scroll-trigger.animate--slide-in {
  width: 100%;
    max-width: 1200px;
    margin: 1rem;
    padding: 2rem;
    background-color: #fffbe9;
    border: #00a2d7 2px solid; 
    border-radius: 12px;
    color: #00a2d7;
    text-align: left;
    height: auto;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.50); /* soft, subtle shadow */
    -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.50);
    -moz-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.50);
    text-align: justify;
}

/* legal hyperlinks */
.rte.scroll-trigger.animate--slide-in > ul li a, .rte.scroll-trigger.animate--slide-in > p a, .toc li a, .legal-link {
    text-decoration: none;
    color: #00a2d7 !important;
}

.rte.scroll-trigger.animate--slide-in > ul li a:hover, .rte.scroll-trigger.animate--slide-in > p a:hover, .toc li a:hover, .legal-link:hover {
    text-decoration: underline;
    color: #838485 !important;
}

.rte.scroll-trigger.animate--slide-in > ul li a::before, .rte.scroll-trigger.animate--slide-in > p a::before, .legal-link::before {
    content: "[";
    color: #3498db;
    opacity: 0.7;
    position: relative;
    margin-right: 2px;
}
        
.rte.scroll-trigger.animate--slide-in > ul li a::after, .rte.scroll-trigger.animate--slide-in > p a::after, .legal-link::after {
    content: "]";
    color: #3498db;
    opacity: 0.7;
    position: relative;
    margin-left: 2px;
}

/* privacy policy shopify form */
.pc--opt-out-form-wrapper .pc--opt-out-form-field input {
  border-radius: 8px !important;
  background-color: #fff !important;
}

/* legal text utility form accessibility */
  /* FAQ */
  .faq-container h3 {
    font-family: "Kalam-Regular" !important;
  }


  /* ================================================
   Legal & FAQ Shared CSS
   Targets:
   #terminos-condiciones, #politica-privacidad,
   #politica-envios, #politica-devoluciones, #faq
   ================================================= */

/* --------- Theme tokens (tweak as needed) -------- */
:root {
  --link: #0a58ca;
  --accent: #00a2d7;
  --text: #333;
  --muted: #555;
  --line: #e0e0e0;
  --radius: 8px;
  --toc-bottom-gap-desktop: 10rem; /* big gap only on wide */
  --container-max: 920px;
}

/* --------- Page roots share base rules ------------ */
#terminos-condiciones,
#politica-privacidad,
#politica-envios,
#politica-devoluciones,
#faq {
  color: var(--text);
  font-family: Arial, sans-serif;
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 20px;
}

/* Headers (date line) */
#terminos-condiciones header p,
#politica-privacidad header p,
#politica-envios header p,
#politica-devoluciones header p,
#faq header p {
  margin: 0 0 1rem 0;
  color: var(--muted);
}

/* --------- Accessibility helpers ----------------- */
.visually-hidden {
  position: absolute !important;
  height: 1px; width: 1px;
  overflow: hidden; clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap; border: 0; padding: 0; margin: -1px;
}

/* --------- Links used inside legal text ----------- */
.legal-link,
#terminos-condiciones a,
#politica-privacidad a,
#politica-envios a,
#politica-devoluciones a,
#faq a {
  color: var(--link);
  text-decoration: none;
}
.legal-link:hover,
#terminos-condiciones a:hover,
#politica-privacidad a:hover,
#politica-envios a:hover,
#politica-devoluciones a:hover,
#faq a:hover {
  text-decoration: underline;
}

/* --------- Shared TOC layout (mobile-first) ------- */
#terminos-condiciones .toc ol,
#politica-privacidad .toc ol,
#politica-envios .toc ol,
#politica-devoluciones .toc ol,
#faq .toc ul {
  display: grid;
  grid-template-columns: 1fr;        /* vertical stack on narrow */
  gap: .375rem .75rem;
  padding-left: 1rem;
  margin: 0 0 1rem 0;                /* small mobile gap */
}
#faq .toc ul {
             /* small mobile gap */
  list-style: upper-alpha;
}
#terminos-condiciones .toc a,
#politica-privacidad .toc a,
#politica-envios .toc a,
#politica-devoluciones .toc a,
#faq .toc a {
  display: block;                    /* full-row click target */
  color: var(--link);
  text-decoration: none;
  padding: .5rem .25rem;
  border-radius: .25rem;
}
#terminos-condiciones .toc a:hover,
#politica-privacidad .toc a:hover,
#politica-envios .toc a:hover,
#politica-devoluciones .toc a:hover,
#faq .toc a:hover { text-decoration: underline; }

/* Widen TOC only on wider viewports */
@media (min-width: 640px) {
  #terminos-condiciones .toc ol,
  #politica-privacidad .toc ol,
  #politica-envios .toc ol,
  #politica-devoluciones .toc ol,
  #faq .toc ul {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    margin-bottom: var(--toc-bottom-gap-desktop);
  }
}

/* --------- Numbered content sections -------------- */
/* Keep marker + title on one line: "1. Título" */
#terminos-condiciones ol.sections,
#politica-privacidad ol.sections,
#politica-envios ol.sections,
#politica-devoluciones ol.sections {
  list-style: decimal;
  padding-left: 1.5rem;
  margin: 0;
}
#terminos-condiciones ol.sections > li,
#politica-privacidad ol.sections > li,
#politica-envios ol.sections > li,
#politica-devoluciones ol.sections > li {
  margin: 0 0 1rem 0;
  scroll-margin-top: 0; /* JS handles sticky offset */
}
#terminos-condiciones ol.sections > li > h2,
#politica-privacidad ol.sections > li > h2,
#politica-envios ol.sections > li > h2,
#politica-devoluciones ol.sections > li > h2 {
  display: inline;                   /* glue with list marker */
  margin: 0 0 0 .5ch;
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 700;
}
/* Ensure block flow continues after inline h2 */
#terminos-condiciones ol.sections > li > h2::after,
#politica-privacidad ol.sections > li > h2::after,
#politica-envios ol.sections > li > h2::after,
#politica-devoluciones ol.sections > li > h2::after {
  content: "";
  display: block;
}

/* Definition lists (used in Términos) */
#terminos-condiciones dl { margin: 0; }
#terminos-condiciones dt { font-weight: 600; }
#terminos-condiciones dd { margin: 0 0 .75rem 0; }

/* --------- Kill global anchor offset on these pages */
html:has(#terminos-condiciones),
html:has(#politica-privacidad),
html:has(#politica-envios),
html:has(#politica-devoluciones),
html:has(#faq) {
  scroll-padding-top: 0 !important;
}

/* ==================================================
   FAQ (accordion) — optional, if you want it unified
   ================================================== */
#faq,
.faq-container { /* support either selector */
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 20px;
}

/* FAQ group headings */
#faq .faq-group { margin: 1.25rem 0; }
#faq .faq-group > h2 { margin: .5rem 1rem; font-size: 2rem; }

/* FAQ items */
#faq .faq-item {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  margin-bottom: 10px;
  overflow: hidden;
  transition: box-shadow .3s ease;
  background: #fff;
}
#faq .faq-item:hover { box-shadow: 0 2px 8px rgba(0,0,0,.08); }

#faq .faq-question { margin: 0; }

#faq .faq-trigger {
  width: 100%;
  background: var(--accent);
  padding: 18px 20px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  border: 0;
  text-align: left;
  font: 600 1.05rem/1.4 Arial, sans-serif;
  font-size: 1.8rem;
  color: #fff;
  transition: background-color .25s ease;
}
#faq .faq-trigger:hover,
#faq .faq-trigger:focus-visible {
  background-color: #fff;
  color: var(--accent);
  outline: none;
}
#faq .faq-icon {
  font-size: 3rem;
  font-weight: 700;
  color: #b7b4b4;
  transition: transform .3s ease;
}

/* Smooth, non-clipping answer reveal */
#faq .faq-answer {
  box-sizing: border-box;
  overflow: hidden;
  background: #fff;
  max-height: 0;
  padding: 0 20px;
  transition: max-height .35s ease, padding-top .25s ease, padding-bottom .25s ease;
}
#faq .faq-answer[data-open="true"] { padding-top: 16px; padding-bottom: 16px; }
#faq .faq-item[aria-current="true"] .faq-icon { transform: rotate(45deg); }
#faq .faq-answer p,
#faq .faq-answer ul { margin: 0 0 .5rem 0; color: var(--muted); line-height: 1.65; }

/* TOC inside FAQ uses same shared TOC rules; just ensure left align */
#faq .toc a { text-align: left; }

/* Fix li::marker overlapping in TOCs (theme sets list-style-position: inside) */
#terminos-condiciones .toc ol,
#politica-privacidad .toc ol,
#politica-envios .toc ol,
#politica-devoluciones .toc ol,
#faq .toc ul,
#terminos-condiciones ol.sections,
#politica-privacidad ol.sections,
#politica-envios ol.sections,
#politica-devoluciones ol.sections {
  list-style-position: outside !important; /* beat theme rule */
  padding-left: 1.75rem;                   /* room for 2-digit numbers */
}

/* Optional: ensure TOC items don’t add extra indent */
#terminos-condiciones .toc li,
#politica-privacidad .toc li,
#politica-envios .toc li,
#politica-devoluciones .toc li,
#faq .toc li {
  padding-inline-start: 0;
  text-align: left;
  font-size: 1.5rem !important;
  width: 160px;
}


/* ---- TOC: narrower columns + reliable wrapping ---- */
:where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq) .toc ol{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); /* was 220px */
  gap: .375rem .75rem;
  list-style-position: outside;   /* keep "1. Título" on one line */
  padding-left: 1rem !important;           /* room for 2-digit markers */
}

/* Let grid items actually shrink so links can wrap */
:where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq) .toc li{
  min-width: 0;                   /* critical for CSS Grid wrapping */
  padding-inline-start: 0;
}

/* Wrap long words/URLs; avoid spilling into next column */
:where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq) .toc a{
  display: block;
  white-space: normal;
  overflow-wrap: anywhere;        /* modern */
  word-break: break-word;         /* fallback */
  hyphens: auto;
  text-align: left;               /* you already switched this */
  line-height: 1.35;
  padding: .4rem .25rem;          /* nicer tap target */
}

/* TOC: no auto-hyphenation; wrap without inserting "-" */
:where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq) .toc a{
  hyphens: none !important;
  -webkit-hyphens: none;   /* Safari */
  -ms-hyphens: none;

  white-space: normal;
  word-break: normal;      /* don't split inside words */
  overflow-wrap: break-word; /* if a super long token exists, wrap it without "-" */
}

/* Long-URL safety: never overflow the container */
:where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq)
  :is(p, li, dd) a {
  overflow-wrap: anywhere;   /* modern: can break anywhere if needed */
  word-break: break-word;    /* Safari/old Chrome fallback */
  hyphens: none;             /* no auto “-” inserted */
  max-width: 100%;           /* just in case an inline-block sneaks in */
}

/* If you still see overflow in plain text (not only links), also add: */
:where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq)
  :is(p, li, dd) {
  overflow-wrap: anywhere;
  word-break: break-word;
}


/* form buttons */

.contact__button > button[type="submit"], 
.product-form__buttons > button[type="submit"],
.cart__checkout-button.button, 
.button {
    display: inline-block;
    padding: 16px 32px;
    background-color: #00a2d7;
    color: #ffffff;
    text-decoration: none;
    border-radius: 12px;
    font-weight: 600;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    font-size: 2rem;
    --border-offset: none !important;
}

.contact__button > button[type="submit"]:hover,
.button--secondary:hover,
.product-form__buttons > button[type="submit"]:hover,
.cart__checkout-button.button:hover,
#checkout-pay-button:hover,
.button:hover {
  --border-offset: none !important;
  border: none !important;
  --color-button-text: none;
  background-color: #fae9cc !important;
    color: #00a2d7 !important;
}


.product-form__buttons {
  border: none;
}
.contact__button > button[type="submit"]:hover {
    background-color: #fae9cc !important;
    color: #00a2d7 !important;
    transform: translateY(-2px);
    --border-offset: none !important;
}

.contact__button > button[type="submit"]::after {
box-shadow: none !important;
}

/* contact form after submission message */
.form-status.form-status-list.form__message {
  margin-bottom: 10rem !important;
  padding: 1rem;
  background-color: #fae9cc;
  color: #00a2d7;
  border: 2px #00a2d7 solid;
  border-radius: 12px;
  font-family: inherit !important;
  font-size: 2.5rem !important;
}

/* cart qty bubble */
.cart-count-bubble {
  background-color: #00a2d7;
  color: #fff;
}

/* Collection product grid image card */
.card__inner.color-scheme-5.gradient.ratio, .card__media, .media.media--transparent.media--hover-effect img {
  border-radius: 12px !important;
}

/* badges */
.product .price .badge, .card__badge.bottom.left, .badge {
  border-radius: 8px !important;
}

/* out of stock */
.badge.price__badge-sold-out.color-scheme-3, .badge.badge--bottom-left.color-scheme-3 {
  background-color: red;
}





/* ===========================
   Product Info / Drug Facts (scoped)
   =========================== */
.drug-facts{
  /* tokens */
  --df-border: 2px;
  --df-rule: 1px;
  --df-pad: 14px;
  --df-gap: 10px;
  --df-font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial !important;

  /* shell */
  max-width: 760px;
  margin: 20px auto !important;
  background: #fff !important;
  border: var(--df-border) solid #000 !important;
  border-radius: 8px;
  color: #111 !important;
  font-family: var(--df-font) !important; /* base font */
}

/* neutralize global/theme typography inside */
.drug-facts *{
  font-family: inherit !important;
  color: #111 !important;
  font-style: normal !important;
  font-variant: normal !important;
}

/* headings */
.drug-facts :is(h1,h2,h3,h4,h5,h6){
  margin: 0;
  font-weight: 800 !important;
}
.drug-facts h1{
  font-size: 2.4rem !important;
  line-height: 1.1 !important;
  letter-spacing: .2px !important;
}

/* rows + thick bar under title */
.df-row{ padding: var(--df-pad); border-top: var(--df-rule) solid #000; }
.df-header{ border-top: 0; padding: 10px var(--df-pad) 6px; border-bottom: 8px solid #000; }

/* subheads, grid, lists */
.df-subhead{ font-weight: 800 !important; font-size: 1.5rem; margin-bottom: 4px; }
.df-col strong {
  font-weight: 600 !important;
  font-size: 1.2rem !important;
}
#df-warnings {
  font-size: 2rem;
}
/*
.df-row strong {
    font-size: 1.5rem !important;
*/
.df-two-col{ display: grid; grid-template-columns: 1fr 1fr; gap: var(--df-gap); align-items: start; }
.df-col-right{ border-left: var(--df-rule) solid #000; padding-left: var(--df-gap); }
.df-list{ margin: 0 0 0 1.1rem; padding: 0; list-style: disc; }
.df-list li{ margin: 0 0 6px; font-size: 1.3rem; list-style: none;}
.df-footer{ border-bottom: 0; background-color: #fff !important; }



small {
  font-size: 1.5rem !important;
  font-weight: 200 !important;
}


/* accessibility helper */
.sr-only{
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* links inside block */
.drug-facts a{ color: inherit !important; text-decoration: underline; }

span.svg-wrapper > .icon.icon-remove {
  margin: 0 auto !important;
  margin-top: 45px !important;
}

cart-remove-button .icon-remove {
  height: 100% !important;
  width: 100% !important;
}

.svg-wrapper > .icon.icon-remove {
    width: 40px !important;
    height: 30px !important;
}

/* print */
@media print{
  .drug-facts{ margin: 0 !important; box-shadow: none !important; page-break-inside: avoid !important; }
  .drug-facts, .df-row{ border-color: #000 !important; }
}

















/* --------- Responsive tweaks ---------------------- */
/* Optional: tighter on phones; 2 cols on small tablets */
@media (max-width: 599px){
  :where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq) .toc ol{
    grid-template-columns: 1fr;
  }
}

/* Widen TOC only on wider viewports */
@media (max-width: 640px) {
#terminos-condiciones .toc li, #politica-privacidad .toc li, #politica-envios .toc li, #politica-devoluciones .toc li, #faq .toc li {
  width: 90% !important;
}

.toc {
  margin-bottom: 10rem;
}

}
@media (min-width: 600px) and (max-width: 899px){
  :where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq) .toc ol{
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 990px) {
  #faq .faq-group > h2 { font-size: 1.8rem !important; }
}
@media (max-width: 768px) {
  /* containers already have padding */
  #faq .faq-trigger { padding: 16px; font-size: 1.5rem; }
  /* optional: 2-column TOC on medium phones for FAQ only */
  #faq .toc ol { grid-template-columns: 1fr 1fr; }
}



/* <= 480px: tighter side padding + smaller list indent */
@media (max-width: 480px) {
  /* Page containers */
  :where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq) {
    padding-inline: 12px;              /* was 20px */
  }

  /* Numbered sections: reduce left indent used for list markers */
  :where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones) ol.sections {
    padding-inline-start: 1.25rem;      /* was 1.5rem */
  }

  /* Paragraphs/lists: no extra side margins */
  :where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones,#faq)
    :is(p, ul, ol, dl) {
    margin-inline: 0;                    /* remove any theme side margins */
  }

  /* Optional: a touch smaller H2 inside the numbered sections on tiny screens */
  :where(#terminos-condiciones,#politica-privacidad,#politica-envios,#politica-devoluciones) 
    ol.sections > li > h2 {
    font-size: 1.15rem;
  }

  ol.sections {
    padding: 0 !important;
  }
}

/**********************
 * 6) MEDIA QUERIES
 **********************/
/* @media (max-width: 990px) { 
  #shopify-section-template--20039606042845__1758282861df46f020 {
      background-size: 100% auto;   
      background-position: center top;
      background-attachment: fixed; 
  }
}
*/
@media (max-width: 1187px) {
h2 {
  font-size: 3rem !important;
}
}

/* first mobile breakpoint */
@media (max-width: 990px){
  #shopify-section-template--20039606042845__1758282861df46f020{
    background-attachment: fixed;         /* parallax */
    background-size: 105% auto;           /* small zoom-out; adjust 95–110% */
    background-position: center 320px;   /* NEGATIVE pulls image UP → appears sooner */
  }

  h2 {
  font-size: 2rem !important;
  }
  h2.inline-richtext.h1.scroll-trigger.animate--slide-in {
    font-size: 3rem !important;
  }

    .page-width--narrow {
        padding: 0 3rem;
    }
}

/* Optional finer tuning by device width */
@media (max-width: 768px){
  #shopify-section-template--20039606042845__1758282861df46f020{
    background-position: center 340px;   /* show even sooner on smaller screens */
  }
}

 @media (max-width: 749px) { 
  /* Flip box card */
.ai-icon-placeholder-aafbos2zkwju1tdl6uaigenblock320c5c1nwgwxj {
  width: 150px !important;
  height: 150px !important;
}

/* shipping headline margins */
.banner__box.content-container.content-container--full-width-mobile.color-scheme-1.gradient {
    margin-left: 1.8rem;
    margin-right: 1.8rem;
}

/* last parallax height resize */
.ai-parallax-section-aahm5bnz0y2k2euf5kaigenblockd6d82bfaqrd6g {
  height: 80vw !important;
  }
}


@media (max-width: 560px) {
.rte.scroll-trigger.animate--slide-in {
   display: block;
}
.pc--show-email-field label {
  width: auto !important;
}
h1 {
  font-size: 2.5rem !important;
}
}

@media (max-width: 528px) {
  /* slider */
  h1.ai-hero-slider__headline-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm {
    font-size: 3rem !important;
  }
  .ai-hero-slider__button-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm {
    padding: 6px 10px !important;
  }
}

@media (max-width: 520px) {
    .ai-icon-grid-aafbos2zkwju1tdl6uaigenblock320c5c1nwgwxj {
        grid-template-columns: repeat(1, 1fr) !important;
    }
    /* last parallax height resize */
.ai-parallax-section-aahm5bnz0y2k2euf5kaigenblockd6d82bfaqrd6g {
  height: 100vw !important;
}
}

@media (max-width: 470px){
label.field__label {
   font-size: 1.2rem !important;
   text-align: left;
   left: calc(var(--inputs-border-width) + 0.8rem);
}
}

@media (max-width: 480px){
  #shopify-section-template--20039606042845__1758282861df46f020{
    background-position: center 340px;
  }
}

@media (max-width: 382px) { 
  /* Flip box card */
.ai-icon-placeholder-aafbos2zkwju1tdl6uaigenblock320c5c1nwgwxj {
  width: 100px !important;
  height: 100px !important;
}
 }

@media (max-width: 360px) {
  /* slider */
  h1.ai-hero-slider__headline-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm {
    font-size: 1.5rem !important;
  }
  .ai-hero-slider__button-azgzjttf2qmlytephbaigenblock3a91b4dwvqghm {
    padding: 6px 10px !important;
    font-size: 1.2rem !important;
  }
}

/* hides from 320px or less smartphones */
@media (max-width: 320px) {
  body * {
    display: none !important; /* hide all elements */
  }
  
  body::before {
    content: "This device is not supported.";
    display: block;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    padding: 20px;
    color: #333;
    background: #fff;
  }
}

/**********************
 * 7) STORE
 **********************/
/* shopping cart erase icon button */
.svg-wrapper {
  width: unset !important;
}

/* shopping product qty button (-) and (+) */
.quantity__button .svg-wrapper {
  width: 20px !important;
}

/**********************
 * 8) CUSTOM
 **********************/
 /* TOGGEABLES HIDE SECTIONS */
[data-card="4"], [data-card="6"]  {
  display: none !important;
}
