/** Shopify CDN: Minification failed

Line 11:0 All "@import" rules must come first
Line 12:0 All "@import" rules must come first
Line 2171:28 Expected identifier but found "!"

**/
* {
  box-sizing: border-box;
}
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@100..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');
body {
  color: var(--color-foreground);
  background: var(--color-background);
  display: flex;
  flex-direction: column;
  margin: 0;
  min-height: 100svh;
  font-variation-settings: 'slnt' 0;
}

:root {
  --hover-transition-duration: 0.25s;
  --hover-transition-timing: ease-out;
  --submenu-animation-speed: 360ms;
}

html {
  /* Firefox */
  scrollbar-width: thin;
  scrollbar-color: rgb(var(--color-foreground-rgb) / var(--opacity-40)) var(--color-background);
  scroll-behavior: smooth;
}

@media (min-width: 990px) {
  html:has(.page-wrapper),
  html:has(.page-wrapper) body {
    height: 100dvh;
    overflow: hidden;
  }
}

html[scroll-lock] {
  overflow: hidden;
}

/* Only lock .page-wrapper where it is the scroll container. Below 990px the document scrolls, and
   overflow on .page-wrapper would make it the sticky header's scroll container, moving the header off screen. */
@media (min-width: 990px) {
  html[scroll-lock] .page-wrapper {
    overflow: hidden;
  }
}

.page-wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
  transition: margin-inline-end var(--animation-speed) var(--animation-timing-fade-out);
}

@media (min-width: 990px) {
  .page-wrapper {
    height: 100dvh;
    overflow-y: auto;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: rgb(var(--color-foreground-rgb) / var(--opacity-40)) var(--color-background);
  }

  .page-wrapper--drawer-open shopify-account::part(dialog) {
    translate: calc(-1 * var(--theme-drawer-width, var(--sidebar-width)));
  }

  /* The theme drawer opens from the inline-end edge, so the shift mirrors in RTL */
  [dir='rtl'] .page-wrapper--drawer-open shopify-account::part(dialog) {
    translate: var(--theme-drawer-width, var(--sidebar-width));
  }
}

.page-wrapper--drawer-open {
  margin-inline-end: var(--theme-drawer-width, var(--sidebar-width));
  transition-timing-function: var(--animation-timing-fade-in);
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

img {
  width: 100%;
  height: auto;
}

input,
textarea,
select {
  font: inherit;
  border-radius: var(--style-border-radius-inputs);
}

/** override ios and firefox defaults */
select {
  background-color: var(--color-background);
  color: currentcolor;
}

.product-card,
.collection-card,
.predictive-search-results__card--product,
.predictive-search-results__card {
  position: relative;
  transition: transform var(--hover-transition-duration) var(--hover-transition-timing),
    box-shadow var(--hover-transition-duration) var(--hover-transition-timing);
  z-index: var(--layer-flat);
}

.product-card__link {
  position: absolute;
  inset: 0;
}

.product-card__content {
  position: relative;
  cursor: pointer;
}

dialog {
  /* the ::backdrop inherits from the originating element, custom properties must be set on the dialog element */
  --backdrop-color-rgb: var(--color-shadow-rgb);

  background-color: var(--color-background);
  color: var(--color-foreground);
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

.wrap-text {
  overflow-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
}

p:empty {
  display: none;
}

:first-child:is(p, h1, h2, h3, h4, h5, h6),
:first-child:empty + :where(p, h1, h2, h3, h4, h5, h6) {
  margin-block-start: 0;
}

/* Remove bottom margin from last text item, or previous to last if the last is empty */
:last-child:is(p, h1, h2, h3, h4, h5, h6),
:where(p, h1, h2, h3, h4, h5, h6):nth-child(2):has(+ :last-child:empty) {
  margin-block-end: 0;
}

/* view transitions */

/*
 * The cross-document (MPA) opt-in `@view-transition { navigation: auto }` is declared per-layout
 * (layout/theme.liquid and layout/password.liquid), because this stylesheet is shared by both layouts
 * and a static stylesheet can't read theme settings.
 * It is gated on the same `settings.page_transition_enabled or settings.transition_to_main_product` condition as the
 * render blocker, so the opt-in and its opt-out switch can never disagree. The rules below only
 * take effect once an `@view-transition` opt-in is active, so they are inert without it.
 */
@media (prefers-reduced-motion: no-preference) {
  /* Keep page interactive while view transitions are running */
  :root {
    view-transition-name: none;
  }

  /* Have the root transition during page navigation */
  html:active-view-transition-type(page-navigation),
  html:active-view-transition-type(product-image-transition) {
    view-transition-name: root-custom;
  }

  ::view-transition {
    pointer-events: none;
  }

  html:active-view-transition-type(page-navigation) main[data-page-transition-enabled='true'] {
    view-transition-name: main-content;
  }

  html:active-view-transition-type(page-navigation) main[data-product-transition='true'][data-template*='product'] {
    view-transition-name: none;
  }

  ::view-transition-old(main-content) {
    animation: var(--view-transition-old-main-content);
  }

  ::view-transition-new(main-content) {
    animation: var(--view-transition-new-main-content);
  }

  html:active-view-transition-type(product-image-transition) {
    [data-view-transition-type='product-image-transition'] {
      view-transition-name: product-image-transition;
    }

    [data-view-transition-type='product-details'] {
      view-transition-name: product-details;
    }
  }

  ::view-transition-group(product-image-transition) {
    z-index: 1;
  }

  ::view-transition-group(product-image-transition),
  ::view-transition-group(product-details) {
    animation-duration: var(--animation-speed);
    animation-timing-function: var(--animation-easing);
  }

  ::view-transition-old(product-image-transition),
  ::view-transition-new(product-image-transition) {
    block-size: 100%;
    overflow: hidden;
    object-fit: cover;
    animation-duration: 0.25s;
    animation-timing-function: var(--animation-easing);
  }

  ::view-transition-new(product-details) {
    animation: var(--view-transition-new-main-content);
  }
}

/* Focus */
*:focus-visible {
  outline: var(--focus-outline-width) solid currentcolor;
  outline-offset: var(--focus-outline-offset);
}

@supports not selector(:focus-visible) {
  *:focus {
    outline: var(--focus-outline-width) solid currentcolor;
    outline-offset: var(--focus-outline-offset);
  }
}

.focus-inset {
  outline-offset: calc(var(--focus-outline-width) * -1);
}

/* Layout */
.content-for-layout {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.content-for-layout > .shopify-section:last-child {
  flex-grow: 1;
}

/* Set up page widths & margins. Gutters grow to the device safe-area insets (viewport-fit=cover)
   so section backgrounds bleed edge-to-edge while content stays clear of the notch; taking the
   larger of both insets keeps the centered page grid symmetric. */
.page-width-wide,
.page-width-normal,
.page-width-narrow,
.page-width-content {
  --page-margin: max(16px, var(--safe-area-inset-left, 0px), var(--safe-area-inset-right, 0px));
}

@media screen and (min-width: 750px) {
  .page-width-wide,
  .page-width-normal,
  .page-width-narrow,
  .page-width-content {
    --page-margin: max(40px, var(--safe-area-inset-left, 0px), var(--safe-area-inset-right, 0px));
  }
}

.page-width-wide {
  /* NOTE: This results in a page width of 2400px because of how we set up margins with grid */
  --page-content-width: var(--wide-page-width);
  --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
}

.page-width-normal {
  --page-content-width: var(--normal-page-width);
  --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
}

.page-width-narrow {
  /* NOTE: This results in a page width of 1400px because of how we set up margins with grid */
  --page-content-width: var(--narrow-page-width);
  --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
}

.page-width-content {
  --page-content-width: var(--normal-content-width);
  --page-width: calc(var(--page-content-width) + (var(--page-margin) * 2));
}

/* Section width full vs. page
   The reason we use a grid to contain the section is to allow for the section to have a
   full-width background image even if the section content is constrained by the page width. Do not try
   to rewrite this to max-width: --page-width; margin: 0 auto;, it doesn't work. */
.section {
  --full-page-grid-central-column-width: min(
    var(--page-width) - var(--page-margin) * 2,
    calc(100% - var(--page-margin) * 2)
  );
  --full-page-grid-margin: minmax(var(--page-margin), 1fr);
  --full-page-grid-with-margins: var(--full-page-grid-margin) var(--full-page-grid-central-column-width)
    var(--full-page-grid-margin);

  /* Utility variable gives the grid's first column width. Provides an offset width for components like carousels */
  --util-page-margin-offset: max(
    var(--page-margin),
    calc((100% - min(var(--page-content-width), 100% - var(--page-margin) * 2)) / 2)
  );

  /* Offset for full-width sections to account for the page margin,
  used for Marquee — note that --util-page-margin-offset doesn't work here */
  --full-page-margin-inline-offset: calc(((100vw - var(--full-page-grid-central-column-width)) / 2) * -1);

  width: 100%;

  /* This is required to make background images work, which are <img> rendered absolutely */
  position: relative;

  /* Set up the grid */
  display: grid;
  grid-template-columns: var(--full-page-grid-with-margins);
  min-height: var(--section-min-height, 'auto');
}

/* Place all direct children in the center column by default */
.section > * {
  grid-column: 2;
}

/* Make the actual section background transparent, and instead apply it to a separate sibling element to enable stacking with hero shadow  */
.shopify-section:not(.header-section) :is(.section, .cart-summary) {
  background: transparent;
}

.shopify-section:not(.header-section):has(.section) {
  position: relative;
}

.shopify-section:not(.header-section) .section-background {
  content: '';
  position: absolute;
  inset: 0;
  z-index: var(--layer-section-background);
  background-color: var(--color-background);
}

/* For page-width sections, all content goes in the center column */
.section--page-width > * {
  grid-column: 2;
}

/* For full-width sections, content spans all columns */
.section--full-width > * {
  grid-column: 1 / -1;
}

@media screen and (max-width: 749px) {
  .section--mobile-full-width > * {
    grid-column: 1 / -1;
  }
}

/* For full-width sections with margin, content still spans full width but with space on the sides */
.section--full-width.section--full-width-margin > * {
  grid-column: 1 / -1;

  @media screen and (min-width: 750px) {
    padding-inline: var(--page-margin);
  }
}

/* Some section content break out to full width of the page */
.section > .force-full-width {
  grid-column: 1 / -1;
}

.section--height-small {
  --section-min-height: var(--section-height-small);
}

.section--height-medium {
  --section-min-height: var(--section-height-medium);
}

.section--height-large {
  --section-min-height: var(--section-height-large);
}

.section--height-full-screen {
  --section-min-height: 100svh;
}

.section-content-wrapper.section-content-wrapper {
  min-height: calc(var(--section-min-height, 'auto') - var(--section-height-offset, 0px));
  position: relative;
  width: 100%;
  height: 100%;
}

/* Utility */

.hidden {
  /* stylelint-disable-next-line declaration-no-important */
  display: none !important;
}

@media screen and (max-width: 749px) {
  .hidden--mobile,
  .mobile\:hidden {
    /* stylelint-disable-next-line declaration-no-important */
    display: none !important;
  }
}

@media screen and (min-width: 750px) {
  .hidden--desktop,
  .desktop\:hidden {
    /* stylelint-disable-next-line declaration-no-important */
    display: none !important;
  }
}

.hide-when-empty:empty {
  /* stylelint-disable-next-line declaration-no-important */
  display: none !important;
}

.visually-hidden:not(:focus, :active) {
  /* stylelint-disable-next-line declaration-no-important */
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  /* stylelint-disable-next-line declaration-no-important */
  word-wrap: normal !important;
}

.contents {
  display: contents;
}

.flex {
  display: flex;
  gap: var(--gap-md);
}

.grid {
  --centered-column-number: 12;
  --full-width-column-number: 14;
  --centered: column-1 / span var(--centered-column-number);
  --full-width: column-0 / span var(--full-width-column-number);

  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 750px) {
  .grid {
    display: grid;
    gap: 0;
    grid-template-columns: var(--margin-4xl) repeat(var(--centered-column-number), minmax(0, 1fr)) var(--margin-4xl);
    grid-template-areas: 'column-0 column-1 column-2 column-3 column-4 column-5 column-6 column-7 column-8 column-9 column-10 column-11 column-12 column-13';
  }
}

@media screen and (min-width: 1400px) {
  .grid {
    grid-template-columns:
      1fr repeat(
        var(--centered-column-number),
        minmax(0, calc((var(--page-width) - var(--page-margin) * 2) / var(--centered-column-number)))
      )
      1fr;
  }
}

.flip-x {
  scale: -1 1;
}

.list-unstyled {
  margin: 0;
  padding: 0;
  list-style: none;
}

.text-left {
  --text-align: start;

  text-align: start;
}

.text-center {
  --text-align: center;

  text-align: center;
}

.text-right {
  --text-align: end;

  text-align: end;
}

.text-inherit {
  color: inherit;
}

.user-select-text {
  user-select: text;
}

.justify-left {
  justify-content: flex-start;
}

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

.justify-right {
  justify-content: flex-end;
}

.svg-wrapper {
  color: currentcolor;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: var(--icon-size-sm);
  height: var(--icon-size-sm);
  pointer-events: none;
}

.svg-wrapper--smaller {
  width: var(--icon-size-2xs);
  height: var(--icon-size-2xs);
}

.svg-wrapper--small {
  width: var(--icon-size-xs);
  height: var(--icon-size-xs);
}

.svg-wrapper > svg {
  width: var(--icon-size-sm);
  height: var(--icon-size-sm);
}

.relative {
  position: relative;
}

/* Icons */
.icon-success,
.icon-error {
  width: var(--icon-size-md);
  height: var(--icon-size-md);
  flex-shrink: 0;
}

.icon-success {
  color: var(--color-success);
}

.icon-error {
  fill: var(--color-error);
}

.icon-default {
  fill: currentColor;
}

[data-placeholder='true'] * {
  cursor: default;
}

/* Base text and heading styles */
body,
.paragraph:not(.button),
.paragraph > *,
.text-block.paragraph :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-paragraph--family);
  font-style: var(--font-paragraph--style);
  font-weight: var(--font-paragraph--weight);
  font-size: var(--font-paragraph--size);
  line-height: var(--font-paragraph--line-height);
  text-transform: var(--font-paragraph--case);
  -webkit-font-smoothing: antialiased;
  color: var(--color, var(--color-foreground));
}

/* Ensure inputs with type presets maintain minimum 16px on mobile to prevent iOS zoom */
@media screen and (max-width: 1200px) {
  input.paragraph.paragraph,
  input.paragraph.paragraph:not([type]),
  textarea.paragraph.paragraph,
  select.paragraph.paragraph {
    font-size: max(1rem, var(--font-paragraph--size));
  }
}

.paragraph > small {
  font-size: smaller;
}

/* Typography presets */

h1,
.h1.h1,
.text-block.h1 > *,
.text-block.h1 :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-h1--family);
  font-style: var(--font-h1--style);
  font-weight: var(--font-h1--weight);
  font-size: var(--font-h1--size);
  line-height: var(--font-h1--line-height);
  letter-spacing: var(--font-h1--letter-spacing);
  text-transform: var(--font-h1--case);
  color: var(--color);
}

