/** Shopify CDN: Minification failed

Line 656:0 Unexpected "}"

**/
@media screen and (max-width: 749px) {
  .grid--peek.slider .grid__item:first-of-type {
    margin-left: 16px;
  }

  /* Remove full-bleed negative-margin trick — items with width:100% overflowed the viewport */
  .product__media-wrapper slider-component:not(.thumbnail-slider--no-slide) {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .product__media-wrapper .product__media-list {
    margin-left: 0 !important;
    width: 100% !important;
  }
  .product__media-wrapper .grid--peek.slider .grid__item:first-of-type {
    margin-left: 0 !important;
  }
}

.c-page-width {
  max-width: 100vw;
  margin: 0 auto;
}
.product__media-icon,
.thumbnail__badge {
  display: none;
}

.product__media-item .grid__item {
  width: 100%;
}

.slider-buttons.quick-add-hidden {
  display: none;
}

.product__media-wrapper {
  .product__media-list .product__media-item  {
      margin-inline: auto !important;
      max-width: 100% !important;
      width: 100% !important;
  
  }
 .thumbnail-list.list-unstyled.slider.slider--mobile.slider--tablet-up {
  display: none;
 }
}

@media screen and (min-width: 990px) {
  /* gallery = flex row */
  .sola-clean-gallery {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 12px;
  }

  /* main viewer: fills remaining space */
  .sola-clean-gallery slider-component:not(.thumbnail-slider) {
    flex: 1;
    min-width: 0;
  }

  /* thumbnail panel: fixed width, left side, flex-col for nav buttons */
  .sola-clean-gallery .thumbnail-slider {
    order: -1;
    width: 96px;
    flex-shrink: 0;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 0;
    overflow: visible; /* mostra a lista sem cortar */
  }

  /* vertical scrollable thumbnail list */
  .sola-clean-gallery .thumbnail-list {
    display: flex !important;
    flex-direction: column !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    /* max-height definido dinamicamente pelo JS quando há > 4 imagens */
    gap: 6px;
    scroll-behavior: smooth;
    scrollbar-width: none;
    flex: 0 0 auto; /* não expande além do max-height injetado pelo JS */
    width: 100%;
  }

  .sola-clean-gallery .thumbnail-list::-webkit-scrollbar {
    display: none;
  }

  .sola-clean-gallery .thumbnail-list__item {
    width: 100%;
    flex-shrink: 0;
  }

  /* hide Dawn's original horizontal slider buttons */
  .sola-clean-gallery .thumbnail-slider > .slider-button {
    display: none !important;
  }

  /* ── Setas verticais ── fundo preto, seta branca (mesmo padrão do tema) ── */
  .sola-clean-gallery .thumb-vnav {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #000 !important;
    background-image: none !important;
    border: none !important;
    border-radius: 50%;
    cursor: pointer;
    color: #fff !important;
    flex-shrink: 0;
    padding: 0;
    box-shadow: 0 1px 4px rgba(0,0,0,0.20);
    transition: background 0.18s ease, opacity 0.18s ease;
    line-height: 0;
  }

  .sola-clean-gallery .thumb-vnav:hover:not(:disabled) {
    background: #333 !important;
  }

  .sola-clean-gallery .thumb-vnav:disabled {
    opacity: 0.25;
    cursor: default;
  }

  /* Centralizar seta: o Dawn define .svg-wrapper como 20×20px inline-flex.
     Sobrescrevemos para o tamanho certo dentro do botão circular de 32px. */
  .sola-clean-gallery .thumb-vnav .svg-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 16px !important;
    height: 16px !important;
    line-height: 0;
  }

  /* SVG do caret com stroke — espessura controlável
     !important: base.css faz .slider-button svg { display: none !important } */
  .sola-clean-gallery .thumb-vnav svg {
    display: block !important;
    width: 16px !important;
    height: auto !important;
    flex-shrink: 0;
    pointer-events: none;
    overflow: visible; /* garante que a stroke não seja cortada pela borda do SVG */
  }

  .sola-clean-gallery .thumb-vnav--up svg {
    transform: rotate(180deg);
  }

  .sola-clean-gallery .thumb-vnav--up {
    margin-bottom: 6px;
  }

  .sola-clean-gallery .thumb-vnav--down {
    margin-top: 6px;
  }
}

