/* Editorial storefront: visual reference is the approved TenisBR campaign. */
.tenant-body { background: #f8f7f2 !important; color: #0a1920; }
.tenant-shell-wrapper { width: min(1512px, calc(100% - 24px)) !important; overflow: visible !important; }

.tenant-topbar { position: relative !important; top: auto !important; z-index: 20; margin: 0 0 13px !important; padding: 0 0 13px !important; border: 0 !important; border-bottom: 1px solid #dee1dc !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; backdrop-filter: none !important; }
.tenant-topbar-shell { display: grid !important; grid-template-columns: 230px minmax(340px, 480px) minmax(330px, 1fr) 58px; gap: 20px; min-height: 57px; align-items: center !important; }
.tenant-brand-link { display: flex !important; gap: 0 !important; }
.tenant-brand-logo, .tenant-brand-fallback { display: none !important; }
.tenant-brand-copy { display: block !important; min-width: 0; overflow: hidden; }
.tenant-brand-copy strong { display: block; overflow: hidden; color: #0a1920; font-size: 34px !important; font-weight: 900; letter-spacing: -2.5px; line-height: 1; text-overflow: ellipsis; white-space: nowrap; }
.tenant-brand-copy span { display: none !important; }
.tenant-search-form { display: block !important; flex: initial !important; min-width: 0; }
.tenant-search-field { min-height: 37px !important; padding: 0 15px !important; border: 1px solid #d4d8d2 !important; background: #f0f1ee !important; }
.tenant-search-field svg { width: 17px !important; height: 17px !important; }
.tenant-search-field input { min-height: 35px !important; font-size: 12px !important; }
.tenant-search-form .button { display: none !important; }
.tenant-editorial-nav { display: flex !important; align-items: center; justify-content: space-between; gap: 16px; min-width: 0; }
.tenant-editorial-link { color: #101c22; font-size: 11px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.tenant-editorial-link:hover, .tenant-editorial-link.is-active { color: #17633f; }
.tenant-header-actions { display: flex !important; width: auto !important; gap: 12px !important; }
.tenant-account-link, .tenant-cart-button { position: relative; display: inline-flex !important; align-items: center; justify-content: center; min-width: 26px; min-height: 38px; padding: 0 !important; border: 0 !important; border-radius: 0 !important; color: #0b1820 !important; background: transparent !important; box-shadow: none !important; }
.tenant-account-link svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.tenant-cart-icon svg { width: 23px; height: 23px; fill: currentColor !important; }
.tenant-account-link > span, .tenant-cart-button > span:not(.tenant-cart-icon):not(.tenant-cart-count), .tenant-support-link { display: none !important; }
.tenant-cart-count { position: absolute; top: 3px; right: -8px; display: grid; place-items: center; min-width: 17px; min-height: 17px; padding: 0; color: #172128; background: #fedc32; font-size: 9px; }
.tenant-menu-shell { margin-top: 10px !important; padding: 0 !important; border: 0 !important; }
.tenant-menu-links, .tenant-menu-links-centered { display: flex !important; justify-content: flex-start !important; gap: 18px !important; padding: 0 !important; }
.tenant-menu-link { min-height: 37px; padding: 0 26px; border: 0 !important; border-radius: 999px; color: #101c22; background: #edeeeb; font-size: 11px; font-weight: 700; }
.tenant-menu-link:hover, .tenant-menu-link.is-active { color: #101c22 !important; background: #dfe5dd !important; transform: none !important; }

.tenant-showcase-hero { position: relative; min-height: 382px; overflow: hidden; border-radius: 11px; color: #fff; background: #06291d; }
.tenant-showcase-image { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.tenant-showcase-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(2, 29, 19, .98) 0%, rgba(3, 37, 25, .91) 37%, rgba(5, 34, 25, .32) 65%, rgba(1, 16, 12, .05) 100%); }
.tenant-showcase-copy { position: relative; z-index: 1; width: 720px; padding: 39px 0 0 70px; }
.tenant-showcase-kicker { color: #d9e6dd; font-size: 9px; font-weight: 700; letter-spacing: .38em; }
.tenant-showcase-copy h1 { margin: 12px 0 14px; color: #fff; font-size: 60px; font-weight: 900; letter-spacing: -3.5px; line-height: .96; }
.tenant-showcase-copy h1 em { color: #ffdc3a; font-style: normal; }
.tenant-showcase-copy p { margin: 0; color: #f2f5f2; font-size: 17px; line-height: 1.35; }
.tenant-showcase-button { display: inline-flex; align-items: center; gap: 18px; min-height: 47px; margin-top: 17px; padding: 0 28px; border-radius: 999px; color: #122023; background: #ffdb38; font-size: 13px; font-weight: 800; text-decoration: none; }
.tenant-showcase-button svg, .tenant-editorial-section-head a svg, .tenant-size-guide a svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; }
.tenant-showcase-benefits { position: absolute; z-index: 1; bottom: 31px; left: 70px; display: flex; }
.tenant-showcase-benefits > div { display: flex; align-items: center; gap: 13px; min-width: 205px; padding: 0 23px; border-left: 1px solid rgba(255,255,255,.23); }
.tenant-showcase-benefits > div:first-child { padding-left: 0; border-left: 0; }
.tenant-showcase-benefits svg { width: 27px; height: 27px; fill: none; stroke: #fff; stroke-width: 1.5; }
.tenant-showcase-benefits span { display: grid; gap: 2px; color: #e0eae3; font-size: 10px; line-height: 1.25; }
.tenant-showcase-benefits strong { color: #fff; font-size: 11px; }

.tenant-editorial-catalogue { padding-top: 19px; }
.tenant-active-filters-inline { margin: 0 0 15px !important; }
.tenant-editorial-section-head { display: flex; align-items: end; justify-content: space-between; margin: 0 0 11px; }
.tenant-editorial-section-head span { display: block; margin-bottom: 3px; color: #63706c; font-size: 9px; font-weight: 800; letter-spacing: .18em; }
.tenant-editorial-section-head h2 { margin: 0; color: #0a1920; font-size: 27px; font-weight: 900; letter-spacing: -1.7px; }
.tenant-editorial-section-head a { display: inline-flex; align-items: center; gap: 8px; padding-bottom: 4px; color: #152128; font-size: 11px; font-weight: 700; text-decoration: none; }
.tenant-featured-stage { display: grid; grid-template-columns: minmax(0, 1fr) 423px; gap: 18px; align-items: stretch; }
.tenant-featured-products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.tenant-product-card { display: flex !important; flex-direction: column; overflow: hidden; min-width: 0; border: 0 !important; border-radius: 10px !important; background: #f0efeb !important; box-shadow: none !important; }
.tenant-product-card .product-media { position: relative; flex: 0 0 auto; aspect-ratio: 1.1 / 1; padding: 9px !important; background: linear-gradient(145deg, #f8f8f6, #e8e7e1) !important; }
.tenant-product-card .product-media img { width: 100%; height: 100%; border-radius: 8px !important; object-fit: contain; mix-blend-mode: multiply; }
.tenant-card-badge { position: absolute; top: 12px; left: 12px; padding: 5px 10px; border: 1px solid #c9ceca; border-radius: 999px; color: #142127; background: rgba(255,255,255,.88); font-size: 9px !important; font-weight: 800; }
.tenant-card-favorite { position: absolute; top: 12px; right: 12px; color: #152228; }
.tenant-card-favorite svg { width: 18px; height: 18px; fill: #f9f9f6; stroke: currentColor; stroke-width: 1.7; }
.tenant-product-card .product-meta { display: flex !important; flex: 1; padding: 12px 15px 14px !important; gap: 5px !important; background: #f3f2ee !important; }
.tenant-product-meta-top { display: flex; justify-content: space-between !important; align-items: center !important; min-height: 14px; }
.tenant-product-card .table-subtitle { color: #68736f; font-size: 10px !important; }
.tenant-card-shipping { color: #19744a; font-size: 9px; font-weight: 800; }
.tenant-product-card h3 { margin: 0; color: #0d1b20; font-size: 13px !important; font-weight: 800; letter-spacing: -.35px; line-height: 1.2; }
.tenant-product-card p { display: -webkit-box; min-height: 27px !important; margin: 0; overflow: hidden; color: #65706d; font-size: 9px !important; line-height: 1.35 !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.tenant-product-card .price-line { display: grid; gap: 1px; margin-top: auto; }
.tenant-product-card .price-line strong { color: #07171b; font-size: 16px !important; letter-spacing: -.5px; }
.tenant-product-card .price-line span { color: #66716e; font-size: 9px !important; text-decoration: none; }
.tenant-card-footer { display: grid !important; grid-template-columns: 1fr; gap: 7px !important; margin-top: 4px !important; }
.tenant-card-footer span { display: block !important; color: #19744a; font-size: 9px !important; font-weight: 700; }
.tenant-card-footer .button { width: 100% !important; min-width: 0 !important; min-height: 31px !important; padding: 0 8px !important; border: 0 !important; border-radius: 999px !important; color: #142023 !important; background: #ffda31 !important; font-size: 10px !important; font-weight: 800; box-shadow: none !important; }
.tenant-size-guide { position: relative; min-height: 100%; overflow: hidden; border-radius: 11px; background: #073124; }
.tenant-size-guide > img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: 78% center; opacity: 1; }
.tenant-size-guide::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4, 41, 29, .99) 0%, rgba(4, 41, 29, .91) 43%, rgba(4, 41, 29, .08) 100%); content: ''; }
.tenant-size-guide > div { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; height: 100%; padding: 42px 25px; }
.tenant-size-guide span { color: #d9e4dc; font-size: 8px; font-weight: 700; letter-spacing: .35em; }
.tenant-size-guide h2 { margin: 15px 0 14px; color: #fff; font-family: Georgia, serif; font-size: 35px; font-weight: 400; letter-spacing: -1.8px; line-height: .94; }
.tenant-size-guide p { max-width: 172px; margin: 0; color: #f0f4f0; font-size: 13px; line-height: 1.35; }
.tenant-size-guide a { display: inline-flex; align-items: center; gap: 12px; margin-top: auto; padding: 11px 17px; border: 1px solid rgba(255,255,255,.9); border-radius: 999px; color: #fff; font-size: 10px; font-weight: 700; text-decoration: none; }
.tenant-editorial-proof { display: grid; grid-template-columns: repeat(5, 1fr); margin: 19px -12px 0; padding: 17px 29px; border-top: 1px solid #dfe2dd; border-bottom: 1px solid #dfe2dd; background: #fbfaf6; }
.tenant-editorial-proof article { display: flex; align-items: center; gap: 11px; min-width: 0; padding: 0 17px; border-right: 1px solid #dde0db; }
.tenant-editorial-proof article:last-child { border-right: 0; }
.tenant-editorial-proof svg { flex: 0 0 auto; width: 28px; height: 28px; fill: none; stroke: #0a1920; stroke-width: 1.5; }
.tenant-editorial-proof span { display: grid; gap: 2px; color: #5d6865; font-size: 9px; line-height: 1.25; }
.tenant-editorial-proof strong { color: #152126; font-size: 10px; }
.tenant-more-products { padding: 42px 0 14px; }
.tenant-more-products-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 15px; }
.tenant-editorial-empty { padding: 35px; border: 1px dashed #c8d0c9; border-radius: 10px; color: #53625c; background: #f4f5f1; }
.tenant-editorial-empty h2 { margin: 0; color: #0d1d22; }

@media (max-width: 1240px) {
    .tenant-topbar-shell { grid-template-columns: 205px minmax(260px, 1fr) auto; }
    .tenant-editorial-nav { grid-column: 2 / 4; justify-content: flex-end; }
    .tenant-featured-stage { grid-template-columns: minmax(0, 1fr) 310px; }
    .tenant-featured-products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
    .tenant-body { overflow-x: hidden; }
    .tenant-shell-wrapper { width: min(100% - 16px, 680px) !important; }
    .tenant-topbar { padding: 8px 0 12px !important; }
    .tenant-topbar-shell { grid-template-columns: 1fr !important; gap: 11px !important; }
    .tenant-brand-copy strong { font-size: 29px !important; }
    .tenant-editorial-nav { grid-column: auto; justify-content: flex-start; gap: 19px; overflow-x: auto; padding-bottom: 2px; }
    .tenant-editorial-nav::-webkit-scrollbar { display: none; }
    .tenant-editorial-link { flex: 0 0 auto; }
    .tenant-menu-links { gap: 8px !important; overflow-x: auto; }
    .tenant-menu-link { min-height: 32px; padding: 0 15px; font-size: 10px; }
    .tenant-showcase-hero { min-height: 470px; }
    .tenant-showcase-image { object-position: 65% center; }
    .tenant-showcase-copy { width: min(88%, 430px); padding: 31px 0 0 26px; }
    .tenant-showcase-copy h1 { font-size: 49px; letter-spacing: -2.8px; line-height: .93; }
    .tenant-showcase-copy p { max-width: 270px; font-size: 14px; }
    .tenant-showcase-benefits { right: 24px; bottom: 20px; left: 26px; overflow: hidden; }
    .tenant-showcase-benefits > div { display: none; }
    .tenant-showcase-benefits > div:first-child { display: flex; min-width: 0; padding: 0; border: 0; }
    .tenant-featured-stage { grid-template-columns: 1fr; gap: 15px; }
    .tenant-featured-products, .tenant-more-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .tenant-product-card h3 { font-size: 11px !important; }
    .tenant-product-card p { display: none; }
    .tenant-size-guide { min-height: 310px; }
    .tenant-editorial-proof { grid-template-columns: 1fr 1fr; gap: 14px 0; margin: 18px -8px 0; padding: 18px 8px; }
    .tenant-editorial-proof article { padding: 0 10px; }
    .tenant-editorial-proof article:nth-child(2n) { border-right: 0; }
    .tenant-editorial-proof article:last-child { grid-column: 1 / -1; }
}

/* Product, cart and checkout: one continuous commerce journey. */
.tenant-commerce { width: min(1360px, 100%); margin: 0 auto; padding: 22px 0 68px; color: #0a1920; }
.tenant-commerce h1, .tenant-commerce h2, .tenant-commerce p { margin-top: 0; }
.tenant-commerce-label { display: block; color: #62716c; font-size: 10px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.tenant-commerce-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 20px; color: #68736f; font-size: 11px; }
.tenant-commerce-breadcrumbs a { color: #53625d; font-weight: 700; text-decoration: none; }
.tenant-product-mockup-grid { display: grid; grid-template-columns: minmax(0, 1.07fr) minmax(390px, .93fr); gap: 62px; align-items: start; }
.tenant-product-gallery-mockup { display: grid; grid-template-columns: 74px minmax(0, 1fr); gap: 15px; min-width: 0; }
.tenant-product-thumbs { display: flex; flex-direction: column; gap: 10px; }
.tenant-product-thumb { display: grid; width: 68px; aspect-ratio: 1; place-items: center; overflow: hidden; border: 1px solid transparent; border-radius: 10px; background: #eeede8; }
.tenant-product-thumb.is-active { border-color: #163e2d; }
.tenant-product-thumb img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.tenant-product-main-image { position: relative; display: grid; min-height: 592px; place-items: center; overflow: hidden; border-radius: 14px; background: #ecebe6; }
.tenant-product-main-image img { width: 92%; height: 92%; object-fit: contain; mix-blend-mode: multiply; }
.tenant-product-sale-pill { position: absolute; top: 22px; left: 22px; padding: 7px 11px; border-radius: 999px; color: #194e36; background: #dceade; font-size: 10px; font-weight: 800; }
.tenant-product-information { padding: 14px 0 0; }
.tenant-product-information h1 { max-width: 590px; margin: 7px 0 8px; color: #0b1920; font-size: clamp(35px, 3.25vw, 54px); font-weight: 900; letter-spacing: -3px; line-height: .98; }
.tenant-product-category { color: #63716d; font-size: 14px; }
.tenant-product-category span { padding: 0 5px; color: #a1aaa6; }
.tenant-product-price { display: grid; gap: 3px; margin: 29px 0 28px; padding: 0 0 25px; border-bottom: 1px solid #dde0db; }
.tenant-product-price strong { color: #07171b; font-size: 31px; font-weight: 900; letter-spacing: -1.6px; }
.tenant-product-price del { color: #7d8783; font-size: 13px; }
.tenant-product-price small { color: #53625d; font-size: 12px; }
.tenant-product-buy-form { display: grid; gap: 20px; }
.tenant-product-options { min-width: 0; margin: 0; padding: 0; border: 0; }
.tenant-product-options legend { display: flex; width: 100%; justify-content: space-between; margin: 0 0 11px; color: #102026; font-size: 13px; font-weight: 800; }
.tenant-product-options legend small, .tenant-product-options legend a { color: #5c6b66; font-size: 11px; font-weight: 600; text-decoration: underline; }
.tenant-option-pills, .tenant-size-pills { display: flex; flex-wrap: wrap; gap: 9px; }
.tenant-option-pills input, .tenant-size-pills input { position: absolute; opacity: 0; pointer-events: none; }
.tenant-option-pills span, .tenant-size-pills span { display: grid; min-width: 48px; min-height: 42px; place-items: center; padding: 0 14px; border: 1px solid #d5dad4; border-radius: 8px; color: #1a292c; background: #fafaf7; font-size: 12px; font-weight: 700; cursor: pointer; }
.tenant-option-pills input:checked + span, .tenant-size-pills input:checked + span { border-color: #0b3e2c; color: #fff; background: #0b3e2c; }
.tenant-product-quantity { display: flex; align-items: center; justify-content: space-between; width: 140px; min-height: 43px; padding: 0 8px 0 13px; border: 1px solid #d5dad4; border-radius: 8px; color: #1a292c; font-size: 12px; font-weight: 700; background: #fafaf7; }
.tenant-product-quantity input { width: 43px; border: 0; color: #0c1b20; background: transparent; font: inherit; text-align: center; outline: 0; }
.tenant-product-shipping-note { display: flex; align-items: center; gap: 12px; min-height: 72px; padding: 13px 16px; border-radius: 9px; color: #075c37; background: #e8f2eb; }
.tenant-product-shipping-note svg, .tenant-cart-free-shipping > svg, .tenant-checkout-delivery > svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.tenant-product-shipping-note span, .tenant-cart-free-shipping span, .tenant-checkout-delivery span { display: grid; gap: 3px; }
.tenant-product-shipping-note strong, .tenant-cart-free-shipping strong, .tenant-checkout-delivery strong { font-size: 13px; }
.tenant-product-shipping-note small, .tenant-cart-free-shipping small, .tenant-checkout-delivery small { font-size: 11px; }
.tenant-product-shipping-calculator, .tenant-cart-shipping-calculator { display: grid; gap: 10px; padding: 15px; border: 1px solid #d8dfd8; border-radius: 10px; color: #263631; background: #fafbf8; }
.tenant-product-shipping-calculator > div { display: flex; align-items: center; justify-content: space-between; }
.tenant-product-shipping-calculator > div small { color: #66736f; font-size: 10px; }
.tenant-product-shipping-calculator > label { display: grid; gap: 5px; color: #30413a; font-size: 11px; font-weight: 800; }
.tenant-product-shipping-calculator input, .tenant-cart-shipping-calculator input { min-height: 37px; padding: 0 10px; border: 1px solid #ccd5cd; border-radius: 7px; background: #fff; font: 12px Poppins, sans-serif; }
.tenant-product-quote-button, .tenant-cart-shipping-calculator button { min-height: 37px; border: 0; border-radius: 7px; color: #fff; background: #134c36; font-size: 11px; font-weight: 800; cursor: pointer; }
.tenant-quote-zip { color: #557066; font-size: 10px; }
.tenant-product-shipping-options, .tenant-cart-shipping-options { display: grid; gap: 7px; }
.tenant-product-shipping-options label, .tenant-cart-shipping-options label { display: flex; align-items: center; gap: 8px; padding: 9px; border-radius: 7px; background: #f1f5f0; cursor: pointer; }
.tenant-product-shipping-options span, .tenant-cart-shipping-options span { display: grid; gap: 2px; color: #25342e; font-size: 11px; }
.tenant-product-shipping-options b { font-size: 11px; }
.tenant-product-shipping-options small, .tenant-cart-shipping-options small { color: #607069; font-size: 10px; }
.tenant-cart-shipping-calculator > strong { font-size: 13px; }
.tenant-cart-shipping-calculator > form:not(.tenant-cart-shipping-options) { display: grid; grid-template-columns: minmax(0, 1fr) 120px; gap: 8px; }
.tenant-cart-shipping-options > button { min-height: 34px; color: #16412f; background: #e5ece5; }
.tenant-commerce-cta { display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 55px; padding: 0 28px; border: 0; border-radius: 999px; color: #142023; background: #ffda31; font-size: 14px; font-weight: 900; text-decoration: none; cursor: pointer; transition: transform .2s ease, background .2s ease; }
.tenant-commerce-cta:hover { color: #142023; background: #f5cb18; transform: translateY(-1px); }
.tenant-commerce-cta span { font-size: 23px; font-weight: 500; line-height: 0; }
.tenant-product-buy-form .tenant-commerce-cta { width: 100%; }
.tenant-product-add-button { min-height: 46px; border: 1px solid #b9c2bb; border-radius: 999px; color: #183027; background: transparent; font-size: 12px; font-weight: 800; cursor: pointer; }
.tenant-product-trust { display: flex; gap: 25px; margin-top: 21px; padding-top: 20px; border-top: 1px solid #dde0db; color: #53625d; font-size: 11px; font-weight: 700; }
.tenant-product-trust span { display: inline-flex; align-items: center; gap: 7px; }
.tenant-product-trust svg { width: 20px; height: 20px; fill: none; stroke: #0e5135; stroke-width: 1.8; }
.tenant-product-description-mockup { max-width: 740px; margin: 72px 0 58px 89px; }
.tenant-product-description-mockup h2 { margin: 9px 0 11px; color: #0a1920; font-size: 29px; font-weight: 900; letter-spacing: -1.7px; }
.tenant-product-description-mockup p { max-width: 680px; color: #5a6763; font-size: 14px; line-height: 1.65; }
.tenant-related-products-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }

.tenant-commerce-page-head { margin: 20px 0 32px; }
.tenant-commerce-page-head h1 { margin: 8px 0 4px; color: #081820; font-size: clamp(43px, 4.5vw, 65px); font-weight: 900; letter-spacing: -3.7px; line-height: .94; }
.tenant-commerce-page-head p { color: #5f6e69; font-size: 16px; }
.tenant-cart-mockup-grid { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 31px; align-items: start; }
.tenant-cart-items { display: grid; gap: 12px; }
.tenant-cart-item { display: grid; grid-template-columns: 153px minmax(0, 1fr) 128px; gap: 22px; align-items: center; min-height: 166px; padding: 14px; border-radius: 13px; background: #fff; box-shadow: 0 8px 30px rgba(19, 38, 29, .035); }
.tenant-cart-item-image { display: grid; height: 138px; place-items: center; overflow: hidden; border-radius: 9px; background: #f0efea; }
.tenant-cart-item-image img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.tenant-cart-item-copy h2 { margin: 0 0 4px; color: #0c1c21; font-size: 18px; font-weight: 900; letter-spacing: -.7px; }
.tenant-cart-item-copy p, .tenant-cart-item-copy small { color: #64716d; font-size: 12px; }
.tenant-cart-quantity { display: inline-grid; grid-template-columns: 35px 34px 35px; align-items: center; min-height: 40px; margin-top: 18px; overflow: hidden; border: 1px solid #d8ddd7; border-radius: 10px; }
.tenant-cart-quantity button { height: 39px; border: 0; color: #142329; background: #fbfbf8; font-size: 18px; cursor: pointer; }
.tenant-cart-quantity span { color: #122127; font-size: 13px; font-weight: 800; text-align: center; }
.tenant-cart-item-price { display: grid; justify-items: end; gap: 31px; align-self: stretch; padding: 15px 3px 0 0; }
.tenant-cart-item-price > strong { font-size: 17px; letter-spacing: -.5px; white-space: nowrap; }
.tenant-cart-item-price button { display: grid; border: 0; color: #7b8782; background: transparent; cursor: pointer; }
.tenant-cart-item-price svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.tenant-cart-free-shipping { display: flex; align-items: center; gap: 15px; padding: 18px 21px; border-radius: 12px; color: #08633d; background: #e7f1e9; }
.tenant-cart-summary, .tenant-checkout-summary { position: sticky; top: 18px; padding: 27px; border: 1px solid #dfe3dd; border-radius: 15px; background: #fff; box-shadow: 0 10px 35px rgba(17, 40, 28, .035); }
.tenant-cart-summary h2, .tenant-checkout-summary h2 { margin: 0 0 24px; color: #0b1920; font-size: 25px; font-weight: 900; letter-spacing: -1.25px; }
.tenant-summary-row { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; color: #52615c; font-size: 13px; }
.tenant-summary-row strong { color: #102026; font-size: 13px; white-space: nowrap; }
.tenant-summary-row .is-free { color: #087242; }
.tenant-summary-total { align-items: end; margin: 10px 0 20px; padding: 20px 0 0; border-top: 1px solid #dbe0da; color: #0a1920; font-weight: 800; }
.tenant-summary-total strong { color: #081820; font-size: 27px; font-weight: 900; letter-spacing: -1.5px; }
.tenant-cart-summary .tenant-commerce-cta { width: 100%; }
.tenant-cart-assurances { display: grid; gap: 18px; margin-top: 26px; }
.tenant-cart-assurances span { display: grid; grid-template-columns: 34px 1fr; column-gap: 10px; color: #5f6d68; }
.tenant-cart-assurances svg { grid-row: 1 / 3; width: 27px; height: 27px; fill: none; stroke: #122329; stroke-width: 1.7; }
.tenant-cart-assurances b { color: #142127; font-size: 12px; }
.tenant-cart-assurances small { font-size: 11px; }
.tenant-cart-continue-link { display: inline-block; margin-top: 23px; color: #133d2c; font-size: 12px; font-weight: 800; text-decoration: none; }
.tenant-empty-commerce { padding: 54px; border: 1px solid #dce2dc; border-radius: 15px; text-align: center; background: #fff; }
.tenant-empty-commerce h2 { color: #0d1c21; font-size: 25px; }
.tenant-empty-commerce p { margin-bottom: 25px; color: #62706b; }

.tenant-checkout-mockup { padding-top: 30px; }
.tenant-checkout-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding-bottom: 21px; border-bottom: 1px solid #dde2dc; }
.tenant-checkout-head h1 { margin: 8px 0 0; color: #081820; font-size: clamp(42px, 4vw, 61px); font-weight: 900; letter-spacing: -3.5px; line-height: .94; }
.tenant-checkout-lock { display: inline-flex; align-items: center; gap: 8px; color: #20312d; font-size: 12px; font-weight: 700; }
.tenant-checkout-lock svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.tenant-checkout-steps { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 780px; margin: 25px 0 33px; padding: 0; list-style: none; }
.tenant-checkout-steps li { position: relative; display: grid; justify-items: center; gap: 7px; color: #66736e; font-size: 12px; font-weight: 800; }
.tenant-checkout-steps li:not(:last-child)::after { position: absolute; top: 17px; left: 58%; width: 84%; height: 3px; background: #d7ddd7; content: ''; }
.tenant-checkout-steps li.is-complete:not(:last-child)::after { background: #0a6b43; }
.tenant-checkout-steps i { position: relative; z-index: 1; display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; color: #fff; background: #0a6b43; font-style: normal; }
.tenant-checkout-steps .is-current { color: #0a1920; }
.tenant-checkout-steps .is-current i { color: #132126; background: #ffda31; }
.tenant-checkout-grid { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 34px; align-items: start; }
.tenant-checkout-form { display: grid; gap: 15px; }
.tenant-checkout-shipping-state { margin: 0; padding: 11px 16px; border-radius: 9px; color: #08633d; background: #e7f1e9; font-size: 12px; font-weight: 800; }
.tenant-checkout-shipping-state input { position: absolute; opacity: 0; }
.tenant-checkout-card { padding: 25px; border-radius: 14px; background: #fff; box-shadow: 0 8px 30px rgba(19, 38, 29, .035); }
.tenant-checkout-card h2 { margin: 0 0 1px; color: #0c1a20; font-size: 25px; font-weight: 900; letter-spacing: -1.2px; }
.tenant-checkout-card > p { margin-bottom: 18px; color: #64706d; font-size: 12px; }
.tenant-checkout-fields { display: grid; gap: 15px; }
.tenant-checkout-fields.two { grid-template-columns: 1fr 1fr; }
.tenant-checkout-fields label, .tenant-checkout-notes { display: grid; gap: 7px; color: #142329; font-size: 12px; font-weight: 800; }
.tenant-checkout-fields input, .tenant-checkout-notes textarea { width: 100%; min-height: 43px; padding: 0 13px; border: 1px solid #ccd4ce; border-radius: 8px; color: #15242a; background: #fcfcfa; font: 400 13px Poppins, sans-serif; outline-color: #12653f; box-sizing: border-box; }
.tenant-checkout-notes textarea { min-height: 85px; padding-top: 12px; resize: vertical; }
.tenant-checkout-delivery { display: flex; align-items: center; gap: 12px; margin-top: 18px; padding: 14px 16px; border-radius: 9px; color: #08633d; background: #e7f1e9; }
.tenant-payment-options { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.tenant-payment-option { display: flex; align-items: center; gap: 12px; min-height: 72px; padding: 12px 15px; border: 1px solid #d5dcd5; border-radius: 9px; cursor: pointer; }
.tenant-payment-option:has(input:checked) { border-color: #096940; background: #f0f8f2; }
.tenant-payment-option.is-disabled { opacity: .48; cursor: not-allowed; }
.tenant-payment-option input { accent-color: #096940; }
.tenant-payment-option > span:last-child { display: grid; gap: 2px; }
.tenant-payment-option b { color: #102127; font-size: 13px; }
.tenant-payment-option small { color: #66736e; font-size: 10px; }
.tenant-payment-icon { color: #08633d; font-size: 28px; line-height: 1; }
.tenant-checkout-notes { padding: 8px 25px 0; }
.tenant-checkout-submit { width: calc(100% - 50px); margin: 0 25px; }
.tenant-checkout-summary { padding: 25px; }
.tenant-checkout-product { display: grid; grid-template-columns: 62px minmax(0, 1fr) auto; gap: 10px; align-items: center; margin-bottom: 17px; padding-bottom: 17px; border-bottom: 1px solid #dde2dc; }
.tenant-checkout-product > div { display: grid; width: 62px; height: 62px; place-items: center; border-radius: 8px; background: #efeee9; }
.tenant-checkout-product img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.tenant-checkout-product span { display: grid; gap: 3px; min-width: 0; }
.tenant-checkout-product b { overflow: hidden; color: #102026; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.tenant-checkout-product small { color: #687570; font-size: 10px; }
.tenant-checkout-product > strong { color: #102026; font-size: 12px; white-space: nowrap; }
.tenant-checkout-summary > p { display: flex; align-items: center; gap: 9px; margin: 21px 0 0; color: #63716c; font-size: 11px; line-height: 1.4; }
.tenant-checkout-summary > p svg { flex: 0 0 auto; width: 20px; height: 20px; fill: none; stroke: #13252a; stroke-width: 1.8; }

@media (max-width: 900px) {
    .tenant-commerce { padding: 14px 0 92px; }
    .tenant-product-mockup-grid, .tenant-cart-mockup-grid, .tenant-checkout-grid { grid-template-columns: 1fr; gap: 24px; }
    .tenant-product-gallery-mockup { grid-template-columns: 1fr; }
    .tenant-product-thumbs { order: 2; flex-direction: row; overflow-x: auto; }
    .tenant-product-thumb { flex: 0 0 58px; width: 58px; }
    .tenant-product-main-image { min-height: 355px; }
    .tenant-product-information { padding-top: 0; }
    .tenant-product-information h1 { font-size: 39px; letter-spacing: -2.4px; }
    .tenant-product-description-mockup { margin: 48px 0; }
    .tenant-related-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .tenant-commerce-page-head { margin: 11px 0 25px; }
    .tenant-commerce-page-head h1 { font-size: 46px; }
    .tenant-cart-item { grid-template-columns: 100px minmax(0, 1fr); gap: 13px; min-height: 142px; }
    .tenant-cart-item-image { height: 112px; }
    .tenant-cart-item-copy h2 { font-size: 15px; }
    .tenant-cart-item-price { grid-column: 2; grid-row: 1; align-self: start; padding: 5px 0 0; }
    .tenant-cart-item-price > strong { font-size: 13px; }
    .tenant-cart-item-price form { display: none; }
    .tenant-cart-quantity { margin-top: 10px; }
    .tenant-cart-summary, .tenant-checkout-summary { position: static; padding: 21px; }
    .tenant-checkout-head { align-items: start; }
    .tenant-checkout-head h1 { font-size: 44px; }
    .tenant-checkout-lock { max-width: 108px; text-align: right; font-size: 10px; }
    .tenant-checkout-steps { margin: 20px 0 25px; }
    .tenant-checkout-steps li { font-size: 10px; }
    .tenant-checkout-steps li:not(:last-child)::after { top: 14px; }
    .tenant-checkout-steps i { width: 29px; height: 29px; }
    .tenant-checkout-card { padding: 20px 16px; }
    .tenant-checkout-card h2 { font-size: 21px; }
    .tenant-checkout-fields.two, .tenant-payment-options { grid-template-columns: 1fr; }
    .tenant-checkout-notes { padding: 5px 16px 0; }
    .tenant-checkout-submit { width: calc(100% - 32px); margin: 0 16px; }
}