@media screen and (max-width: 1200px) {
  input.h1.h1,
  textarea.h1.h1,
  select.h1.h1 {
    font-size: max(1rem, var(--font-h1--size));
  }
}

h2,
.h2.h2,
.text-block.h2 > *,
.text-block.h2 :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-h2--family);
  font-style: var(--font-h2--style);
  font-weight: var(--font-h2--weight);
  font-size: var(--font-h2--size);
  line-height: var(--font-h2--line-height);
  letter-spacing: var(--font-h2--letter-spacing);
  text-transform: var(--font-h2--case);
  color: var(--color);
}

@media screen and (max-width: 1200px) {
  input.h2.h2,
  textarea.h2.h2,
  select.h2.h2 {
    font-size: max(1rem, var(--font-h2--size));
  }
}

h3,
.h3,
.h3.h3,
.text-block.h3 > *,
.text-block.h3 :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-h3--family);
  font-style: var(--font-h3--style);
  font-weight: var(--font-h3--weight);
  font-size: var(--font-h3--size);
  line-height: var(--font-h3--line-height);
  letter-spacing: var(--font-h3--letter-spacing);
  text-transform: var(--font-h3--case);
  color: var(--color);
}

@media screen and (max-width: 1200px) {
  input.h3,
  textarea.h3,
  select.h3 {
    font-size: max(1rem, var(--font-h3--size));
  }
}

h4,
.h4.h4,
.text-block.h4 > *,
.text-block.h4 :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-h4--family);
  font-style: var(--font-h4--style);
  font-weight: var(--font-h4--weight);
  font-size: var(--font-h4--size);
  line-height: var(--font-h4--line-height);
  letter-spacing: var(--font-h4--letter-spacing);
  text-transform: var(--font-h4--case);
  color: var(--color);
}

@media screen and (max-width: 1200px) {
  input.h4.h4,
  textarea.h4.h4,
  select.h4.h4 {
    font-size: max(1rem, var(--font-h4--size));
  }
}

h5,
.h5.h5,
.text-block.h5 > *,
.text-block.h5 :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-h5--family);
  font-style: var(--font-h5--style);
  font-weight: var(--font-h5--weight);
  font-size: var(--font-h5--size);
  line-height: var(--font-h5--line-height);
  letter-spacing: var(--font-h5--letter-spacing);
  text-transform: var(--font-h5--case);
  color: var(--color);
}

@media screen and (max-width: 1200px) {
  input.h5.h5,
  textarea.h5.h5,
  select.h5.h5 {
    font-size: max(1rem, var(--font-h5--size));
  }
}

h6,
.h6.h6,
.text-block.h6 > *,
.text-block.h6 :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-h6--family);
  font-style: var(--font-h6--style);
  font-weight: var(--font-h6--weight);
  font-size: var(--font-h6--size);
  line-height: var(--font-h6--line-height);
  letter-spacing: var(--font-h6--letter-spacing);
  text-transform: var(--font-h6--case);
  color: var(--color);
}

@media screen and (max-width: 1200px) {
  input.h6.h6,
  textarea.h6.h6,
  select.h6.h6 {
    font-size: max(1rem, var(--font-h6--size));
  }
}

:first-child:is(.h1, .h2, .h3, .h4, .h5, .h6) {
  margin-block-start: 0;
}

:last-child:is(.h1, .h2, .h3, .h4, .h5, .h6) {
  margin-block-end: 0;
}

/* Links */
a {
  color: currentcolor;
  text-decoration-color: transparent;
  text-decoration-thickness: 0.075em;
  text-underline-offset: 0.125em;
  transition: text-decoration-color var(--animation-speed) var(--animation-easing),
    color var(--animation-speed) var(--animation-easing);
}

:is(h1, h2, h3, h4, h5, h6, p) > a:hover {
  color: rgb(var(--color-rgb, var(--color-foreground-rgb)) / 0.7);
}

