/* Public storefront readability. Load after styles.css.
   The admin workspace, hero artwork/crop, display headings and intro are untouched. */

body:not([data-route="painel-demo/"]) {
  --muted: #626159;
  font-size: 16px;
  line-height: 1.7;
}

body:not([data-route="painel-demo/"]) .button,
body:not([data-route="painel-demo/"]) .text-link {
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: .015em;
  min-height: 48px;
}

body:not([data-route="painel-demo/"]) .button {
  padding: 14px 22px;
  gap: 16px;
}

body:not([data-route="painel-demo/"]) .eyebrow {
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: .12em;
}

body:not([data-route="painel-demo/"]) .subtle,
body:not([data-route="painel-demo/"]) .breadcrumbs,
body:not([data-route="painel-demo/"]) .collection-caption,
body:not([data-route="painel-demo/"]) .channel-explainer,
body:not([data-route="painel-demo/"]) .purchase-note,
body:not([data-route="painel-demo/"]) .noscript-note {
  font-size: 14px;
  line-height: 1.7;
}

/* The shop remains a labelled destination in both navigation surfaces. */
body:not([data-route="painel-demo/"]) .site-header {
  position: sticky;
  top: 0;
}

body:not([data-route="painel-demo/"]) .announcement {
  min-height: 44px;
  height: auto;
  padding: 8px 24px;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: .065em;
  text-align: center;
}

body:not([data-route="painel-demo/"]) .announcement > a {
  font-size: 13px;
  letter-spacing: 0;
}

body:not([data-route="painel-demo/"]) .desktop-nav {
  font-size: 14px;
  align-items: center;
  gap: clamp(18px, 2.3vw, 34px);
}

body:not([data-route="painel-demo/"]) .desktop-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  line-height: 1.45;
  white-space: nowrap;
}

body:not([data-route="painel-demo/"]) .desktop-nav .nav-shop {
  gap: 8px;
  padding: 10px 18px;
  background: var(--gold);
  border: 1px solid #c6aa73;
  border-radius: 999px;
  color: #15150f;
  font-weight: 600;
}

body:not([data-route="painel-demo/"]) .desktop-nav .nav-shop::after {
  display: none;
}

body:not([data-route="painel-demo/"]) .desktop-nav .nav-shop:hover {
  background: #ceb27b;
}

body:not([data-route="painel-demo/"]) .category-nav {
  min-height: 50px;
  height: auto;
  gap: 28px;
  font-size: 14px;
  line-height: 1.45;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-padding-inline: 18px;
}

body:not([data-route="painel-demo/"]) .category-nav > a {
  flex: none;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  padding-block: 12px;
  white-space: nowrap;
}

body:not([data-route="painel-demo/"]) .category-nav .category-shop-link {
  gap: 10px;
  color: var(--ink);
  font-weight: 600;
  box-shadow: inset 0 -2px var(--bronze);
}

body:not([data-route="painel-demo/"]) .counter {
  font-size: 11px;
  min-width: 19px;
  height: 19px;
}

body:not([data-route="painel-demo/"]) .mobile-menu-button {
  min-width: 44px;
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .breadcrumbs a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}

/* The image source, image box and object-position deliberately stay in styles.css. */
body:not([data-route="painel-demo/"]) .hero-description {
  font-size: 16px;
  line-height: 1.75;
}

body:not([data-route="painel-demo/"]) .hero-actions {
  gap: 12px 20px;
  max-width: 100%;
  flex-wrap: wrap;
}

body:not([data-route="painel-demo/"]) .hero-actions .button {
  min-width: 190px;
  min-height: 52px;
  font-size: 16px;
  padding: 14px 20px;
  gap: 16px;
}

body:not([data-route="painel-demo/"]) .hero-actions .text-link {
  font-size: 14px;
  gap: 12px;
  white-space: normal;
}

body:not([data-route="painel-demo/"]) .hero-helper {
  max-width: 36ch;
  margin-top: 14px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.6;
}

body:not([data-route="painel-demo/"]) .hero-footnote {
  font-size: 12px;
  line-height: 1.6;
  max-width: 34ch;
  margin-top: 32px;
}

body:not([data-route="painel-demo/"]) .hero-image-caption,
body:not([data-route="painel-demo/"]) .hero-image-number {
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: .08em;
}

body:not([data-route="painel-demo/"]) .hero-image-caption {
  max-width: calc(100% - 120px);
}

