:root[theme='rounded'] {
  --ui-radius-button: 0.25rem;
  --ui-radius-surface: 0.25rem;
  --ui-radius-modal: 0.25rem;
  --ui-radius-utility: 0.25rem;
  --ui-radius-cookie-notice: 0.25rem;
}

:root[theme='circle'] {
  --ui-radius-button: 1rem;
  --ui-radius-surface: 1rem;
  --ui-radius-modal: 1rem;
  --ui-radius-utility: 1rem;
  --ui-radius-cookie-notice: 0.625rem;
}

/* DEV-638: as --fs-* agora sao declaradas em page/html/head.phtml, para valerem
   no primeiro paint. Ajustar a escala e la. */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden] {
  display: none;
}

html {
  font-family: sans-serif;
  text-size-adjust: 100%;
}

body {
  margin: 0;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

dfn {
  font-style: italic;
}

mark {
  background: oklch(96.8% 0.21 110);
  color: oklch(0% 0 0);
}

code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

q {
  quotes: '\201C' '\201D' '\2018' '\2019';
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 0;
}

fieldset {
  border: 1px solid oklch(80.8% 0 0);
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0;
}

button,
html input[type='button'],
input[type='reset'],
input[type='submit'] {
  appearance: auto;
  cursor: pointer;
}

button[disabled],
input[disabled] {
  cursor: default;
}

input[type='checkbox'],
input[type='radio'] {
  box-sizing: border-box;
  padding: 0;
}

input[type='search'] {
  appearance: textfield;
  box-sizing: content-box;
}

input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-decoration {
  appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  -webkit-tap-highlight-color: oklch(0% 0 0 / 0%);
  text-size-adjust: 100%;
}

html,
body,
img,
fieldset,
abbr,
acronym {
  border: 0;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

q::before,
q::after {
  content: '';
}

input:focus,
input[type='search']:focus {
  outline-offset: -2px;
}

input[type='search'] {
  appearance: none;
  box-sizing: border-box;
}

a,
button {
  touch-action: manipulation;
}

a {
  text-decoration: none;
}

.address-list address {
  margin-bottom: 1em;
}

.availability {
  font-size: var(--size-13);
  font-weight: 600;
  margin-bottom: 0;
}

.availability .label {
  display: none;
}

.availability.available-soon,
.availability.out-of-stock {
  color: oklch(58.2% 0.22 31.4);
}

.availability-only {
  color: oklch(58.2% 0.22 31.4);
  margin-bottom: 10px;
}

.block-title small {
  color: oklch(70.6% 0 0);
  font-size: 100%;
  font-weight: normal;
}

.block-content.unpad {
  padding: 0;
}

.block-content li.item {
  margin: 0 0 10px 9px;
}

.block-content li.item:last-child {
  margin-bottom: 0;
}

.block .actions::after {
  clear: both;
  content: '';
  display: table;
}

.block .actions .button {
  float: right;
}

.col-left .block .actions .button ~ a,
.col-right .block .actions .button ~ a {
  line-height: 33px;
  margin-right: 5px;
}

.button.disabled,
.button:disabled {
  background: oklch(83.3% 0 0);
  cursor: not-allowed;
  opacity: 0.6;
}

@media only screen and (width <= 770px) {
  .col2-set .buttons-set .button,
  .col2-set .buttons-set .button2 {
    float: none;
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }

  .col2-set .buttons-set .back-link {
    display: none;
  }

  .col2-set .buttons-set .required {
    display: none;
  }
}

@media only screen and (width <= 479px) {
  .buttons-set .required {
    display: none;
  }
}

.buttons-set::after {
  clear: both;
  content: '';
  display: table;
}

.btn-remove2 {
  background-position: 4px -648px;
  border: none;
  vertical-align: top;
}

.btn-remove2::after {
  display: none;
}

.btn-remove2:hover {
  background-color: transparent;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
}

.btn-previous::after {
  border-bottom: 4px solid transparent;
  border-left: none;
  border-right: 4px solid oklch(64.8% 0.12 235);
  border-top: 4px solid transparent;
  content: '';
  display: block;
  height: 0;
  left: 50%;
  margin-left: -2px;
  margin-top: -4px;
  position: absolute;
  top: 50%;
  width: 0;
}

.btn-previous:hover::after {
  border-bottom: 4px solid transparent;
  border-left: none;
  border-right: 4px solid white;
  border-top: 4px solid transparent;
  content: '';
  display: block;
  height: 0;
  position: absolute;
  width: 0;
}

.checkout-agreements li {
  margin-bottom: 20px;
}

.checkout-agreements .agreement-content {
  background: oklch(96.7% 0 0);
  border: 1px solid oklch(84.5% 0 0);
  margin-bottom: 10px;
  max-height: 125px;
  max-width: 670px;
  overflow-y: auto;
  padding: 10px;
}

.cvv-what-is-this {
  font-size: var(--size-13);
  line-height: 24px;
  margin-left: 10px;
}

.footer-container {
  padding-top: 0;
}

.global-site-notice {
  font-size: 11px;
  font-weight: bold;
  text-align: center;
}

.global-site-notice p {
  color: oklch(100% 0 0);
  font-weight: 100;
  margin-bottom: 0;
}

.promo-msg {
  color: oklch(64.8% 0.12 235);
  margin: 10px;
  text-align: center;
  text-transform: uppercase;
}

.success {
  color: oklch(66.8% 0.23 142);
}

.error {
  color: oklch(58.2% 0.22 31.4);
  font-weight: bold;
}

.notice {
  color: oklch(65.4% 0.18 48.5);
  float: left;
  font-weight: bold;
  margin: 0;
  width: 100%;
}

.page-popup {
  background: oklch(100% 0 0);
  height: auto;
  padding: 20px;
}

.page-popup h1 {
  font-size: 36px;
  margin: 0 0 0.5em;
}

.payment-methods {
  margin-bottom: 20px;
}

.payment-methods dt {
  padding: 5px 0;
}

.payment-methods dd {
  padding-top: 10px;
}

.payment-methods .form-list {
  background: oklch(96.7% 0 0);
  border: 1px solid oklch(84.5% 0 0);
  display: inline-block;
  margin: 5px 15px 15px;
  max-width: 100%;
  padding: 15px;
  position: relative;
}

.payment-methods .form-list::before {
  border-bottom: 10px solid oklch(84.5% 0 0);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: none;
  content: '';
  display: block;
  height: 0;
  left: 30px;
  position: absolute;
  top: -11px;
  width: 0;
}

.payment-methods .form-list::after {
  border-bottom: 10px solid oklch(96.7% 0 0);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: none;
  content: '';
  display: block;
  height: 0;
  left: 30px;
  position: absolute;
  top: -10px;
  width: 0;
}

.payment-methods .form-list li:last-child {
  margin-bottom: 0;
}

.price-box .minimal-price-link {
  color: oklch(64.8% 0.12 235);
  display: block;
  padding-left: 1em;
}

.price-box .minimal-price-link .label {
  color: oklch(70.6% 0 0);
}

.price-box .old-price .price-label,
.price-box .special-price .price-label,
.price-box.bundle .price-from .price-label,
.price-box.bundle .price-to .price-label {
  display: none;
}

.price-box .price-excluding-tax,
.price-box .price-including-tax {
  display: block;
}

span.weee {
  display: block;
}

.truncated,
.truncated a.dots {
  cursor: help;
}

.truncated a.details {
  cursor: help;
  height: 16px;
  line-height: 16px;
}

.truncated a.details:hover {
  text-decoration: none;
}

.truncated .truncated_full_value {
  position: relative;
  z-index: 300;
}

.truncated .truncated_full_value .item-options {
  background-color: oklch(97.3% 0 0);
  border: 1px solid oklch(64.8% 0.12 235);
  display: none;
  left: -100px;
  padding: 8px;
  position: absolute;
  top: 21px;
  width: 200px;
  z-index: 300;
}

.truncated .truncated_full_value .item-options::after {
  border-bottom: 7px solid oklch(64.8% 0.12 235);
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: none;
  content: '';
  display: block;
  height: 0;
  left: 97px;
  position: absolute;
  top: -7px;
  width: 0;
}

.truncated .truncated_full_value .item-options > p {
  font-weight: bold;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.truncated .show .item-options {
  display: block;
}

@media only screen and (width <= 479px) {
  .truncated {
    cursor: inherit;
  }

  .truncated a.details {
    display: none;
  }

  .truncated .truncated_full_value .item-options {
    background-color: transparent;
    border: none;
    display: block;
    position: static;
    width: 100%;
    z-index: 1;
  }

  .truncated .truncated_full_value .item-options p {
    float: none;
  }

  .truncated .truncated_full_value .item-options::after {
    display: none;
  }
}

.page-print {
  background: oklch(100% 0 0);
  margin: 20px;
  width: 6.5in;
}

.add-to-links {
  margin: 7px 0;
}

.add-to-links a {
  display: inline-block;
  padding: 0 3px 3px;
}

.add-to-links .separator {
  display: none;
}

.std ol {
  list-style: decimal outside;
  margin-bottom: 1.5em;
}

.std ol li {
  margin-left: 2em;
}

.std .note {
  color: oklch(70.6% 0 0);
  font-size: var(--size-13);
}

#checkout-review-table .summary-collapse,
#shopping-cart-totals-table .summary-collapse,
body.customer-account .data-table .summary-collapse {
  cursor: pointer;
  position: relative;
}

#checkout-review-table .summary-collapse::before,
#shopping-cart-totals-table .summary-collapse::before,
body.customer-account .data-table .summary-collapse::before {
  border-bottom: none;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid oklch(64.8% 0.12 235);
  content: '';
  display: block;
  display: inline-block;
  height: 0;
  margin-right: 5px;
  position: absolute;
  position: static;
  width: 0;
}

#checkout-review-table .summary-collapse:hover::before,
#shopping-cart-totals-table .summary-collapse:hover::before,
body.customer-account .data-table .summary-collapse:hover::before {
  border-bottom: none;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid oklch(50.1% 0.09 235);
  content: '';
  display: block;
  display: inline-block;
  height: 0;
  margin-right: 5px;
  position: absolute;
  position: static;
  width: 0;
}

#checkout-review-table .show-details .summary-collapse::before,
#shopping-cart-totals-table .show-details .summary-collapse::before,
body.customer-account .data-table .show-details .summary-collapse::before {
  border-bottom: 7px solid oklch(64.8% 0.12 235);
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: none;
  content: '';
  display: block;
  display: inline-block;
  height: 0;
  margin-right: 5px;
  position: absolute;
  position: static;
  width: 0;
}

#checkout-review-table .show-details .summary-collapse:hover::before,
#shopping-cart-totals-table .show-details .summary-collapse:hover::before,
body.customer-account .data-table .show-details .summary-collapse:hover::before {
  border-bottom: 7px solid oklch(50.1% 0.09 235);
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: none;
  content: '';
  display: block;
  display: inline-block;
  height: 0;
  margin-right: 5px;
  position: absolute;
  position: static;
  width: 0;
}

#shopping-cart-totals-table tfoot td .summary-collapse::before,
#shopping-cart-totals-table tfoot td .summary-collapse:hover::before {
  margin-bottom: 5px;
}

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

.no-display {
  display: none !important;
}

.width-full {
  width: 100%;
}

.hidden {
  display: none;
}

.page-print .print-head {
  margin: 0 0 15px;
}

.page-print .print-head .logo {
  float: none;
  max-height: 50px;
  width: auto;
}

.fieldset + .fieldset {
  margin-top: 5px;
}

.input-box::after {
  clear: both;
  content: '';
  display: table;
}

li.centinel-logos div.input-box img {
  display: inline;
  vertical-align: middle;
}

.input-box .v-fix {
  float: left;
  margin-right: 5px;
  max-width: 100%;
}

label.required em,
span.required em {
  display: none;
}

.input-hint {
  color: oklch(70.6% 0 0);
  font-size: var(--size-12);
}

select {
  font-size: var(--size-14);
}

select + select {
  margin-left: 5px;
}

textarea {
  box-sizing: border-box;
  padding: 5px;
  width: 100%;
}

.ie8 .input-text {
  max-width: none;
}

::input-placeholder {
  color: oklch(70.6% 0 0);
}

input:placeholder {
  color: oklch(70.6% 0 0);
}

.form-list .input-range .input-text {
  width: 74px;
}

.form-list .control div.input-box,
.sp-methods dt div.input-box,
#checkout-shipping-method-load .sp-methods dd div.input-box,
#co-shipping-method-form .sp-methods dd div.input-box,
.product-options ul.options-list div.input-box {
  display: inline;
  float: left;
}

.form-list .control div.input-box::after,
.sp-methods dt div.input-box::after,
#checkout-shipping-method-load .sp-methods dd div.input-box::after,
#co-shipping-method-form .sp-methods dd div.input-box::after,
.product-options ul.options-list div.input-box::after {
  display: none;
}

.form-list .control input.radio,
.form-list .control input.checkbox,
.sp-methods dt input.radio,
.sp-methods dt input.checkbox,
#checkout-shipping-method-load .sp-methods dd input.radio,
#checkout-shipping-method-load .sp-methods dd input.checkbox,
#co-shipping-method-form .sp-methods dd input.radio,
#co-shipping-method-form .sp-methods dd input.checkbox,
.product-options ul.options-list input.radio,
.product-options ul.options-list input.checkbox {
  float: left;
  margin-left: 15px;
  margin-right: -40px;
  margin-top: 10px;
}

.form-list .control .no-display + label,
.sp-methods dt .no-display + label,
#checkout-shipping-method-load .sp-methods dd .no-display + label,
#co-shipping-method-form .sp-methods dd .no-display + label,
.product-options ul.options-list .no-display + label {
  background-color: transparent;
  padding-left: 10px;
}

.form-list .control .no-display + label:hover,
.sp-methods dt .no-display + label:hover,
#checkout-shipping-method-load .sp-methods dd .no-display + label:hover,
#co-shipping-method-form .sp-methods dd .no-display + label:hover,
.product-options ul.options-list .no-display + label:hover {
  background-color: transparent;
}

.form-list .control.remember-me-box label {
  max-width: none;
  min-width: inherit;
  width: auto;
}

.form-list .control {
  margin-top: 10px;
}

.form-list .control label {
  float: none;
}

.form-list .control .radio,
.form-list .control .checkbox {
  margin-right: 6px;
}

.form-list .control .input-box {
  clear: none;
  display: inline-block;
  padding: 0;
  width: auto;
}

.hide-th {
  text-indent: -9999px;
}

.info-box {
  border: 1px solid silver;
  margin: 0 0 15px;
  padding: 12px 15px;
}

.info-box h2 {
  font-size: var(--size-13);
  font-weight: bold;
}

.info-table th,
.info-table td {
  vertical-align: top;
}

.info-table th {
  font-weight: bold;
  padding: 4px 20px 4px 0;
}

.info-table td {
  padding: 4px 0;
}

.zebra-table tr:first-child,
.zebra-table th:first-child {
  border-top: 1px solid silver;
}

.zebra-table td,
.zebra-table th {
  background-color: transparent;
  border-bottom: 1px solid silver;
  padding: 6px;
}

.zebra-table tr {
  background-color: oklch(94.7% 0 17.2);
}

.zebra-table tr:nth-child(odd) {
  background-color: oklch(97.6% 0 84.6);
}

@media only screen and (width <= 479px) {
  .linearize-table tr,
  .linearize-table th,
  .linearize-table td {
    display: block;
  }

  .linearize-table thead th {
    border-left: 0;
    border-right: 0;
  }

  .linearize-table tbody td {
    border-bottom: 0;
    border-right: 0;
    padding: 0 10px 4px;
  }

  .linearize-table .linearize-hide {
    display: none;
  }

  .linearize-table .linearize-unpad {
    padding: 0;
  }

  .linearize-table .linearize-show {
    display: block;
  }
}

@media only screen and (width <= 599px) {
  .linearize-table-large tr,
  .linearize-table-large th,
  .linearize-table-large td {
    display: block;
  }

  .linearize-table-large thead th {
    border-left: 0;
    border-right: 0;
  }

  .linearize-table-large thead th.lin-hide {
    display: none;
  }

  .linearize-table-large thead th:nth-child(1n + 2) {
    display: none;
  }

  .linearize-table-large tbody tr {
    border-bottom: 1px solid oklch(84.5% 0 0);
    position: relative;
  }

  .linearize-table-large tbody td {
    border-bottom: 0;
    border-right: 0;
    padding: 0 10px 4px;
  }

  .linearize-table-large tbody td.lin-hide {
    display: none;
  }

  .linearize-table-large tbody td:first-child {
    padding-top: 10px;
  }

  .linearize-table-large tbody td:first-child,
  .linearize-table-large tbody td:first-child h3 {
    font-weight: bold;
  }

  .linearize-table-large tbody td[data-rwd-label] {
    padding-left: 30px;
    text-align: left;
  }

  .linearize-table-large tbody td[data-rwd-label]::before {
    content: attr(data-rwd-label) ':';
    font-size: var(--size-12);
    padding-right: 5px;
    text-transform: uppercase;
  }

  .linearize-table-large tfoot tr {
    display: block;
    text-align: right;
  }

  .linearize-table-large tfoot tr::after {
    clear: both;
    content: '';
    display: table;
  }

  .linearize-table-large tfoot td {
    display: block;
    float: left;
  }

  .linearize-table-large tfoot td.lin-hide {
    display: none;
  }

  .linearize-table-large tfoot td:nth-child(odd) {
    clear: left;
    width: 60%;
  }

  .linearize-table-large tfoot td:nth-child(even) {
    text-align: left;
    width: 40%;
  }

  .linearize-table-large .linearize-hide {
    display: none;
  }

  .linearize-table-large .linearize-unpad {
    padding: 0;
  }

  .linearize-table-large .linearize-show {
    display: block;
  }
}

@media only screen and (width >= 600px) {
  .linearize-table .linearize-collapse {
    display: none;
  }
}

html,
body {
  height: 100%;
}

@media only screen and (width >= 771px) {
  .page-header {
    margin: 0 auto;
    max-width: 1260px;
    padding: 0 30px;
  }

  .page-header-container {
    position: relative;
  }
}

.header-language-background {
  background-color: oklch(64.8% 0.12 235);
  padding: 10px;
  text-transform: uppercase;
}

.header-language-background .header-language-container {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
}

.header-language-background::after {
  clear: both;
  content: '';
  display: table;
}

.header-language-background .form-language,
.header-language-background .currency-switcher {
  float: left;
  margin-right: 10px;
}

.header-language-background .welcome-msg {
  float: right;
}

.page-header-container .store-language-container {
  float: right;
  max-width: 35%;
  padding: 13px 15px 10px 10px;
}

.page-header-container .store-language-container label {
  display: none;
}

.page-header-container .store-language-container select {
  max-width: 100%;
}

@media only screen and (width <= 479px) {
  .page-header-container .store-language-container {
    padding-top: 8px;
  }

  .page-header-container .store-language-container select {
    font-size: var(--size-12);
  }
}

.header-language-background,
.header-language-background a {
  color: oklch(92.5% 0 0);
}

@media only screen and (width <= 770px) {
  .header-language-background {
    display: none;
  }
}

.logo img {
  max-width: 100%;
}

.skip-links {
  clear: both;
  overflow: hidden;
}

@media only screen and (width >= 771px) {
  .skip-links {
    border: 0;
  }
}

.skip-link {
  background: oklch(100% 0 0);
  color: oklch(50% 0 0);
  float: left;
  height: 44px;
  line-height: 42px;
  position: relative;
  text-align: center;
  width: 20%;
}

a.skip-link {
  text-decoration: none;
}

.skip-link:not(.skip-active):hover {
  opacity: 0.8;
}

@media only screen and (width >= 500px) {
  .skip-link {
    width: 25%;
  }
}

@media only screen and (width <= 770px) {
  .skip-link.skip-active {
    background: oklch(94.6% 0 0);
    color: inherit;
  }

  .skip-link.skip-active span {
    color: inherit;
  }
}

.skip-link .icon {
  display: inline-block;
  height: 30px;
  vertical-align: middle;
  width: 30px;
}

.skip-link.skip-nav .icon,
.skip-link.skip-cart:not(.no-count) .icon {
  margin-right: 3px;
}

@media only screen and (width >= 500px) {
  .skip-link .icon {
    margin-right: 3px;
  }
}

.skip-link .label {
  display: none;
}

@media only screen and (width >= 500px) {
  .skip-link .label {
    display: inline;
  }
}

.skip-content {
  display: none;
}

.skip-content.skip-active {
  background: oklch(94.6% 0 0);
  display: block;
}

@media only screen and (width <= 770px) {
  #header-account li a,
  .nav-primary a.level0 {
    border-bottom: 1px solid oklch(84.5% 0 0);
    color: oklch(50% 0 0);
    line-height: 30px;
    padding: 0 15px 0 25px;
    text-align: left;
    text-transform: uppercase;
  }

  #header-account li:last-child a,
  .nav-primary li.level0:last-child a.level0 {
    border-bottom: 0;
  }

  .no-touch #header-account a:hover,
  .no-touch .nav-primary a:hover {
    background-color: oklch(96.7% 0 0);
    text-decoration: none;
  }
}

.account-cart-wrapper {
  position: absolute;
  right: 0;
  top: 0;
}

@media only screen and (width <= 770px) {
  .account-cart-wrapper {
    position: static;
  }
}

.skip-nav {
  width: 40%;
}

.skip-nav:not(.skip-active):hover {
  text-decoration: none;
}

.skip-nav:not(.skip-active):hover .icon {
  background-position: -46px 4px;
}

.skip-nav .label {
  display: inline;
}

.skip-nav .icon {
  background-position: 4px 4px;
}

@media only screen and (width >= 500px) {
  .skip-nav {
    width: 25%;
  }
}

@media only screen and (width >= 771px) {
  .skip-nav {
    display: none;
  }
}

@media only screen and (width >= 771px) {
  .nav-primary {
    display: block;
    margin-top: 15px;
  }
}

.nav-primary a {
  color: oklch(50% 0 0);
  display: block;
  line-height: 30px;
  position: relative;
  text-decoration: none;
}

.nav-primary li {
  position: relative;
}

.nav-primary li.level1 a {
  border-bottom: 1px solid oklch(84.5% 0 0);
}

.nav-primary .menu-active > ul.level0,
.nav-primary li.level0 li.sub-menu-active > ul {
  display: block;
}

.nav-primary li.level0 > a {
  text-transform: uppercase;
}

@media only screen and (width <= 770px) {
  .nav-primary a.level0,
  .nav-primary a {
    line-height: 35px;
  }

  .nav-primary li.level0 ul {
    display: none;
  }

  .nav-primary li.level0 li {
    padding: 0 0 0 25px;
  }

  .nav-primary li.level1 a {
    padding: 0 15px 0 25px;
  }

  .nav-primary li.parent > a::after {
    border-bottom: 5px solid transparent;
    border-left: 5px solid oklch(84.5% 0 0);
    border-right: none;
    border-top: 5px solid transparent;
    content: '';
    display: block;
    height: 0;
    left: 10px;
    margin-top: -5px;
    position: absolute;
    right: auto;
    top: 50%;
    width: 0;
  }

  .nav-primary li.parent.sub-menu-active > a::after,
  .nav-primary li.parent.menu-active > a::after {
    border-bottom: none;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid oklch(84.5% 0 0);
    content: '';
    display: block;
    height: 0;
    left: 10px;
    margin-top: -5px;
    position: absolute;
    right: auto;
    top: 50%;
    width: 0;
  }

  .nav-primary li.menu-active > a,
  .nav-primary li.sub-menu-active > a {
    color: oklch(64.8% 0.12 235);
  }
}

@media only screen and (width >= 771px) {
  .nav-primary a.level0 {
    padding: 0 25px;
  }

  .nav-primary li.level0,
  .nav-primary a.level0 {
    display: inline-block;
  }

  .nav-primary li:last-child > a {
    border-bottom: none;
  }

  .nav-primary a:hover,
  .nav-primary li:hover > a {
    color: oklch(64.8% 0.12 235);
  }

  .nav-primary .menu-active {
    z-index: 200;
  }

  .nav-primary li.level0 ul {
    background: oklch(98.8% 0 0);
    border: solid 1px oklch(84.5% 0 0);
    display: none;
    left: 0;
    padding-left: 10px;
    padding-right: 10px;
    position: absolute;
    top: 30px;
    width: 250px;
    z-index: 10;
  }

  .nav-primary li.level1 ul {
    left: 60px;
    top: 15px;
  }

  .nav-primary li.level0 ul.level0.position-test {
    display: block;
  }

  .nav-primary li.level0 ul.level0.spill {
    left: auto;
    right: 0;
  }

  .nav-primary li.level0 ul.level0.spill li.level1 ul {
    left: auto;
    right: 50px;
    top: 20px;
  }

  .nav-primary li.level0 li.parent > a {
    position: relative;
  }

  .nav-primary li.level0 li.parent > a::after {
    border-bottom: 4px solid transparent;
    border-left: 4px solid oklch(84.5% 0 0);
    border-right: none;
    border-top: 4px solid transparent;
    content: '';
    display: block;
    height: 0;
    margin-top: -3px;
    position: absolute;
    right: 5px;
    top: 50%;
    width: 0;
  }
}

.nav-primary li.menu-active > ul {
  display: block;
}

.skip-search:not(.skip-active):hover .icon {
  background-position: -46px -146px;
}

.skip-search .icon {
  background-position: 4px -146px;
}

@media only screen and (width >= 771px) {
  .skip-search {
    display: none;
  }
}

.skip-account:not(.skip-active):hover .icon {
  background-position: -46px -44px;
}

.skip-account .icon {
  background-position: 4px -44px;
}

@media only screen and (width >= 771px) {
  .skip-account {
    display: inline-block;
    float: none;
    padding: 0 10px;
    text-transform: uppercase;
    vertical-align: top;
    width: auto;
  }

  #header-account.skip-active {
    background: oklch(98.8% 0 0);
    border: solid 1px oklch(84.5% 0 0);
    display: block;
    position: absolute;
    right: 115px;
    top: 40px;
    width: 200px;
    z-index: 200;
  }

  #header-account a {
    color: oklch(50% 0 0);
    display: block;
    line-height: 2;
    padding: 5px 10px;
  }

  #header-account a:hover {
    color: oklch(64.8% 0.12 235);
  }
}

#header-account {
  padding: 5px 0;
}

#header-account a {
  display: block;
  line-height: 23px;
  padding: 5px 10px;
  position: relative;
  text-align: center;
}

#header-account a:hover {
  color: oklch(64.8% 0.12 235);
}

.products-list .action .button,
.products-grid .actions .button {
  white-space: normal;
}

.products-grid::after {
  clear: both;
  content: '';
  display: table;
}

.products-grid > li::after {
  clear: both;
  content: '';
  display: table;
}

.products-grid .product-image img:hidden {
  display: none;
}

.widget-new-products .products-grid .product-image {
  margin-bottom: 15px;
  margin-left: 10%;
  width: 75%;
}

.products-grid .product-info {
  padding-bottom: 95px;
  position: relative;
}

.products-grid .actions {
  bottom: 0;
  min-height: 85px;
  padding-top: 10px;
  position: absolute;
  width: 100%;
}

.products-grid .ratings .rating-box {
  margin: 0 auto;
}

.products-grid .ratings .amount {
  display: none;
}

.products-grid .add-to-links {
  margin-bottom: 0;
}

.products-grid .product-image::before,
.products-grid .product-image::after {
  content: '';
  display: none;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.products-grid .product-image::before {
  background-color: white;
  opacity: 0.8;
  z-index: 2;
}

.products-grid .product-image.loading {
  position: relative;
}

.products-grid .product-image.loading::before,
.products-grid .product-image.loading::after {
  display: block;
}

.mini-products-list .product-image {
  float: left;
  min-width: 50px;
}

.mini-products-list .product-details {
  margin-left: 15px;
}

.mini-products-list li {
  clear: both;
  margin-bottom: 10px;
}

.mini-products-list li::after {
  clear: both;
  content: '';
  display: table;
}

.mini-products-images-list::after {
  clear: both;
  content: '';
  display: table;
}

.mini-products-images-list li.item {
  float: left;
  margin: 0;
  padding: 0 5px 10px 0;
  width: 50%;
}

.mini-products-images-list li.item:nth-child(even) {
  padding-left: 5px;
  padding-right: 0;
}

.mini-products-images-list li.item .product-image {
  display: block;
}

.mini-products-images-list li.item .product-image img {
  max-width: 100%;
  width: 100%;
}

.mini-products-list .product-details .product-name a {
  font-weight: 600;
}

.category-image img {
  max-width: 100%;
  width: 100%;
}

.category-image img:hidden {
  display: none;
}

.block-layered-nav .block-content .toggle-tabs {
  display: none;
}

.block-layered-nav .block-content > dl > dd:last-child {
  border-width: 0 1px 1px;
}

@media only screen and (width >= 771px) {
  .block-layered-nav .block-content > dl > dt::after {
    display: none;
  }
}

@media only screen and (width <= 770px) {
  .block-layered-nav--no-filters .block-title {
    display: none;
  }
}

.block-layered-nav .currently ol li .label {
  font-weight: bold;
}

.block-layered-nav .currently ol li::after {
  clear: both;
  content: '';
  display: table;
}

.product-view .product-essential .extra-info .ratings .rating-box,
.product-view .product-essential .extra-info .ratings .amount {
  float: left;
}

.product-view .product-essential .extra-info .ratings .rating-box {
  margin-right: 10px;
  margin-top: 8px;
}

.product-view .product-essential .extra-info .ratings::after {
  clear: both;
  content: '';
  display: table;
}

.product-view .product-essential::after {
  clear: both;
  content: '';
  display: table;
}

.product-view .product-shop .availability {
  font-size: var(--size-16);
}

.product-view .product-shop .price-box .special-price .price-label {
  font-size: var(--size-16);
  text-transform: uppercase;
}

.product-view .product-shop .price-box .special-price span.weee {
  color: oklch(50% 0 0);
}

.product-view .product-shop .price-box .special-price span.weee span.price {
  font-size: var(--size-16);
}

.product-view .product-shop .price-box .price-excluding-tax,
.product-view .product-shop .price-box .price-including-tax {
  color: oklch(50% 0 0);
  display: block;
  line-height: 1.2;
}

.product-view .product-shop .price-box .price-excluding-tax .label,
.product-view .product-shop .price-box .price-including-tax .label {
  font-size: var(--size-16);
  font-weight: 300;
}

.product-view .product-shop .price-box .price-excluding-tax .price,
.product-view .product-shop .price-box .price-including-tax .price {
  font-size: var(--size-20);
}

.product-view .price-box.map-info a {
  display: inherit;
}

@media only screen and (width <= 850px) {
  .product-view .product-shop .price-box .price-excluding-tax .label,
  .product-view .product-shop .price-box .price-including-tax .label {
    font-size: var(--size-15);
  }

  .product-view .product-shop .price-box .price-excluding-tax .price,
  .product-view .product-shop .price-box .price-including-tax .price {
    font-size: var(--size-18);
  }
}

@media only screen and (width <= 770px) {
  .product-view .add-to-cart-wrapper {
    clear: both;
    float: none;
    width: 100%;
  }

  .product-view .product-shop .price-box .price-excluding-tax .label,
  .product-view .product-shop .price-box .price-including-tax .label {
    font-size: var(--size-16);
  }

  .product-view .product-shop .price-box .price-excluding-tax .price,
  .product-view .product-shop .price-box .price-including-tax .price {
    font-size: var(--size-20);
  }
}

@media only screen and (width <= 420px) {
  .product-view .product-shop .price-box .price-excluding-tax,
  .product-view .product-shop .price-box .price-including-tax {
    margin-bottom: 5px;
  }

  .product-view .product-shop .price-box .price-excluding-tax span,
  .product-view .product-shop .price-box .price-including-tax span {
    display: block;
  }
}

.product-image-gallery {
  position: relative;
}

.product-image-gallery .gallery-image {
  display: none;
}

.product-image-gallery .gallery-image.visible {
  display: block;
}

.product-image-gallery .gallery-image.visible.hidden {
  visibility: hidden;
}

.product-image-gallery::before,
.product-image-gallery::after {
  content: '';
  display: none;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.product-image-gallery.loading {
  position: relative;
}

.product-image-gallery.loading::before,
.product-image-gallery.loading::after {
  display: block;
}

.product-image-thumbs li {
  display: inline-block;
}

.product-image-thumbs li:first-child {
  margin-left: -1px;
}

.product-image-thumbs a {
  border: 1px solid transparent;
  display: inline-block;
}

.no-touch .product-image-thumbs a:hover {
  border-color: oklch(83% 0 0);
}

.product-view .add-to-box::after,
.product-view .add-to-cart::after {
  clear: both;
  content: '';
  display: table;
}

.add-to-box .or {
  display: none;
}

.product-view .add-to-links {
  clear: both;
  float: left;
  margin-right: 15px;
  margin-top: 0;
}

.product-view .add-to-links::after {
  clear: both;
  content: '';
  display: table;
}

.product-view .add-to-links li {
  float: left;
}

.product-view .add-to-links a {
  border-right: 1px solid oklch(84.5% 0 0);
  margin-left: 7px;
  padding: 2px 7px 2px 0;
}

.product-view .add-to-links li:first-child a {
  margin-left: 0;
}

.product-view .add-to-links li:last-child a {
  border-right: 0;
}

.product-view .sharing-links {
  float: left;
}

.product-view .sharing-links::after {
  clear: both;
  content: '';
  display: table;
}

.product-view .sharing-links li {
  float: left;
  padding: 0 7px 7px;
}

.product-view .sharing-links a {
  display: block;
  height: 26px;
  text-indent: -9999px;
  width: 26px;
}

.product-view .sharing-links a:hover {
  opacity: 0.8;
}

.product-view .sharing-links a.link-wishlist {
  background-position: 0 -225px;
}

.product-view .sharing-links a.link-compare {
  background-position: 0 -250px;
}

.product-view .sharing-links a.link-email-friend {
  background-position: 0 -322px;
}

.product-view .sharing-links a.link-facebook {
  background-position: 0 -425px;
}

.product-view .sharing-links a.link-twitter {
  background-position: 0 -372px;
}

@media only screen and (width <= 599px) {
  .add-to-box .add-to-links a {
    float: none;
    text-indent: 0;
    width: auto;
  }
}

.product-collateral {
  clear: both;
}

.collateral-tabs dd h2 {
  display: none;
}

.product-view .ratings .rating-links {
  clear: left;
  float: left;
  margin-top: 0;
}

#product-attribute-specs-table {
  border: 1px solid silver;
  max-width: 50em;
}

#product-attribute-specs-table th {
  border-bottom: 1px solid silver;
  border-right: 1px solid silver;
}

.grouped-items-table .name-wrapper {
  color: oklch(64.8% 0.12 235);
}

.grouped-items-table .qty-wrapper {
  padding-top: 7px;
}

.grouped-items-table .qty-label {
  margin-left: 7px;
}

.grouped-items-table td {
  padding: 4px;
}

.grouped-items-table td:last-child {
  text-align: left;
  width: 30%;
}

.grouped-items-table .price-box {
  text-align: right;
}

.block-related li {
  margin-bottom: 7px;
}

.block-related .block-title {
  border-bottom: none;
}

.block-related .block-title h2 {
  color: oklch(50% 0 0);
  font-size: var(--size-24);
  font-style: normal;
  font-weight: 400;
  line-height: 1.2;
  margin: 0;
  margin-bottom: 0.5em;
  margin-bottom: 0;
  text-rendering: optimizelegibility;
  text-transform: uppercase;
}

.block-related .block-subtitle {
  margin-bottom: 7px;
}

.block-related .product {
  margin-left: 20px;
  position: relative;
}

.block-related .checkbox {
  float: left;
  margin-top: 36px;
}

.block-related .product-details {
  margin-left: 90px;
}

.block-related .product-name {
  margin-bottom: 3px;
}

.block-related .product-details .price-box {
  margin: 2px 0 3px;
}

.block-related .product-details .price-box a,
.block-related .product-details .price-box p,
.block-related .product-details .price-box span {
  float: left;
  margin-left: 3px;
}

.block-related .product-details .price-box a:first-child,
.block-related .product-details .price-box p:first-child,
.block-related .product-details .price-box span:first-child {
  font-size: var(--size-16);
  margin-left: 0;
  padding-left: 5px;
  padding-right: 5px;
}

.block-related .product-details .price-box::after {
  clear: both;
  content: '';
  display: table;
}

.block-related .link-wishlist {
  display: none;
}

.box-up-sell {
  margin-top: 20px;
}

.box-up-sell .ratings {
  display: none;
}

.cart-msrp-totals {
  color: red;
  font-size: 12px !important;
  font-weight: bold;
  margin: 10px 10px 0;
  padding: 10px;
  text-align: right;
  text-transform: uppercase;
}

.map-cart-sidebar-total {
  color: red;
  display: block;
  font-size: 10px;
  font-weight: bold;
  padding: 2px 5px;
  text-align: left;
}

.map-popup {
  background: oklch(100% 0 0);
  border: 5px solid oklch(84.5% 0 0);
  margin: 12px 0 0;
  position: absolute;
  text-align: left;
  width: 450px;
  z-index: 100;
}

@media only screen and (width >= 771px) {
  .map-popup.map-popup-right {
    left: 10px !important;
  }

  .map-popup.map-popup-left {
    left: auto !important;
    right: 10px !important;
  }
}

@media only screen and (width <= 770px) {
  .map-popup {
    left: 0 !important;
    width: 100%;
  }
}

.map-popup .map-popup-heading {
  margin-right: 40px;
  padding: 8px 10px;
  width: auto;
}

.map-popup .map-popup-heading h3 {
  font-size: var(--size-14);
  margin: 0;
  overflow: hidden;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: break-word;
}

@media only screen and (width <= 479px) {
  .map-popup .map-popup-heading h3 {
    text-align: center;
  }
}

.map-popup .map-popup-close {
  display: block;
  font-size: var(--size-20);
  height: 36px;
  line-height: 32px;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 36px;
}

.map-popup .map-popup-content {
  border-top: 1px solid oklch(94.6% 0 0);
  margin: 0 10px;
  overflow: hidden;
  padding: 10px;
  text-align: left;
}

@media only screen and (width <= 479px) {
  .map-popup .map-popup-content {
    text-align: center;
  }
}

.map-popup .map-popup-checkout {
  padding: 10px 0;
}

.map-popup .map-popup-checkout form::after {
  clear: both;
  content: '';
  display: table;
}

.map-popup .map-popup-checkout span {
  display: block;
}

.map-popup .map-popup-checkout .button {
  clear: left;
  float: left;
  margin: 0 2px;
}

.map-popup .map-popup-checkout .additional-addtocart-box {
  float: left;
  min-width: 210px;
}

.map-popup .map-popup-checkout .additional-addtocart-box li {
  list-style-type: none;
}

@media only screen and (width <= 479px) {
  .map-popup .map-popup-checkout {
    text-align: center;
  }

  .map-popup .map-popup-checkout .button,
  .map-popup .map-popup-checkout .additional-addtocart-box {
    float: none;
  }

  .map-popup .map-popup-checkout .additional-addtocart-box {
    min-width: 0;
  }
}

.map-popup .map-popup-checkout::after {
  clear: both;
  content: '';
  display: table;
}

.map-popup .map-popup-price {
  padding: 10px 0;
}

@media only screen and (width <= 479px) {
  .map-popup .map-popup-price {
    padding-top: 0;
    text-align: center;
  }
}

.map-popup .map-popup-price .price-box,
.map-popup .map-popup-price .price-box .special-price {
  display: inline-block;
  margin: 0;
  padding: 0;
}

.map-popup .map-popup-price .price-box .minimal-price-link {
  display: inline-block;
}

.map-popup .map-popup-text {
  margin: 0 10px;
  padding: 10px 0;
  word-wrap: break-word;
}

.map-popup .map-popup-text,
.map-popup .map-popup-only-text {
  border-top: 1px solid oklch(94.6% 0 0);
}

.price-box .map-link {
  display: block;
  text-align: center;
}

.block-compare .product-name::after {
  clear: both;
  content: '';
  display: table;
}

.compare-table .product-image {
  display: inline-block;
}

.compare-table .product-shop-row.top td {
  border-bottom: 0;
  padding-bottom: 0;
}

.compare-table .product-shop-row.bottom td {
  padding-top: 0;
}

.cart .button {
  white-space: normal;
}

.checkout-cart-index #postcode {
  width: 100%;
}

.display-both-prices .cart-table {
  float: none;
  width: 100%;
}

.display-both-prices .cart-forms {
  float: left;
  padding-left: 0;
  padding-right: 10px;
}

.display-both-prices .cart-totals-wrapper,
.display-both-prices .crosssell {
  padding-left: 10px;
}

.display-both-prices .cart-forms,
.display-both-prices .cart-totals-wrapper,
.display-both-prices .crosssell {
  width: 50%;
}

.display-both-prices .crosssell {
  clear: right;
  float: right;
}

@media only screen and (width <= 979px) {
  .display-single-price .cart-table {
    float: none;
    width: 100%;
  }

  .display-single-price .cart-totals-wrapper,
  .display-single-price .crosssell {
    padding-left: 10px;
  }
}

@media only screen and (width <= 599px) {
  .display-both-prices .cart-forms,
  .display-both-prices .cart-totals-wrapper,
  .display-both-prices .crosssell,
  .display-single-price .cart-forms,
  .display-single-price .cart-totals-wrapper,
  .display-single-price .crosssell {
    float: none;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    width: 100%;
  }
}

.display-single-price::after {
  clear: both;
  content: '';
  display: table;
}

.cart .page-title {
  margin-bottom: 15px;
}

.cart .page-title::after {
  clear: both;
  content: '';
  display: table;
}

.cart .page-title h1 {
  border-bottom: none;
  float: left;
  margin-bottom: 6px;
  margin-right: 10px;
}

.checkout-types li {
  margin: 0 0 5px 5px;
  vertical-align: top;
}

.checkout-types li::after {
  clear: both;
  content: '';
  display: table;
}

.checkout-types li img {
  display: inline;
  vertical-align: top;
}

.checkout-types li:first-child {
  margin-left: 0;
}

.checkout-types .method-checkout-cart-methods-multishipping {
  display: block;
}

.checkout-types.top li {
  display: inline-block;
}

.checkout-types.top .bml_button {
  display: inline-block;
  vertical-align: top;
}

.checkout-types.top .bml_button img {
  display: block;
}

.checkout-types.top .paypal-logo .paypal-or {
  margin-top: 5px;
}

.checkout-types.bottom .paypal-logo a,
.checkout-types.minicart .paypal-logo a {
  display: block;
}

.checkout-types.bottom .paypal-or,
.checkout-types.minicart .paypal-or {
  display: block;
  margin: 0;
  text-align: center;
}

@media only screen and (width >= 741px) {
  .checkout-types.bottom .paypal-or {
    padding-right: 70px;
    text-align: right;
  }
}

.cart-totals .checkout-types .btn-checkout {
  margin-bottom: 7px;
}

@media only screen and (width <= 740px) {
  .checkout-types {
    float: none;
    text-align: center;
  }

  .checkout-types.bottom .paypal-or,
  .checkout-types.minicart .paypal-or {
    float: none;
    width: auto;
  }

  .checkout-types li {
    float: none;
    margin-left: 0;
    width: 100%;
  }
}

@media only screen and (width <= 599px) {
  .btn-checkout {
    width: 100%;
  }
}

.cart-table th,
.cart-table td,
.cart-table tbody td {
  border-bottom: none;
  vertical-align: top;
}

.cart-table thead th,
.cart-table tbody td {
  background-color: transparent;
  padding: 10px 5px;
}

.cart-table tr {
  border-bottom: 1px solid silver;
}

.cart-table tfoot tr {
  background: none;
}

.cart-table tfoot tr > td::after {
  clear: both;
  content: '';
  display: table;
}

.cart-table span.or {
  font-size: 9px;
  padding: 0 5px;
  text-transform: uppercase;
}

.cart-table .product-cart-image .cart-links,
.cart-table .product-cart-info .btn-remove,
.cart-table .product-cart-actions .button {
  display: none;
}

.cart-table .product-cart-image a.cart-edit {
  display: none;
}

.cart-table .product-cart-sku {
  color: gray;
  font-size: var(--size-12);
  font-style: italic;
}

.cart-table .product-cart-sku .label {
  color: oklch(0% 0 0);
}

.cart-table .btn-empty {
  float: left;
}

.cart-table .cart-tax-total {
  cursor: pointer;
  position: relative;
}

.cart-table .cart-tax-total::after {
  border-bottom: 6px solid transparent;
  border-left: none;
  border-right: 6px solid oklch(64.8% 0.12 235);
  border-top: 6px solid transparent;
  content: '';
  display: block;
  height: 0;
  position: absolute;
  right: -11px;
  top: 3px;
  width: 0;
}

.cart-table .cart-tax-total.cart-tax-total-expanded::after {
  border-bottom: none;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid oklch(64.8% 0.12 235);
  content: '';
  display: block;
  height: 0;
  position: absolute;
  right: -15px;
  top: 6px;
  width: 0;
}

.cart-table .cart-links > li {
  font-size: var(--size-13);
  line-height: 1.3;
  margin-bottom: 5px;
  min-width: 65px;
  white-space: nowrap;
}

.cart-table .cart-links > li > a {
  display: block;
}

.cart-table .cart-links > li:last-child {
  margin-bottom: 0;
}

.cart-table .product-cart-actions .button {
  margin-bottom: 5px;
}

@media only screen and (width <= 770px) {
  .cart-table th {
    font-size: var(--size-12);
  }

  .cart-table th,
  .cart-table td {
    padding: 7px 6px;
  }

  .cart-table .product-cart-actions > li {
    white-space: inherit;
  }
}

@media only screen and (width <= 699px) {
  .display-both-prices .cart-table thead th.cart-total-head,
  .display-both-prices .cart-table td.product-cart-total {
    display: none;
  }
}

@media only screen and (width <= 599px) {
  .cart-table colgroup,
  .cart-table thead {
    display: none;
  }

  .cart-table tr {
    display: block;
    margin-bottom: 10px;
    padding-bottom: 10px;
    position: relative;
    width: 100%;
  }

  .cart-table tr::after {
    clear: both;
    content: '';
    display: table;
  }

  .cart-table tr:last-child {
    margin-bottom: 0;
  }

  .cart-table tfoot tr {
    padding-bottom: 0;
  }

  .cart-table td {
    border: none;
    display: block;
  }

  .cart-table td[data-rwd-label] {
    margin-bottom: 6px;
    padding-left: 15px;
  }

  .cart-table td[data-rwd-label] .price {
    font-weight: normal;
  }

  .cart-table td[data-rwd-label]::before {
    content: attr(data-rwd-label) ':';
    font-size: var(--size-12);
    padding-right: 5px;
    text-transform: uppercase;
  }

  .cart-table td.product-cart-price {
    text-align: left;
  }

  .cart-table h2 {
    font-size: var(--size-12);
  }

  .cart-table .cart-links {
    padding-right: 5px;
    padding-top: 5px;
  }

  .cart-table .cart-links > li {
    text-align: center;
    white-space: normal;
  }

  .cart-table .cart-links > li > a {
    padding: 2px 0;
  }

  .cart-table .cart-tax-info {
    font-size: var(--size-13);
    font-style: italic;
    padding-left: 15px;
  }

  .cart-table .cart-tax-info .price {
    font-size: var(--size-13);
  }

  .cart-table .product-cart-image a.cart-edit {
    display: block;
    font-size: var(--size-16);
    text-align: center;
    text-transform: uppercase;
  }

  .cart-table .product-cart-total,
  .cart-table .product-cart-actions .cart-links {
    display: none;
  }

  .cart-table .product-cart-image .cart-links,
  .cart-table .product-cart-info .btn-remove {
    display: block;
  }

  .cart-table .product-cart-actions .button {
    display: none;
  }

  .cart-table .product-cart-info .btn-remove {
    float: right;
    margin: -4px 0 2px 7px;
  }

  .cart-table .product-cart-info .product-cart-sku {
    margin-bottom: 5px;
  }

  .cart-table .cart-footer-actions {
    text-align: center;
    width: 100%;
  }

  .cart-table .cart-footer-actions #empty_cart_button {
    float: right;
  }

  .cart-table .cart-footer-actions .btn-continue {
    float: left;
  }

  .cart-table .cart-footer-actions .btn-update,
  .cart-table .cart-footer-actions span.or {
    display: none;
  }

  .display-both-prices .cart-table td[data-rwd-tax-label]::before {
    content: attr(data-rwd-tax-label) ':';
  }
}
/* ============================================ *
 * Checkout - Estimate Shipping and Tax
 * ============================================ */
.shipping h2 {
  font-size: var(--size-12);
  font-weight: bold;
  margin: 0 0 5px;
}

.shipping select {
  border: 1px solid silver;
  display: block;
  height: 30px;
  max-width: 100%;
}

.shipping select.validation-failed {
  border-color: oklch(58.2% 0.22 31.4);
}

.shipping .shipping-desc {
  display: none;
}

.shipping .buttons-set {
  border: none;
  margin: 0;
  padding: 0;
}

.shipping .form-list::after {
  clear: both;
  content: '';
  display: table;
}

.shipping .form-list li {
  float: left;
  margin: 5px 2% 10px 0;
}

.shipping .form-list .shipping-country {
  width: 37%;
}

.shipping .form-list .shipping-region {
  width: 41%;
}

.shipping .form-list .shipping-postcode {
  margin-right: 0;
  width: 18%;
}

.shipping .form-list .shipping-postcode input {
  margin-top: 4px;
}

.shipping .form-list .input-box {
  padding-top: 0;
}

.shipping .form-list input {
  height: 30px;
  margin-top: 4px;
}

.shipping .form-list label {
  font-size: var(--size-13);
  font-weight: 400;
  text-transform: uppercase;
  white-space: nowrap;
}

.shipping .sp-methods {
  padding: 10px 0 0;
  text-align: left;
}

.shipping .sp-methods dd {
  margin-bottom: 10px;
}

.shipping .sp-methods label {
  font-size: var(--size-12);
  min-width: 100px;
}

.shipping .sp-methods label span {
  font-style: normal;
  font-weight: bold;
}

.shipping #co-shipping-method-form .buttons-set .button {
  float: left;
  margin-left: 0;
}

.shipping #co-shipping-method-form .sp-methods dd label {
  background-color: oklch(94.3% 0 0);
  border: 1px solid oklch(84.5% 0 0);
  min-width: 220px;
}

.shipping #co-shipping-method-form .sp-methods dd label:hover {
  background-color: oklch(89.1% 0 0);
}

@media only screen and (width <= 770px) {
  .shipping .shipping-form .form-list > li {
    float: none;
    width: 100%;
  }

  .shipping .shipping-form .form-list > li label {
    display: block;
  }

  .shipping .shipping-form .form-list > li input,
  .shipping .shipping-form .form-list > li select {
    width: 100%;
  }
}

.cart .cart-totals::after {
  clear: both;
  content: '';
  display: table;
}

.cart .cart-totals table {
  font-size: var(--size-12);
  margin-bottom: 20px;
  text-transform: uppercase;
  width: 100%;
}

.cart .cart-totals table td {
  padding: 2px 0;
}

.cart .cart-totals table td:first-child {
  min-width: 120px;
  padding-right: 10px;
}

.cart .cart-totals table tbody tr:last-child td,
.cart .cart-totals table tbody tr:last-child th {
  padding-bottom: 10px;
}

.cart .cart-totals table tfoot {
  border-bottom: 1px solid oklch(92.5% 0 0);
  border-top: 1px solid oklch(92.5% 0 0);
}

.cart .cart-totals table tfoot td {
  font-size: var(--size-24);
  padding: 2px 5px;
  vertical-align: top;
}

.cart .cart-totals table tfoot strong {
  font-weight: 400;
}

@media only screen and (width <= 770px) {
  .cart .cart-totals table tfoot td {
    font-size: var(--size-18);
  }
}

.discount-form::after,
#giftcard-form::after {
  clear: both;
  content: '';
  display: table;
}

#discount-coupon-form,
.cart .giftcard {
  width: 100%;
}

#discount-coupon-form h2,
.cart .giftcard h2 {
  display: none;
}

#discount-coupon-form label,
.cart .giftcard label {
  display: inline-block;
  font-size: var(--size-12);
  font-weight: 400;
  margin-right: 10px;
  min-width: 105px;
  text-align: left;
  text-transform: uppercase;
}

#discount-coupon-form .field-wrapper,
.cart .giftcard .field-wrapper {
  display: inline-block;
}

#discount-coupon-form .validation-advice,
.cart .giftcard .validation-advice {
  display: inline;
}

#discount-coupon-form .button-wrapper,
.cart .giftcard .button-wrapper {
  display: inline-block;
  vertical-align: bottom;
}

#discount-coupon-form .button-wrapper > button,
.cart .giftcard .button-wrapper > button {
  float: left;
}

#discount-coupon-form .input-text,
.cart .giftcard .input-text {
  border-radius: 0;
  height: 30px;
  margin: 4px 10px 0 0;
  width: 190px;
}

.cart .giftcard p {
  margin-bottom: 7px;
}

.cart .giftcard .check-gc-status {
  float: left;
  padding: 0;
}

.cart .giftcard .check-gc-status > span > span {
  font-size: var(--size-14);
  text-transform: none;
}

/* ============================================ *
 * Checkout - Success
 * ============================================ */
.checkout-onepage-success .col-main {
  padding: 0;
  text-align: center;
}

.checkout-onepage-success .buttons-set {
  margin: 10px 0;
  text-align: center;
}

.checkout-onepage-success .buttons-set button {
  float: none;
}

/* ============================================ *
 * Configurable Swatches
 * ============================================ */
/* Clears */
.clearfix::after,
.configurable-swatch-list::after,
.product-view .product-options .swatch-attr::after {
  clear: both;
  content: '';
  display: table;
}

/* General Swatch Styling */
.swatch-link,
.swatch-label {
  border-radius: 3px;
  box-sizing: content-box;
  color: oklch(50% 0 0);
  display: block;
  font-size: var(--size-14);
  text-align: center;
  text-decoration: none;
}

.swatch-link {
  border: 1px solid oklch(84.5% 0 0);
  margin: 0 0 3px;
}

.swatch-link img {
  border-radius: 2px;
}

.swatch-link:hover {
  cursor: pointer;
  text-decoration: none;
}

.swatch-link .x {
  background: url('https://shopmx.esab.com/skin/frontend/soulcore/images/bg_x.png') center no-repeat transparent;
  display: none;
  inset: 0;
  position: absolute;
  text-indent: -999em;
  z-index: 10;
}

.swatch-link.has-image .swatch-label {
  position: relative;
}

.swatch-link.has-image img {
  left: 0;
  position: absolute;
  top: 0;
}

.swatch-label {
  background: oklch(96.7% 0 0);
  border: 1px solid oklch(100% 0 0);
  margin: 0;
  white-space: nowrap;
}

.configurable-swatch-list {
  clear: both;
  margin-left: -3px;
  transform: translateZ(0);
  zoom: 1;
}

.configurable-swatch-list li {
  float: left;
  margin: 0 0 0 3px;
  zoom: 1;
}

.products-grid .configurable-swatch-list li {
  display: inline-block;
  float: none;
  margin: 0;
  vertical-align: top;
}

.configurable-swatch-list .not-available .x {
  display: block;
}

.configurable-swatch-list .not-available .swatch-link {
  border-color: oklch(94.6% 0 0);
  position: relative;
}

.configurable-swatch-list .not-available .swatch-link.has-image img {
  filter: alpha(opacity=40);
  opacity: 0.4;
}

.configurable-swatch-list .not-available .swatch-label {
  background: oklch(100% 0 0);
  color: oklch(73.8% 0 0);
}

.configurable-swatch-list .wide-swatch .swatch-label {
  padding: 0 6px;
}

.configurable-swatch-list .not-available a:focus {
  outline: 0;
}

#narrow-by-list dd .configurable-swatch-list li {
  margin: 0 0 0 3px;
  width: 47%;
}

#narrow-by-list dd .swatch-link {
  border: none;
  line-height: 25px;
  margin-right: 2px;
  text-align: left;
}

#narrow-by-list dd .swatch-link.has-image {
  line-height: inherit;
}

#narrow-by-list dd .swatch-link:hover .swatch-label {
  border-color: oklch(64.8% 0.12 235);
}

#narrow-by-list dd .swatch-label {
  background: oklch(96.7% 0 0);
  border: 1px solid oklch(84.5% 0 0);
  border-radius: 3px;
  display: block;
  float: left;
  line-height: 1.5em;
  margin: 0 5px 0 0;
  padding: 1px 5px;
  white-space: nowrap;
}

#narrow-by-list dd .swatch-label img {
  border: 1px solid oklch(100% 0 0);
  border-radius: 3px;
  box-sizing: content-box;
}

#narrow-by-list dd .has-image .swatch-label {
  padding: 0;
}

@media only screen and (width <= 770px) {
  #narrow-by-list dd .configurable-swatch-list li:nth-child(odd) {
    clear: left;
  }
}

.currently .swatch-current {
  position: relative;
}

.currently .swatch-current .btn-remove {
  margin-top: -10px;
  position: absolute;
  right: 0;
  top: 50%;
}

.currently .swatch-current span {
  display: block;
  float: left;
}

.currently .swatch-link {
  display: inline-block;
  margin: 0 0 0 3px;
}

.currently .swatch-link:hover {
  border-color: oklch(84.5% 0 0);
  cursor: default;
}

/* Other Swatch States */
.configurable-swatch-list .hover .swatch-link,
.configurable-swatch-list .selected .swatch-link,
.swatch-link:hover {
  border-color: oklch(64.8% 0.12 235);
}

.configurable-swatch-box {
  background: none !important;
}

.configurable-swatch-box select.swatch-select {
  display: none;
}

.configurable-swatch-box .validation-advice {
  background: oklch(58.2% 0.22 31.4);
  border-radius: 3px;
  color: oklch(100% 0 0) !important;
  display: block;
  float: left;
  font-weight: bold;
  margin: 0 0 5px;
  padding: 2px 5px !important;
}

/* CUSTOM */
.product-view .product-options .swatch-attr {
  border: 0;
  clear: both;
  display: block;
  float: none;
}

.product-view .product-options .swatch-attr label,
.product-view .product-options .swatch-attr .select-label {
  font-size: var(--size-12);
}

.product-view .product-options .swatch-attr label {
  display: block;
  line-height: 1.3;
}

.product-view .product-options .swatch-attr .select-label {
  color: oklch(64.8% 0.12 235);
  display: inline;
  font-weight: normal;
  padding-left: 5px;
}

/* ============================================ *
 * Customer
 * ============================================ */
.customer-account-create .scaffold-form label:first-child {
  width: 140px;
}

.customer-account-create .buttons-set {
  max-width: 455px;
}

.customer-account-create .fieldset,
.customer-account-create .buttons-set {
  margin-left: 30px;
}

@media only screen and (width <= 479px) {
  .customer-account-create .fieldset,
  .customer-account-create .buttons-set {
    margin-left: 0;
  }
}

.customer-account-create .fieldset .hidden {
  display: none;
}

/* ============================================ *
 * My Account Global Styles
 * ============================================ */
body.customer-account .my-account .addresses-list h3 {
  font-size: var(--size-14);
  font-weight: 600;
}

body.customer-account .data-table td.view a {
  display: block;
}

body.customer-account .data-table .separator {
  display: none;
}

body.customer-account .sidebar .block ol#compare-items li {
  margin: 10px 0;
}

body.customer-account .sidebar .block .block-content p.block-subtitle {
  margin-bottom: 15px;
}

body.customer-account .sidebar .block .block-content .actions {
  margin-top: 30px;
}

body.customer-account .sidebar ol#cart-sidebar-reorder li {
  margin-bottom: 0;
  margin-top: 10px;
}

body.customer-account .sidebar ol#cart-sidebar-reorder p.product-name {
  display: inline-block;
  margin-bottom: 0;
}

body.customer-account .sidebar .block-cart .summary {
  margin-bottom: 15px;
}

body.customer-account .sidebar .block-reorder ol#cart-sidebar-reorder li {
  margin-bottom: 0;
  margin-top: 10px;
}

body.customer-account .sidebar .block-reorder ol#cart-sidebar-reorder li input {
  margin-right: 10px;
}

body.customer-account .sidebar .block-reorder ol#cart-sidebar-reorder p.product-name {
  display: inline;
  margin-bottom: 0;
}

.form-list .customer-dob .dob-month,
.form-list .customer-dob .dob-day {
  float: left;
  margin-right: 10px;
  width: 40px;
}

.form-list .customer-dob .dob-year {
  float: left;
  width: 80px;
}

/* ============================================ *
 * Dashboard
 * ============================================ */
.dashboard .box-head {
  margin-top: 30px;
  padding-bottom: 7px;
}

.dashboard .col2-set .col-1,
.dashboard .col2-set .col-2 {
  padding-bottom: 0;
  padding-right: 12.09677%;
}

.dashboard .col2-set .col-1 .box-title,
.dashboard .col2-set .col-2 .box-title {
  padding-bottom: 10px;
  position: relative;
}

.dashboard .col2-set .col-1 .box-title h2,
.dashboard .col2-set .col-1 .box-title h3,
.dashboard .col2-set .col-2 .box-title h2,
.dashboard .col2-set .col-2 .box-title h3 {
  font-size: var(--size-14);
  font-weight: 600;
  margin-bottom: 0;
}

.dashboard .col2-set .col-1 .box-title a,
.dashboard .col2-set .col-2 .box-title a {
  line-height: 19.6px;
}

.dashboard .box-reviews.box-account {
  padding-bottom: 0;
}

.dashboard .box-reviews li {
  border-top: 1px solid oklch(94.6% 0 0);
  padding: 10px 0;
}

.dashboard .box-reviews li:first-child {
  border-top: 0;
}

.dashboard .box-reviews li .number {
  float: left;
  font-size: var(--size-13);
  line-height: 1.4;
  margin-right: -20px;
}

.dashboard .box-reviews li .details {
  margin-left: 20px;
}

.dashboard .box-reviews li .details .ratings {
  clear: both;
  content: '';
  display: table;
  margin-bottom: 0;
}

.dashboard .box-reviews li .details .ratings strong {
  float: left;
  font-size: var(--size-13);
  margin-right: 5px;
}

.dashboard .box-reviews li .details .ratings .rating-box {
  float: left;
  margin: 3px 0 0;
}

/* ============================================ *
 * Address Book
 * ============================================ */
.my-account .addresses-list .col-1,
.my-account .addresses-list .col-2 {
  padding-bottom: 0;
}

.my-account .addresses-list .item p {
  margin-top: 10px;
}

@media only screen and (width <= 770px) {
  .my-account .addresses-list .col-1,
  .my-account .addresses-list .col-2 {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }

  .my-account .addresses-list .col-1 li.empty,
  .my-account .addresses-list .col-2 li.empty {
    width: 100%;
  }
}

@media only screen and (width <= 599px) {
  .my-account .addresses-list .addresses-additional p a {
    white-space: nowrap;
  }
}

/* ============================================ *
 * Order View
 * ============================================ */
.order-info li {
  margin: 0 0 0 20px;
}

.order-info-box .col-1 {
  padding-right: 0;
  width: 48%;
}

.order-info-box .col-2 {
  width: 52%;
}

.order-info-box .col-1,
.order-info-box .col-2 {
  overflow: hidden;
  padding-bottom: 0;
  padding-top: 0;
}

.order-info-box .box-content td,
.order-info-box .box-content th {
  line-height: 1.3;
}

.order-info-box .box-content th {
  padding-top: 10px;
}

.order-info-box .box-content td {
  padding-left: 15px;
}

#my-orders-table .option-label {
  font-style: italic;
  font-weight: 600;
  margin-left: 10px;
}

#my-orders-table .option-value {
  margin-left: 20px;
}

#my-orders-table tr.bundle:not(:last-child) td {
  border-bottom: none;
  border-top: none;
}

ol#cart-sidebar-reorder li {
  margin-bottom: 0;
  margin-top: 10px;
}

ol#cart-sidebar-reorder li input {
  margin-right: 10px;
}

ol#cart-sidebar-reorder p.product-name {
  display: inline;
}

@media only screen and (width <= 599px) {
  #my-orders-table .option-label {
    margin-left: 20px;
  }

  #my-orders-table .option-value {
    margin-left: 35px;
  }

  #my-orders-table td[data-rwd-label='Qty'] .nobr br {
    display: none;
  }

  #my-orders-table td[data-rwd-label='Qty'] .nobr strong {
    margin-right: 10px;
  }

  #my-orders-table tr.bundle {
    border-color: oklch(94.6% 0 0);
  }

  #my-orders-table tr.bundle.child td[data-rwd-label] {
    padding-left: 60px;
  }

  #my-orders-table tbody:last-child tr:last-child td {
    border-bottom: 0;
    padding-bottom: 10px;
  }

  #my-orders-table tbody:last-child tr:last-child td:last-child {
    padding-bottom: 15px;
  }

  #my-orders-table tfoot tr.shipping {
    margin-top: 0;
  }
}

.order-additional {
  margin: 40px 0;
}

.order-gift-message dd {
  margin-top: 10px;
}

@media only screen and (width <= 1199px) {
  .dashboard .col2-set .col-1,
  .dashboard .col2-set .col-2 {
    padding-bottom: 0;
    padding-right: 30px;
  }

  body.customer-account .data-table td.view a {
    white-space: normal;
  }
}

@media only screen and (width <= 979px) {
  body.customer-account .my-account .title-buttons {
    text-align: left;
  }
}

@media only screen and (width <= 770px) {
  .order-info-box .box-content {
    clear: left;
  }

  .addresses-list .item {
    float: left;
    padding-right: 30px;
    width: 50%;
  }

  .order-info dt {
    display: none;
  }

  .dashboard .page-title {
    margin-top: 20px;
  }

  .dashboard .page-title h1 {
    margin-top: 0;
  }

  .dashboard .box-account {
    margin-bottom: 30px;
    padding-bottom: 15px;
  }

  .dashboard .col2-set .col-1,
  .dashboard .col2-set .col-2 {
    padding-left: 0;
    padding-right: 0;
    width: 48%;
  }

  .dashboard .col2-set .col-1 {
    float: left;
    margin-right: 4%;
  }

  .dashboard .col2-set .col-2 {
    float: right;
  }

  .my-account .order-info dt {
    display: none;
  }
}

@media only screen and (width <= 599px) {
  body.customer-account .my-account .form-list .control {
    padding-left: 0;
  }
}

@media only screen and (width <= 479px) {
  body.customer-account .my-account .title-buttons {
    text-align: center;
  }

  body.customer-account .my-account .buttons-set {
    border-top: 0;
  }

  body.customer-account .my-account .addresses-list .item {
    float: none;
    margin-bottom: 15px;
    padding-right: 0;
    width: auto;
  }

  body.customer-account .my-account .addresses-list h2 {
    margin-bottom: 15px;
  }

  .order-info {
    margin-top: 15px;
  }

  .data-table.orders .link-reorder,
  .data-table.orders .date {
    display: none;
  }

  .dashboard .col2-set .col-1,
  .dashboard .col2-set .col-2 {
    margin-top: 15px;
    width: 100%;
  }

  .order-info-box {
    margin: 0;
  }

  .order-info-box .col-1,
  .order-info-box .col-2 {
    border-bottom: 1px solid oklch(94.6% 0 0);
    padding: 15px 0;
    width: 100%;
  }

  #my-reviews-table .nobr {
    white-space: normal;
  }
}

/* ============================================ *
 * Slideshow
 * ============================================ */
.slideshow-container {
  border: 1px solid oklch(94.6% 0 0);
  display: block;
  margin: 10px 0;
  position: relative;
  width: 100%;
}

.slideshow-container .slideshow {
  border: 10px solid oklch(100% 0 0);
  margin: 0;
  padding: 0;
  position: relative;
  width: 100%;
}

.slideshow-container .slideshow > li {
  display: block;
  left: 0;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.slideshow-container .slideshow > li:first-child {
  position: static;
  z-index: 100;
}

.slideshow-container .slideshow > li img {
  max-width: 100%;
  width: 100%;
}

.slideshow-pager {
  bottom: 0;
  overflow: hidden;
  position: absolute;
  text-align: center;
  top: auto;
  user-select: none;
  width: 100%;
  z-index: 115;
}

.slideshow-pager span {
  color: oklch(89.8% 0 0);
  cursor: pointer;
  display: inline-block;
  height: 44px;
  width: 44px;
}

.slideshow-pager span::before {
  background-color: oklch(100% 0 0);
  border-radius: 1px;
  content: '';
  display: block;
  height: 16px;
  left: 50%;
  margin-left: -8px;
  margin-top: -8px;
  position: relative;
  top: 50%;
  width: 16px;
}

.slideshow-pager span:hover::before {
  background-color: oklch(60.1% 0.11 235);
}

.slideshow-pager span.cycle-pager-active::before {
  background-color: oklch(55% 0.1 235);
}

.slideshow-pager > * {
  cursor: pointer;
}

.slideshow-prev,
.slideshow-next {
  cursor: pointer;
  height: 100%;
  max-width: 80px;
  opacity: 0.6;
  position: absolute;
  top: 0;
  user-select: none;
  width: 15%;
  z-index: 110;
}

.slideshow-prev::before,
.slideshow-next::before {
  border-style: solid;
  content: '';
  display: block;
  font-size: 0;
  height: 0;
  margin-top: -15px;
  position: absolute;
  top: 50%;
  width: 0;
}

.slideshow-prev:hover,
.slideshow-next:hover {
  opacity: 1;
}

.slideshow-prev.disabled,
.slideshow-next.disabled {
  cursor: default;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
  opacity: 0.5;
}

.slideshow-prev {
  left: 8px;
}

.slideshow-prev::before {
  border-color: transparent oklch(100% 0 0) transparent transparent;
  border-width: 15px 15px 15px 0;
  left: 10px;
  top: 50%;
}

.slideshow-prev:hover::before {
  border-color: transparent oklch(60.1% 0.11 235) transparent transparent;
}

.slideshow-next {
  right: 8px;
}

.slideshow-next::before {
  border-color: transparent transparent transparent oklch(100% 0 0);
  border-width: 15px 0 15px 15px;
  right: 10px;
  top: 50%;
}

.slideshow-next:hover::before {
  border-color: transparent transparent transparent oklch(60.1% 0.11 235);
}

.cycle-caption {
  bottom: 15px;
  color: white;
  position: absolute;
  right: 15px;
  z-index: 110;
}

.cycle-overlay {
  background: black;
  bottom: 0;
  color: white;
  opacity: 0.5;
  padding: 15px;
  position: absolute;
  width: 100%;
  z-index: 120;
}

/* ============================================ *
 * Wishlist
 * ============================================ */
#wishlist-table th {
  text-align: center;
}

#wishlist-table.clean-table {
  width: 100%;
}

#wishlist-table.clean-table th {
  border-bottom: 1px solid silver;
}

#wishlist-table.clean-table td {
  padding: 15px;
  vertical-align: top;
}

#wishlist-table.clean-table thead th {
  font-size: var(--size-12);
  text-transform: uppercase;
}

#wishlist-table .product-name {
  font-size: var(--size-16);
  margin-bottom: 0;
  text-transform: uppercase;
}

#wishlist-table .wishlist-sku {
  font-size: 11px;
  margin: 5px 0;
}

#wishlist-table textarea {
  border: 1px solid silver;
  font-size: 11px;
  height: 45px;
  width: 100%;
}

#wishlist-table textarea::input-placeholder {
  text-transform: uppercase;
}

#wishlist-table textarea:placeholder {
  text-transform: uppercase;
}

#wishlist-table textarea::placeholder {
  text-transform: uppercase;
}

#wishlist-table textarea:input-placeholder {
  text-transform: uppercase;
}

#wishlist-table textarea:focus {
  border: 1px solid oklch(64.8% 0.12 235);
}

#wishlist-table .item-manage {
  max-width: 450px;
  padding-top: 5px;
  text-align: right;
}

#wishlist-table .item-manage .button {
  font-size: 11px;
  padding: 3px 5px;
}

#wishlist-table td.customer-wishlist-item-image {
  width: 113px;
}

#wishlist-table td.customer-wishlist-item-quantity {
  width: 3em;
}

#wishlist-table td.customer-wishlist-item-price {
  text-align: center;
  width: 120px;
}

#wishlist-table td.customer-wishlist-item-cart {
  width: 150px;
}

#wishlist-table td.customer-wishlist-item-cart .button {
  font-size: var(--size-12);
  margin-bottom: 10px;
  padding: 3px 5px;
  width: 100%;
}

#wishlist-table td.customer-wishlist-item-cart .truncated {
  margin-bottom: 10px;
}

#wishlist-table td.customer-wishlist-item-cart > p {
  margin-bottom: 0;
}

#wishlist-table td.customer-wishlist-item-cart .remove-whishlist-item {
  text-align: center;
}

#wishlist-table td.customer-wishlist-item-cart .btn-remove {
  vertical-align: top;
}

#wishlist-table td.customer-wishlist-item-remove {
  width: 20px;
}

#wishlist-table td .button,
#wishlist-table td button {
  white-space: normal;
}

#wishlist-table .giftregisty-add {
  margin-top: 5px;
}

#wishlist-table .giftregisty-add .change {
  display: none;
}

#wishlist-table .giftregisty-add li {
  color: oklch(64.8% 0.12 235);
  cursor: pointer;
  margin-bottom: 3px;
}

#wishlist-table .truncated .details {
  background: none;
  color: oklch(64.8% 0.12 235);
}

#wishlist-table td[data-rwd-label]::before {
  font-weight: 600;
}

@media only screen and (width <= 1199px) {
  #wishlist-table.clean-table td {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media only screen and (width <= 979px) {
  #wishlist-table.clean-table td {
    padding-left: 5px;
    padding-right: 5px;
  }

  #wishlist-table.clean-table td textarea {
    height: 100px;
  }

  #wishlist-table.clean-table td.customer-wishlist-item-cart {
    width: 110px;
  }

  #wishlist-table .product-name {
    font-size: var(--size-13);
  }
}

@media only screen and (width <= 770px) {
  #wishlist-table::after {
    clear: both;
    content: '';
    display: table;
  }

  #wishlist-table .product-name {
    font-size: var(--size-16);
  }

  #wishlist-table textarea {
    height: 68px;
    max-width: 100%;
  }

  #wishlist-table .item-manage {
    max-width: 100%;
  }

  #wishlist-table tr {
    position: relative;
  }

  #wishlist-table tr::after {
    clear: both;
    content: '';
    display: table;
  }

  #wishlist-table td.customer-wishlist-item-image {
    width: 70px;
  }

  #wishlist-table td.customer-wishlist-item-image img {
    height: 70px;
    width: 70px;
  }

  #wishlist-table td.customer-wishlist-item-cart p {
    margin-bottom: 0;
  }

  #wishlist-table td.customer-wishlist-item-cart .remove-whishlist-item {
    margin-right: 0;
    padding-top: 4px;
  }

  #wishlist-table td.customer-wishlist-item-cart {
    padding-right: 15px;
  }
}

@media only screen and (width <= 599px) {
  #wishlist-table td.customer-wishlist-item-quantity {
    padding-left: 0;
  }

  #wishlist-table td.customer-wishlist-item-image,
  #wishlist-table th.customer-wishlist-item-image {
    display: none;
  }
}

@media only screen and (width <= 479px) {
  #wishlist-table tr {
    position: relative;
  }

  #wishlist-table th.customer-wishlist-item-image {
    display: block;
  }

  #wishlist-table td.customer-wishlist-item-image,
  #wishlist-table td.customer-wishlist-item-info,
  #wishlist-table td.customer-wishlist-item-quantity,
  #wishlist-table td.customer-wishlist-item-price,
  #wishlist-table td.customer-wishlist-item-cart {
    empty-cells: hide;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }

  #wishlist-table td.customer-wishlist-item-image {
    display: block;
    overflow: hidden;
  }

  #wishlist-table td.customer-wishlist-item-image a {
    float: left;
  }

  #wishlist-table td.customer-wishlist-item-image a img {
    height: 113px;
    width: 113px;
  }

  #wishlist-table td.customer-wishlist-item-quantity,
  #wishlist-table td.customer-wishlist-item-price {
    text-align: left;
  }

  #wishlist-table td.customer-wishlist-item-quantity::before,
  #wishlist-table td.customer-wishlist-item-price::before {
    float: left;
    margin-right: 15px;
  }

  #wishlist-table td.customer-wishlist-item-quantity .cart-cell,
  #wishlist-table td.customer-wishlist-item-price .cart-cell {
    text-align: left;
  }

  #wishlist-table td.customer-wishlist-item-quantity .price-box,
  #wishlist-table td.customer-wishlist-item-price .price-box {
    margin-top: 0;
  }

  #wishlist-table td.customer-wishlist-item-cart .cart-cell {
    float: left;
    width: 48%;
  }

  #wishlist-table td.customer-wishlist-item-cart > p {
    float: right;
    width: 48%;
  }

  #wishlist-table td.customer-wishlist-item-remove {
    display: block;
    height: 20px;
    padding: 0;
    position: absolute;
    right: 0;
    top: 15px;
  }

  #wishlist-table.clean-table td.customer-wishlist-item-cart {
    width: 100%;
  }
}
/* ============================================ *
 * Wishlist Sidebar
 * ============================================ */
.block-wishlist .mini-products-list > li:not(:last-child) {
  padding-bottom: 5px;
}

.block-wishlist .product-details .product-name {
  margin-bottom: 5px;
  padding-top: 0;
}

.block-wishlist .price-box {
  float: left;
  margin: 0;
}

.block-wishlist .price-box,
.block-wishlist .price-box .price,
.block-wishlist .link-cart {
  font-size: var(--size-12);
}

.block-wishlist .link-cart {
  border-right: 1px solid oklch(94.6% 0 0);
  float: left;
  margin-right: 7px;
  padding-right: 7px;
  text-transform: uppercase;
}

/* ============================================ *
 * Checkout - Mini cart
 * ============================================ */
.header-minicart .minicart-message {
  display: block;
  padding: 10px;
}

.header-minicart .empty {
  padding: 10px;
  text-align: center;
}

.header-minicart .minicart-wrapper {
  clear: both;
  position: relative;
}

.header-minicart .minicart-wrapper::before,
.header-minicart .minicart-wrapper::after {
  content: '';
  display: none;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.header-minicart .minicart-wrapper::before {
  background-color: white;
  opacity: 0.8;
  z-index: 2;
}

.header-minicart .minicart-wrapper.loading {
  position: relative;
}

.header-minicart .minicart-wrapper.loading::before,
.header-minicart .minicart-wrapper.loading::after {
  display: block;
}

.header-minicart .block-cart {
  display: none;
}

.header-minicart .block-subtitle {
  color: oklch(68.4% 0.1 233);
  font-size: 10px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0;
  padding: 5px;
  text-align: center;
  text-transform: uppercase;
}

.header-minicart .block-subtitle .close {
  color: oklch(50% 0 0);
  display: block;
  float: right;
  font-size: var(--size-30);
  font-weight: normal;
  position: absolute;
  right: -3px;
  text-decoration: none;
  top: -8px;
  width: 40px;
}

.header-minicart .mini-products-list {
  padding: 10px;
  padding-top: 0;
}

.header-minicart .mini-products-list li {
  border-bottom: 1px solid oklch(89.8% 0 0);
  padding: 8px 5px 8px 11px;
  position: relative;
}

.header-minicart .mini-products-list li.last {
  border: none;
}

.header-minicart .mini-products-list li .product-details {
  position: relative;
}

.header-minicart .product-details .product-name {
  font-weight: bold;
  padding-top: 0;
}

.header-minicart .product-details .product-name a {
  color: oklch(64.8% 0.12 235);
}

.header-minicart .info-wrapper {
  margin-bottom: 0.5em;
}

.header-minicart .info-wrapper th {
  padding-right: 10px;
  text-transform: uppercase;
}

.header-minicart .info-wrapper td {
  clear: right;
  color: oklch(64.8% 0.12 235);
}

.header-minicart .info-wrapper .qty-wrapper td {
  height: 33px;
  line-height: 33px;
}

.header-minicart .info-wrapper .qty {
  height: 30px;
  margin-right: 2px;
  padding-left: 4px;
  padding-right: 4px;
  text-align: center;
  width: 3.2em;
}

.header-minicart .info-wrapper .quantity-button {
  opacity: 0;
  transition-duration: 100ms;
  transition-property: opacity;
}

.header-minicart .info-wrapper .quantity-button[disabled] {
  cursor: default;
}

.header-minicart .info-wrapper .quantity-button.visible {
  opacity: 1;
}

.header-minicart .subtotal {
  background-color: oklch(89.8% 0 0);
  line-height: 2em;
  text-align: center;
}

.header-minicart .subtotal .label {
  color: white;
  text-transform: uppercase;
}

.header-minicart .subtotal .price {
  color: oklch(64.8% 0.12 235);
}

.header-minicart .minicart-actions {
  margin-top: 0;
  overflow: hidden;
  padding: 10px;
  position: relative;
  text-align: center;
}

.header-minicart .minicart-actions .checkout-button {
  min-width: 145px;
}

.header-minicart .minicart-actions .cart-link {
  font-size: var(--size-13);
  height: 33px;
  line-height: 39px;
  text-transform: uppercase;
}

.header-minicart .minicart-actions .paypal-logo .paypal-or {
  line-height: 1.6;
}

.header-minicart #minicart-error-message {
  color: red;
  display: none;
  text-align: center;
}

.header-minicart #minicart-success-message {
  color: green;
  display: none;
  text-align: center;
}

.header-minicart .jcarousel-control-prev,
.header-minicart .jcarousel-control-next {
  display: none;
}

.header-minicart.skip-active .block-cart,
.block-cart.skip-active {
  display: block;
}

@media only screen and (width >= 771px) {
  .checkout-types.minicart {
    float: none;
    text-align: center;
  }
}

@media only screen and (width <= 479px) {
  .header-minicart a.skip-cart {
    z-index: 1;
  }
}

@media only screen and (width <= 770px) {
  .header-minicart .subtotal .label {
    color: oklch(50% 0 0);
  }

  .header-minicart .minicart-wrapper::before {
    background-color: oklch(94.6% 0 0);
  }

  .header-minicart .quantity-button {
    float: none;
  }

  .header-minicart .header-minicart .block-cart {
    padding: 15px;
  }

  .header-minicart .header-minicart .block-subtitle {
    padding-top: 59px;
  }

  .header-minicart .minicart-actions {
    padding-bottom: 33px;
  }

  .header-minicart .minicart-actions .cart-link {
    bottom: 0;
    position: absolute;
    right: 10px;
  }

  .header-minicart .minicart-actions .checkout-types.minicart li {
    display: inline-block;
  }
}

@media only screen and (width <= 740px) {
  .header-minicart .minicart-actions .cart-link {
    left: 0;
    right: auto;
    text-align: center;
    width: 100%;
  }
}

@media only screen and (width <= 599px) {
  .header-minicart .minicart-actions .checkout-button {
    width: 100%;
  }
}
/* ============================================ *
 * Search - Auto Suggest
 * ============================================ */
.search-autocomplete {
  left: 0 !important;
  overflow: visible !important;
  position: relative !important;
  top: 15px !important;
  width: 100% !important;
  z-index: 200;
}

.search-autocomplete ul {
  background-color: oklch(100% 0 0);
  border: 1px solid oklch(64.8% 0.12 235);
  border-radius: 2px;
  left: 0;
  padding-left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.search-autocomplete ul li {
  border-bottom: 1px solid oklch(96.7% 0 0);
  color: oklch(64.8% 0.12 235);
  cursor: pointer;
  font-size: var(--size-12);
  padding: 4px 6px;
  text-align: left;
}

.search-autocomplete ul li:hover {
  color: oklch(60.1% 0.11 235);
}

.search-autocomplete ul li.selected {
  background-color: oklch(64.8% 0.12 235);
  color: white;
}

.search-autocomplete ul li .amount {
  float: right;
  font-weight: bold;
}

.search-autocomplete ul li:last-child {
  border-bottom: none;
}

.search-autocomplete::before {
  border-bottom: 7px solid oklch(64.8% 0.12 235);
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: none;
  content: '';
  display: block;
  height: 0;
  left: 50%;
  position: absolute;
  top: -7px;
  width: 0;
}

/* ============================================ *
 * Search - Advanced
 * ============================================ */
.advanced-search {
  background: oklch(96.7% 0 0);
  border: 1px solid oklch(94.6% 0 0);
  padding: 30px;
}

.advanced-search select.multiselect option {
  border-bottom: 1px solid oklch(94.6% 0 0);
  padding: 2px 5px;
}

@media only screen and (width <= 479px) {
  .advanced-search {
    padding: 15px;
  }
}

/* ============================================ *
 * CMS Pages
 * ============================================ */
#accordion .toggle-tabs {
  display: none;
}

#accordion > dl > dt {
  background-color: oklch(96.7% 0 0);
  border-color: oklch(84.5% 0 0);
  border-style: solid;
  border-width: 1px;
  color: oklch(50% 0 0);
  display: block;
  font-size: var(--size-14);
  font-style: normal;
  font-weight: bold;
  font-weight: normal;
  line-height: 1.4;
  margin: 0;
  margin-bottom: 0;
  padding: 7px 10px 7px 24px;
  position: relative;
  text-rendering: optimizespeed;
  text-transform: uppercase;
  user-select: none;
}

#accordion > dl > dt::after {
  border-bottom: none;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid oklch(64.8% 0.12 235);
  content: '';
  display: block;
  height: 0;
  left: 10px;
  margin-top: -3px;
  position: absolute;
  top: 50%;
  width: 0;
}

#accordion > dl > dt:hover {
  background-color: oklch(94.3% 0 0);
}

#accordion > dl > dd {
  border-color: oklch(84.5% 0 0);
  border-style: solid;
  border-width: 0 1px;
  margin: 0;
  padding: 10px;
}

#accordion > dl > dd:last-child {
  border-width: 0 1px 1px;
}

#accordion li {
  overflow: hidden;
  position: relative;
}

#accordion li .plusimage h2 {
  margin-right: 10px;
}

.contacts-index-index h1 {
  border: none;
}

#contactForm {
  padding-left: 40px;
}

#contactForm h2 {
  display: none;
}

#contactForm::after {
  clear: both;
  content: '';
  display: table;
}

#contactForm .fieldset .legend + .required {
  margin: 0;
}

@media only screen and (width <= 770px) {
  #contactForm {
    padding-left: 0;
  }
}
/* ============================================ *
 * Pricing Conditions
 * ============================================ */
.price-box .minimal-price-link .label {
  color: oklch(60% 0.16 23.3);
  font-size: var(--size-12);
  text-transform: uppercase;
}

.map-info {
  white-space: nowrap;
}

.catalog-product-view .map-info {
  white-space: normal;
}

.catalog-product-view .map-info > span {
  float: right;
  margin-bottom: 5px;
}

.catalog-product-view .map-info .price-box.map-info > a {
  float: right;
  width: 100%;
}

/* ============================================ *
 * Cookies
 * ============================================ */
.notice-cookie .notice-inner {
  padding-bottom: 0;
}

.notice-cookie .notice-inner::after {
  clear: both;
  content: '';
  display: table;
}

.notice-cookie .notice-text {
  float: left;
  max-width: 90%;
  padding-top: 4px;
  text-align: left;
}

.notice-cookie .notice-text p {
  line-height: 1.3;
  padding-bottom: 14.5px;
}

.notice-cookie .actions {
  float: left;
  padding-bottom: 14.5px;
  text-align: right;
}

@media only screen and (width <= 979px) {
  .notice-cookie .notice-text {
    max-width: 86%;
  }
}

@media only screen and (width <= 770px) {
  .notice-cookie {
    padding: 0 20px;
  }

  .notice-cookie .notice-text {
    max-width: 82%;
    padding-top: 0;
  }
}

@media only screen and (width <= 620px) {
  .notice-cookie {
    padding: 0 20px;
  }

  .notice-cookie .notice-inner {
    background-position: left 10px;
  }

  .notice-cookie .notice-inner::after {
    clear: both;
    content: '';
    display: table;
  }

  .notice-cookie .notice-text {
    float: none;
    max-width: 100%;
    padding-top: 0;
  }

  .notice-cookie .actions {
    text-align: left;
  }
}
/* ============================================ *
 * Tags
 * ============================================ */
#addTagForm button {
  margin-bottom: 10px;
  margin-top: 5px;
}

#addTagForm .form-add {
  margin-top: 10px;
}

.product-tags {
  background-color: oklch(96.7% 0 0);
  border: 1px solid oklch(84.5% 0 0);
  float: left;
  margin-bottom: 10px;
  padding: 5px 1% 10px;
  width: 98%;
}

.product-tags li {
  float: left;
  margin-right: 15px;
}

.product-tags li.last {
  margin-right: 0;
}

.tags-list {
  float: left;
  margin-bottom: 10px;
  width: 100%;
}

.tags-list > li {
  float: left;
  margin-right: 10px;
}

.block-tags .actions > a {
  font-size: var(--size-12);
}

.my-tag-edit .button.btn-remove {
  padding: 0;
}

.my-tag-edit .button.btn-remove::after {
  color: white;
}

@media only screen and (width <= 770px) {
  .tags-list > li,
  .tags-list {
    float: none;
  }
}

.captcha-note {
  clear: left;
  padding-top: 5px;
}

.captcha-image {
  display: inline;
  float: left;
  margin-bottom: 10px;
  max-width: 100%;
  position: relative;
  width: 258px;
}

.captcha-image .captcha-img {
  border: 1px solid oklch(77.6% 0 0);
  vertical-align: bottom;
  width: 100%;
}

.registered-users .captcha-image {
  margin: 0;
}

.captcha-reload {
  cursor: pointer;
  position: absolute;
  right: 2px;
  top: 2px;
}

.captcha-reload.refreshing {
  animation: rotate 1.5s infinite linear;
}

.customer-account-create .scaffold-form .captcha-input-container label:first-child {
  width: 100%;
}

.captcha-reload {
  position: absolute;
  right: 4px;
  top: 4px;
}

.captcha-img {
  border: 20px solid oklch(79.2% 0 0);
}

.captcha-input-container {
  margin-bottom: 10px;
}

.control.newsletter-box,
.captcha-input-container,
.captcha-img-container {
  clear: both;
  float: none;
}

.control.newsletter-box::after,
.captcha-input-container::after,
.captcha-img-container::after {
  clear: both;
  content: '';
  display: table;
}

#co-billing-form ul.form-list > .control {
  float: left;
  margin: 0 0 5px;
  width: 100%;
}

@media only screen and (width <= 479px) {
  .sales-order-invoice .sub-title,
  .sales-order-creditmemo .sub-title,
  .sales-order-shipment .sub-title {
    float: left;
    font-size: var(--size-15);
    text-align: center;
    width: 100%;
  }

  .sales-order-invoice .order-links,
  .sales-order-creditmemo .order-links,
  .sales-order-shipment .order-links {
    text-align: center;
    width: 100%;
  }
}
/* ============================================ *
 * Recurring Profiles
 * ============================================ */
#recurring_profile_list_view th {
  white-space: normal;
}

#recurring_profile_list_view th span {
  white-space: inherit;
}

@media only screen and (width <= 479px) {
  #recurring_profile_list_view {
    font-size: var(--size-12);
  }

  #recurring_profile_list_view a {
    font-size: inherit;
  }

  #recurring_profile_list_view th,
  #recurring_profile_list_view td {
    padding: 2px;
  }
}

.recurring-profiles-title {
  float: left;
}

.recurring-profiles-title h1 {
  margin-bottom: 7px;
}

body.customer-account .my-account .title-buttons.recurring-profiles-title-buttons {
  float: right;
  margin-bottom: 30px;
  text-align: right;
}

@media only screen and (width <= 479px) {
  body.customer-account .my-account .title-buttons.recurring-profiles-title-buttons {
    float: none;
    text-align: center;
  }
}

body.customer-account .my-account .title-buttons.recurring-profiles-title-buttons .button {
  position: static;
}

.recurring-profiles-messages::after {
  clear: both;
  content: '';
  display: table;
}

#recurring_start_date_trig {
  display: inline;
}

.catalogsearch-term-popular .tags-list {
  float: left;
  width: 100%;
}

.catalogsearch-term-popular .tags-list > li {
  float: left;
  height: 40px;
  margin-right: 25px;
}

.sidebar .widget-addbysku .sku-table .input-text:not(.qty) {
  width: 100%;
}

@media only screen and (width >= 771px) {
  .sidebar .widget-addbysku .sku-table .input-text:not(.qty) {
    max-width: 100px;
  }
}

.widget {
  clear: both;
}

.widget .pager {
  float: none;
  width: 100%;
}

@media only screen and (width >= 1199px) {
  .col2-left-layout .col-main .widget,
  .col2-right-layout .col-main .widget,
  .col3-layout .col-main .widget {
    /* Config: Columns + flexible gutter */ /* Undo three-column config */ /* Set column config */ /* Config: Columns + flexible gutter */ /* Undo three-column config */ /* Set column config */
  }

  .col2-left-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(odd),
  .col2-right-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(odd),
  .col3-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(odd) {
    clear: none;
  }

  .col2-left-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(3n + 1),
  .col2-right-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(3n + 1),
  .col3-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(3n + 1) {
    clear: none;
  }

  .col2-left-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(even),
  .col2-left-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(3n),
  .col2-right-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(even),
  .col2-right-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(3n),
  .col3-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(even),
  .col3-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(3n) {
    margin-right: 2.22222%;
  }

  .col2-left-layout .col-main .widget .products-grid--max-4-col-widget > li,
  .col2-right-layout .col-main .widget .products-grid--max-4-col-widget > li,
  .col3-layout .col-main .widget .products-grid--max-4-col-widget > li {
    margin-right: 2.22222%;
  }

  .col2-left-layout .col-main .widget .products-grid--max-4-col-widget > li,
  .col2-right-layout .col-main .widget .products-grid--max-4-col-widget > li,
  .col3-layout .col-main .widget .products-grid--max-4-col-widget > li {
    margin-right: 2.22222%;
    width: 23.33333%;
  }

  .col2-left-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(4n + 1),
  .col2-right-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(4n + 1),
  .col3-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(4n + 1) {
    clear: left;
  }

  .col2-left-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(4n),
  .col2-right-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(4n),
  .col3-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(4n) {
    margin-right: 0;
  }

  .col2-left-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(odd),
  .col2-right-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(odd),
  .col3-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(odd) {
    clear: none;
  }

  .col2-left-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(3n + 1),
  .col2-right-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(3n + 1),
  .col3-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(3n + 1) {
    clear: none;
  }

  .col2-left-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(even),
  .col2-left-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(3n),
  .col2-right-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(even),
  .col2-right-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(3n),
  .col3-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(even),
  .col3-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(3n) {
    margin-right: 2.22222%;
  }

  .col2-left-layout .col-main .widget .products-grid--max-5-col-widget > li,
  .col2-right-layout .col-main .widget .products-grid--max-5-col-widget > li,
  .col3-layout .col-main .widget .products-grid--max-5-col-widget > li {
    margin-right: 2.22222%;
  }

  .col2-left-layout .col-main .widget .products-grid--max-5-col-widget > li,
  .col2-right-layout .col-main .widget .products-grid--max-5-col-widget > li,
  .col3-layout .col-main .widget .products-grid--max-5-col-widget > li {
    margin-right: 2.22222%;
    width: 18.22222%;
  }

  .col2-left-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(5n + 1),
  .col2-right-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(5n + 1),
  .col3-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(5n + 1) {
    clear: left;
  }

  .col2-left-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(5n),
  .col2-right-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(5n),
  .col3-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(5n) {
    margin-right: 0;
  }
}

@media only screen and (width >= 770px) {
  .col1-layout .col-main .widget {
    /* Config: Columns + flexible gutter */ /* Undo three-column config */ /* Set column config */ /* Config: Columns + flexible gutter */ /* Undo three-column config */ /* Set column config */
  }

  .col1-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(odd) {
    clear: none;
  }

  .col1-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(3n + 1) {
    clear: none;
  }

  .col1-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(even),
  .col1-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(3n) {
    margin-right: 2.22222%;
  }

  .col1-layout .col-main .widget .products-grid--max-4-col-widget > li {
    margin-right: 2.22222%;
  }

  .col1-layout .col-main .widget .products-grid--max-4-col-widget > li {
    margin-right: 2.22222%;
    width: 23.33333%;
  }

  .col1-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(4n + 1) {
    clear: left;
  }

  .col1-layout .col-main .widget .products-grid--max-4-col-widget > li:nth-child(4n) {
    margin-right: 0;
  }

  .col1-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(odd) {
    clear: none;
  }

  .col1-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(3n + 1) {
    clear: none;
  }

  .col1-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(even),
  .col1-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(3n) {
    margin-right: 2.22222%;
  }

  .col1-layout .col-main .widget .products-grid--max-5-col-widget > li {
    margin-right: 2.22222%;
  }

  .col1-layout .col-main .widget .products-grid--max-5-col-widget > li {
    margin-right: 2.22222%;
    width: 18.22222%;
  }

  .col1-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(5n + 1) {
    clear: left;
  }

  .col1-layout .col-main .widget .products-grid--max-5-col-widget > li:nth-child(5n) {
    margin-right: 0;
  }
}

/* ============================================ *
 * Calendar styles (restore styles from /js/calendar)
 * ============================================ */
div.calendar table {
  border-collapse: separate;
}

div.calendar table td.button {
  background: inherit;
  color: inherit;
  display: table-cell;
  text-transform: none;
}

.swiper-container-autoheight .swiper-wrapper {
  align-items: center;
  height: auto !important;
}

.swiper-container-fade .swiper-slide:not(.swiper-slide-active) {
  opacity: 0 !important;
}

/* SHIPPING TRACKING */
.shipping-tracking-popup .tracking-table-popup tbody tr .label {
  float: left;
  margin-right: 10px;
  white-space: pre;
  width: auto;
}

.shipping-tracking-popup thead tr th {
  text-align: center;
  width: 25%;
}

.shipping-tracking-popup thead tr th::after {
  border-bottom: 1px solid oklch(84.5% 0 0);
  content: '';
  display: block;
  margin-bottom: 5px;
  padding-bottom: 3px;
  width: 100%;
}

.shipping-tracking-popup tbody tr td {
  padding: 5px 10px;
  text-align: center;
}

.shipping-tracking-popup .tracking-table-popup tbody tr td {
  float: left;
  padding: 0;
}

.shipping-tracking-popup .page-title.title-buttons {
  padding: 0 20px;
}

.shipping-tracking-popup h2.sub-title {
  padding: 0 20px;
}

.shipping-tracking-popup .tracking-table-popup tbody {
  float: left;
  padding: 20px;
  width: 100%;
}

.shipping-tracking-popup .data-table {
  float: left;
  width: 100%;
}

.page-popup.shipping-tracking-popup {
  background: oklch(100% 0 0);
  float: left;
  height: auto;
  padding: 20px 0;
  width: 100%;
}

.shipping-tracking-popup .data-table tbody tr {
  border-bottom: 1px solid oklch(84.5% 0 0) !important;
}

.shipping-tracking-popup .tracking-table-popup tbody tr {
  border-bottom: unset !important;
}

.u-container {
  margin: 0 auto;
  max-width: calc(1320px + 2rem);
  padding-inline: 1rem;
  position: relative;
}

/* FIM SHIPPING TRACKING */

/* ============================================ *
 * Social Login
 * ============================================ */
.social-login {
  margin-top: 24px;
}

.social-login .social__networks {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}

.social-login .social__networks .social {
  display: flex;
  position: relative;
}

.social-login .social__networks .social::after {
  border-radius: 0;
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0%;
  transform-origin: bottom center;
  transition: all 0.2s;
  width: 0%;
  z-index: 2;
}

.social-login .social__networks .social--google::after {
  background: linear-gradient(
    180deg,
    oklch(62.6% 0.21 29.1) 25%,
    oklch(63% 0.18 260) 25% 50%,
    oklch(64.8% 0.16 148) 50% 75%,
    oklch(83% 0.17 84) 75% 100%
  );
}

.social-login .social__networks .social--facebook::after {
  background: oklch(59.1% 0.2 265);
}

.social-login .social__networks .social--instagram::after {
  background: linear-gradient(
    180deg,
    oklch(74.7% 0.15 62.2) 20%,
    oklch(66.4% 0.17 39.2) 20% 40%,
    oklch(58.1% 0.21 19.8) 40% 60%,
    oklch(55.8% 0.2 3.99) 60% 80%,
    oklch(53.7% 0.22 346) 80% 100%
  );
}

.social-login .social__networks .social--linkedin::after {
  background: oklch(51.1% 0.15 262);
}

.social-login .social__networks .social:hover::after {
  width: 4px;
}

.social-login .social__networks .social [class^='login'] {
  align-items: center;
  background: oklch(97% 0 0);
  color: oklch(56.9% 0 0);
  display: inline-flex;
  flex: 1;
  font-weight: 600;
  gap: 6px;
  justify-content: center;
  padding: 0.75rem;
}

.social-login .social__networks .social [class^='login']:hover {
  opacity: 1;
}

.social-login .social__networks .social [class^='login'] i {
  font-size: var(--size-18);
}

.social-login .social__networks .social [class^='login'],
.social-login .social__networks .social [class^='login'] i {
  transition: all 0.3s ease;
}

.social-login .social__networks .social [class*='facebook'] i {
  color: oklch(59.1% 0.2 265);
}

.social-login .social__networks .social [class*='linkedin'] i {
  color: oklch(51.1% 0.15 262);
}

.social-login .social__networks .social [class*='google'] i {
  background: conic-gradient(
      from -45deg,
      oklch(62.6% 0.21 29.1) 110deg,
      oklch(63% 0.18 260) 90deg 180deg,
      oklch(64.8% 0.16 148) 180deg 270deg,
      oklch(83% 0.17 84) 270deg
    )
    73% 55%/150% 150% no-repeat;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.social-login .social__networks .social [class*='instagram'] i {
  background: linear-gradient(
    45deg,
    oklch(74.7% 0.15 62.2) 0%,
    oklch(66.4% 0.17 39.2) 25%,
    oklch(58.1% 0.21 19.8) 50%,
    oklch(55.8% 0.2 3.99) 75%,
    oklch(53.7% 0.22 346) 100%
  );
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.social-login .social__networks .social .social__logout {
  align-items: center;
  background: oklch(58.9% 0.22 27.7);
  color: oklch(100% 0 0);
  display: inline-flex;
  justify-content: center;
  padding: 6px 8px;
}

.social-login .social__networks .social .social__logout:hover {
  background: oklch(57.2% 0.2 26.6);
  opacity: 1;
}

.social-login .social__networks .social .social__logout i {
  font-weight: normal;
}

@media only screen and (width <= 479px) {
  .social-login .social__networks .social {
    flex: 1 0 100%;
  }
}

/* ============================================ *
 * Amasty Labels
 * ============================================ */

/* LABELS */
.c-label {
  display: grid !important;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  position: absolute;
}

.c-label > * {
  align-self: center;
  grid-area: 1/1;
}

.c-label[class*='left'] {
  left: 4px;
}

.c-label[class*='right'] {
  right: 4px;
}

.c-label[class*='bottom'] {
  bottom: 4px;
}

.c-label[class*='top'] {
  top: 4px;
}

.c-label[class*='middle'] {
  top: 50%;
  translate: 0 -50%;
}

.c-label[class*='center'] {
  left: 50%;
  translate: -50% 0;
}

.c-label[class*='middle'][class*='center'] {
  translate: -50% -50%;
}

.c-label .label__image {
  object-fit: contain !important;
}

.product-item .c-label {
  max-width: 100px;
}

.product-view.two_columns .product-image .c-label {
  max-width: 130px;
}

.product-view.three_columns .product-image .c-label {
  max-width: 100px;
}

.o-free-ship {
  color: oklch(63.5% 0.13 166);
  font-weight: bold;
}

@media (width > 770px) {
  [data-modal-type*='modal-lateral'] {
    padding: 0 !important;
  }

  [data-modal-type*='modal-lateral'] .modal-dialog {
    margin: 0;
  }

  [data-modal-type*='modal-lateral-right'] .modal-dialog {
    margin-left: auto;
  }

  [data-modal-type*='modal-lateral'] .modal-content {
    border: 0;
  }

  [data-modal-type*='modal-lateral-right'] .modal-content {
    border: 0;
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
  }

  [data-modal-type*='modal-lateral-left'] .modal-content {
    border: 0;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
  }

  [data-modal-type*='modal-lateral'] .modal-body {
    height: 100%;
    min-height: 100vh;
  }
}

.c-loading {
  --_loader-text-color: var(--gray-dark);
  --_loader-title-color: var(--gray-dark);
  --_loader-title-size: 2.625rem;
  --_loader-spinner-size: 7px;
  --_loader-text-size: 1rem;

  align-items: center;
  background-color: oklch(100% 0 0 / 80%);
  color: var(--_loader-text-color);
  display: flex;
  height: 100%;
  inset: 0;
  justify-content: center;
  position: fixed;
  text-align: center;
  width: 100%;
  z-index: 99999999;

  html:has(> &) {
    overflow: hidden;
  }
}

.c-loading__title {
  color: var(--_loader-title-color);
  font-size: var(--_loader-title-size);
  font-weight: 600;
  line-height: 1.2;
}

.c-loading__infos {
  font-size: var(--_loader-text-size);
  margin-top: 56px;
}

.c-loading--left {
  text-align: left;
}

.c-loading--right {
  text-align: right;
}

.c-loading--dark {
  --_loader-text-color: var(--light);
  --_loader-title-color: var(--light);

  background-color: oklch(28.5% 0 0 / 80%);
}

.c-loading.c-loading--dark.c-loading--boxed {
  --_loader-text-color: var(--gray-dark);
  --_loader-title-color: var(--gray-dark);
}

:has(> .c-loading--inside-box) {
  position: relative;
}

.c-loading--inside-box {
  position: absolute;
}

.c-loading--boxed .c-loading__content {
  background-color: var(--light);
  border: 1px solid oklch(94.3% 0 0);
  box-shadow: oklch(50.7% 0.02 286 / 20%) 0 7px 29px 0;
  display: grid;
  max-width: 400px;
  min-height: 30vh;
  padding: 24px 16px;
  place-content: center;
  width: 100%;
}

.c-loader-spinner {
  display: flex;
  justify-content: center;
}

.c-loader,
.c-loader::before,
.c-loader::after {
  animation: bbl-fad-in-out 1.8s infinite ease-in-out;
  animation-fill-mode: both;
  border-radius: 50%;
  display: block;
  height: 2.5em;
  width: 2.5em;
}

.c-loader {
  animation-delay: -0.16s;
  color: var(--_loader-spinner-color, var(--_loader-text-color));
  font-size: var(--_loader-spinner-size);
  position: relative;
  text-indent: -9999em;
  transform: translateZ(0);
}

.c-loader::before,
.c-loader::after {
  content: '';
  position: absolute;
  top: 0;
}

.c-loader::before {
  animation-delay: -0.32s;
  left: -3.5em;
}

.c-loader::after {
  left: 3.5em;
}

@keyframes bbl-fad-in-out {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }

  40% {
    box-shadow: 0 2.5em 0 0;
  }
}

.l-grid-row {
  display: grid;
  grid-template-columns:
    [full-start] minmax(1rem, 1fr) [content-start] repeat(12, minmax(0, 120px)) [content-end] minmax(1rem, 1fr)
    [full-end];
  left: calc(-50vw + 50%);
  position: relative;
  width: 100vw;
}

.l-grid-item {
  padding-inline: 15px;
}

.break-start {
  grid-column-start: 1 !important;
}

.break-end {
  grid-column-end: -1 !important;
}

@media (width <= 770px) {
  .l-grid-item {
    grid-column: content !important;
  }

  .m-break-start {
    grid-column-start: 1 !important;
  }

  .m-break-end {
    grid-column-end: -1 !important;
  }
}

body:has(.fixed-actions--visible) {
  .cookie-consent__icon,
  #cookie-consent,
  #scroll-top {
    display: none !important;
  }
}

.fixed-actions {
  background: oklch(100% 0 0);
  border-top: 1px solid oklch(94.3% 0 0);
  bottom: 0;
  box-shadow: oklch(50.7% 0.02 286 / 20%) 0 0 9px 0;
  display: none;
  left: 0;
  max-width: 100vw;
  padding: 1rem 2rem;
  position: fixed;
  right: 0;
  z-index: 9999998;
}

.fixed-actions--visible {
  display: block;
}

.fixed-actions button {
  font-size: 1rem;
  padding: 0.5rem 1rem;
  width: 100%;
}

[data-soul-dropdown] {
  position: relative;
  width: fit-content;
}

[data-soul-dropdown-items] {
  background: oklch(100% 0 0);
  display: grid;
  grid-template-rows: 0;
  left: 50%;
  overflow: hidden;
  position: absolute;
  top: calc(100% + 0.5rem);
  translate: -50%;
  z-index: 9999;
}

[data-soul-dropdown-items] ul {
  border: 1px solid oklch(94.3% 0 0);
  border-radius: 5px;
  width: max-content;
}

[data-soul-dropdown-items][open] {
  grid-template-rows: 1fr;
  overflow: visible;
}

[data-soul-dropdown-items][open]::before {
  background: oklch(100% 0 0);
  border: 1px solid oklch(94.3% 0 0);
  border-bottom: 0;
  border-right: 0;
  content: '';
  height: 10px;
  left: 45%;
  position: absolute;
  rotate: 45deg;
  top: -5px;
  width: 10px;
  z-index: 1;
}

[data-soul-dropdown-item] + [data-soul-dropdown-item] {
  border-top: 1px solid oklch(94.3% 0 0);
}

[data-soul-dropdown-link] {
  align-items: center;
  color: oklch(31.7% 0 0);
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 1fr;
  padding: 0.5rem 1rem;
  transition: background-color 0.3s ease;
}

[data-soul-dropdown-link][has-icon] {
  grid-template-columns: 1rem 1fr;
}

[data-soul-dropdown-link]:hover {
  background-color: oklch(97.6% 0 0);
  color: initial;
}

[data-soul-dropdown-link] i {
  color: var(--_icon-color);
  font-size: 1rem;
  text-align: center;
}

[data-soul-dropdown-link] span {
  max-width: 80px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

[data-toggle='tooltip'] {
  display: inline-block !important;
}

.o-icon {
  align-items: center;
  aspect-ratio: 1 / 1;
  display: inline-flex;
}

.o-icon svg {
  color: var(--_icon-color, currentColor);
  width: var(--_icon-size, 1rem);
}

#credential_picker_iframe {
  z-index: 999999999999999999999 !important;
}

/* Raio tematico compartilhado (migrado de header_rounded.css / header_circle.css) */
.button,
button,
.btn,
.cart-table .product-cart-actions .button,
#co-shipping-method-form .buttons-set .button,
.footer .button {
  border-radius: var(--ui-radius-button, 0);
}

.block-destaques .block-int a .block-name,
.block-destaques .block-int a .block-img {
  border-radius: var(--ui-radius-surface, 0);
}

.modal-content {
  border-radius: var(--ui-radius-modal, 0);
}

.b-radius {
  border-radius: var(--ui-radius-utility, 0);
}

.b-radius-topright-bottomright {
  border-radius: 0 var(--ui-radius-utility, 0) var(--ui-radius-utility, 0) 0;
}

.b-radius-topleft-bottomleft {
  border-radius: var(--ui-radius-utility, 0) 0 0 var(--ui-radius-utility, 0);
}

.global-site-notice.amgdpr-cookie {
  border-radius: var(--ui-radius-cookie-notice, 0) var(--ui-radius-cookie-notice, 0) 0 0;
}

.global-site-notice.amgdpr-cookie.template-2 {
  border-radius: var(--ui-radius-cookie-notice, 0);
}

:root[theme='rounded'] {
  --header-radius-search: 0.25rem;
  --header-radius-search-button: 0 0.25rem 0.25rem 0;
  --header-radius-cartpopup-button: 0.25rem;
  --header-radius-cartpopup-box: 0.25rem;
  --header-radius-message: 0.25rem;
}

:root[theme='circle'] {
  --header-radius-search: 3.125rem;
  --header-radius-search-button: 3.125rem;
  --header-radius-cartpopup-button: 1.25rem;
  --header-radius-cartpopup-box: 0.625rem;
  --header-radius-message: 0.625rem;
}

@font-face {
  ascent-override: var(--font-ascent-override, 96.87%);
  descent-override: var(--font-descent-override, 24.14%);
  font-family: 'fallback for default font';
  line-gap-override: var(--font-line-gap-override, 0%);
  src: local('Arial');
}

body {
  font-family:
    var(--default-font),
    'fallback for default font',
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    'Segoe UI',
    Roboto,
    Oxygen,
    Ubuntu,
    Cantarell,
    'Open Sans',
    'Helvetica Neue',
    sans-serif;
  overflow-x: hidden;
}

.h1,
h1 {
  font-size: var(--fs-3);
  font-weight: 600;
}

h2,
.h2 {
  font-size: var(--fs-2);
  font-weight: 600;
}

p {
  font-size: 0.875rem;
}

body,
button,
input,
select,
table,
textarea {
  font-size: var(--size-14);
  line-height: 1.5;
}

ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul li {
  color: oklch(38.3% 0 0);
}

label {
  color: oklch(62% 0 0);
}

img {
  background-repeat: no-repeat;
  background-size: cover;
  font-style: italic;
  height: auto;
  max-width: 100%;
  shape-margin: 1rem;
  vertical-align: middle;
}

button:focus {
  outline: none;
}

a:focus {
  outline: unset;
}

a:focus-visible,
button:focus-visible,
:focus-visible {
  outline: 2px solid var(--button-buy-bg-color, hsl(208 100% 34%));
  outline-offset: 2px;
}

a:hover {
  text-decoration: none;
}

.cartpopup_productname .block-icon-trash a.cartpopup_remove,
.ajaxnotice_warning,
label.required::after,
span.required::after,
p.required,
.validation-advice,
label.required::after,
#content-cart .excluir-item i,
.my-account .block-item-product .block-right .button-remove {
  color: oklch(59.2% 0.2 21.2);
}

div.validation-failed,
div.validation-advice {
  font-size: 80%;
  margin-top: 0.25rem;
}

.input-group div.validation-advice {
  display: block;
  width: 100%;
}

.input-text.validation-failed,
.validation-failed {
  border-color: oklch(59.2% 0.2 21.2);
}

.input-text.validation-failed:focus {
  outline-color: red;
}

.button,
.cart-table .product-cart-actions .button,
#co-shipping-method-form .buttons-set .button,
.footer .button,
.catalog-product-view .item .alert-stock.link-stock-alert {
  border: 0;
  display: inline-block;
  font-size: var(--size-13);
  font-weight: normal;
  font-weight: 600;
  padding: 7px 15px;
  text-align: center;
  transition: opacity 0.3s ease-in-out;
  vertical-align: middle;
  white-space: nowrap;
}

.button:focus,
.cart-table .product-cart-actions .button:focus,
#co-shipping-method-form .buttons-set .button:focus,
.footer .button:focus {
  outline: none;
}

a.button {
  text-decoration: none;
}

.sublogin-infos {
  align-items: center;
  display: flex;
  gap: 6px;
  justify-content: flex-end;
  margin: 0 auto;
  max-width: calc(1320px + 2rem);
  padding: 0.25rem 1rem;
}

.sublogin-infos a {
  align-items: center;
  display: flex;
  font-weight: 600;
  gap: 4px;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: 1px;
}

header {
  display: table;
  position: relative;
  width: 100%;
}

.logo-home {
  margin: 0;
}

.all-header {
  display: table;
  margin: 0 auto;
  max-width: calc(1320px + 2rem);
  padding: 1rem 0;
  position: relative;
}

.logo:hover {
  opacity: 1;
}

.checkout .logo img {
  max-width: 100%;
}

#search {
  border-radius: var(--header-radius-search, 0);
  box-shadow: none;
  height: 40px;
  padding-right: 50px;
  width: 100%;
}

form#search_mini_form {
  position: relative;
  width: 100%;
}

#search_mini_form .search-button {
  aspect-ratio: 1 / 1;
  background-color: var(--_search-icon-bg-color, oklch(97.6% 0 0));
  border-radius: var(--header-radius-search-button, 0);
  display: grid;
  height: 38px;
  margin-top: 1px;
  padding: 0;
  place-content: center;
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity 0.3s ease-in-out;
  width: 44px;
}

#search_mini_form #search.loading,
.form-search #search.loading {
  padding-right: 50px;
}

.loading + .search-button i {
  animation: fa-spin 2s linear infinite;
  font-family: 'Font Awesome 5 Duotone';
  font-weight: 900;
}

.loading + .search-button i::before {
  color: var(--fa-primary-color, inherit);
  content: '\f3f4';
  opacity: 1;
  opacity: var(--fa-primary-opacity, 1);
  position: absolute;
}

.loading + .search-button i::after {
  color: var(--fa-secondary-color, inherit);
  content: '\10f3f4';
  opacity: 0.4;
  opacity: var(--fa-secondary-opacity, 0.4);
}

.search-button i {
  transition: opacity 0.3s ease-in-out;
}

.c-grid-header {
  align-items: center;
  display: grid;
  gap: 0 1.5rem;
  grid-template-areas: 'logo search search search account links';
  grid-template-columns: auto 3fr 1fr 1fr;
  padding-inline: 1rem;
  width: 100%;
}

.c-grid-header .logo {
  grid-area: logo;
  line-height: 1;
}

.header-login {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  grid-area: account;
}

#header-search {
  grid-area: search;
}

.header__links {
  align-items: center;
  display: flex;
  gap: 1.5rem;
  grid-area: links;
  justify-content: flex-end;
}

.o-icon--user {
  --_icon-size: var(--_user-icon-size, 2rem);
  --_icon-color: var(--_user-icon-color, currentColor);
}

.o-icon--search {
  --_icon-size: var(--_search-icon-size, 1.25rem);
  --_icon-color: var(--_search-icon-color, currentColor);
}

.o-icon--wishlist {
  --_icon-size: var(--_wishlist-icon-size, 2rem);
  --_icon-color: var(--_wishlist-icon-color, currentColor);
}

.o-icon--cart {
  --_icon-size: var(--_cart-icon-size, 2rem);
  --_icon-color: var(--_cart-icon-color, currentColor);
}

.login-content {
  font-size: var(--fs--1, 0.875rem);
  line-height: 1;
}

.msg-welcome {
  font-size: inherit;
  margin-block: 0;
}

.login-register a {
  font-weight: 600;
  transition: opacity 0.3s ease-in-out;
}

span.msg-or {
  margin: 0 1px;
}

.header-wishlist a,
a.skip-cart {
  align-items: flex-end;
  display: flex;
  position: relative;
  transition: opacity 0.3s ease-in-out;
}

.skip-cart .count,
.count-wishlist {
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  bottom: -0.25rem;
  display: inline-grid;
  font-size: var(--fs--2);
  line-height: 1.25rem;
  place-content: center;
  position: absolute;
  right: -0.5rem;
  width: 1.25rem;
}

#search_mini_form label {
  display: block;
  height: 0;
  margin: 0;
  text-indent: -999em;
  width: 0;
}

@media (width > 770px) {
  header.fixed {
    position: sticky;
    top: 0;
    z-index: 999;
  }

  /* SenSearch (desktop): enquanto o autocomplete está aberto, o body ganha
     .sensearch-desktop-open (via search.js _showAutocomplete, removida no
     teardown único _hideAutocomplete).

     FIX DO FLICKER (v2.7.49): a versão anterior zerava o z-index do header
     (z-index:auto), o que DESTRUÍA o stacking context do header sticky e
     REFLUÍA o layout ao abrir o painel — o #search mudava de posição, o
     getBoundingClientRect que ancorou o painel ficava defasado e o reflow
     disparava resize/scroll que reposicionavam/fechavam o painel → pisca.

     Agora só ELEVAMOS o z-index do header (de 999 para acima do overlay
     99998). Mudar apenas z-index NÃO reflui o layout (position continua
     sticky). O wrapper .sensearch-ac-open (z-index:100000) segue dentro do
     stacking context do header, mas agora o header inteiro sobe acima do
     overlay — a barra de busca continua "iluminada" sobre a página escurecida,
     sem reflow e sem flicker. Só afeta o header quando o SenSearch abre o
     painel; com SenSearch off a classe nunca é adicionada e o header fica
     intacto. */
  body.sensearch-desktop-open header.fixed {
    z-index: 100000;
  }
}

#ajaxnotice::before {
  background-color: oklch(100% 0 0);
  content: '';
  height: 100%;
  left: 0;
  opacity: 0.5;
  position: fixed;
  top: 0;
  width: 100%;
}

#cartpopup_slidecontainer {
  border: 1px solid oklch(91% 0 0);
  border-radius: var(--header-radius-cartpopup-box, 0);
}

#cartpopup_slidecontainer .cartpopup_header span {
  color: oklch(26.4% 0 0);
  font-size: var(--size-16);
  font-weight: 600;
  line-height: 22px;
}

#cartpopup_slidecontainer .cartpopup_header a {
  color: oklch(50% 0 0);
  cursor: pointer;
  font-size: var(--size-18);
  line-height: 20px;
  padding: 0;
  right: 0;
}

form#cartpopup_form {
  max-height: 282px;
  overflow-y: scroll;
}

form#cartpopup_form::-webkit-scrollbar {
  width: 4px;
}

form#cartpopup_form::-webkit-scrollbar-track {
  background: transparent;
}

form#cartpopup_form table {
  width: 100%;
}

#cartpopup_slidecontainer tbody tr {
  border-bottom: 1px solid oklch(96.1% 0 0);
  display: block;
  padding: 15px 5px;
  position: relative;
}

#cartpopup_slidecontainer td.cartpopup_productimage {
  min-width: 62px;
  padding-right: 1rem;
}

#cartpopup_slidecontainer .cartpopup_productname > a {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.2;
  margin-block-end: 0.5em;
  padding-right: 1.25rem;
  text-align: left;
  text-transform: initial;
  transition: opacity 0.3s ease-in-out;
}

.cartpopup_productname .box-price,
.cartpopup_productname .box-qtd {
  line-height: 1.2;
}

.cartpopup_productname p.price-popupcart,
.cartpopup_productname p.text-qtd {
  display: inline-block;
  font-size: 0.75rem;
}

#cartpopup_slidecontainer .o-tax-included {
  font-size: 0.75rem;
}

.cartpopup_productname span.price,
.cartpopup_productname span.qtd {
  font-size: 0.75rem;
  font-weight: bold;
}

.cartpopup_productname span.qtd {
  color: oklch(38.3% 0 0);
}

.cartpopup_productname .block-icon-trash {
  position: absolute;
  right: 10px;
  top: 20px;
}

#cartpopup_slidecontainer .cartpopup_remove {
  font-size: 16px;
  transition: opacity 0.3s ease-in-out;
}

.cartpopup_producttotal {
  border: 0;
  color: oklch(50% 0 0);
  font-size: var(--size-14);
  font-weight: bold;
  padding: 15px 0;
  text-align: left;
  width: 100%;
}

.cartpopup_producttotal span.price {
  color: oklch(38.3% 0 0);
  float: right;
  font-size: var(--size-14);
}

.cartpopup_buttons {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: flex-end;
}

.cartpopup_buttons a {
  border-radius: var(--header-radius-cartpopup-button, 0);
  display: inline-block;
  font-size: var(--size-14);
  font-weight: 600;
  padding: 6px 25px;
  transition: opacity 0.3s ease-in-out;
  vertical-align: middle;
}

.cartpopup_buttons a.view-cart {
  border: 1px solid;
}

.cartpopup_buttons a.checkout {
  border: 1px solid;
}

div#cartpopup_overlay {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

div#cartpopup_overlay svg {
  height: 110px;
  width: 110px;
}

#cartpopup_slidecontainer .cartpopup_overlay_center {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
}

div#cartpopup_overlay::before {
  background-color: oklch(100% 0 0);
  content: '';
  display: table;
  height: 100%;
  left: 0;
  opacity: 0.5;
  position: absolute;
  top: 0;
  width: 100%;
}

.logo .logo-mobile {
  display: none;
}

.header-additional {
  clear: both;
}

.header-fixed .header-additional {
  position: sticky;
  z-index: 999;
}

@media screen and (width <=991px) {
  .login-content {
    align-self: auto;
  }
}

@media screen and (width <=770px) {
  .header-fixed header.fixed {
    box-shadow: 0 1px 10px oklch(0% 0 0 / 15%);
  }

  .logo-home,
  .logo {
    margin: 0 auto;
  }

  #header-search {
    margin: 1rem 0 0;
    width: 100%;
  }

  .header-login {
    display: none;
  }

  .header-wishlist {
    display: none;
  }

  .logo .logo-mobile {
    display: block;
  }

  .logo .logo-desktop {
    display: none;
  }

  .c-grid-header {
    display: grid;
    gap: 0.5rem 1.25rem;
    grid-template-areas:
      '. logo logo logo links'
      'search search search search search';
    grid-template-columns: repeat(5, 1fr);
    padding: 1rem;
  }

  .c-grid-header .header-nav {
    width: fit-content;
  }

  .c-grid-header--account-mobile {
    grid-template-areas:
      '. logo logo account links'
      'search search search search search';
    grid-template-columns: 90px repeat(2, 1fr) 35px 35px;
  }

  .c-grid-header--account-mobile .header-login {
    display: flex;
    gap: 0;
    position: relative;
  }

  .c-grid-header--account-mobile .header-login .login-content,
  .c-grid-header--account-mobile .header-login .msg-welcome {
    font-size: 0;
  }

  .c-grid-header--account-mobile .header-login .login-content .link-login,
  .c-grid-header--account-mobile .header-login .login-content .link-my-account {
    inset: 0;
    position: absolute;
  }

  .c-grid-header .header-minicart i {
    font-size: 32px !important;
  }

  .o-icon--cart {
    --_icon-size: calc(var(--_user-icon-size) * 1.2);

    position: relative;
  }
}

@media screen and (width <=500px) {
  #cartpopup_slidecontainer {
    width: 280px;
  }

  #cartpopup_slidecontainer td.cartpopup_productimage {
    display: table;
    margin: 0 auto 20px;
  }

  #cartpopup_slidecontainer td.cartpopup_productname {
    display: table;
    margin: 0 auto;
    text-align: center;
  }

  #cartpopup_slidecontainer .cartpopup_productname > a {
    margin: 0 0 5px;
    text-align: center;
  }

  .cartpopup_buttons {
    text-align: center;
  }

  .cartpopup_buttons a {
    display: block;
  }

  .cartpopup_buttons a.view-cart {
    margin: 0 0 15px;
  }

  .c-grid-header--account-mobile {
    grid-template-columns: 60px repeat(2, 1fr) 30px 30px;
  }
}

@media screen and (width <=440px) {
  p {
    font-size: var(--size-14);
  }
}

@media screen and (width <=390px) {
  .header-minicart i {
    font-size: 25px !important;
  }
}

/* QUEBRAS DO CORPO DO SITE */
/* ======================================== */
.blockFull {
  left: calc(-50vw + 50%);
  padding: 1.5rem 1rem;
  position: relative;
  width: 100vw;
}

.page {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.col2-left-layout .main {
  column-gap: 2rem;
  display: grid;
  grid-template-areas: 'aside main';
  grid-template-columns: 25% 1fr;

  & > * {
    min-width: 0;
  }

  .col-main {
    grid-area: main;
  }

  .col-left {
    grid-area: aside;
  }

  .col-left + .col-left {
    grid-row: 2;
  }

  &:has(.breadcrumbs) {
    grid-template-areas:
      'breadcrumbs breadcrumbs'
      'aside main';
  }

  &:has(.breadcrumbs) .breadcrumbs {
    grid-area: breadcrumbs;
  }

  @media (width <= 991px) {
    display: block;
  }
}

.main-container,
.footer-container {
  margin: 0 auto;
  max-width: calc(1320px + 2rem);
  padding: 1rem;
  position: relative;
  width: 100%;
}

.main-container {
  flex-grow: 1;
  padding-block: 2.5rem 3rem;
}

.cms-home .main-container {
  padding: 0 1rem;
}

@media screen and (width <=770px) {
  .main-container {
    padding-top: 2rem;
  }
}
/* FIM QUEBRAS DO CORPO DO SITE */
/* ======================================== */

/* CORES DA BUSCA, PRODUTO, CARRINHO */
/* ======================================== */
.category-products .product-item .price-box .old-price .price,
.am_search_popup .old-price .price,
.my-account .block-item-product .block-right .price-box .old-price span,
.products-grid .product-item .price-box.bundle .price-from .price {
  color: oklch(69.3% 0 0);
}

/* FIM CORES DA BUSCA, PRODUTO, CARRINHO */
/* ======================================== */

/* CARREGAMENTO */
/* ======================================== */
.popup_overlay_center {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
}

div#popup_overlay::before {
  background-color: oklch(100% 0 0);
  content: '';
  display: table;
  height: 100%;
  left: 0;
  opacity: 0.5;
  position: absolute;
  top: 0;
  width: 100%;
}

div#popup_overlay {
  display: none;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

div#popup_overlay svg {
  height: 110px;
  width: 110px;
}
/* FIM CARREGAMENTO */
/* ======================================== */

/* MENSAGENS DE AVISO */
/* ======================================== */
.messages {
  display: table;
  margin: 0 0 10px;
  padding: 10px 0 0;
  width: 100%;
}

.messages li li {
  background: oklch(96.7% 0 0);
  border-radius: var(--header-radius-message, 0);
  font-size: var(--size-15);
  margin-bottom: 5px;
  padding: 7px 10px 7px 20px;
  position: relative;
}

.messages li li::before {
  border-bottom: 6px solid transparent;
  border-right: none;
  border-top: 6px solid transparent;
  content: '';
  display: block;
  height: 0;
  left: 0;
  margin-top: -6px;
  position: absolute;
  top: 50%;
  width: 0;
}

.messages .error-msg li::before {
  border-left: 6px solid oklch(58.2% 0.22 31.4);
}

.messages .notice-msg li::before {
  border-left: 6px solid oklch(65.4% 0.18 48.5);
}

.messages .success-msg li::before {
  border-left: 6px solid oklch(66.8% 0.23 142);
}

.messages li {
  color: black;
}

.messages .error-msg li {
  background-color: oklch(95.1% 0.02 35.3);
  border-left: 5px solid oklch(58.2% 0.22 31.4);
}

.messages .notice-msg li {
  background-color: oklch(95% 0.02 40.8);
  border-left: 5px solid oklch(65.4% 0.18 48.5);
}

.messages .success-msg li {
  background-color: oklch(96.3% 0.02 130);
  border-left: 5px solid oklch(66.8% 0.23 142);
}
/*  FIM MENSAGENS DE AVISO */
/* ======================================== */

.area-parcela-desconto.reverse-billet-parcel .block-full {
  display: flex !important;
  flex-wrap: wrap !important;
}

.area-parcela-desconto.reverse-billet-parcel .block-full .ticket-produto {
  order: 2;
}

.area-parcela-desconto.reverse-billet-parcel .block-full .parcela-produto {
  order: 1;
}

/* PIX PRIO */
.cartpopup_producttotal:has(> .c-price-box) {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.cartpopup_producttotal:has(> .c-price-box) .c-price-box {
  font-weight: normal;
  text-align: right;
}

.cartpopup_producttotal:has(> .c-price-box) .c-price-box .c-price {
  align-items: baseline;
  display: flex;
  flex-direction: row;
  gap: 0.25rem;
  justify-content: flex-end;
}

.cartpopup_producttotal:has(> .c-price-box) .c-price-box .c-price__value {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.2;
}

.cartpopup_producttotal:has(> .c-price-box) .c-price-box .c-price__discount-infos {
  color: var(--discount-color);
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
}

.cartpopup_producttotal:has(> .c-price-box) .c-price-box .c-installments {
  font-size: 0.75rem;
  line-height: 1.2;
  margin-top: 0.25rem;
  text-wrap: balance;
}

.cartpopup_producttotal:has(> .c-price-box) .c-price-box .c-installments .price {
  float: none;
  font-size: inherit;
  font-weight: inherit;
}

.cartpopup_producttotal:has(> .c-price-box)
  .c-price-box
  .c-installments
  :is(.c-installments__full-price, .c-installments__value) {
  font-weight: 600;
}

.cartpopup_producttotal:has(> .c-price-box) .c-price-box .c-fee {
  font-size: 0.75rem;
}

.svg-clip-path {
  height: 0;
}

.svg-clip-path svg {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  visibility: 0;
}
.squircle {
  clip-path: url('https://shopmx.esab.com/skin/frontend/soulcore/default/#squircleClip');
}

/* --------------------------------------------------------------------------
 * Aba "Minha conta" do menu mobile de categorias (#mobileSoulmktMenu, carregada por
 * AJAX do soulsys/index/getMobileMenu): variante .acc-mnav do
 * customer/account/navigation.phtml + o a.link-logout que o controller anexa.
 * O id vence o menu.css (icone por href em .account_menu ul li a::before, link de 35px
 * de altura, grade 1.25rem 1fr no "Sair") e o rootmenu.css. A cor dos links e do "Sair"
 * fica com a loja (submenu_color do SoulCore em .rootmenu-list .account_menu ul > li > a;
 * vermelho do menu.css no "Sair"), como na aba "Categorias".
 * Fora da conta os --acc-* nao existem: os valores de fallback sao os da conta.
 * -------------------------------------------------------------------------- */
/* stylelint-disable selector-id-pattern -- id legado do rootways/megamenupro/account-menu.phtml */
#mobileSoulmktMenu .acc-mnav {
  padding-block: 0.25rem 0.5rem;
  text-align: start;
}

#mobileSoulmktMenu .acc-mnav__group-title {
  color: var(--acc-text-muted, hsl(212 7.7% 38.2%));
  font-size: var(--size-12, 0.75rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.3;
  margin: 0;
  padding: 1rem 0.9375rem 0.375rem;
  text-transform: uppercase;
}

#mobileSoulmktMenu .acc-mnav__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

#mobileSoulmktMenu .acc-mnav__list > li {
  border: 0;
  margin: 0;
  padding: 0;
}

#mobileSoulmktMenu .acc-mnav__link,
#mobileSoulmktMenu > a.log-header.link-logout {
  align-items: center;
  border: 0;
  border-bottom: 1px solid hsl(0 0% 94.1%);
  display: flex;
  font-size: var(--size-14, 0.875rem);
  font-weight: 400;
  gap: 0.75rem;
  line-height: 1.3;
  min-height: 2.75rem;
  padding: 0.5rem 0.9375rem;
  text-decoration: none;
  text-transform: none;
}

#mobileSoulmktMenu .acc-mnav__link::before {
  content: none;
}

#mobileSoulmktMenu .acc-mnav__link:hover,
#mobileSoulmktMenu > a.log-header.link-logout:hover {
  background-color: var(--acc-surface-2, hsl(210 21.4% 94.5%));
  text-decoration: none;
}

#mobileSoulmktMenu .acc-mnav__link:focus-visible,
#mobileSoulmktMenu > a.log-header.link-logout:focus-visible {
  outline: 2px solid var(--acc-focus, hsl(213.3 12.7% 13.9%));
  outline-offset: -2px;
}

#mobileSoulmktMenu .acc-mnav__link[aria-current='page'] {
  background-color: var(--acc-primary-soft, hsl(210 21.4% 94.5%));
  font-weight: 700;
}

#mobileSoulmktMenu .acc-mnav__icon,
#mobileSoulmktMenu > a.log-header.link-logout::before {
  flex: none;
  font-size: var(--size-18, 1.125rem);
  margin: 0;
  text-align: center;
  width: 1.25rem;
}

#mobileSoulmktMenu .acc-mnav__label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* "Sair" do controller: o mesmo item, com divisor acima e o icone de sair da nav da conta. */
#mobileSoulmktMenu > a.log-header.link-logout {
  border-top: 1px solid var(--acc-border, hsl(210 16.7% 90.6%));
  margin-top: 0.5rem;
}

#mobileSoulmktMenu > a.log-header.link-logout::before {
  content: '\f08b';
  font-family: 'Font Awesome 6 Pro', 'Font Awesome 5 Pro', sans-serif;
  font-weight: 400;
  rotate: none;
}
/* stylelint-enable selector-id-pattern */

:root {
  --input-border-color: oklch(85.2% 0.01 239);
  --input-radius-field: 0;
  --input-radius-check: 0.125rem;
  --input-radius-multiselect: 0.9375rem 0 0 0.9375rem;
  --input-radius-prediction: 0.25rem;
}

:root[theme='rounded'] {
  --input-radius-field: 0.25rem;
  --input-radius-check: 0.25rem;
}

:root[theme='circle'] {
  --input-radius-field: 1rem;
  --input-radius-check: 0.3125rem;
}

label {
  font-size: 0.875rem;
  font-weight: 600;
  margin-block-end: 0.25rem;
}

label.required::after,
span.required::after {
  content: ' *';
  font-size: var(--size-12);
  font-weight: normal;
}

input,
textarea,
select {
  background-color: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  border-radius: var(--input-radius-field, 0);
  color: oklch(50% 0 0);
  font-family: var(--default-font);
  font-size: 0.875rem;
  height: 40px;
  margin: 0;
  padding: 0.5rem 1rem;
  width: 100%;
}

textarea {
  height: 150px;
  max-height: 200px;
  padding: 20px;
}

:is(input, textarea, select):focus {
  border: 1px solid var(--input-border-color);
  outline: none;
}

:is(input, textarea, select, .form-control)::placeholder {
  color: oklch(72.8% 0 0);
}

input[type='checkbox'],
input[type='radio'] {
  border: none;
  box-shadow: none;
  display: none;
}

:is(input[type='checkbox'], input[type='radio']):not(.pccform input) {
  display: initial;
  height: 0;
  position: absolute;
  visibility: hidden;
  width: 0;
}

input[type='checkbox']:not(:checked) + label,
input[type='checkbox']:checked + label,
input[type='radio']:not(:checked) + label,
input[type='radio']:checked + label {
  cursor: pointer;
  display: inline-block;
  line-height: 20px;
  margin: 0;
  padding-left: 25px;
  position: relative;
  vertical-align: middle;
}

input[type='checkbox']:not(:checked) + label::before,
input[type='radio']:not(:checked) + label::before {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  border-radius: var(--input-radius-check, 0.125rem);
  content: '';
  display: inline-block;
  height: 20px;
  left: 0;
  position: absolute;
  top: 0;
  width: 20px;
}

input[type='checkbox']:disabled + label::before,
input[type='radio']:disabled + label::before {
  background: oklch(89.4% 0 0);
}

input[type='checkbox']:checked + label::after,
input[type='radio']:checked + label::after {
  border-radius: var(--input-radius-check, 0.125rem);
  content: '\f00c';
  display: table;
  font-family: 'Font Awesome 5 Pro';
  font-size: 11px;
  height: 20px;
  left: 0;
  line-height: 20px;
  position: absolute;
  text-align: center;
  top: 0;
  width: 20px;
}

input[type='radio']:checked + label::after {
  border-radius: 50%;
}

input[type='radio']:not(:checked) + label::before {
  border-radius: 50%;
}

input[type='file']::-webkit-file-upload-button {
  background: oklch(96.4% 0 0);
  border: none;
  border-right: 1px solid var(--input-border-color);
  color: oklch(62% 0 0);
  margin: 0;
  padding: 7px 10px 7px 15px;
}

input[type='file']::-webkit-file-upload-button:focus {
  outline: none;
}

input[type='file'] {
  color: oklch(62% 0 0);
  padding: 0;
}

select[multiple='multiple'] {
  border-radius: var(--input-radius-multiselect, 0.9375rem 0 0 0.9375rem);
  height: auto;
  min-height: 100px;
}

optgroup:not(:has(option)) {
  display: none;
}

optgroup[label=''] {
  font-size: 0;
}

optgroup[label=''] option {
  font-size: var(--size-13);
}

.input-group.date .dropdown-menu {
  display: block;
}

.input-group.date .input-group-addon {
  align-items: center;
  background: oklch(92.8% 0 0);
  border: 1px solid var(--input-border-color);
  display: flex;
  height: 35px;
  padding: 0 1rem;
}

.bootstrap-datetimepicker-widget > .row {
  align-items: center;
  flex-wrap: wrap;
  margin: 0;
}

.bootstrap-datetimepicker-widget .datepicker.col-md-6,
.bootstrap-datetimepicker-widget .timepicker.col-md-6 {
  flex: 0 0 50%;
  max-width: 50%;
  padding: 0 15px;
}

.bootstrap-datetimepicker-widget table td.day {
  height: 24px;
  width: 24px;
}

.bootstrap-datetimepicker-widget .timepicker .glyphicon {
  align-items: center;
  display: flex;
  justify-content: center;
}

.bootstrap-datetimepicker-widget .list-unstyled {
  padding: 0;
}

.form-group:has(.visualcaptcha, .captcha) .control-label {
  padding: 0 15px;
}

.form-group:has(.visualcaptcha) .visualcaptcha {
  align-items: center;
  display: flex;
  justify-content: center;
}

@media (width <= 770px) {
  .bootstrap-datetimepicker-widget .datepicker.col-md-6,
  .bootstrap-datetimepicker-widget .timepicker.col-md-6 {
    flex: 1 0 100%;
    max-width: 100%;
    padding: 0 15px;
  }
}
/* CONTACT FORM */
.form-institucional .pccform .radio label {
  cursor: pointer;
  display: inline-block;
  line-height: 20px;
  margin: 0;
  padding-left: 25px;
  position: relative;
  vertical-align: middle;
}

.form-institucional .pccform .radio label input {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  box-shadow: unset;
  cursor: pointer;
  display: table;
  height: 20px;
  left: 0;
  position: absolute;
  top: 0;
  width: 20px;
}

.form-institucional .pccform .radio label input:checked::after {
  border-radius: 50%;
  content: '\f00c';
  display: table;
  font-family: 'Font Awesome 5 Pro';
  font-size: 11px;
  height: 20px;
  left: 0;
  line-height: 20px;
  position: absolute;
  text-align: center;
  top: 0;
  width: 20px;
}

.form-institucional .pccform .radio label input::before {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  border-radius: 50%;
  content: '';
  display: table;
  height: 20px;
  left: 0;
  position: absolute;
  top: 0;
  width: 20px;
}

.form-institucional .pccform .radio-inline {
  cursor: pointer;
  display: inline-block;
  line-height: 20px;
  margin: 0;
  padding-left: 25px;
  position: relative;
  vertical-align: middle;
}

.form-institucional .pccform .radio-inline input::after {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  border-radius: 50%;
  content: '';
  display: table;
  height: 20px;
  left: 0;
  position: absolute;
  top: 0;
  width: 20px;
}

.form-institucional .pccform .radio-inline input {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  box-shadow: unset;
  cursor: pointer;
  display: table;
  height: 20px;
  left: 0;
  position: absolute;
  top: 0;
  width: 20px;
}

.form-institucional .pccform .radio-inline input:checked::before {
  border-radius: 50%;
  content: '\f00c';
  display: table;
  font-family: 'Font Awesome 5 Pro';
  font-size: 11px;
  height: 20px;
  left: 0;
  line-height: 20px;
  position: absolute;
  text-align: center;
  top: 0;
  width: 20px;
  z-index: 9;
}

.form-institucional .pccform .checkbox label {
  cursor: pointer;
  display: inline-block;
  line-height: 20px;
  margin: 0;
  padding-left: 25px;
  position: relative;
  vertical-align: middle;
}

.form-institucional .pccform .checkbox label input {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  box-shadow: unset;
  cursor: pointer;
  display: table;
  height: 0;
  left: 0;
  position: absolute;
  top: 0;
  width: 0;
  z-index: 0;
}

.form-institucional .pccform .checkbox label input::after {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  content: '';
  display: table;
  height: 20px;
  left: 0;
  position: absolute;
  top: 0;
  width: 20px;
}

.form-institucional .pccform .checkbox label input:checked::before {
  content: '\f00c';
  display: table;
  font-family: 'Font Awesome 5 Pro';
  font-size: 11px;
  height: 20px;
  left: 0;
  line-height: 20px;
  position: absolute;
  text-align: center;
  top: 0;
  width: 20px;
  z-index: 9;
}

.form-institucional .pccform .checkbox-inline {
  cursor: pointer;
  display: inline-block;
  line-height: 20px;
  margin: 0;
  padding-left: 25px;
  position: relative;
  vertical-align: middle;
}

.form-institucional .pccform .checkbox-inline input {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  box-shadow: unset;
  cursor: pointer;
  display: table;
  height: 0;
  left: 0;
  position: absolute;
  top: 0;
  width: 0;
}

.form-institucional .pccform .checkbox-inline input:checked::before {
  content: '\f00c';
  display: table;
  font-family: 'Font Awesome 5 Pro';
  font-size: 11px;
  height: 20px;
  left: 0;
  line-height: 20px;
  position: absolute;
  text-align: center;
  top: 0;
  width: 20px;
  z-index: 9;
}

.form-institucional .pccform .checkbox-inline input::after {
  background: oklch(100% 0 0);
  border: 1px solid var(--input-border-color);
  content: '';
  display: table;
  height: 20px;
  left: 0;
  position: absolute;
  top: 0;
  width: 20px;
}
/* FIM CONTACT FORM */

.validation-advice[id*=':street2'] {
  order: 3;
}

div[id*='place-autocomplete-results'] {
  background: white;
  border: 1px solid var(--input-border-color);
  box-shadow: 0 10px 25px oklch(0% 0 0 / 15%);
  display: none;
  list-style: none;
  margin: 0;
  max-height: 300px;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  scrollbar-width: thin;
  width: calc(100% - 10px);
  z-index: 1000;
}

div[id*='place-autocomplete-results'].show {
  display: block;
}

div[id*='place-autocomplete-results'] li {
  margin: 0;
  padding: 0;
}

div[id*='place-autocomplete-results'] li a {
  border-bottom: 1px solid var(--input-border-color);
  color: oklch(32.1% 0 0);
  cursor: pointer;
  display: block;
  padding: 0.5rem 1rem;
  text-decoration: none;
  transition: background-color 0.2s;
}

div[id*='place-autocomplete-results'] li:last-child a {
  border-bottom: none;
}

div[id*='place-autocomplete-results'] li a:hover,
div[id*='place-autocomplete-results'] li.selected a {
  background-color: oklch(98.2% 0 248);
}

div[id*='place-autocomplete-results'] .prediction-main {
  color: oklch(32.1% 0 0);
  font-weight: 600;
}

div[id*='place-autocomplete-results'] .prediction-secondary {
  color: oklch(51% 0 0);
  display: flex;
  flex-wrap: wrap;
  font-size: 0.875rem;
  gap: 0.25rem;
  justify-content: space-between;
  margin-top: 0.25rem;
}

div[id*='place-autocomplete-results'] .prediction-select {
  align-self: flex-end;
  background: var(--blue);
  border-radius: var(--input-radius-prediction, 0.25rem);
  color: oklch(100% 0 0);
  font-size: 10px;
  font-weight: bold;
  padding: 0.125rem 0.5rem;
}

/* ==========================================================================
 * Campos modernos fora da conta: o mesmo padrao do .acc-field do account.css
 * (altura, borda, raio por tema, tipografia, foco, erro, disabled/readonly).
 *
 * Escopo conservador:
 * - so dentro de .main-container (header, rodape, newsletter do rodape e modais anexados
 *   ao body ficam de fora);
 * - so campos de texto, select (sem multiple) e textarea, e so os "genericos": com
 *   .input-text ou .form-control, ou dentro de .form-list, .fieldset, .form-group,
 *   .input-box, .field ou do avise-me;
 * - fora os componentes com layout proprio (lista em :not abaixo) e os forms ja
 *   redesenhados da conta (.acc-form, .acc-auth), que tem as proprias regras;
 * - fora os forms de meio de pagamento (#tabPaymentContent, payment_form_*):
 *   cartao com secure fields (div em iframe) ficaria com alturas e bordas misturadas ao
 *   lado dos inputs novos. Alinhar esses forms e trabalho dos modulos de pagamento.
 *
 * Especificidade (0,1,1): ganha do .form-control do Bootstrap e das regras soltas de
 * elemento; perde para as regras especificas de cada componente (quantidade, filtros,
 * cupom etc.), que continuam mandando no que declaram. Os valores repetem os tokens
 * --acc-* do account.css com o mesmo fallback, e o raio vem de --acc-radius-control
 * (ou --input-radius-field, que tem os mesmos valores por tema).
 * ========================================================================== */

/* Cor de destaque da loja para o anel de foco (a mesma cadeia do --acc-primary). Registrada
   como <color>: --button-buy-bg-color pode vir vazio do head.phtml, e um valor invalido no
   computed value cai no initial-value. */
@property --form-field-accent {
  inherits: true;
  initial-value: hsl(213.3 12.7% 13.9%);
  syntax: '<color>';
}

:root {
  --form-field-accent: var(--button-bg-color, var(--button-buy-bg-color, hsl(213.3 12.7% 13.9%)));
}

.main-container :is(input, select, textarea):where(
input:not([type]), input[type='text'], input[type='email'], input[type='tel'], input[type='password'],
input[type='number'], input[type='search'], input[type='url'], input[type='date'], input[type='datetime-local'],
select:not([multiple]), textarea
):where(
.input-text, .form-control, .form-list *, .fieldset *, .form-group *, .input-box *, .field *, .amxnotif-input-fields *
):not(:where(
.acc-form *, .acc-auth *, .acc-field__input, .acc-search *,
.pccform *, .pccf *, .form-institucional *,
.modal *, #cartpopup_slidecontainer *,
.qty, [name*='qty'], .qty-wrapper *, .quantity *, .qty-holder *, #product-matrix-std *,
.toolbar *, .pager *, .limiter *, .sorter *,
.c-coupon *, #discount-coupon-form *, .giftcard *,
#checkout-payment-method-load *, #tabPaymentContent *, [id^='payment_form_'] *,
.block-shipping-estimate *, #content_shipping_estimate *, .calculate-shipping-sellers-int *, .input-multiseller *,
.block-layered-nav *, #narrow-by-list *, [class*='amshopby'], [class*='amshopby'] *,
[class*='sensearch'], [class*='sensearch'] *,
.bootstrap-datetimepicker-widget *, .block-subscribe *, .newsletter *
)) {
  background-color: var(--acc-surface, hsl(0 0% 100%));
  border: 1px solid var(--acc-border-control, hsl(211.8 7.4% 55.1%));
  border-radius: var(--acc-radius-control, var(--input-radius-field, 0));
  box-shadow: none;
  color: var(--acc-text, hsl(213.3 12.7% 13.9%));

  /* 1rem = 16px tambem no celular: abaixo disso o iOS da zoom no foco. */
  font-size: 1rem;
  height: 3rem;
  line-height: 1.25;
  max-width: 100%;
  padding: 0 0.875rem;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

.main-container textarea:where(
.input-text, .form-control, .form-list *, .fieldset *, .form-group *, .input-box *, .field *, .amxnotif-input-fields *
):not(:where(
.acc-form *, .acc-auth *, .acc-field__input, .acc-search *,
.pccform *, .pccf *, .form-institucional *,
.modal *, #cartpopup_slidecontainer *,
.qty, [name*='qty'], .qty-wrapper *, .quantity *, .qty-holder *, #product-matrix-std *,
.toolbar *, .pager *, .limiter *, .sorter *,
.c-coupon *, #discount-coupon-form *, .giftcard *,
#checkout-payment-method-load *, #tabPaymentContent *, [id^='payment_form_'] *,
.block-shipping-estimate *, #content_shipping_estimate *, .calculate-shipping-sellers-int *, .input-multiseller *,
.block-layered-nav *, #narrow-by-list *, [class*='amshopby'], [class*='amshopby'] *,
[class*='sensearch'], [class*='sensearch'] *,
.bootstrap-datetimepicker-widget *, .block-subscribe *, .newsletter *
)) {
  /* A mesma altura do legado (150px, com o max-height de 200px dele). */
  height: 9.375rem;
  padding: 0.75rem 0.875rem;
}

.main-container :is(input, select, textarea):where(
input:not([type]), input[type='text'], input[type='email'], input[type='tel'], input[type='password'],
input[type='number'], input[type='search'], input[type='url'], input[type='date'], input[type='datetime-local'],
select:not([multiple]), textarea
):where(
.input-text, .form-control, .form-list *, .fieldset *, .form-group *, .input-box *, .field *, .amxnotif-input-fields *
):not(:where(
.acc-form *, .acc-auth *, .acc-field__input, .acc-search *,
.pccform *, .pccf *, .form-institucional *,
.modal *, #cartpopup_slidecontainer *,
.qty, [name*='qty'], .qty-wrapper *, .quantity *, .qty-holder *, #product-matrix-std *,
.toolbar *, .pager *, .limiter *, .sorter *,
.c-coupon *, #discount-coupon-form *, .giftcard *,
#checkout-payment-method-load *, #tabPaymentContent *, [id^='payment_form_'] *,
.block-shipping-estimate *, #content_shipping_estimate *, .calculate-shipping-sellers-int *, .input-multiseller *,
.block-layered-nav *, #narrow-by-list *, [class*='amshopby'], [class*='amshopby'] *,
[class*='sensearch'], [class*='sensearch'] *,
.bootstrap-datetimepicker-widget *, .block-subscribe *, .newsletter *
)):focus {
  border-color: var(--acc-text, hsl(213.3 12.7% 13.9%));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--form-field-accent, hsl(213.3 12.7% 13.9%)) 28%, transparent);
  outline: none;
}

.main-container :is(input, select, textarea):where(
input:not([type]), input[type='text'], input[type='email'], input[type='tel'], input[type='password'],
input[type='number'], input[type='search'], input[type='url'], input[type='date'], input[type='datetime-local'],
select:not([multiple]), textarea
):where(
.input-text, .form-control, .form-list *, .fieldset *, .form-group *, .input-box *, .field *, .amxnotif-input-fields *
):not(:where(
.acc-form *, .acc-auth *, .acc-field__input, .acc-search *,
.pccform *, .pccf *, .form-institucional *,
.modal *, #cartpopup_slidecontainer *,
.qty, [name*='qty'], .qty-wrapper *, .quantity *, .qty-holder *, #product-matrix-std *,
.toolbar *, .pager *, .limiter *, .sorter *,
.c-coupon *, #discount-coupon-form *, .giftcard *,
#checkout-payment-method-load *, #tabPaymentContent *, [id^='payment_form_'] *,
.block-shipping-estimate *, #content_shipping_estimate *, .calculate-shipping-sellers-int *, .input-multiseller *,
.block-layered-nav *, #narrow-by-list *, [class*='amshopby'], [class*='amshopby'] *,
[class*='sensearch'], [class*='sensearch'] *,
.bootstrap-datetimepicker-widget *, .block-subscribe *, .newsletter *
)):is([readonly], :disabled) {
  background-color: var(--acc-surface-2, hsl(210 21.4% 94.5%));
  color: var(--acc-text-2, hsl(212 9.2% 32%));
}

.main-container :is(input, select, textarea):where(
input:not([type]), input[type='text'], input[type='email'], input[type='tel'], input[type='password'],
input[type='number'], input[type='search'], input[type='url'], input[type='date'], input[type='datetime-local'],
select:not([multiple]), textarea
):where(
.input-text, .form-control, .form-list *, .fieldset *, .form-group *, .input-box *, .field *, .amxnotif-input-fields *
):not(:where(
.acc-form *, .acc-auth *, .acc-field__input, .acc-search *,
.pccform *, .pccf *, .form-institucional *,
.modal *, #cartpopup_slidecontainer *,
.qty, [name*='qty'], .qty-wrapper *, .quantity *, .qty-holder *, #product-matrix-std *,
.toolbar *, .pager *, .limiter *, .sorter *,
.c-coupon *, #discount-coupon-form *, .giftcard *,
#checkout-payment-method-load *, #tabPaymentContent *, [id^='payment_form_'] *,
.block-shipping-estimate *, #content_shipping_estimate *, .calculate-shipping-sellers-int *, .input-multiseller *,
.block-layered-nav *, #narrow-by-list *, [class*='amshopby'], [class*='amshopby'] *,
[class*='sensearch'], [class*='sensearch'] *,
.bootstrap-datetimepicker-widget *, .block-subscribe *, .newsletter *
)):disabled {
  cursor: not-allowed;
}

/* Depois do :focus: o campo invalido continua com a borda de erro mesmo focado. */
.main-container :is(input, select, textarea):where(
input:not([type]), input[type='text'], input[type='email'], input[type='tel'], input[type='password'],
input[type='number'], input[type='search'], input[type='url'], input[type='date'], input[type='datetime-local'],
select:not([multiple]), textarea
):where(
.input-text, .form-control, .form-list *, .fieldset *, .form-group *, .input-box *, .field *, .amxnotif-input-fields *
):not(:where(
.acc-form *, .acc-auth *, .acc-field__input, .acc-search *,
.pccform *, .pccf *, .form-institucional *,
.modal *, #cartpopup_slidecontainer *,
.qty, [name*='qty'], .qty-wrapper *, .quantity *, .qty-holder *, #product-matrix-std *,
.toolbar *, .pager *, .limiter *, .sorter *,
.c-coupon *, #discount-coupon-form *, .giftcard *,
#checkout-payment-method-load *, #tabPaymentContent *, [id^='payment_form_'] *,
.block-shipping-estimate *, #content_shipping_estimate *, .calculate-shipping-sellers-int *, .input-multiseller *,
.block-layered-nav *, #narrow-by-list *, [class*='amshopby'], [class*='amshopby'] *,
[class*='sensearch'], [class*='sensearch'] *,
.bootstrap-datetimepicker-widget *, .block-subscribe *, .newsletter *
)).validation-failed {
  border-color: var(--acc-danger-text, hsl(4.2 76.5% 40%));
}

/* Mensagem de validacao do Prototype, no mesmo escopo e com as mesmas exclusoes. */
.main-container .validation-advice:not(:where(
.acc-form *, .acc-auth *, .acc-field__input, .acc-search *,
.pccform *, .pccf *, .form-institucional *,
.modal *, #cartpopup_slidecontainer *,
.qty, [name*='qty'], .qty-wrapper *, .quantity *, .qty-holder *, #product-matrix-std *,
.toolbar *, .pager *, .limiter *, .sorter *,
.c-coupon *, #discount-coupon-form *, .giftcard *,
#checkout-payment-method-load *, #tabPaymentContent *, [id^='payment_form_'] *,
.block-shipping-estimate *, #content_shipping_estimate *, .calculate-shipping-sellers-int *, .input-multiseller *,
.block-layered-nav *, #narrow-by-list *, [class*='amshopby'], [class*='amshopby'] *,
[class*='sensearch'], [class*='sensearch'] *,
.bootstrap-datetimepicker-widget *, .block-subscribe *, .newsletter *
)) {
  color: var(--acc-danger-text, hsl(4.2 76.5% 40%));
  font-size: var(--size-13, 0.8125rem);
  font-weight: 600;
  line-height: 1.4;
  margin: var(--acc-space-1, 0.25rem) 0 0;
}

@media only screen and (min-width: 771px) {
  #header-nav { clear:both;display: block; float: left; width: 100%;}
}
.nav-block { margin: 0px auto; max-width: calc(1320px + 2rem); padding: 0px 1rem;position: relative;}
.rootmenu-list li.rootmenu-mobile-title { display: none;font-size: var(--size-18); padding: 10px 15px; }
.mobile-sub .rootmenu-mobile { position: absolute; right: 1rem; top: 1rem; background-color: transparent; }
.mobile-sub .rootmenu-mobile .fa-times-circle {font-size: var(--size-20); }
.rootmenu-list > li > a { padding: 0px 20px; transition: opacity 0.3s ease-in-out; }
/* SIMPLEDROPDOWN */
/* =============================== */
.rootmenu-submenu{border:1px solid; border-bottom:2px solid;}
.rootmenu-list > li {display: inline-block; float: none;font-weight: 600;}
.rootmenu-list .rootmenu-submenu .rootmenu-submenu-sub, .halflinkonly .level2-popup .level3-popup, .halfmenu.topmenu_main.clearfix.top-half-right ul.level2-popup ul.level3-popup, .halfmenu.topmenu_main.clearfix.top-half-left .level2-popup li .level3-popup{border-bottom:2px solid;}
.rootmenu-submenu-sub > li > a, .halflinkonly .level2-popup .level3-popup li a, .top-half-right .level2-popup .level3-popup li a, .top-half-left .level2-popup .level3-popup li a{background:oklch(98.8% 0 0);border-bottom: 1px solid oklch(96.1% 0 0);}

.rootmenu-submenu > li > a, .rootmenu .halfmenu ul > li > a {display: block; font-weight: normal; line-height: 22px; padding: 8px 17px 8px 17px; text-align: left; }
.rootmenu .halfmenu, .rootmenu-submenu{font-size: var(--size-13);}
/* FIM SIMPLEDROPDOWN */
/* =============================== */

/* HALF WIDTH - ONLY LINKS */
/* =============================== */
.halfmenu.topmenu_main.clearfix.halflinkonly  {border-bottom: 2px solid;}
.halfmenu.topmenu_main.clearfix.halflinkonly .level2-popup li {transition: all 0.3s;}
/* FIM HALF WIDTH - ONLY LINKS */
/* =============================== */

/* HALF WIDTH - RIGHT BLOCK */
/* =============================== */
.halfmenu.topmenu_main.clearfix.top-half-right a {transition: all 0.3s;}
.halfmenu.topmenu_main.clearfix.top-half-right ul.level2-popup ul.level3-popup {left: 75%;}
.rootmenu-list li .halfmenu.topmenu_main.clearfix.top-half-right {width: 500px;}
.rootmenu-list li .halfmenu.topmenu_main.clearfix.top-half-right li .rootmenu-click i { display: none; }
.rootmenu-list li.right .halfmenu.topmenu_main.clearfix.top-half-right { right: 0; }
/* FIM HALF WIDTH - RIGHT BLOCK */
/* =============================== */

/* HALF WIDTH - LEFT BLOCK */
/* =============================== */
.halfmenu.topmenu_main.clearfix.top-half-left {border-bottom: 2px solid;}
.halfmenu.topmenu_main.clearfix.top-half-left a {transition: all 0.3s;}.halfmenu.topmenu_main.clearfix.top-half-left .level2-popup li .level3-popup {left: 85%;}
/* FIM HALF WIDTH - LEFT BLOCK */
/* =============================== */

/* FULL WIDTH - SUB CATEGORY WITH RIGHT BLOCK (SEPARATING CATEGORIES WITH AND WITHOUT SUB CATEGORY) */
/* =============================== */
.megamenu.topmenu_main.clearfix.categoriesmenu {border-bottom: 2px solid;}
.megamenu.topmenu_main.clearfix.categoriesmenu .root-col-4.clearfix .root-col-1 {padding: 8px 0;}
.megamenu.topmenu_main.clearfix.categoriesmenu .root-col-4.clearfix .root-col-1 .title {padding: 0;}
.megamenu.topmenu_main.clearfix.contentmenu .root-col-2.clearfix { padding: 0; }
.megamenu.topmenu_main.clearfix.contentmenu .root-col-2.clearfix .title { height: auto; margin: 0; padding: 8px 0; }
.megamenu.topmenu_main.clearfix.categoriesmenu .title a, .megamenu.topmenu_main.clearfix.contentmenu .title a{font-size: var(--size-16);font-weight: 600;transition: all 0.3s;}
.rootmenu .categoriesmenu ul > li > a, .megamenu.topmenu_main.clearfix.categoriesmenu div li a, .catlinksstyle > li > a{ border-right: 0 none; display:block;font-size: var(--size-14);font-weight:normal;line-height:18px; text-align:left;transition: all 0.3s;}
.rootmenu .categoriesmenu ul > li.rootmenu-view-more > a, .megamenu.topmenu_main.clearfix.categoriesmenu div li.rootmenu-view-more a{ font-size: 13px; font-weight: 600; }
.megamenu.topmenu_main.clearfix.categoriesmenu div li[aria-expanded="true"] { padding: 0px; }

.halfmenu.topmenu_main.clearfix.top-half-right, .halfmenu.topmenu_main.clearfix.halflinkonly, .halfmenu.topmenu_main.clearfix.top-half-left, .megamenu.topmenu_main.clearfix.categoriesmenu, .megamenu.topmenu_main.clearfix.contentmenu, .rootmenu-submenu, .rootmenu .rootmenu-list .custom-menus .custom-menu-submenu{border: 1px solid oklch(96.1% 0 0);border-bottom:2px solid;box-shadow: 0px 0px 2px oklch(76.7% 0 0);}
/* FIM FULL WIDTH - SUB CATEGORY WITH RIGHT BLOCK (SEPARATING CATEGORIES WITH AND WITHOUT SUB CATEGORY) */
/* =============================== */

/* FULL WIDTH - SUB CATEGORY WITH LEFT BLOCK */
/* =============================== */
.megamenu.topmenu_main.clearfix.contentmenu .root-col-3.clearfix .title { height: auto; margin: 0;padding: 15px 0 0px 10px;}
/* FIM FULL WIDTH - SUB CATEGORY WITH LEFT BLOCK */
/* =============================== */

/* FULL WIDTH - WITH SUB CATEGORY */
/* =============================== */
.megamenu.topmenu_main.clearfix.categoriesmenu .title, .megamenu.topmenu_main.clearfix.contentmenu .root-col-3.clearfix .title {padding: 8px 0;}
.megamenu.topmenu_main.clearfix.categoriesmenu div li, .catlinksstyle > li { border-right: 0 none; display: block;font-weight: normal; line-height: 18px; padding: 6px 10px 6px 0; text-align: left;}
/* FIM FULL WIDTH - WITH SUB CATEGORY */
/* =============================== */

.account_menu ul { margin-block-start: .5rem; }

.account_menu ul li a::before { font-family: 'Font Awesome 5 Pro'; font-size: 1rem; font-weight: 400; margin-inline: auto; }
.account_menu ul li a[href*="account"]::before { content: '\f0db'; }
.account_menu ul li a[href*="account/edit"]::before { content: '\f53c'; }
.account_menu ul li a[href*="address"]::before { content: '\f015'; }
.account_menu ul li a[href*="order/history"]::before { content: '\f290'; }
.account_menu ul li a[href*="wishlist"]::before { content: '\f004'; }
.account_menu ul li a[href*="cartlist"]::before { content: '\f07a'; }
.account_menu ul li a[href*="xnotif/stock"]::before { content: '\f49a'; }
.account_menu ul li a[href*="customerrma"]::before { content: '\f021'; }
.account_menu ul li a[href*="soulvendorchat"]::before { content: '\f086'; }
.account_menu ul li a[href*="helpdesk"]::before { content: '\f82d'; }
.account_menu ul li a[href*="gdpr"]::before { content: '\f21b'; }
.account_menu ul li a[href*="downloadable"]::before { content: '\f019'; }
.account_menu ul li a[href*="review"]::before { content: '\f005'; }
.account_menu ul li a[href*="sublogin"]::before { content: '\f0c0'; }
.account_menu ul li a[href*="soulrecurrence"]::before { content: '\f783'; }
.account_menu ul li a[href*="soulmktplc/vendor"]::before { content: '\f090'; }
.account_menu ul li a[href*="oauth/customer_token"]::before { content: '\f1fa'; }
.account_menu ul li a[href*="tag/customer"]::before { content: '\f02b'; }
.account_menu ul li a[href*="sales/billing_agreement"]::before { content: '\f56c'; }
.account_menu ul li a[href*="sales/recurring_profile"]::before { content: '\f364'; }
.account_menu ul li a[href*="newsletter"]::before { content: '\f004'; }

header .nav-block .rootmenu.mobile .rootmenu-list .voltar {display: none;}

@media screen and (max-width:770px){
    div#header-nav { left: 15px; position: absolute; top: 21px; }
    .nav-block { padding: 0px; }
    .rootmenu-mobile { padding: 13px 13px; }
    .rootmenu-mobile > .icon-bar { height: 3px; width: 20px; }
    .rootmenu-mobile > .icon-bar:first-child { margin: 0px; }

    .rootmenu-list { background-color: oklch(100% 0 0); height: 100%; max-width: 280px; overflow-y: scroll; scrollbar-width: thin; }
    .fundo-mm { background-color: oklch(50% 0 0); height: 100vh; left:0px; opacity: 0.5; position: fixed; top: 0px; width: 100%;}
    .rootmenu-list li.rootmenu-mobile-title { display: block; }
    .not-logged .rootmenu-list li.rootmenu-mobile-title.menu-cat { display: none; }
    .rootmenu-list .header_menu a.log-header.link-login { border: none; display: inline-block; padding: 0px 0px 0px 5px; }
    .rootmenu-list li.rootmenu-mobile-title p.msg-welcome { font-size: var(--size-14); margin: 5px 0px 0px; }
    .rootmenu-list li.rootmenu-mobile-title.menu-cat{padding: 5px 0px 0px;}
    .rootmenu-list li.rootmenu-mobile-title.menu-cat ul.nav.nav-tabs { border: 0px; }
    .rootmenu-list li.rootmenu-mobile-title.menu-cat ul.nav.nav-tabs li { margin: 0px; }
    .rootmenu-list li.rootmenu-mobile-title.menu-cat ul.nav.nav-tabs li a { padding: 0px; text-align: center; border-radius: 0; border: 1px solid oklch(100% 0 0); }
    .rootmenu-list li.rootmenu-mobile-title.menu-cat ul.nav.nav-tabs li a:hover { background-color: oklch(100% 0 0); border: 1px solid oklch(100% 0 0); }
    .rootmenu-list li.rootmenu-mobile-title.menu-cat ul.nav.nav-tabs li a:not(.active) { background: oklch(97.6% 0 0); border-radius: 0; color: oklch(35.2% 0 0); border-color: oklch(97.6% 0 0); }
    .rootmenu-list .account_menu .block-btn-mobile, .rootmenu-list .account_menu .block-title { display: none; }
    .rootmenu-list .account_menu .block-content .block-btn-close, .rootmenu-list .account_menu .block-content .block__header { display: none; }
    .rootmenu-list .account_menu .block-content ul li { border: none; padding: 0px; min-height: 40px; border-bottom: 1px solid oklch(97.6% 0 0); display: flex; align-items: center; margin-block-end: 0; }
    .rootmenu-list .account_menu .block-content ul li a { align-items: center; border: none; display: grid; grid-gap: 0.75rem; grid-template-columns: 1.25rem 1fr; line-height: normal; padding: .5rem; text-transform: initial; width: 100%; }

    .rootmenu-click > .rootmenu-arrow { display: block;float: right; height: 40px; line-height: 40px; text-align: center; width: 40px;}
    .rootmenu-list > li{display:block;}
    .rootmenu-list > li a, .rootmenu-list ul > li > a { border-bottom: 1px solid oklch(96.1% 0 0); display: block; font-size: var(--size-14); line-height: 35px; padding: 2px 15px;}
    .rootmenu-list .account_menu ul > li > a { text-transform: none; }
    .rootmenu .mobile-sub > li a.submenu-title, .rootmenu .rootmenu-list ul > li > a.submenu-title{border:none}
    .rootmenu-submenu{border:none;box-shadow: none;}
    .rootmenu-submenu-sub > li > a, .halflinkonly .level2-popup .level3-popup li a, .top-half-right .level2-popup .level3-popup li a, .top-half-left .level2-popup .level3-popup li a{background-color:oklch(100% 0 0);}

    .mobile-sub > li a.submenu-title, .rootmenu .halfmenu ul > li > a.submenu-title { font-size: var(--size-18);line-height: 26px; padding: 10px 15px; }
    .rootmenu-click .rootmenu-arrow.rootmenu-rotate:before {display: none; font-size: var(--size-12); margin: 3px 5px 0px 0px; -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg); vertical-align: middle; }
    .rootmenu-click .rootmenu-arrow.rootmenu-rotate { height: 46px; padding-right: 10px;width: 100%;}
    .rootmenu-submenu > li > a.submenu-title { font-size: var(--size-18); }
    .rootmenu-list .rootmenu-submenu .rootmenu-submenu-sub { left: 0px; position: relative; top: 0px; }

    .rootmenu > .rootmenu-list > li > .topmenu_main { padding: 0px; }
    .topmenu_main .float-left { max-width: 100%; padding: 0px; }
    .megamenu.topmenu_main.clearfix.categoriesmenu .title, .megamenu.topmenu_main.clearfix.contentmenu .root-col-3.clearfix .title{ padding: 0px; }
    .megamenu.topmenu_main.clearfix.categoriesmenu .title a, .rootmenu .categoriesmenu ul > li > a, .megamenu.topmenu_main.clearfix.categoriesmenu div li a{ display: block; font-size: var(--size-14); line-height: 35px; padding: 2px 15px; }
    .rootmenu .categoriesmenu ul > li > a { display: block; font-size: var(--size-14); line-height: 35px; padding: 2px 15px; }
    .megamenu.topmenu_main.clearfix.categoriesmenu .collapse.show li { list-style: none; margin: 0px; padding: 0px; }
    .megamenu.topmenu_main.clearfix.categoriesmenu .collapse li a { display: block; font-size: var(--size-14); line-height: 35px; padding: 2px 15px; }
    .megamenu.topmenu_main.clearfix.categoriesmenu div li, .catlinksstyle > li{padding:0px;}

    .rootmenu > .rootmenu-list > li > .topmenu_main .clearfix { padding: 0px; }
    .rootmenu .megamenu.topmenu_main.clearfix.contentmenu .clearfix .title { display: block; padding: 0px; }
    .rootmenu .megamenu.topmenu_main.clearfix.contentmenu .clearfix .title a { display: block; font-size: var(--size-14); line-height: 35px; padding: 2px 15px; }
    .nav-block .mobile-sub.rootmenu-list > li > ul.rootmenu-submenu li > a { padding: 2px 15px; }
    .nav-block .mobile-sub.rootmenu-list > li > ul.rootmenu-submenu li > a.submenu-title{padding: 10px 15px;}

    .rootmegamenu_block img { display: none; }

    .halfmenu.topmenu_main.clearfix.top-half-right, .halfmenu.topmenu_main.clearfix.halflinkonly, .halfmenu.topmenu_main.clearfix.top-half-left, .megamenu.topmenu_main.clearfix.categoriesmenu, .megamenu.topmenu_main.clearfix.contentmenu, .rootmenu-submenu{border:none;box-shadow:none;}

    .rootmenu-list li .halfmenu.topmenu_main.clearfix.top-half-right {width: 100%;}

    .nav-block .mobile-sub.rootmenu-list .custom-menus .custom-menu-submenu.topmenu_main { float: left; max-width: 280px; min-width: unset; padding: 0; width: 100%; }
    .nav-block .mobile-sub.rootmenu-list .custom-menus .custom-menu-submenu.topmenu_main ul li i { display: none; }
    .nav-block .mobile-sub.rootmenu-list .custom-menus .custom-menu-submenu.topmenu_main ul li.menuiotone i { display: flex; float: right; margin-right: 5px; margin-top: 15px; right: 0; width: auto; }
    .nav-block .mobile-sub.rootmenu-list .custom-menus .custom-menu-submenu.topmenu_main ul li.menuiotone { position: relative; }
    .nav-block .mobile-sub.rootmenu-list .custom-menus .custom-menu-submenu.topmenu_main ul li:last-child a { border: 0; }
    .rootmenu .rootmenu-list .custom-menus .custom-menu-submenu ul.list-pages li:hover { padding-left: 0; }
    .nav-block .mobile-sub.rootmenu-list .custom-menus .custom-menu-submenu.topmenu_main ul li.menuiotone ul { padding-left: 10px; position: relative; }
    .nav-block .mobile-sub.rootmenu-list .custom-menus .custom-menu-submenu.topmenu_main ul li.menuiotone ul i { display: none; }

    #mobileSoulmktMenu .log-header.link-logout { border: none;         align-items: center; border: none; display: grid; grid-gap: 0.75rem; grid-template-columns: 1.25rem 1fr; line-height: normal; padding: .5rem; text-transform: initial; color: oklch(54.7% 0.22 28.4); min-height: 40px; }
    #mobileSoulmktMenu .log-header.link-logout::before { content: '\f08b'; font-family: 'Font Awesome 5 Pro'; rotate: -180deg; }

    header .nav-block .rootmenu.mobile .rootmenu-list .voltar{display: block;}
    header .nav-block .rootmenu.mobile .rootmenu-list .voltar a { align-items: center; background-color: oklch(94.6% 0 0); color: oklch(36% 0 0) !important; display: flex; flex-wrap: wrap; font-size: var(--size-14); font-weight: 600; width: 100%; }
    header .nav-block .rootmenu.mobile .rootmenu-list .voltar a i { font-size: var(--size-12); margin-right: 7px; -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg); }
}
@media screen and (max-width:390px){
    .rootmenu-mobile { padding: 13px 11px; }
}

@media screen and (min-width:771px){
    .rootmenu .rootmenu-list .custom-menus:hover .custom-menu-submenu { display: table; }

}

.rootmenu .rootmenu-list .custom-menus .custom-menu-submenu{ border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; display: none; min-width: 300px; padding: 20px; position: absolute; text-align: left; }
.rootmenu .rootmenu-list .custom-menus .custom-menu-submenu ul.list-pages li {transition: all 0.3s; }
.rootmenu .rootmenu-list .custom-menus .custom-menu-submenu ul.list-pages li:hover { padding-left: 10px; transition: all 0.3s; }

.breadcrumbs {
  font-size: 0.875rem;
  margin-block: 0 2rem;
}

.breadcrumbs__list {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}

.breadcrumbs__item {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.breadcrumbs__item.home {
  overflow: visible;
}

.breadcrumbs__link {
  font-weight: 500;
  text-decoration: underline;
}

.breadcrumbs__link:hover {
  filter: brightness(0.95);
  opacity: 1;
  text-decoration: underline;
}

.breadcrumbs__current {
  color: oklch(51% 0 0);
}

.breadcrumbs__separator {
  color: oklch(62.4% 0 0);
  min-width: 0.75rem;
}

@media screen and (width <=770px) {
  .breadcrumbs {
    display: none;
  }
}

:root {
  --grid-radius-differential-bar: 0.125rem;
  --grid-radius-differentials-box: 0.25rem;
  --grid-radius-differentials-scrollbar: 0.375rem;
  --grid-radius-differential-img: 0.25rem;
}

:root[theme='rounded'] {
  --grid-radius-badge: 0.25rem;
  --grid-radius-area-product: 0.25rem;
  --grid-radius-buy-button: 0.25rem;
  --grid-radius-owl-nav: 0.25rem;
  --grid-radius-modal-qty: 0.25rem;
}

:root[theme='circle'] {
  --grid-radius-badge: 1rem;
  --grid-radius-area-product: 1rem;
  --grid-radius-buy-button: 1rem;
  --grid-radius-owl-nav: 50%;
  --grid-radius-modal-qty: 1rem;
}

p.note-msg {
  font-size: var(--size-14);
}

.products-grid .product-item {
  display: block;
  float: left;
  margin: 10px 1% 1% 0;
  position: relative;
}

/* CSS Grid — no-carousel apenas. O carrossel não é afetado. */
.no-carousel.products-grid {
  display: grid;
  gap: 0 1rem;
  grid-auto-rows: auto;
  grid-template-columns: repeat(
    auto-fill,
    minmax(
      max(var(--_min-item-width, 200px), calc((100% / var(--grid-columns, 4) - (var(--grid-columns, 4) - 1) * 0.5rem))),
      1fr
    )
  );
}

.no-carousel.products-grid.twoProductsMobilegrid {
  --_min-item-width: 150px;
}

/* Subgrid por card: cada .product-item ocupa 12 tracks de linha do grid externo
   (um por bloco renderizado pelo soulcore/grid_product helper), herdando os
   tamanhos de linha via subgrid para alinhar imagem, nome, avaliação, labels,
   informações, preço, parcelamento, recorrência, deal e botão entre colunas. */
.no-carousel.products-grid .product-item {
  display: grid;
  float: none;
  grid-row: span var(--grid-slots, 12);
  grid-template-rows: subgrid;
  margin: 0;
  margin-block-end: 1rem;
  row-gap: 0;
  width: 100%;
}

/* .area-product herda os tracks do subgrid do .product-item */
.no-carousel.products-grid .product-item .area-product {
  align-content: start;
  display: grid;
  grid-row: span var(--grid-slots, 12);
  grid-template-rows: subgrid;
}

.no-carousel.products-grid .product-item .grid-section {
  min-height: 0;
}

.no-carousel.products-grid .product-item .grid-section:has(> * > *) {
  margin-block-start: 0.25rem;
}

.no-carousel.products-grid .product-item .grid-section > * {
  margin: 0 !important;
}

.no-carousel.products-grid .product-item .grid-section--name,
.no-carousel.products-grid .product-item .grid-section--image {
  margin-block-end: 0.5rem;
}

.no-carousel.products-grid .product-item .grid-section--buy {
  grid-row: -1;
  margin-block-start: 1rem;
}

.carousel.products-grid .product-item {
  float: none;
}

.products-grid .product-image {
  display: block;
  position: relative;
}

.products-grid .product-image:hover {
  opacity: 1;
}

.product-image .product-img-wrapper {
  display: block;
  overflow: hidden;
  position: relative;
}

.product-image .product-img-main,
.product-image .product-img-hover {
  display: block;
  height: auto;
  width: 100%;
}

.product-image .product-img-hover {
  inset: 0;
  opacity: 0;
  position: absolute;
  transition: opacity 0.125s ease;
}

.product-image:hover .product-img-hover {
  opacity: 1;
}

.product-item .area-product {
  border: 1px solid oklch(96.2% 0 0);
  border-radius: var(--grid-radius-area-product, 0);
  display: table;
  padding: 1rem;
  transition: box-shadow 0.125s;
  width: 100%;
}

.product-item.hover .area-product {
  border: none;
}

.products-grid .product-image img {
  margin: 0 auto;
  max-height: 260px;
  object-fit: none;
  padding: 0;
  width: 100%;
}

.products-grid .product-image img:focus {
  outline: 0;
}

.free-shipping {
  align-items: center;
  background: var(--_freight-icon-bg-color, oklch(32.1% 0 0));
  border-radius: var(--grid-radius-badge, 0);
  color: var(--_freight-icon-color, oklch(100% 0 0));
  display: flex;
  font-weight: 600;
  gap: 0.25rem;
  left: 0;
  line-height: 1.5;
  padding: 0.25rem 0.875rem;
  position: absolute;
  top: 0;
}

.products-grid .product-item .product-name {
  display: block;
  float: left;
  margin: 10px 0;
  width: 100%;
}

.products-grid .product-item .grid-avaliacao {
  display: table;
  width: 100%;
}

.products-grid .product-item .grid-quantity {
  font-size: var(--size-13);
}

/* Atributo abaixo do nome no card — config soulcore_settings/grid_card_attribute_code.
   Sem a config preenchida o template nao imprime nada e estas regras nao encontram
   elemento, entao loja que nao usa a funcionalidade nao muda de aparencia.
   O margin vale no carrossel; no grid ele e zerado por
   .no-carousel.products-grid .product-item .grid-section > * { margin: 0 !important }
   e o espacamento vem da regra :has(> * > *) da secao. */
.products-grid .product-item .grid-attribute {
  display: block;
  font-size: var(--size-13, 0.8125rem);
  margin: 0.25rem 0 0;
}

/* Tipografia do valor, no span que carrega o texto (o wrapper e' medido pelo JS).
   font-weight 600 alinha com o peso declarado para o outro atributo do card
   (.product-high-attribute, em soulcore_config_styles.phtml) e com
   .products-grid .product-item .product-name a, logo acima na mesma coluna.
   Sem text-align aqui de proposito: o alinhamento continua herdado da classe
   text-left/text-center/text-right que getGridTextAlign() poe no .product-item.

   SEM contencao de linhas aqui, e isso e' deliberado.
   Uma versao anterior desta regra usava -webkit-line-clamp: 2 com
   display: -webkit-box e overflow: hidden para impedir que um valor longo
   esticasse a altura de todos os cards do carrossel -- resizeCarousel()
   (skin/.../js/soulmkt/resize-box-product.js) iguala o grupo pela MAIOR altura
   medida e grava um height inline no wrapper .grid-attribute. Medido em
   ambiente: com o -webkit-box, o valor ficava INVISIVEL no carrossel; removida
   a regra, voltou a aparecer nas tres superficies. A contencao foi retirada por
   experimento controlado, nao por suposicao.
   Limitacao conhecida em aberto: um valor muito longo volta a poder esticar os
   cards do carrossel. Se isso aparecer, conter com max-height em em +
   overflow: hidden, que nao depende de -webkit-box. */
.products-grid .product-item .grid-attribute > span {
  font-weight: 600;
}

/* Label opcional (config grid_card_attribute_label), impresso dentro do mesmo
   <span> do valor -- assim os dois quebram linha como um bloco de texto so, e
   qualquer contencao futura aplicada aquele span passa a valer para o conjunto
   (ver a nota da regra acima sobre a contencao removida).
   Peso normal de proposito: o span inteiro esta em 600 e o <strong> traria 700
   para o label, deixando o rotulo mais forte que o valor, que e' o dado
   principal do card. O espaco entre os dois vem de um espaco literal do
   template, nao de margem, para preservar a quebra de linha do conjunto.
   Sem text-align aqui tambem: o alinhamento continua herdado da classe
   text-left/text-center/text-right que getGridTextAlign() poe no .product-item. */
.products-grid .product-item .grid-attribute__label {
  font-weight: 400;
}

.products-grid .product-item .grid-sku {
  display: table;
  margin: 10px auto;
}

.products-grid .product-item .grid-sku span {
  font-weight: bold;
}

.products-grid .product-item .area-vendor-link {
  display: block;
  float: left;
  margin: 5px 0 10px;
  width: 100%;
}

.area-vendor-link a {
  font-size: var(--size-14);
  font-weight: 600;
  transition: all 0.3s;
}

.products-grid .product-item .product-name a,
.products-grid .product-item .product-name .span-name {
  display: block;
  font-size: var(--size-14);
  font-weight: 600;
  text-transform: none;
}

.products-grid .product-item .desconto-porcentagem {
  border-radius: var(--grid-radius-badge, 0);
  font-weight: 600;
  line-height: normal;
  padding: 4px 12px;
  position: absolute;
  right: 0;
  top: 0;
}

.products-grid .product-item .block-buy {
  display: block;
  float: left;
  grid-row: -1;
  margin-top: 1rem;
  text-align: center;
  transition: opacity 0.3s;
  width: 100%;
}

.product-item .block-buy a,
.product-item .block-buy button {
  border: 0;
  border-radius: var(--grid-radius-buy-button, 0);
  display: block;
  float: left;
  font-weight: 600;
  line-height: 1.2;
  padding: 0.75rem 0.5rem;
  transition: opacity 0.3s;
  width: 100%;
}

.category-products .product-item .block-buy .out-of-stock {
  text-align: center;
}

.products-grid .product-item .block-buy:hover a {
  text-decoration: unset;
}

.products-grid .product-item.hover .block-buy {
  opacity: 0;
  overflow: hidden;
}

.products-grid .product-item.hover:hover .block-buy {
  opacity: 1;
  overflow: visible;
}

.products-grid .product-item:hover .area-product {
  box-shadow: rgb(100 100 111 / 20%) 0 7px 29px 0;
}

.products-grid .price-info,
.products-grid .price-info .price-box,
.products-grid,
.category-products,
.products-grid .product-item .area-parcela-desconto,
.product-item .price-info .price-box .configurable-price-from,
.price-box .price-label.downloadable,
.products-grid .product-item .price-box.bundle .price-from .price,
.price-info .price-box .regular-price.minimal-price span.price {
  display: block;
  width: 100%;
}

.products-grid .product-item .area-parcela-desconto .block-full {
  width: 100%;
}

.products-grid .product-item .area-parcela-desconto .block-full > div:first-child {
  border-top: 1px solid oklch(96.2% 0 0);
  padding-top: 10px;
}

.products-grid .product-item .area-parcela-desconto .block-full > div:last-child {
  border-bottom: 1px solid oklch(96.2% 0 0);
  padding-bottom: 10px;
}

.products-grid .product-item .area-parcela-desconto {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}

.products-grid .product-item.text-center .area-parcela-desconto {
  justify-content: center;
}

.products-grid .product-item .configurable-price-from,
.price-box .price-label.downloadable,
.products-grid .price-info .price-box .regular-price.minimal-price span.price-label,
.price-box .minimal-price span.price-label {
  color: oklch(32.1% 0 0);
  font-size: var(--size-12);
  font-weight: 600;
}

.products-grid .product-item .price-info {
  border-top: 1px solid oklch(96.2% 0 0);
  display: flex;
  padding-top: 10px;
}

.products-grid .product-item .price-info .price-box {
  align-self: flex-end;
  line-height: unset;
  margin: 0 0 5px;
}

.products-grid .product-item .price-info .price-box .label,
.price-box .minimal-price span.price-label {
  display: block;
  margin: 8px 0 0;
}

.products-grid .product-item .price-info p.old-price,
.products-grid .product-item .price-info p.special-price,
.products-grid .product-item .price-info p.price-to {
  line-height: unset;
  margin: 0;
}

.products-grid .product-item .price-box.bundle .price-from {
  display: none;
}

.products-grid .product-item .price-info .price-box p.minimal-price {
  display: table;
  margin: 0;
  width: 100%;
}

.products-grid .product-item .price-box .old-price .price,
.products-grid .product-item .price-box.bundle .price-from .price,
.price-info .price-box.bundle .price-from .price {
  font-size: var(--size-12);
  text-decoration: line-through;
}

.product-item .price-info .price-box .regular-price span,
.product-item .special-price span,
.price-info .price-box.bundle .price-to .price,
.price-info .price-box.bundle span.price {
  font-size: var(--size-26);
  font-weight: 600;
}

.products-grid .product-item .area-parcela-desconto .parcela-produto,
.products-grid .product-item .area-parcela-desconto .ticket-produto {
  color: oklch(39% 0 0);
  font-size: var(--size-12);
}

.products-grid .product-item span.desconto-porcentagem.recharge.price-area {
  display: none;
}

.block-grid-title {
  display: block;
  margin: 25px 0;
  width: 100%;
}

.block-grid-title h2 i {
  margin-right: 10px;
}

.block-grid-title .subtitle {
  font-size: var(--size-16);
  margin: 4px 0 0;
}

.area-parcela-desconto.font-weight .ticket-produto .ticket-price,
.area-parcela-desconto.font-weight .parcela-produto .maxparcel {
  font-weight: bold;
}

.products-grid .product-item .area-parcela-desconto.reverse-billet-parcel .block-full {
  display: flex;
  flex-wrap: wrap;
}

.products-grid .product-item .area-parcela-desconto.reverse-billet-parcel .block-full .ticket-produto {
  border-bottom: 1px solid oklch(96.2% 0 0);
  border-top: none;
  order: 2;
  padding-bottom: 10px;
  padding-top: 0;
  width: 100%;
}

.products-grid .product-item .area-parcela-desconto.reverse-billet-parcel .block-full .parcela-produto {
  border-bottom: none;
  border-top: 1px solid oklch(96.2% 0 0);
  order: 1;
  padding-bottom: 0;
  padding-top: 10px;
  width: 100%;
}

.blockFull .category-products {
  display: block;
  float: unset;
  margin: 0 auto;
  max-width: calc(1320px + 2rem);
  padding: 0 1rem;
  position: relative;
  width: 100%;

  @media (width <= 1440px) {
    padding: 0;
  }
}

.category-products .block-fixed-mobile {
  display: none;
}

.block-check {
  display: none;
}

/* CAROUSEL */
.owl-item {
  float: left;
}

.products-grid {
  margin: 0 0 40px;
}

.owl-stage-outer {
  overflow: hidden;
  padding: 10px 0;
  position: relative;
  touch-action: pan-y;
}

.owl-nav button {
  align-items: center;
  background-color: oklch(100% 0 0);
  border: none;
  border-radius: var(--grid-radius-owl-nav, 0);
  box-shadow: 0 2px 2px oklch(0% 0 0 / 10%);
  color: oklch(62.4% 0 0);
  display: flex;
  height: 48px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  top: 45%;
  transition: all 0.3s;
  width: 48px;
}

.products-grid .owl-nav button {
  top: 30%;
}

.owl-nav button i {
  font-size: 18px;
}

.owl-nav .owl-prev {
  left: 1px;
}

.owl-nav .owl-next {
  right: 1px;
}

.products-grid .owl-nav .owl-prev {
  left: -10px;
}

.products-grid .owl-nav .owl-next {
  right: -10px;
}

.owl-nav .owl-prev.disabled,
.owl-nav .owl-next.disabled,
.owl-nav .owl-prev.disabled:hover,
.owl-nav .owl-next.disabled:hover {
  opacity: 0;
}

.owl-nav .owl-prev:hover,
.owl-nav .owl-next:hover {
  opacity: 1;
}

[data-carousel='1']:not(.owl-loaded) [class*='item']:not(:first-child) {
  display: none;
}
/* FIM CAROUSEL */

/* AVALIACAO */
.products-grid .grid-avaliacao .rating-box {
  color: oklch(75.1% 0.01 286);
}

.products-grid .rating-area i.fill {
  font-weight: 900;
}
/* FIM AVALIACAO */

/* PRODUCT LABEL */
.area-product .amlabel-div {
  position: relative;
}

.area-product .amlabel-div .amlabel-txt {
  color: oklch(100% 0 0);
  display: block;
  font-size: 0.9em;
  font-weight: bold;
  letter-spacing: 0.01px;
  line-height: 11px;
  text-decoration: none;
}

.area-product .amlabel-div a {
  position: relative;
  text-decoration: none;
}

.area-product .amlabel-table {
  cursor: pointer;
  position: absolute;
  z-index: 10;
}

.area-product .amlabel-table td {
  border: 0;
  height: auto;
  text-align: center;
  vertical-align: middle;
}

.area-product .top-center {
  left: 0;
  margin-left: auto;
  margin-right: auto;
  right: 0;
  top: 15px;
}

.area-product .middle-left {
  bottom: 15px;
  left: 0;
  margin-bottom: auto;
  margin-top: auto;
  top: -15px;
}

.area-product .middle-right {
  bottom: 15px;
  margin-bottom: auto;
  margin-top: auto;
  right: 0;
  top: -15px;
}

.area-product .bottom-center {
  bottom: 15px;
  left: 0;
  margin-left: auto;
  margin-right: auto;
  right: 0;
}

.area-product .middle-center {
  inset: -15px 0 15px;
  margin: auto;
}

.area-product .top-left {
  left: 0;
  top: 15px;
}

.area-product .top-right {
  right: 0;
  top: 15px;
}

.area-product .bottom-left {
  bottom: 15px;
  left: 0;
}

.area-product .bottom-right {
  bottom: 15px;
  right: 0;
}

.area-product .products-list .amlabel-div {
  float: left;
}

* html .amlabel-div {
  float: left;
}

* html .amlabel-div a {
  position: relative;
}

.area-product .amlabel-table2 {
  height: 100%;
  overflow: hidden;
  position: absolute;
  width: 100%;
}

.area-product .amlabel-txt2 {
  background-size: contain !important;
  max-height: 100px !important;
  max-width: 100px !important;
  position: absolute;
  z-index: 9;
}
/* FIM PRODUCT LABEL */

/* CROWDFUNDING */
.area-meta-crowdfunding.resizebox .progress {
  border: 1px solid;
  height: 12px;
}

.area-meta-crowdfunding .percent.default {
  text-align: left;
}

.area-meta-crowdfunding .days {
  text-align: right;
}

.area-meta-crowdfunding .amount-collected.default {
  text-align: center;
}
/* FIM CROWDFUNDING */

/* POPUP */
#catalog_product_composite_configure_fields_grouped .product-options table thead tr th,
#catalog_product_composite_configure_fields_grouped .product-options table tbody tr td,
#catalog_product_composite_configure_fields_grouped .product-options table tbody tr td .price-box,
#catalog_product_composite_configure_fields_grouped .product-options table tbody tr td input {
  text-align: center;
  width: auto;
}

#catalog_product_composite_configure_fields_grouped .product-options table tbody tr td input {
  width: 70px;
}

#catalog_product_composite_configure_fields_grouped table,
#catalog_product_composite_configure_fields_grouped {
  display: block;
  float: left;
  width: 100%;
}
/* FIM POPUP */

/* Custom labels */

.grid-differentials {
  float: left;
  margin-block: 0.5rem;
  width: 100%;
}

:where(.products-list, .grid-differentials[class*='soulresize']) .differential__wrapper {
  align-items: center;
  display: inline-flex;
  gap: 4px;
  justify-content: center;
  position: relative;
}

.products-grid .grid-differentials:not([class*='soulresize']) .differential:not(:first-child) {
  display: none !important;
}

.products-list .grid-differentials {
  min-height: unset;
}

.grid-differentials .differential img {
  aspect-ratio: 1;
  max-width: 40px;
  min-width: 40px;
  width: 100%;
}

.grid-differentials .see-all {
  align-items: center;
  display: flex;
  height: 40px;
  justify-content: center;
  width: 40px;
}

.grid-differentials .differential.see-all::before {
  border-radius: var(--grid-radius-differential-bar, 0.125rem);
  content: '';
  height: 24px;
  opacity: 0;
  position: absolute;
  right: 6px;
  top: -20px;
  transform: rotate(45deg);
  transition: opacity 0.15s ease;
  transition-delay: 0.05s;
  width: 24px;
  z-index: 3;
}

.grid-differentials .differential.see-all:hover::before {
  opacity: 1;
}

.grid-differentials .all-differentials {
  border-radius: var(--grid-radius-differentials-box, 0.25rem);
  bottom: 115%;
  box-shadow: oklch(50% 0 0 / 20%) 0 2px 8px 0;
  left: 50%;
  max-height: 248px;
  min-width: max-content;
  opacity: 0;
  overflow-y: auto;
  padding: 8px;
  pointer-events: none;
  position: absolute;
  right: 0;
  transform: translateX(-50%);
  transition: opacity 0.2s ease;
  width: 100%;
  z-index: 3;
}

.grid-differentials .all-differentials::-webkit-scrollbar-track {
  background: transparent;
}

.grid-differentials .all-differentials::-webkit-scrollbar-thumb {
  background-clip: padding-box;
  border: 5px solid oklch(0% 0 0 / 0%);
  border-radius: var(--grid-radius-differentials-scrollbar, 0.375rem);
}

.grid-differentials .see-all:hover .all-differentials {
  opacity: 1;
  pointer-events: all;
}

.grid-differentials .all__differential {
  align-items: center;
  display: flex;
  font-size: var(--size-12);
  font-weight: 500;
  justify-content: flex-start;
  margin-bottom: 4px;
  overflow: hidden;
}

.grid-differentials .all__differential img {
  border-radius: var(--grid-radius-differential-img, 0.25rem);
  max-width: 25px;
  width: 100%;
}

.grid-differentials .all__differential span {
  padding: 0 12px 0 8px;
}

/* DEAL */

.area-deal {
  clear: both;
  margin-block-start: 12px;
}

.c-deal {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: center;
}

.c-deal .deal__icon {
  font-size: 24px;
}

.c-deal .deal__call-to-action {
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  text-align: left;
}

.c-deal span {
  font-weight: 600;
}

.c-deal.c-deal--only-timer {
  align-items: center;
  border: 1px solid;
  display: flex;
  gap: 12px;
  justify-content: center;
  padding: 12px 8px 8px;
  position: relative;
}

.c-deal.c-deal--only-timer .deal__text {
  padding: 0 12px;
  position: absolute;
  top: -8px;
}

.c-deal.c-deal--only-timer .deal__time {
  display: flex;
  flex: 1;
  gap: 4px;
  justify-content: center;
}

.c-deal.c-deal--only-timer [class^='deal'] {
  line-height: 1.3;
  text-align: center;
}

.c-deal.c-deal--only-timer .deal__time [data-js] {
  display: block;
  font-size: 22px;
  font-weight: 900;
}

.c-deal.c-deal--only-timer span {
  font-weight: normal;
}

@media screen and (width <=1199px) {
  .area-meta-crowdfunding .days {
    text-align: left;
  }
}

@media screen and (width >=771px) {
  .products-grid .product-item.hover {
    border: none;
  }
}

/* Regras de width porcentual por breakpoint removidas: o CSS Grid via
   --grid-columns + minmax() gerencia o responsivo sem media queries. */

@media screen and (width <=1199px) {
  .area-meta-crowdfunding .default.amount-collected {
    text-align: right;
  }
}

/* width: 32% em <=991px removido: CSS Grid gerencia via minmax(). */

@media screen and (width <=770px) {
  .products-grid .product-item.hover .block-buy {
    opacity: 1;
    visibility: visible;
  }

  /* width: 49% em <=770px removido: CSS Grid gerencia via minmax(). */
}

@media screen and (width <=620px) {
  .area-meta-crowdfunding .percent.default,
  .area-meta-crowdfunding .default.amount-collected {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .area-meta-crowdfunding .default.amount-collected {
    text-align: right;
  }

  .area-meta-crowdfunding .default.days {
    text-align: left;
  }
}

@media screen and (width <=575px) {
  #catalog_product_composite_configure_fields_grouped .product-options table thead tr th,
  #catalog_product_composite_configure_fields_grouped .product-options table tbody tr td {
    width: 20%;
  }

  .owl-nav button i {
    font-size: 16px;
  }
}

@media screen and (width <=500px) {
  /* .product-item.default width/margin em <=500px removidos: CSS Grid via minmax() assume. */

  .area-meta-crowdfunding .default.amount-collected {
    text-align: right;
  }

  .area-meta-crowdfunding .default.days {
    text-align: left;
  }

  .area-meta-crowdfunding .percent.default {
    padding-right: 0;
  }

  #catalog_product_composite_configure_fields_grouped .product-options table tbody tr td {
    display: block;
    float: left;
    width: 100%;
  }

  #catalog_product_composite_configure_fields_grouped .product-options table thead {
    display: none;
  }

  #catalog_product_composite_configure_fields_grouped .product-options table tbody tr td::before {
    content: attr(data-name);
    display: block;
    font-weight: 600;
  }

  #catalog_product_composite_configure_fields_grouped .product-options table tbody tr {
    display: block;
    float: left;
    margin-bottom: 30px;
    width: 100%;
  }
}

@media screen and (width <=449px) {
  .area-meta-crowdfunding .default {
    flex: 0 0 33%;
    max-width: 33% !important;
  }

  .area-meta-crowdfunding .default.amount-collected {
    text-align: center;
  }

  .area-meta-crowdfunding .default.days {
    text-align: right;
  }
}

@media screen and (width <=380px) {
  .twoProductsMobilegrid .free-shipping i,
  .twoProductsMobilecarousel .free-shipping i {
    font-size: 12px;
  }

  .twoProductsMobilegrid .free-shipping,
  .twoProductsMobilecarousel .free-shipping,
  .twoProductsMobilegrid.products-grid .product-item .desconto-porcentagem,
  .twoProductsMobilecarousel.products-grid .product-item .desconto-porcentagem {
    align-items: center;
    font-size: var(--size-12);
    padding: 3px 6px;
  }

  .twoProductsMobilegrid.products-grid .product-item .desconto-porcentagem,
  .twoProductsMobilecarousel.products-grid .product-item .desconto-porcentagem {
    right: 0;
  }

  .area-recurrence {
    margin-top: 0;
  }

  .area-parcela-desconto {
    margin-bottom: 10px;
  }

  .area-recurrence .price-recurrence {
    margin-top: 0;
  }

  .area-recurrence span {
    display: block;
    float: left;
    width: 100%;
  }

  .block-upsell .upsell {
    padding: 0;
  }

  .products-grid .product-item .top-left .top-left,
  .products-grid .product-item .top-left .top-right,
  .products-grid .product-item .top-left .top-center {
    top: 0;
  }

  .products-grid .product-item .top-left .top-left,
  .products-grid .product-item .top-left .top-center,
  .products-grid .product-item .top-left .top-right,
  .products-grid .product-item .top-left .middle-left,
  .products-grid .product-item .top-left .middle-center,
  .products-grid .product-item .top-left .middle-right,
  .products-grid .product-item .top-left .bottom-left,
  .products-grid .product-item .top-left .bottom-center,
  .products-grid .product-item .top-left .bottom-right {
    background-size: contain !important;
    height: 60px !important;
    max-width: 60px !important;
    width: 60px !important;
  }
}

@media screen and (width <=340px) {
  .twoProductsMobilegrid .free-shipping,
  .twoProductsMobilecarousel .free-shipping,
  .twoProductsMobilegrid.products-grid .product-item .desconto-porcentagem,
  .twoProductsMobilecarousel.products-grid .product-item .desconto-porcentagem {
    font-size: var(--size-11);
  }

  .twoProductsMobilegrid .free-shipping i,
  .twoProductsMobilecarousel .free-shipping i {
    font-size: 10px;
  }
}

#modalConfig .product-options .option {
  display: block;
  float: left;
  width: 100%;
}

#modalConfig .product-options .option ul {
  display: block;
  float: left;
  width: 100%;
}

#modalConfig .product-options .option ul li {
  display: block;
  float: left;
  margin-bottom: 5px;
  width: 100%;
}

#modalConfig .product-options .option ul li div.container-swatch-color {
  border: 1px solid oklch(93.1% 0 0);
  float: none;
  height: 20px;
  margin: 0 3px;
  padding: 0;
  vertical-align: middle;
  width: 20px;
}

#modalConfig .product-options .option ul li .img-thumbnail {
  border: none;
  display: inline-block;
  float: none;
  margin: 0 3px;
  padding: 0;
  vertical-align: middle;
}

#modalConfig .product-options .option ul li div.container-swatch-color div.swatch-color {
  display: inline-block;
  height: 100%;
  width: 100%;
}

#modalConfig .product-options .option ul > .swatch {
  display: inline-block;
  margin-right: 5px;
  width: auto;
}

#modalConfig .product-options .quantity {
  background-color: oklch(100% 0 0);
  border: 1px solid oklch(96.4% 0.01 286);
  border-radius: var(--grid-radius-modal-qty, 0);
  box-shadow: 0 2px 2px oklch(0% 0 0 / 10%);
  display: table;
  float: left;
  text-align: center;
}

#modalConfig .product-options dl dt label.title {
  float: left;
  width: 100%;
}

#modalConfig .product-options .quantity .qtd-arrows.less {
  float: left;
}

#modalConfig .product-options .quantity .qtd-arrows {
  height: 35px;
  line-height: 35px;
  text-align: center;
  width: 35px;
}

#modalConfig .product-options .quantity .qtd-arrows i {
  color: oklch(0% 0 0);
  cursor: pointer;
  font-size: var(--size-12);
  font-weight: 400;
}

#modalConfig .product-options .quantity input {
  border: 0;
  box-shadow: unset;
  float: left;
  font-size: var(--size-14);
  padding: 0 9px;
  text-align: center;
  width: 35px;
}

#modalConfig .product-options .quantity .qtd-arrows.more {
  float: left;
}

#modalConfig .product-options {
  display: block;
  float: left;
  width: 100%;
}

#modalConfig .product-options dl,
#modalConfig .product-options dl dt {
  display: block;
  float: left;
  width: 100%;
}

#modalConfig .product-options dl dt .qty-holder {
  display: block;
  float: left;
  margin: 10px 0;
  width: 100%;
}

#modalConfig .product-options dl dt .qty-holder label {
  float: left;
  width: 100%;
}

/* PIX PRIO */

:is(.products-grid, .products-list) .product-item .c-price-box .c-price {
  display: flex;
  flex-direction: column;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-price.c-price--regular {
  display: initial;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-price .c-price__value {
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.2;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-price.c-price--regular .c-price__value {
  color: oklch(62.4% 0 0);
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 2;
  text-decoration: line-through;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-price .c-price__symbol {
  font-size: 1.25rem;
  font-weight: 500;
  margin-right: 0.25rem;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-price .c-price__discount-infos {
  color: var(--discount-color);
  font-weight: 600;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-price.c-price--regular .c-price__discount-percent {
  color: var(--discount-color, oklch(60.4% 0.18 139));
  font-weight: bold;
  letter-spacing: -0.5px;
  margin-left: 0.25rem;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-price.c-price--regular .c-price__discount-percent i {
  font-size: 0.75rem;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-installments {
  line-height: 1.2;
  margin-block-start: 0.25rem;
  text-wrap: balance;
}

:is(.products-grid, .products-list)
  .product-item
  .c-price-box
  .c-installments
  :is(.c-installments__full-price, .c-installments__value) {
  font-weight: 600;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-installments .price {
  font-size: inherit;
  font-weight: inherit;
}

:is(.products-grid, .products-list) .product-item .c-price-box .c-fee {
  margin-block-start: 0.5rem;
}

.price-label + .c-price.c-price--regular .c-price__label {
  display: none;
}

.o-icon--freight {
  --_icon-size: var(--freight-icon-size, 1.25rem);
  --_icon-color: var(--freight-icon-color, currentColor);
}

:root[theme='rounded'] {
  --media-thumb-radius: 0.25rem;
  --media-image-radius: 0.25rem;
  --product-radius: 0.25rem;
  --tag-radius: 0.25rem;
  --product-nav-radius: 0.25rem;
  --asd-discount-percent-radius: 0.25rem;
  --asd-card-radius: 0.325rem;
  --asd-tag-radius: 0.325rem;
  --asd-faq-icon-radius: 0.25rem;
  --asd-card-icon-radius: 0.25rem;
  --asd-installments-radius: 0.25rem;
  --asd-free-ship-radius: 0.25rem;
  --asd-qty-radius: 0.125rem;
  --product-radius-box: 0.25rem;
  --product-radius-swatch: 0.25rem;
  --product-radius-tier: 0.25rem;
  --product-radius-arrow: 0.25rem;
  --product-radius-discount: 0.25rem;
  --product-radius-stock: 0.25rem;
  --product-radius-outofstock: 0.25rem;
  --product-radius-shipping-card: 0.25rem;
  --product-radius-shipping-item: 0.25rem;
  --product-radius-freeship-msg: 0.25rem;
  --product-radius-detail-row: 0.25rem;
  --product-radius-video: 0.25rem;
  --product-radius-detail-img: 0.25rem;
  --product-radius-review: 0.25rem 0 0 0.25rem;
  --product-padding-free-ship: 0.25rem 1rem;
  --product-padding-outofstock: 0.25rem;
  --product-icon-check: '\f058';
}

:root[theme='circle'] {
  --media-thumb-radius: 0.5rem;
  --media-image-radius: 0.875rem;
  --product-radius: 1rem;
  --tag-radius: 2rem;
  --product-nav-radius: 2rem;
  --asd-discount-percent-radius: 100vw;
  --asd-card-radius: 0.75rem;
  --asd-tag-radius: 1rem;
  --asd-faq-icon-radius: 0.5rem;
  --asd-card-icon-radius: 0.5rem;
  --asd-installments-radius: 0.75rem;
  --asd-free-ship-radius: 0.75rem;
  --asd-qty-radius: 0.5rem;
  --product-radius-box: 0.9375rem;
  --product-radius-swatch: 0.3125rem;
  --product-radius-tier: 0.3125rem;
  --product-radius-arrow: 50%;
  --product-radius-discount: 0.625rem;
  --product-radius-stock: 0.625rem;
  --product-radius-outofstock: 0.625rem;
  --product-radius-shipping-card: 0.9375rem;
  --product-radius-shipping-item: 0.3125rem;
  --product-radius-freeship-msg: 0.625rem;
  --product-radius-detail-row: 0.625rem;
  --product-radius-video: 0.9375rem;
  --product-radius-detail-img: 100%;
  --product-radius-review: 0.9375rem 0 0 0.9375rem;
  --product-padding-free-ship: 0.3125rem 0.9375rem;
  --product-padding-outofstock: 0.1875rem 0.25rem 0.125rem;
  --product-icon-check: '\f058';
}

:root {
  interpolate-size: allow-keywords;
}

p {
  font-size: var(--size-14);
}

/* AVALIACAO */
.product-view .rating-box {
  color: oklch(75.2% 0.01 286);
}

.product-view .rating-area i.fill {
  font-weight: 900;
}

.product-view .rating-box i {
  font-size: 14px;
}
/* FIM AVALIACAO */

/* VENDIDO E ENTREGUE POR */
.product-view .extra-info .block-seller {
  display: table;
  float: left;
  width: 100%;
}

.product-view .extra-info .block-seller {
  margin-bottom: 10px;
}

.product-view .extra-info .block-seller a,
.product-view .area-vendor-link .color-minprice {
  font-weight: 600;
}
/* FIM VENDIDO E ENTREGUE POR */

/* SHORT DESCRIPTION */
.product-view .short-description {
  display: block;
  float: left;
  margin: 5px 0 10px;
  width: 100%;
}

.product-view.three_columns .short-description {
  margin-bottom: 15px;
}

.product-view .short-description p {
  color: oklch(41.7% 0 0);
  display: block;
  margin: 0;
  width: 100%;
  word-break: break-word;
}
/* .product-view .short-description p strong {float: left;} */
.product-view.two_columns .short-description {
  border-bottom: 1px solid oklch(96.1% 0 0);
  padding-bottom: 20px;
}

.pd-description .block-description p a {
  display: block;
  margin-block: 1rem;
  width: auto;
}

.pd-description .block-description p {
  display: block;
  margin-block: 1rem;
  width: 100%;
}

.pd-description .block-description ul > li > p {
  float: unset;
  margin-block: 4px;
  width: auto;
}

.short-description span a,
.short-description p a {
  display: inline-block;
  vertical-align: top;
}

.short-description p a {
  margin: 5px 0;
}
/* FIM SHORT DESCRIPTION */

/* PRODUCT NAME */
.product-view h1.product-name {
  display: block;
  font-size: var(--size-25);
  font-weight: 600;
  margin-bottom: 0;
  width: 100%;
}

.product-view .ratings {
  margin: 10px 0 5px;
}

.product-view .ratings .has-rating {
  cursor: pointer;
}

a.p-read-more {
  font-weight: 600;
  transition: all 0.3s;
}
/* FIM PRODUCT NAME */

/* PRECO */
.product-view .counter {
  margin: 0 0 15px;
}

.product-view .area-parcela-desconto .ticket-produto .discount-percent {
  text-transform: lowercase;
}

.product-shop .price-info span.label.configurable-price-from {
  color: oklch(62% 0 0);
  display: table;
  font-size: var(--size-14);
}

.three_columns .price-info span.label.configurable-price-from {
  margin: 10px 0 0;
}

.block-price .price-info .regular-price {
  display: table;
}

.product-view.produto-configuravel .price-box .old-price .price {
  display: inline-block;
  margin: 5px 0 0;
}

.products-grid .product-item .price-info .price-box .old-price {
  margin: 0;
}

.product-view.two_columns.product-multiseller .area-parcela-desconto .see-parc {
  margin: 5px auto;
}

.product-view.two_columns.product-multiseller .block-full-multiseller .area-parcela-desconto .see-parc {
  margin: 5px 0 0;
}
/* FIM PRECO */

/* GRUPO DE PRODUTO */
.product-view .box-group-sales-rule {
  border-top: 1px solid oklch(96.1% 0 0);
}

.product-view .box-group-sales-rule .context {
  font-size: var(--size-13);
}

.product-view .box-group-sales-rule .group-sales__name {
  font-size: var(--size-22);
  font-weight: bold;
  line-height: 1;
  margin-top: 4px;
}

.product-view .box-group-sales-rule .group-sales__frequency {
  font-size: var(--size-15);
  margin-bottom: 8px;
}

.product-view .box-group-sales-rule .group-sales__frequency .group-sales__can-buy {
  font-weight: 500;
}

.product-view .box-group-sales-rule .group-sales__frequency .group-sales__purchase-frequency {
  font-weight: 500;
  text-transform: lowercase;
}

.product-view .box-group-sales-rule .group-sales__remaining {
  align-items: center;
  display: flex;
  gap: 8px;
  line-height: 1;
}

.product-view .box-group-sales-rule .group-sales__remaining i {
  color: oklch(50.6% 0.2 259);
  font-size: var(--size-18);
}
/* FIM GRUPO DE PRODUTO */

/* ADD TO BOX */
.product-view .add-to-box,
.product-view .add-to-box .add-to-cart {
  clear: both;
  display: block;
  width: 100%;
}

.product-view .add-to-box .add-to-cart .qty-wrapper {
  display: table;
  float: unset;
  margin: 0 0 15px;
  width: auto;
}

.product-view .add-to-box .add-to-cart .qty-wrapper label {
  float: left;
  font-size: var(--size-14);
  font-weight: 400;
  margin: 7px 5px 0 0;
}

.product-view .add-to-box .add-to-cart .qty-wrapper .qtd-arrows {
  height: 38px;
  line-height: 38px;
  position: relative;
  text-align: center;
  width: 38px;
}

.product-view .add-to-box .add-to-cart .qty-wrapper .qtd-arrows.less {
  float: left;
}

.product-view .add-to-box .add-to-cart .qty-wrapper .qtd-arrows.more {
  float: left;
}

.product-view .qty-wrapper .qty {
  border: 0;
  box-shadow: unset;
  float: left;
  font-size: var(--size-14);
  padding: 0;
  text-align: center;
  width: 35px;
}

.product-view .add-to-box .qty-wrapper .qty {
  height: 38px;
}

.product-view .add-to-box .add-to-cart .qty-wrapper .qtd-arrows i {
  align-items: center;
  color: oklch(0% 0 0);
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: 400;
  height: 100%;
  inset: 0;
  justify-content: center;
  position: absolute;
  width: 100%;
}

.product-view .add-to-box .add-to-cart .add-to-cart-buttons {
  display: table;
  float: left;
  margin: 0;
  width: 100%;
}

.product-view .add-to-box .add-to-cart .add-to-cart-buttons button {
  border-radius: var(--product-radius-box, 0);
  font-size: var(--size-16);
  height: 40px;
  line-height: 40px;
  padding: 0 30px;
  width: 100%;
}

.product-view .add-to-box .add-to-cart .qty-wrapper .quantity {
  background-color: oklch(100% 0 0);
  border: 1px solid oklch(96.3% 0.01 286);
  border-radius: var(--product-radius-box, 0);
  display: table;
  float: left;
}

@media (width <= 768px) {
  .product-view .add-to-box .qty-wrapper .qty {
    height: 42px;
  }

  .product-view .add-to-box .add-to-cart .qty-wrapper .qtd-arrows {
    height: 42px;
    line-height: 42px;
    width: 42px;
  }

  .product-view .add-to-box .add-to-cart .add-to-cart-buttons button {
    height: 44px;
    line-height: 44px;
  }
}

.three_columns .block-right-product .area-vendor-link {
  float: left;
  padding-bottom: 10px;
  width: 100%;
}

ul.tier-prices {
  display: table;
  margin: 20px 0 0;
  width: 100%;
}

.col-lg-6 ul.tier-prices {
  margin: 0;
}

ul.tier-prices li.tier-price {
  border: 1px solid oklch(94% 0 0);
  border-radius: var(--product-radius-tier, 0);
  display: table;
  float: left;
  margin: 0 10px 10px 0;
  overflow: hidden;
  text-align: center;
}

.col-lg-6 ul.tier-prices li.tier-price,
.product-view.three_columns ul.tier-prices li.tier-price {
  margin: 0 6px 10px 0;
  width: 47%;
}

ul.tier-prices li.tier-price .tier-buy-item {
  background-color: oklch(97% 0 0);
  font-size: var(--size-12);
  font-weight: 600;
  padding: 3px 15px;
}

ul.tier-prices li.tier-price .tier-buy-price {
  font-size: var(--size-14);
  font-weight: 600;
  padding: 3px 5px;
}

.product-view.three_columns .short-description {
  margin-bottom: 15px;
}

.product-view.three_columns .block-tag-favorite {
  display: block;
  float: left;
  margin-block: 12px;
  width: 100%;
}

.product-view.three_columns ul.tier-prices {
  border: none;
  clear: both;
  float: left;
  margin: 15px 0 0;
}

.product-view .add-to-box .add-to-cart {
  border-top: 1px solid oklch(96.1% 0 0);
  margin: 10px 0 0;
  padding: 15px 0 0;
}

.product-view.three_columns .block-shipping-estimate {
  border-right: 0;
  border-top: 1px solid oklch(96.1% 0 0);
  margin: 20px 0 0;
  max-width: 100%;
  padding: 20px 0 0;
}

.amxnotif-block {
  border-top: 1px solid oklch(96.1% 0 0);
  clear: both;
  display: table;
  margin: 10px 0 0;
  padding: 10px 0 0;
  position: relative;
  width: 100%;
}

.amxnotif-input-fields {
  position: relative;
  width: 100%;
}

.amxnotif-input-fields input {
  padding: 5px 85px 5px 15px;
}

.amxnotif-button-container {
  position: absolute;
  right: 0;
  top: 0;
}

.amxnotif-block .amxnotif-button-container button {
  height: 35px;
}

p.alert-stock.link-stock-alert {
  margin: 0;
}

.catalog-product-view .item .alert-stock.link-stock-alert {
  white-space: unset;
}

.product-view.two_columns .add-to-box:not([class*='grouped'] .add-to-box) .add-to-cart {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.product-view.two_columns .add-to-box:not([class*='grouped'] .add-to-box) .add-to-cart .qty-wrapper {
  display: flex;
  flex-direction: column;
  float: none;
  margin: 0;
}

.product-view.two_columns .add-to-box:not([class*='grouped'] .add-to-box) .add-to-cart .add-to-cart-buttons {
  flex: 1 0 240px;
  max-width: unset;
}

.product-view.two_columns .add-to-box:not([class*='grouped'] .add-to-box)::after,
.product-view.two_columns .add-to-cart:not([class*='grouped'] .add-to-cart)::after {
  content: none;
}
/* FIM ADD TO BOX */

/* AVISO DE TETO DE ESTOQUE NA PDP (ABVDL2-531) */

/*
 * Only the stock-cap notice appended by skin/frontend/soulcore/default/js/product.js
 * carries these classes, and that file appends it only when the qty input has the
 * data-stock-max-qty attribute. The purchase-multiple notice in js/soulmkt/custom.js
 * shares the .message-qty-altered class but never these, so a store without the
 * stock cap keeps the notice it shows today.
 */
.soulmkt-quotemode__stock-alert {
  --stock-alert-accent: oklch(66% 0.15 62);
  --stock-alert-surface: oklch(97.5% 0.025 85);
  --stock-alert-text: oklch(38% 0.06 62);

  align-items: flex-start;
  background-color: var(--stock-alert-surface);
  border-left: 3px solid var(--stock-alert-accent);
  border-radius: 0.125rem;
  clear: both;
  color: var(--stock-alert-text);
  display: flex;
  font-size: 0.8125rem;
  gap: 0.5rem;
  line-height: 1.45;
  margin: 0.75rem 0 0;
  opacity: 1;
  padding: 0.625rem 0.75rem;
  text-align: left;
  transition: opacity 0.3s ease;
}

.soulmkt-quotemode__stock-alert-icon {
  color: var(--stock-alert-accent);
  flex: 0 0 auto;
  font-size: 0.875rem;
  line-height: 1.45;
}

.soulmkt-quotemode__stock-alert-text {
  flex: 1 1 auto;
}

.soulmkt-quotemode__stock-alert--fading {
  opacity: 0;
}
/* FIM AVISO DE TETO DE ESTOQUE NA PDP */

/* ADICIONAR AOS FAVORITOS */
.box-wish-share a {
  display: block;
  float: left;
  transition: all 0.3s;
  width: 100%;
}

.box-wish-share a i {
  display: block;
  float: left;
  line-height: unset;
}

.box-wish-share a p {
  font-weight: 600;
  line-height: 1;
  margin: 0;
}

.box-wish-share a .block-wishlist {
  align-items: flex-end;
  display: flex;
  float: left;
  width: 100%;
}

.box-wish-share a .block-wishlist .icon {
  display: flex;
  float: left;
  line-height: normal;
  margin: 0 10px 0 0;
  width: auto;
}

.box-wish-share a .block-wishlist .block-text {
  float: left;
  text-align: left;
  width: auto;
}

.product-view.two_columns .add-to-box .add-to-cart .qty-wrapper {
  float: left;
  margin: 1px 20px 0 0;
}

.product-view.two_columns .add-to-box .add-to-cart .add-to-cart-buttons {
  max-width: 260px;
}

.product-view.three_columns .box-wish-share {
  float: right;
  margin: 0;
}
/* FIM ADICIONAR AOS FAVORITOS */

/* BOTAO OFERTA */
.product-view .btn-make-offer {
  float: left;
  margin: 15px 0;
  max-width: 260px;
  width: 100%;
}

.product-view.three_columns .btn-make-offer {
  margin: 10px 0 0;
}

.product-view .btn-make-offer {
  border: 1px solid;
  border-radius: 0;
  font-weight: 600;
  height: 40px;
  line-height: 40px;
  padding: 0;
  width: 100%;
}

.product-view .add-to-box .add-to-cart .add-to-cart-buttons button.btn-make-offer {
  margin-top: 15px;
}

.product-view.three_columns .add-to-box .add-to-cart .add-to-cart-buttons button.btn-make-offer {
  max-width: 100%;
}
/* FIM BOTAO OFERTA */

/* CALCULO DE CEP */
.block-shipping-wish {
  align-items: center;
  border-top: 1px solid oklch(96.1% 0 0);
  display: flex;
  margin: 20px 0 0;
  padding: 20px 0 0;
  width: 100%;
}

.block-shipping-estimate {
  border-right: 1px solid oklch(96.1% 0 0);
  display: block;
  float: left;
  margin-right: 20px;
  max-width: 270px;
  padding-right: 20px;
  width: 100%;
}

.block-shipping-estimate .block-simulate-freight {
  display: inline-block;
  vertical-align: middle;
  width: 100%;
}

.block-shipping-estimate .block-simulate-freight .block-subtitle {
  display: block;
  float: left;
  line-height: normal;
  margin: 5px 0;
  width: 100%;
}

.block-shipping-estimate .block-simulate-freight .block-subtitle span {
  font-size: var(--size-13);
}

.block-shipping-estimate .block-simulate-freight .shipping-estimation-form {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  width: 100%;
}

.block-shipping-estimate .block-simulate-freight .shipping-estimation-form .item label {
  display: none;
}

.block-shipping-estimate .block-simulate-freight .shipping-estimation-form .f-right {
  position: absolute;
  right: 0;
  top: 27px;
}

.block-shipping-estimate .block-simulate-freight .shipping-estimation-form input {
  padding: 0 90px 0 20px;
}

.block-shipping-estimate .block-simulate-freight .shipping-estimation-form .f-right button {
  font-weight: 600;
  height: 40px;
}

.block-shipping-estimate .block-simulate-freight .shipping-estimation-form input::placeholder {
  color: oklch(42.8% 0.01 248);
}

div#shipping-estimate-results::before {
  background: black;
  content: '';
  display: block;
  float: left;
  height: 100%;
  left: 0;
  opacity: 0.2;
  position: fixed;
  right: 0;
  top: 0;
  width: 100%;
}

div#shipping-estimate-results {
  display: table;
  left: 50%;
  margin-left: -300px;
  position: fixed;
  top: 10%;
  width: 100%;
  z-index: 999;
}

div#shipping-estimate-results .block-shipping-estimate {
  background-color: oklch(100% 0 0);
  border: 1px solid oklch(92.8% 0 0);
  border-radius: var(--product-radius-box, 0);
  border-top: 0;
  box-shadow: 0 1px 2px 0 oklch(92.8% 0 0);
  box-shadow: 0 0 5px oklch(65.3% 0 0);
  display: block;
  float: none;
  margin: 0;
  max-width: 600px;
  padding: 20px;
  position: relative;
  width: 100%;
}

.block-shipping-results .block-title {
  display: table;
  width: 100%;
}

.modal-body .block-shipping-estimate {
  max-width: 100%;
}

.modal-content .modal-header {
  padding-bottom: 0;
}

.modal-content h4.modal-title {
  font-size: var(--size-20);
  font-weight: bold;
}

.block-shipping-results i {
  transition: all 0.3s;
}

.block-shipping-results .block-content {
  margin-top: 15px;
}

.block-shipping-results h5,
.block-shipping-results .h5 {
  font-size: var(--size-16);
  font-weight: 600;
}

.block-shipping-results h5::before,
.block-shipping-results .h5::before {
  font-family: 'Font Awesome 5 Pro';
  font-weight: 600;
  margin-right: 8px;
}

.block-shipping-results h5.soulmkt_soulcorreios::before,
.block-shipping-results .h5.soulmkt_soulcorreios::before {
  content: '\f49a';
}

.block-shipping-results h5.combinedelivery::before,
.block-shipping-results .h5.combinedelivery::before {
  content: '\f007';
}

.block-shipping-results h5.soulmkt_storepickup::before,
.block-shipping-results .h5.soulmkt_storepickup::before {
  content: '\f54e';
}

.block-shipping-results h5.advancerate::before,
.block-shipping-results .h5.advancerate::before {
  content: '\f48b';
}

.block-shipping-results h5.freeshipping::before,
.block-shipping-results .h5.freeshipping::before {
  content: '\f0d1';
}

.block-shipping-results .shipping-type {
  margin-bottom: 20px;
}

.block-shipping-results .shipping-type:last-child {
  margin: 0;
}

.block-shipping-results li {
  border: 1px solid oklch(0% 0 0 / 13%);
  border-radius: var(--product-radius-shipping-item, 0);
  margin: 0 0 5px;
  padding: 4px 15px;
}

.block-shipping-results .shipping-type li:nth-child(odd) {
  background-color: oklch(97.6% 0 0);
}

.block-shipping-results span.price {
  font-weight: 600;
}

.block-shipping-results li a {
  font-weight: 600;
  transition: all 0.3s;
}

.block-shipping-results li .card.card-body {
  border: 2px solid oklch(93.7% 0 0);
  border-radius: var(--product-radius-shipping-card, 0);
  margin: 20px 0 0;
  padding: 15px 20px;
}

.block-shipping-results li .card.card-body h6 {
  font-weight: 600;
}

.block-shipping-results li .card.card-body span.label-week {
  font-weight: 600;
}

.block-shipping-estimate .please-wait svg {
  left: 50%;
  position: fixed;
  top: 50%;
  z-index: 9999;
}

.block-shipping-estimate .please-wait::before {
  background-color: oklch(100% 0 0);
  content: '';
  height: 100%;
  left: 0;
  opacity: 0.5;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
}

.product-view .box-wish-share {
  float: left;
}

.block-freeshipping-message {
  border-radius: var(--product-radius-freeship-msg, 0);
  font-size: var(--size-16);
  margin: 0 0 10px;
  padding: 5px 10px;
  text-align: center;
}
/* FIM CALCULO DE CEP */

/* LABEL FRETE GRATIS */
.product-shop .free-shipping {
  border-radius: var(--product-radius-box, 0);
  display: table;
  float: left;
  font-size: var(--size-12);
  left: 0;
  padding: var(--product-padding-free-ship, 0.1875rem 0.5rem);
  position: unset;
  right: 0;
}

.product-shop .free-shipping i::after {
  opacity: 1;
}

.free-shipping {
  z-index: 99;
}
/* FIM LABEL FRETIS GRATIS */

/* SKU */
.product-view .block-sku {
  display: block;
  margin: 5px 0 0;
  width: 100%;
}

.product-view .block-sku span {
  font-size: var(--size-12);
}

.product-view .block-sku .subtitle {
  font-weight: 600;
}
/* FIM SKU */

/* ATRIBUTO ABAIXO DO NOME (config soulcore_settings/product_name_attribute_code) */
.product-view .product-name-attribute {
  display: block;
  font-size: var(--size-14, 0.875rem);
  margin: 0.25rem 0 0;
  width: 100%;
}

/* Peso normal de proposito: o <strong> do label traria 700 e o valor herda ~400,
   deixando o rotulo mais forte que o dado. Mesma escolha de
   .products-grid .product-item .grid-attribute__label em grid.css. */
.product-view .product-name-attribute__label {
  font-weight: 400;
}
/* FIM ATRIBUTO ABAIXO DO NOME */

/* VENDIDO E ENTREGUE  */
.extra-info .area-vendor-link {
  margin: 5px 0 10px;
  padding-bottom: 10px;
  width: 100%;
}

.extra-info .area-vendor-link a {
  font-weight: 600;
}

.three_columns .block-right-product .area-vendor-link span,
.three_columns .block-right-product .area-vendor-link a,
.three_columns .block-right-product .area-vendor-link .qty-available,
.block-right-two .area-product-tab .area-vendor-link span,
.block-right-two .area-product-tab .area-vendor-link a,
.block-right-two .area-product-tab .area-vendor-link .qty-available {
  font-size: var(--size-13);
}

.vendor-logo {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.vendor-logo:not(:has(.vendor__image)) {
  margin: 8px 0;
}

.vendor-logo .vendor__p-infos * {
  margin: 0 !important;
}

.vendor-logo .vendor__p-infos {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.vendor-logo:has(.vendor__image) .extra-info .area-vendor-link {
  border: none;
  padding: 0;
}

.vendor-logo .vendor__image img {
  height: auto;
}

@media (width >= 575px) {
  .vendor-logo--booking {
    gap: 16px;
    justify-content: flex-start;
  }
}
/* FIM VENDIDO E ENTREGUE */

/* THUMBNAIL */
.amlabel-div {
  position: relative;
}

.product-img-box .more-views {
  overflow: hidden;
}

.product-img-box .more-views > div {
  display: table;
  margin: 20px auto 0;
}

.product-view #amasty_gallery a,
.product-image-thumbs a {
  cursor: pointer;
  float: left;
  margin: 5px;
  max-height: 400px;
  max-width: 400px;
  opacity: 0.7;
  transition: all 0.3s;
  width: auto;
}

.product-view #amasty_gallery a:hover,
.product-image-thumbs a:hover {
  opacity: 1;
}

.product-image > div {
  display: flex;
  margin: 0 auto;
}

.product-image > div img {
  align-self: center;
  display: table;
  justify-content: center;
  margin: 0 auto;
}

.product-view.three_columns .product-image .zoomWrapper {
  height: min(100vh, 250px);
  max-width: 100%;
}

.product-view.three_columns .product-image .zoomWrapper #amasty_zoom {
  height: 100%;
  object-fit: cover;
}

.product-view.three_columns .five_size .product-image .zoomWrapper {
  max-height: unset;
}

.product-view.three_columns .caroufredsel_wrapper:not(.product-options .caroufredsel_wrapper) {
  width: 260px !important;
}

.product-view.two_columns .product-img-box .free-shipping {
  left: 0;
  top: 0;
  z-index: 99;
}

.MagicScrollArrows:not(.hidden) {
  align-items: center;
  aspect-ratio: 1;
  background: oklch(100% 0 0);
  border: 1px solid oklch(97.6% 0 0);
  box-shadow: oklch(69.2% 0.01 248 / 20%) 0 8px 24px;
  display: flex !important;
  height: auto;
  justify-content: center;
  padding: 0.5rem;
  width: 2.5rem;
}

.MagicScrollArrows.disabled {
  display: none !important;
}

.MagicScrollArrowNext {
  right: -2rem;
}

.MagicScrollArrowPrev {
  left: -2rem;
}

@media (width > 770px) {
  .product-view.three_columns .MagicScrollArrowNext {
    right: 1rem;
  }

  .product-view.three_columns .MagicScrollArrowPrev {
    left: 1rem;
  }
}

/* FIM THUMBNAIL */

/* CAIXA NA DIREITA C/ INFO DE PRECO, ETC */
.product-view .block-right-product {
  background-color: oklch(100% 0 0);
  border: 1px solid oklch(96.3% 0.01 286);
  border-radius: var(--product-radius-box, 0);
  box-shadow: 0 2px 2px oklch(0% 0 0 / 10%);
  display: block;
  float: left;
  padding: 20px;
  width: 100%;
}

.product-view.three_columns .block-right-product {
  position: sticky;
  top: 30px;
}

.header-fixed .product-view.three_columns .block-right-product {
  top: 160px;
}

/* FIM CAIXA NA DIREITA C/ INFO DE PRECO, ETC */

/* OPCAO PRODUTO CONFIGURAVEL */
.amconf-image-container {
  margin: 10px 5px !important;
}

.amconf-color-container {
  align-items: center;
  background: oklch(100% 0 0);
  border: 1px solid transparent;
  box-shadow:
    0 2px 2px 0 oklch(0% 0 0 / 18%),
    0 0 2px 0 oklch(0% 0 0 / 14%);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  line-height: normal !important;
  padding: 0 5px;
  transition: all 0.3s;
  word-break: break-all;
}

.amconf-image-selected {
  border: 1px solid;
  font-weight: 600;
}

.amconf-image-selected::after {
  background-color: oklch(100% 0 0);
  content: var(--product-icon-check, '\f14a');
  font-family: 'Font Awesome 5 Pro';
  font-size: 18px;
  height: auto;
  line-height: 10px;
  position: absolute;
  right: -6px;
  top: -2px;
}

.product-view .product-options .option-block .caroufredsel_wrapper {
  max-width: 100% !important;
  width: 100% !important;
}

.am-swatch-arrow {
  background-color: oklch(100% 0 0);
  border-radius: var(--product-radius-arrow, 0);
  box-shadow: 0 2px 2px oklch(0% 0 0 / 10%);
  color: oklch(62% 0 0);
  cursor: pointer;
  height: 30px;
  line-height: 30px;
  margin-top: -15px;
  position: absolute;
  text-align: center;
  top: 50% !important;
  transition: all 0.3s;
  width: 30px;
  z-index: 10;
}

.am-swatch-arrow.disabled {
  cursor: default;
  opacity: 0;
}

.product-view .product-configurable-options #product-options-wrapper {
  margin: 0;
}

.product-view .product-configurable-options #product-matrix-std {
  margin: 10px 0 15px;
}

.product-view .product-configurable-options #product-options-wrapper dl {
  margin: 10px 0 0;
}

.product-configurable-options .block-options-int.checkbox {
  margin: 0 !important;
}

.three_columns .product-configurable-options dd.last {
  margin: 0;
}

.three_columns .product-configurable-options dl.last {
  margin: 0;
}

.amconf-color-container.amconf-image-outofstock + .amconf-hr {
  align-items: end;
  background-color: transparent;
  border-color: transparent;
  display: none;
  height: auto;
  justify-content: center;
}

.amconf-image-selected.amconf-image-outofstock + .amconf-hr {
  display: flex;
}

.amconf-color-container.amconf-image-outofstock {
  opacity: 0.5;
}

.amconf-color-container.amconf-image-outofstock.amconf-image-selected {
  background-color: oklch(96.4% 0 0);
  border-color: oklch(59.2% 0.2 21.2);
  opacity: 0.5;
}

.amconf-image-selected.amconf-image-outofstock {
  background-color: oklch(96.4% 0 0);
  border-color: oklch(59.2% 0.2 21.2);
  color: oklch(0% 0 0);
}

.amconf-image-selected.amconf-image-outofstock::after,
.amconf-color-container.amconf-image-outofstock::after {
  display: none;
}

.amconf-color-container.amconf-image-outofstock.amconf-image-selected + .amconf-hr::after {
  background: oklch(59.2% 0.2 21.2);
  border-radius: var(--product-radius-outofstock, 0.125rem);
  color: oklch(100% 0 0);
  content: '\f00d';
  display: block;
  font-family: 'Font Awesome 5 Pro';
  font-size: 12px;
  font-weight: 800;
  left: -4px;
  line-height: normal;
  padding: var(--product-padding-outofstock, 0.1875rem 0.1875rem 0.125rem);
  position: absolute;
  top: -8px;
  transform: rotate(-225deg);
  width: auto;
  z-index: 5;
}
/* FIM OPCAO PRODUTO CONFIGURAVEL */

/* DISPONIBILIDADE */
.catalog-product-view .product-view .product-shop .availability {
  font-size: var(--size-14);
}

.catalog-product-view .options-out-of-stock {
  align-items: center;
  background: oklch(90.7% 0.04 11.6);
  color: oklch(41% 0.13 20.8);
  display: inline-flex;
  font-weight: 400;
  gap: 8px;
  margin: 12px 0;
  padding: 4px 16px;
}
/* FIM DISPONIBILIDADE */

/* OPCAO PRODUTO CONFIGURAVEL - GRID */
#product-matrix-fixedleft {
  border-top: 1px solid oklch(93.7% 0 0);
  top: 24px;
}

#product-matrix-fixedleft > ul li.li-matrix-imagem {
  align-items: center;
  display: inline-flex;
  justify-content: flex-start;
  width: 100%;
}

#product-matrix-std ul li.li-matrix-imagem {
  align-items: center;
  display: flex;
  justify-content: normal;
  margin: 0 0 9.9px;
  min-height: 40px;
  padding: 0 11px;
  position: relative;
}

#product-matrix-std ul li.li-matrix-imagem.first {
  margin-top: 11px; /* border-top: 1px solid #eaeaea; */
}

#product-matrix-fixedleft > ul li.li-matrix-imagem div {
  width: 50px;
}

#product-matrix-std img {
  width: 40px;
}

#product-matrix-std .li-matrix-imagem .matrix-label {
  color: oklch(32.1% 0 0);
  line-height: 1;
  margin-left: 5px;
  text-align: center;
}

#product-matrix-std .li-matrix-imagem .matrix-label label {
  color: oklch(32.1% 0 0);
  display: block;
  font-weight: bold;
  margin: 0;
  text-align: left;
}

#product-matrix-std .owl-carousel.owl-drag .owl-item:hover {
  z-index: 9;
}

#product-matrix-std .owl-carousel .owl-stage-outer {
  height: auto;
  padding: 0;
}

#product-matrix-std .item ul li.first {
  border: 0;
  border-bottom: 1px solid oklch(93.7% 0 0);
  font-size: var(--size-16);
  font-weight: bold;
  height: auto;
  margin: 0 0 10px;
  min-height: auto;
  white-space: nowrap;
}

#product-matrix-std .owl-item ul li {
  align-items: center;
  display: flex;
  height: 40px;
  justify-content: center;
  margin: 0 0 10px;
  min-height: 40px;
  padding: 0 11px;
  position: relative;
}

#product-matrix-std .owl-carousel .owl-stage-outer .item {
  display: block;
}

#product-matrix-std .input-text {
  padding: 0 5px;
  text-align: center;
}

#product-matrix-std .stock-container {
  background-color: oklch(0% 0 0);
  border-radius: var(--product-radius-stock, 0);
  color: oklch(100% 0 0);
  display: none;
  font-size: var(--size-11);
  font-weight: bold;
  left: 0;
  padding: 0 5px;
  position: absolute;
  top: -35px;
  width: 90px;
  z-index: 9999;
}

#product-matrix-std .stock-container::before {
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid oklch(0% 0 0);
  bottom: -8px;
  content: '';
  display: inline-block;
  height: 0;
  margin-right: 10px;
  position: absolute;
  vertical-align: middle;
  width: 0;
}

#product-matrix-std .matrix-bottom-container {
  display: table;
  margin: 10px 0;
  width: 100%;
}

#product-matrix-std .matrix-bottom-container .matrix-qty-container,
#product-matrix-std .matrix-bottom-container .matrix-price-container {
  display: block;
}

#product-matrix-std .matrix-bottom-container .matrix-qty-container span,
#product-matrix-std .matrix-bottom-container .matrix-price-container > span {
  color: oklch(70.6% 0 0);
  font-size: var(--size-14);
  font-weight: normal;
}

#product-matrix-std .matrix-bottom-container .matrix-qty-container .matrix-total-qty.dyn,
#product-matrix-std .matrix-bottom-container .matrix-price-container #matrix-total-price {
  display: inline-block;
}

#product-matrix-std .matrix-bottom-container .matrix-qty-container .matrix-total-qty.dyn,
#product-matrix-std .matrix-bottom-container .matrix-price-container #matrix-total-price span {
  font-size: var(--size-14);
  font-weight: 600;
}

#product-matrix-std .matrix-bottom-container .matrix-price-container > span.price {
  display: table;
  font-weight: 600;
}

#product-matrix-std .matrix-bottom-container .matrix-price-container #matrix-total-price > span.totalBoleto {
  font-size: var(--size-16);
}

#product-matrix-std .matrix-bottom-container .matrix-price-container #matrix-total-price span:nth-child(2) {
  display: table;
}

#product-matrix-std .matrix-bottom-container .matrix-price-container #matrix-total-price span:nth-child(2),
#product-matrix-std
  .matrix-bottom-container
  .matrix-price-container
  #matrix-total-price
  span:nth-child(2)
  .totalBoleto {
  color: oklch(70.6% 0 0);
  font-size: var(--size-14);
}

#product-matrix-std #product-matrix button.owl-next,
#product-matrix-std #product-matrix button.owl-prev {
  background-color: oklch(100% 0 0);
  height: 35px;
  width: 35px;
}

#product-matrix-std #product-matrix button i {
  font-size: var(--size-18);
}

#product-matrix-std ul {
  border-bottom: 1px solid oklch(93.7% 0 0);
}

#product-matrix-std .owl-carousel .owl-stage-outer .item.total li.last {
  border-left: 1px solid oklch(93.7% 0 0);
  margin-bottom: 0;
}

.three_columns #product-matrix-std .item ul li.first {
  font-size: var(--size-14);
}

.three_columns #product-matrix-fixedleft {
  top: 21px;
}

.three_columns #product-matrix-std .owl-item ul li {
  padding: 0 5px;
}

.product-view .product-options .caroufredsel_wrapper {
  margin: 0 auto !important;
  max-width: unset !important;
}

.product-view .product-options .am-swatch-arrow.disabled {
  opacity: 0.5;
  pointer-events: none;
}

/* FIM OPCAO PRODUTO CONFIGURAVEL - GRID */

/* DETALHES DO PRODUTO */
/* ========================================= */
.product-detail {
  color: oklch(38.3% 0 0);
  font-size: var(--size-13);
  margin-top: 50px;
}

.product-detail > div {
  width: 100%;
}

.product-detail h5,
.product-detail .h5 {
  border-bottom: 1px solid oklch(96.1% 0 0);
  display: block;
  font-size: var(--size-26);
  font-weight: 600;
  margin: 40px 0 20px;
  padding: 0 0 15px;
}

.product-detail .pd-description h5,
.product-detail .pd-description .h5 {
  margin: 0 0 20px;
}

.product-detail .product-video {
  margin: 30px 0 0;
}

.product-detail .pd-content > ul li {
  color: oklch(42.4% 0 0);
  padding: 7px 15px;
}

.product-detail .pd-content > ul li:nth-child(odd) {
  background-color: oklch(97.6% 0 0);
  border-radius: var(--product-radius-detail-row, 0);
}

.product-detail .pd-description .pd-content ul {
  list-style: disc;
  padding: 0 0 0 20px;
}

.product-detail .pd-content ul li a {
  float: left;
  width: auto;
}

.product-detail .pd-content ul li {
  width: 100%;
}

.product-detail .pd-content > ul li img {
  display: inline-block;
}

.product-detail .pd-content ul li span:has(.multiselect-list) {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.product-detail .pd-content ul li .multiselect-list li {
  background-color: unset;
  padding: 0;
}

.product-detail .std.iframe-top {
  display: flex;
  flex-flow: row wrap;
}

.product-detail .custom-detail {
  width: 100%;
}

.product-detail .custom-detail h2,
.product-detail .custom-detail .h2 {
  font-size: var(--size-22);
  margin: 0 0 20px;
}

.product-detail .custom-detail ul.owl-carousel {
  list-style: none;
  padding: 0;
}

.product-detail .custom-detail ul.owl-carousel .owl-stage-outer {
  padding: 0;
}

.product-detail .custom-detail ul.owl-carousel li a {
  display: table;
  float: none;
  transition: all 0.3s;
  width: 100%;
}

.product-detail .pd-content ul.owl-carousel li h2,
.product-detail .pd-content ul.owl-carousel li .h2 {
  display: table;
  text-align: center;
  width: 100%;
}

.product-detail .pd-content ul.owl-carousel li p {
  padding: 0 20px;
  text-align: justify;
}

.product-detail .custom-detail ul.owl-carousel li a img {
  border-radius: var(--product-radius-detail-img, 0);
  display: table;
  height: auto;
  margin: 0 auto 20px;
  max-width: 100px;
  min-height: 100px;
  width: auto;
}
/* FIM DETALHES DO PRODUTO */
/* ========================================= */

/* AVALIACAO */
/* ========================================= */
.box-reviews .review-content {
  display: table;
  margin: 0 0 25px;
  width: 100%;
}

.box-reviews tr:first-child td .review-content {
  margin: 10px 0 25px;
}

.review-content h6 {
  font-size: var(--size-16);
  font-weight: 600;
  margin: 0 0 15px;
}

.review-content .rating-vote {
  float: left;
  min-width: 260px;
}

.rating-vote .col-sm {
  padding: 0;
}

.rating-vote .rating-percent {
  max-width: 100px;
}

.rating-vote p.review-name span {
  font-weight: 600;
}

.box-reviews p.review-posted-on {
  color: oklch(60.7% 0 0);
  font-size: var(--size-11);
  margin: 10px 0 0;
}

.review-content .review-detail {
  border: 1px solid oklch(96.1% 0 0);
  border-radius: var(--product-radius-review, 0);
  box-shadow: 0 0 2px oklch(97% 0 0);
  display: block;
  float: right;
  height: 140px;
  max-width: 990px;
  overflow: hidden;
  overflow-y: scroll;
  padding: 10px 15px;
  width: 100%;
}

.review-content .review-detail::-webkit-scrollbar {
  width: 3px;
}

.review-content .review-detail::-webkit-scrollbar-track {
  background-color: oklch(96.1% 0 0);
}

.review-content .review-detail p {
  font-size: var(--size-12);
}

.box-reviews #table-rating-product_length {
  display: none;
}

.box-reviews #table-rating-product_info {
  float: left;
}

.box-reviews #table-rating-product_paginate {
  float: right;
}

.box-reviews #table-rating-product_wrapper {
  display: table;
  padding: 0 0 10px;
  width: 100%;
}

.box-reviews .table td {
  border: none;
  padding: 0;
}

.box-reviews .table thead {
  display: none;
}

.box-reviews h4 {
  font-weight: 600;
  margin: 0;
}

.box-reviews .modal-header {
  padding-bottom: 0;
}

#review-form .rating-options label {
  cursor: pointer;
  display: table;
  font-size: var(--size-22);
  margin: 0 auto;
}

#review-form .rating-area.active i {
  font-weight: 900;
}

#review-form .rating-area i {
  transition: all 0.3s;
}

ul.form-list.review-list li.inline-label {
  margin: 0 0 10px;
}

#review-form textarea {
  max-height: 250px;
}

#review-form .buttons-set {
  float: right;
  margin: 20px 0 0;
}

#review-form .grecaptcha-badge {
  bottom: 22px !important;
  left: 0 !important;
  position: relative !important;
}

.rating-area .validation-advice {
  display: none;
}

.rating-area:first-child .validation-advice {
  display: table;
  width: 140px;
}

.rating-box .rating-area i {
  font-size: 14px;
}
/* FIM AVALIACAO */
/* ========================================= */

/* DEAL */
.product-view.two_columns .area-deal {
  margin-block: 12px;
}

.product-view:is(.two_columns, .three_columns) .c-deal {
  justify-content: flex-start;
}

.product-view.two_columns .c-deal.c-deal--only-timer {
  max-width: 180px;
}

@media (width <= 480px) {
  .product-view.two_columns .c-deal.c-deal--only-timer {
    max-width: unset;
  }
}
/* FIM DEAL */

/* COMPRE JUNTO */
/* ========================================= */
.block-upsell > .col-12 {
  margin: 0 auto;
  padding: 0;
}

.block-upsell .block-grid-title,
.block-related .block-grid-title {
  margin: 0;
}

.block-upsell .block-grid-title h2,
.block-related .block-grid-title h2,
.block-upsell .block-grid-title .h2,
.block-related .block-grid-title .h2 {
  border-bottom: 1px solid oklch(96.1% 0 0);
  display: block;
  font-size: var(--size-26);
  font-weight: 600;
  margin: 40px 0 20px;
  padding: 0 0 15px;
  text-align: left;
}

.block-upsell .category-products .products-grid {
  margin: 0;
}

.block-upsell .principal-product .products-grid .product-item:hover .area-product {
  box-shadow: none;
  cursor: auto;
}

.block-upsell .principal-product .products-grid .product-image:hover {
  cursor: auto;
  opacity: 1;
}

.block-upsell .category-products .products-grid .owl-item .product-item {
  margin-top: 0;
}

.buy-together-content {
  align-items: flex-end;
  border: 1px solid oklch(94% 0 0);
  border-radius: var(--product-radius-box, 0);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding: 1rem 1.25rem;
  width: 100%;
}

.buy-together-content .title-buy-together-only {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.buy-together-content .title-buy-together-only .buy-together__title {
  font-weight: 600;
}

.buy-together-content .title-buy-together-only span {
  display: inline-block;
  vertical-align: middle;
}

.buy-together-content .title-buy-together-only span.price {
  font-size: 1.75rem;
  font-weight: 700;
}

.buy-together-content .o-tax-included {
  display: none !important;
}

.buy-together-content .price-box.is-loading {
  opacity: 0.5;
  position: relative;
}

.buy-together-content .price-box.is-loading::after {
  animation: lds-dual-ring 1.2s linear infinite;
  border: 6.4px solid currentcolor;
  border-color: currentcolor transparent;
  border-radius: 50%;
  content: '';
  height: 44px;
  left: 50%;
  margin: 0;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  width: 44px;
}

@keyframes lds-dual-ring {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.buy-together-content .title-buy-together-only .c-price-box .c-installments span {
  display: initial;
  font-size: inherit;
  vertical-align: initial;
}

.buy-together-content .desconto-porcentagem.recharge.price-area {
  display: none;
}

/* Compre Junto da PDP (DEV-574), produto padrao e multivendedor: cabecalho do bloco e as
   secoes como kits em Grade (cards lado a lado) ou Lista (cards empilhados), no layout que o
   servidor resolve (data-layout / modificador --grid ou --list da raiz).

   Cores, bordas, raios e sombras sao tokens --bt-* no escopo .soulmkt-buy-together, com o
   esquema da loja como padrao: botao nas cores do botao de compra (--button-buy-*), borda e
   realce do destaque nas da "Melhor oferta" da lista de vendedores (--asd-tag-color, que cai
   em --button-buy-bg-color) e raio do card no da linha da lista (--multiseller-radius-offers-row).
   Para trocar o visual de uma loja basta redefinir os --bt-* no CSS customizado dela. */

/* O head.phtml emite --button-buy-bg-color / --button-buy-text-color mesmo sem valor
   configurado, e var(--x, fallback) com --x vazio nao cai no fallback. Registrado como
   <color>, o token invalido no computed value vira o initial-value (mesmo recurso do
   --acc-primary de account.css). */
@property --bt-accent {
  inherits: true;
  initial-value: hsl(208 100% 34%);
  syntax: '<color>';
}

@property --bt-accent-contrast {
  inherits: true;
  initial-value: hsl(0 0% 100%);
  syntax: '<color>';
}

@property --bt-button-bg {
  inherits: true;
  initial-value: hsl(208 100% 34%);
  syntax: '<color>';
}

@property --bt-button-color {
  inherits: true;
  initial-value: hsl(0 0% 100%);
  syntax: '<color>';
}

@property --bt-success {
  inherits: true;
  initial-value: oklch(55% 0.13 166);
  syntax: '<color>';
}

.soulmkt-buy-together,
.soulmkt-buy-together-anchor {
  --bt-accent: var(--asd-tag-color, var(--button-buy-bg-color));
  --bt-accent-contrast: var(--button-buy-text-color);
  --bt-accent-soft: color-mix(in srgb, var(--bt-accent) 10%, oklch(100% 0 0));
  --bt-button-bg: var(--button-buy-bg-color);
  --bt-button-color: var(--button-buy-text-color);
  --bt-success: var(--discount-color, oklch(55% 0.13 166));
  --bt-surface: oklch(100% 0 0);
  --bt-surface-muted: oklch(97.5% 0 0);
  --bt-text: oklch(25% 0 0);
  --bt-muted: oklch(50% 0 0);
  --bt-text-soft: oklch(38% 0 0);
  --bt-border: oklch(92% 0 0);
  --bt-border-width: 1px;
  --bt-border-featured: var(--bt-accent);
  --bt-border-featured-width: 2px;
  --bt-radius: var(--multiseller-radius-offers-row, var(--asd-card-radius, 0.75rem));
  --bt-radius-small: var(--asd-tag-radius, 0.375rem);
  --bt-radius-button: var(--product-radius, 0.5rem);
  --bt-shadow: 0 1px 3px oklch(0% 0 0 / 6%);
  --bt-badge-bg: var(--bt-accent);
  --bt-badge-color: var(--bt-accent-contrast);
  --bt-badge-border: var(--bt-accent);
  --bt-chip-bg: oklch(95% 0 0);
  --bt-chip-color: oklch(40% 0 0);
  --bt-qty-bg: oklch(95% 0 0);
  --bt-save-bg: color-mix(in srgb, var(--bt-success) 14%, oklch(100% 0 0));
  --bt-save-color: color-mix(in srgb, var(--bt-success) 70%, oklch(0% 0 0));
  --bt-kit-bg: var(--bt-accent);
  --bt-kit-color: var(--bt-accent-contrast);
  --bt-icon-color: oklch(35% 0 0);
  --bt-skeleton: oklch(94% 0 0);
  --bt-backdrop: oklch(0% 0 0 / 45%);

  color: var(--bt-text);
}

.soulmkt-buy-together-area {
  margin-bottom: 2rem;
}

/* Elementos com `hidden` dentro do bloco somem mesmo com display proprio (flex/grid) */
.soulmkt-buy-together [hidden],
.soulmkt-buy-together-area[hidden] {
  display: none !important;
}

/* Atalho na caixa da melhor oferta (soulmultiseller/best_offer*.phtml) para o bloco */
.soulmkt-buy-together-anchor {
  align-items: center;
  color: var(--bt-accent);
  display: inline-flex;
  font-size: var(--size-14, 0.875rem);
  font-weight: 600;
  gap: 0.375rem;
  margin-block: 0.75rem;
  text-decoration: underline;
  text-underline-offset: 0.1875rem;
}

.soulmkt-buy-together-anchor:hover {
  color: var(--bt-accent);
  filter: brightness(0.9);
}

.soulmkt-buy-together-anchor:focus-visible {
  outline: 2px solid var(--bt-accent);
  outline-offset: 2px;
}

.soulmkt-buy-together-anchor[hidden] {
  display: none !important;
}

.soulmkt-buy-together-anchor svg {
  flex: 0 0 auto;
}

/* Caixa do bloco fora do ASD (no ASD a moldura e a c-product__section) */
.soulmkt-buy-together__combo {
  background-color: var(--bt-surface-muted);
  border: var(--bt-border-width) solid var(--bt-border);
  border-radius: var(--bt-radius);
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.5rem;
}

.soulmkt-buy-together.soulmkt-buy-together__combo {
  margin-top: 2.5rem;
}

.soulmkt-buy-together__combo--headless {
  background-color: transparent;
  border: 0;
  padding: 0;
}

.soulmkt-buy-together__head {
  align-items: flex-start;
  display: flex;
  gap: 0.75rem;
  min-width: 0;
}

.soulmkt-buy-together__head-icon {
  color: var(--bt-accent);
  display: flex;
  flex: 0 0 auto;
}

.soulmkt-buy-together__head-text {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}

.soulmkt-buy-together__head-label {
  color: var(--bt-accent);
  font-size: var(--size-12, 0.75rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.soulmkt-buy-together__title {
  color: var(--bt-text);
  font-size: var(--size-24, 1.5rem);
  font-weight: 700;
  line-height: 1.2;
}

.soulmkt-buy-together__description {
  color: var(--bt-muted);
  font-size: var(--size-14, 0.875rem);
}

/* --------------------------------------------------------------------- kits */

.soulmkt-buy-together__kits {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr);
}

/* Grade: no maximo 3 cards por linha (4o em diante na linha de baixo, com a mesma largura,
   alinhado a esquerda); com 2 secoes, 2 colunas; telas medias 2 e celular 1 */
.soulmkt-buy-together--grid .soulmkt-buy-together__kits {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kits:has(> .soulmkt-buy-together__kit:nth-child(2):last-child) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (width <= 1100px) {
  .soulmkt-buy-together--grid .soulmkt-buy-together__kits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (width <= 767px) {
  .soulmkt-buy-together--grid .soulmkt-buy-together__kits,
  .soulmkt-buy-together--grid .soulmkt-buy-together__kits:has(> .soulmkt-buy-together__kit:nth-child(2):last-child) {
    grid-template-columns: minmax(0, 1fr);
  }
}

.soulmkt-buy-together__kit {
  background-color: var(--bt-surface);
  border: var(--bt-border-width) solid var(--bt-border);
  border-radius: var(--bt-radius);
  box-shadow: var(--bt-shadow);
  display: grid;
  gap: 1rem;
  grid-template-areas:
    'intro'
    'items'
    'pricing'
    'tags'
    'actions';
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto 1fr auto auto auto;
  min-width: 0;
  padding: 1.25rem;
  position: relative;
}

.soulmkt-buy-together__kit--featured {
  border: var(--bt-border-featured-width) solid var(--bt-border-featured);
}

.soulmkt-buy-together__kit--featured:has(.soulmkt-buy-together__badge) {
  padding-top: 1.75rem;
}

/* Espaco para o selo, que fica metade para fora do card */
.soulmkt-buy-together__kits:has(.soulmkt-buy-together__badge) {
  padding-top: 0.75rem;
  row-gap: 1.5rem;
}

/* Selo do destaque: o mesmo desenho da tag "Melhor oferta" da lista de vendedores */
.soulmkt-buy-together__badge {
  align-items: center;
  background-color: var(--bt-badge-bg);
  border: 1px solid var(--bt-badge-border);
  border-radius: 0.375rem;
  color: var(--bt-badge-color);
  display: inline-flex;
  font-size: var(--size-12, 0.75rem);
  font-weight: 600;
  gap: 0.375rem;
  left: 1rem;
  line-height: 1;
  max-width: calc(100% - 2rem);
  padding: 0.375rem 0.5rem;
  position: absolute;
  top: 0;
  translate: 0 -50%;
}

.soulmkt-buy-together__badge span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.soulmkt-buy-together__kit-intro {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  grid-area: intro;
  min-width: 0;
}

.soulmkt-buy-together__kit-heading {
  align-items: flex-start;
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
}

.soulmkt-buy-together__kit-title {
  color: var(--bt-text);
  font-size: var(--size-18, 1.125rem);
  font-weight: 700;
  line-height: 1.25;
  margin: 0;
}

.soulmkt-buy-together__kit-title:focus {
  outline: none;
}

.soulmkt-buy-together__chip {
  background-color: var(--bt-chip-bg);
  border-radius: 100vw;
  color: var(--bt-chip-color);
  flex: 0 0 auto;
  font-size: var(--size-12, 0.75rem);
  padding: 0.25rem 0.625rem;
  white-space: nowrap;
}

/* Subtitulo e detalhes em HTML (allowlist de Soulmkt_BuyTogether_Helper_Data::DESCRIPTION_TAGS) */
.soulmkt-buy-together__kit-text,
.soulmkt-buy-together__modal-body {
  color: var(--bt-muted);
  font-size: var(--size-14, 0.875rem);
  line-height: 1.45;
}

.soulmkt-buy-together__kit-text > :first-child,
.soulmkt-buy-together__modal-body > :first-child {
  margin-top: 0;
}

.soulmkt-buy-together__kit-text > :last-child,
.soulmkt-buy-together__modal-body > :last-child {
  margin-bottom: 0;
}

.soulmkt-buy-together__kit-text p {
  font-size: inherit;
  margin: 0 0 0.5rem;
}

.soulmkt-buy-together__kit-text ul,
.soulmkt-buy-together__kit-text ol {
  margin: 0 0 0.5rem;
  padding-left: 1.25rem;
}

.soulmkt-buy-together__kit-text ul {
  list-style: disc;
}

.soulmkt-buy-together__kit-text ol {
  list-style: decimal;
}

.soulmkt-buy-together__kit-text h3,
.soulmkt-buy-together__kit-text h4 {
  color: var(--bt-text);
  font-size: var(--size-16, 1rem);
  font-weight: 700;
  margin: 0.75rem 0 0.375rem;
}

.soulmkt-buy-together__kit-text a {
  color: var(--bt-accent);
  text-decoration: underline;
}

.soulmkt-buy-together__kit-text b,
.soulmkt-buy-together__kit-text strong {
  color: var(--bt-text);
  font-weight: 700;
}

/* ------------------------------------------------------------------- itens */

.soulmkt-buy-together__items {
  align-items: flex-start;
  display: flex;
  gap: 1.5rem;
  grid-area: items;
  justify-content: space-around;
  list-style: none;
  margin: 0;
  min-width: 0;
  overflow-x: auto;
  padding: 0.25rem 0;
  scrollbar-width: thin;
}

.soulmkt-buy-together__item {
  align-items: center;
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: 0.25rem;
  max-width: 8.5rem;
  min-width: 4.75rem;
  position: relative;
  text-align: center;
}

.soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
  color: var(--bt-muted);
  content: '+';
  font-size: var(--size-18, 1.125rem);
  left: -1.125rem;
  line-height: 1;
  position: absolute;
  top: 2rem;
}

/* Grade com kit de 4 produtos ou mais: uma linha so, miniaturas menores */
.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows {
  gap: 1.25rem;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows .soulmkt-buy-together__item {
  max-width: 6.25rem;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows .soulmkt-buy-together__item-media img {
  padding: 0.5rem;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
  font-size: var(--size-18, 1.125rem);
  left: -0.625rem;
}

.soulmkt-buy-together__item-figure {
  position: relative;
  width: min(100%, 5.5rem);
}

.soulmkt-buy-together__item-media {
  aspect-ratio: 1;
  background-color: var(--bt-surface);
  border: var(--bt-border-width) solid var(--bt-border);
  border-radius: var(--bt-radius-small);
  display: block;
  position: relative;
  width: 100%;
}

/* Desmarcar item (kit com mais de 3 produtos): o input fica escondido e o label desenha a
   caixa no canto da miniatura, na cor de realce da loja */
/* Visivel para o teclado: o tema esconde o input com visibility: hidden (input.css) */
.soulmkt-buy-together .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input {
  block-size: 1px;
  clip-path: inset(50%);
  display: block;
  visibility: visible;
  inline-size: 1px;
  margin: 0;
  opacity: 0;
  position: absolute;
}

/* Seletores longos de proposito: input.css desenha o checkbox do tema em
   input[type="checkbox"] + label (padding, position, ::before/::after). */
.soulmkt-buy-together .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input + label.soulmkt-buy-together__check {
  background-color: var(--bt-surface);
  border: 2px solid var(--bt-accent);
  border-radius: 0.25rem;
  cursor: pointer;
  display: block;
  height: 1.25rem;
  left: 0.25rem;
  line-height: 1;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0.25rem;
  width: 1.25rem;
}

.soulmkt-buy-together .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input + label.soulmkt-buy-together__check::before {
  content: none;
}

.soulmkt-buy-together .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input + label.soulmkt-buy-together__check::after {
  content: none;
}

.soulmkt-buy-together .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input:checked + label.soulmkt-buy-together__check {
  background-color: var(--bt-accent);
}

.soulmkt-buy-together .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input:checked + label.soulmkt-buy-together__check::after {
  background: none;
  border: solid var(--bt-accent-contrast);
  border-width: 0 2px 2px 0;
  border-radius: 0;
  box-shadow: none;
  content: '';
  display: block;
  height: 0.625rem;
  left: 0.3125rem;
  opacity: 1;
  position: absolute;
  rotate: 45deg;
  top: 0.0625rem;
  transform: none;
  width: 0.3125rem;
}

.soulmkt-buy-together .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input:focus-visible + label.soulmkt-buy-together__check {
  outline: 2px solid var(--bt-accent);
  outline-offset: 2px;
}

/* Item desmarcado fica esmaecido */
.soulmkt-buy-together__item:has(.soulmkt-buy-together__check-input:not(:checked)) .soulmkt-buy-together__item-media,
.soulmkt-buy-together__item:has(.soulmkt-buy-together__check-input:not(:checked)) .soulmkt-buy-together__item-name,
.soulmkt-buy-together__item:has(.soulmkt-buy-together__check-input:not(:checked)) .soulmkt-buy-together__item-sku {
  opacity: 0.45;
}

.soulmkt-buy-together__sr-only {
  block-size: 1px;
  clip-path: inset(50%);
  inline-size: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
}

/* Miniatura clicavel (label do checkbox do item): o tema estiliza label (margem, fonte) */
.soulmkt-buy-together label.soulmkt-buy-together__item-media {
  cursor: pointer;
  display: block;
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
  padding: 0;
}

.soulmkt-buy-together__item-media img {
  block-size: 100%;
  border-radius: inherit;
  display: block;
  inline-size: 100%;
  object-fit: contain;
}

.soulmkt-buy-together__item-qty {
  background-color: var(--bt-qty-bg);
  border-radius: 100vw;
  bottom: 0.25rem;
  color: var(--bt-text);
  font-size: var(--size-11, 0.6875rem);
  font-weight: 600;
  line-height: 1;
  padding: 0.1875rem 0.375rem;
  position: absolute;
  right: 0.25rem;
}

/* align-self: stretch: com o item centralizado o nome teria a largura da maior palavra e
   vazaria para o item vizinho; na largura da caixa a palavra longa quebra (break-word) */
.soulmkt-buy-together__item-name {
  align-self: stretch;
  color: var(--bt-text);
  display: block;
  font-size: var(--size-12, 0.75rem);
  line-height: 1.3;
  overflow-wrap: break-word;
  word-break: normal;
}

.soulmkt-buy-together__item-name:hover {
  text-decoration: underline;
}

.soulmkt-buy-together__item-sku {
  color: var(--bt-muted);
  font-size: var(--size-11, 0.6875rem);
  overflow-wrap: anywhere;
}

/* ------------------------------------------------------------------- preco */

/* Preco em cima; economia e total individual dividem a linha de baixo e quebram quando nao
   cabem */
.soulmkt-buy-together__pricing {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  grid-area: pricing;
  min-width: 0;
}

.soulmkt-buy-together__savings {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem 0.75rem;
}

.soulmkt-buy-together__price {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}

.soulmkt-buy-together__starting {
  color: var(--bt-muted);
  font-size: var(--size-12, 0.75rem);
}

/* Preco e o chip "-X% no kit" (desconto da regra de carrinho) na mesma linha */
.soulmkt-buy-together__price-line {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.5rem;
}

.soulmkt-buy-together__pix-line {
  display: block;
}

/* Desconto do kit (regra de carrinho): nota discreta depois do "a vista" */
.soulmkt-buy-together__kit-off {
  color: var(--bt-accent);
  font-weight: 600;
}

.soulmkt-buy-together__price-pix:not([hidden]) + .soulmkt-buy-together__kit-off::before {
  color: var(--bt-muted);
  content: ' · ';
  font-weight: 400;
}

.soulmkt-buy-together__price-main {
  color: var(--bt-text);
  font-size: var(--size-24, 1.5rem);
  font-weight: 700;
  line-height: 1.15;
  white-space: nowrap;
}

.soulmkt-buy-together__price-pix {
  color: var(--bt-muted);
  font-size: var(--size-13, 0.8125rem);
}

/* Parcelas: o bloco de preco da loja, renderizado pelo servidor para o total da secao.
   So a linha de parcelas interessa aqui; preco, selo e "ver mais" ja estao no card. */
.soulmkt-buy-together__installments {
  color: var(--bt-muted);
  font-size: var(--size-13, 0.8125rem);
}

.soulmkt-buy-together__installments .price,
.soulmkt-buy-together__installments strong {
  color: var(--bt-text);
  font-size: inherit;
  font-weight: 600;
}

.soulmkt-buy-together .o-installments__see-more,
.soulmkt-buy-together .see-parc {
  display: none;
}

.soulmkt-buy-together__save {
  background-color: var(--bt-save-bg);
  border-radius: 100vw;
  color: var(--bt-save-color);
  font-size: var(--size-13, 0.8125rem);
  font-weight: 700;
  padding: 0.25rem 0.75rem;
  white-space: nowrap;
}

.soulmkt-buy-together__full {
  color: var(--bt-muted);
  font-size: var(--size-12, 0.75rem);
  margin-left: auto;
  white-space: nowrap;
}

.soulmkt-buy-together__full s {
  text-decoration-thickness: 1px;
}

/* --------------------------------------------------------------- destaques */

.soulmkt-buy-together__perks {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  grid-area: perks;
  list-style: none;
  margin: 0;
  padding: 0;
}

.soulmkt-buy-together__perk {
  align-items: center;
  display: flex;
  flex: 1 1 7rem;
  gap: 0.5rem;
  min-width: 0;
}

.soulmkt-buy-together__perk svg {
  color: var(--bt-icon-color);
  flex: 0 0 auto;
}

.soulmkt-buy-together__perk-text {
  display: flex;
  flex-direction: column;
  font-size: var(--size-12, 0.75rem);
  line-height: 1.3;
  min-width: 0;
}

.soulmkt-buy-together__perk-title {
  color: var(--bt-text);
  font-weight: 600;
}

.soulmkt-buy-together__perk-detail {
  color: var(--bt-muted);
}

/* ------------------------------------------------------------------- acoes */

.soulmkt-buy-together__actions {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  grid-area: actions;
}

.soulmkt-buy-together__actions .add-to-cart-buttons {
  width: 100%;
}

.soulmkt-buy-together .soulmkt-buy-together__buy {
  align-items: center;
  background-color: var(--bt-button-bg);
  border: 0;
  border-radius: var(--bt-radius-button);
  color: var(--bt-button-color);
  display: flex;
  font-size: var(--size-16, 1rem);
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  min-height: 3rem;
  padding: 0.75rem 1rem;
  white-space: nowrap;
  width: 100%;
}

.soulmkt-buy-together .soulmkt-buy-together__buy svg {
  flex: 0 0 auto;
}

.soulmkt-buy-together .soulmkt-buy-together__buy:hover {
  filter: brightness(0.94);
}

.soulmkt-buy-together .soulmkt-buy-together__buy:focus-visible {
  outline: 2px solid var(--bt-button-bg);
  outline-offset: 2px;
}

.soulmkt-buy-together__details {
  align-items: center;
  background: none;
  border: 0;
  display: inline-flex;
  gap: 0.25rem;
  color: var(--bt-accent);
  cursor: pointer;
  font-size: var(--size-13, 0.8125rem);
  padding: 0.25rem;
  text-decoration: underline;
  text-underline-offset: 0.1875rem;
}

.soulmkt-buy-together__details:focus-visible {
  outline: 2px solid var(--bt-accent);
  outline-offset: 2px;
}

.soulmkt-buy-together__more {
  align-items: center;
  background-color: var(--bt-surface);
  border: var(--bt-border-width) dashed var(--bt-border);
  border-radius: var(--bt-radius);
  color: var(--bt-text);
  cursor: pointer;
  display: flex;
  font-size: var(--size-14, 0.875rem);
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  padding: 0.75rem 1rem;
  width: 100%;
}

.soulmkt-buy-together__more:hover {
  border-color: var(--bt-accent);
}

.soulmkt-buy-together__more:focus-visible {
  outline: 2px solid var(--bt-accent);
  outline-offset: 2px;
}

/* -------------------------------------------------------------------- Grade */

/* Preco da Grade: preco grande e "Economize" na mesma linha; "a vista" e parcelas abaixo do
   preco, "Total individual" abaixo do "Economize" */
.soulmkt-buy-together--grid .soulmkt-buy-together__pricing {
  align-items: center;
  column-gap: 0.5rem;
  display: grid;
  grid-template-columns: auto auto;
  justify-content: space-between;
  row-gap: 0.125rem;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__price,
.soulmkt-buy-together--grid .soulmkt-buy-together__savings {
  display: contents;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__starting { grid-column: 1; grid-row: 1; }
.soulmkt-buy-together--grid .soulmkt-buy-together__price-line { grid-column: 1; grid-row: 2; }
.soulmkt-buy-together--grid .soulmkt-buy-together__save { grid-column: 2; grid-row: 2; justify-self: end; }
.soulmkt-buy-together--grid .soulmkt-buy-together__pix-line { grid-column: 1 / -1; grid-row: 3; }

/* O total individual nao aparece (Grade e Lista): o "Economize" ja diz a diferenca */
.soulmkt-buy-together__full {
  display: none;
}
.soulmkt-buy-together--grid .soulmkt-buy-together__installments { grid-column: 1 / -1; grid-row: 4; }

.soulmkt-buy-together--grid .soulmkt-buy-together__price-main {
  font-size: var(--size-28, 1.75rem);
}

.soulmkt-buy-together--grid :is(.soulmkt-buy-together__pix-line, .soulmkt-buy-together__installments) {
  color: var(--bt-muted);
  font-size: var(--size-14, 0.875rem);
}

.soulmkt-buy-together--grid .soulmkt-buy-together__installments :is(strong, b, .price) {
  color: var(--bt-text);
  font-weight: 700;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__save {
  border-radius: 100vw;
  font-size: var(--size-14, 0.875rem);
  font-weight: 700;
  padding: 0.3125rem 0.875rem;
}

/* Titulo, chip e subtitulo da Grade */
.soulmkt-buy-together--grid .soulmkt-buy-together__kit-title {
  font-size: var(--size-22, 1.375rem);
  font-weight: 600;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit-text {
  color: var(--bt-text-soft);
  font-size: var(--size-16, 1rem);
}

/* Itens da Grade ocupam a largura do card: caixas crescem ate o limite */
.soulmkt-buy-together--grid .soulmkt-buy-together__items {
  gap: 2rem;
  justify-content: center;
  overflow: visible;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__item {
  flex: 1 1 0;
  max-width: 10.75rem;
  min-width: 0;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__item-figure {
  width: 100%;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__item-media {
  aspect-ratio: 12 / 11;
  border-radius: 0.625rem;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__item-media img {
  padding: 0.75rem;
}

/* "+" no meio da caixa da miniatura, no centro do vao */
.soulmkt-buy-together--grid .soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
  content: none;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
  color: var(--bt-muted);
  content: '+';
  font-size: var(--size-22, 1.375rem);
  left: -1rem;
  line-height: 1;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__item-name {
  color: var(--bt-text);
  font-size: var(--size-14, 0.875rem);
}

.soulmkt-buy-together--grid .soulmkt-buy-together__item-sku {
  font-size: var(--size-12, 0.75rem);
}

/* Destaques da Grade: icone de traco fino, titulo e complemento sem quebrar palavra a palavra */
.soulmkt-buy-together--grid .soulmkt-buy-together__perk svg {
  height: 1.25rem;
  stroke-width: 1.5;
  width: 1.25rem;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__perk-title {
  font-size: var(--size-13, 0.8125rem);
  font-weight: 500;
  white-space: nowrap;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__perk-detail {
  font-size: var(--size-12, 0.75rem);
}

/* Card estreito (celular, ou 2 por linha ate 900px): preco e "Economize" nao cabem lado a
   lado; o chip desce para baixo do preco */
@media (width <= 480px), (768px <= width <= 900px) {
  .soulmkt-buy-together--grid .soulmkt-buy-together__pricing {
    grid-template-columns: minmax(0, 1fr);
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__save { grid-column: 1; grid-row: 5; justify-self: start; margin-top: 0.375rem; }
}

/* Destaques da Grade: linha fina em cima, itens espalhados na largura, icone ao centro das
   2 linhas */
.soulmkt-buy-together--grid .soulmkt-buy-together__perks {
  align-items: center;
  align-content: start;
  border-top: var(--bt-border-width) solid var(--bt-border);
  display: grid;
  gap: 0.75rem 1rem;
  grid-template-areas:
    'vendor stock'
    'shipping .';
  grid-template-columns: minmax(0, auto) minmax(0, auto);
  justify-content: space-between;
  padding-top: 0.875rem;
}

/* Vendedor e estoque em cima (esquerda/direita), frete unico embaixo a esquerda */
.soulmkt-buy-together--grid .soulmkt-buy-together__perk--vendor { grid-area: vendor; }
.soulmkt-buy-together--grid .soulmkt-buy-together__perk--stock { grid-area: stock; }
.soulmkt-buy-together--grid .soulmkt-buy-together__perk--shipping { grid-area: shipping; }

.soulmkt-buy-together--grid .soulmkt-buy-together__perk {
  align-items: center;
  flex: 0 1 auto;
  gap: 0.375rem;
}

/* Texto completo: o complemento (nome do vendedor) pode quebrar em 2 linhas */
.soulmkt-buy-together--grid .soulmkt-buy-together__perk-detail {
  white-space: normal;
}

/* Kits vizinhos alinhados (subgrid de 4 linhas): titulo, subtitulo, corpo (itens + preco +
   destaques, um embaixo do outro) e botao no fim do card. So o topo das fotos e o botao alinham
   entre kits; o que sobrar fica no fim do corpo do kit mais baixo, antes do botao, e nao entre os
   itens e o preco. Subtitulo vazio vira linha de altura zero. */
.soulmkt-buy-together__kit-body {
  display: contents;
}

@supports (grid-template-rows: subgrid) {
  .soulmkt-buy-together--grid .soulmkt-buy-together__kits {
    row-gap: 1rem;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__kit {
    grid-row: span 4;
    grid-template-areas: none;
    grid-template-rows: subgrid;
    row-gap: 0.875rem;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-intro {
    display: contents;
  }

  /* Coluna unica: grid-area (intro, items...) nao existe sem grid-template-areas */
  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-heading,
  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-text,
  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-body,
  .soulmkt-buy-together--grid .soulmkt-buy-together__actions {
    grid-column: 1;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-heading { grid-row: 1; }
  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-text { grid-row: 2; }
  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-body { grid-row: 3; }
  .soulmkt-buy-together--grid .soulmkt-buy-together__actions { grid-row: 4; }

  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-body {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
    min-width: 0;
  }

  /* Padding igual em todos os cards da grade: o do card com selo empurraria as linhas dele */
  .soulmkt-buy-together--grid .soulmkt-buy-together__kits:has(.soulmkt-buy-together__badge) .soulmkt-buy-together__kit {
    padding-top: 1.75rem;
  }
}

/* Sem subgrid: titulo em ate 2 linhas e subtitulo em ate 3, com altura fixa */
@supports not (grid-template-rows: subgrid) {
  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-title {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    min-height: 2.5em;
    overflow: hidden;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__kit-text {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    min-height: 4.35em;
    overflow: hidden;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__items {
    min-height: 9rem;
  }
}

/* -------------------------------------------------------------------- Lista */

/* Lista compacta: faixa de cima com titulo e subtitulo a esquerda e o chip a direita; no meio as
   colunas itens | destaques | preco; embaixo, na mesma linha, "Ver detalhes do kit" centralizado
   nos itens e o botao centralizado nos destaques + preco. As colunas sao definidas na lista de
   kits e herdadas por cada card (subgrid): comecam no mesmo x em todas as linhas. Destaques e
   preco tem a mesma largura e a divisoria entre eles fica no meio do vao, sobre o centro do
   botao. Sem destaques, o preco ocupa as duas colunas, centralizado sobre o botao. */
.soulmkt-buy-together--list {
  --bt-list-columns: minmax(0, 1fr) 15rem 15rem;
  --bt-list-gap: 1.25rem;
  --bt-list-pad: 1.25rem;
  --bt-list-item-gap: 1.75rem;
  --bt-list-card-height: 7.5rem;
  --bt-list-photo: 6.5rem;
  --bt-list-button: 17.5rem;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kits {
  column-gap: var(--bt-list-gap);
  grid-template-columns: var(--bt-list-columns);
}

/* Com subgrid, o padding e a borda do card saem das colunas das pontas: a do preco ganha esse
   tanto aqui para ficar com a mesma largura util da dos destaques */
@supports (grid-template-columns: subgrid) {
  @media (width >= 1200px) {
    .soulmkt-buy-together--list .soulmkt-buy-together__kits {
      grid-template-columns: minmax(0, 1fr) 15rem calc(15rem + var(--bt-list-pad) + var(--bt-border-width));
    }
  }
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit {
  column-gap: var(--bt-list-gap);
  grid-column: 1 / -1;
  grid-template-areas:
    'intro intro intro'
    'items tags pricing'
    'details actions actions';
  grid-template-columns: var(--bt-list-columns);
  grid-template-rows: auto;
  padding: 1rem var(--bt-list-pad);
  row-gap: 0.875rem;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit:not(:has(.soulmkt-buy-together__tags)) {
  grid-template-areas:
    'intro intro intro'
    'items pricing pricing'
    'details actions actions';
}

@supports (grid-template-columns: subgrid) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit {
    grid-template-columns: subgrid;
  }
}

/* Cabecalho */
.soulmkt-buy-together--list .soulmkt-buy-together__kit-intro {
  gap: 0.125rem;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit-heading {
  align-items: center;
  flex-direction: row;
  gap: 0.5rem 1rem;
}

/* Subtitulo na Lista: texto corrido (inline e strong na linha); so uma lista vira itens lado a
   lado. Paragrafo seguido de lista fica na mesma linha que ela. */
.soulmkt-buy-together--list .soulmkt-buy-together__kit-text {
  padding: 0;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit-text > * {
  margin: 0;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit-text > p:has(+ :is(ul, ol)),
.soulmkt-buy-together--list .soulmkt-buy-together__kit-text > :is(ul, ol) + p {
  display: inline;
  margin-right: 1.5rem;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit-text > :is(ul, ol) {
  display: inline-flex;
  margin-right: 1.5rem;
  vertical-align: baseline;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit-text ul,
.soulmkt-buy-together--list .soulmkt-buy-together__kit-text ol {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1.5rem;
  list-style: none;
  padding: 0;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit-text li {
  margin: 0;
}

/* Itens: caixas de largura e altura iguais com "+" no vao. A caixa decide o proprio desenho
   pela largura que sobra para ela (container query na lista de itens): larga, foto a esquerda e
   nome + SKU a direita, altura fixa; estreita, foto em cima e nome embaixo. Kit de 4 ou mais:
   sempre foto em cima, 4 lado a lado ou 2 por linha. A foto e uma caixa quadrada fixa (o "1x"
   fica no canto dela) e o nome corta em 3 linhas (o title traz o nome inteiro). */
.soulmkt-buy-together--list .soulmkt-buy-together__items {
  align-items: stretch;
  align-self: center;
  container: bt-items / inline-size;
  display: grid;
  gap: 1rem var(--bt-list-item-gap);
  grid-auto-columns: minmax(0, 1fr);
  grid-auto-flow: column;
  justify-content: stretch;
  overflow: visible;
}

.soulmkt-buy-together--list .soulmkt-buy-together__items--rows {
  grid-auto-flow: row;
  grid-auto-rows: 1fr;
  grid-template-columns: repeat(auto-fit, minmax(max(calc((100% - 3 * var(--bt-list-item-gap)) / 4), min(calc((100% - var(--bt-list-item-gap)) / 2), calc((4 * 6.875rem + 3 * var(--bt-list-item-gap) - 100%) * 999))), 1fr));
}

.soulmkt-buy-together--list .soulmkt-buy-together__item {
  align-content: start;
  background-color: var(--bt-surface);
  border: var(--bt-border-width) solid var(--bt-border);
  border-radius: var(--bt-radius-small);
  box-sizing: border-box;
  display: grid;
  gap: 0.25rem;
  grid-template-areas:
    'figure'
    'name'
    'sku';
  grid-template-columns: minmax(0, 1fr);
  max-width: none;
  min-width: 0;
  padding: 0.5rem;
  text-align: center;
}

.soulmkt-buy-together--list .soulmkt-buy-together__item-figure {
  align-self: center;
  grid-area: figure;
  width: 100%;
}

.soulmkt-buy-together--list .soulmkt-buy-together__item-media {
  aspect-ratio: 1;
  height: auto;
  width: min(var(--bt-list-photo), 100%);
}

/* label.soulmkt-buy-together__item-media zera a margem (reset do label do tema): centraliza de novo */
.soulmkt-buy-together--list .soulmkt-buy-together__item-figure .soulmkt-buy-together__item-media {
  margin-inline: auto;
}

.soulmkt-buy-together--list .soulmkt-buy-together__item-name {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  grid-area: name;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}

.soulmkt-buy-together--list .soulmkt-buy-together__item-sku {
  grid-area: sku;
}

/* "+" no centro do vao, na altura do meio da foto: no card empilhado ele sai da caixa da foto
   (que ocupa a largura do card), no horizontal do card (foto centralizada na altura) */
.soulmkt-buy-together--list .soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
  content: none;
}

.soulmkt-buy-together--list .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
  color: var(--bt-muted);
  content: '+';
  font-size: var(--size-18, 1.125rem);
  left: calc(var(--bt-list-item-gap) / -2 - 0.5rem - var(--bt-border-width));
  line-height: 1;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
}

/* Caixa horizontal: precisa de ~13.5rem (foto + texto). Largura minima da lista de itens para
   n caixas: n * 13.5rem + (n - 1) * vao (2 caixas: 28.75rem; 3 caixas: 44rem). Nome e SKU
   centralizados na altura, entre duas faixas elasticas. */
@container bt-items (width >= 28.75rem) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(2):last-child) .soulmkt-buy-together__item-figure {
    margin-bottom: 0;
    width: var(--bt-list-photo);
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(2):last-child) .soulmkt-buy-together__item-media {
    width: 100%;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(2):last-child) > .soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
    color: var(--bt-muted);
    content: '+';
    font-size: var(--size-18, 1.125rem);
    left: calc(var(--bt-list-item-gap) / -2 - var(--bt-border-width));
    line-height: 1;
    top: 50%;
    translate: -50% -50%;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(2):last-child) .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
    content: none;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(2):last-child) > .soulmkt-buy-together__item {
    column-gap: 0.75rem;
    grid-template-areas:
      'figure .'
      'figure name'
      'figure sku'
      'figure .';
    grid-template-columns: var(--bt-list-photo) minmax(0, 1fr);
    grid-template-rows: 1fr auto auto 1fr;
    height: var(--bt-list-card-height);
    row-gap: 0.125rem;
    text-align: left;
  }
}

@container bt-items (width >= 44rem) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(3):last-child) .soulmkt-buy-together__item-figure {
    margin-bottom: 0;
    width: var(--bt-list-photo);
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(3):last-child) .soulmkt-buy-together__item-media {
    width: 100%;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(3):last-child) > .soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
    color: var(--bt-muted);
    content: '+';
    font-size: var(--size-18, 1.125rem);
    left: calc(var(--bt-list-item-gap) / -2 - var(--bt-border-width));
    line-height: 1;
    top: 50%;
    translate: -50% -50%;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(3):last-child) .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
    content: none;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items:has(> .soulmkt-buy-together__item:nth-child(3):last-child) > .soulmkt-buy-together__item {
    column-gap: 0.75rem;
    grid-template-areas:
      'figure .'
      'figure name'
      'figure sku'
      'figure .';
    grid-template-columns: var(--bt-list-photo) minmax(0, 1fr);
    grid-template-rows: 1fr auto auto 1fr;
    height: var(--bt-list-card-height);
    row-gap: 0.125rem;
    text-align: left;
  }
}

/* Destaques compactos e preco, cada um com divisoria antes */
.soulmkt-buy-together--list .soulmkt-buy-together__tags {
  align-self: stretch;
  border-left: var(--bt-border-width) solid var(--bt-border);
  gap: 0.5rem;
  justify-content: center;
  padding-left: var(--bt-list-gap);
}

.soulmkt-buy-together--list .soulmkt-buy-together__tag {
  column-gap: 0.5rem;
  grid-template-columns: 1.125rem minmax(0, 1fr);
}

.soulmkt-buy-together--list .soulmkt-buy-together__tag-icon {
  font-size: 1rem;
}

.soulmkt-buy-together--list .soulmkt-buy-together__tag-title {
  font-size: var(--size-12, 0.75rem);
}

.soulmkt-buy-together--list .soulmkt-buy-together__tag-detail {
  font-size: var(--size-11, 0.6875rem);
}

.soulmkt-buy-together--list .soulmkt-buy-together__pricing {
  align-self: stretch;
  border-left: var(--bt-border-width) solid var(--bt-border);
  gap: 0.25rem;
  justify-content: center;
  padding-left: var(--bt-list-gap);
}

/* Divisoria destaques | preco no meio do vao: o preco avanca meio vao para a esquerda e o
   conteudo dele fica onde estava */
@media (width >= 1200px) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit:has(.soulmkt-buy-together__tags) .soulmkt-buy-together__pricing {
    margin-left: calc(var(--bt-list-gap) / -2);
    padding-left: calc(var(--bt-list-gap) * 1.5);
  }
}

@media (1200px <= width < 1366px) {
  .soulmkt-buy-together--list .soulmkt-buy-together__price-main {
    font-size: var(--size-22, 1.375rem);
  }
}

.soulmkt-buy-together--list .soulmkt-buy-together__savings {
  align-items: flex-start;
  flex-direction: column;
}

.soulmkt-buy-together--list .soulmkt-buy-together__pricing .soulmkt-buy-together__savings {
  display: contents;
}

.soulmkt-buy-together--list .soulmkt-buy-together__save {
  align-self: flex-start;
  order: -1;
}

.soulmkt-buy-together--list .soulmkt-buy-together__full {
  margin-left: 0;
}

/* Linha de baixo: link no centro dos itens e botao no centro do bloco da direita, mesmo centro
   vertical */
.soulmkt-buy-together__kit-details {
  align-self: center;
  grid-area: details;
  justify-self: center;
}

.soulmkt-buy-together--list .soulmkt-buy-together__details {
  padding: 0;
  white-space: nowrap;
}

.soulmkt-buy-together--list .soulmkt-buy-together__actions {
  align-self: center;
  justify-self: center;
  max-width: 100%;
}

.soulmkt-buy-together--list .soulmkt-buy-together__buy {
  min-width: var(--bt-list-button);
  padding-inline: 1.5rem;
  white-space: nowrap;
  width: auto;
}

@media (width <= 1199px) {
  .soulmkt-buy-together--list {
    --bt-list-columns: minmax(10rem, 1fr) minmax(11rem, 1fr) minmax(10rem, 1fr);
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit {
    grid-template-areas:
      'intro intro intro'
      'items items items'
      'details details details'
      'tags tags tags'
      'pricing pricing actions';
    row-gap: 1.25rem;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit:not(:has(.soulmkt-buy-together__tags)) {
    grid-template-areas:
      'intro intro intro'
      'items items items'
      'details details details'
      'pricing pricing actions';
  }

  .soulmkt-buy-together--list :is(.soulmkt-buy-together__tags, .soulmkt-buy-together__pricing, .soulmkt-buy-together__actions) {
    border-left: 0;
    padding-left: 0;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__actions {
    align-self: end;
    justify-self: stretch;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__buy {
    min-width: 0;
    width: 100%;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__tags {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Celular: Grade e Lista viram pilha de cards; ate 3 itens em linha com rolagem horizontal,
   4 ou mais em 2 colunas */
@media (width <= 767px) {
  .soulmkt-buy-together--list {
    --bt-list-columns: minmax(0, 1fr);
  }

  .soulmkt-buy-together__combo {
    padding: 1rem;
  }

  .soulmkt-buy-together .soulmkt-buy-together__kit {
    grid-template-areas:
      'intro'
      'items'
      'pricing'
      'tags'
      'actions';
    padding: 1rem;
  }

  .soulmkt-buy-together__items {
    justify-content: flex-start;
  }

  .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) {
    gap: 1.25rem;
  }

  .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) .soulmkt-buy-together__item {
    flex: 1 1 0;
    min-width: 0;
  }

  .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) .soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
    left: -1rem;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items {
    gap: 1.25rem;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows {
    gap: 0.75rem;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
    font-size: var(--size-18, 1.125rem);
    left: -0.625rem;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
    left: -0.375rem;
  }

  .soulmkt-buy-together--grid .soulmkt-buy-together__item-name {
    font-size: var(--size-12, 0.75rem);
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit-heading {
    flex-direction: row;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__pricing .soulmkt-buy-together__savings {
    align-items: center;
    display: flex;
    flex-direction: row;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__save {
    order: 0;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__full {
    border-top: 0;
    margin-left: auto;
    padding-top: 0;
    width: auto;
  }

  .soulmkt-buy-together__perks {
    flex-direction: row;
  }

  .soulmkt-buy-together__title {
    font-size: var(--size-20, 1.25rem);
  }

  .soulmkt-buy-together--list {
    --bt-list-item-gap: 1.25rem;
    --bt-list-photo: 5.5rem;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit,
  .soulmkt-buy-together--list .soulmkt-buy-together__kit:not(:has(.soulmkt-buy-together__tags)) {
    grid-template-areas:
      'intro'
      'items'
      'details'
      'pricing'
      'tags'
      'actions';
    padding: 1rem;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__actions {
    justify-self: stretch;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__items .soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
    left: calc(var(--bt-list-item-gap) / -2 - var(--bt-border-width));
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit-heading {
    align-items: flex-start;
    flex-wrap: wrap;
  }
}

/* ------------------------------------------------------------------- modal */

/* "Ver detalhes": dialog centralizado na viewport, largo o bastante para HTML rico do lojista.
   margin/inset explicitos: o reset do tema (* { margin: 0 }) tirava a centralizacao nativa
   do <dialog> e ele grudava no canto superior esquerdo. */
.soulmkt-buy-together__modal {
  --bt-modal-padding: 2rem;

  background: transparent;
  border: 0;
  color: var(--bt-text);
  height: fit-content;
  inset: 0;
  margin: auto;
  max-height: 94vh;
  max-width: 96vw;
  overflow: visible;
  padding: 0;
  position: fixed;
  width: 87.5rem;
}

/* Tela media: menos respiro lateral no corpo, para o conteudo aproveitar a largura */
@media (768px <= width <= 1199px) {
  .soulmkt-buy-together__modal {
    --bt-modal-padding: 1.25rem;
  }
}

/* ::backdrop so herda as variaveis do dialog nos navegadores recentes: cor literal de reserva */
.soulmkt-buy-together__modal::backdrop {
  background-color: var(--bt-backdrop, oklch(0% 0 0 / 45%));
}

/* Sem showModal() (navegador antigo) o JS abre com o atributo `open`: o fundo vem da sombra */
.soulmkt-buy-together__modal[open][data-fallback] {
  box-shadow: 0 0 0 100vmax var(--bt-backdrop);
  z-index: 1000;
}

.soulmkt-buy-together__modal[open] .soulmkt-buy-together__modal-box {
  animation: soulmkt-buy-together-modal-in 0.18s ease-out;
}

@keyframes soulmkt-buy-together-modal-in {
  from {
    opacity: 0;
    transform: translateY(0.75rem) scale(0.98);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .soulmkt-buy-together__modal[open] .soulmkt-buy-together__modal-box {
    animation: none;
  }
}

/* Pagina parada enquanto a modal esta aberta (classe no html posta pelo buytogether.js) */
/* Trava no body, nao no html: o tema deixa o html visivel e o overflow do body vai para a
   viewport. Com o html em hidden o body (height 100%) vira a caixa de rolagem e a pagina pula
   para o topo. */
html.soulmkt-buy-together-modal-open body {
  overflow: hidden;
}

.soulmkt-buy-together__modal-box {
  background-color: var(--bt-surface);
  border-radius: var(--bt-radius);
  box-shadow: 0 1.5rem 3rem oklch(0% 0 0 / 25%);
  display: flex;
  flex-direction: column;
  max-height: 94vh;
  overflow: hidden;
}

/* Cabecalho fixo no topo da modal; so o corpo rola */
.soulmkt-buy-together__modal-head {
  align-items: center;
  border-bottom: var(--bt-border-width) solid var(--bt-border);
  display: flex;
  flex: 0 0 auto;
  gap: 1rem;
  justify-content: space-between;
  padding: 1rem var(--bt-modal-padding);
}

.soulmkt-buy-together__modal-title {
  color: var(--bt-text);
  font-size: var(--size-20, 1.25rem);
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
}

.soulmkt-buy-together__modal-close {
  align-items: center;
  background: none;
  border: 0;
  border-radius: var(--bt-radius-small);
  color: var(--bt-muted);
  cursor: pointer;
  display: flex;
  flex: 0 0 auto;
  justify-content: center;
  min-height: 2.5rem;
  min-width: 2.5rem;
}

.soulmkt-buy-together__modal-close:hover {
  background-color: var(--bt-chip-bg);
  color: var(--bt-text);
}

.soulmkt-buy-together__modal-close:focus-visible {
  outline: 2px solid var(--bt-accent);
  outline-offset: 2px;
}

/* Corpo: tipografia de artigo para o HTML dos detalhes adicionais */
.soulmkt-buy-together .soulmkt-buy-together__modal-body {
  color: var(--bt-text);
  flex: 1 1 auto;
  font-size: var(--size-16, 1rem);
  line-height: 1.6;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 1.5rem var(--bt-modal-padding) var(--bt-modal-padding);
}

/* Itens do kit na modal ({{itens_data}}, buytogether/details/items.phtml): cartoes lado a lado
   com "+" entre eles, numero no canto, foto a esquerda e nome/SKU/topicos/link a direita */
.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items {
  background-color: var(--bt-surface-muted);
  border-radius: var(--bt-radius);
  margin: 1.25rem 0;
  padding: 1.25rem;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-items-list {
  display: flex;
  gap: 2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item {
  align-items: flex-start;
  background-color: var(--bt-surface);
  border: var(--bt-border-width) solid var(--bt-border);
  border-radius: var(--bt-radius);
  display: flex;
  flex: 1 1 0;
  gap: 0.875rem;
  margin: 0;
  min-width: 0;
  padding: 1rem;
  position: relative;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item + .soulmkt-buy-together__kit-item::before {
  color: var(--bt-muted);
  content: '+';
  font-size: var(--size-22, 1.375rem);
  left: -1rem;
  line-height: 1;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-number {
  align-items: center;
  background-color: var(--bt-accent);
  border-radius: 100vw;
  color: var(--bt-accent-contrast);
  display: flex;
  font-size: var(--size-12, 0.75rem);
  font-weight: 700;
  height: 1.5rem;
  justify-content: center;
  left: 0.5rem;
  position: absolute;
  top: 0.5rem;
  width: 1.5rem;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-media {
  background-color: var(--bt-surface-muted);
  border-radius: var(--bt-radius-small);
  display: block;
  flex: 0 0 auto;
  width: min(7.5rem, 40%);
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-media img {
  aspect-ratio: 1;
  border-radius: inherit;
  display: block;
  margin: 0;
  object-fit: contain;
  padding: 0.5rem;
  width: 100%;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-name {
  -webkit-box-orient: vertical;
  color: var(--bt-text);
  display: -webkit-box;
  font-size: var(--size-14, 0.875rem);
  font-weight: 700;
  line-height: 1.3;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-sku {
  color: var(--bt-muted);
  font-size: var(--size-12, 0.75rem);
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-bullets {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  list-style: none;
  margin: 0.25rem 0 0;
  padding: 0;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-bullets li {
  color: var(--bt-text);
  font-size: var(--size-12, 0.75rem);
  line-height: 1.35;
  margin: 0;
  padding-left: 1.125rem;
  position: relative;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-bullets li::before {
  color: var(--bt-success);
  content: '\2713';
  font-weight: 700;
  left: 0;
  position: absolute;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-link {
  color: var(--bt-accent);
  font-size: var(--size-13, 0.8125rem);
  font-weight: 600;
  margin-top: auto;
  padding-top: 0.375rem;
  text-decoration: none;
  white-space: nowrap;
}

.soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-link:hover {
  text-decoration: underline;
}

/* Celular: quase a tela toda, ancorada embaixo */
@media (width <= 767px) {
  .soulmkt-buy-together__modal {
    --bt-modal-padding: 1.25rem;

    margin: auto auto 0;
    max-height: 92vh;
    max-width: 100vw;
    width: 100vw;
  }

  .soulmkt-buy-together__modal-box {
    border-radius: var(--bt-radius) var(--bt-radius) 0 0;
    height: 92vh;
    max-height: 92vh;
  }

  .soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-items-list {
    flex-direction: column;
    gap: 1.75rem;
  }

  .soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item + .soulmkt-buy-together__kit-item::before {
    left: 50%;
    top: -0.875rem;
  }
  /* Link do cartao quebra em vez de vazar a tela estreita */
  .soulmkt-buy-together__modal-body .soulmkt-buy-together__kit-items .soulmkt-buy-together__kit-item-link {
    overflow-wrap: anywhere;
    white-space: normal;
  }
}

/* ---------------------------------------------------------------- esqueleto */

.soulmkt-buy-together__skeleton-shape {
  background-color: var(--bt-skeleton);
  border-radius: 0.25rem;
  display: block;
}

.soulmkt-buy-together__skeleton-line {
  height: 0.875rem;
  width: 100%;
}

.soulmkt-buy-together__skeleton-line--long {
  height: 1.125rem;
  width: 50%;
}

.soulmkt-buy-together__skeleton-line--short {
  width: 60%;
}

.soulmkt-buy-together__skeleton-line--total {
  height: 1.75rem;
  width: 55%;
}

.soulmkt-buy-together__skeleton-thumb {
  aspect-ratio: 1;
  border-radius: var(--bt-radius-small);
  width: 5.5rem;
}

.soulmkt-buy-together__skeleton-button {
  border-radius: var(--bt-radius-button);
  height: 3rem;
  width: 100%;
}

.soulmkt-buy-together__kit--skeleton {
  box-shadow: none;
}

.soulmkt-buy-together__kit--skeleton .soulmkt-buy-together__items {
  overflow: hidden;
}

.soulmkt-buy-together__live {
  block-size: 1px;
  clip-path: inset(50%);
  inline-size: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
}

/* FIM COMPRE JUNTO */
/* ========================================= */

/* MODAL PARCELAS */
/* ========================================= */
#modalParcela .modal-header {
  padding-bottom: 0;
}

#modalParcela .modal-title {
  font-size: var(--size-20);
  font-weight: 600;
}

#modalParcela i.close {
  transition: all 0.3s;
}

#modalParcela table {
  margin: 0;
}

#modalParcela table tr:nth-of-type(odd) {
  background-color: oklch(97.6% 0 0);
}

#modalParcela table td {
  border: none;
  text-align: center;
  vertical-align: middle;
}
/* FIM MODAL PARCELAS */
/* ========================================= */

/* PRODUTO AGRUPADO */
/* ========================================= */
.block-all-product .block-conteudo {
  border-bottom: 1px solid oklch(96.1% 0 0);
  margin-bottom: 20px;
  padding-bottom: 10px;
}

.produto-agrupado .grouped-items-table-wrapper {
  border-top: 1px solid oklch(96.1% 0 0);
  padding-top: 10px;
}

.block-all-product .block-conteudo .block-name .product-name {
  font-size: var(--size-14);
  font-weight: 100;
}

.product-view.produto-agrupado .add-to-box .add-to-cart {
  border: 0;
  margin: 0;
  padding: 0;
}

.product-view.produto-agrupado .add-to-box,
.product-view.produto-agrupado .add-to-box .add-to-cart {
  clear: unset;
}

.product-view.produto-agrupado .add-to-box .add-to-cart .qty-wrapper {
  display: block;
  float: left;
  margin: 0;
  padding: 0;
  text-align: right;
  width: 100%;
}

.product-view.produto-agrupado .add-to-box .add-to-cart .qty-wrapper .quantity {
  float: right;
  text-align: left;
  width: auto;
}

.produto-agrupado .area-vendor-link {
  margin-bottom: 10px;
}

.produto-agrupado .block-title-product {
  border-bottom: 1px solid oklch(96.1% 0 0);
  font-size: var(--size-16);
  font-weight: 600;
  margin-bottom: 15px;
  padding-bottom: 10px;
}

.product-view.produto-agrupado.two_columns .add-to-box .add-to-cart .add-to-cart-buttons {
  margin-left: 0;
}

.produto-agrupado.two_columns .grouped-items-table-wrapper {
  border: 1px solid oklch(96.1% 0 0);
  border-radius: var(--product-radius-box, 0);
  margin-bottom: 20px;
  padding: 10px;
}

.produto-agrupado .amxnotif-block {
  border: 0;
  line-height: 1;
  margin: 0;
  padding: 0 0 5px;
  text-align: left;
}

.product-view.produto-agrupado .add-to-box .add-to-cart .qty-wrapper label {
  margin: 5px 0;
}

.produto-agrupado .availability.out-of-stock {
  text-align: left;
}

.produto-agrupado p.alert-stock.link-stock-alert a {
  display: block;
  float: left;
  line-height: 1;
  text-align: left;
  width: 100%;
}

/* AGRUPADO EM CARDS */
.l-grouped-items {
  clear: both;
  display: grid;
  grid-template-rows: 40px 0fr;
  margin-block-end: 1rem;
  transition: grid-template-rows 0.3s ease;
}

.l-grouped-items.open {
  grid-template-rows: 40px 1fr;
}

.grouped-items-btn {
  font-size: var(--size-16);
  height: 40px;
  line-height: 40px;
  padding: 0 30px;
  width: 100%;
}

.grouped-wrapper {
  overflow: hidden;
}

.l-grouped-items .grouped-items-list {
  border: 1px solid oklch(94.9% 0 0);
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  max-height: 300px;
  overflow-y: auto;
  padding: 2rem 1rem;
}

.c-grouped-item {
  border: 1px solid oklch(94.9% 0 0);
  border-radius: 0.25rem;
  overflow: hidden;
  text-align: center;
}

.c-grouped-item:hover {
  box-shadow: oklch(50.7% 0.02 286 / 20%) 0 7px 29px 0;
}

.c-grouped-item label {
  cursor: pointer;
  display: block;
  height: 100%;
  margin: 0;
  width: 100%;
}

.c-grouped-item .item__infos {
  background: oklch(97.6% 0 0);
  padding: 0.5rem 1rem;
  position: relative;
}

.c-grouped-item .item__infos::before {
  background: oklch(100% 0 0);
  border: 2px solid oklch(68.3% 0 0);
  border-radius: 0.25rem;
  content: '';
  height: 16px;
  position: absolute;
  right: 10px;
  top: 10px;
  width: 16px;
}

.item__infos .item__info {
  color: oklch(32.1% 0 0);
  margin-bottom: 0;
}

.item__info--sku {
  color: oklch(51% 0 0);
}

.c-grouped-item input:checked + .item__infos {
  background: linear-gradient(to right, oklch(73.8% 0.15 144) 0%, oklch(77.8% 0.11 178) 66%);
}

.c-grouped-item input:checked + .item__infos .item__info {
  color: oklch(100% 0 0);
}

.c-grouped-item input:checked + .item__infos::before {
  border-color: oklch(100% 0 0);
}

.c-grouped-item input:checked + .item__infos::after {
  color: oklch(51% 0 0);
  content: '\f00c';
  font-family: 'Font Awesome 5 Pro';
  position: absolute;
  right: 12px;
  top: 10px;
}

.c-grouped-item .item__price {
  padding: 0.5rem 1rem;
}

.c-grouped-item .item__price .price {
  font-size: calc(18rem / 16);
}

@media (width <= 768px) {
  .grouped-items-btn {
    height: 44px;
    line-height: 44px;
  }
}
/* FIM PRODUTO AGRUPADO */
/* ========================================= */

/* PRODUTO BUNDLE */
/* ========================================= */
.product-view .bundle .block-qty .add-to-box .add-to-cart {
  border: 0;
  margin: 0;
  padding: 0;
}

.product-view .bundle .block-qty {
  display: block;
  float: left;
  line-height: 1;
  margin-left: 2%;
  width: 38%;
}

.product-view .bundle .input-box {
  display: block;
  float: left;
  line-height: 1;
  width: 60%;
}

.product-view .bundle .block-qty .add-to-box {
  line-height: 1;
}

.product-view .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper {
  display: block;
  float: left;
  margin: 0;
}

.product-view .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper label {
  float: left;
  font-size: var(--size-12);
  font-weight: 600;
  margin: 0 0 5px;
  padding-left: 30px;
  text-align: center;
  width: 100%;
}

.product-view .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper .quantity {
  display: table;
  float: right;
  text-align: center;
  width: auto;
}

.price-info .price-box.bundle .price-from .price {
  color: oklch(70.6% 0 0);
  font-size: var(--size-14);
  font-weight: 100;
  line-height: 1;
  text-decoration: line-through;
}

.price-info .price-box.bundle .price-to {
  line-height: 1;
  margin-bottom: 10px;
}

.price-info .price-box.bundle .price-from {
  margin: 0;
}

.product-view .price-info .price-box.bundle.catalog {
  display: none;
}

.product-view .block-related .price-info .price-box.bundle.catalog {
  display: block;
}

.row .row .price-info .price-box.bundle {
  margin: 10px 0 0;
}

.price-info .price-box.bundle .price-as-configured {
  display: block;
  float: left;
  margin-bottom: 5px;
  width: 100%;
}

.price-info .price-box.bundle {
  display: block;
  float: left;
  line-height: 1;
  width: 100%;
}

.product-view.two_columns .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper .quantity {
  float: unset;
}

.product-view.two_columns .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper label {
  padding: 0;
}

.product-view .radio .bundle .input-box {
  width: 100%;
}

.product-view .block-options-int.radio {
  margin-bottom: 0 !important;
  padding-bottom: 20px;
}

.product-view .radio .bundle .block-qty {
  margin: 10px 0 0;
  width: 100%;
}

.product-view .radio .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper .quantity {
  float: left;
}

.product-view .radio .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper label {
  font-size: var(--size-14);
  font-weight: 100;
  padding-left: 0;
  text-align: left;
  width: auto;
}

.product-view.three_columns .radio .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper label {
  margin: 8px 4px 0 0;
}

.block-options-int .block-input-box.checkbox {
  margin-bottom: 10px;
  padding-bottom: 0;
}

.block-options-int:last-child .block-input-box.checkbox {
  border: 0;
  padding: 0;
}

.block-options .block-input-box .input-box .bundle-option-select {
  height: auto;
  padding: 8px 15px;
}

.block-options .block-input-box .input-box .bundle-option-select option {
  display: block;
  float: left;
  margin: 2px 0;
  padding-bottom: 5px;
  white-space: pre-wrap;
  width: 100%;
}

.block-options .block-input-box .input-box .bundle-option-select option {
  font-size: var(--size-12);
}

.product-view .bundle .qtd-arrows.disabled {
  background: oklch(94% 0 0);
  pointer-events: none;
}

.product-view .bundle .add-to-box .add-to-cart .qtd-arrows.disabled i {
  color: oklch(84.5% 0 0);
}

.block-price .price-info .price-box.bundle .price-as-configured .price-label {
  display: none;
}

.products-grid .product-item .area-product .price-info .price-box.bundle .price-to {
  margin: 0 0 5px;
}

/* .product-view .price-info .price-box.bundle p.price-as-configured span { display: none; } */

/* .price-info .price-box.bundle .minimal-price, .price-info .price-box.bundle .price-as-configured span.price-label, .price-info .price-box.bundle .price-from span, .price-info .price-box.bundle .price-to span, .price-info .price-box.bundle.catalog { display: none; } */
/* FIM PRODUTO BUNDLE */
/* ========================================= */

/* PRODUCT LABEL */
.product-view .amlabel-div {
  position: relative;
}

.product-view .amlabel-div .amlabel-txt {
  color: oklch(100% 0 0);
  display: block;
  font-size: 0.9em;
  font-weight: bold;
  letter-spacing: 0.01px;
  line-height: 11px;
  text-decoration: none;
}

.product-view .amlabel-div a {
  position: relative;
  text-decoration: none;
}

.product-view .amlabel-table {
  cursor: pointer;
  position: absolute;
  z-index: 10;
}

.product-view .amlabel-table td {
  border: 0;
  height: auto;
  text-align: center;
  vertical-align: middle;
}

.product-view .top-center {
  left: 0;
  margin-left: auto;
  margin-right: auto;
  right: 0;
  top: 15px;
}

.product-view .middle-left {
  bottom: 15px;
  left: 0;
  margin-bottom: auto;
  margin-top: auto;
  top: -15px;
}

.product-view .middle-right {
  bottom: 15px;
  margin-bottom: auto;
  margin-top: auto;
  right: 0;
  top: -15px;
}

.product-view .bottom-center {
  bottom: 15px;
  left: 0;
  margin-left: auto;
  margin-right: auto;
  right: 0;
}

.product-view .middle-center {
  inset: -15px 0 15px;
  margin: auto;
}

.product-view .top-left {
  left: 0;
  top: 15px;
}

.product-view .top-right {
  right: 0;
  top: 15px;
}

.product-view .bottom-left {
  bottom: 15px;
  left: 0;
}

.product-view .bottom-right {
  bottom: 15px;
  right: 0;
}

.product-view .products-list .amlabel-div {
  float: left;
}

.product-view .amlabel-table2 {
  height: 100%;
  overflow: hidden;
  position: absolute;
  width: 100%;
}

.product-view .amlabel-txt2 {
  background-size: contain !important;
  max-height: 100px !important;
  max-width: 100px !important;
  position: absolute;
  z-index: 990;
}

.product-view.two_columns .top-left,
.product-view.two_columns .top-center,
.product-view.two_columns .top-right {
  top: 20px;
}
/* FIM PRODUCT LABEL */

/* ========================================= */
/* TEMPLATE PRODUTO - DESTAQUE INFORMACOES ADICIONAIS */
.product-detail .pd-content.highlights_additional_information > ul li {
  background-color: transparent;
  border-bottom: 1px solid oklch(96.1% 0 0);
  padding: 6px 0;
}

.product-detail .pd-content.highlights_additional_information > ul li:last-child {
  border-bottom: 0;
}

.product-detail .pd-content.highlights_additional_information > ul li span {
  font-weight: 700;
}

.product-detail .pd-content.highlights_additional_information > ul li span strong {
  font-weight: 400;
}
/* FIM TEMPLATE PRODUTO - DESTAQUE INFORMACOES ADICIONAIS */
/* ========================================= */

/* ========================================= */
/* PRODUCT CROWDFUNDING */
.product-crowdfunding .block-right-bottom .block-rewards .block-rewards-info {
  border: 1px solid;
  box-shadow: 0 2px 2px oklch(0% 0 0 / 10%);
}

.product-crowdfunding .block-right-bottom .block-rewards .block-rewards-info + .block-rewards-info {
  margin-top: 1.5rem;
}

.product-crowdfunding .product-name-autor .vendor-name {
  font-size: var(--size-16);
}

.product-crowdfunding .block-info-crowdfunding {
  background-color: oklch(100% 0 0);
  border: 1px solid oklch(96.3% 0.01 286);
  box-shadow: 0 2px 2px oklch(0% 0 0 / 10%);
  display: block;
  padding: 20px;
}

.product-crowdfunding .block-supportes-price .supportes-price {
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
}

.product-crowdfunding .block-progress .progress {
  border: 1px solid;
  height: 12px;
}

.product-crowdfunding .short-description p,
.product-crowdfunding .block-description p,
.product-crowdfunding .block-description span,
.product-crowdfunding .block-description {
  font-size: var(--size-16);
}

.product-crowdfunding .block-info-middle {
  align-items: center;
  display: flex;
}

.product-crowdfunding .block-rewards-title p {
  font-size: 18px;
  font-weight: 600;
}

.product-crowdfunding .block-goal-price p,
.product-crowdfunding .block-goal-price .price-box span {
  font-size: 20px;
}

.product-crowdfunding .row.middle .col-md-10 {
  border-bottom: 1px solid oklch(96.1% 0 0);
  border-top: 1px solid oklch(96.1% 0 0);
  padding-bottom: 40px;
}

.product-crowdfunding .block-qty-rewards .sold-out,
.product-crowdfunding .block-qty-rewards .limited {
  padding: 3px 5px;
}

.product-crowdfunding .block-btn-crow button,
.product-crowdfunding .block-right-bottom .block-rewards .block-rewards-info .area-support button {
  border: 1px solid;
}

.product-crowdfunding .block-info-bottom-img-product .block-left-bottom .product-detail .nav-pills .nav-link.active {
  background-color: oklch(100% 0 0);
  border-color: oklch(96.3% 0.01 286) oklch(96.3% 0.01 286) oklch(100% 0 0);
}

.product-crowdfunding .block-info-bottom-img-product .block-left-bottom .product-detail .nav-pills .nav-link {
  align-items: center;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
  display: flex !important;
  margin-bottom: -2px;
}

.product-crowdfunding .block-info-bottom-img-product .block-left-bottom .product-detail ul.nav {
  border-bottom: 1px solid oklch(96.3% 0.01 286);
}

.product-crowdfunding
  .block-info-bottom-img-product
  .block-left-bottom
  .product-detail
  .nav-pills
  .nav-link
  .text-title {
  border: 0;
  color: oklch(36% 0 0);
  font-size: var(--size-16);
  overflow: unset;
  padding: 0;
}

.product-crowdfunding .block-info-bottom-img-product .block-left-bottom .product-detail ul.nav .nav-item {
  display: flex;
}

.product-view.product-crowdfunding .block-info-bottom-img-product,
.product-view.product-crowdfunding .block-info-middle {
  border-top: 1px solid oklch(96.3% 0.01 286);
}

.product-crowdfunding .block-rewards-description ul {
  list-style: unset;
  padding: 0 0 0 20px;
}

.product-crowdfunding .block-rewards-description ul li {
  padding: 2px 0;
}

.product-crowdfunding .block-btn-crow button {
  font-size: var(--size-16);
  padding: 10px 18px;
}

.product-view.product-crowdfunding .product-name {
  font-size: var(--size-22);
}

.product-crowdfunding .block-rewards-info .area-support .block-left-rewards-value .input-group input,
.product-crowdfunding .block-rewards-info .area-support .block-left-rewards-value .input-group span,
.product-crowdfunding .block-rewards-info .area-support .btn-addToRewardToCart {
  height: 35px;
}

.product-crowdfunding .block-status-project p {
  box-shadow: 0 2px 2px oklch(0% 0 0 / 10%);
  padding: 15px;
}

.product-crowdfunding .block-rewards::-webkit-scrollbar {
  height: 6px;
  width: 6px;
}

@media (width >= 768px) {
  .product-crowdfunding .block-rewards--limit-height {
    height: 90vh;
    overflow-y: auto;
    padding-right: 8px;
    position: sticky;
    scrollbar-gutter: stable;
    top: 20px;
  }
}

@media (width <= 767px) {
  .product-crowdfunding .block-right-bottom .block-rewards.hor-scroll {
    align-items: stretch;
    display: flex;
    gap: 16px;
    overflow-x: auto;
    padding-bottom: 8px;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
  }

  .product-crowdfunding .block-right-bottom .block-rewards.hor-scroll .block-rewards-info {
    flex: 1 0 min(360px, 90vw);
    scroll-snap-align: start;
  }

  .product-crowdfunding .block-right-bottom .block-rewards.hor-scroll .block-rewards-info + .block-rewards-info {
    margin-top: 0;
  }
}
/* FIM PRODUCT CROWDFUNDING */
/* ========================================= */

@media screen and (width <=1300px) {
  .product-view.two_columns .add-to-box .add-to-cart .qty-wrapper {
    margin: 1px 8px 0 0;
  }

  .product-view.two_columns .add-to-box .add-to-cart .add-to-cart-buttons,
  .product-view .btn-make-offer {
    max-width: 230px;
  }

  .review-content .review-detail {
    max-width: 880px;
  }
}

@media screen and (width <=1199px) {
  .more-views .caroufredsel_wrapper {
    max-width: 520px;
  }

  .block-price {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .block-tierprice {
    flex: 0 0 100%;
    margin: 10px 0 0;
    max-width: 100%;
  }

  .product-view.two_columns .add-to-box .add-to-cart .qty-wrapper {
    margin: 1px 16px 0 0;
  }

  .product-view.two_columns .add-to-box .add-to-cart .add-to-cart-buttons {
    max-width: 135px;
  }

  .block-shipping-estimate {
    max-width: 200px;
  }

  .review-content .review-detail {
    max-width: 680px;
  }

  .block-upsell input[type='checkbox']:not(:checked) + label,
  .block-upsell input[type='checkbox']:checked + label {
    line-height: 14px;
    text-align: left;
  }

  .block-upsell input[type='checkbox']:checked + label::after,
  .block-upsell input[type='checkbox']:not(:checked) + label::before {
    top: 3px;
  }

  .product-view.three_columns .product-image .zoomWrapper {
    height: min(100vh, 310px);
  }

  /* .three_columns .block-price { max-width: 50%; } */
  .product-view.three_columns ul.tier-prices li.tier-price {
    width: 24%;
  }

  .product-view.three_columns .add-to-box .add-to-cart .qty-wrapper {
    float: left;
  }

  .product-view .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper .quantity {
    float: unset;
  }

  .product-view .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper label {
    padding: 0;
  }

  .block-shipping-estimate .block-simulate-freight .shipping-estimation-form .f-right {
    top: 47px;
  }

  .three_columns .block-shipping-estimate .block-simulate-freight .shipping-estimation-form .f-right {
    top: 28px;
  }

  .product-view.product-crowdfunding h1.product-name {
    font-size: var(--size-18);
  }

  .product-crowdfunding .product-name-autor .vendor-name {
    font-size: var(--size-14);
  }

  .product-crowdfunding .block-supportes-price .supportes-price {
    font-size: var(--size-24);
  }

  .product-crowdfunding .block-goal-price p,
  .product-crowdfunding .block-goal-price .price-box span {
    font-size: var(--size-16);
  }
}

@media screen and (width <=991px) {
  .product-view:not([class*='crowdfunding'], [class*='three-columns-multiseller']) .product-shop {
    margin-block-start: 24px;
  }

  .product-view.two_columns .caroufredsel_wrapper {
    max-width: 390px;
  }

  .product-view .right-column {
    display: block;
    float: left;
    padding: 20px 0 0;
    width: 100%;
  }

  .product-view h1.product-name {
    font-size: var(--size-20);
  }

  .product-view.two_columns .add-to-box .add-to-cart .qty-wrapper {
    margin: 0 0 15px;
  }

  .product-view.two_columns .add-to-box {
    padding-top: 0;
  }

  .product-view.two_columns .add-to-box .add-to-cart .add-to-cart-buttons,
  .product-view .btn-make-offer {
    max-width: 100%;
  }

  .block-shipping-estimate {
    border-right: 0;
    margin: 0;
    max-width: 100%;
    padding: 0;
  }

  .product-view .box-wish-share {
    margin: 15px 0 0;
  }

  .block-shipping-wish {
    display: block;
    float: left;
  }

  .review-content .review-detail {
    max-width: 460px;
  }

  .block-upsell .principal-product {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .block-upsell .principal-product .products-grid .product-item.default {
    margin: 0;
    width: 100%;
  }

  .block-upsell .principal-product .product-item .area-product {
    width: 100%;
  }

  .block-upsell .principal-product .products-grid .product-image {
    float: left;
    width: 33.3%;
  }

  .block-upsell .principal-product .products-grid .product-image img {
    max-height: 150px;
  }

  .block-upsell .principal-product .products-grid .product-item .desconto-porcentagem {
    right: 0;
  }

  .block-upsell .icon-upsell-plus {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .block-upsell .col-md-8 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .block-upsell input[type='checkbox']:not(:checked) + label,
  .block-upsell input[type='checkbox']:checked + label {
    line-height: 20px;
  }

  .block-upsell input[type='checkbox']:checked + label::after,
  .block-upsell input[type='checkbox']:not(:checked) + label::before {
    top: 0;
  }

  .product-view.three_columns ul.tier-prices li.tier-price {
    width: 32%;
  }

  .product-view.three_columns .add-to-box .add-to-cart .add-to-cart-buttons {
    max-width: 230px;
  }

  #ModalReview .col-md-7 {
    flex: 0 0 100%;
    margin-top: 10px;
    max-width: 100%;
    order: 2;
  }

  #ModalReview .col-md-5 {
    flex: 0 0 100%;
    max-width: 350px;
    order: 1;
    padding-left: 0;
  }

  #product-matrix-std .owl-carousel .owl-stage-outer .owl-item {
    margin: 0 !important;
  }

  .block-shipping-estimate .block-simulate-freight .shipping-estimation-form .f-right {
    top: 28px;
  }

  .product-view.three_columns .product-image .zoomWrapper {
    height: 100% !important;
    max-height: 100%;
  }

  .product-view.three_columns .add-to-box:not([class*='grouped'] .add-to-box) .add-to-cart {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
  }

  .product-view.three_columns .add-to-box:not([class*='grouped'] .add-to-box) .add-to-cart .qty-wrapper {
    display: flex;
    flex-direction: column;
    float: none;
    margin: 0;
  }

  .product-view.three_columns .add-to-box:not([class*='grouped'] .add-to-box) .add-to-cart .add-to-cart-buttons {
    flex: 1 0 240px;
    max-width: unset;
  }

  .product-view.three_columns .add-to-box:not([class*='grouped'] .add-to-box)::after,
  .product-view.three_columns .add-to-cart:not([class*='grouped'] .add-to-cart)::after {
    content: none;
  }
}

@media screen and (width <=770px) {
  .product-view .amlabel-div {
    z-index: 1;
  }
}

@media screen and (width <=767px) {
  .product-view .product-img-box {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
  }

  .product-view .product-shop {
    flex: 0 0 100%;
    margin: 20px 0 0;
    max-width: 100%;
    width: 100%;
  }

  .product-image > div.zoomWrapper {
    width: 100% !important;
  }

  .product-view.two_columns .product-img-box .free-shipping {
    left: 15px;
  }

  .product-view.two_columns .caroufredsel_wrapper {
    max-width: 520px;
  }

  .block-price {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .block-tierprice {
    flex: 0 0 50%;
    margin: 20px 0 0;
    max-width: 50%;
  }

  .product-view.two_columns .add-to-box .add-to-cart .qty-wrapper {
    margin: 1px 20px 0 0;
  }

  .product-view.two_columns .add-to-box .add-to-cart .add-to-cart-buttons {
    max-width: 260px;
  }

  .product-view .btn-make-offer {
    max-width: 470px;
  }

  .product-view .box-wish-share {
    margin: 0;
  }

  .review-content .rating-vote {
    display: table;
    float: none;
    min-width: 250px;
  }

  .rating-vote .rating-title {
    max-width: 200px;
  }

  .review-content .review-detail {
    margin: 15px 0 0;
    max-width: 100%;
  }

  .block-upsell input[type='checkbox']:not(:checked) + label,
  .block-upsell input[type='checkbox']:checked + label {
    line-height: 14px;
    max-width: 190px;
  }

  .block-upsell input[type='checkbox']:checked + label::after,
  .block-upsell input[type='checkbox']:not(:checked) + label::before {
    top: 3px;
  }

  .product-view.three_columns .caroufredsel_wrapper:not(.product-options .caroufredsel_wrapper) {
    width: 520px !important;
  }

  .product-view.three_columns ul.tier-prices li.tier-price {
    width: 24%;
  }

  .product-view.three_columns .add-to-box .add-to-cart .qty-wrapper {
    margin: 0;
  }

  .product-view.three_columns .add-to-box .add-to-cart .add-to-cart-buttons {
    max-width: 260px;
  }

  .block-shipping-estimate {
    float: unset;
    margin-bottom: 20px;
    max-width: 300px;
  }

  .catalog-product-view .product-view .product-shop .availability {
    float: left;
    width: 100%;
  }

  .product-crowdfunding .block-info-middle {
    display: block;
    float: left;
    margin-top: 0 !important;
  }

  .product-crowdfunding .block-info-middle .block-right-middle {
    justify-content: flex-start !important;
    margin-top: 10px;
    padding-left: 0;
  }

  .product-crowdfunding .block-info-middle .block-left-middle,
  .product-crowdfunding .block-info-middle .block-right-middle {
    padding: 0 !important;
  }

  .product-view.product-crowdfunding .product-shop {
    padding: 0;
  }

  .product-view.product-crowdfunding .block-right-bottom {
    margin-top: 40px;
  }

  .product-crowdfunding .block-info-bottom-img-product {
    margin-top: 0 !important;
  }

  .product-view.product-crowdfunding .product-shop .block-btn-crow.btnFixedCrowdfunding button {
    position: fixed;
    right: 0;
    top: 180px;
    z-index: 9999;
  }

  .product-view.product-crowdfunding .product-shop .block-btn-crow button {
    transition: all 0s;
  }

  .product-crowdfunding .block-btn-crow button {
    font-size: var(--size-14);
    padding: 7px 15px;
  }
}

@media screen and (width <=679px) {
  .block-upsell input[type='checkbox']:not(:checked) + label,
  .block-upsell input[type='checkbox']:checked + label {
    line-height: 20px;
    max-width: 100%;
  }

  .block-upsell input[type='checkbox']:checked + label::after,
  .block-upsell input[type='checkbox']:not(:checked) + label::before {
    top: 0;
  }

  .product-view.three_columns ul.tier-prices li.tier-price {
    width: 32%;
  }
}

@media screen and (width <=575px) {
  .product-view.two_columns .caroufredsel_wrapper,
  .product-view.three_columns .caroufredsel_wrapper {
    max-width: 395px !important;
  }

  .block-price {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .block-tierprice {
    flex: 0 0 100%;
    margin: 10px 0 0;
    max-width: 100%;
  }

  .col-lg-6 ul.tier-prices li.tier-price,
  .product-view.three_columns ul.tier-prices li.tier-price {
    width: auto;
  }

  .review-content .rating-vote {
    max-width: 100%;
  }

  .review-content h6 {
    font-size: var(--size-15);
  }

  .rating-vote .rating-title {
    margin-top: 15px;
  }

  .review-content .rating-vote .row:first-child .rating-title {
    margin: 0;
  }

  .block-upsell input[type='checkbox']:not(:checked) + label,
  .block-upsell input[type='checkbox']:checked + label {
    line-height: 14px;
    max-width: 190px;
  }

  .block-upsell input[type='checkbox']:checked + label::after,
  .block-upsell input[type='checkbox']:not(:checked) + label::before {
    top: 3px;
  }

  .buy-together-content {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .three_columns .block-price {
    max-width: 100%;
  }

  .product-view.three_columns .add-to-box .add-to-cart .add-to-cart-buttons,
  .product-view.three_columns .btn-make-offer {
    max-width: 100%;
  }
}

@media screen and (width <=550px) {
  .product-view.two_columns .add-to-box .add-to-cart .qty-wrapper {
    margin: 0 0 15px;
  }

  .product-view.two_columns .add-to-box .add-to-cart .add-to-cart-buttons,
  .product-view .btn-make-offer {
    max-width: 100%;
  }
}

@media screen and (width <=500px) {
  .two_columns .block-shipping-estimate {
    float: none;
  }

  .product-view .box-wish-share {
    display: table;
    float: none;
    margin: 15px 0 0;
  }

  .product-detail h5,
  .product-detail .h5,
  .block-upsell .block-grid-title h2,
  .block-upsell .block-grid-title .h2,
  .block-related .block-grid-title h2,
  .block-related .block-grid-title .h2,
  .block-comments h5,
  .block-comments .h5 {
    font-size: var(--size-20);
  }

  .product-detail .product-video .video iframe {
    height: auto;
  }
}

@media screen and (width <=460px) {
  .product-view.two_columns .caroufredsel_wrapper,
  .product-view.three_columns .caroufredsel_wrapper {
    max-width: 265px !important;
  }

  .col-lg-6 ul.tier-prices li.tier-price,
  .product-view.three_columns ul.tier-prices li.tier-price {
    width: 47%;
  }

  .amxnotif-input-fields input {
    padding: 0 20px;
  }

  .amxnotif-button-container {
    margin-top: 10px;
    position: relative;
    width: 100%;
  }

  .amxnotif-block .amxnotif-button-container button {
    width: 100%;
  }

  .block-upsell .principal-product .products-grid .product-image {
    width: 100%;
  }

  .block-upsell .principal-product .products-grid .product-item .desconto-porcentagem {
    right: -10px;
  }
}

@media screen and (width <=449px) {
  .block-upsell .category-products .products-grid .owl-item .product-item {
    width: 100%;
  }

  .block-upsell .product-item .area-product {
    width: 100%;
  }

  .block-upsell input[type='checkbox']:not(:checked) + label,
  .block-upsell input[type='checkbox']:checked + label {
    line-height: 20px;
    max-width: 100%;
  }

  .block-upsell input[type='checkbox']:checked + label::after,
  .block-upsell input[type='checkbox']:not(:checked) + label::before {
    top: 0;
  }

  .buy-together-content {
    display: table;
  }

  .buy-together-content .title-buy-together-only {
    display: table;
    text-align: center;
    width: 100%;
  }

  .buy-together-content .title-buy-together-only span {
    margin: 0 auto;
  }

  .buy-together-content .btn-cart-buy-together-only {
    margin: 10px 0 0;
    width: 100%;
  }

  .buy-together-content .btn-cart-buy-together-only .button {
    width: 100%;
  }

  #modalParcela table td {
    padding: 5px !important;
  }

  .product-crowdfunding .block-info-bottom-img-product .block-left-bottom .product-detail .nav-pills .nav-link,
  .product-crowdfunding .block-info-bottom-img-product .block-left-bottom .product-detail .nav-pills .nav-link.active {
    padding-left: 5px;
    padding-right: 5px;
  }

  .product-crowdfunding .short-description p,
  .product-crowdfunding .block-description p,
  .product-crowdfunding .block-description span,
  .product-crowdfunding .block-description {
    font-size: var(--size-14);
  }
}

@media screen and (width <=400px) {
  #modalParcela table td {
    font-size: var(--size-12);
  }
}

@media screen and (width <=360px) {
  .box-reviews button#product-write-review {
    width: 100%;
  }

  #ModalReview button.button {
    width: 100%;
  }

  .produto-agrupado .block-title-product {
    font-size: var(--size-15);
  }

  .product-view .bundle .block-qty .add-to-box .add-to-cart .qty-wrapper .quantity .qty {
    width: 20px;
  }
}

/* QUEBRA SITE DESCRIÇÃO DO PRODUTO */
.pd-description img {
  max-width: 100%;
}

.pd-description .std {
  display: block;
  max-width: calc(1320px + 2rem);
  width: 100%;
}

/* FIM QUEBRA DO SITE DESCRIÇÃO DO PRODUTO */

/* FORMULARIOS NA PÁGINA DO PRODUTO */
.pccf .container {
  padding: 0;
}

.pccf label {
  flex: 0 0 100%;
  margin: 0;
  max-width: 100%;
  padding: 0;
}

.pccf .col-md-6 {
  flex: 0 0 100%;
  max-width: 100%;
  padding: 0;
}

.pccf .row.form-group {
  margin: 0;
}

.pccf .pccf .fs-upload-target {
  padding: 20px;
}

.pccf input,
.pccf select {
  border: 1px solid oklch(92.8% 0 0);
  box-shadow: 0 1px 2px 0 oklch(92.8% 0 0);
  font-size: var(--size-13);
  height: 35px;
  margin: 0;
  padding: 5px 15px;
  transition: all 0.3s;
  width: 100%;
}

.pccf textarea {
  border: 1px solid oklch(92.8% 0 0);
  box-shadow: 0 1px 2px 0 oklch(92.8% 0 0);
  font-size: var(--size-13);
  margin: 0;
  max-width: 100%;
  min-height: 150px;
  padding: 10px 15px;
  transition: all 0.3s;
  width: 100%;
}

.pccf input:focus,
.pccf select:focus,
.pccf textarea:focus {
  border: 1px solid oklch(92.2% 0 0);
  box-shadow: 0 0 2px 0 oklch(84.5% 0 0 / 60%);
  outline: none;
}

.pccf button {
  float: right;
  font-size: 14px;
  min-width: 150px;
  transition: all 0.3s;
}
/* FIM FORMULÁRIOS NA PÁGINA DO PRODUTO */

/* ALLOWED METHODS */
.allowed-methods {
  margin: 12px 0 8px;
}

.alw-methods-title {
  font-size: var(--size-13);
  font-weight: 600;
  line-height: 1;
  margin-bottom: 4px;
}

.alw_method {
  align-items: center;
  display: inline-flex;
  font-size: 75%;
  font-weight: 500;
  gap: 6px;
  line-height: 1;
  padding: 4px 12px;
  text-align: center;
  white-space: nowrap;
}

/* DIFFERENTIAL LABELS */
.differentials {
  clear: both;
  display: grid;
  margin-top: 12px;
  place-content: center;
  position: relative;
}

.differentials .owl-nav button {
  align-items: center;
  display: flex;
  height: 30px;
  justify-content: center;
  line-height: normal;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
}

.differentials .owl-nav button i {
  font-size: var(--size-16);
  font-weight: 500;
}

.differentials .owl-nav .owl-next {
  right: -35px;
}

.differentials .owl-nav .owl-prev {
  left: -35px;
}

.three_columns .differentials .owl-nav .owl-next {
  right: -25px;
}

.three_columns .differentials .owl-nav .owl-prev {
  left: -25px;
}

.three_columns .differentials {
  place-content: start;
}

@media (width <= 770px) {
  .differentials .owl-nav .owl-next,
  .three_columns .differentials .owl-nav .owl-next {
    right: 4px;
  }

  .differentials .owl-nav .owl-prev,
  .three_columns .differentials .owl-nav .owl-prev {
    left: 4px;
  }
}

.price-box.bundle.view + .price-box.bundle.view {
  display: none;
}

.l-product-grid {
  --_aside-max-size: 480px;

  display: grid;
  gap: 2rem;
  grid-template-columns: 1fr minmax(min-content, var(--_aside-max-size));

  @media (width < 1200px) {
    grid-template-columns: 7fr 5fr;
  }

  @media (width <= 991px) {
    grid-template-columns: 100%;
  }
}

.l-product-grid:has(.product-media--sidebar-top, .product-media--sidebar-sticky) {
  align-items: flex-start;
}

.l-product-grid:has(.product-media--sidebar-sticky) .c-product {
  position: sticky;
  top: 1.5rem;
}

.product-media {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: 75px 1fr;

  &[class*='--horizontal'] {
    grid-template-columns: 1fr;
  }

  @media (width < 1200px) {
    gap: 1rem;
    grid-template-columns: 50px 1fr;
  }

  @media (width < 991px) {
    grid-template-columns: 100%;
    grid-template-rows: 1fr min-content;
  }
}

.product-media--no-images {
  grid-template-columns: 1fr;

  @media (width < 1200px) {
    grid-template-columns: 1fr;
  }

  @media (width < 991px) {
    grid-template-columns: 100%;
    grid-template-rows: 1fr;
  }
}

.l-product-grid .o-media,
.product-media {
  height: 100%;
}

.product-media .product-media__thumbs-container {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;

  @media (width < 1200px) {
    gap: 0.5rem;
  }

  @media (width < 991px) {
    align-items: center;
    flex-direction: row;
    order: 99;
  }
}

.product-media .product-media__thumbs {
  max-height: 510px;

  @media (width < 1200px) {
    max-height: 360px;
  }

  @media (width < 991px) {
    max-height: unset;
    width: 100%;
  }
}

.product-media__thumb {
  border: 1px solid oklch(90.4% 0 0);
  border-radius: var(--media-thumb-radius, 0); /* .25rem */
  cursor: pointer;
  height: 75px;
  min-height: 75px;
  transition: opacity 0.2s ease-in-out;
  width: 100%;

  @media (width < 1200px) {
    height: 50px;
    min-height: 50px;
  }

  @media (width < 991px) {
    height: auto !important;
    max-width: 70px;
    min-height: unset;
  }
}

.product-media__thumb:hover {
  opacity: 0.8;
}

.product-media__thumb.active {
  border: 2px solid var(--thumb-active-color);
}

.product-media__image {
  border: 1px solid oklch(90.4% 0 0);
  border-radius: var(--media-image-radius, 0); /* .875rem */
  display: flex;
  height: 100%;
  max-height: var(--max-media-image-height, 80vh);
  overflow: hidden;

  @media (width < 991px) {
    aspect-ratio: 1/1;
    width: 100%;
  }
}

.product-media__image img {
  height: 100%;
  object-fit: cover;
  width: 100%;

  &.loading {
    filter: blur(4px);
  }

  @media (991px < width < 1200px) {
    object-fit: contain;
  }
}

.product-media--fit-contain .product-media__image img,
.product-media--fit-contain .product-media__main-image {
  object-fit: contain;
}

.product-media--fit-cover .product-media__image img,
.product-media--fit-cover .product-media__main-image {
  object-fit: cover;
}

.l-product-grid .c-product {
  border: 1px solid oklch(90.4% 0 0);
  border-radius: var(--product-radius, 0); /* .875rem */
  padding: 2.5rem 2rem 2rem;
  position: relative;
}

.l-product-grid .c-product .block-best-price {
  left: 2rem;
  margin: 0;
  top: 0;
  transform: translate(0, -50%);
  width: fit-content;
}

.l-product-grid .c-product .block-best-price-int {
  border-radius: var(--tag-radius, 0); /* .25rem */
  font-weight: 500;
  padding: 0.5rem 1rem;
}

.l-product-grid .c-product .area-form-multiseller {
  margin-block: 1rem;
}

.l-product-grid .c-product .area-form-multiseller .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.l-product-grid .c-product .area-form-multiseller .form-group {
  max-width: 100%;
  width: 100%;
}

.l-product-grid .c-product .area-form-multiseller .form-group:nth-child(1),
.l-product-grid .c-product .area-form-multiseller .form-group:nth-child(4),
.l-product-grid .c-product .area-form-multiseller .area-message {
  grid-column: span 2;
}

.area-form-multiseller:has(#area_mensagem_request:not(#area_mensagem_request:empty)) .form-group {
  display: none;
}

.l-product-grid .c-product__name {
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.009em;
  line-height: 1;
  margin-block-end: 1.25rem;
}

.l-product-grid .ratings {
  margin-block: 0.5rem;
}

.l-product-grid .c-product__extra-info {
  color: oklch(62% 0 0);
  display: block;
  letter-spacing: -0.009em;
  line-height: 1;
  margin-block-end: 0.5rem;
}

.l-product-grid .c-product__extra-info-name {
  color: oklch(45.5% 0.01 237);
}

.product-description-share {
  align-items: center;
  margin-block: 3rem;
}

.o-product-actions {
  align-items: center;
  border: 1px solid oklch(90.4% 0 0);
  border-radius: var(--product-radius, 0); /* .875rem */
  display: flex;
  gap: 1rem;
  justify-content: center;
  padding: 1.5rem 0.5rem;

  @media (width < 1200px) {
    flex-wrap: wrap;
  }
}

.o-product-actions .o-wishlist {
  align-items: center;
  background: transparent;
  border: 0;
  color: oklch(45.5% 0.01 237);
  display: flex;
  font-size: 1rem;
  font-weight: 500;
  gap: 0.5rem;
}

.o-product-actions .o-wishlist .soulcore_icons_wishlist {
  font-size: 1.5rem;
}

.o-product-actions .o-separator {
  align-self: stretch;
  border-left: 1px solid oklch(78.9% 0 0);
}

#download-pdfs-button {
  align-items: center;
  background: transparent;
  border: 0;
  color: oklch(45.5% 0.01 237);
  display: flex;
  font-size: 1rem;
  font-weight: 500;
  gap: 0.5rem;
}

#download-pdfs-button svg {
  max-height: 25px;
  width: 100%;
}

.downloads-product__socials-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.downloads-product__socials-list li a {
  align-items: center;
  border: 1px solid oklch(94.7% 0 0);
  color: oklch(30.1% 0 0);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  line-height: 1.2;
  max-width: 450px;
  min-height: 3.5rem;
  padding: 0.5rem 1rem;
}

.downloads-product__socials-list li svg {
  flex-shrink: 0;
  width: 1.5rem;
}

.o-product-separator {
  margin-block: 4rem;

  @media (width < 770px) {
    margin-block: 2rem;
  }
}

#advancedStructuredData {
  container-type: inline-size;
}

.o-product-details {
  border: 1px solid oklch(90.4% 0 0);
  border-radius: var(--product-radius, 0); /* .875rem */
  margin-block-end: 5rem;

  .l-quote & {
    border: 0;
  }

  @media (width < 770px) {
    margin-block-end: 3rem;
  }
}

.o-product-details__header {
  background-color: oklch(98.2% 0 0 / 50%);
  display: flex;
  justify-content: center;
  padding: 2rem;

  .l-quote & {
    background: transparent;
    justify-content: flex-start;
    margin-block-end: 2rem;
    padding: 0;

    @media (width <= 770px) {
      overflow: auto;

      &::-webkit-scrollbar {
        display: none;
      }
    }
  }

  @media (width < 770px) {
    padding: 2rem 1rem;
  }
}

.o-product-details__nav {
  background-color: oklch(100% 0 0);
  border: 1px solid oklch(90.4% 0 0);
  border-radius: var(--product-nav-radius, 0); /* .5rem */
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  padding: 0.125rem;

  .l-quote__content & {
    border: 0;
    flex-wrap: wrap;
    gap: 1.25rem;
    padding: 0;

    @media (width <= 770px) {
      flex-flow: row nowrap;
      text-wrap: nowrap;
    }
  }

  @media (width < 770px) {
    flex-direction: column;
    padding: 0.25rem;
    width: 100%;
  }
}

.o-product-details__nav-item {
  margin: 0;
}

.o-product-details__nav-button {
  background: none;
  border: none;
  border-radius: var(--product-nav-radius, 0); /* .5rem */
  color: oklch(67.3% 0 0);
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.75rem 2rem;
  transition: all 0.3s ease;

  .l-quote & {
    background: transparent;
    border-bottom: 4px solid transparent;
    border-radius: 0;
    color: hsl(0 0% 18%);
    padding: 0;
  }

  @media (width < 770px) {
    padding: 1rem 2rem;
    width: 100%;
  }
}

.o-product-details__nav-button:hover {
  background-color: oklch(97% 0 0);
  color: oklch(32.1% 0 0);

  .l-quote & {
    background: transparent;
    color: hsl(0 0% 18%);
    opacity: 0.9;
  }
}

.o-product-details__nav-button.active {
  background-color: oklch(36.8% 0 0);
  box-shadow: 0 4px 4px 0 oklch(0% 0 0 / 25%);
  color: oklch(100% 0 0);

  .l-quote & {
    background: transparent;
    border-color: var(--asd-tag-color, var(--button-buy-bg-color));
    box-shadow: none;
    color: var(--asd-tag-color, var(--button-buy-bg-color));
  }

  @media (width < 770px) {
    box-shadow: none;
  }
}

.o-product-details__body {
  padding: 3rem 5rem;

  .l-quote & {
    padding: 0;
  }

  @media (width < 991px) {
    padding: 2rem 1rem;
  }
}

.o-product-details__content {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transform: translateY(20px);
  transition: transform 0.3s ease;
  visibility: hidden;
  width: 100%;
  z-index: 1;
}

.o-product-details__content.active {
  opacity: 1;
  position: relative;
  transform: translateY(0);
  visibility: visible;
  z-index: 2;
}

.o-product-details__content .pd-desc__title {
  margin-block-end: 1rem;
}

/* Abas do ASD viram acordeão no mobile; o template de orçamento mantém a linha de abas rolável */
.o-product-details__toggle {
  display: none;
}

@media (width < 770px) {
  .l-asd:not(.l-quote) .o-product-details--accordion {
    .o-product-details__header,
    .o-product-details__title {
      display: none;
    }

    .o-product-details__body {
      padding: 0;
    }

    .o-product-details__content {
      border-block-end: 1px solid oklch(90.4% 0 0);
      opacity: 1;
      position: relative;
      transform: none;
      visibility: visible;

      &:last-child {
        border-block-end: 0;
      }
    }

    .o-product-details__toggle {
      align-items: center;
      background: none;
      border: 0;
      color: oklch(32.1% 0 0);
      cursor: pointer;
      display: flex;
      font-size: 1rem;
      font-weight: 600;
      gap: 1rem;
      justify-content: space-between;
      padding: 1.25rem 1rem;
      text-align: start;
      width: 100%;

      &::after {
        border-block-end: 2px solid currentcolor;
        border-inline-end: 2px solid currentcolor;
        content: '';
        flex-shrink: 0;
        height: 0.5rem;
        transform: rotate(45deg);
        transition: transform 0.2s ease;
        width: 0.5rem;
      }
    }

    .o-product-details__content.is-open > .o-product-details__toggle::after {
      transform: rotate(-135deg);
    }

    .o-product-details__panel {
      padding: 0 1rem 1.5rem;
    }

    .o-product-details__content:not(.is-open) > .o-product-details__panel {
      display: none;
    }
  }
}

[data-tab-content='product-additional'] li {
  border-bottom: 1px solid oklch(90.4% 0 0);
  font-size: 0.875rem;
  padding: 0.5rem;
}

[data-tab-content='product-additional'] li:nth-child(odd) {
  background-color: oklch(98.2% 0 0 / 50%);
}

[data-tab-content='product-additional'] li:last-child {
  border-bottom: 0;
}

[data-tab-content='product-reviews'] .box-reviews .review-content {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
}

[data-tab-content='product-reviews'] .box-reviews .review-content h6 {
  font-size: var(--fs-0);
}

[data-tab-content='product-reviews'] .box-reviews .review-content .review-detail {
  border: 0;
  height: auto;
  padding: 0;
  width: auto;
}

[data-tab-content='product-reviews'] .box-reviews .review-content .review-detail p {
  color: oklch(62% 0 0);
  font-size: 0.875rem;
}

[data-tab-content='product-reviews'] .box-reviews .review-content .rating-vote {
  margin-top: 1rem;
  order: 99;
}

.product-media__button {
  border-radius: 50%;
  box-shadow: 0 0 8px 0 oklch(0% 0 0 / 15%);
  cursor: pointer;
  display: grid;
  height: 42px;
  margin-inline: auto;
  place-content: center;
  width: 42px;

  @media (width < 991px) {
    aspect-ratio: 1 / 1;
    height: 32px;
    width: 32px;
  }
}

.product-media__button[aria-disabled='true'] {
  cursor: auto;
  opacity: 0.4;
}

.product-media__button svg {
  width: 1rem;

  @media (width < 991px) {
    rotate: -90deg;
  }
}

.l-product-grid .c-product .add-to-box .add-to-cart {
  border: 0;
}

.l-product-grid .c-product .block-shipping-wish {
  border: 0;
}

.l-product-grid .c-product .block-shipping-estimate {
  border: 0;
  margin: 0;
  max-width: 100%;
  padding: 0;
}

.c-lightbox {
  background-color: oklch(0% 0 0 / 90%);
  display: none;
  height: 100%;
  left: 0;
  place-content: center;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
}

.c-lightbox__content {
  align-items: center;
  display: flex;
  height: auto;
  justify-content: center;
  margin: auto;
  position: relative;
  width: fit-content;
}

.c-lightbox__image-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 90vw;
  position: relative;
}

.c-lightbox__image {
  height: 95vh;
  object-fit: contain;
}

.c-lightbox__nav {
  display: flex;
  justify-content: space-between;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}

.c-lightbox__nav-btn {
  background: oklch(100% 0 0 / 20%);
  border: none;
  border-radius: 0.25rem;
  color: oklch(100% 0 0);
  cursor: pointer;
  display: grid;
  font-size: 2rem;
  height: 3rem;
  padding: 0.5rem;
  place-content: center;
  pointer-events: all;
  position: relative;
  transition: background 0.3s;
  width: 3rem;
}

.c-lightbox__nav-btn--prev {
  left: -4rem;

  @media (width <= 480px) {
    left: -2rem;
  }
}

.c-lightbox__nav-btn--next {
  right: -4rem;

  @media (width <= 480px) {
    right: -2rem;
  }
}

.c-lightbox__nav-btn:hover {
  background: oklch(100% 0 0 / 40%);
}

.c-lightbox__nav-btn:disabled {
  cursor: not-allowed;
  opacity: 0.3;
}

@media (width <= 991px) {
  .c-lightbox__content {
    flex-direction: column-reverse;
  }

  .c-lightbox__image {
    height: auto;
    max-height: 85vh;
    width: auto;
  }

  .c-lightbox__image-container {
    flex-direction: column-reverse;
  }

  .c-lightbox__nav {
    gap: 0.5rem;
    justify-content: flex-end;
    position: static;
    transform: none;
    width: 100%;
  }

  .c-lightbox__nav-btn {
    font-size: 1.25rem;
    height: 2rem;
    width: 2rem;
  }

  .c-lightbox__nav-btn--prev,
  .c-lightbox__nav-btn--next {
    left: auto;
    position: static;
    right: auto;
  }
}

/* ASD */

.main-container:has(.l-asd) {
  padding-block-end: 0;
}

@scope (.l-asd) {
  .c-product .vendor-logo {
    margin-block-end: 0;
    margin-top: 1rem;
    width: max-content;
  }

  .extra-info .area-vendor-link {
    border: none;
    bottom: 1rem;
    color: oklch(62.7% 0 0);
    font-size: 0.75rem;
    font-weight: 500;
    margin: 0;
    padding: 0;
  }

  .extra-info .area-vendor-link a {
    font-size: 0.75rem;
    font-weight: 600;
  }

  :scope.product-view .btn-make-offer {
    max-width: unset;
    min-height: 44px;
    width: 100%;
  }

  :scope.product-view .area-vendor-link .color-minprice {
    background: transparent;
    color: hsl(0 0% 40%);
    font-size: 0.75rem;
    line-height: 1.2;
    max-width: 250px;
    text-align: left !important;
  }

  .vendor-logo .vendor__image img {
    max-width: 60px;
  }

  .l-product-grid .o-media .product-media {
    gap: 2.5rem;

    @media (width <= 580px) {
      gap: 1rem;
    }
  }

  .product-media__image {
    max-height: min(var(--max-media-image-height, 80vh), 1200px);
    position: sticky !important;
    top: 30px;
  }

  .product-media__image img {
    object-fit: contain;
  }

  .l-product-grid {
    --_aside-max-size: 487px;
    --col-gap: 2.5rem;

    gap: var(--col-gap);
    grid-template-columns: 1fr minmax(min-content, var(--_aside-max-size));

    @media (width < 1200px) {
      grid-template-columns: 7fr 5fr;
    }

    @media (width <= 991px) {
      grid-template-columns: 100%;
    }
  }

  .l-product-grid .ratings {
    margin: 0;

    @media (width <= 580px) {
      margin-block-end: 0.25rem;
    }
  }

  .l-product-grid .c-product:has(.area-lowest-price) {
    padding-block: 5rem 4rem;

    @media (width <= 580px) {
      padding: 1.5rem 1rem 2.5rem;
    }
  }

  .product-multiseller .l-product-grid .c-product:not(.c-product:has(.area-lowest-price)) .asd-price-separator {
    display: none;
  }

  .l-product-grid .c-product .block-best-price {
    top: 2rem;
    transform: none;

    @media (width <= 580px) {
      left: 1rem;
      top: 0;
      transform: translateY(-50%);
    }
  }

  .l-product-grid .c-product .block-best-price-int {
    align-items: center;
    background: oklch(95.5% 0.03 175);
    border: 1px solid oklch(70.4% 0.11 174);
    border-radius: var(--tag-radius, 0);
    color: oklch(50.1% 0.1 171);
    display: flex;
    font-size: 0.75rem;
    font-weight: 600;
    gap: 0.25rem;
    padding: 0.25rem 0.75rem;
  }

  .l-product-grid .c-product .block-best-price-int i {
    display: none;
  }

  .l-product-grid .c-product .block-best-price-int::before {
    background-color: oklch(63.5% 0.13 166);
    border-radius: 100vw;
    content: '';
    display: inline-block;
    height: 0.75rem;
    width: 0.75rem;
  }

  .l-product-grid .c-product__name {
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1.1;
    margin-block-end: 0.75rem;
  }

  .c-product__extra-infos {
    align-items: center;
    display: flex;
    gap: 0.25rem;
  }

  .l-product-grid .c-product__extra-info,
  .l-product-grid .c-product__extra-info-name {
    color: oklch(62.4% 0 0);
    font-size: 0.75rem;
    font-weight: 500;
    margin-block-end: 0;
  }

  .l-product-grid .c-product__extra-info {
    align-items: center;
    display: flex;
  }

  .c-product__extra-info + .c-product__extra-info::before {
    background-color: oklch(62.4% 0 0);
    border-radius: 50%;
    content: '';
    display: inline-block;
    height: 3px;
    margin-inline-end: 0.25rem;
    width: 3px;
  }

  .asd-price-separator {
    border-top: 1px solid oklch(90% 0 0);
    margin-block: 1.5rem;
  }

  .block-right-two .area-lowest-price .block-price {
    margin-block-end: 0.75rem;
  }

  .c-product .c-price.c-price--regular .c-price__label {
    display: none;
  }

  .c-product .c-price-box .c-price.c-price--regular:has(.c-price__discount-percent--calc) {
    margin-block-end: 0.5rem;
  }

  .c-product .c-price-box .c-price.c-price--regular .c-price__value {
    color: oklch(76.5% 0 0);
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: -0.009em;
    line-height: 1;
  }

  .c-price-box .c-price .c-price__discount-infos {
    color: var(--discount-color, oklch(64.1% 0 0));
    font-size: 0.75rem;
    font-weight: 600;
  }

  .c-price-box {
    width: 100%;
  }

  .c-free-ship--asd {
    align-items: center;
    background-color: oklch(97% 0 0);
    border: 1px solid oklch(90% 0 0);
    border-radius: var(--asd-free-ship-radius, 0);
    color: oklch(62.4% 0 0);
    display: flex;
    flex-wrap: wrap;
    font-size: 0.75rem;
    font-weight: 500;
    gap: 0.125rem 0.25rem;
    letter-spacing: -0.002em;
    line-height: 1;
    margin-block-start: 0.5rem;
    padding: 0.75rem 1rem;
  }

  .c-free-ship__icon {
    align-items: center;
    display: flex;
    gap: 0.25rem;
  }

  .c-free-ship--asd strong {
    color: oklch(36.1% 0 0);
  }

  .c-free-ship--asd .o-icon {
    --_icon-size: 1.125rem;

    color: oklch(63.5% 0.13 166);
  }

  .c-free-ship--asd:not(.c-free-ship--store-pickup) span {
    text-transform: lowercase;
  }

  .c-free-ship--asd .o-free-ship {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: none;
  }

  .c-free-ship--asd .strong {
    color: oklch(36.1% 0 0);
    font-weight: 700;
  }

  .c-product .c-price-box .c-price.c-price--regular .c-price__discount-percent {
    align-items: center;
    background-color: oklch(95.5% 0.03 175);
    border: 1px solid oklch(70.4% 0.11 174);
    border-radius: var(--asd-discount-percent-radius, 0);
    display: inline-flex;
    gap: 0.5rem;
    min-height: 28px;
    padding-right: 0.5rem;
  }

  .container.list-vendor .area-product-tab {
    padding: 0;
  }

  .block-right-two .calc-shipping {
    margin-block-start: 1.5rem;
  }

  .block-right-two #shipping-results {
    margin-block-start: 0.75rem;
  }

  .button--shipping-options,
  .link-calculate {
    background: none;
    color: var(--blue);
    font-size: 0.875rem;
    padding: 0;
  }

  .link-calculate {
    font-weight: 600;
  }

  .link-calculate:hover {
    color: var(--blue);
  }

  .block-right-two .area-lowest-price .extra-info .area-vendor-link {
    bottom: 1rem;
    padding: 0;
    position: absolute;
    width: auto;
  }

  .c-product .c-price-box .c-price.c-price--regular .c-price__discount-percent--calc .discount-percent__percentage {
    align-items: center;
    align-self: stretch;
    background-color: oklch(63.5% 0.13 166);
    border: 0;
    border-radius: var(--asd-discount-percent-radius, 0);
    border-right: 1px solid oklch(70.4% 0.11 174);
    color: oklch(100% 0 0);
    display: flex;
    font-size: 0.625rem;
    font-weight: 600;
    gap: 0.25rem;
  }

  .c-product .c-price-box .c-price.c-price--regular .c-price__discount-percent--calc .discount-percent__value,
  .c-product .c-price-box .c-price.c-price--regular .c-price__discount-percent--calc .discount-percent__value .price {
    border: 0;
    color: oklch(50.1% 0.1 171);
    font-size: 0.625rem;
    font-weight: 600;
    letter-spacing: -0.009em;
    line-height: 1;
    padding: 0;
  }

  .block-right-two .qty-wrapper .qtd-arrows,
  :scope.product-view .add-to-box .add-to-cart .qty-wrapper .qtd-arrows {
    width: 41px;
  }

  .block-right-two .calculate-shipping-sellers-int .qty-wrapper .qty {
    font-size: 1rem;
    font-weight: bold;
  }

  :scope.product-view .add-to-box .add-to-cart .qty-wrapper label {
    display: none;
  }

  :scope.product-view .add-to-box .add-to-cart .qty-wrapper .qtd-arrows {
    height: 40px;
  }

  :scope.product-view .add-to-box .add-to-cart .add-to-cart-buttons button {
    height: 42px;
  }

  :scope.product-view .add-to-box .qty-wrapper .qty {
    font-size: 1rem;
    font-weight: bold;
    height: 40px;
  }

  .block-right-two .calculate-shipping-sellers-int .qty-wrapper .qtd-arrows i,
  :scope.product-view .add-to-box .add-to-cart .qty-wrapper .qtd-arrows i {
    background: oklch(97% 0 0);
    border: 1px solid oklch(90% 0 0);
    border-radius: var(--asd-qty-radius, 0);
    font-size: 0.875rem;
    height: 28px;
    place-self: center center;
    width: 28px;
  }

  .block-right-two .calculate-shipping-sellers-int .qty-wrapper .qtd-arrows.less:has(+ .min) i {
    background-color: oklch(100% 0 0);
    border-color: oklch(90% 0 0);
    color: oklch(78.1% 0 0);
  }

  .container.list-vendor .area-product-tab .add-to-cart-buttons button.button.btn-cart {
    min-height: calc(42rem / 16);
  }

  .block-right-two .calculate-shipping-sellers-int .title-multiseller {
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: -0.009em;
    line-height: 1;
  }

  .block-right-two .calculate-shipping-sellers-int .input-multiseller .input-group {
    gap: 1.25rem;
    margin-block-start: 0.5rem;

    @media (width < 580px) {
      gap: 0;
    }
  }

  .block-right-two .calculate-shipping-sellers-int .input-multiseller .input-group input {
    border: 1px solid oklch(90% 0 0);
    min-height: 44px;
  }

  .block-right-two .calculate-shipping-sellers-int .input-multiseller .input-group button {
    background: oklch(97% 0 0);
    border: 1px solid oklch(85.3% 0 0);
    color: oklch(46.5% 0 0);
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1;
    min-height: 44px;
    padding: 0.5rem 1.25rem;
  }

  .c-price-box .c-price {
    align-items: baseline;
    flex-direction: row;
    gap: 0.25rem;
  }

  .c-price-box .c-price .c-price__symbol {
    color: oklch(80.5% 0 0);
    font-size: inherit;
    font-weight: 400;
    letter-spacing: 0.001em;
  }

  .container.list-vendor .block-full-multiseller .c-buy-box .qty-multiseller,
  .product-view .qty-wrapper .qty {
    line-height: 1;
  }

  .container.list-vendor .block-full-multiseller .qty-wrapper {
    margin: 0 !important;
  }

  .c-product__section {
    padding-block: 3rem;
    padding-inline: 0;
  }

  .c-product__section--odd {
    background-color: oklch(98.5% 0 0);
  }

  .c-product__section-tag {
    color: var(--asd-tag-color, var(--button-buy-bg-color));
    display: block;
    font-size: 0.875rem;
    font-weight: 800;
    letter-spacing: -0.009em;
    line-height: 1;
    margin-block-end: 1rem;
    text-transform: uppercase;
  }

  .c-product__section-title {
    color: oklch(32.1% 0 0);
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 100%;
    margin-block-end: 0.75rem;
  }

  .c-product__section-description {
    color: oklch(32.1% 0 0);
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: -0.009em;
    line-height: 1.5;
    margin-block-end: 0;
  }

  .c-product__section-content {
    display: grid;
    gap: 2rem;
    grid-template-columns: repeat(12, 1fr);
    margin-block-start: 2rem;

    .o-product-details__body & {
      margin-block-start: 0;
    }

    &:not(* + &) {
      margin-block-start: 0;
    }

    @media (width <= 550px) {
      gap: 2rem 0;
      grid-template-columns: 1fr;
    }
  }

  .c-product__section-content > * {
    grid-column: span 12;
    min-width: 0;
  }

  .l-asd-cards {
    --grid-layout-gap: 1.5rem;
    --grid-column-count: var(--_columns);
    --grid-item--min-width: 260px;

    --gap-count: calc(var(--grid-column-count) - 1);
    --total-gap-width: calc(var(--gap-count) * var(--grid-layout-gap));
    --grid-item--max-width: calc((100% - var(--total-gap-width)) / var(--grid-column-count));

    display: grid;
    grid-gap: var(--grid-layout-gap);
    grid-template-columns: repeat(
      auto-fill,
      minmax(max(var(--grid-item--min-width), var(--grid-item--max-width)), 1fr)
    );

    .l-product-grid--quote & {
      --grid-item--min-width: 220px;
      --grid-layout-gap: 1rem;
    }
  }

  .c-asd-card {
    background-color: oklch(100% 0 0);
    border: 1px solid oklch(90% 0 0);
    border-radius: var(--asd-card-radius);
    padding: 2rem 2.25rem;
    transition:
      transform 0.125s ease-in-out,
      border-color 0.165s ease-in-out;

    .card-text-center & {
      text-align: center;
    }

    .card-text-right & {
      text-align: right;
    }

    .l-quote & {
      padding: 1.25rem;
    }
  }

  .c-asd-card:hover {
    border-color: var(--asd-card-icon-color, var(--button-buy-bg-color));
    transform: translateY(-0.25rem);
  }

  .c-asd-card__header {
    align-items: center;
    display: flex;
    gap: 0.5rem;
    margin-block-end: 1.25rem;

    .card-text-center & {
      justify-content: center;
    }

    .card-text-right & {
      justify-content: flex-end;
    }

    .card-icon-big & {
      flex-direction: column;
    }
  }

  .c-asd-card__icon:has(svg) {
    align-items: center;
    border: 1px solid oklch(87.7% 0 0);
    border-radius: var(--asd-card-icon-radius);
    color: var(--asd-card-icon-color, var(--button-buy-bg-color));
    display: flex;
    flex-shrink: 0;
    height: 2.5rem;
    justify-content: center;
    width: 2.5rem;

    .card-icon-big & {
      border: none;
      height: 4rem;
      width: 4rem;
    }
  }

  .c-asd-card__icon:has(svg) svg {
    fill: currentcolor;
    height: 1.5rem;
    width: 1.5rem;

    .card-icon-big & {
      height: 2.5rem;
      width: 2.5rem;
    }
  }

  .c-asd-card__title {
    color: oklch(30.1% 0 0);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 100%;
  }

  .c-asd-card__description {
    color: oklch(30.1% 0 0);
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: -0.009em;
    line-height: 1.7;
    margin-block-end: 0;
  }

  .c-asd-list {
    counter-reset: item-list;
  }

  .c-asd-list__item {
    align-items: flex-start;
    border-bottom: 1px solid oklch(90% 0 0);
    counter-increment: item-list;
    display: flex;
    gap: 2.5rem;
    margin-block-end: 2rem;
    padding-block-end: 2rem;

    &:last-child {
      border-bottom: 0;
      margin-block-end: 0;
      padding-block-end: 0;
    }

    @media (width <= 550px) {
      gap: 1rem;
    }
  }

  .c-asd-list__item::before {
    color: var(--asd-tag-color, var(--button-buy-bg-color));
    content: counter(item-list, decimal-leading-zero);
    font-size: 2.5rem;
    font-weight: 200;
    line-height: 1;

    @media (width <= 550px) {
      font-size: 1.5rem;
    }
  }

  .c-asd-list__header {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    margin-block-end: 1rem;

    @media (width <= 550px) {
      align-items: flex-start;
      flex-direction: column-reverse;
    }
  }

  .c-asd-list__title {
    color: oklch(30.1% 0 0);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1;
  }

  .c-asd-list__tag {
    background-color: var(--asd-tag-bg, hsl(from var(--asd-tag-bg-color, var(--button-buy-bg-color)) h s calc(l + 35)));
    border: 1px solid var(--asd-tag-color, var(--button-buy-bg-color));
    border-radius: var(--asd-tag-radius);
    color: var(--asd-tag-color, var(--button-buy-bg-color));
    display: block;
    font-size: 0.625rem;
    font-weight: 600;
    letter-spacing: -0.009em;
    line-height: 1;
    padding: 0.325rem 0.75rem;
  }

  .c-asd-list__description {
    color: oklch(30.1% 0 0);
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: -0.009em;
    line-height: 1.7;
    margin-block-end: 0;
  }

  .l-asd-solutions {
    display: grid;
    gap: 2rem;
    grid-template-columns: repeat(auto-fill, minmax(max(260px, calc(50% - 1rem)), 1fr));

    .l-quote & {
      gap: 1rem;
      grid-template-columns: 1fr;
    }
  }

  .c-asd-solution {
    border: 1px solid oklch(87.7% 0 0);
    border-radius: var(--asd-card-radius);
    display: grid;
    overflow: hidden;
  }

  .c-asd-solution__content {
    padding: 1.25rem 2rem;

    &[class*='--problem'] {
      background-color: oklch(97.7% 0 0);
    }
  }

  .c-asd-solution__tag {
    border: 1px solid currentcolor;
    border-radius: var(--asd-tag-radius);
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    margin-block-end: 1rem;
    padding: 0.25rem 0.5rem;
    width: fit-content;

    &[class*='--problem'] {
      background-color: oklch(85.8% 0.08 18.8);
      color: oklch(53.6% 0.16 24);
    }

    &[class*='--solution'] {
      background-color: oklch(95.5% 0.03 175);
      color: oklch(70.4% 0.11 174);
    }
  }

  .c-asd-solution__title {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1;
    margin-block-end: 1rem;
  }

  .c-asd-solution__description {
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: -0.009em;
    line-height: 1.7;
    margin-block-end: 0;
  }

  .l-asd-collum {
    grid-column: span var(--_span-cols);

    @media (width <= 770px) {
      grid-column: span 12;
    }
  }

  .c-asd-product-attribute__value {
    color: oklch(32.1% 0 0);
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: -0.009em;
    line-height: 1.5;
    margin-block-end: 0;
  }

  .c-asd-faq__item {
    border-bottom: 1px solid oklch(90% 0 0);
    display: flex;
    gap: 1.5rem;
    margin-block-end: 1.5rem;
    padding-block-end: 1.5rem;

    @media (width <= 550px) {
      flex-direction: column;
      gap: 1rem;
    }
  }

  .c-asd-faq__item--last {
    border-bottom: 0;
    margin-block-end: 0;
    padding-block-end: 0;
  }

  .c-asd-faq__icon {
    flex-shrink: 0;
  }

  .c-asd-faq__details {
    align-self: center;
    display: grid;
    flex: 1;
    grid-template-rows: auto 0fr;
    transition: grid-template-rows 0.25s linear;

    @media (width <= 550px) {
      align-self: flex-start;
    }
  }

  .c-asd-faq__details div {
    overflow: hidden;
  }

  .c-asd-faq__details[open] {
    grid-template-rows: auto 1fr;
  }

  .c-asd-faq__icon:has(svg) {
    align-items: center;
    border: 1px solid oklch(87.7% 0 0);
    border-radius: var(--asd-faq-icon-radius);
    color: var(--asd-faq-icon-color, var(--button-buy-bg-color));
    display: flex;
    flex-basis: 3rem;
    height: 3rem;
    justify-content: center;
    width: 3rem;
  }

  .c-asd-faq__icon:has(svg) svg {
    fill: currentcolor;
    height: 1.5rem;
    width: 1.5rem;
  }

  .c-asd-faq__title {
    color: oklch(32.1% 0 0);
    cursor: pointer;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1;
    margin: 0;
  }

  .c-asd-faq__description {
    color: oklch(32.1% 0 0);
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: -0.009em;
    line-height: 1.7;
    margin-block: 0;
    padding-block-start: 1rem;
  }

  .c-asd-faq__details-icon {
    align-self: center;
    color: oklch(56.3% 0 0);
    cursor: pointer;
    margin-left: auto;
    transition: transform 0.25s linear;

    @media (width <= 550px) {
      display: none;
    }
  }

  .c-asd-faq__details[open] ~ .c-asd-faq__details-icon {
    transform: rotate(180deg);
  }

  .l-asd-faq__categories {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-block-end: 2rem;
  }

  .c-asd-faq__category-filter {
    align-items: center;
    background: transparent;
    border: 1px solid currentcolor;
    color: oklch(50.1% 0 0);
    display: flex;
    font-size: 0.875rem;
    font-weight: 500;
    gap: 0.25rem;
    line-height: 1;
    padding: 0.5rem 1rem;
    transition: background-color 0.25s linear;
  }

  .c-asd-faq__category-filter--active {
    background-color: var(--faq-filter-bg, var(--button-buy-bg-color));
    border-color: hsl(from var(--faq-filter-color, var(--button-buy-bg-color)) h s calc(l - 5));
    color: var(--faq-filter-color, oklch(100% 0 0));
  }

  .o-product-details__header {
    border-bottom: 1px solid oklch(90.4% 0 0);
    padding: 1.5rem;
  }

  .o-product-details__nav-button {
    padding: 0.5rem 1.5rem;
  }

  .o-product-details__body {
    padding: 2rem;
  }

  .o-product-details__title {
    color: oklch(32.1% 0 0);
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1;
    margin-block-end: 2rem;
  }

  .c-asd-video__frame iframe {
    height: min(55vh, 500px);
  }

  .l-asd-download {
    display: flex;
    justify-content: flex-start;
  }

  .l-asd-download--center {
    justify-content: center;
  }

  .l-asd-download--end {
    justify-content: flex-end;
  }

  .c-asd-download,
  .c-asd-download:hover {
    text-decoration: none;
  }

  .c-asd-download {
    display: inline-flex;
    max-width: 100%;
  }

  .c-asd-download--flex {
    display: flex;
    flex: 1 1 auto;
  }

  .c-asd-download__body {
    align-items: center;
    display: inline-flex;
    gap: 0.5rem;
    max-width: 100%;
  }

  .c-asd-download--flex .c-asd-download__body {
    display: flex;
    flex: 1 1 auto;
  }

  .l-asd-download--center .c-asd-download--flex .c-asd-download__body {
    justify-content: center;
  }

  .l-asd-download--end .c-asd-download--flex .c-asd-download__body {
    justify-content: flex-end;
  }

  .c-asd-download--button .c-asd-download__body {
    border: 0;
    cursor: pointer;
    font-weight: 600;
    line-height: 1.2;
    min-height: 44px;
    padding: 0.75rem 1.5rem;
  }

  .c-asd-download--button:hover .c-asd-download__body {
    filter: brightness(0.92);
  }

  .c-asd-download--link:hover .c-asd-download__text {
    text-decoration: underline;
  }

  .c-asd-download--image {
    display: inline-block;
  }

  .c-asd-download--image img {
    display: block;
    height: auto;
    max-width: 100%;
  }

  .c-asd-download__icon {
    --_icon-size: 1em;

    flex-shrink: 0;
  }

  .c-asd-download__meta {
    font-size: 0.875em;
    font-weight: 400;
    opacity: 0.75;
    white-space: nowrap;
  }

  .l-asd-product-list .category-products {
    padding: 0;
  }

  .l-asd-highlights {
    --grid-layout-gap: 1rem;
    --grid-column-count: var(--_columns);
    --grid-item--min-width: 200px;

    --gap-count: calc(var(--grid-column-count) - 1);
    --total-gap-width: calc(var(--gap-count) * var(--grid-layout-gap));
    --grid-item--max-width: calc((100% - var(--total-gap-width)) / var(--grid-column-count));
  }

  .c-asd-highlights {
    display: grid;
    gap: var(--grid-layout-gap);
    grid-template-columns: repeat(
      auto-fill,
      minmax(max(var(--grid-item--min-width), var(--grid-item--max-width)), 1fr)
    );
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .c-asd-highlight {
    align-items: center;
    background-color: oklch(100% 0 0);
    border: 1px solid oklch(90% 0 0);
    border-radius: var(--asd-card-radius);
    display: flex;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
  }

  .c-asd-highlight__icon {
    align-items: center;
    color: var(--asd-card-icon-color, var(--button-buy-bg-color));
    display: flex;
    flex-shrink: 0;
    height: 2rem;
    justify-content: center;
    width: 2rem;
  }

  .c-asd-highlight__icon svg {
    fill: currentcolor;
    height: 1.5rem;
    width: 1.5rem;
  }

  .c-asd-highlight__text {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
  }

  .c-asd-highlight__label {
    color: oklch(46.2% 0 265);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: -0.009em;
    line-height: 1.2;
    text-transform: uppercase;
  }

  .c-asd-highlight__value {
    color: oklch(30.1% 0 0);
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1.3;
    overflow-wrap: anywhere;
  }

  .l-asd-compare {
    --_accent: var(--button-buy-bg-color, oklch(30.1% 0 0));
    --_accent-soft: color-mix(in srgb, var(--_accent) 8%, oklch(100% 0 0));
    --_line: oklch(92.2% 0 0);
    --_ink: oklch(21% 0 0);
    --_muted: oklch(55.6% 0 0);
    --_label-col: minmax(11rem, 1.15fr);
    --_value-col: minmax(9.5rem, 1fr);
  }

  .c-asd-compare__picker {
    display: none;
  }

  .c-asd-compare__scroller {
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding-block-end: 0.25rem;
  }

  .c-asd-compare {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: calc(11rem + var(--_products) * 9.5rem);
  }

  .c-asd-compare__row {
    display: grid;
    grid-template-columns: var(--_label-col) repeat(var(--_products), var(--_value-col));
  }

  .c-asd-compare__corner {
    background-color: oklch(100% 0 0);
    inset-inline-start: 0;
    position: sticky;
    z-index: 1;
  }

  .c-asd-compare__product {
    display: flex;
    padding-inline: 0.375rem;
  }

  .c-asd-compare__card {
    background-color: oklch(100% 0 0);
    border: 1px solid var(--_line);
    border-radius: var(--asd-card-radius);
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.625rem;
    min-width: 0;
    padding: 0.75rem;
    position: relative;
    transition:
      border-color 0.2s ease,
      box-shadow 0.2s ease;
  }

  .c-asd-compare__product:not(.c-asd-compare__product--current) .c-asd-compare__card:hover {
    border-color: oklch(86.9% 0 0);
    box-shadow: 0 12px 24px -16px oklch(0% 0 0 / 30%);
  }

  .c-asd-compare__product--current .c-asd-compare__card {
    border-color: var(--_accent);
    box-shadow: inset 0 0 0 1px var(--_accent);
  }

  .c-asd-compare__media {
    align-items: center;
    aspect-ratio: 1;
    background-color: oklch(97.5% 0 0);
    border-radius: var(--asd-card-radius);
    display: flex;
    justify-content: center;
    max-height: 14rem;
    overflow: hidden;
    padding: 0.75rem;
  }

  .c-asd-compare__image {
    display: block;
    height: 100%;
    mix-blend-mode: multiply;
    object-fit: contain;
    transition: transform 0.3s ease;
    width: 100%;
  }

  a.c-asd-compare__media:hover .c-asd-compare__image {
    transform: scale(1.04);
  }

  .c-asd-compare__tag {
    align-items: center;
    background-color: oklch(100% 0 0);
    border-radius: var(--asd-tag-radius, 0);
    box-shadow: 0 1px 3px oklch(0% 0 0 / 10%);
    color: var(--asd-tag-color, var(--_accent));
    display: inline-flex;
    font-size: 0.6875rem;
    font-weight: 700;
    gap: 0.25rem;
    inset-block-start: 1.25rem;
    inset-inline-start: 1.25rem;
    letter-spacing: 0.02em;
    line-height: 1;
    padding: 0.3125rem 0.5rem;
    position: absolute;
    text-transform: uppercase;
  }

  .c-asd-compare__tag svg {
    flex-shrink: 0;
    height: 0.75rem;
    width: 0.75rem;
  }

  .c-asd-compare__tag--compared {
    color: var(--_muted);
    display: none;
  }

  .c-asd-compare__name {
    -webkit-box-orient: vertical;
    color: var(--_ink);
    display: -webkit-box;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    -webkit-line-clamp: 3;
    line-height: 1.35;
    overflow: hidden;
  }

  a.c-asd-compare__name,
  a.c-asd-compare__name:hover {
    color: var(--_ink);
    text-decoration: none;
  }

  a.c-asd-compare__name:hover {
    text-decoration: underline;
  }

  .c-asd-compare__button,
  .c-asd-compare__button:hover {
    text-decoration: none;
  }

  .c-asd-compare__button {
    align-items: center;
    border: 1px solid oklch(87% 0 0);
    border-radius: var(--asd-card-radius);
    color: var(--_ink);
    display: flex;
    font-size: 0.8125rem;
    font-weight: 600;
    justify-content: center;
    margin-block-start: auto;
    min-height: 40px;
    padding: 0.5rem 1rem;
    transition:
      border-color 0.2s ease,
      background-color 0.2s ease;
  }

  .c-asd-compare__button:hover {
    background-color: oklch(97.5% 0 0);
    border-color: var(--_ink);
    color: var(--_ink);
  }

  :is(.c-asd-compare__button, .c-asd-compare__name, .c-asd-compare__pick):focus-visible {
    outline: 2px solid var(--_accent);
    outline-offset: 2px;
  }

  .c-asd-compare__body {
    background-color: oklch(100% 0 0);
    border: 1px solid var(--_line);
    border-radius: var(--asd-card-radius);
    overflow: clip;
  }

  .c-asd-compare__body .c-asd-compare__row + .c-asd-compare__row {
    border-block-start: 1px solid var(--_line);
  }

  .c-asd-compare__label {
    align-items: center;
    background-color: oklch(98.5% 0 0);
    border-inline-end: 1px solid var(--_line);
    color: oklch(37.1% 0 0);
    display: flex;
    font-size: 0.8125rem;
    font-weight: 600;
    gap: 0.625rem;
    inset-inline-start: 0;
    line-height: 1.3;
    padding: 0.875rem 1.25rem;
    position: sticky;
    z-index: 1;
  }

  .c-asd-compare__icon {
    align-items: center;
    background-color: var(--_accent-soft);
    border-radius: var(--asd-card-icon-radius, 0);
    color: var(--asd-card-icon-color, var(--_accent));
    display: flex;
    flex-shrink: 0;
    height: 2rem;
    justify-content: center;
    width: 2rem;
  }

  .c-asd-compare__icon svg {
    fill: currentcolor;
    height: 1rem;
    width: 1rem;
  }

  .c-asd-compare__label-text {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .c-asd-compare__value {
    align-items: center;
    color: oklch(37.1% 0 0);
    display: flex;
    font-size: 0.875rem;
    justify-content: center;
    line-height: 1.45;
    overflow-wrap: anywhere;
    padding: 0.875rem 1.25rem;
    text-align: center;
  }

  .c-asd-compare__value--current {
    background-color: var(--_accent-soft);
    color: var(--_ink);
    font-weight: 700;
  }

  .c-asd-compare__value--empty {
    color: oklch(70.8% 0 0);
    font-weight: 400;
  }

  .c-asd-compare__flag {
    align-items: center;
    display: inline-flex;
    flex-shrink: 0;
    justify-content: center;
  }

  .c-asd-compare__flag svg {
    fill: currentcolor;
    height: 2rem;
    width: 1rem;
  }

  .c-asd-compare__flag--yes {
    color: oklch(52.7% 0.15 150);
  }

  .c-asd-compare__flag--no {
    color: oklch(57.7% 0.215 27);
  }

  .c-asd-compare__sr {
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  .l-asd-modal {
    display: flex;
    justify-content: flex-start;
  }

  .l-asd-modal--center {
    justify-content: center;
  }

  .l-asd-modal--end {
    justify-content: flex-end;
  }

  .c-asd-modal__trigger {
    background: none;
    border: 0;
    cursor: pointer;
    font: inherit;
    padding: 0;
  }

  .c-asd-modal__trigger .button,
  .c-asd-form__link .button {
    align-items: center;
    display: inline-flex;
    font-weight: 600;
    line-height: 1.2;
    min-height: 44px;
    padding: 0.75rem 1.5rem;
  }

  .c-asd-modal__trigger:hover .button,
  .c-asd-form__link:hover .button {
    filter: brightness(0.92);
  }

  .c-asd-form__link,
  .c-asd-form__link:hover {
    text-decoration: none;
  }

  .l-asd-form {
    min-width: 0;
  }

  .l-asd-product-additional_info {
    li {
      border-bottom: 1px solid oklch(94.7% 0 0);

      @media (width <= 580px) {
        border: 1px solid oklch(94.7% 0 0);
        border-radius: var(--asd-faq-icon-radius);
        margin-block-end: 0.5rem;
        overflow: hidden;
      }
    }

    li span {
      align-items: center;
      background: hsl(0 0% 100%);
      display: flex;
      gap: 1rem;
      padding-block: 0.5rem;

      @media (width <= 580px) {
        display: grid;
        grid-template-columns: auto;
        padding-inline: 0.5rem;
      }
    }

    strong {
      align-items: center;
      align-self: stretch;
      background-color: oklch(97% 0 0);
      color: oklch(46.2% 0 265);
      display: flex;
      flex-basis: min(230px, 50%);
      flex-shrink: 0;
      font-weight: 700;
      line-height: 1.2;
      margin-block: -0.5rem;
      padding: 0.75rem 1rem;

      @media (width <= 580px) {
        margin-inline: -0.5rem;
        padding: 0.5rem;
      }
    }

    .multiselect-list {
      list-style: disc inside;
    }

    .multiselect-list li {
      border-bottom: 0;
    }
  }

  .table thead th {
    border: 0;
  }

  .table td,
  .table th {
    border-color: oklch(90% 0 0);
    padding: 0.875rem;
    text-align: center;
  }

  tbody tr:first-child td {
    border-top: 0;
  }

  .product-description-share {
    margin-block: 2rem 1rem;

    @media (width <= 580px) {
      gap: 1rem;
    }
  }

  .l-asd-related .category-products {
    padding: 0;
  }

  .o-product-actions {
    align-items: stretch;
    border: 0;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(auto-fit, minmax(min(120px, 100%), 1fr));
    padding: 0;

    #downloads-product-button,
    #share-product-button,
    .o-wishlist {
      border: 1px solid oklch(90% 0 0);
      border-radius: var(--asd-faq-icon-radius);
      font-size: 0.875rem;
      font-weight: 500;
      height: 100%;
      justify-content: center;
      padding: 2rem 1rem;
      text-align: center;
      width: 100%;

      svg {
        flex-shrink: 0;
        max-height: 1.25rem;
        width: auto;
      }

      @media (width <= 580px) {
        aspect-ratio: 1 / 1;
        padding: 0.125rem;

        span {
          display: none;
        }
      }
    }

    @media (width <= 580px) {
      grid-template-columns: repeat(auto-fill, minmax(min(40px, 100%), 1fr));
    }
  }

  .o-product-actions > :is(button, .share-product) {
    flex: 1;
  }

  #downloads-product-button {
    align-items: center;
    background: transparent;
    border: 0;
    color: oklch(45.5% 0.01 237);
    display: flex;
    font-size: 1rem;
    font-weight: 500;
    gap: 0.5rem;
  }

  #downloads-product-button svg {
    max-height: 24px;
    width: 100%;
  }

  .estimate-shipping-title {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: -0.009em;
    line-height: 1;
    margin-block-end: 0.5rem;
  }

  .do-not-know-my-zipcode {
    display: block;
    font-size: var(--size-13);
    margin-block-start: 0.25rem;
  }

  .block-shipping-estimate .block-simulate-freight .shipping-estimation-form input {
    border: 1px solid oklch(90% 0 0);
    min-height: 44px;
    padding: 0.5rem 1rem;
    width: 72%;
  }

  .block-shipping-estimate .block-simulate-freight .shipping-estimation-form .f-right button {
    background: oklch(97% 0 0);
    border: 1px solid oklch(85.3% 0 0);
    color: oklch(46.5% 0 0);
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1;
    min-height: 44px;
    padding: 0.5rem 1.25rem;
  }

  .block-shipping-estimate .block-simulate-freight .shipping-estimation-form .f-right {
    top: 22px;
  }

  @media (width < 770px) {
    .c-asd-compare__picker {
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
      margin-block-end: 1rem;
    }

    .c-asd-compare__picker-label {
      color: var(--_muted);
      font-size: 0.6875rem;
      font-weight: 700;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }

    .c-asd-compare__picks {
      display: flex;
      gap: 0.5rem;
      overflow-x: auto;
      padding-block-end: 0.125rem;
      scroll-snap-type: x proximity;
      scrollbar-width: none;
    }

    .c-asd-compare__picks::-webkit-scrollbar {
      display: none;
    }

    .c-asd-compare__pick {
      background-color: oklch(100% 0 0);
      border: 1px solid var(--_line);
      border-radius: var(--asd-tag-radius, 0);
      color: oklch(37.1% 0 0);
      cursor: pointer;
      flex: 0 0 auto;
      font-size: 0.8125rem;
      font-weight: 600;
      line-height: 1.2;
      max-width: 14rem;
      overflow: hidden;
      padding: 0.625rem 1rem;
      scroll-snap-align: start;
      text-overflow: ellipsis;
      transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease;
      white-space: nowrap;
    }

    .c-asd-compare__pick[aria-selected='true'] {
      background-color: var(--_ink);
      border-color: var(--_ink);
      color: oklch(100% 0 0);
    }

    .c-asd-compare__scroller {
      overflow: visible;
      padding: 0;
    }

    .c-asd-compare {
      gap: 0.75rem;
      min-width: 0;
    }

    .c-asd-compare__row {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .c-asd-compare__head .c-asd-compare__row {
      column-gap: 0.75rem;
    }

    .c-asd-compare__corner {
      display: none;
    }

    .l-asd-compare[data-active='1'] .c-asd-compare__row > [data-col]:not([data-col='0'], [data-col='1']),
    .l-asd-compare[data-active='2'] .c-asd-compare__row > [data-col]:not([data-col='0'], [data-col='2']),
    .l-asd-compare[data-active='3'] .c-asd-compare__row > [data-col]:not([data-col='0'], [data-col='3']),
    .l-asd-compare[data-active='4'] .c-asd-compare__row > [data-col]:not([data-col='0'], [data-col='4']) {
      display: none;
    }

    .c-asd-compare__product {
      padding-inline: 0;
    }

    .c-asd-compare__card {
      gap: 0.5rem;
      padding: 0.625rem;
    }

    .c-asd-compare__tag {
      inset-block-start: 1rem;
      inset-inline-start: 1rem;
    }

    .c-asd-compare__tag--compared {
      display: inline-flex;
    }

    .c-asd-compare__name {
      font-size: 0.8125rem;
      -webkit-line-clamp: 2;
    }

    .c-asd-compare__button {
      font-size: 0.75rem;
      min-height: 36px;
      padding: 0.375rem 0.75rem;
    }

    .c-asd-compare__label {
      background-color: transparent;
      border-inline-end: 0;
      color: var(--_muted);
      font-size: 0.6875rem;
      font-weight: 700;
      gap: 0.5rem;
      grid-column: 1 / -1;
      letter-spacing: 0.06em;
      padding: 0.875rem 1rem 0.25rem;
      position: static;
      text-transform: uppercase;
    }

    .c-asd-compare__icon {
      height: 1.5rem;
      width: 1.5rem;
    }

    .c-asd-compare__icon svg {
      height: 0.875rem;
      width: 0.875rem;
    }

    .c-asd-compare__value {
      align-items: flex-start;
      font-size: 0.875rem;
      padding: 0.25rem 1rem 0.875rem;
    }

    .c-asd-compare__value,
    .c-asd-compare__value--current {
      background-color: transparent;
      color: var(--_ink);
      font-weight: 600;
    }

    .c-asd-compare__value--empty {
      color: oklch(70.8% 0 0);
      font-weight: 400;
    }
  }
}

@scope (.asd-content-modal) {
  .modal-content {
    border: 1px solid oklch(69.1% 0 0);
    border-radius: var(--asd-parcel-modal-radius, 0);
  }

  .modal-content .modal-header {
    border-bottom: 1px solid oklch(90% 0 0);
    padding: 1.25rem 2rem;
  }

  .modal-content h4.modal-title {
    color: oklch(32.1% 0 0);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1;
    margin: 0;
  }

  .modal-body {
    max-height: 75vh;
    overflow-y: auto;
    padding: 1.5rem 2rem;

    @media (width <= 550px) {
      padding: 1rem;
    }
  }

  .c-asd-modal__content {
    display: grid;
    gap: 1.5rem;
  }

  .c-asd-modal__content table {
    width: 100%;
  }

  .c-asd-modal__content img {
    height: auto;
    max-width: 100%;
  }
}

@scope (.asd-review-modal) {
  .modal-content {
    border: 1px solid oklch(69.1% 0 0);
    border-radius: var(--asd-parcel-modal-radius, 0);
  }

  .modal-body {
    padding: 1rem 2rem 1.5rem;
  }

  .modal-content .modal-header {
    border-bottom: 1px solid oklch(90% 0 0);
    padding: 1.25rem 2rem;
  }

  .modal-content h4.modal-title {
    color: oklch(32.1% 0 0);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1;
    margin: 0;
  }

  .modal-header .close {
    display: none;
  }

  [class*='col-md'] {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .rating-options .col-6 {
    padding: 0;
  }

  .rating-options strong {
    color: oklch(62% 0 0);
    font-size: 0.875rem;
    font-weight: 600;
    margin-block-end: 0.25rem;
  }

  .row:has(> .rating-area) {
    gap: 0.25rem;
    justify-content: flex-end;
  }

  .row:has(> .rating-area .validation-advice):not(.row:has(.validation-passed)) {
    padding-block-end: 2rem;
  }

  .rating-area:first-child .validation-advice {
    line-height: 1;
    position: absolute;
    width: auto;
  }

  .rating-area {
    flex: 0;
    position: static;
  }

  #review-form .rating-options label {
    color: hsl(0 0% 84%);
    font-size: 1rem;
  }

  ul.form-list.review-list li.inline-label,
  .col-md-5 {
    margin-block-end: 0.75rem;
  }
}

@scope (#shipping-options-modal) {
  .modal-content {
    border: 1px solid oklch(69.1% 0 0);
    border-radius: var(--asd-parcel-modal-radius, 0);
  }

  .modal-body {
    padding: 0;
  }

  .modal-content .modal-header {
    border-bottom: 1px solid oklch(90% 0 0);
    padding: 1.25rem 2rem;
  }

  .modal-content h4.modal-title {
    color: oklch(32.1% 0 0);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.009em;
    line-height: 1;
    margin: 0;
  }

  .modal-header .close {
    color: hsl(0 0% 20%);
    float: none;
    font-size: 1.25rem;
    height: auto;
    line-height: 1;
    margin: 0;
    opacity: 1;
    padding: 0;
    position: static;
  }

  .c-shipping-options__row {
    align-items: center;
    color: oklch(32.1% 0 0);
    display: grid;
    font-size: 0.875rem;
    gap: 0 1rem;
    grid-template-columns: 1fr max-content;
    letter-spacing: -0.009em;
    line-height: 1;
    padding: 1.25rem 2rem;
    position: relative;

    &[class*='--best-method'] {
      padding-top: 1.75rem;
      position: relative;
    }

    &[class*='--error'] {
      color: var(--danger);
      font-weight: 500;
    }
  }

  .c-shipping-options__row:nth-child(even) {
    background-color: oklch(97% 0 0);
  }

  .c-shipping-options__price {
    font-weight: 700;
  }

  .c-shipping-options__price--free {
    color: oklch(63.5% 0.13 166);
  }

  .c-shipping-options__best-method {
    color: oklch(63.5% 0.13 166);
    font-size: 0.75rem;
    font-weight: 700;
    left: 2rem;
    position: absolute;
    top: 0.75rem;
  }

  .c-shipping-options__pickup {
    color: var(--blue);
    cursor: pointer;
    font-weight: 700;
  }

  .c-shipping-options__pickup-details {
    display: grid;
    font-size: 0.75rem;
    grid-column: 1 / -1;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.5s ease-in-out;
  }

  .c-shipping-options__pickup-details > div {
    overflow: hidden;
  }

  .open + .c-shipping-options__pickup-details {
    grid-template-rows: 1fr;
  }

  .c-shipping-options__pickup-address {
    display: block;
    font-weight: 700;
    margin-block: 1rem 0.5rem;
  }

  .c-shipping-options__pickup-time span + span {
    margin-block-start: 0.25rem;
  }

  .c-shipping-options__pickup-time h6 {
    color: hsl(0 0% 20%);
    font-size: 0.75rem;
    font-weight: 700;
    margin-block: 0.5rem 0.25rem;
  }
}

@scope (.asd-reviews) {
  :scope {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
  }

  .asd-reviews__aside {
    flex: 0 0 260px;
  }

  .asd-reviews__main {
    flex: 1;
    min-width: min(400px, 100%);
  }

  /* Stars overlay */
  .asr-star-wrap {
    display: inline-flex;
    line-height: 1;
    position: relative;
    white-space: nowrap;
  }

  .asr-star-bg {
    color: hsl(0 0% 78%);
    display: inline-flex;
  }

  .asr-star-fill {
    color: var(--review-icon-color, hsl(37 91% 55%));
    display: inline-flex;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    white-space: nowrap;
  }

  /* Aside title */
  .asr-aside-title {
    border-bottom: 1px solid hsl(0 0% 91%);
    color: hsl(180 6% 6%);
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0 0 0.75rem;
    padding-bottom: 0.5rem;
  }

  /* Overall score */
  .asr-overall {
    margin-bottom: 1rem;
  }

  .asr-overall__number {
    color: hsl(180 6% 6%);
    display: block;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
  }

  .asr-overall__stars {
    margin: 6px 0 4px;
  }

  .asr-overall__stars .asr-star-wrap i {
    font-size: 20px;
  }

  .asr-overall__count {
    color: hsl(180 2% 34%);
    font-size: 13px;
  }

  /* Histogram */
  .asr-histogram {
    margin-bottom: 4px;
  }

  .asr-hist-row {
    align-items: center;
    border-radius: 3px;
    cursor: pointer;
    display: flex;
    gap: 6px;
    padding: 3px 4px;
    transition: background 0.15s;
  }

  .asr-hist-row:hover {
    background: hsl(0 0% 95%);
  }

  .asr-hist-row--active {
    background: hsl(from var(--review-icon-color) h s calc(l + 45));
  }

  .asr-hist-label {
    color: hsl(189 100% 26%);
    font-size: 0.875rem;
    white-space: nowrap;
    width: 70px;
  }

  .asr-hist-bar {
    background: hsl(0 0% 94%);
    border-radius: 2px;
    flex: 1;
    height: 12px;
    overflow: hidden;
  }

  .asr-hist-bar__fill {
    background: var(--review-icon-color, hsl(37 91% 55%));
    border-radius: 0.125rem;
    height: 100%;
  }

  .asr-hist-pct {
    color: hsl(189 100% 26%);
    font-size: 13px;
    text-align: right;
    width: 32px;
  }

  /* Criteria averages (aside) */
  .asr-criteria-avg {
    border-top: 1px solid hsl(0 0% 91%);
    margin-bottom: 4px;
    margin-top: 16px;
    padding-top: 14px;
  }

  .asr-criteria-avg__title {
    color: hsl(180 6% 6%);
    font-size: 13px;
    font-weight: 700;
    margin: 0 0 10px;
  }

  .asr-crit-row {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: space-between;
    margin-bottom: 8px;
  }

  .asr-crit-row__name {
    color: hsl(180 6% 6%);
    flex: 1;
    font-size: 13px;
  }

  .asr-crit-row__stars {
    align-items: center;
    display: flex;
    gap: 5px;
  }

  .asr-crit-row__stars .asr-star-wrap i {
    font-size: 12px;
  }

  .asr-crit-row__val {
    color: hsl(180 2% 34%);
    font-size: 12px;
  }

  /* Write review */
  .asr-write-section {
    border-top: 1px solid hsl(0 0% 91%);
    margin-top: 16px;
    padding-top: 16px;
  }

  .asr-write-section__title {
    color: hsl(180 6% 6%);
    font-size: 15px;
    font-weight: 700;
    margin: 0 0 4px;
  }

  .asr-write-section__sub {
    color: hsl(180 2% 34%);
    font-size: 13px;
    margin: 0 0 10px;
  }

  .asr-write-btn {
    box-sizing: border-box;
    width: 100%;
  }

  /* Main area */
  .asr-main-title {
    border-bottom: 1px solid hsl(0 0% 91%);
    color: hsl(180 6% 6%);
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0 0 1rem;
    padding-bottom: 0.75rem;
  }

  /* Filter bar */
  .asr-filter-bar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 1rem;
  }

  .asr-filter-bar__label {
    color: hsl(180 2% 34%);
    font-size: 13px;
  }

  .asr-filter-btn {
    align-items: center;
    background: hsl(0 0% 100%);
    border: 1px solid hsl(180 5% 84%);
    border-radius: 0.25rem;
    color: hsl(180 6% 6%);
    cursor: pointer;
    display: flex;
    font-size: 0.875rem;
    font-weight: 600;
    gap: 0.25rem;
    padding: 0.25rem 0.75rem;
    transition:
      background 0.15s,
      border-color 0.15s;
  }

  .asr-filter-btn i {
    font-size: 0.625rem;
  }

  .asr-filter-btn:hover {
    background: hsl(180 23% 97%);
  }

  .asr-filter-btn.active {
    background: hsl(from var(--review-icon-color) h s calc(l + 35), hsl(43 92% 95%));
    border-color: var(--review-icon-color, hsl(37 91% 55%));
    color: var(--review-icon-color, hsl(37 91% 55%));
    font-weight: 700;
  }

  /* Review item */
  .asr-review {
    border-bottom: 1px solid hsl(0 0% 91%);
    padding: 18px 0;
  }

  .asr-review:last-child {
    border-bottom: none;
  }

  .asr-review__author {
    align-items: center;
    display: flex;
    gap: 8px;
    margin-bottom: 8px;
  }

  .asr-review__avatar {
    align-items: center;
    background: hsl(0 0% 48%);
    border-radius: 50%;
    color: hsl(0 0% 100%);
    display: inline-flex;
    flex-shrink: 0;
    font-size: 15px;
    font-weight: 700;
    height: 36px;
    justify-content: center;
    width: 36px;
  }

  .asr-review__name {
    color: hsl(180 6% 6%);
    font-size: 14px;
    font-weight: 700;
  }

  .asr-review__stars-row {
    align-items: center;
    display: flex;
    gap: 8px;
    margin-bottom: 4px;
  }

  .asr-review__stars-row .asr-star-wrap i {
    font-size: 15px;
  }

  .asr-review__title {
    color: hsl(180 6% 6%);
    font-size: 0.875rem;
    font-weight: 700;
  }

  .asr-review__date {
    color: hsl(180 2% 34%);
    font-size: 0.75rem;
    margin-bottom: 0.75rem;
  }

  .asr-review__body {
    color: hsl(180 6% 6%);
    font-size: 0.875rem;
    line-height: 1.3;
  }

  /* Per-review criteria */
  .asr-review__criteria {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.25rem;
    margin-top: 0.75rem;
  }

  .asr-review-crit {
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .asr-review-crit__name {
    color: hsl(180 2% 34%);
    font-size: 12px;
  }

  .asr-review-crit__stars {
    align-items: center;
    display: flex;
    gap: 4px;
  }

  .asr-review-crit__stars .asr-star-wrap i {
    font-size: 11px;
  }

  .asr-review-crit__val {
    color: hsl(180 6% 6%);
    font-size: 12px;
    font-weight: 600;
  }

  /* Show more */
  .asr-show-more-wrap {
    margin-top: 16px;
    text-align: center;
  }

  .asr-show-more-btn {
    background: hsl(0 0% 100%);
    border: 1px solid hsl(180 5% 84%);
    border-radius: 3px;
    color: hsl(180 6% 6%);
    cursor: pointer;
    font-size: 14px;
    padding: 8px 24px;
    transition:
      background 0.15s,
      border-color 0.15s;
  }

  .asr-show-more-btn:hover {
    background: hsl(180 23% 97%);
    border-color: hsl(210 11% 71%);
  }

  /* Empty */
  .asr-empty {
    color: hsl(180 2% 34%);
    font-size: 0.875rem;
    padding: 1.25rem 0;
  }

  .asr-empty__title {
    color: hsl(180 6% 6%);
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 0.5rem;
  }

  .asr-empty__subtitle {
    color: hsl(0 0% 40%);
    font-size: 0.875rem;
    margin-block-end: 1.5rem;
  }

  .asr-empty-section .asr-write-btn {
    font-size: 0.875rem;
    padding: 0.75rem 2rem;
    width: fit-content;
  }

  /* Empty state CTA */
  .asr-empty-state {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: 2.5rem 1rem;
    text-align: center;
  }

  .asr-empty-state__stars .asr-star-wrap i {
    font-size: 2rem;
  }

  .asr-empty-state__title {
    color: hsl(180 6% 6%);
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0;
  }

  .asr-empty-state__desc {
    color: hsl(180 2% 34%);
    font-size: 0.875rem;
    margin: 0 0 0.5rem;
  }

  .asr-empty-state .asr-write-btn {
    padding-left: 2rem;
    padding-right: 2rem;
    width: auto;
  }

  @media (width <= 768px) {
    .asd-reviews {
      flex-direction: column;
      gap: 1rem;
    }

    .asd-reviews__aside {
      flex: 1 0;
    }

    .asr-overall__number {
      font-size: 2rem;
    }

    .asr-review__criteria {
      gap: 0.5rem 0.75rem;
    }
  }
}

@scope (.asd-comments) {
  @keyframes pulse-loading {
    0% {
      background-color: hsl(204 9% 90%);
    }

    50% {
      background-color: hsl(200 11% 95%);
    }

    100% {
      background-color: hsl(204 9% 90%);
    }
  }

  :scope {
    background-color: hsl(0 0% 100%);
  }

  .loading-comment + .loading-comment {
    border-top: 1px solid hsl(0 0% 93%);
    margin-block-start: 2rem;
    padding-block-start: 1rem;
  }

  .area_comments {
    grid-column: span 8;

    .l-quote & {
      grid-column: 1/-1;
    }
  }

  .comment-sticky {
    align-self: flex-start;
    background: hsl(0 0% 100%);
    border: 1px solid hsl(0 0% 93%);
    border-radius: var(--asd-card-radius);
    grid-column: span 4;
    padding: 2rem 1.5rem;

    .l-quote & {
      grid-column: 1/-1;
    }
  }

  .comment-title {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1;
    margin-block-end: 0.25rem;
  }

  .comment-subtitle {
    color: hsl(0 0% 40%);
    font-size: 0.875rem;
    font-weight: 500;
  }

  .loading-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
  }

  .loading-name {
    animation: pulse-loading 1.325s infinite ease-in-out;
    background-color: hsl(0 0% 90%);
    height: 1.75rem;
    width: calc(100% - 40px - 1.5rem);
  }

  .loading-date {
    animation: pulse-loading 1.325s infinite ease-in-out;
    animation-delay: 0.125s;
    background-color: hsl(0 0% 90%);
    height: 1rem;
    width: 50px;
  }

  .loading-answer {
    animation: pulse-loading 1.25s infinite ease-in-out;
    background-color: hsl(0 0% 90%);
    height: 3rem;
    margin-block-start: 0.5rem;
    width: calc(100% - 50px - 1.5rem);
  }

  .your_messages .comment-title {
    display: none;
  }

  .client_question {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-block-end: 1rem;
  }

  .client_question {
    p {
      color: hsl(0 0% 20%);
      font-size: 1rem;
      font-weight: bold;
      margin: 0;
    }

    i {
      display: none;
    }

    span {
      color: hsl(0 0% 53%);
      font-size: 0.75rem;
      font-weight: 500;
    }
  }

  .reponse_question {
    p {
      color: hsl(0 0% 40%);
      font-size: 1rem;
      font-weight: 400;
      margin-block-end: 0.5rem;
      padding-inline-start: 1rem;
    }

    i {
      display: none;
    }

    span {
      color: hsl(0 0% 53%);
      display: block;
      font-size: 0.75rem;
      font-weight: 500;
      padding-inline-start: 1rem;
    }
  }
}

/* Raio tematico migrado de product_rounded.css / product_circle.css */
.product-view .price-box .special-price .desconto-porcentagem,
.area-recurrence .price-recurrence .discount {
  border-radius: var(--product-radius-discount, 0);
}

.product-view .area-btn-recurrence .btn-recurrence-product,
.product-view .btn-make-offer {
  border-radius: var(--product-radius-box, 0);
}

.amconf-color-container,
.amconf-image-container {
  border-radius: var(--product-radius-swatch, 0);
}

.option .radio-checkbox-label div.container-swatch-color,
.option div.swatch-color,
.product-options .option .radio-checkbox-label a img,
.product-options .option .radio-checkbox-label a.img-thumbnail,
.product-options .option .swatch a img {
  border-radius: var(--product-radius-swatch, 0);
}

.video iframe {
  border-radius: var(--product-radius-video, 0);
}

#ModalReview .modal-content {
  border-radius: var(--product-radius-box, 0);
}

/* ------------------------------------------------------------- tags (r15) */

.soulmkt-buy-together__tags {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  grid-area: tags;
  list-style: none;
  margin: 0;
  min-width: 0;
  padding: 0;
}

.soulmkt-buy-together__tag {
  align-items: center;
  column-gap: 0.625rem;
  display: grid;
  grid-template-columns: 1.375rem minmax(0, 1fr);
  margin: 0;
}

.soulmkt-buy-together__tag-icon {
  color: var(--bt-accent);
  font-size: 1.125rem;
  text-align: center;
}

.soulmkt-buy-together__tag-text {
  display: flex;
  flex-direction: column;
  grid-column: 2;
  line-height: 1.3;
  min-width: 0;
}

.soulmkt-buy-together__tag-title {
  color: var(--bt-text);
  font-size: var(--size-13, 0.8125rem);
  font-weight: 600;
}

.soulmkt-buy-together__tag-detail {
  color: var(--bt-muted);
  font-size: var(--size-12, 0.75rem);
}

/* Grade: tags na faixa de baixo, ate 2 colunas x 2 linhas */
.soulmkt-buy-together--grid .soulmkt-buy-together__tags {
  align-content: start;
  border-top: var(--bt-border-width) solid var(--bt-border);
  display: grid;
  gap: 0.75rem 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 0.875rem;
}

/* Lista: "5% de desconto no kit" em linha propria, sem quebrar */
.soulmkt-buy-together--list .soulmkt-buy-together__kit-off {
  display: block;
  white-space: nowrap;
}

.soulmkt-buy-together--list .soulmkt-buy-together__price-pix:not([hidden]) + .soulmkt-buy-together__kit-off::before {
  color: inherit;
  content: '\2022\00a0';
  font-weight: inherit;
}


/* Checkbox e "1x" sem cobrir a foto (Grade e Lista): os dois ficam montados nos cantos da caixa
   da foto (checkbox em cima a esquerda, "1x" embaixo a direita), metade para fora, e a imagem
   tem um respiro interno igual em todas as caixas, maior que a parte deles que fica dentro. Nao
   criam linha propria e as caixas com e sem checkbox ficam do mesmo tamanho e no mesmo topo. */
.soulmkt-buy-together {
  --bt-corner-offset: -0.4375rem;
  --bt-img-pad: 0.875rem;
}

.soulmkt-buy-together .soulmkt-buy-together__kit .soulmkt-buy-together__items .soulmkt-buy-together__item .soulmkt-buy-together__item-media img {
  padding: var(--bt-img-pad);
}

.soulmkt-buy-together .soulmkt-buy-together__kit .soulmkt-buy-together__item-figure {
  margin-bottom: calc(var(--bt-corner-offset) * -1);
}

.soulmkt-buy-together .soulmkt-buy-together__kit .soulmkt-buy-together__item-qty {
  bottom: var(--bt-corner-offset);
  right: var(--bt-corner-offset);
  z-index: 1;
}

.soulmkt-buy-together .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input + label.soulmkt-buy-together__check {
  left: var(--bt-corner-offset);
  top: var(--bt-corner-offset);
  z-index: 1;
}

/* Lista, card empilhado: a caixa da foto e centralizada no card; o checkbox fica no canto dela */
.soulmkt-buy-together--list .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input + label.soulmkt-buy-together__check {
  left: max(var(--bt-corner-offset), calc((100% - min(var(--bt-list-photo), 100%)) / 2 + var(--bt-corner-offset)));
}

/* Grade com 4 produtos ou mais: as caixas enchem a coluna. 4 lado a lado (2 por linha se cada um
   ficar com menos de 6rem); 5 ou mais, 3 por linha (2 se cada um ficar com menos de 5.5rem).
   O "+" some no primeiro item de cada linha. */
.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows {
  --bt-grid-gap: 1.25rem;

  container: bt-grid-items / inline-size;
  display: grid;
  gap: 0.875rem var(--bt-grid-gap);
  grid-template-columns: repeat(auto-fit, minmax(max(calc((100% - 3 * var(--bt-grid-gap)) / 4), min(calc((100% - var(--bt-grid-gap)) / 2), calc((4 * 6rem + 3 * var(--bt-grid-gap) - 100%) * 999))), 1fr));
  justify-content: stretch;
  overflow: visible;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows:has(> .soulmkt-buy-together__item:nth-child(5)) {
  grid-template-columns: repeat(auto-fit, minmax(max(calc((100% - 2 * var(--bt-grid-gap)) / 3), min(calc((100% - var(--bt-grid-gap)) / 2), calc((3 * 5.5rem + 2 * var(--bt-grid-gap) - 100%) * 999))), 1fr));
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows .soulmkt-buy-together__item {
  max-width: none;
  min-width: 0;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
  left: calc(var(--bt-grid-gap) / -2);
}

/* 4 produtos: numa linha so a partir de 1024px (caixas de no minimo ~4.5rem, nome em ate 3
   linhas); 2 x 2 so abaixo disso, quando cada um ficaria com menos de 6rem */
@media (width >= 1024px) {
  .soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows:not(:has(> .soulmkt-buy-together__item:nth-child(5))) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (width < 1024px) {
  @container bt-grid-items (width < 27.75rem) {
    .soulmkt-buy-together--grid .soulmkt-buy-together__items--rows:not(:has(> .soulmkt-buy-together__item:nth-child(5))) > .soulmkt-buy-together__item:nth-child(2n + 1) .soulmkt-buy-together__item-figure::before {
      content: none;
    }
  }
}

@container bt-grid-items (width >= 19rem) {
  .soulmkt-buy-together--grid .soulmkt-buy-together__items--rows:has(> .soulmkt-buy-together__item:nth-child(5)) > .soulmkt-buy-together__item:nth-child(3n + 1) .soulmkt-buy-together__item-figure::before {
    content: none;
  }
}

@container bt-grid-items (width < 19rem) {
  .soulmkt-buy-together--grid .soulmkt-buy-together__items--rows:has(> .soulmkt-buy-together__item:nth-child(5)) > .soulmkt-buy-together__item:nth-child(2n + 1) .soulmkt-buy-together__item-figure::before {
    content: none;
  }
}

/* Lista com 4 ou mais: 4 por linha (2 quando estreita); o "+" some no primeiro de cada linha */
@container bt-items (width >= 32.75rem) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows > .soulmkt-buy-together__item:nth-child(4n + 1)::before {
    content: none;
  }
}

@container bt-items (width < 32.75rem) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows > .soulmkt-buy-together__item:nth-child(2n + 1)::before {
    content: none;
  }
}

/* Grade: nome em ate 3 linhas e subtitulo em ate 2, com reticencias (as faixas do subgrid ja
   alinham os kits vizinhos; o corte evita uma faixa alta por causa de um so kit) */
.soulmkt-buy-together--grid .soulmkt-buy-together__item-name {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit-text {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}

/* Os cantos do checkbox e do "1x" saem um pouco da caixa: a lista de itens nao rola por isso
   (com ate 3 itens as caixas encolhem; com 4 ou mais quebram em linhas) */
.soulmkt-buy-together .soulmkt-buy-together__kit .soulmkt-buy-together__items {
  overflow: visible;
}

/* Celular, Lista empilhada: nome um pouco menor e hifenizado, para palavra longa nao partir no
   meio sem hifen na caixa estreita */
@media (width <= 767px) {
  .soulmkt-buy-together--list .soulmkt-buy-together__item-name {
    font-size: var(--size-11, 0.6875rem);
    hyphens: auto;
  }
}

/* Celular, Lista sem destaques: sem a faixa vazia das tags (o vao dobrava entre preco e botao) */
@media (width <= 767px) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit:not(:has(.soulmkt-buy-together__tags)) {
    grid-template-areas:
      'intro'
      'items'
      'details'
      'pricing'
      'actions';
  }
}

/* Grade: caixa de foto com altura maxima comum (~130px, proporcao 12:11), para kits de 2 e de 3
   produtos na mesma linha ficarem parecidos */
.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__item {
  max-width: 8.875rem;
}

/* Grade com 4 ou mais produtos: caixas estreitas, nome um pouco menor (hifeniza se ainda
   assim uma palavra nao couber) */
.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows .soulmkt-buy-together__item-name {
  font-size: var(--size-12, 0.75rem);
  hyphens: auto;
}

.soulmkt-buy-together--grid .soulmkt-buy-together__kit .soulmkt-buy-together__items--rows .soulmkt-buy-together__item-sku {
  font-size: var(--size-11, 0.6875rem);
}

/* Lista: a foto fica direto no card, sem moldura propria (com a do card viraria borda dupla).
   Checkbox e "1x" sao selos montados na parte reta da borda do card do item (fora da curva do
   canto, recuo de 15px): o checkbox na de cima, a esquerda, e o "1x" na de baixo, a direita,
   metade para fora, com fundo proprio por cima da linha. A parte deles que entra no card e
   menor que o padding do card mais o respiro da foto, entao nao cobrem a imagem. */
.soulmkt-buy-together--list {
  --bt-img-pad: 0.375rem;
  --bt-list-card-height: 8rem;
  --bt-list-photo: 7rem;
  --bt-seal-inset: 0.9375rem;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__item-figure,
.soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__item-figure .soulmkt-buy-together__item-media {
  margin-bottom: 0;
  position: static;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__item-figure .soulmkt-buy-together__item-media {
  border-color: transparent;
}

.soulmkt-buy-together--list .soulmkt-buy-together__item-figure input[type='checkbox'].soulmkt-buy-together__check-input + label.soulmkt-buy-together__check {
  left: calc(var(--bt-seal-inset) - var(--bt-border-width));
  top: calc(var(--bt-border-width) / -2);
  translate: 0 -50%;
}

.soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__item-qty {
  bottom: calc(var(--bt-border-width) / -2);
  left: auto;
  right: calc(var(--bt-seal-inset) - var(--bt-border-width));
  translate: 0 50%;
}

/* Card empilhado: com a caixa da foto sem posicao propria, o "+" sai do card, na altura do meio
   da foto (padding do card + metade da foto) */
.soulmkt-buy-together--list .soulmkt-buy-together__items .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
  content: none;
}

.soulmkt-buy-together--list .soulmkt-buy-together__items > .soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
  color: var(--bt-muted);
  content: '+';
  font-size: var(--size-18, 1.125rem);
  left: calc(var(--bt-list-item-gap) / -2 - var(--bt-border-width));
  line-height: 1;
  position: absolute;
  top: calc(0.5rem + var(--bt-list-photo) / 2);
  translate: -50% -50%;
}

/* Kit sem destaques na Lista: o bloco de preco tem a largura do conteudo, fica centralizado sobre
   o botao e todas as linhas dele alinham a esquerda */
@media (width >= 1200px) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit:not(:has(.soulmkt-buy-together__tags)) .soulmkt-buy-together__pricing {
    align-content: center;
    display: grid;
    grid-template-columns: max-content;
    justify-content: center;
    justify-items: start;
    padding-left: 0;
    text-align: left;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit:not(:has(.soulmkt-buy-together__tags)) .soulmkt-buy-together__save {
    align-self: auto;
    justify-self: start;
  }
}

/* Nome do item: mesma cor em todos os estados do link (o tema pinta :visited/:active/:focus);
   no hover so sublinha */
.soulmkt-buy-together .soulmkt-buy-together__item-name:is(:link, :visited, :hover, :active, :focus) {
  color: var(--bt-text);
}

/* Celular, Lista com ate 3 produtos: um card por linha, foto a esquerda e nome + SKU a direita
   (3 caixas lado a lado partiam palavras no meio); o "+" fica no vao entre as linhas */
@media (width <= 767px) {
  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) {
    --bt-list-photo: 4.5rem;

    gap: var(--bt-list-item-gap) 0;
    grid-auto-flow: row;
    grid-template-columns: minmax(0, 1fr);
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) > .soulmkt-buy-together__item {
    align-content: center;
    column-gap: 0.75rem;
    grid-template-areas:
      'figure .'
      'figure name'
      'figure sku'
      'figure .';
    grid-template-columns: var(--bt-list-photo) minmax(0, 1fr);
    grid-template-rows: 1fr auto auto 1fr;
    text-align: left;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) .soulmkt-buy-together__item-figure {
    margin-bottom: 0;
    width: var(--bt-list-photo);
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) .soulmkt-buy-together__item-media {
    width: 100%;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) .soulmkt-buy-together__item-name {
    font-size: var(--size-12, 0.75rem);
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) .soulmkt-buy-together__item + .soulmkt-buy-together__item .soulmkt-buy-together__item-figure::before {
    content: none;
  }

  .soulmkt-buy-together--list .soulmkt-buy-together__kit .soulmkt-buy-together__items:not(.soulmkt-buy-together__items--rows) > .soulmkt-buy-together__item + .soulmkt-buy-together__item::before {
    color: var(--bt-muted);
    content: '+';
    font-size: var(--size-18, 1.125rem);
    left: 50%;
    line-height: 1;
    position: absolute;
    top: calc(var(--bt-list-item-gap) / -2 - var(--bt-border-width));
    translate: -50% -50%;
  }
}