/* Add underline to text using our paragraph styles only. */
p:not(.h1, .h2, .h3, .h4, .h5, .h6) a:where(:not(.button, .button-secondary)),
.rte :is(p, ul, ol, table):not(.h1, .h2, .h3, .h4, .h5, .h6) a:where(:not(.button, .button-secondary)) {
  text-decoration-color: currentcolor;

  &:hover {
    text-decoration-color: currentcolor;
    color: rgb(var(--color-rgb, var(--color-foreground-rgb)) / 0.7);
  }
}

.container-background-image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

/* iOS fix: hide the default arrow on the summary */
summary::-webkit-details-marker {
  display: none;
}

/* Buttons */
.button,
.button-secondary,
.button-custom,
button.shopify-payment-button__button--unbranded {
  --text-align: center;

  display: grid;
  align-content: center;
  text-decoration: none;
  text-align: var(--text-align);
  color: var(--button-color);
  appearance: none;
  background-color: var(--button-background-color);
  border: none;
  font-family: var(--font-paragraph--family);
  font-style: var(--font-paragraph--style);
  font-weight: var(--font-paragraph--weight);
  font-size: var(--font-paragraph--size);
  line-height: var(--font-paragraph--line-height);
  margin-block: 0;
  transition: color var(--animation-speed) var(--animation-easing),
    box-shadow var(--animation-speed) var(--animation-easing),
    background-color var(--animation-speed) var(--animation-easing);
  cursor: pointer;
  width: fit-content;
  box-shadow: inset 0 0 0 var(--button-border-width) var(--button-border-color);
  padding-block: var(--button-padding-block);
  padding-inline: var(--button-padding-inline);
}

.button {
  font-family: var(--button-font-family-primary);
  text-transform: var(--button-text-case-primary);
  border-radius: var(--style-border-radius-buttons-primary);
}

.button:not(.button-secondary, .button-unstyled) {
  outline-color: var(--button-focus-outline-color, var(--button-background-color));
}

.button-secondary {
  font-family: var(--button-font-family-secondary);
  text-transform: var(--button-text-case-secondary);
  border-radius: var(--style-border-radius-buttons-secondary);
}

button.shopify-payment-button__button--unbranded {
  font-family: var(--button-font-family-primary);
  text-transform: var(--button-text-case-primary);
}

textarea,
input:not([type='checkbox'], [type='radio']) {
  background-color: var(--color-input-background);
  border-color: var(--color-input-border);
}

textarea::placeholder,
input::placeholder {
  color: rgb(var(--color-input-text-rgb) / var(--opacity-muted-text));
}

textarea:not(:placeholder-shown)::placeholder,
input:not(:placeholder-shown)::placeholder {
  opacity: 0;
}

/* The declaration above is messing with buttons that have an attribute of hidden as it overwrites the display value */
.button[hidden] {
  display: none;
}

.button[aria-disabled='true'],
.button-secondary[aria-disabled='true'],
.button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.button,
button.shopify-payment-button__button--unbranded {
  --button-color: var(--color-primary-button-text);
  --button-background-color: var(--color-primary-button-background);
  --button-border-color: var(--color-primary-button-border);
  --button-border-width: var(--style-border-width-primary);
  --button-focus-outline-color: var(--color-primary-button-focus-outline);
}

.button:hover,
button.shopify-payment-button__button--unbranded:hover:not([disabled]) {
  --button-color: var(--color-primary-button-hover-text);
  --button-background-color: var(--color-primary-button-hover-background);
  --button-border-color: var(--color-primary-button-hover-border);
}

.button-secondary {
  --button-color: var(--color-secondary-button-text);
  --button-background-color: var(--color-secondary-button-background);
  --button-border-color: var(--color-secondary-button-border);
  --button-border-width: var(--style-border-width-secondary);
}

.button-secondary:hover {
  --button-color: var(--color-secondary-button-hover-text);
  --button-background-color: var(--color-secondary-button-hover-background);
  --button-border-color: var(--color-secondary-button-hover-border);
}

.button-custom {
  --button-color: var(--color-primary-button-text);
  --button-background-color: var(--color-primary-button-background);
  --button-border-color: var(--color-primary-button-border);
  --button-border-width: var(--style-border-width-secondary);
  --button-focus-outline-color: var(--color-primary-button-focus-outline);

  font-family: var(--button-font-family-primary);
  text-transform: var(--button-text-case-primary);
  border-radius: var(--style-border-radius-buttons-primary);
  outline-color: var(--button-focus-outline-color, var(--button-background-color));
}

.button-custom:hover {
  --button-color: var(--color-primary-button-hover-text);
  --button-background-color: var(--color-primary-button-hover-background);
  --button-border-color: var(--color-primary-button-hover-border);
}

/* Needed to override the default Shopify styles */
button.shopify-payment-button__button--unbranded:hover:not([disabled]) {
  background-color: var(--button-background-color);
}

.button-unstyled {
  display: block;
  padding: 0;
  background-color: inherit;
  color: var(--color-foreground);
  border: 0;
  border-radius: 0;
  overflow: hidden;
  box-shadow: none;
  font-family: var(--font-paragraph--family);
  font-style: var(--font-paragraph--style);
  font-size: var(--font-paragraph--size);
}

.button-unstyled:hover {
  background-color: inherit;
}

/* Default hover dim for link-style buttons, scoped via :where() so component-specific
   hover rules (.facets__clear-all-link, .header-actions__action, etc.) still win. */
:where(.button-unstyled):hover {
  --hover-color-rgb: var(--color-foreground-rgb);

  color: rgb(var(--hover-color-rgb) / var(--opacity-70));
}

.button-unstyled--with-icon {
  color: var(--color-foreground);
  display: flex;
  gap: var(--gap-2xs);
  align-items: center;
}

.button-unstyled--transparent {
  background-color: transparent;
  box-shadow: none;
}

/* Caret icon transition */
.icon-caret svg {
  transition: transform var(--animation-speed) var(--animation-easing);
}

summary {
  display: flex;
  align-items: center;
  cursor: pointer;
  list-style: none;
  padding-block: var(--padding-sm);
}

summary:hover {
  color: rgb(var(--color-foreground-rgb) / var(--opacity-80));
}

/* Animate the UI elements in only after the view transition is complete */
.close-button {
  position: fixed;

  /* Keep the fixed close button clear of the status bar and inline-end notch (viewport-fit=cover) */
  top: max(var(--margin-lg), var(--safe-area-inset-top, 0px));
  inset-inline-end: max(var(--margin-lg), var(--safe-area-inset-right, 0px));
  width: var(--minimum-touch-target);
  height: var(--minimum-touch-target);
  z-index: var(--layer-flat);
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;

  /* For the outline radius */
  border-radius: 50%;
}

/* Safe-area env() values are physical; in RTL the button sits by the left-side notch */
[dir='rtl'] .close-button {
  inset-inline-end: max(var(--margin-lg), var(--safe-area-inset-left, 0px));
}

/* This triggers iOS < 16.4. The outline bug is not recognized as a lack of @supports */

@supports not (background-color: rgb(from red 150 g b / alpha)) {
  /**
    There is a bug in safari < 16.4 that causes the outline to not follow the elements border radius. This is a workaround.
    Using element selector to increase specificity.
  **/

  .close-button:focus-visible {
    outline: none;
    overflow: visible;
  }

  .close-button:focus-visible::after {
    content: '';
    position: absolute;
    inset: calc(-1 * var(--focus-outline-offset));
    border: var(--focus-outline-width) solid currentColor;
    border-radius: 50%;
    display: inherit;
  }
}

.dialog--closed .close-button {
  animation: elementSlideOutBottom calc(var(--animation-speed) * 0.5) var(--animation-easing) forwards;
}

.close-button:hover {
  background-color: transparent;
  opacity: 0.8;
}

.close-button svg {
  width: var(--icon-size-xs);
  height: var(--icon-size-xs);
}

/* Product media */
.product-media {
  display: flex;
  flex: 1;
}

.sticky-content {
  position: sticky;
  top: var(--sticky-header-offset, 0);
  z-index: var(--layer-flat);
}

@media screen and (min-width: 750px) {
  .sticky-content--desktop,
  .sticky-content--desktop.full-height--desktop > .group-block {
    position: sticky;
    top: var(--sticky-header-offset, 0);
    z-index: var(--layer-flat);
  }
}

/* Spacing style */
.spacing-style {
  --spacing-scale: var(--spacing-scale-md);

  @media screen and (min-width: 990px) {
    --spacing-scale: var(--spacing-scale-default);
  }

  /* Must disable this, when you use these with calc and another unit type, things break — see logo.liquid */
  /* stylelint-disable length-zero-no-unit */
  --padding-block: 0px;
  --padding-block-start: var(--padding-block, 0px);
  --padding-block-end: var(--padding-block, 0px);
  --padding-inline: 0px;
  --padding-inline-start: var(--padding-inline, 0px);
  --padding-inline-end: var(--padding-inline, 0px);
  --margin-block: 0px;
  --margin-block-start: var(--margin-block, 0px);
  --margin-block-end: var(--margin-block, 0px);
  --margin-inline: 0px;
  --margin-inline-start: var(--margin-inline, 0px);
  --margin-inline-end: var(--margin-inline, 0px);

  padding-block: calc(var(--padding-block-start) + var(--section-top-offset, 0px)) var(--padding-block-end);
  padding-inline: var(--padding-inline-start) var(--padding-inline-end);
  margin-block: var(--margin-block-start) var(--margin-block-end);
  margin-inline: var(--margin-inline-start) var(--margin-inline-end);
}