body:not([data-route="painel-demo/"]) .brand-strip {
  min-height: 70px;
  height: auto;
  padding: 16px 24px;
  flex-wrap: wrap;
  gap: 12px 28px;
  font-size: 12px;
  letter-spacing: .07em;
  line-height: 1.5;
  text-align: center;
}

/* Product cards, catalogue controls and purchase details. */
body:not([data-route="painel-demo/"]) .section-head {
  flex-wrap: wrap;
  row-gap: 18px;
}

body:not([data-route="painel-demo/"]) .section-head .text-link {
  font-size: 14px;
  min-height: 44px;
  max-width: none;
  flex: 0 1 auto;
  line-height: 1.5;
}

body:not([data-route="painel-demo/"]) .category-card > div > span,
body:not([data-route="painel-demo/"]) .product-category,
body:not([data-route="painel-demo/"]) .product-tag,
body:not([data-route="painel-demo/"]) .collection-tiles small {
  font-size: 12px;
  line-height: 1.45;
  letter-spacing: .05em;
}

body:not([data-route="painel-demo/"]) .product-tag {
  top: 10px;
  left: 10px;
  padding: 4px 6px;
  max-width: calc(100% - 62px);
  white-space: normal;
}

body:not([data-route="painel-demo/"]) .favorite-button {
  min-width: 44px;
  min-height: 44px;
  top: 6px;
  right: 5px;
  padding: 10px;
}

body:not([data-route="painel-demo/"]) .favorite-button svg {
  width: 19px;
  height: 19px;
}

body:not([data-route="painel-demo/"]) .quick-add {
  min-height: 48px;
  font-size: 14px;
  line-height: 1.3;
  padding: 8px 6px;
  gap: 7px;
  white-space: normal;
}

body:not([data-route="painel-demo/"]) .quick-add svg {
  width: 17px;
  height: 17px;
}

body:not([data-route="painel-demo/"]) .product-info h3 {
  font-size: 26px;
  line-height: 1.2;
  min-height: 2.4em;
}