/* ────────────────────────────────────────────────────────
   Slider do Agrupamento de Produtos
   Botões ficam ao lado do label (top-right), grid ocupa 100%.
   ──────────────────────────────────────────────────────── */

/* Header row: label à esquerda, setas à direita */
.pops-grouping__section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
/* Não duplicar a margem do label quando está no header */
.pops-grouping__section-header .pops-grouping__label {
  margin-bottom: 0;
}

/* Dois botões lado a lado */
.pops-grouping__slider-controls {
  display: flex;
  gap: 6px;
  flex-shrink: 0;
}

/* Grid scrollável — ocupa 100% da largura */
.pops-grouping__grid--scroll {
  flex-wrap: nowrap !important;
  overflow-x: auto;
  overflow-y: visible;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  /* Reduz o gap de 3rem para 10px para caber 5 cards em 1 linha
     5 × 100px (card) + 4 × 10px (gap) = 540px */
  gap: 10px !important;
  max-width: calc(5 * 100px + 4 * 10px);
}
.pops-grouping__grid--scroll::-webkit-scrollbar { display: none; }
.pops-grouping__grid--scroll .pops-grouping__flavor-card {
  scroll-snap-align: start;
  flex-shrink: 0;
}

/* Espaço no topo do grid para o transform:scale(1.12) do card ativo
   não ser cortado pelo container pai */
.pops-grouping__grid--flavor {
  padding-top: 10px;
  /* Força 1 linha em TODOS os casos (override do flex-wrap:wrap do base.css) */
  flex-wrap: nowrap !important;
  gap: 10px !important;
  overflow-x: auto;
  scrollbar-width: none;
}
.pops-grouping__grid--flavor::-webkit-scrollbar { display: none; }

/* Botões nav: mesmo visual das thumb-vnav */
.pops-grouping__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: #000 !important;
  background-image: none !important;
  border: none !important;
  border-radius: 50%;
  cursor: pointer;
  color: #fff !important;
  flex-shrink: 0;
  padding: 0;
  line-height: 0;
  box-shadow: 0 1px 4px rgba(0,0,0,0.20);
  transition: background 0.18s ease, opacity 0.18s ease;
}
.pops-grouping__nav:hover:not(:disabled) { background: #333 !important; }
.pops-grouping__nav:disabled { opacity: 0.25; cursor: default; }

.pops-grouping__nav .svg-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  height: 16px !important;
  line-height: 0;
}

/* Caret padrão aponta para baixo:
   prev → esquerda (90deg), next → direita (-90deg) */
.pops-grouping__nav svg {
  display: block !important;
  width: 16px !important;
  height: auto !important;
  pointer-events: none;
  overflow: visible;
}
.pops-grouping__nav--prev svg { transform: rotate(90deg); }
.pops-grouping__nav--next svg { transform: rotate(-90deg); }

.product__media-item > * {
  border: none;
}

.product__media.media {
  border-radius: 32px;
  overflow: hidden;
}

.product-media-container.constrain-height.media-fit-contain {
  height: 100%;
}

.product-media-container .product__modal-opener {
  height: 100%;
}

.product-media-container.constrain-height .media {
  padding-top: 100%;
}

.product-media-container.constrain-height.media-fit-contain {
  width: 100%;
}

.product__title h1 {
  font-family: "Halenoir Compact", sans-serif;
  font-size: clamp(40px, 2.5vw, 22px);
  font-weight: 400;
  line-height: 120%;
  text-align: left;
  text-underline-position: from-font;
  text-decoration-skip-ink: none;
}