/* Size style */
.size-style {
  width: var(--size-style-width-mobile, var(--size-style-width));
  height: var(--size-style-height-mobile, var(--size-style-height));

  @media screen and (min-width: 750px) {
    width: var(--size-style-width);
    height: var(--size-style-height);
  }
}

/* Custom Typography style */
.custom-typography,
.custom-typography > * {
  font-family: var(--font-family);
  font-weight: var(--font-weight);
  text-transform: var(--text-transform);
  text-wrap: var(--text-wrap);
  line-height: var(--line-height);
  letter-spacing: var(--letter-spacing);
}

.custom-typography {
  h1 {
    line-height: var(--line-height--display, var(--line-height));
  }

  h2,
  h3,
  h4 {
    line-height: var(--line-height--heading, var(--line-height));
  }

  p {
    line-height: var(--line-height--body, var(--line-height));
  }
}

.custom-font-size,
.custom-font-size > * {
  font-size: var(--font-size);
}

.custom-font-weight,
.custom-font-weight > * {
  font-weight: var(--font-weight);
}

/* Border override style */
.border-style {
  border-width: var(--border-width);
  border-style: var(--border-style);
  border-color: var(--border-color);
  border-radius: var(--border-radius);
}

/* Gap scaling style */
.gap-style,
.layout-panel-flex {
  --gap-scale: var(--spacing-scale-md);

  @media screen and (min-width: 990px) {
    --gap-scale: var(--spacing-scale-default);
  }
}

.layout-panel-flex {
  display: flex;
  gap: var(--gap);
  height: 100%;
}

.shopify-block:has(> [shopify-block-empty]) {
  display: none;
}

.layout-panel-flex--row {
  flex-flow: row var(--flex-wrap);
  justify-content: var(--horizontal-alignment);
  align-items: var(--vertical-alignment);
}

.layout-panel-flex--column {
  flex-flow: column var(--flex-wrap);
  align-items: var(--horizontal-alignment);
  justify-content: var(--vertical-alignment);
}

@media screen and (max-width: 749px) {
  .mobile-column {
    flex-flow: column nowrap;
    align-items: var(--horizontal-alignment);
    justify-content: var(--vertical-alignment-mobile);
  }

  .layout-panel-flex--row:not(.mobile-column) {
    flex-wrap: var(--flex-wrap-mobile);
    height: auto;

    > .menu {
      flex: 1 1 min-content;
    }

    > .text-block {
      flex: 1 1 var(--max-width--display-tight);
    }

    > .image-block {
      flex: 1 1 var(--size-style-width-mobile-min);
    }

    > .button {
      flex: 0 0 fit-content;
    }

    > .group-block--height-fill {
      height: calc(var(--section-min-height, auto) - var(--section-height-offset, 0px));
    }
  }
}

@media screen and (min-width: 750px) {
  .layout-panel-flex {
    flex-direction: var(--flex-direction);
  }
}

/* Form fields */
.field {
  position: relative;
  width: 100%;
  display: flex;
  transition: box-shadow var(--animation-speed) ease;
}

.field__input {
  flex-grow: 1;
  text-align: start;
  border-radius: var(--style-border-radius-inputs);
  transition: box-shadow var(--animation-speed) ease, background-color var(--animation-speed) ease;
  padding: var(--input-padding);
  box-shadow: var(--input-box-shadow);
  background-color: var(--color-input-background);
  color: var(--color-input-text);
  border: none;
  outline: none;
  font-size: var(--font-paragraph--size);

  &:autofill {
    background-color: var(--color-input-background);
    color: var(--color-input-text);
  }
}

.field__input:focus {
  box-shadow: var(--input-box-shadow-focus);
}

.field__input--button-radius {
  border-radius: var(--style-border-radius-buttons-primary);
}

.field__input--button-padding {
  padding-inline: var(--padding-3xl);
}

.field__label {
  color: rgb(var(--color-input-text-rgb) / var(--opacity-80));
  font-size: var(--font-paragraph--size);
  inset-inline-start: var(--input-padding-x);
  top: 50%;
  transform: translateY(-50%);
  margin-bottom: 0;
  pointer-events: none;
  position: absolute;
  transition: top var(--animation-speed) ease, font-size var(--animation-speed) ease;
}

/* RTE styles */
.rte,
.shopify-policy__title {
  :is(h1, h2, h3, h4, h5, h6) {
    margin-block: clamp(1.5rem, 1em * 3.3, 2.5rem) var(--font-heading--spacing);
  }

  :first-child:is(p, h1, h2, h3, h4, h5, h6),
  :first-child:empty + :is(p, h1, h2, h3, h4, h5, h6) {
    margin-block-start: 0;
  }

  ul,
  ol {
    margin-block-start: 0;
    padding-inline-start: 1.5em;
  }

  /* Only apply margin-block-end to the higher level list, not nested lists */
  :is(ul, ol):not(:is(ul, ol) :is(ul, ol)) {
    margin-block-end: 1em;
  }

  blockquote {
    margin-inline: 1.5em 2.3em;
    margin-block: 3.8em;
    padding-inline-start: 0.8em;
    border-inline-start: 1.5px solid rgb(var(--color-foreground-rgb) / var(--opacity-25));
    font-style: italic;
    font-weight: 500;
  }

  .rte-table-wrapper {
    overflow-x: auto;
  }

  table {
    /* stylelint-disable-next-line declaration-no-important */
    width: 100% !important;
    border-collapse: collapse;
  }

  tr:not(:has(td)),
  thead {
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
    font-weight: bold;
    text-transform: uppercase;
  }

  tr:has(td) {
    border-bottom: 1px solid rgb(var(--color-foreground-rgb) / var(--opacity-10));
  }

  th,
  td {
    text-align: start;
    padding-inline: var(--padding-md);
    padding-block: var(--padding-sm);
  }
}

.shopify-policy__container {
  padding-block: var(--padding-xl);
}

/* Radio buttons and checkboxes - shared base styles */
:where(input[type='radio']),
:where(input[type='checkbox']) {
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  aspect-ratio: 1;
  margin: 0;
  margin-inline-end: var(--padding-3xs);
  padding: 0;
  border: var(--checkbox-border);
  appearance: none;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
}

/* Radio buttons */
input[type='radio'] {
  border-radius: var(--style-border-radius-50);
  background: transparent;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

:where(input[type='radio']):checked {
  border-color: var(--color-foreground);
  background: var(--color-background);
}

:where(input[type='radio']):checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%; /* stylelint-disable-line csstools/use-logical -- centring pair with a physical translate(-50%) */
  transform: translate(-50%, -50%);
  width: calc(var(--checkbox-size) / 2);
  height: calc(var(--checkbox-size) / 2);
  background: var(--color-foreground);
  border-radius: var(--style-border-radius-50);
  transition: background 0.2s ease;
}

:where(input[type='radio']):disabled {
  border-color: var(--input-disabled-border-color);
  background-color: var(--input-disabled-background-color);
  cursor: not-allowed;
}

:where(input[type='radio']):disabled:checked::after {
  background: var(--input-disabled-background-color);
}

:where(input[type='radio']):not(:disabled):hover {
  border-color: rgb(var(--color-foreground-rgb) / var(--opacity-40-60));
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
}

:where(input[type='radio']):not(:disabled):hover:checked {
  border-color: var(--color-foreground);
  background-color: var(--color-background);
}

:where(input[type='radio']):not(:disabled):hover:checked::after {
  background: rgb(var(--color-foreground-rgb) / var(--opacity-85));
}

/* Checkboxes */
:where(input[type='checkbox']) {
  border-radius: var(--checkbox-border-radius);
  background-color: var(--color-background);
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

:where(input[type='checkbox']):checked {
  background-color: var(--color-foreground);
  border-color: var(--color-foreground);
}

:where(input[type='checkbox']):checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%; /* stylelint-disable-line csstools/use-logical -- centring pair with a physical translate(-50%) */
  transform: translate(-50%, -50%);
  width: var(--checkbox-size);
  height: var(--checkbox-size);
  background-color: var(--color-background);
  mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.75439 10.7485L7.68601 14.5888C7.79288 14.7288 7.84632 14.7988 7.91174 14.8242C7.96907 14.8466 8.03262 14.8469 8.09022 14.8253C8.15596 14.8007 8.21026 14.7314 8.31886 14.5927L15.2475 5.74658' stroke='black' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}

:where(input[type='checkbox']):not(:disabled):hover {
  border-color: rgb(var(--color-foreground-rgb) / var(--opacity-40-60));
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
}

:where(input[type='checkbox']):not(:disabled):hover:checked {
  border-color: var(--color-foreground);
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-85));
}

:where(input[type='checkbox']):disabled {
  background-color: var(--input-disabled-background-color);
  border-color: var(--input-disabled-border-color);
  cursor: not-allowed;
}

:where(input[type='checkbox']):disabled:checked::after {
  background-color: var(--input-disabled-text-color);
}

/* Shared styles for radio buttons and checkboxes */
:where(input[type='radio']) + label,
:where(input[type='checkbox']) + label {
  display: inline;
  vertical-align: middle;
  cursor: pointer;
}

:where(input[type='radio']):disabled + label,
:where(input[type='checkbox']):disabled + label {
  color: var(--input-disabled-text-color);
  cursor: not-allowed;
}

/* Animation declarations - to be kept at the bottom of the file for ease of find */
@keyframes grow {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.2);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes move-and-fade {
  from {
    transform: translate(var(--start-x, 0), var(--start-y, 0));
    opacity: var(--start-opacity, 0);
  }

  to {
    transform: translate(var(--end-x, 0), var(--end-y, 0));
    opacity: var(--end-opacity, 1);
  }
}

@keyframes slideInTopViewTransition {
  from {
    transform: translateY(100px);
  }
}