body:not([data-route="painel-demo/"]) .product-info h3 a {
  display: flex;
  align-items: flex-start;
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .product-info-bottom {
  font-size: 14px;
  line-height: 1.5;
  align-items: flex-start;
  gap: 8px;
}

body:not([data-route="painel-demo/"]) .product-info-bottom > a {
  min-width: 44px;
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .page-heading > p:last-child,
body:not([data-route="painel-demo/"]) .catalog-heading p:not(.eyebrow),
body:not([data-route="painel-demo/"]) .product-description,
body:not([data-route="painel-demo/"]) .editorial-copy > p:not(.eyebrow),
body:not([data-route="painel-demo/"]) .wholesale-copy > p,
body:not([data-route="painel-demo/"]) .wholesale-hero > div > p:not(.eyebrow),
body:not([data-route="painel-demo/"]) .wholesale-info > div > p:not(.eyebrow),
body:not([data-route="painel-demo/"]) .collection-list p:not(.eyebrow),
body:not([data-route="painel-demo/"]) .about-hero p:not(.eyebrow),
body:not([data-route="painel-demo/"]) .about-statement > p:last-child,
body:not([data-route="painel-demo/"]) .prose > p,
body:not([data-route="painel-demo/"]) .steps p,
body:not([data-route="painel-demo/"]) .care-grid p,
body:not([data-route="painel-demo/"]) .faq details p,
body:not([data-route="painel-demo/"]) .form-page > div > p:not(.eyebrow),
body:not([data-route="painel-demo/"]) .contact-page > div > p:not(.eyebrow),
body:not([data-route="painel-demo/"]) .contact-cards p,
body:not([data-route="painel-demo/"]) .empty-state p,
body:not([data-route="painel-demo/"]) .not-found p {
  font-size: 16px;
  line-height: 1.8;
}

body:not([data-route="painel-demo/"]) .notice {
  font-size: 14px !important;
  line-height: 1.8;
}

body:not([data-route="painel-demo/"]) .channel-switch,
body:not([data-route="painel-demo/"]) .catalog-category-tabs > a,
body:not([data-route="painel-demo/"]) .filter-trigger,
body:not([data-route="painel-demo/"]) .catalog-count,
body:not([data-route="painel-demo/"]) .sort-control,
body:not([data-route="painel-demo/"]) .filter-chip,
body:not([data-route="painel-demo/"]) .catalog-bottom {
  font-size: 14px;
  line-height: 1.5;
}

body:not([data-route="painel-demo/"]) .catalog-tools {
  flex-wrap: wrap;
  gap: 16px;
}

body:not([data-route="painel-demo/"]) .catalog-search {
  flex: 1 1 210px;
  width: auto;
  min-width: 160px;
}

body:not([data-route="painel-demo/"]) .catalog-search > input,
body:not([data-route="painel-demo/"]) .sort-control select,
body:not([data-route="painel-demo/"]) .product-purchase select,
body:not([data-route="painel-demo/"]) .contact-form input,
body:not([data-route="painel-demo/"]) .contact-form select,
body:not([data-route="painel-demo/"]) .message-dialog textarea,
body:not([data-route="painel-demo/"]) .quantity-control input {
  font-size: 16px;
  line-height: 1.5;
}

body:not([data-route="painel-demo/"]) .catalog-search > input,
body:not([data-route="painel-demo/"]) .sort-control select {
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .sort-control {
  min-width: 0;
  max-width: 100%;
  flex: 0 1 auto;
}

body:not([data-route="painel-demo/"]) .sort-control select {
  min-width: 0;
  max-width: 205px;
}

body:not([data-route="painel-demo/"]) .filter-chips .text-link {
  font-size: 14px;
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .filter-chip {
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .channel-switch {
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .gallery-main > span,
body:not([data-route="painel-demo/"]) .product-price small,
body:not([data-route="painel-demo/"]) .variant-label {
  font-size: 14px;
  line-height: 1.6;
}

body:not([data-route="painel-demo/"]) .product-price > span {
  font-size: 19px;
}

body:not([data-route="painel-demo/"]) .channel-pills button {
  min-height: 44px;
  padding: 10px 16px;
  font-size: 14px;
  line-height: 1.5;
}

body:not([data-route="painel-demo/"]) .product-purchase-actions .button {
  font-size: 14px;
  min-height: 52px;
  padding-inline: 16px;
  gap: 12px;
}

body:not([data-route="painel-demo/"]) .quantity-control > span {
  font-size: 16px;
}

body:not([data-route="painel-demo/"]) .quantity-control button {
  min-width: 44px;
}

body:not([data-route="painel-demo/"]) .product-accordions summary,
body:not([data-route="painel-demo/"]) .faq summary {
  font-size: 16px;
  line-height: 1.6;
  gap: 18px;
}

body:not([data-route="painel-demo/"]) .product-accordions details > p,
body:not([data-route="painel-demo/"]) .product-accordions details > a,
body:not([data-route="painel-demo/"]) .product-accordions dt,
body:not([data-route="painel-demo/"]) .product-accordions dd {
  font-size: 14px;
  line-height: 1.7;
}

body:not([data-route="painel-demo/"]) .product-accordions dl > div {
  gap: 14px;
}

body:not([data-route="painel-demo/"]) .product-accordions dt,
body:not([data-route="painel-demo/"]) .product-accordions dd {
  min-width: 0;
  overflow-wrap: anywhere;
}

/* Informational pages, forms, selection and visitor dialogs. */
body:not([data-route="painel-demo/"]) .steps article > span {
  font-size: 14px;
}

body:not([data-route="painel-demo/"]) .service-strip strong,
body:not([data-route="painel-demo/"]) .contact-form label,
body:not([data-route="painel-demo/"]) .selection-toolbar,
body:not([data-route="painel-demo/"]) .bag-item strong,
body:not([data-route="painel-demo/"]) .bag-summary dl,
body:not([data-route="painel-demo/"]) .bag-summary p {
  font-size: 16px;
  line-height: 1.65;
}

body:not([data-route="painel-demo/"]) .service-strip small,
body:not([data-route="painel-demo/"]) .contact-form > small,
body:not([data-route="painel-demo/"]) .contact-cards small,
body:not([data-route="painel-demo/"]) .bag-item .subtle,
body:not([data-route="painel-demo/"]) .bag-summary small {
  font-size: 14px;
  line-height: 1.7;
}

body:not([data-route="painel-demo/"]) .service-strip > a > span,
body:not([data-route="painel-demo/"]) .bag-item > div {
  min-width: 0;
}

body:not([data-route="painel-demo/"]) .bag-item .text-link,
body:not([data-route="painel-demo/"]) .bag-summary .button,
body:not([data-route="painel-demo/"]) .bag-summary .text-link,
body:not([data-route="painel-demo/"]) .selection-toolbar .text-link {
  font-size: 14px;
  line-height: 1.5;
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .bag-item-bottom {
  flex-wrap: wrap;
  gap: 12px;
}

body:not([data-route="painel-demo/"]) .bag-item .quantity-control {
  height: 44px;
}

body:not([data-route="painel-demo/"]) .bag-item .quantity-control > span {
  font-size: 16px;
  min-width: 32px;
}

body:not([data-route="painel-demo/"]) .bag-item .quantity-control button {
  min-width: 44px;
}

body:not([data-route="painel-demo/"]) .drawer-categories,
body:not([data-route="painel-demo/"]) .search-dialog > .subtle,
body:not([data-route="painel-demo/"]) .search-hit small,
body:not([data-route="painel-demo/"]) .filter-option,
body:not([data-route="painel-demo/"]) .message-dialog > p,
body:not([data-route="painel-demo/"]) .message-dialog > .text-link,
body:not([data-route="painel-demo/"]) .preference-row strong,
body:not([data-route="painel-demo/"]) .preference-row small,
body:not([data-route="painel-demo/"]) .toast,
body:not([data-route="painel-demo/"]) .toast > a {
  font-size: 14px;
  line-height: 1.65;
}

body:not([data-route="painel-demo/"]) .filter-fields legend {
  font-size: 16px;
  line-height: 1.5;
}

body:not([data-route="painel-demo/"]) .filter-option {
  min-height: 44px;
}

body:not([data-route="painel-demo/"]) .filter-option > small {
  font-size: 13px;
}

body:not([data-route="painel-demo/"]) .filter-actions {
  flex-wrap: wrap;
  gap: 12px;
}

body:not([data-route="painel-demo/"]) .filter-actions .button,
body:not([data-route="painel-demo/"]) .filter-actions .text-link {
  font-size: 14px;
  gap: 12px;
}

body:not([data-route="painel-demo/"]) .filter-option input {
  width: 20px;
  height: 20px;
}

/* Footer labels retain a quieter hierarchy without becoming miniature text. */
body:not([data-route="painel-demo/"]) .footer-top h2 {
  font-size: 13px;
  line-height: 1.5;
  letter-spacing: .07em;
}

body:not([data-route="painel-demo/"]) .footer-top > div > a:not(.brand),
body:not([data-route="painel-demo/"]) .footer-top .footer-brand > a.text-link,
body:not([data-route="painel-demo/"]) .footer-top > div > p:not(.footer-brand p),
body:not([data-route="painel-demo/"]) .footer-bottom,
body:not([data-route="painel-demo/"]) .footer-bottom button {
  font-size: 13px;
  line-height: 1.7;
}

body:not([data-route="painel-demo/"]) .footer-top .footer-note {
  font-size: 13px !important;
  color: #b1ada1 !important;
  line-height: 1.7;
}

body:not([data-route="painel-demo/"]) .footer-top > div > a:not(.brand),
body:not([data-route="painel-demo/"]) .footer-bottom a,
body:not([data-route="painel-demo/"]) .footer-bottom button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

body:not([data-route="painel-demo/"]) .footer-top > div > a:not(.brand) {
  display: flex;
}

body:not([data-route="painel-demo/"]) .demo-note {
  font-size: 12px;
  line-height: 1.75;
  color: #bab6aa;
}

@media (max-width: 1100px) {
  body:not([data-route="painel-demo/"]) .desktop-nav {
    gap: 18px;
  }

  body:not([data-route="painel-demo/"]) .desktop-nav .nav-shop {
    padding-inline: 15px;
  }

  body:not([data-route="painel-demo/"]) .hero-actions {
    gap: 10px 16px;
  }

  body:not([data-route="painel-demo/"]) .channel-switch {
    min-width: 0;
    max-width: 200px;
    white-space: normal;
  }
}

@media (max-width: 800px) {
  body:not([data-route="painel-demo/"]) .desktop-nav {
    gap: 15px;
  }

  body:not([data-route="painel-demo/"]) .desktop-nav .nav-shop {
    padding-inline: 13px;
  }

  body:not([data-route="painel-demo/"]) .header-actions .icon-button {
    min-width: 44px;
    min-height: 44px;
  }

  body:not([data-route="painel-demo/"]) .section-head .text-link {
    margin-top: 0;
  }

  body:not([data-route="painel-demo/"]) .catalog-tools .filter-trigger {
    font-size: 14px;
    padding-inline: 14px;
    min-height: 48px;
  }

  body:not([data-route="painel-demo/"]) .category-nav,
  body:not([data-route="painel-demo/"]) .catalog-category-tabs {
    justify-content: flex-start;
    scrollbar-width: thin;
    scrollbar-color: #bba782 transparent;
  }

  body:not([data-route="painel-demo/"]) .category-nav::-webkit-scrollbar,
  body:not([data-route="painel-demo/"]) .catalog-category-tabs::-webkit-scrollbar {
    display: block;
    height: 3px;
  }

  body:not([data-route="painel-demo/"]) .category-nav::-webkit-scrollbar-thumb,
  body:not([data-route="painel-demo/"]) .catalog-category-tabs::-webkit-scrollbar-thumb {
    background: #bba782;
  }

  body:not([data-route="painel-demo/"]) .channel-switch {
    max-width: 190px;
  }
}

@media (max-width: 600px) {
  body:not([data-route="painel-demo/"]) {
    padding-bottom: calc(72px + env(safe-area-inset-bottom));
  }

  body:not([data-route="painel-demo/"]) .category-nav {
    gap: 25px;
    padding-inline: 18px;
  }

  body:not([data-route="painel-demo/"]) .hero-actions {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: min(100%, 340px);
    gap: 10px;
  }

  body:not([data-route="painel-demo/"]) .hero-actions .button {
    width: 100%;
    min-width: 0;
    min-height: 52px;
    font-size: 16px;
    gap: 16px;
  }

  body:not([data-route="painel-demo/"]) .hero-actions .text-link {
    min-height: 48px;
    justify-content: center;
    font-size: 14px;
    gap: 12px;
  }

  body:not([data-route="painel-demo/"]) .hero-helper {
    font-size: 14px;
    max-width: 32ch;
    margin-top: 12px;
  }

  body:not([data-route="painel-demo/"]) .hero-image-caption {
    max-width: calc(100% - 40px);
  }

  body:not([data-route="painel-demo/"]) .brand-strip {
    padding: 16px 18px;
    gap: 10px 16px;
  }

  body:not([data-route="painel-demo/"]) .section-head .text-link {
    width: auto;
    max-width: none;
    font-size: 14px;
  }

  body:not([data-route="painel-demo/"]) .catalog-search {
    flex: 1 1 150px;
    min-width: 0;
  }

  body:not([data-route="painel-demo/"]) .catalog-count {
    margin-left: 0;
    flex: 1 1 100px;
  }

  body:not([data-route="painel-demo/"]) .sort-control {
    flex: 1 1 210px;
    margin-left: 0;
    justify-content: space-between;
  }

  body:not([data-route="painel-demo/"]) .sort-control select {
    flex: 1;
    max-width: 220px;
  }

  body:not([data-route="painel-demo/"]) .channel-switch {
    max-width: 100%;
  }

  body:not([data-route="painel-demo/"]) .product-purchase-actions {
    flex-wrap: wrap;
    gap: 12px;
  }

  body:not([data-route="painel-demo/"]) .product-purchase-actions > .button {
    order: 3;
    flex-basis: 100%;
    width: 100%;
    min-height: 52px;
    font-size: 14px;
  }

  body:not([data-route="painel-demo/"]) .product-purchase-actions .quantity-control {
    flex: 0 0 136px;
    width: 136px;
  }

  body:not([data-route="painel-demo/"]) .product-purchase-actions .quantity-control button {
    width: 44px;
  }

  body:not([data-route="painel-demo/"]) .product-purchase-actions .quantity-control input {
    width: 46px;
  }

  body:not([data-route="painel-demo/"]) .product-save {
    margin-left: auto;
    min-width: 48px;
  }

  body:not([data-route="painel-demo/"]) .selection-section > .channel-pills button {
    min-width: 0;
    padding-inline: 10px;
    font-size: 14px;
  }

  body:not([data-route="painel-demo/"]) .selection-toolbar {
    flex-wrap: wrap;
    gap: 12px;
  }

  body:not([data-route="painel-demo/"]) .mobile-bottom {
    height: calc(72px + env(safe-area-inset-bottom));
    padding: 6px 8px calc(6px + env(safe-area-inset-bottom));
  }

  body:not([data-route="painel-demo/"]) .mobile-bottom > a {
    flex: 1;
    min-width: 0;
    min-height: 60px;
    padding: 3px 2px;
    gap: 4px;
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
  }

  body:not([data-route="painel-demo/"]) .mobile-bottom b {
    font-size: 12px;
  }

  body:not([data-route="painel-demo/"]) .toast {
    bottom: calc(88px + env(safe-area-inset-bottom));
  }

  body:not([data-route="painel-demo/"]) .message-dialog > .button,
  body:not([data-route="painel-demo/"]) .inline-actions .button {
    font-size: 14px;
  }
}
