
.ecommerce-store__gallery-empty { align-items: center; background: var(--store-soft); border: 1px dashed var(--store-line); color: var(--store-muted); display: flex; font-size: 12px; gap: 7px; line-height: 1.4; margin: 10px 0 0; padding: 10px; }.ecommerce-store__gallery-empty i { color: var(--store-accent); font-size: 16px; }
.ecommerce-store { --store-ink: #152b31; --store-muted: #637277; --store-line: #dfe6e5; --store-surface: #fff; --store-soft: #f4f7f6; --store-accent: #13846d; --store-accent-dark: #0d6453; --store-header-background: #ffffff; --store-header-text: #152b31; --store-warm: #d65d46; background: #fbfcfb; color: var(--store-ink); min-height: 100vh; }
.ecommerce-store *, .ecommerce-store *::before, .ecommerce-store *::after { box-sizing: border-box; }
.ecommerce-store__header { background: var(--store-header-background); border-bottom: 1px solid var(--store-line); position: sticky; top: 0; z-index: 20; }
.ecommerce-store__header-inner, .ecommerce-store__content { margin: 0 auto; max-width: 1240px; padding-left: 24px; padding-right: 24px; }
.ecommerce-store__product-info del { color: #8b9998; font-size: 11px; font-weight: 600; line-height: 1.1; }.ecommerce-store__product-info b.is-promotion, .ecommerce-store__pricing strong.is-promotion { color: #bb552f; }.ecommerce-store__pricing { display: grid; gap: 3px; margin-top: 10px; }.ecommerce-store__pricing del { color: var(--store-muted); font-size: 13px; font-weight: 600; }.ecommerce-store__pricing strong { color: var(--store-accent-dark); font-size: 22px; }.ecommerce-store__variations { border-top: 1px solid var(--store-line); display: grid; gap: 15px; padding-top: 20px; }.ecommerce-store__variations-heading { display: grid; gap: 3px; }.ecommerce-store__variations-heading > strong, .ecommerce-store__variation-group > strong { color: var(--store-ink); font-size: 13px; font-weight: 800; }.ecommerce-store__variations-heading small { color: var(--store-muted); font-size: 12px; }.ecommerce-store__variation-group { display: grid; gap: 8px; }.ecommerce-store__variation-group > div { display: flex; flex-wrap: wrap; gap: 7px; }.ecommerce-store__variation-group button { background: #fff; border: 1px solid var(--store-line); border-radius: 5px; color: var(--store-ink); font-size: 12px; font-weight: 700; padding: 7px 10px; }.ecommerce-store__variation-group button.is-selected { background: #eaf4f1; border-color: var(--store-accent); color: var(--store-accent-dark); }.ecommerce-store__cart-item > div:nth-child(2) small + small { margin-top: 2px; }
@media (max-width: 575.98px) { .ecommerce-store__variations { gap: 13px; }.ecommerce-store__variation-group button { padding: 7px 9px; } }
.ecommerce-store__variation-group button { align-items: center; display: inline-flex; gap: 6px; justify-content: center; min-height: 34px; }.ecommerce-store__variation-group button.is-icon i { font-size: 15px; }.ecommerce-store__variation-group button.is-color { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .3); }.ecommerce-store__variation-group button.is-color.is-selected { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--store-accent); }.ecommerce-store__variation-group button:focus-visible { outline: 3px solid var(--store-accent); outline-offset: 2px; }
.ecommerce-store__header-inner { align-items: center; display: flex; height: 72px; justify-content: space-between; }
.ecommerce-store__brand { align-items: center; background: transparent; border: 0; color: var(--store-header-text); display: flex; gap: 10px; min-width: 0; padding: 0; text-align: left; }.ecommerce-store__brand > span:last-child { display: grid; min-width: 0; }.ecommerce-store__brand strong { font-size: 16px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.ecommerce-store__brand small { color: var(--store-header-text); font-size: 11px; margin-top: 1px; opacity: .7; }.ecommerce-store__brand-mark, .ecommerce-store__brand-logo { align-items: center; background: var(--store-header-text); border-radius: 7px; color: var(--store-header-background); display: inline-flex; flex: 0 0 38px; font-size: 18px; height: 38px; justify-content: center; overflow: hidden; width: 38px; }.ecommerce-store__brand-logo { background: rgba(255, 255, 255, .88); }.ecommerce-store__brand-logo img { height: 100%; object-fit: contain; width: 100%; }
.ecommerce-store__cart-button { align-items: center; background: transparent; border: 1px solid currentColor; border-radius: 7px; color: var(--store-header-text); display: inline-flex; font-size: 13px; font-weight: 700; gap: 8px; height: 40px; padding: 0 12px; }.ecommerce-store__cart-button i { font-size: 17px; }.ecommerce-store__cart-button b { align-items: center; background: var(--store-warm); border-radius: 99px; color: #fff; display: inline-flex; font-size: 10px; height: 18px; justify-content: center; min-width: 18px; padding: 0 4px; }
.ecommerce-store__content { padding-bottom: 56px; padding-top: 32px; }.ecommerce-store__loading, .ecommerce-store__state { align-items: center; display: flex; flex-direction: column; justify-content: center; min-height: 340px; text-align: center; }.ecommerce-store__loading { color: var(--store-muted); gap: 12px; }.ecommerce-store__loading .spinner-border, .ecommerce-store__detail-state .spinner-border { color: var(--store-accent); height: 28px; width: 28px; }.ecommerce-store__loading p { margin: 0; }.ecommerce-store__state { margin: 0 auto; max-width: 440px; }.ecommerce-store__state-icon { align-items: center; background: #edf5f2; border-radius: 50%; color: var(--store-accent); display: inline-flex; font-size: 25px; height: 58px; justify-content: center; margin-bottom: 14px; width: 58px; }.ecommerce-store__state h1, .ecommerce-store__state h2 { font-size: 21px; font-weight: 800; margin: 0; }.ecommerce-store__state h2 { font-size: 17px; }.ecommerce-store__state p { color: var(--store-muted); font-size: 14px; margin: 8px 0 18px; }.ecommerce-store__state--inline { min-height: 260px; }.ecommerce-store__notice { border-radius: 7px; font-size: 13px; margin-bottom: 22px; }
.ecommerce-store__footer { background: var(--store-ink); color: #f6fbfa; }.ecommerce-store__footer-inner { display: grid; gap: 32px; grid-template-columns: minmax(0, 1.15fr) minmax(220px, .9fr) auto; margin: 0 auto; max-width: 1240px; padding: 40px 24px; }.ecommerce-store__footer-brand { display: grid; align-content: start; gap: 7px; min-width: 0; }.ecommerce-store__footer-brand .ecommerce-store__eyebrow { color: #94cabd; margin: 0; }.ecommerce-store__footer-brand > strong { font-size: 20px; font-weight: 800; }.ecommerce-store__footer-brand > p { color: #c6d5d2; font-size: 13px; line-height: 1.5; margin: 0; max-width: 420px; overflow-wrap: anywhere; }.ecommerce-store__footer-contacts { display: grid; gap: 10px; margin: 0; min-width: 0; }.ecommerce-store__footer-contacts a, .ecommerce-store__footer-contacts p { align-items: flex-start; color: #eef7f5; display: flex; font-size: 13px; gap: 9px; line-height: 1.4; margin: 0; min-width: 0; text-decoration: none; }.ecommerce-store__footer-contacts a:hover, .ecommerce-store__footer-contacts a:focus { color: #aee1d4; }.ecommerce-store__footer-contacts i { color: #94cabd; flex: 0 0 auto; font-size: 16px; margin-top: 1px; }.ecommerce-store__footer-contacts span { overflow-wrap: anywhere; }.ecommerce-store__footer-social { align-content: start; display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }.ecommerce-store__footer-social a { align-items: center; border: 1px solid rgba(226, 244, 239, .35); color: #eef7f5; display: inline-flex; font-size: 12px; font-weight: 700; gap: 7px; min-height: 34px; padding: 0 10px; text-decoration: none; }.ecommerce-store__footer-social a:hover, .ecommerce-store__footer-social a:focus { background: rgba(255, 255, 255, .1); border-color: #aee1d4; color: #fff; }.ecommerce-store__footer-social i { font-size: 15px; }
.ecommerce-store__hero { margin-bottom: 36px; }.ecommerce-store__hero-action { background: #173d41; border: 0; color: #fff; display: block; height: clamp(330px, 36vw, 440px); overflow: hidden; padding: 0; position: relative; text-align: left; width: 100%; }.ecommerce-store__hero-media, .ecommerce-store__hero-shade { inset: 0; position: absolute; }.ecommerce-store__hero-media { background: #e9f0ee; display: block; }.ecommerce-store__hero-media img { height: 100%; object-fit: cover; width: 100%; }.ecommerce-store__hero-placeholder { background: #e9f0ee; color: #76908c; font-size: 72px; }.ecommerce-store__hero-shade { background: rgba(12, 35, 39, .63); }.ecommerce-store__hero-content { bottom: clamp(28px, 5vw, 62px); display: grid; gap: 11px; left: clamp(24px, 6vw, 76px); max-width: min(560px, calc(100% - 48px)); position: absolute; z-index: 1; }.ecommerce-store__hero-content .ecommerce-store__eyebrow { color: #b9ded5; margin: 0; }.ecommerce-store__hero-content > strong { font-size: clamp(28px, 4vw, 52px); font-weight: 800; line-height: 1.06; }.ecommerce-store__hero-price { align-items: baseline; display: flex; flex-wrap: wrap; gap: 9px; }.ecommerce-store__hero-price del { color: #d7e0de; font-size: 14px; font-weight: 600; }.ecommerce-store__hero-price b { color: #fff; font-size: 21px; }.ecommerce-store__hero-price b.is-promotion { color: #ffd5bd; }.ecommerce-store__hero-link { align-items: center; display: inline-flex; font-size: 13px; font-weight: 800; gap: 8px; margin-top: 6px; }.ecommerce-store__hero-link i { font-size: 16px; transition: transform .16s ease; }.ecommerce-store__hero-action:hover .ecommerce-store__hero-link i, .ecommerce-store__hero-action:focus-visible .ecommerce-store__hero-link i { transform: translateX(4px); }.ecommerce-store__hero-action:focus-visible { outline: 3px solid #85d6c2; outline-offset: 3px; }
.ecommerce-store__catalog-head { align-items: flex-end; display: flex; gap: 28px; justify-content: space-between; margin: 14px 0 24px; }.ecommerce-store__eyebrow { color: var(--store-accent); font-size: 11px; font-weight: 800; letter-spacing: .06em; margin: 0 0 5px; text-transform: uppercase; }.ecommerce-store__catalog-head h1, .ecommerce-store__detail-info h1 { color: var(--store-ink); font-size: 30px; font-weight: 800; letter-spacing: 0; margin: 0; }.ecommerce-store__catalog-head p:not(.ecommerce-store__eyebrow) { color: var(--store-muted); font-size: 14px; margin: 6px 0 0; max-width: 620px; }.ecommerce-store__search { align-items: center; background: #fff; border: 1px solid var(--store-line); border-radius: 7px; display: flex; flex: 0 1 310px; gap: 9px; height: 44px; padding: 0 12px; }.ecommerce-store__search i { color: var(--store-muted); }.ecommerce-store__search input { border: 0; color: var(--store-ink); font-size: 14px; min-width: 0; outline: 0; width: 100%; }.ecommerce-store__search:focus-within { border-color: var(--store-accent); box-shadow: 0 0 0 3px rgba(19,132,109,.12); }
.ecommerce-store__categories { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; }.ecommerce-store__categories button { background: #fff; border: 1px solid var(--store-line); border-radius: 99px; color: var(--store-muted); font-size: 12px; font-weight: 700; padding: 7px 12px; }.ecommerce-store__categories button.is-selected { background: var(--store-ink); border-color: var(--store-ink); color: #fff; }
.ecommerce-store__product-grid { display: grid; gap: 20px; grid-template-columns: repeat(4, minmax(0, 1fr)); }.ecommerce-store__product-card { background: var(--store-surface); border: 1px solid var(--store-line); border-radius: 7px; min-width: 0; overflow: hidden; transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease; }.ecommerce-store__product-card:hover { border-color: #b8ceca; box-shadow: 0 10px 26px rgba(21,43,49,.08); transform: translateY(-2px); }.ecommerce-store__product-card > button { background: transparent; border: 0; display: block; padding: 0; text-align: left; width: 100%; }.ecommerce-store__product-media { background: #edf2f1; display: block; height: 210px; overflow: hidden; position: relative; }.ecommerce-store__product-media img { height: 100%; object-fit: cover; width: 100%; }.ecommerce-store__product-media em { background: rgba(21,43,49,.78); bottom: 10px; border-radius: 4px; color: #fff; font-size: 10px; font-style: normal; font-weight: 700; left: 10px; padding: 4px 6px; position: absolute; }.ecommerce-store__placeholder { align-items: center; color: #9aabaa; display: flex; font-size: 28px; height: 100%; justify-content: center; width: 100%; }.ecommerce-store__product-info { display: grid; gap: 3px; padding: 13px; }.ecommerce-store__product-info strong { color: var(--store-ink); font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.ecommerce-store__product-info small { color: var(--store-muted); font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.ecommerce-store__product-info b { color: var(--store-accent-dark); font-size: 14px; margin-top: 4px; }.ecommerce-store__load-more { display: flex; justify-content: center; margin-top: 28px; }
.ecommerce-store__skeleton-grid { display: grid; gap: 20px; grid-template-columns: repeat(4, minmax(0, 1fr)); }.ecommerce-store__skeleton-grid article { border: 1px solid var(--store-line); border-radius: 7px; overflow: hidden; padding-bottom: 14px; }.ecommerce-store__skeleton-grid span, .ecommerce-store__skeleton-grid i { animation: ecommerce-store-pulse 1.3s ease-in-out infinite; background: #e9efed; display: block; }.ecommerce-store__skeleton-grid span { height: 210px; }.ecommerce-store__skeleton-grid i { height: 12px; margin: 14px 14px 0; width: 60%; }.ecommerce-store__skeleton-grid i:last-child { margin-top: 8px; width: 36%; }@keyframes ecommerce-store-pulse { 50% { opacity: .5; } }
.ecommerce-store__detail { padding-top: 4px; }.ecommerce-store__back { background: transparent; border: 0; color: var(--store-muted); font-size: 13px; font-weight: 700; margin-bottom: 20px; padding: 0; }.ecommerce-store__back i { margin-right: 6px; }.ecommerce-store__detail-grid { display: grid; gap: clamp(30px, 5vw, 72px); grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr); }.ecommerce-store__gallery-main { align-items: center; background: #edf2f1; display: flex; height: min(540px, 55vw); justify-content: center; overflow: hidden; }.ecommerce-store__gallery-main img { height: 100%; object-fit: contain; width: 100%; }.ecommerce-store__placeholder--large { font-size: 52px; }.ecommerce-store__gallery-thumbnails { display: flex; gap: 9px; margin-top: 10px; overflow-x: auto; padding-bottom: 2px; }.ecommerce-store__gallery-thumbnails button { background: #edf2f1; border: 1px solid transparent; border-radius: 5px; flex: 0 0 62px; height: 62px; overflow: hidden; padding: 0; }.ecommerce-store__gallery-thumbnails button.is-selected { border-color: var(--store-accent); }.ecommerce-store__gallery-thumbnails img { height: 100%; object-fit: cover; width: 100%; }.ecommerce-store__detail-info { display: grid; align-content: start; gap: 22px; padding-top: 8px; }.ecommerce-store__detail-info > div:first-child > strong { color: var(--store-accent-dark); display: block; font-size: 22px; margin-top: 10px; }.ecommerce-store__detail-categories { display: flex; flex-wrap: wrap; gap: 7px; }.ecommerce-store__detail-categories span { background: #edf5f2; border-radius: 4px; color: var(--store-accent-dark); font-size: 11px; font-weight: 700; padding: 5px 7px; }.ecommerce-store__description { border-top: 1px solid var(--store-line); color: #445458; font-size: 14px; line-height: 1.6; padding-top: 20px; }.ecommerce-store__description > *:first-child { margin-top: 0; }.ecommerce-store__description > *:last-child { margin-bottom: 0; }.ecommerce-store__fulfillment { align-items: flex-start; background: var(--store-soft); border-radius: 7px; display: flex; gap: 10px; padding: 12px; }.ecommerce-store__fulfillment > i { color: var(--store-accent); font-size: 18px; }.ecommerce-store__fulfillment span { display: grid; }.ecommerce-store__fulfillment strong { font-size: 12px; }.ecommerce-store__fulfillment small { color: var(--store-muted); font-size: 12px; margin-top: 2px; }.ecommerce-store__unavailable { color: #a04332; font-size: 13px; margin: 0; }.ecommerce-store__add-button { align-items: center; display: inline-flex; font-weight: 700; gap: 8px; justify-content: center; min-height: 46px; width: 100%; }
.ecommerce-store__cart-backdrop { background: rgba(17,32,36,.42); inset: 0; position: fixed; z-index: 39; }.ecommerce-store__cart { background: #fff; box-shadow: -14px 0 36px rgba(19,38,44,.16); display: flex; flex-direction: column; height: 100vh; max-width: min(420px, 100vw); position: fixed; right: 0; top: 0; width: 100%; z-index: 40; }.ecommerce-store__cart header { align-items: center; border-bottom: 1px solid var(--store-line); display: flex; justify-content: space-between; padding: 20px; }.ecommerce-store__cart header h2 { font-size: 19px; font-weight: 800; margin: 0; }.ecommerce-store__cart header .btn { align-items: center; display: inline-flex; height: 34px; justify-content: center; padding: 0; width: 34px; }.ecommerce-store__cart-body { flex: 1; overflow: auto; padding: 14px 20px; }.ecommerce-store__cart-empty { align-items: center; color: var(--store-muted); display: flex; flex-direction: column; gap: 6px; justify-content: center; min-height: 280px; text-align: center; }.ecommerce-store__cart-empty i { color: #9aabaa; font-size: 34px; }.ecommerce-store__cart-empty strong { color: var(--store-ink); font-size: 15px; }.ecommerce-store__cart-empty span { font-size: 13px; }.ecommerce-store__cart-item { border-bottom: 1px solid var(--store-line); display: grid; gap: 10px; grid-template-columns: 64px minmax(0, 1fr) auto; padding: 14px 0; }.ecommerce-store__cart-image { background: #edf2f1; height: 64px; overflow: hidden; width: 64px; }.ecommerce-store__cart-image img { height: 100%; object-fit: cover; width: 100%; }.ecommerce-store__cart-image .ecommerce-store__placeholder { font-size: 18px; }.ecommerce-store__cart-item > div:nth-child(2) { display: grid; min-width: 0; }.ecommerce-store__cart-item > div:nth-child(2) strong { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.ecommerce-store__cart-item > div:nth-child(2) small { color: var(--store-muted); font-size: 11px; margin-top: 1px; }.ecommerce-store__quantity { align-items: center; display: flex; gap: 3px; margin-top: 8px; }.ecommerce-store__quantity button { align-items: center; background: var(--store-soft); border: 1px solid var(--store-line); border-radius: 4px; color: var(--store-ink); display: inline-flex; height: 24px; justify-content: center; padding: 0; width: 24px; }.ecommerce-store__quantity button:disabled { opacity: .6; }.ecommerce-store__quantity b { font-size: 12px; text-align: center; width: 22px; }.ecommerce-store__cart-item-total { align-items: flex-end; display: flex; flex-direction: column; justify-content: space-between; }.ecommerce-store__cart-item-total strong { color: var(--store-accent-dark); font-size: 12px; white-space: nowrap; }.ecommerce-store__cart-item-total button { background: transparent; border: 0; color: #a65546; font-size: 15px; padding: 0; }.ecommerce-store__cart footer { border-top: 1px solid var(--store-line); display: grid; gap: 3px; grid-template-columns: 1fr auto; padding: 18px 20px 22px; }.ecommerce-store__cart footer span { color: var(--store-muted); font-size: 13px; }.ecommerce-store__cart footer strong { color: var(--store-ink); font-size: 19px; }.ecommerce-store__cart footer small { color: var(--store-muted); font-size: 11px; grid-column: 1 / span 2; margin-top: 6px; }
@media (max-width: 991.98px) { .ecommerce-store__product-grid, .ecommerce-store__skeleton-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }.ecommerce-store__detail-grid { grid-template-columns: minmax(0, 1fr) minmax(280px, .8fr); }.ecommerce-store__gallery-main { height: min(480px, 56vw); }.ecommerce-store__footer-inner { grid-template-columns: minmax(0, 1fr) minmax(210px, .85fr); }.ecommerce-store__footer-social { grid-column: 1 / span 2; justify-content: flex-start; } }
@media (max-width: 767.98px) { .ecommerce-store__header-inner, .ecommerce-store__content { padding-left: 16px; padding-right: 16px; }.ecommerce-store__content { padding-top: 20px; }.ecommerce-store__header-inner { height: 64px; }.ecommerce-store__cart-button span { display: none; }.ecommerce-store__hero { margin-bottom: 28px; }.ecommerce-store__hero-action { height: clamp(300px, 105vw, 390px); }.ecommerce-store__hero-content { bottom: 28px; left: 24px; max-width: calc(100% - 48px); }.ecommerce-store__hero-content > strong { font-size: 30px; }.ecommerce-store__catalog-head { align-items: stretch; flex-direction: column; gap: 18px; margin-top: 4px; }.ecommerce-store__catalog-head h1, .ecommerce-store__detail-info h1 { font-size: 25px; }.ecommerce-store__search { flex-basis: 44px; }.ecommerce-store__product-grid, .ecommerce-store__skeleton-grid { gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }.ecommerce-store__product-media, .ecommerce-store__skeleton-grid span { height: 180px; }.ecommerce-store__product-info { padding: 10px; }.ecommerce-store__detail-grid { grid-template-columns: 1fr; }.ecommerce-store__gallery-main { height: min(480px, calc(100vw - 32px)); }.ecommerce-store__detail-info { gap: 18px; padding-top: 0; }.ecommerce-store__state { min-height: 300px; }.ecommerce-store__footer-inner { gap: 24px; grid-template-columns: 1fr; padding: 32px 16px; }.ecommerce-store__footer-social { grid-column: auto; justify-content: flex-start; }.ecommerce-store__cart { max-width: 100%; } }
@media (max-width: 374.98px) { .ecommerce-store__product-grid, .ecommerce-store__skeleton-grid { grid-template-columns: 1fr; }.ecommerce-store__product-media, .ecommerce-store__skeleton-grid span { height: 230px; } }
.ecommerce-store__cart-discount { color: #117561 !important; }.ecommerce-store__cart-total { border-top: 1px solid var(--store-line); color: var(--store-ink) !important; font-weight: 800; margin-top: 8px; padding-top: 8px; }.ecommerce-store__coupon { border-bottom: 1px solid var(--store-line); padding: 16px 0 4px; }.ecommerce-store__coupon-toggle { background: transparent; border: 0; color: var(--store-accent-dark); font-size: 12px; font-weight: 800; padding: 0 0 12px; }.ecommerce-store__coupon-toggle i { margin-right: 5px; }.ecommerce-store__coupon-form { background: var(--store-soft); border: 1px solid var(--store-line); display: grid; gap: 10px; padding: 12px; }.ecommerce-store__coupon-heading { align-items: center; display: flex; gap: 8px; justify-content: space-between; }.ecommerce-store__coupon-heading strong { color: var(--store-ink); font-size: 12px; }.ecommerce-store__coupon-heading strong i { color: #117561; margin-right: 3px; }.ecommerce-store__coupon-heading button { background: transparent; border: 0; color: #a65546; font-size: 11px; font-weight: 700; padding: 0; }.ecommerce-store__coupon-form .input-group .btn { min-width: 76px; }.ecommerce-store__coupon-cpf { display: grid; gap: 5px; }.ecommerce-store__coupon-cpf label { color: var(--store-muted); font-size: 11px; font-weight: 700; }.ecommerce-store__coupon-error { align-items: flex-start; color: #a34335; display: flex; font-size: 11px; gap: 5px; line-height: 1.35; margin: 0; }.ecommerce-store__coupon-form > small { color: var(--store-muted); font-size: 10px; line-height: 1.35; }
.ecommerce-store__cart-header-actions { display: flex; gap: 7px; }.ecommerce-store__checkout { padding-top: 20px; }.ecommerce-store__checkout-loading { align-items: center; color: var(--store-muted); display: flex; font-size: 13px; gap: 8px; min-height: 180px; justify-content: center; text-align: center; }.ecommerce-store__checkout-error { color: var(--store-muted); display: grid; gap: 12px; min-height: 180px; place-content: center; text-align: center; }.ecommerce-store__checkout-error p { margin: 0; }.ecommerce-store__checkout form { display: grid; gap: 22px; }.ecommerce-store__checkout-section { border-bottom: 1px solid var(--store-line); display: grid; gap: 12px; padding-bottom: 20px; }.ecommerce-store__checkout-section-heading { display: grid; gap: 2px; }.ecommerce-store__checkout-section-heading > strong { color: var(--store-ink); font-size: 14px; }.ecommerce-store__checkout-section-heading > small { color: var(--store-muted); font-size: 11px; }.ecommerce-store__checkout-fields { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }.ecommerce-store__checkout-field { color: var(--store-ink); display: grid; font-size: 12px; font-weight: 700; gap: 5px; min-width: 0; }.ecommerce-store__checkout-field--wide { grid-column: 1 / -1; }.ecommerce-store__checkout-field small { color: var(--store-muted); font-size: 10px; font-weight: 600; }.ecommerce-store__checkout-field .form-control, .ecommerce-store__checkout-field .form-select { border-color: var(--store-line); color: var(--store-ink); font-size: 14px; min-height: 40px; }.ecommerce-store__checkout-options { display: grid; gap: 8px; }.ecommerce-store__checkout-options label { align-items: flex-start; border: 1px solid var(--store-line); cursor: pointer; display: flex; gap: 9px; margin: 0; padding: 11px; }.ecommerce-store__checkout-options input { accent-color: var(--store-accent); margin-top: 3px; }.ecommerce-store__checkout-options span { display: grid; gap: 2px; }.ecommerce-store__checkout-options strong { color: var(--store-ink); font-size: 13px; }.ecommerce-store__checkout-options small { color: var(--store-muted); font-size: 11px; line-height: 1.35; }.ecommerce-store__checkout-methods { display: grid; gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }.ecommerce-store__checkout-methods button { align-items: center; background: #fff; border: 1px solid var(--store-line); color: var(--store-ink); display: flex; font-size: 13px; font-weight: 800; gap: 8px; justify-content: center; min-height: 44px; }.ecommerce-store__checkout-methods button i { color: var(--store-accent); font-size: 17px; }.ecommerce-store__checkout-methods button.is-selected { background: var(--store-soft); border-color: var(--store-accent); box-shadow: inset 0 0 0 1px var(--store-accent); }.ecommerce-store__checkout-card { background: var(--store-soft); border: 1px solid var(--store-line); display: grid; gap: 11px; padding: 12px; }.ecommerce-store__checkout-card-heading { display: grid; gap: 2px; }.ecommerce-store__checkout-card-heading strong { color: var(--store-ink); font-size: 13px; }.ecommerce-store__checkout-card-heading small { color: var(--store-muted); font-size: 11px; line-height: 1.35; }.ecommerce-store__checkout-card-element { background: #fff; border: 1px solid var(--store-line); min-height: 42px; padding: 12px; }.ecommerce-store__checkout-card-message { color: var(--store-muted); font-size: 11px; margin: 0; }.ecommerce-store__checkout-card-message.is-error { color: #a34335; }.ecommerce-store__checkout-review { border-bottom: 0; padding-bottom: 0; }.ecommerce-store__checkout-review-item { align-items: start; display: flex; gap: 12px; justify-content: space-between; }.ecommerce-store__checkout-review-item span { color: var(--store-muted); display: grid; font-size: 12px; min-width: 0; }.ecommerce-store__checkout-review-item small { font-size: 10px; }.ecommerce-store__checkout-review-item strong { color: var(--store-ink); font-size: 12px; white-space: nowrap; }.ecommerce-store__checkout-summary { border-top: 1px solid var(--store-line); display: grid; gap: 4px; grid-template-columns: 1fr auto; margin-top: 2px; padding-top: 12px; }.ecommerce-store__checkout-summary span { color: var(--store-muted); font-size: 12px; }.ecommerce-store__checkout-summary strong { color: var(--store-ink); font-size: 14px; }.ecommerce-store__checkout-summary-total { border-top: 1px solid var(--store-line); color: var(--store-ink) !important; font-size: 18px !important; font-weight: 800; margin-top: 5px; padding-top: 9px; }.ecommerce-store__checkout-footer { display: block !important; padding: 14px 20px 20px !important; }.ecommerce-store__checkout-button { align-items: center; display: flex; font-weight: 800; gap: 8px; justify-content: center; min-height: 46px; width: 100%; }.ecommerce-store__checkout-pending { display: grid; gap: 14px; }.ecommerce-store__checkout-pending > p { color: var(--store-muted); font-size: 13px; line-height: 1.45; margin: 0; }.ecommerce-store__checkout-status { border-radius: 3px; font-size: 12px; font-weight: 800; justify-self: start; padding: 5px 8px; }.ecommerce-store__checkout-status.is-pending { background: #fff6da; color: #835b00; }.ecommerce-store__checkout-status.is-paid { background: #e4f4ea; color: #15653e; }.ecommerce-store__checkout-status.is-failed { background: #fae8e5; color: #9d3728; }.ecommerce-store__checkout-pix { align-items: center; background: var(--store-soft); border: 1px solid var(--store-line); display: grid; gap: 14px; grid-template-columns: 116px minmax(0, 1fr); padding: 12px; }.ecommerce-store__checkout-pix > img { background: #fff; height: 116px; object-fit: contain; padding: 6px; width: 116px; }.ecommerce-store__checkout-pix > div { display: grid; gap: 8px; min-width: 0; }.ecommerce-store__checkout-pix strong { color: var(--store-ink); font-size: 13px; }.ecommerce-store__checkout-pix small { color: var(--store-muted); font-size: 11px; line-height: 1.4; }.ecommerce-store__pix-copy { display: grid; grid-template-columns: minmax(0, 1fr) 38px; }.ecommerce-store__pix-copy input { background: #fff; border: 1px solid var(--store-line); color: var(--store-ink); font-size: 11px; min-width: 0; padding: 7px; }.ecommerce-store__pix-copy .btn { align-items: center; border-radius: 0; display: inline-flex; justify-content: center; padding: 0; }.ecommerce-store__checkout-confirmation { margin: 0 auto; max-width: 760px; }.ecommerce-store__checkout-result { display: grid; gap: 18px; padding: clamp(18px, 4vw, 44px) 0; }.ecommerce-store__checkout-result h1 { color: var(--store-ink); font-size: clamp(26px, 4vw, 38px); margin: -8px 0 0; }.ecommerce-store__checkout-result-copy { color: var(--store-muted); font-size: 15px; line-height: 1.5; margin: -7px 0 0; max-width: 560px; }.ecommerce-store__checkout-result .ecommerce-store__checkout-summary { max-width: 480px; }.ecommerce-store__checkout-result-actions { display: flex; flex-wrap: wrap; gap: 10px; }

/* O ícone é uma linha própria: evita sobreposição com o título do estado vazio. */
.ecommerce-store__cart-empty { align-content: center; display: grid; gap: 10px; grid-template-columns: minmax(0, 1fr); grid-template-rows: 40px auto auto; justify-items: center; }
.ecommerce-store__cart-empty > i { display: block; height: 40px; line-height: 40px; margin: 0; position: static; }
.ecommerce-store__cart-empty > strong, .ecommerce-store__cart-empty > span { display: block; margin: 0; }
/* PIX em blocos separados: leitura do QR primeiro e cópia do código em seguida. */
.ecommerce-store__checkout-pix { align-items: stretch; grid-template-columns: minmax(0, 1fr); }
.ecommerce-store__checkout-pix-qr { align-items: center; display: grid; gap: 14px; grid-template-columns: 116px minmax(0, 1fr); }
.ecommerce-store__checkout-pix-qr > img { background: #fff; height: 116px; object-fit: contain; padding: 6px; width: 116px; }
.ecommerce-store__checkout-pix-qr > div, .ecommerce-store__checkout-pix-code { display: grid; gap: 6px; min-width: 0; }
.ecommerce-store__checkout-pix-code { border-top: 1px solid var(--store-line); padding-top: 12px; }
.ecommerce-store__checkout-pix-code > label { color: var(--store-ink); font-size: 11px; font-weight: 800; margin: 0; }
.ecommerce-store__pix-copy { align-items: stretch; gap: 8px; grid-template-columns: minmax(0, 1fr) auto; }
.ecommerce-store__pix-copy input { border-radius: 4px; min-height: 42px; padding: 8px 10px; }
.ecommerce-store__pix-copy .btn { background: var(--store-accent); border: 1px solid var(--store-accent); border-radius: 4px; color: #fff; font-size: 12px; font-weight: 800; gap: 6px; min-height: 42px; padding: 0 13px; white-space: nowrap; }
.ecommerce-store__pix-copy .btn:hover, .ecommerce-store__pix-copy .btn:focus { background: var(--store-accent-dark); border-color: var(--store-accent-dark); color: #fff; }
/* Detalhes do pedido na confirmação de pagamento. */
.ecommerce-store__checkout-order-items { border: 1px solid var(--store-line); display: grid; }
.ecommerce-store__checkout-order-items > header { align-items: center; background: var(--store-soft); border-bottom: 1px solid var(--store-line); display: flex; gap: 12px; justify-content: space-between; padding: 12px 14px; }
.ecommerce-store__checkout-order-items > header > div { display: grid; gap: 2px; }
.ecommerce-store__checkout-order-items > header strong { color: var(--store-ink); font-size: 13px; }
.ecommerce-store__checkout-order-items > header small { color: var(--store-muted); font-size: 11px; }
.ecommerce-store__checkout-order-items > header > i { align-items: center; background: #fff; border: 1px solid var(--store-line); color: var(--store-accent); display: inline-flex; font-size: 17px; height: 34px; justify-content: center; width: 34px; }
.ecommerce-store__checkout-order-items > article { align-items: center; border-bottom: 1px solid var(--store-line); display: grid; gap: 11px; grid-template-columns: 34px minmax(0, 1fr) auto; padding: 13px 14px; }
.ecommerce-store__checkout-order-items > article:last-child { border-bottom: 0; }
.ecommerce-store__checkout-order-item-icon { align-items: center; background: var(--store-soft); color: var(--store-accent); display: inline-flex; font-size: 15px; height: 34px; justify-content: center; width: 34px; }
.ecommerce-store__checkout-order-items > article > div { display: grid; gap: 2px; min-width: 0; }
.ecommerce-store__checkout-order-items > article > div > strong { color: var(--store-ink); font-size: 13px; line-height: 1.35; }
.ecommerce-store__checkout-order-items > article > div > strong b { color: var(--store-accent-dark); }
.ecommerce-store__checkout-order-items > article small { color: var(--store-muted); font-size: 11px; line-height: 1.35; }
.ecommerce-store__checkout-order-items > article > strong { color: var(--store-ink); font-size: 13px; white-space: nowrap; }
/* O CTA do carrinho ocupa as duas colunas do resumo, como no checkout. */
.ecommerce-store__cart > footer:not(.ecommerce-store__checkout-footer) .ecommerce-store__checkout-button { grid-column: 1 / -1; margin-top: 8px; }
@media (max-width: 767.98px) { .ecommerce-store__checkout-fields { grid-template-columns: 1fr; }.ecommerce-store__checkout-field--wide { grid-column: auto; }.ecommerce-store__checkout-pix { grid-template-columns: 92px minmax(0, 1fr); }.ecommerce-store__checkout-pix > img { height: 92px; width: 92px; } }
@media (max-width: 767.98px) { .ecommerce-store__checkout-pix { grid-template-columns: minmax(0, 1fr); }.ecommerce-store__checkout-pix-qr { grid-template-columns: 92px minmax(0, 1fr); }.ecommerce-store__checkout-pix-qr > img { height: 92px; width: 92px; }.ecommerce-store__pix-copy { grid-template-columns: minmax(0, 1fr); }.ecommerce-store__pix-copy .btn { width: 100%; } }
.ecommerce-store__checkout-methods button:focus-visible,
.ecommerce-store__checkout-boleto .btn:focus-visible,
.ecommerce-store__pix-copy .btn:focus-visible {
  outline: 3px solid var(--store-accent);
  outline-offset: 2px;
}
.ecommerce-store__checkout-boleto {
  background: var(--store-soft);
  border: 1px solid var(--store-line);
  display: grid;
  gap: 10px;
  padding: 12px;
}
.ecommerce-store__checkout-boleto strong {
  color: var(--store-ink);
  font-size: 13px;
}
.ecommerce-store__checkout-boleto > small {
  color: var(--store-muted);
  font-size: 11px;
  line-height: 1.4;
}
.ecommerce-store__checkout-boleto-actions .btn {
  align-items: center;
  justify-content: center;
}
.ecommerce-store__checkout-boleto-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ecommerce-store__checkout-boleto-actions .btn {
  display: inline-flex;
  font-size: 12px;
  gap: 6px;
}
.ecommerce-store__checkout-methods { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ecommerce-store__checkout-methods button { font-size: 11px; gap: 5px; line-height: 1.2; min-width: 0; overflow-wrap: anywhere; padding: 7px 5px; white-space: normal; }
.ecommerce-store__checkout-methods button i { flex: 0 0 auto; }
.ecommerce-store__checkout-submit-error { margin: 0 0 10px; }
.ecommerce-store__checkout-asaas-card .ecommerce-store__checkout-card-heading:not(:first-child) { border-top: 1px solid var(--store-line); padding-top: 12px; }
.ecommerce-store__checkout-asaas-card .ecommerce-store__checkout-fields { margin-top: -2px; }