@keyframes elementSlideInTop {
  from {
    margin-top: var(--padding-sm);
    opacity: 0;
  }

  to {
    margin-top: 0;
    opacity: 1;
  }
}

@keyframes elementSlideOutTop {
  from {
    transform: translateY(0);
    opacity: 1;
  }

  to {
    transform: translateY(var(--padding-sm));
    opacity: 0;
  }
}

@keyframes elementSlideOutBottom {
  from {
    transform: translateY(0);
    opacity: 1;
  }

  to {
    transform: translateY(calc(-1 * var(--padding-sm)));
    opacity: 0;
  }
}

@keyframes thumbnailsSlideInTop {
  from {
    transform: translateY(calc(-50% + var(--margin-lg)));
    opacity: 0;
  }

  to {
    transform: translateY(-50%);
    opacity: 1;
  }
}

@keyframes thumbnailsSlideOutTop {
  from {
    transform: translateY(-50%);
    opacity: 1;
  }

  to {
    transform: translateY(calc(-50% + var(--margin-lg)));
    opacity: 0;
  }
}

@keyframes thumbnailsSlideInBottom {
  from {
    transform: translateY(100%);
    opacity: 0;
  }

  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes thumbnailsSlideOutBottom {
  from {
    transform: translateY(0);
    opacity: 1;
  }

  to {
    transform: translateY(100%);
    opacity: 0;
  }
}

@keyframes search-element-slide-in-bottom {
  0% {
    transform: translateY(20px);
    opacity: 0;
  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes search-element-slide-out-bottom {
  0% {
    transform: translateY(0);
    opacity: 1;
  }

  100% {
    transform: translateY(20px);
    opacity: 0;
  }
}

@keyframes backdropFilter {
  from {
    backdrop-filter: brightness(1);
  }

  to {
    backdrop-filter: brightness(0.75);
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes modalSlideInTop {
  from {
    transform: translateY(var(--padding-sm));
    opacity: 0;
  }

  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes modalSlideOutTop {
  from {
    transform: translateY(0);
    opacity: 1;
  }

  to {
    transform: translateY(var(--padding-sm));
    opacity: 0;
  }
}

/* Slideshow Arrow Hover Animation - must stay in base.css for proper CSS cascade */

slideshow-container[animate-arrows]:hover > slideshow-arrows .slideshow-control,
slideshow-component:focus-within > slideshow-container[animate-arrows] > slideshow-arrows .slideshow-control {
  animation: arrowsSlideIn var(--animation-speed) var(--animation-easing) forwards;
}

/* Clipped controls preserve accessible paging without intercepting touch taps. */
@media (hover: none) and (pointer: coarse) {
  .resource-list__carousel > [animate-arrows] > :where(slideshow-arrows) > .slideshow-control:not(:focus-visible) {
    position: absolute;
    clip: rect(0 0 0 0);
    animation: none;
  }

  .resource-list__carousel > [animate-arrows] > :where(slideshow-arrows) > .slideshow-control:focus-visible {
    opacity: 1;
    animation: none;
  }
}

@keyframes arrowsSlideIn {
  from {
    transform: translate(var(--padding-sm), 0);
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.section-resource-list,
.section-carousel {
  row-gap: var(--gap);
}

.section-resource-list__content {
  display: flex;
  flex-direction: column;
  align-items: var(--horizontal-alignment);
  gap: var(--gap);
  width: 100%;
}

.section-resource-list__header:is(:empty, :has(.group-block-content:empty)),
.section-resource-list__content:empty {
  display: none;
}

:where(.section-resource-list.section--full-width) product-card[data-product-transition] > .group-block,
:where(.section-carousel.section--full-width) product-card[data-product-transition] > .group-block {
  @media screen and (max-width: 749px) {
    padding-inline: max(var(--padding-xs), var(--padding-inline-start))
      max(var(--padding-xs), var(--padding-inline-end));
  }
}

/* Base styles */
.group-block,
.group-block-content {
  position: relative;
}

.group-block:has(> video-background-component) {
  overflow: hidden;
}

.group-block-content {
  height: 100%;
  width: 100%;
}

/* Container styles */
.section-content-wrapper.section-content-wrapper:where(.layout-panel-flex) .group-block--fill {
  flex: 1;
}

/* Flex behavior for width variants */
.layout-panel-flex--row > .group-block--width-fit {
  flex: 0;
}

.layout-panel-flex--row > .group-block--width-fill {
  flex: 1;
}

.layout-panel-flex--row > .group-block--width-custom {
  flex-basis: var(--size-style-width);
}

/* Dimension utilities - Height */
.group-block--height-fit {
  height: auto;
}

.group-block--height-custom,
.group-block--height-fill {
  height: var(--size-style-height);
}

/* Flex behavior for height variants */
.layout-panel-flex--column > .group-block--height-fit {
  flex: 0 1 auto;
}

.layout-panel-flex--column > .group-block--height-fill {
  flex: 1;
}

.layout-panel-flex--column > .group-block--height-custom {
  flex-basis: var(--size-style-height);
}

/* Global scrollbar styles */

/* Webkit browsers */
::-webkit-scrollbar {
  width: 20px;
}

::-webkit-scrollbar-track {
  background-color: transparent;
}

::-webkit-scrollbar-thumb {
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-40));
  border-radius: 20px;
  border: 6px solid transparent;
  background-clip: content-box;
  transition: background-color 0.2s;
}

::-webkit-scrollbar-thumb:hover {
  background-color: rgb(var(--color-foreground-rgb) / var(--opacity-60));
}

/* Prevent iOS zoom on input focus by ensuring minimum 16px font size on mobile */
@media screen and (max-width: 1200px) {
  input,
  textarea,
  select,
  /* Higher specificity to override type preset classes like .paragraph, .h1, etc. */
  .paragraph.paragraph input,
  .paragraph.paragraph textarea,
  .paragraph.paragraph select,
  .h1.h1 input,
  .h1.h1 textarea,
  .h1.h1 select,
  .h2.h2 input,
  .h2.h2 textarea,
  .h2.h2 select,
  .h3.h3 input,
  .h3.h3 textarea,
  .h3.h3 select,
  .h4.h4 input,
  .h4.h4 textarea,
  .h4.h4 select,
  .h5.h5 input,
  .h5.h5 textarea,
  .h5.h5 select,
  .h6.h6 input,
  .h6.h6 textarea,
  .h6.h6 select {
    font-size: max(1rem, 100%);
  }
}

/* When the header is transparent, and when there is no header-section below it, offset the first main-section with
 * the height of the header
 */
main > .shopify-section:first-child .section:not(.disable-section-top-offset) {
  &.spacing-style,
  .spacing-style {
    --section-top-offset: calc(var(--header-height) * var(--transparent-header-offset-boolean));

    /* Any nested sections should not be offset */
    .spacing-style {
      --section-top-offset: 0px;
    }
  }

  /* Make sticky content immediately stick to the top of the page */
  .sticky-content {
    margin-top: calc(var(--header-height) * var(--transparent-header-offset-boolean) * -1);
  }
}



/* AuLado — cabeçalho desktop com largura centralizada */
@media screen and (min-width: 990px) {
  .header__row {
    max-width: 1200px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 990px) {
  .header__columns:has(.header__column--center header-menu) {
    --header-left: max-content !important;
  }
}


/* Botão do cabeçalho */
.aulada-header-cta {
  position: relative;
  isolation: isolate;
  overflow: visible;
  z-index: 1;
  height: 44px;
  border-radius: 14px !important;
padding: 0 20px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 9px;
box-sizing: border-box;
background: #467c63 !important;
}

.aulada-header-cta:hover{
  background: #54866e !important;
}

/* Onda de pulsação */
.aulada-header-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid #467c63;
  border-radius: inherit;
  pointer-events: none;
  z-index: -1;
  animation: aulada-ping 3s ease-out infinite;
}

/* Expansão uniforme */
@keyframes aulada-ping {
  0% {
    transform: scale(1);
    opacity: 0.55;
  }

  65% {
    transform: scale(1.12, 1.35);
    opacity: 0;
  }

  100% {
    transform: scale(1.12, 1.35);
    opacity: 0;
  }
}

/* Acessibilidade */
@media (prefers-reduced-motion: reduce) {
  .aulada-header-cta::before {
    animation: none;
    opacity: 0;
  }
}

/* Ícones do menu AuLado */
.aulada-menu-title {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}

.aulada-menu-title svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: #614D47;
}

/* AuLado — animação dos links do menu */

.aulada-menu-title {
  transition:
    color 0.25s ease,
    transform 0.25s ease;
}

.aulada-menu-title svg {
  color: inherit;
  transition: color 0.25s ease;
}

/* Hover e navegação por teclado */
.menu-list__link:hover .aulada-menu-title,
.menu-list__link:focus-visible .aulada-menu-title {
  color: #C68E7D;
  transform: translateY(-2px);
}

/* Respeita preferência por movimento reduzido */
@media (prefers-reduced-motion: reduce) {
  .aulada-menu-title,
  .aulada-menu-title svg {
    transition: none;
  }

  .menu-list__link:hover .aulada-menu-title,
  .menu-list__link:focus-visible .aulada-menu-title {
    transform: none;
  }
}

/* AuLado - CTA do menu mobile */

.aulada-mobile-cta-wrapper {
  padding: 16px 20px 12px;
}

.aulada-mobile-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;

  width: 100%;
  height: 44px;
  padding: 0 16px;

  background-color: #C68E7D;
  color: #FFFFFF;

  border-radius: 10px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;

  transition:
    background-color 0.25s ease,
    transform 0.25s ease;
}

.aulada-mobile-cta svg {
  flex-shrink: 0;
}

.aulada-mobile-cta:hover {
  background-color: #B77B69;
  color: #FFFFFF;
  transform: translateY(-2px);
}

.aulada-mobile-cta:focus-visible {
  outline: 2px solid #614D47;
  outline-offset: 3px;
}

@media screen and (min-width: 750px) {
  .aulada-mobile-cta-wrapper {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .aulada-mobile-cta {
    transition: none;
  }
}


/* TITULO HERO */
#shopify-section-template--23845202395413__section_qQfPER > div.section.section--page-width.color-custom-template--23845202395413__section_qQfPER > div.border-style.custom-section-content > div > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > rte-formatter > h1{
  font-size:46px !important;
  line-height: 1 !important;
}

/* Eternizado */
#shopify-section-template--23845202395413__section_qQfPER > div.section.section--page-width.color-custom-template--23845202395413__section_qQfPER > div.border-style.custom-section-content > div > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > rte-formatter > h1 > strong{
  color: #bb2d2a;
  font-style: italic;
  
}


/* AuLado — botão do Hero */
a.button[href="/products/personalized-christmas-icon-mug-vxshawnf"] {
  position: relative;
  isolation: isolate;
  overflow: visible;
  z-index: 1;
  font-weight: bold !important;
  height: 55px;
  min-height: 55px;
  padding: 0 20px;
  box-sizing: border-box;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;

  border-radius: 14px;
}

/* Pulsação contínua */
a.button[href="/products/personalized-christmas-icon-mug-vxshawnf"]::before {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid #C68E7D;
  border-radius: inherit;
  pointer-events: none;
  z-index: -1;
  animation: aulada-ping 3s ease-out infinite;
}

/* Coração de contorno */
a.button[href="/products/personalized-christmas-icon-mug-vxshawnf"]::after {
  content: "";
  width: 17px;
  height: 17px;
  flex-shrink: 0;
  order: -1;

  background-color: currentColor;
  -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.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z'/%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.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.8 4.6a5.5 5.5 0 0 0-7.8 0L12 5.7l-1.1-1.1a5.5 5.5 0 0 0-7.8 7.8L12 21l8.8-8.6a5.5 5.5 0 0 0 0-7.8Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

@media (prefers-reduced-motion: reduce) {
  a.button[href="/products/personalized-christmas-icon-mug-vxshawnf"]::before {
    animation: none;
  }
}



/* AuLado — altura do botão Hero no mobile */
@media screen and (max-width: 749px) {
  a.button[href="/products/personalized-christmas-icon-mug-vxshawnf"] {
    height: 60px;
    min-height: 60px;
    padding: 0 20px;
  }
}


/* AuLado — texto branco no hover do botão Hero */
@media (hover: hover) {
  a.button[href="/products/personalized-christmas-icon-mug-vxshawnf"]:hover {
    color: #FFFFFF !important;
  }
}



/* AuLado — dimensões do botão Hero */
a.button[href="/products/personalized-christmas-icon-mug-vxshawnf"] {
  width: 301px !important;
  min-width: 301px !important;
  max-width: 301px !important;

  height: 60px !important;
  min-height: 60px !important;

  padding: 0 12px !important;
  box-sizing: border-box;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

/* Texto branco no hover */
@media (hover: hover) {
  a.button[href="/products/personalized-christmas-icon-mug-vxshawnf"]:hover {
    color: #FFFFFF !important;
  }
}




/* HERO TEXTO ANTES */
#shopify-section-template--23845202395413__section_qQfPER > div.section.section--page-width.color-custom-template--23845202395413__section_qQfPER > div.border-style.custom-section-content > div > comparison-slider-component > div > div > div.comparison-slider__layer.comparison-slider__layer--before > div{
  background: #e6f4eb !important;
  border: solid 1px #cedbd0 !important;
  padding: 5px 8px 5px 8px; !important;

}

#shopify-section-template--23845202395413__section_qQfPER > div.section.section--page-width.color-custom-template--23845202395413__section_qQfPER > div.border-style.custom-section-content > div > comparison-slider-component > div > div > div.comparison-slider__layer.comparison-slider__layer--before > div > div{
  color: #2d7645 !important;
  font-size: 10px !important;
}

/* HERO TEXTO DEPOIS */
#shopify-section-template--23845202395413__section_qQfPER > div.section.section--page-width.color-custom-template--23845202395413__section_qQfPER > div.border-style.custom-section-content > div > comparison-slider-component > div > div > div.comparison-slider__layer.comparison-slider__layer--after > div{
  background: #e6f4eb !important;
  border: solid 1px #cedbd0 !important;
  padding: 5px 8px 5px 8px !important;
}

#shopify-section-template--23845202395413__section_qQfPER > div.section.section--page-width.color-custom-template--23845202395413__section_qQfPER > div.border-style.custom-section-content > div > comparison-slider-component > div > div > div.comparison-slider__layer.comparison-slider__layer--after > div > div{
  color: #2d7645 !important;
  font-size: 10px !important;
}

/* AULADO - Benefícios em carrossel no mobile */

@media screen and (max-width: 749px) {

  #shopify-section-template--23845202395413__section_H4yrKY
  .section-content-wrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 20px !important;

    overflow-x: auto !important;

    scrollbar-width: none;

    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  #shopify-section-template--23845202395413__section_H4yrKY
  .section-content-wrapper::-webkit-scrollbar {
    display: none;
  }

  #shopify-section-template--23845202395413__section_H4yrKY
  .section-content-wrapper > .group-block {
    flex: 0 0 85% !important;
    width: 85% !important;
    min-width: 85% !important;
    scroll-snap-align: start;
  }

}

/* DEPOIMENTOS */

/* DEPOIMENTO 1 */
#shopify-section-template--23845202395413__section_xBWndB > div.section.section--page-width.color-custom-template--23845202395413__section_xBWndB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AUFF6aGYraWlqVHhxL__group_cnfRrF{
  box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
}