.shopify-payment-button {
  display: none;
}

.button:after {
  content: none;
}

.product-form__submit {
  border-radius: 8px;
}

.product-form__submit span {

  color: #ffffff; /* Cor do texto do botão */
  font-size: 16px;
  font-weight: 600;
  line-height: 20.8px;
  text-align: left;
  text-underline-position: from-font;
  text-decoration-skip-ink: none;
  text-transform: uppercase;
}

.infos {
  margin: 1rem 0 !important;
  display: none;
  /* display: flex; */
  gap: 1rem;
  align-items: center;
  justify-content: space-between;
  /* max-width: 44rem; */

  p.info {
    margin: 0;
    display: flex;
    gap: 1rem;
    align-items: center;

    span.info__icon {
      display: flex;
      align-items: center;
    }

    .info__text {
      font-family: "Halenoir Compact", sans-serif;
      color: #727376;
      font-size: 14px;
      font-weight: 400;
      line-height: 16.8px;
      text-align: left;
      text-underline-position: from-font;
      text-decoration-skip-ink: none;
    }
  }
}

.accordion .summary__title {
  display: flex;
  flex: 1;
  justify-content: space-between;

  .accordion__title {
    font-family: "Halenoir Compact", sans-serif;
    color: #000;
    font-size: 16px;
    font-weight: 600;
    line-height: 18.5px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
  }
}
.accordion summary {
  padding: 1.5rem;
}
.accordion .summary__title + .icon-caret {
  display: none;
}
.product__accordion:has([open]) .summary__title svg {
  transform: rotate(90deg);
}

.product__info-container > * + * {
  margin: 0;
}

.product__info-container {
  @media (max-width: 728px) {
    padding: 1rem;
  }
}

body .product-form__input .form__label,
body .shopify_subscriptions_app__title {
  padding-left: 0;
  font-family: "IBM Plex Mono";
  color: #000 !important;
  font-size: 14px;
  font-weight: 600;
  line-height: 14.4px;
  letter-spacing: 0.02em;
  text-align: left;
  text-underline-position: from-font;
  text-decoration-skip-ink: none;
  text-transform: uppercase;
  margin-bottom: 8px;
}

#appstle_subscription_widget0 .appstle_radio_label {
  margin: 0.5rem 0 0 0;
  border-color: #000;
}

.appstle_subscribe_save_text,
.appstle_one_time_text {
  padding-left: 0;
  font-family: "IBM Plex Mono";
  color: #000 !important;
  font-size: 14px;
  font-weight: 600;
  line-height: 14.4px;
  letter-spacing: 0.02em;
  text-align: left;
  text-underline-position: from-font;
  text-decoration-skip-ink: none;
  text-transform: uppercase;
}

span.appstle_subscription_amount.transcy-money {
  font-family: "Halenoir Compact", sans-serif;
  font-size: 14px;
  color: #000;
  font-weight: 600;
  line-height: 16.8px;
  letter-spacing: 0.02em;
  text-align: left;
  text-underline-position: from-font;
  text-decoration-skip-ink: none;
  display: inline-block;
  position: relative;
  margin: 0;
}

span.appstle_subscription_compare_amount.transcy-money {
  font-family: "Halenoir Compact", sans-serif;
  font-size: 14px;
  color: #8b8b8b !important;
  display: inline-block;
  position: relative;
  margin: 0;
  font-weight: 400;
  line-height: 15.6px;
  text-align: left;
  text-decoration-line: line-through;
  text-underline-position: from-font;
  text-decoration-skip-ink: none;
}

