:root {
  --sl-ink: #161412;
  --sl-muted: #716c65;
  --sl-canvas: #f7f4ef;
  --sl-paper: #fff;
  --sl-accent: #c51f34;
  --sl-accent-soft: #f9e9ec;
  --sl-border: #e7e1da;
  --sl-success: #15734b;
  --sl-radius: 20px;
  --sl-shadow: 0 18px 55px rgba(28, 22, 17, .09);
  --sl-font-family: Montserrat, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html { overflow-x: hidden; scroll-behavior: smooth; }
body.sl-body { color: var(--sl-ink); background: var(--sl-paper); font-family: var(--sl-font-family); font-size: 16px; font-weight: 400; line-height: 1.5; -webkit-font-smoothing: antialiased; }
body.sl-body button,
body.sl-body input,
body.sl-body optgroup,
body.sl-body select,
body.sl-body textarea { font-family: inherit; }
body.sl-body > #container { position: static; min-height: 100vh; display: flex; flex-direction: column; margin-bottom: 0; }
body.sl-body > #container > main { flex: 1 0 auto; }
.sl-body * { box-sizing: border-box; }
.sl-body img { max-width: 100%; }
.sl-body a, .sl-body button { transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease; }
.sl-body :focus-visible { outline: 3px solid color-mix(in srgb, var(--sl-accent) 38%, transparent); outline-offset: 2px; }
.sl-body .container { max-width: 1280px; }
.sl-body #content, .sl-body #column-left, .sl-body #column-right { padding-bottom: 0; }
.sl-body main #column-left,
.sl-body main #column-right { display: none !important; }
.sl-body main #content[class*="col-"] { width: 100%; max-width: 100%; }
.sl-body main .btn-primary,
.sl-body main .bg-primary,
.sl-body main .text-bg-primary { border-color: var(--sl-ink) !important; color: #fff !important; background: var(--sl-ink) !important; box-shadow: none !important; }
.sl-body main .btn-primary:hover,
.sl-body main .btn-primary:focus { border-color: var(--sl-ink) !important; color: var(--sl-ink) !important; background: #fff !important; }
.sl-body main .text-primary { color: var(--sl-accent) !important; }
.sl-body main .list-group-item.active,
.sl-body main .page-item.active .page-link { border-color: var(--sl-ink) !important; color: #fff !important; background: var(--sl-ink) !important; }
.sl-eyebrow { margin: 0 0 11px; font-size: 11px; font-weight: 900; letter-spacing: .18em; line-height: 1.4; text-transform: uppercase; }
.sl-button { min-height: 48px; display: inline-flex; justify-content: center; align-items: center; gap: 9px; padding: 13px 22px; border: 1px solid transparent; border-radius: 999px; font-size: 12px; font-weight: 900; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; }
.sl-button--light { color: var(--sl-ink); background: #fff; }
.sl-button--light:hover { color: #fff; background: var(--sl-ink); }
.sl-button--primary { color: #fff; border-color: var(--sl-ink); background: var(--sl-ink); }
.sl-button--primary:hover { color: var(--sl-ink); background: #fff; }
.sl-button--outline { color: var(--sl-ink); border-color: var(--sl-ink); background: #fff; }
.sl-button--outline:hover { color: #fff; background: var(--sl-ink); }
.sl-button--wide { width: 100%; }

.sl-announcement { color: #fff; background: var(--sl-ink); }
.sl-announcement .container { min-height: 34px; display: flex; justify-content: center; align-items: center; gap: 38px; padding-block: 7px; font-size: 10px; font-weight: 800; letter-spacing: .055em; text-transform: uppercase; }
.sl-announcement i { margin-right: 6px; color: #ff9eaa; }
.sl-announcement span:not(:first-child) { display: none; }
.sl-header { position: sticky; top: 0; z-index: 1020; border-bottom: 1px solid var(--sl-border); background: rgba(255, 255, 255, .98); }
.sl-header__bar { min-height: 66px; display: grid; grid-template-columns: 41px minmax(0, 1fr) auto; align-items: center; gap: 4px; }
.sl-menu-button { justify-self: start; }
.sl-logo { min-width: 0; justify-self: start; }
.sl-logo a, .sl-footer__logo { color: var(--sl-ink); font-size: 25px; font-weight: 950; letter-spacing: -.075em; text-decoration: none; }
.sl-header .sl-logo a { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sl-logo a span, .sl-footer__logo span { color: var(--sl-accent); }
.sl-logo img { display: block; max-width: 142px; max-height: 48px; }
.sl-header__actions { min-width: 0; justify-self: end; display: flex; flex-wrap: nowrap; gap: 1px; }
.sl-icon-button { width: 41px; height: 41px; display: inline-grid; flex: 0 0 41px; place-items: center; overflow: hidden; padding: 0; border: 0; border-radius: 50%; color: var(--sl-ink); background: transparent; font-size: 16px; text-decoration: none; }
.sl-icon-button span { display: none; }
.sl-icon-button:hover { color: var(--sl-accent); background: var(--sl-canvas); }
.sl-search { padding-bottom: 12px; }
.sl-search form { max-width: 680px; margin: 0 auto !important; }
.sl-search input { min-height: 46px; border-color: var(--sl-border); border-radius: 999px 0 0 999px; font-size: 14px; }
.sl-search button { border-color: var(--sl-border); border-radius: 0 999px 999px 0; }
.sl-desktop-nav { display: none; border-top: 1px solid var(--sl-border); }
.sl-desktop-nav ul { display: flex; justify-content: center; gap: clamp(22px, 3vw, 42px); margin: 0; padding: 12px 0; list-style: none; }
.sl-desktop-nav a { color: var(--sl-ink); font-size: 16px; font-weight: 400; letter-spacing: 0; text-decoration: none; text-transform: none; }
.sl-desktop-nav a:hover, .sl-desktop-nav .sl-nav-sale { color: var(--sl-accent); }
.sl-offcanvas { width: min(90vw, 390px) !important; color: var(--sl-ink); background: #fff; }
.sl-offcanvas .offcanvas-header { padding: 25px 24px 14px; }
.sl-offcanvas .offcanvas-header .sl-eyebrow { margin-bottom: 2px; color: var(--sl-accent); font-size: 9px; }
.sl-offcanvas .offcanvas-title { font-size: 26px; font-weight: 950; letter-spacing: -.04em; }
.sl-offcanvas .offcanvas-body { padding: 0 24px 28px; }
.sl-mobile-nav { margin: 0; padding: 0; list-style: none; }
.sl-mobile-nav a { display: flex; justify-content: space-between; align-items: center; padding: 16px 1px; color: var(--sl-ink); border-bottom: 1px solid var(--sl-border); font-size: 16px; font-weight: 400; text-decoration: none; }
.sl-mobile-nav__sale a { color: var(--sl-accent); }
.sl-menu-promo { min-height: 180px; display: flex; flex-direction: column; justify-content: end; margin-top: 22px; padding: 19px; overflow: hidden; border-radius: 18px; color: #fff; background: linear-gradient(180deg, transparent 15%, rgba(18, 12, 10, .82)), var(--sl-promo-image) center/cover; text-decoration: none; }
.sl-menu-promo span { font-size: 9px; font-weight: 900; letter-spacing: .13em; }
.sl-menu-promo strong { margin: 4px 0 7px; font-size: 20px; line-height: 1.05; }
.sl-menu-promo small { font-weight: 800; }
.sl-menu-utility { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.sl-menu-utility a { padding: 11px; border: 1px solid var(--sl-border); border-radius: 12px; color: var(--sl-ink); font-size: 11px; font-weight: 700; text-align: center; text-decoration: none; }

.sl-checkout-header { border-bottom: 1px solid #e8e8e8; background: #fff; }
.sl-checkout-header .container { max-width: none; padding-inline: 24px; }
.sl-checkout-header__bar { min-height: 72px; display: flex; justify-content: space-between; align-items: center; }
.sl-checkout-header .sl-logo { justify-self: auto; }
.sl-checkout-header .sl-logo a { color: #242424; font-family: var(--sl-font-family); font-size: 20px; font-weight: 600; letter-spacing: -.04em; }
.sl-checkout-header .sl-logo a span { color: inherit; }
.sl-checkout-login { color: #242424; font-size: 14px; font-weight: 700; text-decoration: none; }

.sl-hero { position: relative; min-height: 610px; display: grid; overflow: hidden; color: #fff; background: #6e1722; }
.sl-hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(18, 12, 10, .08) 22%, rgba(18, 12, 10, .9) 86%), radial-gradient(circle at 82% 18%, rgba(255, 255, 255, .2), transparent 31%), var(--sl-hero-mobile-image, var(--sl-hero-image)) center 24%/cover no-repeat; }
.sl-hero::after { content: ''; position: absolute; inset: auto -90px -130px auto; width: 300px; height: 300px; border: 1px solid rgba(255, 255, 255, .22); border-radius: 50%; }
.sl-hero__grid { position: relative; z-index: 1; display: grid; }
.sl-hero__content { align-self: end; padding-top: 84px; padding-bottom: 46px; }
.sl-hero__content .sl-eyebrow { color: #ffd5da; }
.sl-hero h1 { max-width: 720px; margin: 0 0 14px; color: #fff; font-size: clamp(44px, 12vw, 88px); font-weight: 950; letter-spacing: -.064em; line-height: .93; }
.sl-hero__content > p:not(.sl-eyebrow) { max-width: 570px; margin-bottom: 25px; color: rgba(255, 255, 255, .88); font-size: 15px; line-height: 1.65; }
.sl-hero__actions { display: flex; align-items: center; gap: 20px; }
.sl-hero__link { display: flex; align-items: center; gap: 8px; color: #fff; font-size: 11px; font-weight: 850; text-decoration: none; text-transform: uppercase; }
.sl-hero__visual { position: absolute; inset: 0; pointer-events: none; }
.sl-hero__stamp { position: absolute; top: 25px; right: 18px; width: 91px; height: 91px; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 4px; padding: 13px; border: 1px solid rgba(255, 255, 255, .58); border-radius: 50%; background: rgba(22, 20, 18, .35); backdrop-filter: blur(8px); transform: rotate(7deg); }
.sl-hero__stamp strong { font-size: 28px; line-height: 1; }
.sl-hero__stamp small { font-size: 7px; font-weight: 900; line-height: 1.3; }
.sl-hero__note { display: none; }
.sl-hero-carousel { position: relative; background: #6e1722; }
.sl-hero-carousel .carousel-item { transition: transform .42s ease-in-out; }
.sl-hero-carousel__controls { position: absolute; right: 16px; bottom: 16px; z-index: 3; display: flex; align-items: center; gap: 9px; padding: 5px; color: #fff; background: rgba(18, 18, 18, .58); backdrop-filter: blur(8px); }
.sl-hero-carousel__controls button { width: 36px; height: 36px; display: grid; place-items: center; padding: 0; border: 0; color: #fff; background: transparent; }
.sl-hero-carousel__controls span { font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }

.sl-category-strip { display: flex; gap: 8px; padding-top: 20px; padding-bottom: 20px; overflow-x: auto; scrollbar-width: none; }
.sl-category-strip::-webkit-scrollbar { display: none; }
.sl-category-strip a { min-width: 88px; flex: 1 0 88px; display: grid; justify-items: center; gap: 7px; color: var(--sl-ink); font-size: 10px; text-align: center; text-decoration: none; }
.sl-category-strip a > span { width: 55px; height: 55px; display: grid; place-items: center; border-radius: 50%; background: var(--sl-canvas); font-size: 18px; }
.sl-category-strip a:hover > span { color: #fff; background: var(--sl-accent); transform: translateY(-2px); }
.sl-category-strip strong { width: 84px; line-height: 1.25; white-space: normal; }
.sl-trust { display: grid; grid-template-columns: 1fr; border-block: 1px solid var(--sl-border); }
.sl-trust > div { display: flex; align-items: center; gap: 13px; padding: 16px 8px; border-bottom: 1px solid var(--sl-border); }
.sl-trust > div:last-child { border-bottom: 0; }
.sl-trust i { width: 28px; color: var(--sl-accent); font-size: 19px; text-align: center; }
.sl-trust span { display: grid; color: var(--sl-muted); font-size: 11px; }
.sl-trust strong { color: var(--sl-ink); font-size: 12px; }
.sl-home__content { padding-top: 48px; padding-bottom: 56px; }
.sl-product-rail + .sl-product-rail { margin-top: 70px; }
.sl-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 18px; margin-bottom: 24px; }
.sl-section-heading .sl-eyebrow { margin-bottom: 5px; color: var(--sl-accent); font-size: 9px; }
.sl-section-heading h2 { margin: 0; font-size: clamp(28px, 6vw, 46px); font-weight: 950; letter-spacing: -.05em; line-height: 1; }
.sl-section-heading > a, .sl-section-heading > span { flex: 0 0 auto; color: var(--sl-muted); font-size: 11px; font-weight: 750; text-decoration: none; }
.sl-section-heading > a:hover { color: var(--sl-accent); }

.sl-product-card { height: 100%; margin-bottom: 25px; border: 0; background: transparent; }
.sl-product-card__image { position: relative; overflow: hidden; aspect-ratio: 4 / 5; border-radius: 0; background: #f4f4f4; }
.sl-product-card__image > a { width: 100%; height: 100%; display: block; }
.sl-product-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.sl-product-card:hover .sl-product-card__image img { transform: scale(1.035); }
.sl-product-badge { position: absolute; top: 10px; left: 10px; padding: 6px 8px; border-radius: 999px; color: var(--sl-ink); background: rgba(255, 255, 255, .92); font-size: 8px; font-weight: 950; letter-spacing: .09em; }
.sl-product-badge--sale { color: #fff; background: var(--sl-accent); }
.sl-wishlist { position: absolute; top: 8px; right: 8px; width: 36px; height: 36px; border: 0; border-radius: 50%; color: var(--sl-ink); background: rgba(255, 255, 255, .93); box-shadow: 0 4px 16px rgba(0, 0, 0, .08); }
.sl-product-card__body { padding: 15px 0 0; text-align: center; }
.sl-product-card__meta { margin: 0 0 5px; color: var(--sl-muted); font-size: 8px; font-weight: 800; letter-spacing: .06em; }
.sl-product-card h3 { min-height: 42px; margin: 0 0 8px; overflow: hidden; font-size: 14px; font-weight: 400; line-height: 1.5; text-transform: uppercase; }
.sl-product-card h3 a { color: var(--sl-ink); text-decoration: none; }
.sl-product-card .price { min-height: 32px; display: flex; justify-content: center; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 10px; color: #101010; font-size: 18px; font-weight: 500; }
.sl-product-card .price-old { color: var(--sl-muted); font-size: 10px; font-weight: 500; text-decoration: line-through; }
.sl-card-add { width: 100%; min-height: 44px; display: flex; justify-content: center; align-items: center; padding: 8px 12px; border: 1px solid #232323; border-radius: 0; color: #232323; background: #fff; font-size: 14px; font-weight: 700; text-decoration: none; text-transform: uppercase; }
.sl-card-add:hover { color: #fff; background: #4b4b4b; }

.sl-story { padding: 64px 0; background: var(--sl-canvas); }
.sl-story__grid { display: grid; gap: 38px; }
.sl-story__visual { position: relative; min-height: 430px; overflow: hidden; border-radius: 24px; background: linear-gradient(180deg, transparent 50%, rgba(20, 12, 10, .6)), var(--sl-story-image) center/cover; }
.sl-story__visual::before { content: ''; position: absolute; inset: 20px; border: 1px solid rgba(255, 255, 255, .45); border-radius: 18px; }
.sl-story__visual > span { position: absolute; right: 30px; bottom: 26px; color: #fff; font-size: 12px; font-weight: 950; letter-spacing: .17em; text-align: right; }
.sl-story__content { align-self: center; }
.sl-story__content .sl-eyebrow { color: var(--sl-accent); }
.sl-story__content h2 { margin: 0 0 18px; font-size: clamp(38px, 8vw, 64px); font-weight: 950; letter-spacing: -.06em; line-height: .96; }
.sl-story__content > p:not(.sl-eyebrow) { color: var(--sl-muted); font-size: 15px; line-height: 1.7; }
.sl-story__content ol { display: grid; gap: 0; margin: 25px 0 30px; padding: 0; list-style: none; }
.sl-story__content li { display: grid; grid-template-columns: 42px 1fr; gap: 12px; padding: 14px 0; border-top: 1px solid var(--sl-border); }
.sl-story__content li > span { color: var(--sl-accent); font-size: 10px; font-weight: 900; }
.sl-story__content li div { display: grid; gap: 2px; }
.sl-story__content li strong { font-size: 13px; }
.sl-story__content li small { color: var(--sl-muted); font-size: 11px; }
.sl-social-proof { padding-top: 68px; padding-bottom: 68px; }
.sl-quote-grid { display: grid; gap: 12px; }
.sl-quote-grid blockquote { margin: 0; padding: 24px; border: 1px solid var(--sl-border); border-radius: var(--sl-radius); background: #fff; }
.sl-quote-grid blockquote > div { margin-bottom: 16px; color: #e1a21d; font-size: 11px; letter-spacing: .12em; }
.sl-quote-grid blockquote p { min-height: 64px; margin: 0 0 17px; font-size: 14px; font-weight: 700; line-height: 1.55; }
.sl-quote-grid blockquote footer { color: var(--sl-muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.sl-faq { display: grid; gap: 30px; padding-top: 30px; padding-bottom: 76px; }
.sl-faq > div:first-child .sl-eyebrow { color: var(--sl-accent); }
.sl-faq h2 { margin: 0 0 12px; font-size: 40px; font-weight: 950; letter-spacing: -.05em; }
.sl-faq > div:first-child > p:last-child { color: var(--sl-muted); }
.sl-faq__items details { border-top: 1px solid var(--sl-border); }
.sl-faq__items details:last-child { border-bottom: 1px solid var(--sl-border); }
.sl-faq__items summary { display: flex; justify-content: space-between; gap: 14px; padding: 20px 0; font-size: 13px; font-weight: 850; cursor: pointer; list-style: none; }
.sl-faq__items summary::-webkit-details-marker { display: none; }
.sl-faq__items details[open] summary i { transform: rotate(45deg); }
.sl-faq__items details p { margin: -5px 0 20px; padding-right: 28px; color: var(--sl-muted); font-size: 13px; line-height: 1.65; }
.sl-final-cta { padding: 70px 0; color: #fff; background: radial-gradient(circle at 80% 20%, #ef6679 0, transparent 28%), linear-gradient(125deg, #7d1321, var(--sl-accent) 62%, #201714); }
.sl-final-cta h2 { margin: 0 0 26px; color: #fff; font-size: clamp(42px, 10vw, 75px); font-weight: 950; letter-spacing: -.06em; line-height: .93; }

.sl-cart-root { position: absolute; }
.sl-cart-drawer { width: min(94vw, 440px) !important; }
.sl-cart-drawer__header { min-height: 88px; padding: 19px 22px; border-bottom: 1px solid var(--sl-border); }
.sl-cart-drawer__header .sl-eyebrow { margin-bottom: 2px; color: var(--sl-accent); font-size: 9px; }
.sl-cart-drawer__header h2 { margin: 0; font-size: 25px; font-weight: 950; letter-spacing: -.04em; }
.sl-cart-drawer__body { display: flex; flex-direction: column; padding: 0; }
.sl-cart-drawer__products { flex: 1; padding: 7px 22px; overflow: auto; }
.sl-cart-line { position: relative; display: grid; grid-template-columns: 78px 1fr auto; gap: 13px; padding: 16px 0; border-bottom: 1px solid var(--sl-border); }
.sl-cart-line__image { width: 78px; height: 98px; overflow: hidden; border-radius: 12px; background: var(--sl-canvas); }
.sl-cart-line__image img { width: 100%; height: 100%; object-fit: cover; }
.sl-cart-line__content { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; }
.sl-cart-line__name { margin-bottom: 6px; color: var(--sl-ink); font-size: 13px; font-weight: 850; line-height: 1.3; text-decoration: none; }
.sl-cart-line__content small { color: var(--sl-muted); font-size: 10px; }
.sl-cart-line__meta { width: 100%; display: flex; justify-content: space-between; margin-top: auto; font-size: 11px; }
.sl-cart-line__meta strong { font-size: 13px; }
.sl-cart-line__remove { width: 28px; height: 28px; border: 0; border-radius: 50%; color: var(--sl-muted); background: var(--sl-canvas); }
.sl-cart-drawer__footer { padding: 19px 22px max(19px, env(safe-area-inset-bottom)); border-top: 1px solid var(--sl-border); background: #fff; }
.sl-cart-totals { display: grid; gap: 8px; margin-bottom: 17px; }
.sl-cart-totals > div { display: flex; justify-content: space-between; color: var(--sl-muted); font-size: 12px; }
.sl-cart-totals > div:last-child { padding-top: 10px; color: var(--sl-ink); border-top: 1px solid var(--sl-border); font-size: 16px; }
.sl-cart-link { display: block; margin: 13px auto 0; color: var(--sl-ink); font-size: 11px; font-weight: 750; text-align: center; text-decoration: underline; text-underline-offset: 3px; }
.sl-cart-assurance { margin-top: 16px; color: var(--sl-muted); font-size: 10px; text-align: center; }
.sl-cart-empty { margin: auto; padding: 48px 26px; text-align: center; }
.sl-cart-empty > span { width: 72px; height: 72px; display: grid; place-items: center; margin: 0 auto 18px; border-radius: 50%; color: var(--sl-accent); background: var(--sl-accent-soft); font-size: 25px; }
.sl-cart-empty h3 { font-size: 22px; font-weight: 950; }
.sl-cart-empty p { margin-bottom: 22px; color: var(--sl-muted); }

.sl-breadcrumb { margin: 20px 0; font-size: 10px; }
.sl-breadcrumb a { color: var(--sl-muted); text-decoration: none; }
.sl-product-page { padding-bottom: 72px; }
.sl-product-layout { display: grid; gap: 28px; }
.sl-product-gallery, .sl-product-panel { min-width: 0; }
.sl-product-gallery__main { position: relative; display: block; overflow: hidden; aspect-ratio: 1 / 1.17; border-radius: 20px; background: var(--sl-canvas); }
.sl-product-gallery__main img { width: 100%; height: 100%; object-fit: cover; }
.sl-product-gallery__main > span { position: absolute; right: 13px; bottom: 13px; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; color: var(--sl-ink); background: rgba(255, 255, 255, .91); }
.sl-product-gallery__thumbs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 7px; margin-top: 7px; }
.sl-product-gallery__thumbs a { overflow: hidden; aspect-ratio: 1; border: 1px solid transparent; border-radius: 11px; background: var(--sl-canvas); }
.sl-product-gallery__thumbs a:hover { border-color: var(--sl-ink); }
.sl-product-gallery__thumbs img { width: 100%; height: 100%; object-fit: cover; }
.sl-product-panel { align-self: start; }
.sl-product-kicker { margin-bottom: 7px; color: var(--sl-accent); font-size: 9px; font-weight: 950; letter-spacing: .14em; }
.sl-product-panel h1 { margin: 0 0 10px; font-size: clamp(28px, 5vw, 44px); font-weight: 950; letter-spacing: -.05em; line-height: 1.04; }
.sl-rating { display: flex; align-items: center; gap: 3px; color: #e0a216; font-size: 11px; }
.sl-rating a { margin-left: 7px; color: var(--sl-muted); }
.sl-product-price { display: flex; align-items: baseline; gap: 12px; margin: 17px 0 8px; }
.sl-product-price strong { font-size: 27px; font-weight: 950; }
.sl-product-price .price-old { color: var(--sl-muted); font-size: 13px; text-decoration: line-through; }
.sl-stock-line { display: flex; justify-content: space-between; gap: 10px; color: var(--sl-muted); font-size: 10px; }
.sl-stock-line span { color: var(--sl-success); font-weight: 800; }
.sl-height-benefit { display: grid; grid-template-columns: 64px 1fr; gap: 13px; align-items: center; margin: 19px 0 25px; padding: 13px; border: 1px solid #f4ccd2; border-radius: 16px; background: var(--sl-accent-soft); }
.sl-height-benefit > span { display: grid; place-items: center; aspect-ratio: 1; border-radius: 50%; color: #fff; background: var(--sl-accent); font-size: 13px; font-weight: 950; }
.sl-height-benefit div { display: grid; gap: 2px; }
.sl-height-benefit strong { font-size: 13px; }
.sl-height-benefit small { color: #6d4d52; font-size: 10px; line-height: 1.45; }
.sl-product-options { display: grid; gap: 21px; }
.sl-option { margin: 0; padding: 0; border: 0; }
.sl-option > label, .sl-option > legend { width: 100%; margin-bottom: 9px; font-size: 12px; font-weight: 850; }
.sl-option > label small, .sl-option > legend small { float: right; color: var(--sl-muted); font-size: 9px; font-weight: 550; }
.sl-option-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.sl-option-chips input { position: absolute; opacity: 0; pointer-events: none; }
.sl-option-chips label { min-width: 48px; min-height: 44px; display: flex; justify-content: center; align-items: center; gap: 7px; padding: 8px 12px; border: 1px solid var(--sl-border); border-radius: 12px; background: #fff; font-size: 12px; font-weight: 750; cursor: pointer; }
.sl-option-chips label img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
.sl-option-chips label small { color: var(--sl-muted); font-weight: 500; }
.sl-option-chips input:checked + label { color: #fff; border-color: var(--sl-ink); background: var(--sl-ink); box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--sl-ink); }
.sl-option-chips.is-invalid { padding: 6px; border: 1px solid #dc3545; border-radius: 12px; }
.sl-size-guide-link { margin-top: 12px; padding: 0; border: 0; color: var(--sl-muted); background: transparent; font-size: 11px; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }
.sl-buy-box { display: grid; grid-template-columns: auto 67px 1fr; gap: 8px; align-items: center; margin-top: 24px; }
.sl-buy-box label { color: var(--sl-muted); font-size: 11px; }
.sl-buy-box input { min-height: 48px; text-align: center; }
.sl-buy-box .sl-button { min-height: 50px; }
#button-buy-now { margin-top: 9px; }
.sl-product-wishlist button { width: 100%; margin-top: 9px; padding: 9px; border: 0; color: var(--sl-muted); background: transparent; font-size: 11px; font-weight: 750; }
.sl-product-promises { display: grid; gap: 11px; margin-top: 22px; padding-top: 19px; border-top: 1px solid var(--sl-border); }
.sl-product-promises > div { display: flex; align-items: center; gap: 11px; }
.sl-product-promises i { width: 23px; color: var(--sl-accent); text-align: center; }
.sl-product-promises span { display: grid; font-size: 11px; }
.sl-product-promises small { color: var(--sl-muted); }
.sl-whatsapp-link { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 10px; margin-top: 18px; padding: 13px; border-radius: 14px; color: var(--sl-ink); background: #eaf8f0; text-decoration: none; }
.sl-whatsapp-link > i:first-child { color: #159957; font-size: 24px; }
.sl-whatsapp-link span { display: grid; font-size: 11px; }
.sl-whatsapp-link small { color: var(--sl-muted); }
.sl-product-details { margin-top: 50px; }
.sl-product-details nav { display: flex; gap: 21px; overflow-x: auto; border-bottom: 1px solid var(--sl-border); }
.sl-product-details nav a { flex: 0 0 auto; padding: 13px 0; color: var(--sl-muted); font-size: 11px; font-weight: 850; text-decoration: none; }
.sl-product-details nav a.active { color: var(--sl-ink); border-bottom: 2px solid var(--sl-ink); }
.sl-product-copy, .sl-specification, #tab-review { padding: 23px 0; color: #4c4842; font-size: 13px; line-height: 1.75; }
.sl-specification > div { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid var(--sl-border); }
.sl-detail-cards { display: grid; gap: 10px; margin: 0 0 30px; }
.sl-detail-cards article { padding: 20px; border-radius: 16px; background: var(--sl-canvas); }
.sl-detail-cards i { margin-bottom: 16px; color: var(--sl-accent); font-size: 20px; }
.sl-detail-cards strong { display: block; font-size: 13px; }
.sl-detail-cards p { margin: 5px 0 0; color: var(--sl-muted); font-size: 11px; }
.sl-size-guide { border: 0; border-radius: 22px; box-shadow: var(--sl-shadow); }
.sl-size-guide .modal-header { padding: 22px 24px 12px; border: 0; }
.sl-size-guide .sl-eyebrow { margin-bottom: 3px; color: var(--sl-accent); font-size: 8px; }
.sl-size-guide h2 { font-weight: 950; letter-spacing: -.04em; }
.sl-size-guide .modal-body { padding: 8px 24px 26px; color: var(--sl-muted); font-size: 12px; }
.sl-size-table { display: grid; grid-template-columns: repeat(5, 1fr); margin: 18px 0; overflow: hidden; border: 1px solid var(--sl-border); border-radius: 12px; }
.sl-size-table span { display: grid; gap: 3px; padding: 13px 4px; color: var(--sl-ink); border-right: 1px solid var(--sl-border); font-weight: 850; text-align: center; }
.sl-size-table span:last-child { border: 0; }
.sl-size-table small { color: var(--sl-muted); font-size: 8px; font-weight: 550; }
.sl-mobile-buy-bar { display: none; }

.sl-cart-page, .sl-checkout-page { padding-bottom: 80px; }
.sl-page-heading, .sl-checkout-heading { display: flex; justify-content: space-between; align-items: end; margin: 23px 0 27px; }
.sl-page-heading .sl-eyebrow, .sl-checkout-heading .sl-eyebrow { margin-bottom: 4px; color: var(--sl-accent); font-size: 9px; }
.sl-page-heading h1, .sl-checkout-heading h1 { margin: 0; font-size: 34px; font-weight: 950; letter-spacing: -.05em; }
.sl-page-heading > span, .sl-checkout-heading > span { color: var(--sl-muted); font-size: 11px; }
.sl-cart-page__layout, .sl-checkout-layout { display: grid; gap: 28px; }
.sl-cart-page__products { min-width: 0; }
.sl-cart-card { display: grid; grid-template-columns: 100px 1fr; gap: 15px; padding: 18px 0; border-bottom: 1px solid var(--sl-border); }
.sl-cart-card__image { overflow: hidden; aspect-ratio: 4 / 5; border-radius: 13px; background: var(--sl-canvas); }
.sl-cart-card__image img { width: 100%; height: 100%; object-fit: cover; }
.sl-cart-card__info { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; }
.sl-cart-card__name { color: var(--sl-ink); font-size: 13px; font-weight: 850; text-decoration: none; }
.sl-cart-card__options { display: flex; flex-wrap: wrap; gap: 5px 11px; margin: 7px 0; color: var(--sl-muted); font-size: 10px; }
.sl-stock-warning { color: var(--sl-accent); font-size: 10px; font-weight: 850; }
.sl-quantity-form { display: flex; align-items: center; gap: 7px; margin-top: auto; font-size: 10px; }
.sl-quantity-form input { width: 58px; min-height: 37px; }
.sl-quantity-form button { padding: 8px 9px; border: 1px solid var(--sl-border); border-radius: 8px; background: #fff; font-size: 10px; font-weight: 750; }
.sl-cart-card__remove { margin-top: 9px; color: var(--sl-muted); font-size: 10px; }
.sl-cart-card__price { grid-column: 2; display: flex; justify-content: space-between; margin-top: -4px; }
.sl-cart-card__price small { color: var(--sl-muted); }
.sl-cart-card__price strong { font-size: 14px; }
.sl-order-summary { align-self: start; padding: 23px; border: 1px solid var(--sl-border); border-radius: var(--sl-radius); background: var(--sl-canvas); }
.sl-order-summary h2 { margin-bottom: 19px; font-size: 20px; font-weight: 950; }
.sl-order-summary__totals { display: grid; gap: 11px; margin-bottom: 21px; }
.sl-order-summary__totals > div { display: flex; justify-content: space-between; color: var(--sl-muted); font-size: 12px; }
.sl-order-summary__totals > div:last-child { padding-top: 12px; color: var(--sl-ink); border-top: 1px solid var(--sl-border); font-size: 16px; }
.sl-order-summary__trust { display: flex; justify-content: center; gap: 13px; margin-top: 17px; color: var(--sl-muted); font-size: 9px; }
.sl-cart-extras { margin-top: 28px; }
.sl-cart-empty--page { min-height: 55vh; display: grid; place-content: center; }

.sl-body--checkout { color: #242424; background: #fff; font-family: var(--sl-font-family); }
.sl-body--checkout main { min-height: calc(100vh - 160px); }
.sl-checkout-page { width: 100%; max-width: 900px; margin: 0 auto; padding: 0 24px 70px; }
.sl-checkout-page > .row { margin: 0; }
.sl-checkout-page > .row > #content { width: 100%; padding: 0; }
.sl-checkout-summary { border-bottom: 1px solid #e7e7e7; }
.sl-checkout-summary__toggle { width: 100%; min-height: 49px; display: flex; justify-content: space-between; align-items: center; padding: 0; border: 0; color: #242424; background: #fff; font-size: 14px; text-align: left; }
.sl-checkout-summary__toggle strong { display: flex; align-items: center; gap: 5px; font-size: 14px; }
.sl-checkout-summary__toggle small { font-size: 14px; font-weight: 400; }
.sl-checkout-summary__toggle i { margin-left: 10px; font-size: 12px; transition: transform .2s ease; }
.sl-checkout-summary__toggle.is-open i { transform: rotate(180deg); }
.sl-checkout-summary__panel { padding: 10px 0 22px; }
.sl-checkout-summary__panel .table { margin: 0; border-color: #ececec; font-size: 12px; }
.sl-checkout-summary__panel .table > :not(caption) > * > * { padding: 10px; }
.sl-checkout-step { scroll-margin-top: 10px; border-bottom: 1px solid #e6e6e6; }
.sl-checkout-step:last-of-type { border-bottom: 0; }
.sl-checkout-step__heading { width: 100%; min-height: 80px; display: flex; align-items: center; gap: 16px; padding: 0; border: 0; color: #8f8f94; background: transparent; font-size: 20px; text-align: left; }
.sl-checkout-step__heading > span { width: 32px; height: 32px; display: grid; flex: 0 0 32px; place-items: center; border: 1px solid #242424; border-radius: 50%; color: #242424; font-size: 17px; font-weight: 400; }
.sl-checkout-step__heading strong { font-weight: 650; }
.sl-checkout-step.is-open .sl-checkout-step__heading { color: #242424; }
.sl-checkout-step.is-open .sl-checkout-step__heading > span { color: #fff; background: #242424; }
.sl-checkout-step__body { max-height: 0; overflow: hidden; padding: 0; opacity: 0; transform: translateY(-6px); transition: max-height .45s ease, opacity .22s ease, transform .3s ease, padding .3s ease; }
.sl-checkout-step.is-open .sl-checkout-step__body { max-height: 3200px; padding: 9px 0 25px; opacity: 1; transform: translateY(0); }
.sl-checkout-source-fields { display: none !important; }
.sl-reference-fieldset { min-width: 0; margin: 0 0 41px; padding: 0; border: 0; }
.sl-reference-fieldset legend, .sl-checkout-step__body legend { margin: 0 0 20px; color: #242424; font-size: 20px; font-weight: 400; }
.sl-reference-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.sl-reference-contact, .sl-reference-person, .sl-reference-address, .sl-reference-region, .sl-reference-phone { min-width: 0; }
.sl-reference-fieldset .mb-3, .sl-reference-fieldset .col { width: 100%; margin-bottom: 16px !important; padding: 0; }
.sl-reference-fieldset .form-label { display: none; }
.sl-reference-fieldset .form-control, .sl-reference-fieldset .form-select, .sl-checkout-step__body .form-control, .sl-checkout-step__body .form-select { width: 100%; min-height: 56px; padding: 0 16px; border: 1px solid #dedede; border-radius: 8px; color: #242424; background-color: #fff; box-shadow: none; font-size: 14px; }
.sl-reference-fieldset .form-control::placeholder { color: #8f8f94; opacity: 1; }
.sl-reference-contact > .form-check { display: flex; align-items: center; gap: 12px; margin: 3px 0 0; padding: 0; color: #8f8f94; font-size: 14px; }
.sl-reference-contact > .form-check .form-check-input { order: -1; width: 20px; height: 20px; flex: 0 0 20px; margin: 0; border-color: #dedede; border-radius: 3px; }
.sl-reference-phone { margin-top: 0; }
.sl-phone-field { position: relative; margin-bottom: 0 !important; }
.sl-reference-fieldset .sl-phone-field .form-label { position: absolute; z-index: 1; top: 7px; left: 16px; display: block; margin: 0; color: #8f8f94; font-size: 11px; font-weight: 400; }
.sl-reference-fieldset .sl-phone-field .form-control { padding-top: 14px; }
.sl-reference-fieldset .form-select:disabled { color: #aaa; background-color: #f7f7f7; }
.sl-checkout-step[data-step="2"] #checkout-shipping-method > fieldset,
.sl-checkout-step[data-step="3"] #checkout-payment-method > fieldset { display: none; }
.sl-method-inline { margin: 4px 0 24px; }
.sl-method-inline > form > p:first-child { margin-bottom: 24px; color: #8f8f94; font-size: 14px; }
.sl-method-inline > form > p strong { display: block; margin-top: 20px; color: #242424; font-size: 16px; font-weight: 500; }
.sl-method-inline .form-check { display: grid; grid-template-columns: 20px minmax(0, 1fr); grid-template-areas: "radio label" "radio description"; align-items: center; column-gap: 12px; row-gap: 2px; min-height: 64px; margin: 0 0 12px; padding: 12px 16px; border: 1px solid #dedede; border-radius: 8px; transition: border-color .18s ease, box-shadow .18s ease; }
.sl-method-inline .form-check:has(input:checked) { border-color: #242424; box-shadow: inset 0 0 0 1px #242424; }
.sl-method-inline .form-check input { grid-area: radio; width: 19px; height: 19px; margin: 0; }
.sl-method-inline .form-check label { grid-area: label; display: block; color: #242424; font-size: 15px; font-weight: 600; line-height: 1.25; }
.sl-method-inline .form-check .form-text { grid-area: description; margin: 0 !important; color: #6f6f74; font-size: 13px; line-height: 1.35; }
.sl-carrier-logo { width: 58px; height: 30px; display: inline-grid; flex: 0 0 58px; place-items: center; border-radius: 5px; font-size: 12px; font-weight: 900; letter-spacing: -.03em; }
.sl-carrier-logo--aras { color: #fff; background: #d71920; font-style: italic; }
.sl-carrier-logo--ptt { color: #123d73; background: #f5cc16; letter-spacing: .08em; }
.sl-method-inline .text-end { margin-top: 24px; }
.sl-method-inline .btn-primary { width: 100%; min-height: 56px; border-radius: 8px; background: #242424; border-color: #242424; font-size: 15px; font-weight: 700; }
.sl-checkout-step .required > .form-label::before { display: none; }
#form-register > .text-end { margin-top: 6px; }
#button-register, #button-shipping-methods, #button-payment-methods, #button-shipping-method, #button-payment-method, #checkout-payment .btn-primary { width: 100%; min-height: 56px; border: 1px solid #242424; border-radius: 8px; color: #fff; background: #242424; box-shadow: none; font-size: 15px; font-weight: 700; }
#checkout-shipping-method fieldset, #checkout-payment-method fieldset { margin: 0 0 20px; padding: 0; border: 0; }
#checkout-shipping-method .input-group, #checkout-payment-method .input-group { display: grid; grid-template-columns: 1fr; gap: 12px; }
#checkout-shipping-method .input-group-text, #checkout-payment-method .input-group-text { display: none; }
.sl-checkout-confirm-source { display: none; }
#sl-checkout-finalize { margin-top: 22px; }
#sl-checkout-finalize:empty { display: none; }
#sl-checkout-finalize .text-end { margin: 0; }
#checkout-payment-method .form-switch { display: flex; align-items: flex-start; gap: 11px; padding: 0; }
#checkout-payment-method .form-switch .form-check-label { order: 2; color: #555; font-size: 13px; line-height: 1.45; text-align: left; }
#checkout-payment-method .form-switch .form-check-input { order: 1; width: 20px; height: 20px; flex: 0 0 20px; float: none; margin: 0; border-radius: 4px; }
#checkout-payment-method .form-switch .form-check-input:checked { border-color: #242424; background-color: #242424; }
.sl-agreement-card { min-height: 56px; display: flex; align-items: center !important; gap: 14px !important; margin: 18px 0 16px !important; padding: 6px 0 !important; border: 0; background: #fff; }
.sl-agreement-card .form-check-label { flex: 1; color: #747474 !important; font-size: 15px !important; font-weight: 400; line-height: 1.45; cursor: pointer; }
.sl-agreement-card .form-check-label a { color: #202020; font-weight: 700; text-decoration: none; }
.sl-agreement-card .form-check-input { width: 24px !important; height: 24px !important; flex-basis: 24px !important; margin-right: 0 !important; border: 2px solid #242424 !important; border-radius: 5px !important; cursor: pointer; }
.sl-agreement-card .form-check-input:checked { border-color: #242424 !important; background-color: #242424 !important; }
.sl-agreement-card.is-saving { opacity: .72; }
#sl-checkout-finalize #button-confirm { width: 100%; min-height: 70px; border: 1px solid #242424; border-radius: 10px; color: #fff; background: #242424; box-shadow: none; font-size: 16px; font-weight: 700; }
#sl-checkout-finalize #button-confirm:hover { color: #fff; background: #111; }
#sl-checkout-finalize #button-confirm:disabled { opacity: .58; cursor: wait; }
.sl-body--checkout #alert .alert-success { display: none; }

@media (prefers-reduced-motion: reduce) {
  .sl-checkout-step__body { transition: none; }
}

body.sl-body > #container > .sl-footer { position: static; flex: 0 0 auto; width: 100%; padding: 0 0 23px; color: #d6d1cb; background: var(--sl-ink); }
.sl-footer__lead { display: grid; gap: 20px; padding-top: 45px; padding-bottom: 38px; border-bottom: 1px solid #38342f; }
.sl-footer__lead .sl-eyebrow { color: #ef8d9a; font-size: 9px; }
.sl-footer__lead h2 { max-width: 620px; margin: 0; color: #fff; font-size: clamp(25px, 5vw, 40px); font-weight: 950; letter-spacing: -.045em; }
.sl-footer__lead .sl-button { justify-self: start; }
.sl-footer__grid { display: grid; gap: 31px; padding-top: 40px; }
.sl-footer h2 { margin: 0 0 13px; color: #fff; font-size: 11px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.sl-footer__section { min-width: 0; }
.sl-footer__section summary { display: flex; justify-content: space-between; align-items: center; color: #fff; cursor: pointer; list-style: none; }
.sl-footer__section summary::-webkit-details-marker { display: none; }
.sl-footer__section summary h2 { margin: 0; }
.sl-footer__section summary i { display: none; transition: transform .2s ease; }
.sl-footer__section[open] summary i::before { content: "\f068"; }
.sl-footer__section > div { padding-top: 5px; }
.sl-footer a:not(.sl-footer__logo):not(.sl-button) { display: block; margin: 8px 0; color: #d6d1cb; font-size: 12px; text-decoration: none; }
.sl-footer a:hover { color: #fff !important; }
.sl-footer__logo { color: #fff; }
.sl-footer__brand > p { max-width: 330px; margin-top: 11px; color: #aaa49d; font-size: 12px; line-height: 1.65; }
.sl-footer__whatsapp { margin-top: 17px !important; color: #7ce3ad !important; font-weight: 800; }
.sl-footer__payments { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 35px; padding-top: 18px; border-top: 1px solid #38342f; }
.sl-footer__payments > span { width: 100%; margin-bottom: 4px; color: #87817a; font-size: 9px; text-transform: uppercase; }
.sl-footer__payments strong { padding: 7px 9px; border: 1px solid #46413b; border-radius: 7px; color: #fff; font-size: 9px; letter-spacing: .03em; }
.sl-footer__bottom { display: flex; flex-direction: column; gap: 5px; margin-top: 20px; color: #827d76; font-size: 10px; }
.sl-quick-buy .modal-dialog { width: min(720px, calc(100% - 20px)); margin-inline: auto; }
.sl-quick-buy .modal-content { height: 75dvh; max-height: 75dvh; overflow: hidden; border: 0; border-radius: 0; box-shadow: 0 18px 55px rgba(0, 0, 0, .2); }
.sl-quick-buy .modal-header { position: absolute; z-index: 4; top: 5px; right: 5px; display: block; padding: 0; border: 0; }
.sl-quick-buy__close { width: 32px; height: 32px; display: grid; place-items: center; padding: 0; border: 0; color: #fff; background: #050505; font-size: 21px; }
.sl-quick-buy .modal-body { overflow-x: hidden; overflow-y: auto; padding: 16px 16px max(24px, env(safe-area-inset-bottom)); }
.sl-quick-buy__loading, .sl-quick-buy__message { min-height: 180px; display: grid; place-content: center; justify-items: center; gap: 15px; color: var(--sl-muted); font-size: 13px; text-align: center; }
.sl-quick-buy__overview { margin-bottom: 12px; }
.sl-quick-buy__gallery { position: relative; width: 100%; margin: 12px 0 8px; background: #f4f4f4; }
.sl-quick-buy__gallery-track { display: flex; margin-top: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.sl-quick-buy__gallery-track::-webkit-scrollbar { display: none; }
.sl-quick-buy__gallery-track img { width: 100%; aspect-ratio: 339 / 390; flex: 0 0 100%; object-fit: cover; scroll-snap-align: start; }
.sl-quick-buy__gallery-dots { position: absolute; right: 0; bottom: 12px; left: 0; display: flex; justify-content: center; align-items: center; gap: 14px; pointer-events: none; }
.sl-quick-buy__gallery-dots i { width: 8px; height: 8px; border-radius: 99px; background: rgba(255, 255, 255, .95); box-shadow: 0 0 0 1px rgba(0, 0, 0, .08); transition: width .2s, background .2s; }
.sl-quick-buy__gallery-dots i.is-active { width: 32px; background: #777; }
.sl-quick-buy__copy { display: grid; }
.sl-quick-buy__copy > b { color: #050505; font-size: 18px; font-weight: 800; line-height: 27px; }
.sl-quick-buy__copy > strong { color: #111; font-size: 18px; font-weight: 400; line-height: 27px; text-transform: uppercase; }
.sl-quick-buy__overview .sl-reference-product__price { min-height: 37px; margin: 28px 0 12px; }
.sl-quick-buy__overview .sl-reference-product__price > strong, .sl-quick-buy__overview .sl-reference-product__price div strong { font-size: 18px; font-weight: 800; }
.sl-quick-buy .sl-reference-options { gap: 18px; margin-top: 6px; }
.sl-quick-buy .sl-reference-option > label, .sl-quick-buy .sl-reference-option > legend { font-size: 14px; }
.sl-quick-buy .sl-reference-option__chips label { min-height: 50px; font-size: 14px; font-weight: 700; }
.sl-quick-buy .sl-reference-buy-row { grid-template-columns: 112px minmax(0, 1fr); margin-top: 24px; }
.sl-quick-buy .sl-reference-quantity { grid-template-columns: repeat(3, 1fr); }
.sl-quick-buy .sl-reference-quantity button, .sl-quick-buy .sl-reference-quantity input { width: auto; min-width: 0; }
.sl-quick-buy .sl-reference-buy-row [type="submit"] { min-height: 56px; padding: 8px 10px; border: 1px solid #232323; border-radius: 0; color: #fff; background: #232323; font-size: 13px; font-weight: 600; text-transform: uppercase; }
.sl-quick-buy .sl-reference-buy-row [type="submit"]:disabled { opacity: .62; }
.sl-quick-buy__detail { display: block; margin: 17px 0 0; color: var(--sl-ink); font-size: 12px; font-weight: 600; text-align: center; text-underline-offset: 3px; }
body.sl-body > #container > .sl-checkout-footer { position: static; flex: 0 0 auto; width: 100%; padding: 24px 0 18px; color: #9a9a9f; background: #fff; }
.sl-checkout-footer .container { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 13px; font-size: 12px; }
.sl-checkout-footer a { color: #9a9a9f; text-decoration: none; }

/* Branded account, information and system pages */
.sl-body .breadcrumb { display: none !important; }
.sl-skip-link { position: fixed; top: 8px; left: 8px; z-index: 3000; padding: 11px 16px; color: #fff; background: #202020; font-size: 13px; font-weight: 700; text-decoration: none; transform: translateY(-150%); }
.sl-skip-link:focus { color: #fff; transform: translateY(0); }
.sl-body--system main { min-height: 62vh; background: #f7f7f7; }
.sl-body--system main > .container,
.sl-system-page__inner { width: 100%; max-width: 1180px; margin: 0 auto; padding: 42px 16px 72px; }
.sl-body--system main > .container > .row { margin: 0; }
.sl-body--system main #content { min-width: 0; padding: 0; }
.sl-system-page > #column-left,
.sl-system-page > #column-right { display: none !important; }
.sl-body--system main #content[class*="col-"] { width: 100%; }
.sl-body--system main #content > h1,
.sl-system-heading h1 { margin: 0 0 12px; color: #202020; font-size: clamp(28px, 6vw, 42px); font-weight: 500; letter-spacing: -.035em; line-height: 1.08; }
.sl-body--system main #content > h1::before,
.sl-system-heading::before { display: block; margin-bottom: 9px; color: var(--sl-accent); font-size: 10px; font-weight: 600; letter-spacing: .16em; content: 'INSTAPAPUCUM'; }
.sl-system-heading { max-width: 620px; margin: 0 auto 28px; text-align: center; }
.sl-system-heading::before { content: none; }
.sl-system-heading .sl-eyebrow { margin-bottom: 8px; color: var(--sl-accent); }
.sl-system-heading > p:last-child { margin: 0; color: #71717a; font-size: 14px; line-height: 1.65; }
.sl-body--system main h2 { color: #202020; font-size: 21px; font-weight: 500; }
.sl-body--system main p { line-height: 1.65; }
.sl-body--system main .card,
.sl-body--system main .border.rounded { overflow: hidden; border: 1px solid #e5e5e5 !important; border-radius: 12px !important; background: #fff; box-shadow: none; }
.sl-body--system main .card-header { padding: 18px 20px; border-bottom-color: #ececec; background: #fff; font-size: 16px; font-weight: 500; }
.sl-body--system main .card-body,
.sl-body--system main .border.rounded.p-3 { padding: 22px !important; }
.sl-body--system main .form-control,
.sl-body--system main .form-select { min-height: 52px; padding: 12px 14px; border: 1px solid #dcdcdc; border-radius: 8px; color: #202020; background-color: #fff; box-shadow: none; font-size: 14px; }
.sl-body--system main textarea.form-control { min-height: 120px; }
.sl-body--system main .form-control:focus,
.sl-body--system main .form-select:focus { border-color: #202020; box-shadow: 0 0 0 3px rgba(32, 32, 32, .08); }
.sl-body--system main .form-label,
.sl-body--system main .col-form-label { margin-bottom: 7px; color: #323232; font-size: 13px; font-weight: 500; }
.sl-body--system main .btn { min-height: 46px; padding: 11px 19px; border-radius: 8px; box-shadow: none; font-size: 13px; font-weight: 600; }
.sl-body--system main .btn-primary { border-color: #202020; color: #fff; background: #202020; }
.sl-body--system main .btn-primary:hover { border-color: #202020; color: #202020; background: #fff; }
.sl-body--system main .btn-info { border-color: #202020; color: #fff; background: #202020; }
.sl-body--system main .btn-info:hover { border-color: #202020; color: #202020; background: #fff; }
.sl-body--system main .btn-danger { border-color: var(--sl-accent); color: #fff; background: var(--sl-accent); }
.sl-body--system main .btn-danger:hover { border-color: var(--sl-accent); color: var(--sl-accent); background: #fff; }
.sl-body--system main .btn-light { border-color: #dedede; background: #fff; }
.sl-body--system main .alert { border: 0; border-radius: 9px; font-size: 13px; }
.sl-body--system main .list-group { overflow: hidden; border: 1px solid #e5e5e5; border-radius: 12px; }
.sl-body--system main .list-group-item { padding: 13px 16px; border-color: #ededed; color: #333; font-size: 13px; }
.sl-body--system main .list-group-item:hover { color: var(--sl-accent); background: #fafafa; }
.sl-body--system main .table-responsive { overflow-x: auto; overflow-y: hidden; border: 1px solid #e5e5e5; border-radius: 12px; background: #fff; -webkit-overflow-scrolling: touch; }
.sl-body--system main .table { margin: 0; border: 0; font-size: 13px; }
.sl-body--system main .table > :not(caption) > * > * { padding: 14px; border-color: #ececec; }
.sl-body--system main .pagination { gap: 5px; }
.sl-body--system main .page-link { min-width: 38px; height: 38px; display: grid; place-items: center; border-color: #e4e4e4; border-radius: 7px !important; color: #202020; }
.sl-body--system main .active > .page-link { border-color: #202020; color: #fff; background: #202020; }

.sl-auth-page { background: linear-gradient(180deg, #fff 0, #f7f7f7 100%); }
.sl-auth-page .sl-system-page__inner { max-width: 940px; }
.sl-auth-grid { display: grid; gap: 16px; }
.sl-auth-card { min-width: 0; padding: 26px 22px; border: 1px solid #e3e3e3; border-radius: 14px; background: #fff; }
.sl-auth-card--soft { display: flex; flex-direction: column; justify-content: center; background: #f1eeee; }
.sl-auth-card__icon { width: 42px; height: 42px; display: grid; place-items: center; margin-bottom: 18px; border-radius: 50%; color: #fff; background: #202020; }
.sl-auth-card h2 { margin: 0 0 18px; font-size: 23px; }
.sl-auth-card--soft > p:not(.sl-eyebrow) { margin: 0 0 22px; color: #666; font-size: 14px; }
.sl-auth-card .sl-button { margin-top: 18px; border-radius: 8px; text-transform: none; }
.sl-field-label { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.sl-field-label a { color: #6b6b6b; font-size: 12px; }

.sl-status-page { min-height: calc(100vh - 140px); display: grid; place-items: center; background: #fff; }
.sl-status-page .sl-system-page__inner { max-width: 760px; }
.sl-status-card { padding: 42px 22px; text-align: center; }
.sl-status-card__icon { width: 68px; height: 68px; display: grid; place-items: center; margin: 0 auto 20px; border-radius: 50%; color: #fff; background: #202020; font-size: 25px; }
.sl-status-card .sl-eyebrow { color: var(--sl-accent); }
.sl-status-card h1 { margin: 0 0 15px; font-size: clamp(30px, 7vw, 48px); font-weight: 500; letter-spacing: -.04em; }
.sl-status-card__message { max-width: 560px; margin: 0 auto 30px; color: #666; font-size: 14px; }
.sl-status-card__message a { color: #202020; font-weight: 600; }
.sl-status-card__steps { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 560px; margin: 0 auto 30px; padding: 18px 6px; border-block: 1px solid #ececec; }
.sl-status-card__steps span { display: grid; justify-items: center; gap: 8px; color: #777; font-size: 10px; }
.sl-status-card__steps i { font-size: 17px; }
.sl-status-card__steps span:first-child { color: var(--sl-success); }
.sl-status-card .sl-button { border-radius: 8px; text-transform: none; }

.sl-body--system [id^="account-"]:not(#account-login) #content,
.sl-body--system #information-contact #content,
.sl-body--system #information-information #content { max-width: 840px; margin-inline: auto; }
.sl-body--system [id^="account-"] fieldset { margin: 0 0 28px; padding: 22px; border: 1px solid #e5e5e5; border-radius: 12px; background: #fff; }
.sl-body--system [id^="account-"] fieldset legend { float: none; width: auto; margin: 0 0 18px; padding: 0; font-size: 18px; font-weight: 500; }
.sl-body--system [id^="account-"] fieldset .row.mb-3 { display: grid; grid-template-columns: 1fr; gap: 6px; }
.sl-body--system [id^="account-"] fieldset .row.mb-3 > [class*="col-sm-"] { width: 100%; padding: 0; }

@media (min-width: 768px) {
  .sl-auth-grid { grid-template-columns: 1.08fr .92fr; gap: 24px; }
  .sl-auth-card { padding: 38px; }
  .sl-body--system [id^="account-"] fieldset .row.mb-3 { grid-template-columns: 180px minmax(0, 1fr); align-items: center; gap: 16px; }
}

@media (min-width: 576px) {
  .sl-announcement span:not(:first-child) { display: inline; }
  .sl-trust { grid-template-columns: repeat(3, 1fr); }
  .sl-trust > div { justify-content: center; border-right: 1px solid var(--sl-border); border-bottom: 0; }
  .sl-trust > div:last-child { border-right: 0; }
  .sl-quote-grid, .sl-detail-cards { grid-template-columns: repeat(3, 1fr); }
  .sl-footer__grid { grid-template-columns: 2fr 1fr 1fr; }
  .sl-footer__brand { grid-column: span 3; }
  .sl-cart-card { grid-template-columns: 112px 1fr auto; gap: 18px; }
  .sl-cart-card__price { grid-column: auto; display: grid; align-content: start; justify-items: end; margin: 0; }
  .sl-reference-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 768px) {
  .sl-icon-button { width: 42px; height: 42px; flex-basis: 42px; font-size: 17px; }
  .sl-icon-button span { display: none; }
  .sl-category-strip { gap: 14px; }
  .sl-category-strip a > span { width: 68px; height: 68px; }
  .sl-story__grid { grid-template-columns: 1fr 1fr; gap: 70px; }
  .sl-faq { grid-template-columns: .75fr 1.25fr; gap: 70px; }
  .sl-footer__lead { grid-template-columns: 1fr auto; align-items: end; }
  .sl-footer__lead .sl-button { justify-self: end; }
  .sl-footer__grid { grid-template-columns: 2fr 1fr 1.25fr 1fr; }
  .sl-footer__brand { grid-column: auto; }
  .sl-footer__section summary { pointer-events: none; }
  .sl-footer__bottom { flex-direction: row; justify-content: space-between; }
}

@media (min-width: 992px) {
  .sl-header__bar { min-height: 74px; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
  .sl-logo { justify-self: center; }
  .sl-menu-button { visibility: hidden; }
  .sl-desktop-nav { display: block; }
  .sl-hero { min-height: 620px; }
  .sl-hero::before { inset: 0 0 0 50%; background: linear-gradient(90deg, #6e1722 0, transparent 20%), var(--sl-hero-image) center/cover no-repeat; }
  .sl-hero__grid { grid-template-columns: 1fr 1fr; }
  .sl-hero__content { align-self: center; padding: 80px 70px 80px 0; }
  .sl-hero__content > p:not(.sl-eyebrow) { color: rgba(255, 255, 255, .82); }
  .sl-hero__visual { left: 50%; }
  .sl-hero__stamp { top: 48px; right: 42px; width: 112px; height: 112px; padding: 16px; }
  .sl-hero__stamp strong { font-size: 34px; }
  .sl-hero__note { position: absolute; right: 42px; bottom: 38px; display: inline-flex; align-items: center; gap: 7px; padding: 10px 13px; border-radius: 999px; color: var(--sl-ink); background: rgba(255, 255, 255, .9); font-size: 10px; font-weight: 800; backdrop-filter: blur(8px); }
  .sl-category-strip { padding-top: 28px; padding-bottom: 28px; }
  .sl-category-strip a { font-size: 11px; }
  .sl-product-card__image { border-radius: var(--sl-radius); }
  .sl-product-card__meta { font-size: 9px; }
  .sl-product-card h3 { font-size: 14px; }
  .sl-product-layout { grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr); gap: 55px; }
  .sl-product-panel { position: sticky; top: 134px; }
  .sl-product-gallery__thumbs { grid-template-columns: repeat(5, 1fr); }
  .sl-cart-page__layout { grid-template-columns: minmax(0, 1fr) 350px; gap: 48px; }
  .sl-order-summary { position: sticky; top: 144px; }
}

/* Customer self-service: account, favorites, orders and guided exchanges. */
.sl-account { max-width: 1180px; padding-top: 34px; padding-bottom: 70px; color: #171413; }
.sl-account a { color: inherit; text-decoration: none; }
.sl-account-hero, .sl-account-page-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 28px; padding: 30px; border: 1px solid #e7e2df; border-radius: 24px; background: linear-gradient(125deg, #fff 0%, #f8f3f2 100%); }
.sl-account-hero > div, .sl-account-page-head > div { max-width: 720px; }
.sl-account-hero span, .sl-account-page-head span, .sl-account-help span, .sl-exchange-step header > span { color: var(--sl-accent); font-size: 11px; font-weight: 800; letter-spacing: .15em; }
.sl-account-hero h1, .sl-account-page-head h1 { margin: 7px 0 8px; font-size: clamp(29px, 4.5vw, 48px); font-weight: 500; line-height: 1.08; }
.sl-account-hero p, .sl-account-page-head p, .sl-account-help p { margin: 0; color: #6f6865; line-height: 1.65; }
.sl-text-link { display: inline-flex; align-items: center; gap: 8px; padding: 10px 0; border-bottom: 1px solid #171413; font-size: 13px; font-weight: 700; white-space: nowrap; }
.sl-account-alert { display: flex; gap: 9px; margin-bottom: 18px; padding: 14px 16px; border-radius: 13px; color: #176741; background: #e7f7ee; }
.sl-account-alert--error { color: #8b2635; background: #fbe7ea; }
.sl-account-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 20px; }
.sl-account-stats a { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 14px; padding: 20px; border: 1px solid #e7e2df; border-radius: 18px; background: #fff; }
.sl-account-stats i { grid-row: 1 / 3; align-self: center; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; color: #fff; background: #171413; }
.sl-account-stats strong { font-size: 24px; line-height: 1; }
.sl-account-stats span { color: #756e6b; font-size: 12px; }
.sl-account-primary { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px; }
.sl-account-primary > a { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; min-height: 128px; padding: 22px; border: 1px solid #e7e2df; border-radius: 20px; background: #fff; transition: transform .2s, box-shadow .2s; }
.sl-account-primary > a:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(33, 26, 24, .08); }
.sl-account-primary b { display: block; margin-bottom: 6px; font-size: 19px; }
.sl-account-primary small { display: block; color: #756e6b; line-height: 1.55; }
.sl-account-icon { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 16px; color: #fff; background: var(--sl-accent); }
.sl-account-help { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin: 20px 0; padding: 28px; border-radius: 22px; color: #fff; background: #171413; }
.sl-account-help > div { max-width: 730px; }
.sl-account-help h2 { margin: 7px 0; font-size: 25px; }
.sl-account-help p { color: #d2cdcb; }
.sl-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 20px; border: 1px solid #171413; border-radius: 999px; font-size: 12px; font-weight: 800; text-align: center; }
.sl-button--dark { color: #fff !important; background: #171413; }
.sl-account-help .sl-button--dark { color: #171413 !important; border-color: #fff; background: #fff; }
.sl-button--light { background: #fff; }
.sl-account-links { overflow: hidden; border: 1px solid #e7e2df; border-radius: 18px; background: #fff; }
.sl-account-links a { display: flex; justify-content: space-between; padding: 17px 20px; border-bottom: 1px solid #eeeae8; }
.sl-account-links a:last-child { border: 0; }
.sl-account-empty { display: grid; justify-items: center; gap: 8px; padding: 56px 20px; border: 1px dashed #d8d0cd; border-radius: 20px; text-align: center; }
.sl-account-empty > i { font-size: 34px; }
.sl-account-empty h2, .sl-account-empty p { margin: 0; }
.sl-account-empty p { max-width: 480px; color: #746d6a; }
.sl-wishlist-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.sl-wishlist-card { display: grid; gap: 14px; padding: 14px; border: 1px solid #e7e2df; border-radius: 20px; background: #fff; }
.sl-wishlist-image { overflow: hidden; aspect-ratio: 1 / 1; border-radius: 14px; background: #f5f3f2; }
.sl-wishlist-image img { width: 100%; height: 100%; object-fit: contain; }
.sl-wishlist-copy > span { color: #8a817d; font-size: 11px; }
.sl-wishlist-copy h2 { margin: 4px 0 8px; font-size: 17px; }
.sl-wishlist-price { display: flex; align-items: center; gap: 8px; }
.sl-wishlist-price strong { color: var(--sl-accent); font-size: 18px; }
.sl-wishlist-price s { color: #9b9491; }
.sl-price-alert { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; border: 1px solid #d7d0cd; border-radius: 12px; color: #37312f; background: #fff; font-size: 12px; font-weight: 700; }
.sl-price-alert.is-active { color: #8c1930; border-color: #f0b8c1; background: #fff0f2; }
.sl-wishlist-actions { display: grid; grid-template-columns: 1fr 48px; gap: 8px; }
.sl-wishlist-remove { display: grid; place-items: center; border: 1px solid #e3ddda; border-radius: 50%; }
.sl-order-list { display: grid; gap: 14px; }
.sl-order-card { overflow: hidden; border: 1px solid #e7e2df; border-radius: 20px; background: #fff; }
.sl-order-card header, .sl-order-card footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 20px; }
.sl-order-card header { border-bottom: 1px solid #eeeae8; }
.sl-order-card header > div { display: grid; gap: 3px; }
.sl-order-card header span { color: #827a77; font-size: 11px; }
.sl-order-card header > b { padding: 7px 11px; border-radius: 999px; color: #725315; background: #fff0c9; font-size: 11px; }
.sl-order-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: #ebe6e4; }
.sl-order-summary div { display: grid; gap: 4px; padding: 17px 20px; background: #faf9f8; }
.sl-order-summary span, .sl-order-info-grid span, .sl-order-products article span { color: #817976; font-size: 11px; }
.sl-order-card footer { justify-content: flex-end; }
.sl-account-pagination { margin-top: 22px; }
.sl-order-info-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 14px; margin-bottom: 18px; }
.sl-order-info-grid > div { display: grid; gap: 6px; padding: 20px; border: 1px solid #e7e2df; border-radius: 18px; background: #fff; }
.sl-order-products { padding: 22px; border: 1px solid #e7e2df; border-radius: 20px; background: #fff; }
.sl-order-products h2 { margin: 0 0 14px; }
.sl-order-products article, .sl-order-totals > div { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid #eeeae8; }
.sl-order-products article > div { display: grid; gap: 3px; }
.sl-order-totals { margin-left: auto; max-width: 380px; }
.sl-order-totals > div:last-child { border: 0; font-size: 17px; }
.sl-order-note { margin-top: 18px; padding: 18px; border-radius: 15px; background: #f5f2f1; }
.sl-order-note p { margin: 6px 0 0; }
.sl-exchange-success { display: flex; gap: 16px; margin-bottom: 20px; padding: 22px; border-radius: 20px; color: #155f3d; background: #e7f7ee; }
.sl-exchange-success > i { font-size: 26px; }
.sl-exchange-success h2, .sl-exchange-success p { margin: 0 0 5px; }
.sl-exchange-status, .sl-exchange-step { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 16px; margin-bottom: 16px; padding: 22px; border: 1px solid #e7e2df; border-radius: 22px; background: #fff; }
.sl-exchange-status p { margin: 5px 0 0; color: #6f6865; }
.sl-exchange-step-number { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; color: #fff; background: var(--sl-accent); font-weight: 800; }
.sl-exchange-step-body header h2 { margin: 5px 0; font-size: 24px; }
.sl-exchange-step-body header p { margin: 0 0 18px; color: #736c69; }
.sl-exchange-lines { display: grid; gap: 10px; }
.sl-exchange-lines article { display: grid; grid-template-columns: minmax(0, 1fr) 110px; align-items: center; gap: 12px; padding: 12px; border: 1px solid #e6e0de; border-radius: 16px; }
.sl-exchange-lines article.is-selected { border-color: var(--sl-accent); box-shadow: 0 0 0 2px color-mix(in srgb, var(--sl-accent) 12%, transparent); }
.sl-exchange-product { display: grid; grid-template-columns: auto auto minmax(0, 1fr); align-items: center; gap: 12px; cursor: pointer; }
.sl-exchange-product > input { position: absolute; opacity: 0; }
.sl-exchange-check { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid #cfc7c4; border-radius: 50%; color: transparent; }
.sl-exchange-product input:checked + .sl-exchange-check { color: #fff; border-color: var(--sl-accent); background: var(--sl-accent); }
.sl-exchange-product img { width: 82px; height: 82px; border-radius: 11px; object-fit: contain; background: #f4f2f1; }
.sl-exchange-product > span:last-child { display: grid; gap: 3px; }
.sl-exchange-product small { color: #756e6b; }
.sl-exchange-product em { color: var(--sl-accent); font-style: normal; font-weight: 700; }
.sl-exchange-quantity { display: grid; gap: 5px; color: #756e6b; font-size: 11px; }
.sl-exchange select, .sl-exchange textarea { width: 100%; min-height: 48px; padding: 11px 13px; border: 1px solid #d9d2cf; border-radius: 12px; color: #171413; background: #fff; }
.sl-exchange-replacement { display: none; gap: 8px; margin-top: 10px; padding: 14px; border-radius: 14px; background: #f8f6f5; }
.sl-exchange-replacement.is-visible { display: grid; }
.sl-exchange-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.sl-exchange-fields label { display: grid; gap: 7px; font-size: 12px; font-weight: 700; }
.sl-exchange-fields .sl-field-wide { grid-column: 1 / -1; }
.sl-exchange-final { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 16px; padding: 24px; border-radius: 20px; color: #fff; background: #171413; }
.sl-exchange-final > i { font-size: 25px; }
.sl-exchange-final p { margin: 4px 0 0; color: #d4cfcd; }
.sl-exchange-final .sl-button { color: #171413 !important; border-color: #fff; background: #fff; }
@media (max-width: 760px) {
  .sl-account { padding-top: 18px; padding-bottom: 42px; }
  .sl-account-hero, .sl-account-page-head, .sl-account-help { align-items: stretch; flex-direction: column; padding: 22px 18px; }
  .sl-account-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sl-account-stats a { grid-template-columns: 1fr; grid-template-rows: auto auto auto; justify-items: center; gap: 6px; padding: 14px 6px; text-align: center; }
  .sl-account-stats i { grid-row: auto; }
  .sl-account-primary, .sl-wishlist-grid, .sl-order-info-grid { grid-template-columns: 1fr; }
  .sl-account-primary > a { min-height: 0; }
  .sl-order-card footer, .sl-exchange-final { align-items: stretch; grid-template-columns: 1fr; flex-direction: column; }
  .sl-order-card footer .sl-button { width: 100%; }
  .sl-exchange-step { grid-template-columns: 1fr; padding: 18px 14px; }
  .sl-exchange-lines article, .sl-exchange-fields { grid-template-columns: 1fr; }
  .sl-exchange-product { grid-template-columns: auto 72px minmax(0, 1fr); }
  .sl-exchange-product img { width: 72px; height: 72px; }
}

@media (max-width: 767px) {
  .sl-section-heading > span { display: none; }
  .sl-product-rail .row { --bs-gutter-x: 12px; }
  .sl-product-rail .col { min-width: 0; }
  .sl-page-heading > span { display: none; }
  .sl-footer__grid { display: block; padding-top: 28px; }
  .sl-footer__brand { padding-bottom: 22px; }
  .sl-footer__section { border-top: 1px solid #38342f; }
  .sl-footer__section:last-child { border-bottom: 1px solid #38342f; }
  .sl-footer__section summary { min-height: 44px; }
  .sl-footer__section summary h2 { font-size: 16px; font-weight: 600; letter-spacing: 0; text-transform: none; }
  .sl-footer__section summary i { display: block; font-size: 18px; }
  .sl-footer__section > div { padding: 0 0 17px; }
  .sl-footer__section > div a { margin: 10px 0 !important; }
  .sl-footer__payments { margin-top: 24px; }
  .sl-quick-buy .modal-dialog { width: calc(100% - 20px); max-width: none; min-height: calc(100% - 1rem); margin: .5rem auto; }
  .sl-quick-buy .modal-content { height: 75dvh; max-height: 75dvh; border-radius: 0; }
}

@media (max-width: 575px) {
  .sl-announcement .container { min-height: 32px; }
  .sl-hero__actions { align-items: flex-start; flex-direction: column; gap: 14px; }
  .sl-category-strip { margin-inline: 0; padding-inline: 12px; }
  .sl-trust { margin-inline: 12px; width: auto; }
  .sl-social-proof .sl-section-heading { align-items: start; flex-direction: column; }
  .sl-product-card h3 { min-height: 52px; }
  .sl-card-add { justify-content: center; }
  .sl-card-add i { display: none; }
  .sl-product-page { padding-bottom: 105px; }
  .sl-mobile-buy-bar { position: fixed; right: 0; bottom: 0; left: 0; z-index: 1015; grid-template-columns: 1fr auto; align-items: center; gap: 12px; padding: 10px 14px max(10px, env(safe-area-inset-bottom)); border-top: 1px solid var(--sl-border); background: rgba(255, 255, 255, .97); box-shadow: 0 -10px 30px rgba(0, 0, 0, .08); backdrop-filter: blur(12px); }
  .sl-mobile-buy-bar.is-visible { display: grid; }
  .sl-mobile-buy-bar > div { display: grid; }
  .sl-mobile-buy-bar small { color: var(--sl-muted); font-size: 9px; text-decoration: line-through; }
  .sl-mobile-buy-bar strong { font-size: 15px; }
  .sl-mobile-buy-bar .sl-button { min-height: 46px; padding-inline: 18px; }
  .sl-body--checkout .sl-mobile-buy-bar { display: none; }
  .sl-cart-card { grid-template-columns: 90px 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .sl-body *, .sl-body *::before, .sl-body *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* Reference-matched catalog and product journey */
body.sl-body--reference-catalog { color: #202020; background: #fff; font-family: var(--sl-font-family); font-weight: 400; }
.sl-body--reference-catalog .sl-header { top: 0; border-bottom: 0; box-shadow: 0 5px 5px -7px #989898; background: #fff; }
.sl-body--reference-catalog .sl-header__bar { min-height: 60px; max-width: none; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 4px; padding-inline: 16px; }
.sl-body--reference-catalog .sl-logo { justify-self: start; }
.sl-body--reference-catalog .sl-logo { min-width: 0; }
.sl-body--reference-catalog .sl-logo a { display: block; overflow: hidden; color: var(--sl-ink); font-family: var(--sl-font-family); font-size: 25px; font-weight: 900; letter-spacing: -.075em; text-overflow: ellipsis; white-space: nowrap; }
.sl-body--reference-catalog .sl-logo a span { color: var(--sl-accent); }
.sl-body--reference-catalog .sl-icon-button { width: 40px; height: 40px; flex: 0 0 40px; overflow: hidden; border-radius: 0; font-size: 22px; }
.sl-body--reference-catalog .sl-icon-button span { display: none; }
.sl-body--reference-catalog .sl-header__actions { min-width: 0; flex-wrap: nowrap; gap: 4px; }
.sl-body--reference-catalog .sl-search { padding: 0 16px 12px; }
.sl-body--reference-catalog .sl-search input { min-height: 40px; border-radius: 0; }
.sl-body--reference-catalog .sl-search button { border-radius: 0; }

.sl-listing-page { width: 100%; }
.sl-listing-page__inner { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 16px 56px; }
.sl-listing-breadcrumb { padding-top: 22px; font-size: 13px; line-height: 19.5px; }
.sl-listing-breadcrumb a { color: #2c2c2c; text-decoration: none; }
.sl-listing-heading { display: flex; align-items: baseline; gap: 20px; margin: 10px 0 16px; }
.sl-listing-heading h1 { margin: 0; color: #232323; font-size: 24px; font-weight: 400; line-height: 32px; text-transform: capitalize; }
.sl-listing-heading span { color: #71717a; font-size: 12px; line-height: 16px; }
.sl-refine { display: flex; gap: 8px; margin: -2px 0 16px; overflow-x: auto; scrollbar-width: none; }
.sl-refine::-webkit-scrollbar { display: none; }
.sl-refine a { min-height: 38px; display: flex; flex: 0 0 auto; align-items: center; padding: 8px 14px; border: 1px solid #e4e4e4; color: #292929; background: #fff; font-size: 13px; text-decoration: none; }
.sl-listing-controls { height: 56px; display: grid; grid-template-columns: 20% 80%; margin-bottom: 16px; overflow: hidden; border-radius: 8px; background: #f4f4f4; }
.sl-listing-controls button { display: flex; justify-content: center; align-items: center; gap: 12px; padding: 0; border: 0; color: #484848; background: transparent; font-size: 16px; font-weight: 400; }
.sl-listing-controls button:first-child { border-right: 1px solid #d8d8d8; }
.sl-listing-controls i { width: 20px; font-size: 18px; }
.sl-listing-search { margin-bottom: 16px; }
.sl-listing-search input { width: 100%; height: 39px; padding: 8px; border: 1px solid #f4f4f4; border-radius: 0; outline: 0; color: #202020; background: #fff; font-size: 14px; line-height: 21px; }
.sl-listing-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.sl-listing-grid.is-single { grid-template-columns: minmax(0, 1fr); }
.sl-listing-grid > div { min-width: 0; }
.sl-listing-grid .sl-product-card, .sl-related-products .sl-product-card { height: 100%; margin: 0; }
.sl-listing-grid .sl-product-card__image, .sl-related-products .sl-product-card__image { aspect-ratio: 1 / 1; border-radius: 0; background: #f4f4f4; }
.sl-listing-grid .sl-product-card__image img, .sl-related-products .sl-product-card__image img { object-fit: contain; }
.sl-listing-grid .sl-product-card:hover .sl-product-card__image img, .sl-related-products .sl-product-card:hover .sl-product-card__image img { transform: none; }
.sl-listing-grid .sl-product-badge, .sl-related-products .sl-product-badge { top: 0; right: 0; left: auto; height: 28px; padding: 5px; border-radius: 0; color: #fff; background: #4b4b4b; font-size: 12px; font-weight: 400; letter-spacing: 0; text-transform: none; }
.sl-listing-grid .sl-product-card__body, .sl-related-products .sl-product-card__body { display: flex; flex-direction: column; padding: 12px 0 0; text-align: center; }
.sl-listing-grid .sl-product-card h3, .sl-related-products .sl-product-card h3 { min-height: 51px; max-height: 51px; margin: 0 0 8px; overflow: hidden; font-size: 13px; font-weight: 400; line-height: 19.5px; text-transform: uppercase; }
.sl-listing-grid .sl-product-card h3 a, .sl-related-products .sl-product-card h3 a { color: #101010; }
.sl-listing-grid .sl-product-card .price, .sl-related-products .sl-product-card .price { min-height: 40px; display: flex; justify-content: center; align-items: center; flex-wrap: nowrap; gap: 10px; margin: 0; color: #101010; font-size: 18px; font-weight: 500; }
.sl-listing-grid .sl-product-card .price > .price-new, .sl-related-products .sl-product-card .price > .price-new { font-size: 18px; }
.sl-card-discount { width: 38px; height: 38px; display: grid; flex: 0 0 38px; place-items: center; color: #fff; background: #cb2440; font-size: 12px; font-weight: 500; }
.sl-card-price-stack { display: grid; justify-items: start; }
.sl-listing-grid .sl-product-card .sl-card-price-stack .price-old, .sl-related-products .sl-product-card .sl-card-price-stack .price-old { color: #aaa; font-size: 13px; font-weight: 400; line-height: 15px; }
.sl-listing-grid .sl-card-price-stack .price-new, .sl-related-products .sl-card-price-stack .price-new { font-size: 15px; font-weight: 500; line-height: 22.5px; }
.sl-listing-grid .sl-card-add, .sl-related-products .sl-card-add { min-height: 34px; justify-content: center; margin-top: 8px; padding: 7px 5px; border: 1px solid #232323; border-radius: 0; color: #232323; background: #fff; font-size: 12px; font-weight: 500; line-height: 18px; }
.sl-listing-grid .sl-card-add:hover, .sl-related-products .sl-card-add:hover { color: #fff; background: #4b4b4b; }
.sl-listing-pagination { display: grid; justify-items: center; gap: 12px; margin-top: 40px; }
.sl-listing-pagination small { color: #71717a; font-size: 11px; }
.sl-listing-pagination .pagination { max-width: 100%; justify-content: center; flex-wrap: wrap; gap: 8px; margin: 0; }
.sl-listing-pagination .page-link { width: 32px; height: 32px; display: grid; place-items: center; padding: 0; border: 1px solid #ececec; border-radius: 4px !important; color: #9da5af; font-size: 14px; font-weight: 600; }
.sl-listing-pagination .active > .page-link { color: #333; border-color: #4b4b4b; background: #fff; }
.sl-listing-pagination .disabled > .page-link { background: #f5f5f5; }
.sl-listing-description { margin-top: 40px; color: #71717a; font-size: 13px; line-height: 1.65; }
.sl-listing-empty { min-height: 35vh; display: grid; place-items: center; color: #71717a; }
.sl-sort-dialog { width: 260px; margin-inline: auto; }
.sl-sort-dialog .modal-content { overflow: hidden; border: 0; border-radius: 4px; background: #fdfdfd; }
.sl-sort-dialog .modal-header { height: 48px; padding: 8px 16px; border: 0; }
.sl-sort-dialog .modal-title { font-size: 24px; font-weight: 400; line-height: 32px; }
.sl-sort-dialog .btn-close { width: 20px; height: 20px; padding: 0; font-size: 12px; }
.sl-sort-dialog .modal-body { padding: 0; }
.sl-sort-dialog .modal-body a { height: 40px; display: flex; justify-content: space-between; align-items: center; padding: 8px 16px; color: #383838; font-size: 16px; font-weight: 300; line-height: 24px; text-decoration: none; }
.sl-sort-dialog .modal-body a.is-active { background: #f4f4f4; font-weight: 400; }
.sl-sort-dialog .modal-body a i { width: 20px; height: 20px; border: 1px solid #c9c9c9; border-radius: 50%; }
.sl-sort-dialog .modal-body a.is-active i { border: 4px solid #f4f4f4; background: #555; box-shadow: 0 0 0 1px #c9c9c9; }
.sl-body--reference-catalog .modal-backdrop.show { opacity: .75; }

.sl-reference-product { width: 100%; }
.sl-reference-product > .row { margin: 0; }
.sl-reference-product > .row > #content { width: 100%; padding: 0; }
.sl-reference-product__layout { width: 100%; max-width: 1180px; margin: 0 auto; }
.sl-reference-gallery { position: relative; width: 100%; padding: 0 0 0 20px; }
.sl-reference-gallery__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.sl-reference-gallery__track::-webkit-scrollbar { display: none; }
.sl-reference-gallery__item { min-width: 100%; display: block; aspect-ratio: 1; scroll-snap-align: start; background: #fff; }
.sl-reference-gallery__item img { width: 100%; height: 100%; display: block; object-fit: contain; }
.sl-reference-gallery__dots { position: absolute; right: 0; bottom: 22px; left: 20px; display: flex; justify-content: center; align-items: center; gap: 16px; }
.sl-reference-gallery__dots i { width: 8px; height: 8px; border-radius: 50%; background: #c0c0c0; transition: width .2s ease; }
.sl-reference-gallery__dots i.is-active { width: 32px; border-radius: 999px; background: #4b4b4b; }
.sl-reference-product__panel { padding: 20px 16px 32px; }
.sl-reference-product__heading { display: grid; grid-template-columns: minmax(0, 1fr) 32px; gap: 12px; align-items: start; }
.sl-reference-product__heading h1 { margin: 0; color: #202020; font-size: 18px; font-weight: 400; letter-spacing: 0; line-height: 27px; text-transform: uppercase; }
.sl-reference-product__heading form { margin: 0; }
.sl-reference-product__heading button { width: 32px; height: 32px; display: grid; place-items: center; padding: 0; border: 0; color: #4b4b4b; background: transparent; font-size: 25px; }
.sl-reference-product__price { min-height: 52px; display: flex; align-items: center; gap: 10px; margin: 16px 0; }
.sl-reference-product__price > strong, .sl-reference-product__price div strong { color: #1f1f1f; font-size: 18px; font-weight: 500; line-height: 27px; }
.sl-reference-product__price div { display: grid; }
.sl-reference-product__price div small { color: #aaa; font-size: 16px; line-height: 15px; text-decoration: line-through; }
.sl-reference-product__discount { width: 38px; height: 38px; display: grid; place-items: center; color: #fff; background: #cb2440; font-size: 12px; font-weight: 500; }
.sl-reference-options { display: grid; gap: 24px; }
.sl-reference-option { min-width: 0; margin: 0; padding: 0; border: 0; }
.sl-reference-option > label, .sl-reference-option > legend { width: 100%; min-height: 0; margin: 0 0 8px; padding: 0; color: #818181; font-size: 14px; font-weight: 400; line-height: 21px; }
.sl-reference-option > .form-control, .sl-reference-option > .form-select { min-height: 51px; border-color: #ececec; border-radius: 0; }
.sl-reference-option__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.sl-reference-option__chips input { position: absolute; opacity: 0; pointer-events: none; }
.sl-reference-option__chips label { min-width: 51px; height: 51px; display: flex; justify-content: center; align-items: center; gap: 3px; padding: 4px 16px; border: 1px solid #ececec; border-radius: 0; color: #2f2f2f; background: #fff; font-size: 16px; font-weight: 400; line-height: 24px; cursor: pointer; }
.sl-reference-option__chips label small { display: none; }
.sl-reference-option__chips input:checked + label { color: #fff; border-color: #4b4b4b; background: #4b4b4b; }
.sl-reference-option__chips.is-invalid { outline: 1px solid #dc3545; outline-offset: 4px; }
.sl-reference-buy-row { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 8px; margin-top: 32px; }
.sl-reference-quantity { height: 56px; display: grid; grid-template-columns: repeat(3, 50px); }
.sl-reference-quantity button, .sl-reference-quantity input { width: 50px; height: 56px; padding: 0; border: 1px solid #ececec; border-radius: 0; color: #202020; background: #fff; font-size: 16px; text-align: center; }
.sl-reference-quantity button + input, .sl-reference-quantity input + button { border-left: 0; }
.sl-reference-quantity input { appearance: textfield; }
.sl-reference-quantity input::-webkit-inner-spin-button { appearance: none; }
.sl-reference-buy-row #button-cart, .sl-reference-buy-now, .sl-reference-stock-notify { min-height: 56px; padding: 8px 12px; border: 1px solid #232323; border-radius: 0; color: #232323; background: #fff; font-size: 16px; font-weight: 500; text-transform: uppercase; }
.sl-reference-buy-now { width: 100%; margin-top: 8px; color: #fff; border-color: #4b4b4b; background: #4b4b4b; }
.sl-reference-stock-notify { width: 100%; margin-top: 32px; background: #ececec; }
.sl-reference-whatsapp { width: 100%; min-height: 56px; display: flex; justify-content: center; align-items: center; gap: 9px; margin-top: 8px; border: 1px solid #25d366; border-radius: 0; color: #25d366; background: #fff; font-size: 16px; font-weight: 800; text-decoration: none; text-transform: uppercase; }
.sl-reference-whatsapp i { font-size: 22px; }
.sl-reference-promises { display: grid; gap: 16px; margin-top: 12px; }
.sl-reference-promises > div { height: 30px; display: flex; align-items: center; gap: 15px; font-size: 13px; line-height: 19.5px; text-transform: uppercase; }
.sl-reference-promises i { width: 30px; font-size: 25px; text-align: center; }
.sl-reference-details { margin-top: 16px; }
.sl-reference-details details { padding: 0 16px; }
.sl-reference-details summary { min-height: 50px; display: flex; justify-content: space-between; align-items: center; cursor: pointer; list-style: none; font-size: 14px; font-weight: 500; line-height: 17px; }
.sl-reference-details summary::-webkit-details-marker { display: none; }
.sl-reference-details summary i { font-size: 13px; transition: transform .2s ease; }
.sl-reference-details details[open] summary i { transform: rotate(180deg); }
.sl-reference-details details > div { padding-bottom: 18px; color: #202020; font-size: 13px; line-height: 15.6px; }
.sl-reference-details details > div p { margin-bottom: 8px; }
.sl-reference-details details > div p span { margin-right: 8px; color: #71717a; }
.sl-related-products { width: 100%; max-width: 1280px; margin: 0 auto; padding: 32px 0; }
.sl-related-products h2 { margin: 0 10px 20px; font-size: 24px; font-weight: 400; line-height: 30px; }
.sl-related-products__track { display: grid; grid-auto-columns: 188px; grid-auto-flow: column; gap: 0; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; }
.sl-related-products__track::-webkit-scrollbar { display: none; }
.sl-related-products__track > div { min-width: 0; padding: 0 12px; scroll-snap-align: start; }
.sl-related-products .sl-product-card__body { text-align: left; }
.sl-related-products .sl-product-card h3 { min-height: 20px; max-height: 20px; white-space: nowrap; text-overflow: ellipsis; }
.sl-related-products .sl-product-card .price { justify-content: flex-start; }

.sl-cookie { position: fixed; z-index: 1090; right: 16px; bottom: 16px; left: 16px; margin: 0; color: #fff; background: #111; box-shadow: 0 16px 48px rgba(0, 0, 0, .24); }
.sl-cookie__content { width: 100%; max-width: 1180px; display: grid; gap: 18px; margin: 0 auto; padding: 22px; }
.sl-cookie__eyebrow { margin: 0 0 7px; color: #ff8998; font-size: 10px; font-weight: 900; letter-spacing: .18em; }
.sl-cookie__text { color: #f4f4f4; font-size: 13px; line-height: 1.55; }
.sl-cookie__text p { margin: 0; }
.sl-cookie__text a { color: #fff; font-weight: 700; text-underline-offset: 3px; }
.sl-cookie__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.sl-cookie__button { min-height: 46px; padding: 10px 14px; border: 1px solid #fff; border-radius: 999px; font-size: 11px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.sl-cookie__button--primary { color: #111; background: #fff; }
.sl-cookie__button--secondary { color: #fff; background: transparent; }
.sl-cookie__button:hover { color: #fff; border-color: var(--sl-accent); background: var(--sl-accent); }

@media (min-width: 640px) {
  .sl-listing-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sl-listing-grid.is-single { grid-template-columns: minmax(0, 1fr); }
	.sl-cookie__content { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
	.sl-cookie__actions { min-width: 310px; }
}

@media (min-width: 992px) {
	.sl-body--reference-catalog .sl-header__bar { min-height: 68px; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
	.sl-body--reference-catalog .sl-logo { justify-self: center; }
  .sl-body--reference-catalog .sl-desktop-nav { display: block; }
  .sl-listing-page__inner { padding-top: 12px; }
  .sl-listing-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 34px 22px; }
  .sl-listing-grid.is-single { grid-template-columns: minmax(0, 1fr); }
  .sl-reference-product__layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(390px, .85fr); gap: 52px; padding: 42px 24px 0; }
	.sl-reference-gallery { position: sticky; top: 95px; align-self: start; padding: 0; }
  .sl-reference-product__panel { padding-top: 0; }
	.sl-related-products__track { grid-auto-flow: initial; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: visible; }
	.sl-related-products__track > div { padding: 0 2px; }
}