#shopify-section-template--23845202395413__section_xBWndB > div.section.section--page-width.color-custom-template--23845202395413__section_xBWndB > div.border-style.custom-section-content > div > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AL1hWMVhWakt1UVRzQ__text_N9hHAx.custom.custom-typography.custom-font-size.custom-color{
  background: #ebeee8;
  padding: 5px 8px 5px 8px;
  border-radius: 50px;
  color: #fff;
}

#shopify-section-template--23845202395413__section_xBWndB > div.section.section--page-width.color-custom-template--23845202395413__section_xBWndB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AeHdFelNHWkREVWZCc__group_wwDKDp{
  box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
}

#shopify-section-template--23845202395413__section_xBWndB > div.section.section--page-width.color-custom-template--23845202395413__section_xBWndB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AeHdFelNHWkREVWZCc__group_wwDKDp > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AaGtKcmlOUzBXQThJN__text_TJgEKc.custom.custom-typography.custom-font-size.custom-color{
  background: #ebeee8;
  padding: 5px 8px 5px 8px;
  border-radius: 50px;
  color: #fff;
}

#shopify-section-template--23845202395413__section_xBWndB > div.section.section--page-width.color-custom-template--23845202395413__section_xBWndB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AcUVLS25BekYzVmpHR__group_YyTB6Q{
  box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
}

#shopify-section-template--23845202395413__section_xBWndB > div.section.section--page-width.color-custom-template--23845202395413__section_xBWndB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AcUVLS25BekYzVmpHR__group_YyTB6Q > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--ANEswVHJ0cFJnRk9zQ__text_iVgF3x.custom.custom-typography.custom-font-size.custom-color{
  background: #ebeee8;
  padding: 5px 8px 5px 8px;
  border-radius: 50px;
  color: #fff;
}

#shopify-section-template--23845202395413__section_xBWndB > div.section.section--page-width.color-custom-template--23845202395413__section_xBWndB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AeldVUlBOVElSbEsvS__group_qUmA98{
  box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
}