fieldset.js.product-form__input.product-form__input--pill {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.shopify_subscriptions_app_block_label label {
  font-family: "Halenoir Compact", sans-serif;
  font-size: 14px;
  color: #000;
  font-weight: 600;
  line-height: 16.8px;
  letter-spacing: 0.02em;
  text-align: left;
  text-underline-position: from-font;
  text-decoration-skip-ink: none;
  display: inline-block;
  position: relative;
  margin: 0;
}

body .product-form__input--pill label {
  margin: 0;
  border: 1px solid #1d234c;
  border-radius: 0;
  padding: 15px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;

  .input-wrapper {
    display: flex;
    align-items: center;
    gap: 1rem;

    p {
      font-family: "Halenoir Compact", sans-serif;
      font-size: 14px;
      color: #3c4581;
      font-weight: 600;
      line-height: 16.8px;
      letter-spacing: 0.02em;
      text-align: left;
      text-underline-position: from-font;
      text-decoration-skip-ink: none;
      display: inline-block;
      position: relative;
      margin: 0;
    }
  }
  p {
    font-family: "Halenoir Compact", sans-serif;
    font-size: 14px;
    color: #3c4581;
    font-weight: 600;
    line-height: 16.8px;
    letter-spacing: 0.02em;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    display: inline-block;
    position: relative;
    margin: 0;
  }
}

.shopify_subscriptions_in_widget_price {
  font-family: "Halenoir Compact", sans-serif;
  font-size: 14px;
  color: #3c4581;
  font-weight: 600;
  line-height: 16.8px;
  letter-spacing: 0.02em;
  text-align: left;
  text-underline-position: from-font;
  text-decoration-skip-ink: none;
  display: inline-block;
  position: relative;
  margin: 0;
}

/* Estilo para o primeiro elemento */
body .product-form__input--pill label:first-of-type {
  border-radius: 10px 10px 0 0;
  border-bottom: 0;
}

/* Estilo para o último elemento */
body .product-form__input--pill label:last-of-type {
  border-radius: 0 0 10px 10px;
  border-top: 0;
}

/* Remove bordas externas dos elementos do meio */
body .product-form__input--pill label:not(:first-of-type):not(:last-of-type) {
  border-radius: 0;
  border-left: 1px solid #1d234c;
  border-right: 1px solid #1d234c;
}

.appstle-active-option {
  background-color: #8088de46 !important;
}
/* Usar um pseudo-elemento para estilizar o label baseado no estado do input */
body .product-form__input--pill label:has(input[type="radio"]:checked) {
  background-color: #8088de46;
  /* border-color: #8088de61; */

  /* .input-wrapper{
        p{
            color: #fff;
        }
    }
    p{
        color: #fff;
    }  */

  .custom-radio::after {
    content: "";
    width: 10px;
    height: 10px;
    background-color: #3c4581;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

/* Estilo para o input dentro do label */
body .product-form__input--pill label input[type="radio"] {
  clip: unset;
  position: relative;
  height: unset;
  width: unset;
  overflow: unset;
  margin: 0;
  display: none;
}

.custom-radio {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid #1d234c;
  display: inline-block;
  position: relative;
  background-color: #fff;
}

.shopify_subscriptions_app_block {
  /* max-width: 44rem; */
}

@media screen and (min-width: 749px) {
  .product__media-list {
    display: grid;
    /*
        grid-template-columns: repeat(5,minmax(0,1fr));
        grid-template-rows: repeat(2,minmax(0,1fr));
        */

    .product__media-item {
      width: 100% !important;

      &.impar--1 {
        grid-column: 1 / 4;
        grid-row: 1 / 2;
      }
      /* &.par--2 {
        grid-column: 4 / 6;
        grid-row: 1 / 2; */
      }
      &.impar--3 {
        grid-column: 1 / 3;
        grid-row: 2 / 3;
      }
      &.par--4 {
        grid-column: 3 / 6;
        grid-row: 2 / 3;
      }
    }

    .product-media-container.constrain-height .media {
      padding-top: 100%;
      height: 100%;
    }
  }

  body .product--stacked .product__media-item {
    max-width: unset;
  }
}