#shopify-section-template--23845202395413__section_xBWndB > div.section.section--page-width.color-custom-template--23845202395413__section_xBWndB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AeldVUlBOVElSbEsvS__group_qUmA98 > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AeTVhc2JJRWtCcDlSc__text_idzbE9.custom.custom-typography.custom-font-size.custom-color{
  background: #ebeee8;
  padding: 5px 8px 5px 8px;
  border-radius: 50px;
  color: #fff;
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AZUhLdDAwakxjUGdxM__group_Yp4pPT{
  box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AZUhLdDAwakxjUGdxM__group_Yp4pPT > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AWFUzOVZ5N0NDRFp3S__text_kAbkxp.custom.custom-typography.custom-font-size.custom-color{
  background: #ebeee8;
  padding: 5px 8px 5px 8px;
  border-radius: 50px;
  color: #fff;
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AbzZ5N1VuSFlGdElTN__group_N66CX8{
  box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AbzZ5N1VuSFlGdElTN__group_N66CX8 > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AeHJrbXFGemNaZkg5M__text_qJWit6.custom.custom-typography.custom-font-size.custom-color{
  background: #ebeee8;
  padding: 5px 8px 5px 8px;
  border-radius: 50px;
  color: #fff;
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-ATUtYL2l0dE1UbmkxU__group_kL3eDC{
  box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-ATUtYL2l0dE1UbmkxU__group_kL3eDC > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AZmk2c1ROdldveDdyM__text_PMYmqK.custom.custom-typography.custom-font-size.custom-color{
  background: #ebeee8;
  padding: 5px 8px 5px 8px;
  border-radius: 50px;
  color: #fff;
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AUHlES2xVNm5NZ1lmc__group_nQirQm{
  box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
  
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AUHlES2xVNm5NZ1lmc__group_nQirQm:hover{
  transform: translateY(-8px); /* Move o elemento 8 pixels para cima */
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.15);
}

#shopify-section-template--23845202395413__section_JeTMaB > div.section.section--page-width.color-custom-template--23845202395413__section_JeTMaB > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style.color-custom-AUHlES2xVNm5NZ1lmc__group_nQirQm > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AaHVDVTdISXQrcGJDM__text_9jXNTm.custom.custom-typography.custom-font-size.custom-color{
  background: #ebeee8;
  padding: 5px 8px 5px 8px;
  border-radius: 50px;
  color: #fff;
}


/* SESSÃO NÃO VENDEMOS CANECAS */
#shopify-section-template--23845202395413__section_ti6tCx > div.section.section--page-width.color-custom-template--23845202395413__section_ti6tCx > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > a{
  padding: 30px !important;
  max-width: 300px !important;
  min-width: 300px !important;
}

@media screen and (max-width: 749px) {

  #shopify-section-template--23845202395413__section_ti6tCx > div.section.section--page-width.color-custom-template--23845202395413__section_ti6tCx > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style {
    --padding-inline-start: none !important;
  }
}


/* H2 DA SESSÃO DE PRODUTOS INDEX */
@media screen and (max-width: 749px) {

  #shopify-section-template--23845202395413__product_list_fa6P9H > div.section.section--page-width.color-custom-template--23845202395413__product_list_fa6P9H.section-resource-list.spacing-style.gap-style > div.section-resource-list__header > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AZ2JFTjg2NFlGZGNkK__text_KFRNMD.custom.custom-typography.custom-font-size.custom-color > h2 {
   font-size: 32px !important;
  }
}

/* H2 DA SESSÃO MAIS FÁCIL DO QUE IMAGINA INDEX */
@media screen and (max-width: 749px) {

  #shopify-section-template--23845202395413__section_JKEbJ3 > div.section.section--page-width.color-custom-template--23845202395413__section_JKEbJ3 > div.border-style.custom-section-content > div > div.spacing-style.text-block.text-block--ANzF6clVteVkrc0ppQ__text_NPFTTD.custom.custom-typography.custom-font-size.custom-color > h2 {
   font-size: 32px !important;
  }
}

/* H2 DA SESSÃO HISTÓRIAS QUE NOS EMOCIONAM INDEX */
@media screen and (max-width: 749px) {

  #shopify-section-template--23845202395413__section_w896Y7 > div.section.section--page-width.color-custom-template--23845202395413__section_w896Y7 > div.border-style.custom-section-content > div > div.spacing-style.text-block.text-block--AeDhSUFFUcE01OUdLS__text_h8NijD.custom.custom-typography.custom-font-size.custom-color > h2 {
   font-size: 32px !important;
   width: 70% !important;
  }
}

/* H2 NÃO VENDEMOS CANECAS INDEX */
@media screen and (max-width: 749px) {

  #shopify-section-template--23845202395413__section_ti6tCx > div.section.section--page-width.color-custom-template--23845202395413__section_ti6tCx > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AOUxvVmFmUVlQdXBZb__text_7A8c3k.custom.custom-typography.custom-font-size.custom-color > h2 {
   font-size: 32px !important;
  }
}


/* STRONG ETERNIZAR */
#shopify-section-template--23845202395413__product_list_fa6P9H > div.section.section--page-width.color-custom-template--23845202395413__product_list_fa6P9H.section-resource-list.spacing-style.gap-style > div.section-resource-list__header > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AZ2JFTjg2NFlGZGNkK__text_KFRNMD.custom.custom-typography.custom-font-size.custom-color > h2 > strong{
  color: #bb2d2a;
  font-style: italic;
}

/* STRONG IMAGINA */
#shopify-section-template--23845202395413__section_JKEbJ3 > div.section.section--page-width.color-custom-template--23845202395413__section_JKEbJ3 > div.border-style.custom-section-content > div > div.spacing-style.text-block.text-block--ANzF6clVteVkrc0ppQ__text_NPFTTD.custom.custom-typography.custom-font-size.custom-color > h2 > strong{
  color: #bb2d2a;
  font-style: italic;
}

/* STRONG EMOCIONAM */
#shopify-section-template--23845202395413__section_w896Y7 > div.section.section--page-width.color-custom-template--23845202395413__section_w896Y7 > div.border-style.custom-section-content > div > div.spacing-style.text-block.text-block--AeDhSUFFUcE01OUdLS__text_h8NijD.custom.custom-typography.custom-font-size.custom-color > h1 > strong{
  font-style: italic;
}

/* STRONG ETERNIZAMOS MOMENTOS */
#shopify-section-template--23845202395413__section_ti6tCx > div.section.section--page-width.color-custom-template--23845202395413__section_ti6tCx > div.border-style.custom-section-content > div > div.group-block.group-block--height-fit.group-block--width-custom.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.spacing-style.text-block.text-block--AOUxvVmFmUVlQdXBZb__text_7A8c3k.custom.custom-typography.custom-font-size.custom-color > h2 > strong{
  color: #bb2d2a;
  font-style: italic;
}



/* AuLado - FAQ em cards individuais */

/* Centraliza e limita a largura das perguntas */
#shopify-section-template--23845202395413__section_H4yrKY
.accordion {
  max-width: 700px !important;
  width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Cada pergunta vira um card */
#shopify-section-template--23845202395413__section_H4yrKY
accordion-custom {
  display: block;
  margin-bottom: 14px !important;
  background: #ffffff !important;
  border-radius: 16px !important;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(80, 55, 45, 0.035);
}

/* Remove divisórias internas */
#shopify-section-template--23845202395413__section_H4yrKY
accordion-custom .details {
  border: none !important;
}

/* Espaçamento e tipografia das perguntas */
#shopify-section-template--23845202395413__section_H4yrKY
accordion-custom summary {
  padding: 20px 24px !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
}

/* Espaçamento das respostas */
#shopify-section-template--23845202395413__section_H4yrKY
accordion-custom .details-content {
  padding: 0 24px 22px !important;
}

/* Ajustes para celular */
@media screen and (max-width: 749px) {
  #shopify-section-template--23845202395413__section_H4yrKY
  .accordion {
    max-width: 100%;
  }

  #shopify-section-template--23845202395413__section_H4yrKY
  accordion-custom summary {
    padding: 17px 18px !important;
    font-size: 16px !important;
  }
}


/* Espaçamento entre perguntas */
#shopify-section-template--23845202395413__section_H4yrKY
.accordion__row {
  margin-bottom: 14px;
  border-radius: 16px;
  background-color: #ffffff;
  overflow: hidden;
}



/* AULADO - FAQ estilo Recordário */

/* Limita a largura do conjunto */
accordion-custom {
  display: block !important;
  width: 100% !important;
  max-width: 700px !important;
  margin: 0 auto 14px !important;

  background: #ffffff !important;
  border: none !important;
  border-radius: 16px !important;
  overflow: hidden !important;

  box-shadow: 0 4px 18px rgba(80, 55, 45, 0.035);
}

/* Remove bordas internas do tema */
accordion-custom .details {
  border: none !important;
}

/* Perguntas */
accordion-custom summary {
  padding: 20px 24px !important;
  font-size: 17px !important;
  line-height: 1.4 !important;
}

/* Respostas */
accordion-custom .details-content {
  padding: 0 24px 20px !important;
}

/* Celular */
@media screen and (max-width: 749px) {
  accordion-custom {
    max-width: 100% !important;
    margin-bottom: 12px !important;
  }

  accordion-custom summary {
    padding: 17px 18px !important;
    font-size: 16px !important;
  }
}

/* AuLado - Alinhamento das respostas do FAQ */

accordion-custom .details-content {
  padding: 0 24px 22px !important;
  text-align: left !important;
}

accordion-custom .details-content .text-block,
accordion-custom .details-content rte-formatter,
accordion-custom .details-content p {
  width: 100% !important;
  max-width: none !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* AuLado — título dinâmico acima da galeria no celular */

.aulado-mobile-product-title {
  display: none;
}

@media screen and (max-width: 749px) {
  .aulado-mobile-product-title {
    display: block;
    padding: 12px 16px 18px;
  }

  .aulado-mobile-product-title h1 {
    margin: 0;
    font-size: 24px;
    line-height: 1.25;
    font-weight: 500;
    color: #44352f;
    margin-bottom:10px !important;
    margin-top:30px !important;
    font-family: "DM Sans", sans-serif !important;
    width: 80% !important;
    vertical-align: middle !important;
    margin: 0 auto !important;
    display: flex !important;
  }

  /* Oculta o título original abaixo da imagem somente no celular */
.product-information__details .product-title,
.product-information__details [data-testid="product-title"] {
  display: none !important;
}
}


/* AuLado — ocultar o título original no mobile */
@media screen and (max-width: 749px) {
  .product-information .text-block:has(> h1) {
    display: none !important;
  }
}


/* AuLado — benefícios acima da imagem do produto */
.aulado-mobile-product-highlights {
  display: none;
}

@media screen and (max-width: 749px) {

  .aulado-mobile-product-highlights {
    display: block;
    padding: 0 16px 18px;
  }

  .aulado-mobile-product-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
  }

  .aulado-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 30px;
    padding: 7px 11px;
    font-size: 11px;
    line-height: 1.3;
    font-weight: 500;
  }

  .aulado-badge--rose {
    background: #f5ebe9;
    color: #7e6f67;
    border: solid 1px #e9c6c3;
    font-weight: bold;
  }

  .aulado-badge--green {
    background: #f1f1ed;
    color: #7e6f67;
    border: solid 1px #cedbce;
    font-weight: bold;
  }

  .aulado-mobile-product-preview {
    margin: 0;
    color: #614D47;
    font-size: 12px;
    line-height: 1.5;
  }
}


/* AuLado — refinamento do cabeçalho do produto no mobile */
@media screen and (max-width: 749px) {

  .aulado-mobile-product-title {
    text-align: center;
    padding: 18px 16px 10px;
  }

  .aulado-mobile-product-title h1 {
    font-size: 24px;
    line-height: 1.25;
    text-align: center;
  }

  .aulado-mobile-product-highlights {
    padding: 0 12px 14px;
    text-align: center;
  }

  .aulado-mobile-product-badges {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
  }

  .aulado-badge {
    font-size: 10px;
    padding: 6px 9px;
    white-space: nowrap;
  }

  .aulado-mobile-product-preview {
    text-align: center;
    font-size: 12px;
  }
}



/* AuLado - Aviso de prévia com borda tracejada */
@media screen and (max-width: 749px) {
  .aulado-mobile-product-preview {
    display: table;
    width: fit-content;
    max-width: 100%;
    margin: 0 auto;
    padding: 10px 16px;

    background-color: #eef2f0;
    color: #406454;

    border: 1px dashed #819383;
    outline: 1px solid #C5D9CB;
    outline-offset: 3px;
    border-radius: 50px;

    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
  }
}




#shopify-section-sections--23845202821397__footer_m9NzUG > div.section.section--page-width.color-custom-sections--23845202821397__footer_m9NzUG > div > div:nth-child(2) > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > accordion-custom{
  background: transparent !important;
  box-shadow: none !important;
}

#shopify-section-sections--23845202821397__footer_m9NzUG > div.section.section--page-width.color-custom-sections--23845202821397__footer_m9NzUG > div > div:nth-child(3) > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > accordion-custom{
  background: transparent !important;
  box-shadow: none !important;
}

#shopify-section-sections--23845202821397__footer_m9NzUG > div.section.section--page-width.color-custom-sections--23845202821397__footer_m9NzUG > div > div:nth-child(4) > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > accordion-custom{
  background: transparent !important;
  box-shadow: none !important;
}



/* AULADO - Header mobile refinado */
@media screen and (max-width: 749px) {

  /* Alinhamento e espaçamento geral */
  #header-component .header__columns {
    align-items: center !important;
    column-gap: 4px !important;
  }

  /* Ícones com tamanho e espessura uniformes */
  #header-component .header__icon svg,
  #header-component .header-actions svg,
  #header-component .search-action svg {
    width: 21px !important;
    height: 21px !important;
    stroke-width: 1.8px;
  }

  /* Área de toque confortável */
  #header-component .header-actions__action,
  #header-component .header__icon--menu {
    min-width: 40px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Mantém o logotipo centralizado */
  #header-component .header-logo {
    justify-self: center;
    min-width: 0;
  }

}


/* AULADO - Refinamento dos ícones mobile */
@media screen and (max-width: 749px) {

  /* Mantém os ícones finos */
  #header-component .header__icon svg,
  #header-component .header-actions svg,
  #header-component .search-action svg {
    stroke-width: 1.6px !important;
  }

  /* Distribuição dos ícones da direita */
  #header-component .header-actions {
    gap: 4px !important;
    align-items: center;
  }

  /* Mantém o logotipo no centro */
  #header-component .header-logo {
    justify-self: center;
  }
}





/* AULADO - Vitrine de produtos estilo Recordário */
@media screen and (min-width: 750px) {

  #shopify-section-template--23845202395413__product_list_fa6P9H
  .resource-list {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 24px 20px !important;
    width: 100% !important;
    max-width: 1000px !important;
    margin-inline: auto !important;
  }

  #shopify-section-template--23845202395413__product_list_fa6P9H
  .resource-list > * {
    flex: 0 0 230px !important;
    width: 230px !important;
    max-width: 230px !important;
    min-width: 0 !important;
  }
}


/* AULADO - Hover dos cards de produtos */

/* Estado normal */
#shopify-section-template--23845202395413__product_list_fa6P9H
.product-grid__card.product-grid__card {
  border: 1px solid #E0D9D1;
  border-radius: 16px;
  transition:
    border-color 0.3s ease,
    box-shadow 0.3s ease,
    transform 0.3s ease;
}

/* Ao passar o mouse */
@media (hover: hover) {
  #shopify-section-template--23845202395413__product_list_fa6P9H
  .product-grid__card.product-grid__card:hover {
    border-color: #C58F7D;
    box-shadow: 0 12px 28px rgba(68, 53, 47, 0.12);
    transform: translateY(-4px);
  }
}



/* AULADO - Como funciona: largura dos cards */
@media screen and (min-width: 750px) {

  #shopify-section-template--23845202395413__section_PNxVwG
  .custom-section-content {
    width: 100% !important;
    max-width: 1000px !important;
    margin-inline: auto !important;
  }

}


/* FUNDO MENU RODAPÉ */
#shopify-section-sections--23845202821397__footer_m9NzUG > div.section.section--page-width.color-custom-sections--23845202821397__footer_m9NzUG > div > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div:nth-child(9) > div.group-block-content.layout-panel-flex.layout-panel-flex--row.mobile-column > accordion-custom:nth-child(2){
  background: transparent !important;
}

#shopify-section-sections--23845202821397__footer_m9NzUG > div.section.section--page-width.color-custom-sections--23845202821397__footer_m9NzUG > div > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div:nth-child(9) > div.group-block-content.layout-panel-flex.layout-panel-flex--row.mobile-column > accordion-custom:nth-child(4){
  background: transparent !important;
}


/* PAGINA DO PRODUTO --------------------------------------------------- */



/* AULADO - H1 somente da página de produto */
body:has(product-price) .text-block > h1 {
  font-size: 36px !important;
  line-height: 1.15 !important;
  font-weight: bold !important;
}


/* AULADO - Título exclusivo do produto no mobile */
@media screen and (max-width: 749px) {
  .aulado-mobile-product-title h1 {
    font-size: 22px !important;
    line-height: 1.2 !important;
    font-weight: bold !important;
    margin-top: 20px !important;
  }
}


/* TAMANHO DAS MINIATURAS PÁGINA DO PRODUTO */
.slideshow-controls__thumbnails .slideshow-control{
  width: 100% !important;
}

/* PREÇO DO PRODUTO */
#ProductInformation-template--23845202526485__main > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column > div.group-block.group-block--height-fit.group-block--width-fill.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > product-price > div > span.price-item__group.price > bdi{
  font-weight: bold !important;
  color: #406454 !important
}

/* PREÇO RISCADO */
#ProductInformation-template--23845202526485__main > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column > div.group-block.group-block--height-fit.group-block--width-fill.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > product-price > div > span.price-item__group.price-item--regular.compare-at-price > bdi{
  opacity: 0.4 !important;
}

/* ETIQUETA DE FRETE GRÁTIS PÁGINA DO PRODUTO */
#ProductInformation-template--23845202526485__main > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column > div.group-block.group-block--height-fit.group-block--width-fill.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--column.mobile-column > div.group-block.group-block--height-fit.group-block--width-fit-content.border-style.spacing-style.size-style > div.group-block-content.layout-panel-flex.layout-panel-flex--row{
  
    
    max-width: 100%;
    margin: 0 auto;
    padding: 10px 16px;

    background-color: #eef2f0;
    color: #406454;

    border: 1px dashed #819383;
    outline: 1px solid #C5D9CB;
    outline-offset: 3px;
    border-radius: 50px;

    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
}


/* PERSONALIZE ABAIXO */
#ProductInformation-template--23845202526485__main > div > div.group-block-content.layout-panel-flex.layout-panel-flex--column > div:nth-child(4) > div.group-block-content.layout-panel-flex.layout-panel-flex--row{
  max-width: 100%;
    margin: 0 auto;
    padding: 10px 16px;

    background-color: #eef2f0;
    color: #406454;

    border: 1px dashed #819383;
    outline: 1px solid #C5D9CB;
    outline-offset: 3px;
    border-radius: 14px 14px 0px 0px;

    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
}


/* JUDGE -------------------------------------------------------------------- */


/* AuLado - Avaliações acima da imagem no mobile */
.aulado-mobile-product-reviews {
  display: none;
}

@media screen and (max-width: 749px) {
  .aulado-mobile-product-reviews {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
     margin: 22px 16px 0;
  }

  .aulado-mobile-product-reviews .jdgm-prev-badge {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 6px;
  }
}

/* AuLado - Ocultar avaliação duplicada no mobile */
@media screen and (max-width: 749px) {
  .shopify-block.jdgm-horizon-widget {
    display: none !important;
  }
}

/* AuLado - Cor das estrelas do Judge.me no mobile */
@media screen and (max-width: 749px) {
  .aulado-mobile-product-reviews .jdgm-star {
    color: #ff8837 !important;
  }
}

.jdgm-preview-badge .jdgm-star{
  color: #ff8837 !important
}


/* CUSTOMIX ------------------------------------------------------------ */



/* FUNDO CUSTOMIX */
.cm-bg-form-background{
  background: #f5f3ef !important;
  border: solid 1px #e0d9d1 !important;
  border-radius: 0px 0px 14px 14px !important;
}

/* TAMANHO E FONT CUSTOMIX */
.cm-leading-none{
  font-size: 16px !important;
   font-family: "DM Sans", sans-serif !important;
}

/* BLOCO INTEIRO DE CUSTOMIX */
.buy-buttons-block{
  margin-top: -20px !important;
}
