:root {
            --red: #E31E24;
            --red-dark: #B91C1C;
            --gold: #F5A623;
            --dark: #0a0a0a;
            --dark-2: #111111;
            --dark-3: #1a1a1a;
            --dark-4: #252525;
            --gray: #888888;
            --white: #FFFFFF;
        }

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

        body {
            font-family: "Plus Jakarta Sans", Outfit, sans-serif;
            background: var(--dark);
            color: var(--white);
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }
        html, body.rec-front-page {
            max-width: 100%;
            overflow-x: clip;
        }
        h1, h2, h3, h4, h5, .mk-page__title {
            font-family: Outfit, "Plus Jakarta Sans", sans-serif;
        }
        h1.mk-catalog-banner__title,
        .mk-catalog-banner__title,
        h1.mk-page__title,
        .mk-page__title {
            font-family: Unbounded, Outfit, "Plus Jakarta Sans", sans-serif;
            font-weight: 700;
            letter-spacing: -.03em;
            background: linear-gradient(90deg, #ffffff 0%, #d4d4d4 100%);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
            -webkit-text-fill-color: transparent;
            filter: drop-shadow(0 8px 24px rgba(0, 0, 0, .4));
        }
        h1.mk-catalog-banner__title,
        .mk-catalog-banner__title {
            font-size: clamp(1.55rem, 3.2vw, 2.35rem);
        }

        a { text-decoration: none; transition: all 0.3s; }

        /* HEADER PRETO + slim / vidro */
        @property --aura-boost {
            syntax: "<number>";
            inherits: true;
            initial-value: 0;
        }
        .main-header {
            --header-ease: cubic-bezier(0.22, 1, 0.36, 1);
            --aura-boost: 0;
            background: rgba(10, 10, 10, 0.96);
            padding: 14px 0;
            position: sticky;
            top: 0;
            z-index: 1000;
            /* visible: overflow:hidden quebra sticky no Safari/iOS com backdrop-filter */
            overflow: visible;
            border-bottom: 1px solid rgba(255,255,255,.06);
            color: var(--white);
            backdrop-filter: blur(0px) saturate(100%);
            -webkit-backdrop-filter: blur(0px) saturate(100%);
            transition:
                padding .45s var(--header-ease),
                background-color .45s var(--header-ease),
                border-color .45s var(--header-ease),
                box-shadow .45s var(--header-ease),
                backdrop-filter .45s var(--header-ease),
                -webkit-backdrop-filter .45s var(--header-ease),
                --aura-boost 1.1s ease;
        }
        .main-header:has(.logo-link:hover) {
            --aura-boost: 1;
        }
        .main-header > .container {
            position: relative;
            z-index: 1;
        }
        /* Aura central — pulso laranja sutil (sempre no centro) */
        .main-header::before,
        .main-header::after {
            content: "";
            position: absolute;
            left: 50%;
            top: 50%;
            z-index: 0;
            pointer-events: none;
            border-radius: 50%;
            transform: translate(-50%, -50%);
            will-change: transform, opacity;
        }
        .main-header::before {
            width: min(34rem, 72vw);
            height: min(12rem, 42vw);
            background:
                radial-gradient(
                    ellipse 55% 48% at 50% 50%,
                    rgba(245, 166, 35, .22) 0%,
                    rgba(240, 138, 26, .1) 34%,
                    rgba(227, 30, 36, .04) 58%,
                    transparent 72%
                );
            filter:
                blur(calc(22px - 4px * var(--aura-boost)))
                saturate(calc(1 + 0.45 * var(--aura-boost)))
                brightness(calc(1 + 0.18 * var(--aura-boost)));
            animation: header-aura-breathe 5.6s ease-in-out infinite;
        }
        .main-header::after {
            width: min(16rem, 42vw);
            height: min(6.5rem, 22vw);
            background:
                radial-gradient(
                    ellipse 50% 45% at 50% 50%,
                    rgba(255, 210, 140, .2) 0%,
                    rgba(245, 166, 35, .08) 42%,
                    transparent 70%
                );
            filter: blur(14px);
            opacity: .4;
            animation: header-aura-core 4.2s ease-in-out infinite;
        }
        @keyframes header-aura-breathe {
            0%, 100% {
                transform: translate(-50%, -50%) scale(calc(0.86 + 0.06 * var(--aura-boost)));
                opacity: calc(0.32 + 0.28 * var(--aura-boost));
            }
            50% {
                transform: translate(-50%, -50%) scale(calc(1.18 + 0.22 * var(--aura-boost)));
                opacity: calc(0.62 + 0.33 * var(--aura-boost));
            }
        }
        @keyframes header-aura-core {
            0%, 100% {
                transform: translate(-50%, -50%) scale(0.78);
                opacity: .22;
            }
            50% {
                transform: translate(-50%, -50%) scale(1.12);
                opacity: .5;
            }
        }
        @media (prefers-reduced-motion: reduce) {
            .main-header {
                --aura-boost: 0;
                transition:
                    padding .45s var(--header-ease),
                    background-color .45s var(--header-ease),
                    border-color .45s var(--header-ease),
                    box-shadow .45s var(--header-ease),
                    backdrop-filter .45s var(--header-ease),
                    -webkit-backdrop-filter .45s var(--header-ease);
            }
            .main-header::before,
            .main-header::after {
                animation: none;
                opacity: .28;
                transform: translate(-50%, -50%) scale(1);
            }
            .main-header:has(.logo-link:hover)::before {
                opacity: .45;
            }
        }

        /* Barra de loading (estilo React / NProgress) */
        .rec-topbar {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 2px;
            z-index: 20;
            pointer-events: none;
            opacity: 0;
            transition: opacity .2s ease;
        }
        .rec-topbar.is-active {
            opacity: 1;
        }
        .rec-topbar__bar {
            height: 100%;
            width: 0;
            background: var(--red);
            box-shadow: 0 0 8px rgba(227, 30, 36, 0.7);
            transition: width .35s ease;
            position: relative;
        }
        .rec-topbar__bar::after {
            content: "";
            position: absolute;
            right: 0;
            top: 0;
            width: 80px;
            height: 100%;
            box-shadow: 0 0 12px 2px rgba(227, 30, 36, 0.55);
            transform: rotate(2deg) translateY(-1px);
            opacity: .85;
        }
        .rec-topbar.is-done .rec-topbar__bar {
            width: 100% !important;
            transition: width .18s ease;
        }
        .rec-topbar.is-hiding {
            opacity: 0;
            transition: opacity .28s ease .05s;
        }
        .main-header.is-slim {
            padding: 8px 0;
            background: linear-gradient(
                to bottom,
                rgba(10, 10, 10, 0.97) 0%,
                rgba(10, 10, 10, 0.9) 55%,
                rgba(10, 10, 10, 0.72) 100%
            );
            border-bottom: 0.5px solid rgba(255,255,255,.12);
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
            backdrop-filter: blur(16px) saturate(160%);
            -webkit-backdrop-filter: blur(16px) saturate(160%);
        }

        .main-header__bar {
            display: grid;
            grid-template-columns: 1fr auto 1fr;
            align-items: center;
            min-height: 78px;
            overflow: visible;
            transition: min-height .45s var(--header-ease);
        }
        .main-header.is-slim .main-header__bar {
            min-height: 48px;
        }

        .logo-wrapper {
            grid-column: 2;
            justify-self: center;
            display: flex;
            align-items: center;
            justify-content: center;
            line-height: 0;
        }
        .logo-link {
            position: relative;
            display: block;
            line-height: 0;
            isolation: isolate;
        }
        .logo {
            position: relative;
            z-index: 1;
            height: 78px;
            width: auto;
            max-width: min(280px, 52vw);
            display: block;
            object-fit: contain;
            transform: translateZ(0);
            transform-origin: center center;
            transition: height .45s var(--header-ease), max-width .45s var(--header-ease);
        }
        .main-header.is-slim .logo {
            height: 44px;
            max-width: min(200px, 46vw);
        }

        /* Ondas sonoras (anéis radiando da logo) */
        .logo-waves {
            position: absolute;
            inset: 50% auto auto 50%;
            width: 0;
            height: 0;
            z-index: 0;
            pointer-events: none;
        }
        .logo-wave {
            position: absolute;
            left: 50%;
            top: 50%;
            width: 52px;
            height: 52px;
            margin: -26px 0 0 -26px;
            border-radius: 50%;
            border: 1.5px solid rgba(220, 38, 38, 0.55);
            opacity: 0;
            transform: scale(0.85);
            animation: logo-soundwave 2.6s ease-out infinite;
        }
        .logo-wave:nth-child(2) { animation-delay: 0.85s; }
        .logo-wave:nth-child(3) { animation-delay: 1.7s; }
        .main-header.is-slim .logo-wave {
            animation: none;
            opacity: 0;
            visibility: hidden;
        }
        @keyframes logo-soundwave {
            0% {
                transform: scale(0.9);
                opacity: 0.55;
                border-color: rgba(220, 38, 38, 0.55);
            }
            70% {
                opacity: 0.18;
                border-color: rgba(255, 255, 255, 0.22);
            }
            100% {
                transform: scale(2.35);
                opacity: 0;
                border-color: rgba(255, 255, 255, 0);
            }
        }
        @media (prefers-reduced-motion: reduce) {
            .logo-wave {
                animation: none;
                opacity: 0;
            }
        }

        .main-header__actions {
            grid-column: 3;
            justify-self: end;
            display: flex;
            align-items: center;
            gap: 4px;
        }

        /* MENU ICON */
        .menu-icon-btn {
            grid-column: 1;
            justify-self: start;
            background: transparent;
            border: none;
            color: var(--white);
            font-size: 28px;
            cursor: pointer;
            padding: 8px;
            transition: color .3s, font-size .45s var(--header-ease), padding .45s var(--header-ease);
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .main-header.is-slim .menu-icon-btn {
            font-size: 24px;
            padding: 6px;
        }
        .menu-icon-btn:hover { color: var(--red); }

        /* SEARCH ICON */
        .header-icon {
            background: transparent;
            border: none;
            color: var(--white);
            font-size: 22px;
            cursor: pointer;
            padding: 8px 10px;
            transition: color .3s, font-size .45s var(--header-ease), padding .45s var(--header-ease);
            position: relative;
        }
        .main-header.is-slim .header-icon {
            font-size: 18px;
            padding: 6px 8px;
        }
        .header-icon:hover { color: var(--red); }
        .header-icon .badge {
            position: absolute;
            top: 0;
            right: 0;
            background: var(--red);
            color: var(--white);
            font-size: 10px;
            width: 18px;
            height: 18px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: 600;
        }

        /* SEARCH MODAL */
        .search-modal .modal-content {
            background: var(--dark-2);
            border: 1px solid var(--dark-4);
            border-radius: 20px;
        }
        .search-modal .modal-header {
            border-bottom: 1px solid var(--dark-4);
            padding: 25px 30px;
        }
        .search-modal .modal-title {
            color: var(--white);
            font-weight: 600;
        }
        .search-modal .btn-close {
            filter: invert(1);
            box-shadow: none;
            outline: none;
        }
        .search-modal .btn-close:hover,
        .search-modal .btn-close:focus,
        .search-modal .btn-close:focus-visible {
            box-shadow: none;
            outline: none;
            opacity: 1;
        }
        .search-modal .modal-body {
            padding: 30px;
        }
        .search-input-wrapper {
            position: relative;
        }
        .search-field {
            background: var(--dark-3);
            border: 2px solid var(--dark-4);
            border-radius: 999px;
            transition: none;
            overflow: hidden;
        }
        .search-input-wrapper:focus-within .search-field {
            border-color: var(--red);
        }
        .search-input-wrapper.is-suggest-open .search-field {
            border-radius: 18px;
            border-color: var(--red);
            box-shadow: 0 16px 36px rgba(0,0,0,.35);
            transition: none;
        }
        .search-modal .search-suggest-panel,
        .search-modal .search-suggest-panel[hidden] {
            transition: none !important;
            animation: none !important;
        }
        .search-field__row {
            position: relative;
            display: block;
            width: 100%;
        }
        .search-input-wrapper input {
            width: 100%;
            background: transparent;
            border: 0;
            border-radius: 0;
            padding: 16px 96px 16px 22px;
            color: var(--white);
            font-size: 16px;
            outline: none;
            box-shadow: none;
        }
        .search-input-wrapper input::placeholder { color: var(--gray); }
        .search-input-wrapper input:focus {
            outline: none;
            border: 0;
            box-shadow: none;
        }
        /* Evita o “X” nativo do browser (junto com o limpar custom) */
        .search-input-wrapper input[type="search"]::-webkit-search-decoration,
        .search-input-wrapper input[type="search"]::-webkit-search-cancel-button,
        .search-input-wrapper input[type="search"]::-webkit-search-results-button,
        .search-input-wrapper input[type="search"]::-webkit-search-results-decoration {
            -webkit-appearance: none;
            appearance: none;
            display: none;
        }
        .search-input-wrapper input::-ms-clear {
            display: none;
            width: 0;
            height: 0;
        }
        .search-input-wrapper .search-submit-btn {
            position: absolute;
            right: 8px;
            top: 50%;
            transform: translateY(-50%);
            z-index: 3;
            background: var(--red);
            border: none;
            width: 42px;
            height: 42px;
            border-radius: 50%;
            color: var(--white);
            font-size: 16px;
            cursor: pointer;
            display: grid;
            place-items: center;
            padding: 0;
            transition: background .2s ease, transform .2s ease;
        }
        .search-input-wrapper .search-submit-btn:hover {
            background: var(--red-dark);
            transform: translateY(-50%) scale(1.04);
        }
        .search-input-wrapper .mk-search-suggest__clear {
            right: 56px;
            color: rgba(255,255,255,.55);
            width: 1.7rem;
            height: 1.7rem;
            z-index: 3;
        }
        .search-input-wrapper .mk-search-suggest__clear:hover {
            color: var(--white);
            background: rgba(255,255,255,.08);
        }
        .search-modal .search-suggest-panel {
            position: relative;
            top: auto;
            left: auto;
            right: auto;
            background: transparent;
            color: var(--white);
            border: 0;
            border-top: 1px solid rgba(255,255,255,.1);
            border-radius: 0;
            box-shadow: none;
            max-height: min(18rem, 48vh);
            padding: .35rem .4rem .5rem;
        }
        .search-modal .mk-search-suggest__item {
            color: var(--white);
        }
        .search-modal .mk-search-suggest__item:hover,
        .search-modal .mk-search-suggest__item.is-active {
            background: rgba(255,255,255,.08);
            color: var(--white);
        }
        .search-modal .mk-search-suggest__label {
            color: rgba(255,255,255,.92);
            text-transform: none;
        }
        .search-modal .mk-search-suggest__label strong {
            color: var(--white);
        }
        .search-modal .mk-search-suggest__meta {
            color: rgba(255,255,255,.45);
        }
        .search-modal .mk-search-suggest__meta--price {
            display: none !important;
        }
        .search-modal .mk-search-suggest__icon {
            color: rgba(255,255,255,.4);
        }
        .search-input-wrapper.is-suggest-open ~ .search-suggestions {
            display: none;
        }
        .search-suggestions {
            margin-top: 22px;
        }
        .search-suggestions__group + .search-suggestions__group {
            margin-top: 18px;
        }
        .search-suggestions h6 {
            color: var(--gray);
            font-size: 11px;
            text-transform: uppercase;
            letter-spacing: 1px;
            margin: 0 0 10px;
            font-weight: 600;
        }
        .search-suggestions__tags {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
        }
        .search-tag,
        .search-tag--dept {
            display: inline-flex;
            align-items: center;
            background: var(--dark-3);
            color: var(--white);
            padding: 8px 16px;
            border-radius: 999px;
            font-size: 13px;
            margin: 0;
            transition: background .2s ease, color .2s ease;
            border: 0;
            text-decoration: none;
            line-height: 1.2;
        }
        .search-tag:hover,
        .search-tag:focus-visible,
        .search-tag--dept:hover,
        .search-tag--dept:focus-visible,
        body.rec-front-page .search-tag:hover,
        body.rec-front-page .search-tag:focus-visible,
        body.rec-front-page .search-tag--dept:hover,
        body.rec-front-page .search-tag--dept:focus-visible {
            background: var(--red);
            color: #fff !important;
        }

        /* OFFCANVAS MENU — tema preto + slide
           z-index acima do header fixo (1100) — senão o menu fica por baixo */
        #menuOffcanvas.offcanvas {
            display: flex;
            flex-direction: column;
            background: #0a0a0a !important;
            width: min(360px, 94vw) !important;
            border-right: 1px solid #1f1f1f !important;
            color: #fff;
            box-shadow: 8px 0 40px rgba(0,0,0,.45);
            z-index: 1210 !important;
        }
        .offcanvas-backdrop,
        .offcanvas-backdrop.show {
            z-index: 1205 !important;
        }
        body.rec-front-page .offcanvas-backdrop,
        body.rec-front-page .offcanvas-backdrop.show {
            z-index: 1205 !important;
        }
        #menuOffcanvas .offcanvas-header {
            background: var(--red);
            padding: 14px 16px;
            display: flex;
            align-items: center;
            gap: 10px;
            min-height: 60px;
            border-bottom: 0;
        }
        #menuOffcanvas .offcanvas-header .btn-close {
            margin: 0 0 0 auto;
            padding: 0;
            opacity: .95;
            filter: invert(1);
            width: 1.1em;
            height: 1.1em;
            background-size: 1em;
            box-shadow: none;
            outline: none;
        }
        #menuOffcanvas .offcanvas-header .btn-close:hover,
        #menuOffcanvas .offcanvas-header .btn-close:focus,
        #menuOffcanvas .offcanvas-header .btn-close:focus-visible {
            opacity: 1;
            box-shadow: none;
            outline: none;
        }
        #menuOffcanvas .offcanvas-title {
            font-weight: 700;
            color: #fff;
            font-size: 1.05rem;
            margin: 0;
            flex: 1;
            line-height: 1.25;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        #menuOffcanvas .offcanvas-body {
            padding: 0;
            overflow: hidden;
            display: flex;
            flex-direction: column;
            flex: 1 1 auto;
            min-height: 0;
            background: #0a0a0a;
        }

        #menuOffcanvas .rec-menu-chrome {
            flex: 0 0 auto;
            background: #0a0a0a;
            border-bottom: 1px solid #1f1f1f;
            padding: 10px 12px 12px;
        }
        #menuOffcanvas .rec-menu-chrome.is-drilling .rec-menu-tabs {
            display: none;
        }
        #menuOffcanvas .rec-menu-tabs {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 6px;
            margin-bottom: 10px;
            padding: 4px;
            border-radius: 999px;
            background: #141414;
        }
        #menuOffcanvas .rec-menu-tab {
            border: 0;
            border-radius: 999px;
            background: transparent;
            color: rgba(255,255,255,.62);
            font-size: 13px;
            font-weight: 700;
            padding: 10px 8px;
            line-height: 1.1;
            cursor: pointer;
            transition: background .15s ease, color .15s ease;
        }
        #menuOffcanvas .rec-menu-tab.is-active {
            background: var(--red);
            color: #fff;
        }
        #menuOffcanvas .rec-menu-tab:not(.is-active):hover {
            color: #fff;
            background: rgba(255,255,255,.06);
        }
        #menuOffcanvas .rec-menu-filter {
            position: relative;
        }
        #menuOffcanvas .rec-menu-filter__icon {
            position: absolute;
            left: 12px;
            top: 50%;
            transform: translateY(-50%);
            color: rgba(255,255,255,.4);
            font-size: 14px;
            pointer-events: none;
        }
        #menuOffcanvas .rec-menu-filter__input {
            width: 100%;
            border: 1px solid #2a2a2a;
            background: #141414;
            color: #fff;
            border-radius: 999px;
            padding: 11px 14px 11px 36px;
            font-size: 14px;
            outline: none;
            transition: border-color .15s ease;
        }
        #menuOffcanvas .rec-menu-filter__input::placeholder {
            color: rgba(255,255,255,.38);
        }
        #menuOffcanvas .rec-menu-filter__input:focus {
            border-color: rgba(227, 30, 36, .7);
        }
        #menuOffcanvas .rec-menu-filter__input::-webkit-search-cancel-button {
            -webkit-appearance: none;
            appearance: none;
        }
        #menuOffcanvas .rec-menu-pane {
            display: none;
            flex: 1 1 auto;
            min-height: 0;
            flex-direction: column;
        }
        #menuOffcanvas .rec-menu-pane.is-active {
            display: flex;
        }
        #menuOffcanvas .rec-menu-brands {
            flex: 1 1 auto;
            min-height: 0;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            padding: 8px 8px 16px;
            scrollbar-width: thin;
            scrollbar-color: #3a3a3a transparent;
        }
        #menuOffcanvas .rec-menu-brands__more {
            margin-top: 6px;
            padding-top: 4px;
        }
        #menuOffcanvas .rec-menu-empty {
            margin: 18px 12px;
            color: rgba(255,255,255,.45);
            font-size: 13px;
            text-align: center;
        }
        #menuOffcanvas .menu-item[hidden] {
            display: none !important;
        }

        #menuOffcanvas .rec-menu-back {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 38px;
            height: 38px;
            border: 0;
            border-radius: 10px;
            background: rgba(255,255,255,.18);
            color: #fff;
            flex-shrink: 0;
            padding: 0;
            line-height: 1;
        }
        #menuOffcanvas .rec-menu-back[hidden] { display: none !important; }
        #menuOffcanvas .rec-menu-back:hover {
            background: rgba(255,255,255,.28);
            color: #fff;
        }
        #menuOffcanvas .rec-menu-back i { font-size: 1.1rem; }

        #menuOffcanvas .rec-menu-viewport {
            position: relative;
            flex: 1 1 auto;
            min-height: 0;
            overflow: hidden;
            background: #0a0a0a;
        }
        #menuOffcanvas .rec-menu-brands .menu-link {
            border-radius: 12px;
            padding: 14px 14px;
            font-size: 15px;
            font-weight: 600;
        }
        #menuOffcanvas .rec-menu-brands .menu-link:hover,
        #menuOffcanvas .rec-menu-brands .menu-link:focus-visible {
            background: #1a1a1a;
            color: var(--gold);
        }
        #menuOffcanvas .rec-menu-track {
            display: flex;
            height: 100%;
            width: 100%;
            transition: transform .28s cubic-bezier(.22,.61,.36,1);
            will-change: transform;
        }
        #menuOffcanvas .rec-menu-panel {
            flex: 0 0 100%;
            width: 100%;
            height: 100%;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            background: #0a0a0a;
            scrollbar-width: thin;
            scrollbar-color: #3a3a3a transparent;
        }
        #menuOffcanvas .rec-menu-panel--root {
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }

        #menuOffcanvas .rec-menu-cats {
            flex: 1 1 auto;
            min-height: 0;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            padding: 8px 8px 16px;
            scrollbar-width: thin;
            scrollbar-color: #3a3a3a transparent;
        }

        /* Scroll slim — Firefox + WebKit */
        #menuOffcanvas .rec-menu-panel::-webkit-scrollbar,
        #menuOffcanvas .rec-menu-cats::-webkit-scrollbar {
            width: 4px;
        }
        #menuOffcanvas .rec-menu-panel::-webkit-scrollbar-track,
        #menuOffcanvas .rec-menu-cats::-webkit-scrollbar-track {
            background: transparent;
        }
        #menuOffcanvas .rec-menu-panel::-webkit-scrollbar-thumb,
        #menuOffcanvas .rec-menu-cats::-webkit-scrollbar-thumb {
            background: #3a3a3a;
            border-radius: 999px;
        }
        #menuOffcanvas .rec-menu-panel::-webkit-scrollbar-thumb:hover,
        #menuOffcanvas .rec-menu-cats::-webkit-scrollbar-thumb:hover {
            background: var(--red);
        }
        #menuOffcanvas .rec-menu-cats .menu-item {
            border-bottom: 0;
            margin: 0;
        }
        #menuOffcanvas .rec-menu-cats .menu-link {
            border-radius: 12px;
            padding: 14px 14px;
            font-size: 15px;
            font-weight: 600;
            color: #fff;
        }
        #menuOffcanvas .rec-menu-cats .menu-link:hover,
        #menuOffcanvas .rec-menu-cats .menu-link:focus-visible {
            background: #1a1a1a;
            color: var(--gold);
        }
        #menuOffcanvas .rec-menu-cats .menu-link:hover .menu-link__chevron,
        #menuOffcanvas .rec-menu-cats .menu-link:focus-visible .menu-link__chevron {
            color: var(--gold);
        }

        #menuOffcanvas .rec-menu-foot {
            flex: 0 0 auto;
            display: flex;
            flex-direction: column;
            gap: 10px;
            background: #0a0a0a;
            border-top: 1px solid #1f1f1f;
            padding: 10px 12px calc(12px + env(safe-area-inset-bottom, 0px));
        }
        #menuOffcanvas .rec-menu-foot__service {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 14px 14px;
            min-height: 52px;
            color: #fff;
            font-size: 15px;
            font-weight: 600;
            border-radius: 12px;
            background: transparent;
            text-decoration: none;
        }
        #menuOffcanvas .rec-menu-foot__service span {
            flex: 1;
        }
        #menuOffcanvas .rec-menu-foot__chevron {
            color: var(--red);
            font-size: 14px;
            line-height: 1;
        }
        #menuOffcanvas .rec-menu-foot__service:hover,
        #menuOffcanvas .rec-menu-foot__service:focus-visible {
            background: #1a1a1a;
            color: var(--gold);
            outline: none;
        }
        #menuOffcanvas .rec-menu-foot__service:hover .rec-menu-foot__chevron,
        #menuOffcanvas .rec-menu-foot__service:focus-visible .rec-menu-foot__chevron {
            color: var(--gold);
        }
        #menuOffcanvas .rec-menu-foot__langs {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 6px;
            padding: 4px;
            border-radius: 999px;
            background: #141414;
        }
        #menuOffcanvas .rec-menu-foot__lang {
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 2.2rem;
            padding: 0 10px;
            border-radius: 999px;
            border: 0;
            background: transparent;
            color: rgba(255,255,255,.72);
            font-size: 12px;
            font-weight: 800;
            letter-spacing: .06em;
            text-decoration: none;
        }
        #menuOffcanvas .rec-menu-foot__lang.is-active {
            background: var(--red);
            border-color: transparent;
            color: #fff;
        }
        #menuOffcanvas .rec-menu-foot__lang:hover,
        #menuOffcanvas .rec-menu-foot__lang:focus-visible {
            color: #fff;
            border-color: transparent;
            outline: none;
        }
        #menuOffcanvas .rec-menu-foot__lang.is-active:hover,
        #menuOffcanvas .rec-menu-foot__lang.is-active:focus-visible {
            background: var(--red-dark, #B91C1C);
            color: #fff;
        }
        #menuOffcanvas .rec-menu-foot__link {
            display: block;
            padding: 12px 14px;
            color: rgba(255,255,255,.72);
            font-size: 14px;
            font-weight: 500;
            border-radius: 12px;
        }
        #menuOffcanvas .rec-menu-foot__link:hover,
        #menuOffcanvas .rec-menu-foot__link:focus-visible {
            background: #1a1a1a;
            color: var(--gold);
            outline: none;
        }

        #menuOffcanvas .menu-item { border-bottom: 0; }
        #menuOffcanvas .menu-link {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 12px;
            padding: 14px 16px;
            color: #fff;
            font-weight: 500;
            font-size: 15px;
            text-decoration: none;
            border: 0;
            background: transparent;
            width: 100%;
            text-align: left;
            cursor: pointer;
        }
        #menuOffcanvas .menu-link:hover,
        #menuOffcanvas .menu-link:focus-visible {
            background: #1a1a1a;
            color: var(--gold);
            outline: none;
        }
        #menuOffcanvas .menu-link__label {
            flex: 1;
            min-width: 0;
        }
        #menuOffcanvas .menu-link__chevron {
            color: rgba(255,255,255,.35);
            font-size: 13px;
            flex-shrink: 0;
        }
        #menuOffcanvas .menu-link:hover .menu-link__chevron { color: var(--gold); }

        #menuOffcanvas .menu-link--viewall {
            color: var(--gold);
            font-weight: 600;
            margin: 4px 8px 2px;
            width: calc(100% - 16px);
            border-radius: 12px;
            border: 0;
            border-bottom: 1px solid rgba(255,255,255,.08);
            background: transparent;
            padding-bottom: 14px;
        }
        #menuOffcanvas .menu-link--viewall .menu-link__chevron {
            color: var(--gold);
        }
        #menuOffcanvas .menu-link--viewall:hover {
            color: #fff;
            background: #1a1a1a;
            border-bottom-color: transparent;
        }
        #menuOffcanvas .menu-link--viewall:hover .menu-link__chevron {
            color: #fff;
        }
        #menuOffcanvas .rec-menu-panel[data-rec-menu-panel="sub"] {
            padding: 6px 0 16px;
            background: #0a0a0a;
        }
        #menuOffcanvas .rec-menu-panel[data-rec-menu-panel="sub"] .menu-item {
            margin: 0 8px;
        }
        #menuOffcanvas .rec-menu-panel[data-rec-menu-panel="sub"] .menu-link:not(.menu-link--viewall) {
            border-radius: 12px;
            color: rgba(255,255,255,.88);
            font-weight: 500;
            font-size: 14px;
        }

        /* Menu mobile: tipografia padronizada (cats / marcas / subcats) */
        @media (max-width: 767px) {
            #menuOffcanvas.offcanvas {
                --rec-menu-fs: 1.0625rem;      /* 17px — itens */
                --rec-menu-fs-tab: 0.9375rem;  /* 15px — abas */
                --rec-menu-fs-meta: 0.9375rem; /* 15px — filtro / rodapé */
                --rec-menu-fs-title: 1.125rem; /* 18px — título */
                width: min(100vw, 100%) !important;
            }
            #menuOffcanvas .offcanvas-title {
                font-size: var(--rec-menu-fs-title);
                font-weight: 700;
            }
            #menuOffcanvas .rec-menu-tab {
                font-size: var(--rec-menu-fs-tab);
                font-weight: 700;
                padding: 12px 10px;
            }
            #menuOffcanvas .rec-menu-filter__input {
                font-size: var(--rec-menu-fs-meta);
                padding: 13px 14px 13px 38px;
            }
            #menuOffcanvas .rec-menu-filter__icon {
                font-size: 16px;
            }
            #menuOffcanvas .menu-link,
            #menuOffcanvas .rec-menu-cats .menu-link,
            #menuOffcanvas .rec-menu-brands .menu-link,
            #menuOffcanvas .rec-menu-panel[data-rec-menu-panel="sub"] .menu-link:not(.menu-link--viewall) {
                font-size: var(--rec-menu-fs);
                font-weight: 600;
                line-height: 1.3;
                padding: 15px 14px;
                min-height: 52px;
            }
            #menuOffcanvas .menu-link--viewall {
                font-size: var(--rec-menu-fs);
                font-weight: 700;
                padding: 15px 14px;
            }
            #menuOffcanvas .menu-link__chevron {
                font-size: 15px;
            }
            #menuOffcanvas .rec-menu-empty {
                font-size: var(--rec-menu-fs-meta);
            }
            #menuOffcanvas .rec-menu-foot__service {
                font-size: 15px;
                min-height: 48px;
            }
            #menuOffcanvas .rec-menu-foot__lang {
                min-height: 44px;
                font-size: 12px;
            }
            #menuOffcanvas .rec-menu-foot__link {
                font-size: var(--rec-menu-fs-meta);
                font-weight: 600;
                padding: 14px;
                min-height: 48px;
            }
        }

        /* FULL BANNER CAROUSEL — largura 100%, altura proporcional (sem cortar/esticar) */
        .hero-carousel {
            --hero-fade: 0;
            margin-top: 0;
            background: var(--dark);
            overflow: hidden;
            position: relative;
            padding-bottom: 36px;
        }
        .hero-carousel .carousel-inner {
            height: auto;
            opacity: calc(1 - (var(--hero-fade) * 0.92));
            transform: translate3d(0, calc(var(--hero-fade) * 28px), 0);
            will-change: opacity, transform;
            transition: opacity .05s linear, transform .05s linear;
        }
        /* Degradê para transparente / preto ao scroll (hero) */
        .hero-carousel::after {
            content: '';
            position: absolute;
            left: 0;
            right: 0;
            top: 0;
            bottom: 36px;
            z-index: 4;
            pointer-events: none;
            background: linear-gradient(
                to bottom,
                rgba(10, 10, 10, calc(var(--hero-fade) * 0.1)) 0%,
                rgba(10, 10, 10, calc(var(--hero-fade) * 0.45)) 40%,
                rgba(10, 10, 10, calc(var(--hero-fade) * 0.85)) 75%,
                rgba(10, 10, 10, calc(var(--hero-fade) * 1)) 100%
            );
        }

        /* Fade no scroll — demais dobras da home */
        .rec-scroll-fade:not(.hero-carousel) {
            --rec-fade: 0;
            position: relative;
            isolation: isolate;
        }
        .rec-scroll-fade:not(.hero-carousel) > .container {
            opacity: calc(1 - (var(--rec-fade) * 0.92));
            transform: translate3d(0, calc(var(--rec-fade) * 28px), 0);
            will-change: opacity, transform;
            transition: opacity .05s linear, transform .05s linear;
            position: relative;
            z-index: 1;
        }
        .rec-scroll-fade:not(.hero-carousel)::after {
            content: '';
            position: absolute;
            inset: 0;
            z-index: 2;
            pointer-events: none;
            background: linear-gradient(
                to bottom,
                rgba(10, 10, 10, calc(var(--rec-fade) * 0.08)) 0%,
                rgba(10, 10, 10, calc(var(--rec-fade) * 0.4)) 45%,
                rgba(10, 10, 10, calc(var(--rec-fade) * 0.88)) 80%,
                rgba(10, 10, 10, calc(var(--rec-fade) * 1)) 100%
            );
        }
        .hero-carousel .carousel-item {
            height: auto;
            position: relative;
            background: var(--dark);
        }
        /* Transição: apagar → acender (Bootstrap carousel-fade) */
        .hero-carousel.carousel-fade .carousel-item {
            opacity: 0;
            transition-property: opacity;
            transition-duration: .7s;
            transition-timing-function: ease-in-out;
        }
        .hero-carousel.carousel-fade .carousel-item.active,
        .hero-carousel.carousel-fade .carousel-item-next.carousel-item-start,
        .hero-carousel.carousel-fade .carousel-item-prev.carousel-item-end {
            opacity: 1;
            z-index: 1;
        }
        .hero-carousel.carousel-fade .active.carousel-item-start,
        .hero-carousel.carousel-fade .active.carousel-item-end {
            opacity: 0;
            z-index: 0;
        }
        .hero-carousel .carousel-item a {
            display: block;
            line-height: 0;
        }
        .hero-carousel .carousel-item img {
            width: 100%;
            height: auto;
            max-height: none;
            display: block;
            object-fit: contain;
            object-position: center;
        }

        /* Indicadores + progresso na bolinha ativa (pill) */
        .hero-carousel .carousel-indicators {
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            margin: 0;
            padding: 14px 0 12px;
            gap: 8px;
            z-index: 5;
            background: var(--dark);
            opacity: max(0, calc(1 - (var(--hero-fade) * 2.6)));
            transform: translate3d(0, calc(var(--hero-fade) * 22px), 0);
            will-change: opacity, transform;
            transition: opacity .05s linear, transform .05s linear;
        }
        .hero-carousel .carousel-indicators [data-bs-target] {
            position: relative;
            width: 10px;
            height: 10px;
            border: 0;
            border-radius: 999px;
            margin: 0;
            padding: 0;
            text-indent: 0;
            overflow: hidden;
            background-clip: padding-box;
            background-color: rgba(255,255,255,.32);
            opacity: 1;
            box-shadow: none;
            transition:
                width .35s cubic-bezier(0.22, 1, 0.36, 1),
                background-color .25s ease,
                transform .25s ease;
        }
        .hero-carousel .carousel-indicators .active {
            width: 36px;
            background-color: rgba(255,255,255,.2);
            transform: none;
            opacity: 1;
        }
        .hero-carousel__dot-fill {
            display: block;
            height: 100%;
            width: 0;
            border-radius: inherit;
            background: var(--red);
            transform-origin: left center;
        }
        .hero-carousel .carousel-indicators .active .hero-carousel__dot-fill.is-running {
            animation: heroDotProgress var(--hero-interval, 5s) linear forwards;
        }
        @keyframes heroDotProgress {
            from { width: 0%; }
            to { width: 100%; }
        }
        @media (prefers-reduced-motion: reduce) {
            .hero-carousel .carousel-indicators .active .hero-carousel__dot-fill.is-running {
                animation: none;
                width: 100%;
            }
        }
        @media (max-width: 767px) {
            .hero-carousel .carousel-indicators {
                display: flex !important;
                bottom: 10px;
                padding: 0;
                margin: 0;
                background: transparent;
                z-index: 5;
            }
            .hero-carousel {
                padding-bottom: 0;
            }
            /* Mobile: slide lateral (desktop permanece fade) */
            .hero-carousel.carousel-fade .carousel-item {
                opacity: 1;
                transform: translateX(0);
                transition: transform .5s ease-in-out;
            }
            .hero-carousel.carousel-fade .carousel-item.active,
            .hero-carousel.carousel-fade .carousel-item-next.carousel-item-start,
            .hero-carousel.carousel-fade .carousel-item-prev.carousel-item-end {
                opacity: 1;
                z-index: 1;
                transform: translateX(0);
            }
            .hero-carousel.carousel-fade .carousel-item-next:not(.carousel-item-start) {
                opacity: 1;
                transform: translateX(100%);
            }
            .hero-carousel.carousel-fade .carousel-item-prev:not(.carousel-item-end) {
                opacity: 1;
                transform: translateX(-100%);
            }
            .hero-carousel.carousel-fade .active.carousel-item-start {
                opacity: 1;
                transform: translateX(-100%);
            }
            .hero-carousel.carousel-fade .active.carousel-item-end {
                opacity: 1;
                transform: translateX(100%);
            }
            .hero-carousel .carousel-control-prev,
            .hero-carousel .carousel-control-next {
                display: none;
            }
        }

        .hero-carousel .carousel-control-prev,
        .hero-carousel .carousel-control-next {
            width: 50px;
            height: 50px;
            background: rgba(0,0,0,0.5);
            border-radius: 50%;
            top: 50%;
            transform: translateY(-50%);
            opacity: 0;
            transition: all 0.3s;
        }
        .hero-carousel:hover .carousel-control-prev,
        .hero-carousel:hover .carousel-control-next { opacity: 1; }
        .hero-carousel .carousel-control-prev:hover,
        .hero-carousel .carousel-control-next:hover { background: var(--red); }
        .hero-carousel .carousel-control-prev { left: 20px; }
        .hero-carousel .carousel-control-next { right: 20px; }

        /* BANNERS GRID - SOMENTE IMAGENS */
        .banners-grid { padding: 30px 0; background: var(--dark); }
        .banner-img-box {
            border-radius: 16px;
            overflow: hidden;
            cursor: pointer;
            height: 100%;
        }
        .banner-img-box img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s, filter 0.3s;
        }
        .banner-img-box:hover img { 
            transform: scale(1.05); 
            filter: brightness(1.1);
        }
        .banner-tall { height: 320px; }
        .banner-medium { height: 153px; }

        /* SECTION STYLES */
        .section { padding: 60px 0; background: var(--dark); }
        .section-dark { background: var(--dark-2); }
        .section-header {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            text-align: center;
            margin-bottom: 28px;
        }
        .section-title {
            font-size: 1.8rem;
            font-weight: 700;
            margin: 0;
            color: var(--white);
            text-align: center;
        }
        .section-title span { color: var(--red); }
        .section-more {
            display: flex;
            justify-content: center;
            margin-top: 1.65rem;
        }
        .view-all {
            color: var(--white);
            font-weight: 700;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 14px;
            padding: .7rem 1.35rem;
            border-radius: 999px;
            border: 1px solid rgba(227, 30, 36, .65);
            background: transparent;
            text-decoration: none;
            transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease;
        }
        .view-all:hover,
        .view-all:focus-visible,
        body.rec-front-page .view-all:hover,
        body.rec-front-page .view-all:focus-visible {
            color: #fff;
            background: var(--red);
            border-color: var(--red);
            transform: translateY(-2px);
            box-shadow: 0 10px 22px rgba(227, 30, 36, .28);
            outline: none;
        }
        .view-all:hover i,
        .view-all:focus-visible i,
        body.rec-front-page .view-all:hover i,
        body.rec-front-page .view-all:focus-visible i {
            color: #fff;
        }

        /* Grade / slider de produtos da home */
        .home-products {
            position: relative;
        }
        .home-products__track {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 1.5rem;
        }
        .home-products__item {
            min-width: 0;
        }
        @media (min-width: 768px) and (max-width: 991px) {
            .home-products__track {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 1.1rem;
            }
        }
        @media (max-width: 767px) {
            .home-products {
                min-width: 0;
                max-width: 100%;
                margin-right: 0;
            }
            .home-products__track {
                display: flex;
                gap: 12px;
                min-width: 0;
                max-width: 100%;
                overflow-x: auto;
                overflow-y: hidden;
                scroll-snap-type: x mandatory;
                scroll-padding-left: 0;
                -webkit-overflow-scrolling: touch;
                overscroll-behavior-x: contain;
                padding: 2px 12px 10px 0;
                scrollbar-width: none;
                -ms-overflow-style: none;
            }
            .home-products__track::-webkit-scrollbar {
                display: none;
            }
            .home-products__item {
                flex: 0 0 78%;
                max-width: 290px;
                scroll-snap-align: start;
            }
            .home-products__item .product-card:hover {
                transform: none;
            }
        }

        /* PRODUCT CARDS — mesmo formato dos cards de categoria */
        .product-card {
            --mx: 50%;
            --my: 50%;
            position: relative;
            display: flex;
            flex-direction: column;
            background: linear-gradient(
                180deg,
                #121212 0%,
                #171717 48%,
                #222222 100%
            );
            border-radius: 20px;
            overflow: hidden;
            transition:
                transform .45s cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow .45s cubic-bezier(0.22, 1, 0.36, 1),
                border-color .45s ease;
            height: 100%;
            box-shadow: 0 12px 28px -16px rgba(0, 0, 0, .7);
            border: 1px solid rgba(255, 255, 255, .05);
            box-sizing: border-box;
            cursor: pointer;
        }
        .product-card:hover {
            transform: translateY(-3px);
            border-color: rgba(255, 255, 255, .08);
            box-shadow:
                0 16px 32px -16px rgba(0, 0, 0, .5),
                0 0 22px -12px rgba(140, 18, 22, .28);
        }
        /* Hit area: card inteiro abre o produto (botão orçamento fica acima) */
        .product-card__hit {
            position: absolute;
            inset: 0;
            z-index: 1;
            border-radius: inherit;
            text-indent: -9999px;
            overflow: hidden;
            color: transparent;
        }
        .product-card > .product-img {
            position: relative;
            z-index: 0;
            pointer-events: none;
        }
        .product-card > .product-info {
            position: relative;
            z-index: 2;
            pointer-events: none;
        }
        .product-card .btn-cart {
            position: relative;
            z-index: 5;
            pointer-events: auto !important;
        }
        /* Hover: fundo acende (blur laranja no mouse) + borda brilhante */
        .product-card__fx {
            position: absolute;
            inset: 0;
            z-index: 0;
            overflow: hidden;
            pointer-events: none;
            border-radius: inherit;
        }
        /* Fundo do card: apagado; no hover acende e segue o mouse */
        .product-card__fx-blur {
            position: absolute;
            width: min(300px, 110%);
            height: min(300px, 110%);
            left: var(--mx);
            top: var(--my);
            transform: translate(-50%, -50%);
            border-radius: 50%;
            background:
                radial-gradient(circle at 50% 50%,
                    rgba(90, 16, 20, .45) 0%,
                    rgba(120, 20, 26, .28) 28%,
                    rgba(80, 14, 18, .12) 52%,
                    transparent 72%);
            filter: blur(26px);
            opacity: 0;
            transition: opacity .5s cubic-bezier(0.22, 1, 0.36, 1);
            will-change: left, top, opacity;
        }
        .product-card.is-fx-hot .product-card__fx-blur,
        .product-card-fx.is-fx-hot .product-card__fx-blur {
            opacity: .85;
        }
        .product-card__fx-border {
            position: absolute;
            inset: 0;
            border-radius: inherit;
            padding: 1px;
            background:
                radial-gradient(
                    200px circle at var(--mx) var(--my),
                    rgba(180, 70, 76, .7) 0%,
                    rgba(140, 28, 34, .55) 22%,
                    rgba(100, 18, 22, .28) 48%,
                    transparent 72%
                );
            -webkit-mask:
                linear-gradient(#fff 0 0) content-box,
                linear-gradient(#fff 0 0);
            mask:
                linear-gradient(#fff 0 0) content-box,
                linear-gradient(#fff 0 0);
            -webkit-mask-composite: xor;
            mask-composite: exclude;
            opacity: 0;
            transition: opacity .5s cubic-bezier(0.22, 1, 0.36, 1);
            will-change: opacity, background;
            filter: drop-shadow(0 0 2px rgba(100, 18, 22, .25));
        }
        .product-card.is-fx-hot .product-card__fx-border,
        .product-card-fx.is-fx-hot .product-card__fx-border {
            opacity: .9;
        }
        @media (prefers-reduced-motion: reduce) {
            .product-card,
            .product-card__fx-blur,
            .product-card__fx-border {
                transition: none;
            }
        }
        .product-img {
            background: #fff;
            height: 200px;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            overflow: hidden;
            padding: 16px;
            margin: 12px 12px 4px;
            border-radius: 14px;
            border: 0;
            box-shadow: none;
        }
        .product-img img,
        .product-img .product-card__img,
        .product-card__lazy .product-card__img {
            position: relative;
            inset: auto;
            width: auto;
            height: auto;
            max-height: 100%;
            max-width: 100%;
            object-fit: contain;
            border-radius: 12px;
            will-change: transform;
            transition: transform .65s cubic-bezier(.22, 1, .36, 1), filter .4s ease, opacity .55s ease;
        }
        .product-card:hover .product-img img {
            transform: scale(1.06);
        }
        /* Ganha do fade global (mk-img-fade) que só tinha opacity e matava o zoom */
        html.mk-img-fade .product-card .product-img img.mk-fade-img,
        html.mk-img-fade .product-card .product-img img.mk-fade-img.is-loaded {
            transition: transform .65s cubic-bezier(.22, 1, .36, 1), filter .4s ease, opacity .55s ease;
        }
        @media (prefers-reduced-motion: reduce) {
            .product-img img,
            html.mk-img-fade .product-card .product-img img.mk-fade-img,
            html.mk-img-fade .product-card .product-img img.mk-fade-img.is-loaded,
            .product-card:hover .product-img img {
                transition: none;
                transform: none;
            }
        }
        .product-tag {
            position: absolute;
            top: 10px;
            left: 10px;
            background: var(--red);
            color: var(--white);
            padding: 5px 14px;
            border-radius: 8px;
            font-size: 11px;
            font-weight: 700;
            text-transform: uppercase;
        }
        .product-tag.new { background: var(--gold); color: var(--dark); }
        .product-tag.hot { background: #ff6b00; }
        .product-sku {
            position: absolute;
            top: 10px;
            right: 10px;
            z-index: 3;
            max-width: calc(100% - 24px);
            padding: 5px 10px;
            border-radius: 8px;
            background: #fff;
            color: #888;
            border: 1px solid #ececec;
            box-shadow: 0 2px 8px rgba(0,0,0,.08);
            font-size: 11px;
            font-weight: 600;
            letter-spacing: .04em;
            line-height: 1.2;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            opacity: 0;
            visibility: hidden;
            transform: translateY(-4px);
            transition: opacity .25s ease, visibility .25s ease, transform .25s ease;
            pointer-events: none;
        }
        .product-card:hover .product-sku {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }
        .product-sku__label {
            color: #aaa;
            font-weight: 500;
            margin-right: 2px;
        }
        .product-wishlist {
            position: absolute;
            top: 12px;
            right: 12px;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            border: none;
            background: var(--white);
            color: var(--gray);
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
            cursor: pointer;
            font-size: 16px;
            transition: all 0.3s;
        }
        .product-wishlist:hover { 
            background: var(--red); 
            color: var(--white); 
        }
        .product-info {
            padding: 14px 0 20px;
            margin: 0 18px;
            color: #fff;
            text-align: center;
            background: transparent;
            flex: 1 1 auto;
            display: flex;
            flex-direction: column;
        }
        .product-info .btn-cart {
            margin-top: auto;
        }
        .product-brand {
            color: rgba(255, 255, 255, .55);
            font-size: 10.5px;
            text-transform: uppercase;
            letter-spacing: 1.5px;
            margin-bottom: 6px;
            font-weight: 500;
        }
        .product-name {
            font-weight: 600;
            font-size: 16.5px;
            margin-bottom: 10px;
            color: #fff;
            line-height: 1.4;
            height: 46px;
            overflow: hidden;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            text-align: center;
        }
        .product-name a {
            color: #fff;
        }
        .product-name a:hover {
            color: var(--red);
        }
        .product-stars { color: var(--gold); font-size: 12px; margin-bottom: 12px; }
        .product-stars span { color: var(--gray); margin-left: 5px; font-size: 11px; }
        .product-price { margin-bottom: 15px; }
        .price-old {
            text-decoration: line-through;
            color: rgba(255, 255, 255, .45);
            font-size: 14px;
            display: block;
            margin-bottom: 2px;
        }
        .price-now {
            font-size: 20px;
            font-weight: 700;
            color: var(--red);
        }
        .price-now small {
            font-size: 13px;
            font-weight: 500;
        }
        .price-installment { font-size: 11px; color: #27ae60; margin-top: 4px; font-weight: 500; }
        @media (max-width: 767px) {
            .product-card .price-now,
            .product-card-fx .price-now,
            .mk-card .price-now {
                font-size: 16px;
                line-height: 1.2;
            }
            .product-card .price-now small,
            .product-card-fx .price-now small,
            .mk-card .price-now small {
                font-size: 11px;
            }
            .product-card .price-old,
            .product-card-fx .price-old,
            .mk-card .price-old {
                font-size: 11px;
            }
            .product-card .mk-card__price,
            .mk-card .mk-card__price,
            .mk-card__price--sale {
                font-size: .92rem;
            }
            .mk-card__price--old {
                font-size: .7rem;
            }
        }
        .btn-cart {
            width: 100%;
            background: #0a0a0a;
            color: #fff;
            border: 0 !important;
            outline: 0;
            box-shadow: 0 4px 14px rgba(0, 0, 0, .35);
            padding: 12px 16px;
            border-radius: 999px;
            font-weight: 700;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            font-size: 14px;
            transition: background .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease, transform .25s ease;
        }
        .btn-cart:hover {
            background: var(--red);
            color: #fff;
            border: 0 !important;
            box-shadow: 0 6px 18px rgba(227, 30, 36, .4);
            transform: translateY(-1px);
        }
        .btn-cart.is-added,
        .btn-cart.is-added:hover {
            background: #1f7a3a;
            color: #fff;
            box-shadow: 0 6px 18px rgba(31, 122, 58, .4);
            transform: none;
        }

        /* MINI BANNERS - SOMENTE IMAGENS */
        .mini-banners { padding: 30px 0; background: var(--dark-2); }
        .mini-banner-img {
            border-radius: 16px;
            overflow: hidden;
            height: 200px;
        }
        .mini-banner-img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s;
        }
        .mini-banner-img:hover img { transform: scale(1.05); }

        /* BRANDS */
        .brands-section { padding: 48px 0; background: var(--dark); }
        .brands-section__title {
            font-weight: 600;
            font-size: 1.35rem;
        }
        .brands-carousel {
            position: relative;
        }
        .brands-carousel .carousel-inner {
            overflow: visible;
        }
        .brands-section__track {
            display: grid;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: 14px;
        }
        .brands-section__item {
            min-width: 0;
        }
        .brand-box {
            background: #fff;
            border-radius: 14px;
            padding: 18px 20px;
            text-align: center;
            border: 1px solid #e8e8e8;
            transition: all 0.3s;
            height: 112px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .brand-box:hover {
            border-color: var(--red);
            background: #fff;
            box-shadow: 0 8px 22px rgba(0,0,0,.18);
        }
        .brand-box img {
            max-height: 64px;
            max-width: 92%;
            width: auto;
            height: auto;
            object-fit: contain;
            filter: grayscale(100%);
            opacity: 0.85;
            transition: all 0.3s;
        }
        .brand-box:hover img { filter: none; opacity: 1; }
        .brands-carousel__indicators {
            position: static;
            display: flex;
            justify-content: center;
            align-items: center;
            margin: 1.15rem 0 0;
            padding: 0;
            gap: 8px;
        }
        .brands-carousel__indicators [data-bs-target] {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            border: 0;
            background: rgba(255,255,255,.35);
            opacity: 1;
        }
        .brands-carousel__indicators .active {
            background: var(--red);
        }
        @media (max-width: 991px) {
            .brands-section__track {
                grid-template-columns: repeat(4, minmax(0, 1fr));
            }
            .brand-box {
                height: 96px;
            }
            .brand-box img {
                max-height: 52px;
            }
        }
        @media (max-width: 767px) {
            .brands-section {
                padding: 36px 0;
            }
            .brands-section .container {
                padding-right: calc(var(--bs-gutter-x, .75rem) * .5);
                min-width: 0;
                max-width: 100%;
            }
            .brands-section__title {
                font-size: 1.15rem;
                margin-bottom: 1rem !important;
                padding-right: calc(var(--bs-gutter-x, .75rem) / 2);
            }
            .brands-section__track {
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 10px;
            }
            .brands-section__item .brand-box {
                height: 88px;
                padding: 14px 12px;
                border-radius: 14px;
            }
            .brands-section__item .brand-box img {
                max-height: 44px;
            }
        }

        /* FEATURES (acima do footer) — marquee automático */
        .features-section {
            padding: 1.35rem 0;
            background: var(--dark-2);
            border-top: 1px solid var(--dark-4);
            overflow: hidden;
        }
        .features-section__viewport {
            overflow: hidden;
            mask-image: linear-gradient(90deg, transparent 0%, #000 3%, #000 97%, transparent 100%);
            -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 3%, #000 97%, transparent 100%);
        }
        .features-section__track {
            display: flex;
            align-items: stretch;
            gap: .85rem;
            width: max-content;
            padding: 0 .75rem;
            animation: features-marquee 42s linear infinite;
            will-change: transform;
        }
        .features-section__viewport:hover .features-section__track,
        .features-section__viewport:focus-within .features-section__track {
            animation-play-state: paused;
        }
        @keyframes features-marquee {
            from { transform: translateX(0); }
            to { transform: translateX(-50%); }
        }
        .feature-item {
            display: flex;
            align-items: center;
            gap: 1rem;
            text-align: left;
            flex: 0 0 auto;
            width: min(26rem, 82vw);
            min-height: 5.5rem;
            padding: 1.05rem 1.2rem;
            border: 1px solid var(--dark-4);
            border-radius: 1rem;
            background: rgba(255, 255, 255, .03);
            box-sizing: border-box;
        }
        .feature-item__icon {
            display: grid;
            place-items: center;
            flex: 0 0 auto;
            width: 3.75rem;
            height: 3.75rem;
            border-radius: 50%;
            background: rgba(245, 166, 35, .12);
            color: var(--gold);
        }
        .feature-item__icon i {
            font-size: 1.85rem;
            line-height: 1;
            margin: 0;
            color: inherit;
        }
        .feature-item__copy {
            min-width: 0;
        }
        .feature-item h6 {
            font-weight: 700;
            margin: 0 0 .25rem;
            font-size: .95rem;
            color: var(--white);
            line-height: 1.25;
        }
        .feature-item p {
            color: var(--gray);
            font-size: .8rem;
            line-height: 1.4;
            margin: 0;
        }
        @media (max-width: 719px) {
            .features-section {
                padding: 1.1rem 0;
            }
            .feature-item {
                width: min(22rem, 88vw);
                padding: .9rem 1rem;
                gap: .8rem;
            }
            .feature-item__icon {
                width: 3.25rem;
                height: 3.25rem;
            }
            .feature-item__icon i {
                font-size: 1.55rem;
            }
            .feature-item h6 {
                font-size: .88rem;
            }
            .feature-item p {
                font-size: .74rem;
            }
            .features-section__track {
                animation-duration: 34s;
            }
        }
        @media (prefers-reduced-motion: reduce) {
            .features-section__viewport {
                mask-image: none;
                -webkit-mask-image: none;
                overflow-x: auto;
                scrollbar-width: thin;
            }
            .features-section__track {
                animation: none;
                padding: 0 1rem;
            }
            .features-section__track .feature-item:nth-child(n+5) {
                display: none;
            }
        }

        /* FOOTER */
        footer {
            background: var(--dark);
            padding: 60px 0 0;
            border-top: 1px solid var(--dark-4);
            color: var(--white);
        }
        .footer-logo { height: 70px; margin-bottom: 20px; }
        .footer-desc { color: var(--gray); font-size: 14px; line-height: 1.8; }
        .footer-title {
            font-weight: 700;
            font-size: 16px;
            margin-bottom: 25px;
            color: var(--gold);
            text-transform: uppercase;
            letter-spacing: .06em;
        }
        .footer-links { list-style: none; padding: 0; margin: 0; }
        .footer-links li { margin-bottom: 12px; }
        .footer-links a { color: var(--gray); font-size: 14px; }
        .footer-links a:hover { color: var(--white); }
        .footer-contact li {
            display: flex;
            align-items: flex-start;
            gap: 12px;
            margin-bottom: 15px;
            color: var(--gray);
            font-size: 14px;
        }
        .footer-contact i { color: var(--red); font-size: 18px; margin-top: 2px; }
        .social-links { display: flex; gap: 12px; margin-top: 20px; }
        .social-links a {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: var(--dark-3);
            color: var(--white);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 18px;
            border: 0;
            transition: background .2s ease, color .2s ease;
        }
        .social-links a:hover,
        .social-links a:focus-visible {
            background: #fff;
            color: var(--red);
        }
        .footer-bottom {
            background: var(--dark-2);
            padding: 20px 0;
            margin-top: 50px;
            text-align: center;
            font-size: 13px;
            color: var(--gray);
        }
        .footer-bottom__inner {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
        }
        .footer-bottom__copy {
            margin: 0;
        }
        .footer-credit {
            display: inline-flex;
            align-items: center;
            opacity: .88;
            transition: opacity .2s ease, transform .2s ease;
        }
        .footer-credit:hover {
            opacity: 1;
            transform: translateY(-1px);
        }
        .footer-credit img {
            display: block;
            height: 1.35rem;
            width: auto;
        }
        @media (max-width: 575px) {
            .footer-bottom__inner {
                flex-direction: column;
                justify-content: center;
            }
        }

        /* WHATSAPP FLOAT (abaixo) + ORÇAMENTO FLOAT (acima) */
        .whatsapp-float,
        .quote-float {
            position: fixed;
            right: 25px;
            width: 60px;
            height: 60px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            font-size: 30px;
            z-index: 1050;
            border: 0;
            cursor: pointer;
            transition:
                transform .25s cubic-bezier(0.22, 1, 0.36, 1),
                box-shadow .25s ease,
                background-color .25s ease,
                filter .25s ease;
        }
        .whatsapp-float,
        .whatsapp-float:hover,
        .whatsapp-float:focus,
        .whatsapp-float:focus-visible,
        .whatsapp-float i,
        .whatsapp-float:hover i {
            color: #fff !important;
            text-decoration: none;
        }
        .whatsapp-float {
            bottom: 25px;
            background: #25D366;
            box-shadow: 0 5px 25px rgba(37, 211, 102, 0.4);
            animation: pulse 2s infinite;
            z-index: 1050;
        }
        body.has-quote-items .whatsapp-float,
        body:has(.quote-float:not([hidden])) .whatsapp-float {
            animation: none;
        }
        .whatsapp-float:hover {
            transform: scale(1.08) translateY(-2px);
            background: #20bd5a;
            box-shadow: 0 10px 28px rgba(37, 211, 102, 0.55);
            filter: brightness(1.05);
        }
        .quote-float,
        .quote-float:hover,
        .quote-float:focus,
        .quote-float:focus-visible,
        .quote-float i,
        .quote-float:hover i {
            color: #fff !important;
        }
        .quote-float {
            /* Acima do WhatsApp */
            bottom: calc(25px + 60px + 14px);
            background: var(--red);
            box-shadow: 0 5px 25px rgba(227, 30, 36, .45);
            z-index: 1051;
        }
        .quote-float:not([hidden]) {
            animation: quote-pulse 2s infinite;
        }
        body:not(:has(.whatsapp-float)) .quote-float {
            bottom: 25px;
        }
        .quote-float:hover {
            transform: scale(1.08) translateY(-2px);
            background: #c41820;
            box-shadow: 0 10px 28px rgba(227, 30, 36, .55);
            filter: brightness(1.04);
        }
        .quote-float[hidden] {
            display: none !important;
        }
        .quote-float__badge {
            position: absolute;
            top: -2px;
            right: -2px;
            min-width: 22px;
            height: 22px;
            padding: 0 6px;
            border-radius: 999px;
            background: #FFC85A;
            color: #1a1200;
            font-size: 11px;
            font-weight: 800;
            line-height: 22px;
            text-align: center;
            box-shadow: 0 2px 8px rgba(0, 0, 0, .35);
        }
        .quote-float.is-pop {
            animation: quote-float-pop .65s cubic-bezier(0.22, 1, 0.36, 1);
        }
        .quote-float.is-pop .quote-float__badge {
            animation: quote-badge-pop .65s cubic-bezier(0.22, 1, 0.36, 1);
        }
        @keyframes quote-float-pop {
            0% { transform: scale(1); box-shadow: 0 5px 25px rgba(227, 30, 36, .45); }
            35% { transform: scale(1.22); box-shadow: 0 8px 32px rgba(227, 30, 36, .65); }
            60% { transform: scale(0.94); }
            100% { transform: scale(1); box-shadow: 0 5px 25px rgba(227, 30, 36, .45); }
        }
        @keyframes quote-badge-pop {
            0% { transform: scale(1); background: #FFC85A; }
            40% { transform: scale(1.35); background: #FFE08A; }
            100% { transform: scale(1); background: #FFC85A; }
        }
        @media (prefers-reduced-motion: reduce) {
            .whatsapp-float,
            .quote-float:not([hidden]),
            .quote-float.is-pop,
            .quote-float.is-pop .quote-float__badge {
                animation: none;
            }
        }
        @keyframes pulse {
            0%, 100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.5); }
            50% { box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
        }
        @keyframes quote-pulse {
            0%, 100% { box-shadow: 0 0 0 0 rgba(227, 30, 36, 0.5); }
            50% { box-shadow: 0 0 0 15px rgba(227, 30, 36, 0); }
        }

        /* RESPONSIVE */
        @media (max-width: 991px) {
            .main-header__bar { min-height: 64px; }
            .main-header.is-slim .main-header__bar { min-height: 44px; }
            .logo { height: 64px; }
            .main-header.is-slim .logo { height: 40px; }
            .banner-tall { height: 200px; }
            .banner-medium { height: 95px; }
        }

        /* ========== HEADER MOBILE — sempre fixo, tamanho constante ========== */
        @media (max-width: 767px) {
            :root {
                --rec-header-logo: 52px;
                --rec-header-pad-y: 6px;
                --rec-header-bar: 52px;
                --rec-header-h: calc(
                    var(--rec-header-pad-y) + var(--rec-header-bar) + var(--rec-header-pad-y)
                    + env(safe-area-inset-top, 0px)
                );
            }

            body.rec-front-page {
                padding-top: var(--rec-header-h);
            }

            body.rec-front-page > .main-header,
            body.rec-front-page > .main-header.is-slim,
            .main-header,
            .main-header.is-slim {
                position: fixed !important;
                top: 0 !important;
                left: 0 !important;
                right: 0 !important;
                width: 100% !important;
                z-index: 1100 !important;
                padding: var(--rec-header-pad-y) 0 !important;
                padding-top: calc(var(--rec-header-pad-y) + env(safe-area-inset-top, 0px)) !important;
                background: rgba(10, 10, 10, 0.96) !important;
                border-bottom: 1px solid rgba(255, 255, 255, .1) !important;
                box-shadow: 0 6px 18px rgba(0, 0, 0, .35) !important;
                backdrop-filter: blur(14px) saturate(150%);
                -webkit-backdrop-filter: blur(14px) saturate(150%);
                overflow: visible !important;
                transform: none !important;
                transition: none !important;
            }
            .main-header > .container {
                padding-left: max(12px, env(safe-area-inset-left, 0px));
                padding-right: max(12px, env(safe-area-inset-right, 0px));
            }
            .main-header__bar,
            .main-header.is-slim .main-header__bar {
                min-height: var(--rec-header-bar) !important;
                transition: none !important;
            }

            /* Logo: sempre o mesmo tamanho */
            .logo,
            .main-header.is-slim .logo {
                height: var(--rec-header-logo) !important;
                max-width: min(200px, 46vw) !important;
                transition: none !important;
            }
            .logo-waves {
                display: none !important;
            }

            /* Alvos de toque ≥ 44px */
            .menu-icon-btn,
            .main-header.is-slim .menu-icon-btn {
                width: 44px;
                height: 44px;
                min-width: 44px;
                min-height: 44px;
                padding: 0 !important;
                font-size: 26px !important;
                border-radius: 10px;
                transition: color .2s ease, background-color .2s ease;
            }
            .header-icon,
            .main-header.is-slim .header-icon {
                width: 44px;
                height: 44px;
                min-width: 44px;
                min-height: 44px;
                padding: 0 !important;
                font-size: 20px !important;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                border-radius: 10px;
                transition: color .2s ease, background-color .2s ease;
            }
            .menu-icon-btn:active,
            .header-icon:active {
                background: rgba(255, 255, 255, .06);
            }

            .section { padding: 40px 0; }
            .section-header {
                align-items: center;
                gap: 8px;
                margin-bottom: 18px;
            }
            .section-title {
                font-size: 1.15rem;
                line-height: 1.2;
                flex: none;
                min-width: 0;
                padding-right: 0;
                text-align: center;
            }
            .section-more {
                margin-top: 1.25rem;
            }
            .view-all {
                font-size: 12px;
                font-weight: 700;
                gap: 4px;
                white-space: nowrap;
                line-height: 1.2;
                padding: .55rem 1.1rem;
            }
            .view-all i {
                font-size: 12px;
            }
        }

/* extras plataforma */
html:has(body.rec-front-page) { color-scheme: dark; }
body.rec-front-page {
  background: var(--dark) !important;
  color: var(--white) !important;
}

/* Home: fundo musical sutil (pulso + follow mouse) */
body.rec-home {
  --rec-ax: 55%;
  --rec-ay: 32%;
  --rec-amp: .35;
  position: relative;
}
body.rec-home > .main-header {
  z-index: 1100;
}
/* Só o fluxo da página fica acima do ambient — não forçar position em modal/offcanvas/quote */
body.rec-home > main,
body.rec-home > .features-section,
body.rec-home > footer {
  position: relative;
  z-index: 1;
}
body.rec-home > main {
  margin: 0;
  padding: 0;
}
body.rec-home .hero-carousel {
  margin-top: 0;
  margin-bottom: 0;
}

/* Home mobile: mosaico uniforme (hero + banners-grid) */
@media (max-width: 767px) {
  body.rec-home {
    --rec-home-mosaic-gap: 10px;
    --rec-home-mosaic-radius: 14px;
    --rec-home-mosaic-pad-x: 12px;
  }

  body.rec-home .hero-carousel {
    margin: 0 var(--rec-home-mosaic-pad-x) var(--rec-home-mosaic-gap);
    padding-bottom: 0;
    border-radius: var(--rec-home-mosaic-radius);
    overflow: hidden;
    background: transparent;
  }
  body.rec-home .hero-carousel .carousel-item,
  body.rec-home .hero-carousel .carousel-item img {
    border-radius: inherit;
  }
  body.rec-home .hero-carousel::after {
    border-radius: inherit;
    bottom: 0;
  }
  body.rec-home .hero-carousel.carousel-fade .carousel-item {
    position: relative;
    inset: auto;
  }

  body.rec-home .banners-grid {
    padding: 0 var(--rec-home-mosaic-pad-x) 24px;
    background: transparent;
  }
  body.rec-home .banners-grid > .container {
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }
  body.rec-home .banners-grid .row {
    --bs-gutter-x: var(--rec-home-mosaic-gap);
    --bs-gutter-y: var(--rec-home-mosaic-gap);
    margin-left: 0;
    margin-right: 0;
  }
  body.rec-home .banners-grid .row > * {
    padding-left: calc(var(--rec-home-mosaic-gap) * 0.5);
    padding-right: calc(var(--rec-home-mosaic-gap) * 0.5);
  }
  body.rec-home .banners-grid .banner-img-box {
    border-radius: var(--rec-home-mosaic-radius);
  }
  /* 2 médios + 1 gap = altura do tall → mosaico alinhado */
  body.rec-home .banners-grid .banner-tall {
    height: calc(95px * 2 + var(--rec-home-mosaic-gap));
  }
  body.rec-home .banners-grid .banner-medium {
    height: 95px;
  }
}

/* Home desktop: header sobre o banner + hero = altura da tela */
@media (min-width: 768px) {
  body.rec-home {
    padding-top: 0 !important;
  }
  body.rec-home > .main-header,
  body.rec-home > .main-header.is-slim {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1100;
  }
  /* No topo: degradê escuro para ler ícones/logo sobre o banner */
  body.rec-home > .main-header:not(.is-slim) {
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, .72) 0%,
      rgba(0, 0, 0, .45) 42%,
      rgba(0, 0, 0, .18) 72%,
      rgba(0, 0, 0, 0) 100%
    );
    border-bottom: none;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  body.rec-home > .main-header:not(.is-slim)::before {
    opacity: .4;
  }
  body.rec-home > .main-header:not(.is-slim) .main-header__bar {
    min-height: 96px;
  }
  body.rec-home > .main-header:not(.is-slim) .logo {
    height: 96px;
    max-width: min(340px, 48vw);
  }

  body.rec-home .hero-carousel {
    height: 100vh;
    height: 100dvh;
    min-height: 100vh;
    min-height: 100dvh;
    padding-bottom: 0;
    margin: 0;
  }
  body.rec-home .hero-carousel .carousel-inner {
    height: 100%;
    position: relative;
  }
  body.rec-home .hero-carousel .carousel-item {
    height: 100%;
    background: var(--dark);
  }
  body.rec-home .hero-carousel.carousel-fade .carousel-item {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  body.rec-home .hero-carousel .carousel-item a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 0;
  }
  body.rec-home .hero-carousel .carousel-item img {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
  }
  body.rec-home .hero-carousel::after {
    bottom: 0;
  }
  body.rec-home .hero-carousel .carousel-indicators {
    bottom: 1.15rem;
    padding: 0;
    background: transparent;
  }
}
.rec-home-ambient {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
  contain: strict;
}
.rec-home-ambient::before {
  content: "";
  position: absolute;
  inset: -20%;
  background:
    radial-gradient(42% 36% at 18% 12%, rgba(227, 30, 36, .14), transparent 62%),
    radial-gradient(38% 34% at 86% 78%, rgba(245, 166, 35, .08), transparent 64%),
    radial-gradient(60% 50% at 50% 100%, rgba(255, 255, 255, .03), transparent 70%);
  animation: rec-home-ambient-breathe 7.5s ease-in-out infinite;
  opacity: .85;
}
.rec-home-ambient__spot {
  position: absolute;
  width: min(42rem, 78vw);
  height: min(42rem, 78vw);
  left: var(--rec-ax);
  top: var(--rec-ay);
  transform: translate(-50%, -50%) scale(calc(.92 + var(--rec-amp) * .18));
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 50%,
      rgba(227, 30, 36, .2) 0%,
      rgba(245, 166, 35, .08) 28%,
      rgba(255, 255, 255, .03) 46%,
      transparent 68%);
  filter: blur(8px);
  opacity: .55;
  mix-blend-mode: screen;
  will-change: left, top, transform, opacity;
  transition: opacity .45s ease;
  animation: rec-home-spot-pulse 2.8s ease-in-out infinite;
}
.rec-home-ambient.is-active .rec-home-ambient__spot {
  opacity: .85;
}
.rec-home-ambient__rings {
  position: absolute;
  left: var(--rec-ax);
  top: var(--rec-ay);
  width: 0;
  height: 0;
  transform: translate(-50%, -50%);
  will-change: left, top;
}
.rec-home-ambient__rings span {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8rem;
  height: 8rem;
  margin: -4rem 0 0 -4rem;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .1);
  box-shadow: 0 0 24px rgba(227, 30, 36, .08);
  opacity: 0;
  animation: rec-home-ring 3.6s cubic-bezier(.22, 1, .36, 1) infinite;
}
.rec-home-ambient__rings span:nth-child(2) {
  animation-delay: 1.2s;
  border-color: rgba(245, 166, 35, .14);
}
.rec-home-ambient__rings span:nth-child(3) {
  animation-delay: 2.4s;
  border-color: rgba(227, 30, 36, .16);
}
.rec-home-ambient.is-active .rec-home-ambient__rings span {
  animation-duration: 2.6s;
}
@keyframes rec-home-ambient-breathe {
  0%, 100% { transform: scale(1) translate3d(0, 0, 0); opacity: .75; }
  50% { transform: scale(1.04) translate3d(0, -1%, 0); opacity: 1; }
}
@keyframes rec-home-spot-pulse {
  0%, 100% { filter: blur(8px) brightness(1); }
  50% { filter: blur(14px) brightness(1.18); }
}
@keyframes rec-home-ring {
  0% { transform: scale(.35); opacity: .45; }
  70% { opacity: .12; }
  100% { transform: scale(calc(2.1 + var(--rec-amp) * .6)); opacity: 0; }
}
@media (max-width: 719px) {
  .rec-home-ambient__spot {
    width: min(28rem, 92vw);
    height: min(28rem, 92vw);
    opacity: .4;
  }
}
@media (hover: none), (prefers-reduced-motion: reduce) {
  .rec-home-ambient__rings {
    display: none;
  }
  .rec-home-ambient::before,
  .rec-home-ambient__spot {
    animation: none;
  }
  .rec-home-ambient__spot {
    left: 50%;
    top: 30%;
    opacity: .35;
  }
}
body.rec-front-page a:hover { color: var(--red); }
body.rec-front-page .mk-quote__wa:hover,
body.rec-front-page .mk-quote__wa:focus-visible {
  background: #fff;
  color: #1f7a3a !important;
}
body.rec-front-page #menuOffcanvas .menu-link:hover,
body.rec-front-page #menuOffcanvas .menu-link:focus-visible {
  background: #1a1a1a;
  color: var(--gold);
}
body.rec-front-page #menuOffcanvas .rec-menu-foot__service:hover,
body.rec-front-page #menuOffcanvas .rec-menu-foot__service:focus-visible {
  background: #1a1a1a;
  color: var(--gold);
}
body.rec-front-page #menuOffcanvas .rec-menu-foot__lang:hover,
body.rec-front-page #menuOffcanvas .rec-menu-foot__lang:focus-visible {
  color: #fff;
}
body.rec-front-page #menuOffcanvas .rec-menu-foot__lang.is-active,
body.rec-front-page #menuOffcanvas .rec-menu-foot__lang.is-active:hover {
  color: #fff;
}
body.rec-front-page .main-header,
body.rec-front-page .main-header a,
body.rec-front-page .main-header button {
  color: var(--white);
}
body.rec-front-page .main-header a:hover,
body.rec-front-page .main-header .menu-icon-btn:hover,
body.rec-front-page .main-header .header-icon:hover {
  color: var(--red);
}
body.rec-front-page footer,
body.rec-front-page footer a {
  color: var(--gray);
}
body.rec-front-page footer .footer-title {
  color: var(--gold);
  text-transform: uppercase;
}
body.rec-front-page footer .social-links a {
  color: var(--white);
}
body.rec-front-page footer a:hover { color: var(--white); }
body.rec-front-page footer .social-links a:hover,
body.rec-front-page footer .social-links a:focus-visible {
  background: #fff;
  color: var(--red);
}

body.rec-front-page .mk-quote,
body.rec-front-page .mk-quote-backdrop,
body.rec-front-page .mk-quote-fab { z-index: 1100; }
.rec-front-page .product-card a { color: inherit; }
.rec-front-page .product-card .btn-cart,
.rec-front-inner .product-card .btn-cart {
  border: 0 !important;
  outline: 0;
  position: relative;
  z-index: 5;
  pointer-events: auto !important;
}
.rec-front-page .mk-card__quote,
.rec-front-inner .mk-card__quote {
  border: 0 !important;
  outline: 0;
  box-shadow: none;
}
.rec-front-page .mk-card__price .mk-price-currency,
.rec-front-inner .mk-card__price .mk-price-currency,
.rec-front-page .price-now small {
  font-size: .72em;
  font-weight: 600;
  margin-right: .12em;
  letter-spacing: .02em;
}
.rec-front-page .banner-img-box a,
.rec-front-page .mini-banner-img a { display: block; height: 100%; }
.rec-front-page .brand-box a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #222;
  font-weight: 600;
  font-size: 13px;
}
.rec-front-page .brand-box img { max-height: 64px; }
.rec-front-page .price-now small { margin-right: 2px; }
.rec-front-page .product-tag { z-index: 2; }
.rec-front-page .header-icon .badge[hidden] { display: none !important; }
.rec-front-page .mk-header,
.rec-front-page .mk-sidebar,
.rec-front-page .mk-footer { display: none !important; }
.rec-front-page .product-name a:hover { color: var(--red); }
.rec-front-page .carousel-item img { background: var(--dark-2); }

/* Páginas internas: chrome home + conteúdo padronizado */
body.rec-front-page,
body.rec-front-inner {
  --rec-page-max: 1440px;
  --rec-page-gutter: clamp(16px, 2.8vw, 28px);
  --rec-gold: var(--gold, #F5A623);
  --rec-radius: 20px;
  --rec-radius-sm: 14px;
  --rec-filters-top: 6.5rem; /* abaixo do header sticky */
}

.rec-front-inner .mk-main {
  min-height: 50vh;
  padding: 8px 0 64px;
  position: relative;
  background: var(--dark);
  color: var(--white);
}
body.mk-has-catalog-banner .mk-main {
  z-index: 1;
  background: transparent;
}
body.mk-has-catalog-banner .main-header {
  z-index: 100;
}
/* Footer acima do banner fixo da categoria */
body.mk-has-catalog-banner footer {
  position: relative;
  z-index: 3;
  background: var(--dark, #0a0a0a);
  isolation: isolate;
}
/* Grade de produtos: box principal transparente (banner fixo aparece atrás) */
.rec-front-inner .mk-catalog--has-banner .mk-catalog__main,
.rec-front-page .mk-catalog--has-banner .mk-catalog__main {
  position: relative;
  z-index: 1;
  margin-top: .35rem;
  padding: 1rem 0 2rem;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}
.rec-front-inner .mk-main a:hover { color: var(--red); }
.rec-front-inner .mk-main__glow { display: none !important; }
.rec-front-inner .mk-warranty__lead,
.rec-front-inner .mk-about__lead,
.rec-front-inner .rec-about__lead,
.rec-front-inner .mk-contact__lead,
.rec-front-inner .mk-faq__lead,
.rec-front-inner .mk-sellers__lead,
.rec-front-inner .mk-depts__lead,
.rec-front-inner .mk-brands__lead {
  color: #cfcfcf !important;
  margin-left: auto;
  margin-right: auto;
}

/* Margens padrão em todas as páginas internas */
.rec-front-inner .mk-page,
.rec-front-inner .mk-product-page,
.rec-front-inner .mk-catalog,
.rec-front-inner .mk-brands,
.rec-front-inner .mk-departments,
.rec-front-inner .mk-search-page:not(.mk-catalog--pills),
.rec-front-inner .mk-brand-page:not(.mk-catalog--pills),
.rec-front-inner .mk-contact,
.rec-front-inner .mk-faq,
.rec-front-inner .mk-sellers,
.rec-front-inner .mk-budget,
.rec-front-inner .mk-warranty,
.rec-front-inner .mk-promo {
  max-width: var(--rec-page-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--rec-page-gutter);
  padding-right: var(--rec-page-gutter);
}

/* Catálogo com filtros/banner: shell full-bleed; colunas no layout */
.rec-front-inner .mk-catalog.mk-catalog--has-banner,
.rec-front-inner .mk-catalog.mk-catalog--with-filters {
  max-width: none;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  isolation: auto;
}
.rec-front-inner .mk-catalog__content {
  position: relative;
  min-width: 0;
}
.rec-front-inner .mk-catalog__content .mk-catalog__body,
.rec-front-inner .mk-catalog .mk-catalog__body {
  margin-top: 0;
  padding-top: .75rem;
  padding-bottom: 2.5rem;
  max-width: none;
  width: 100%;
  position: relative;
  z-index: 2;
}
.rec-front-inner .mk-catalog__hero,
.rec-front-inner .mk-catalog__hero .mk-breadcrumb {
  margin-top: 0;
}
.rec-front-inner .mk-catalog__hero .mk-breadcrumb {
  margin-bottom: .5rem;
}
/* Banner categoria: fora do container, 100vw, fixo no viewport (sem efeito de scroll) */
body.mk-has-catalog-banner,
.rec-front-inner .mk-catalog.mk-catalog--has-banner,
.rec-front-page .mk-catalog.mk-catalog--has-banner {
  --mk-cat-banner-h: min(52vh, 28rem);
}
.rec-front-inner .mk-catalog--has-banner > .mk-catalog-banner,
.rec-front-page .mk-catalog--has-banner > .mk-catalog-banner,
body > .mk-catalog-banner[data-mk-catalog-banner] {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  height: var(--mk-cat-banner-h, min(52vh, 28rem)) !important;
  margin: 0 !important;
  z-index: 0 !important;
  pointer-events: none;
  overflow: hidden;
  transform: none !important;
  --mk-cat-banner-parallax: 0px;
}
.rec-front-inner .mk-catalog--has-banner > .mk-catalog-banner .mk-catalog-banner__media,
.rec-front-page .mk-catalog--has-banner > .mk-catalog-banner .mk-catalog-banner__media,
body > .mk-catalog-banner[data-mk-catalog-banner] .mk-catalog-banner__media {
  position: absolute !important;
  inset: 0 !important;
  transform: none !important;
  will-change: auto;
  opacity: .95;
  background-color: transparent;
  background-image: var(--mk-banner-image);
  background-repeat: no-repeat;
  background-position: center 28%;
  background-size: cover;
  background-attachment: scroll !important;
  -webkit-mask-image: linear-gradient(
    180deg,
    #000 0%,
    #000 40%,
    rgba(0, 0, 0, .5) 70%,
    transparent 100%
  ) !important;
  mask-image: linear-gradient(
    180deg,
    #000 0%,
    #000 40%,
    rgba(0, 0, 0, .5) 70%,
    transparent 100%
  ) !important;
}
.rec-front-inner .mk-catalog--has-banner > .mk-catalog-banner .mk-catalog-banner__img,
.rec-front-page .mk-catalog--has-banner > .mk-catalog-banner .mk-catalog-banner__img,
body > .mk-catalog-banner[data-mk-catalog-banner] .mk-catalog-banner__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
  object-fit: cover;
  object-position: center 28%;
  transform: none !important;
}
.rec-front-inner .mk-catalog--has-banner > .mk-catalog-banner .mk-catalog-banner__fade,
.rec-front-page .mk-catalog--has-banner > .mk-catalog-banner .mk-catalog-banner__fade,
body > .mk-catalog-banner[data-mk-catalog-banner] .mk-catalog-banner__fade {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  /* Soften top; fade image → transparent so it blends with site bg */
  background: linear-gradient(180deg, rgba(0, 0, 0, .18) 0%, transparent 38%);
  -webkit-mask-image: linear-gradient(
    180deg,
    #000 0%,
    #000 38%,
    rgba(0, 0, 0, .55) 68%,
    transparent 100%
  ) !important;
  mask-image: linear-gradient(
    180deg,
    #000 0%,
    #000 38%,
    rgba(0, 0, 0, .55) 68%,
    transparent 100%
  ) !important;
}
.rec-front-inner .mk-catalog--has-banner > .mk-catalog__content,
.rec-front-page .mk-catalog--has-banner > .mk-catalog__content {
  position: relative;
  z-index: 2;
}
@media (max-width: 640px) {
  body.mk-has-catalog-banner,
  .rec-front-inner .mk-catalog.mk-catalog--has-banner,
  .rec-front-page .mk-catalog.mk-catalog--has-banner {
    --mk-cat-banner-h: min(42vh, 20rem);
  }
}

/* Catálogo pills: 1 coluna, subcats em boxes, filtros em drawer */
.rec-front-inner .mk-catalog--pills,
.rec-front-page .mk-catalog--pills {
  max-width: none;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.rec-front-inner .mk-catalog--pills .mk-catalog__content--full,
.rec-front-page .mk-catalog--pills .mk-catalog__content--full {
  max-width: var(--rec-page-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--rec-page-gutter);
  padding-right: var(--rec-page-gutter);
  box-sizing: border-box;
}
.rec-front-inner .mk-catalog-pills,
.rec-front-page .mk-catalog-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem .65rem;
  margin: .35rem 0 1.15rem;
}
.rec-front-inner .mk-catalog-pill,
.rec-front-page .mk-catalog-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  padding: .45rem 1.05rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 999px;
  background: rgba(0, 0, 0, .55);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .18);
  color: rgba(255, 255, 255, .9);
  font-size: .88rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}
.rec-front-inner .mk-catalog-pill:hover,
.rec-front-page .mk-catalog-pill:hover {
  border-color: rgba(255, 255, 255, .28);
  color: #fff;
  background: rgba(0, 0, 0, .55);
}
.rec-front-inner .mk-catalog-pill.is-active,
.rec-front-page .mk-catalog-pill.is-active {
  background: rgba(255, 255, 255, .92);
  border-color: rgba(255, 255, 255, .92);
  color: #0a0a0a;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
}
.rec-front-inner .mk-catalog__toolbar--bar,
.rec-front-page .mk-catalog__toolbar--bar {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: .85rem 1rem;
  margin: 0 0 1.15rem;
  padding: .65rem .85rem;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 14px;
  background: rgba(0, 0, 0, .55);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .2);
  min-width: 0;
  /* visible: o menu de ordenação é absolute e ficava cortado */
  overflow: visible;
  position: relative;
  z-index: 50;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__toolbar-left,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__toolbar-left {
  display: flex;
  align-items: center;
  gap: .65rem .75rem;
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-filter-btn,
.rec-front-page .mk-catalog__toolbar--bar .mk-filter-btn {
  flex: 0 0 auto;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__parent-btn,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__parent-btn {
  text-decoration: none;
  max-width: min(16rem, 52vw);
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__parent-btn span,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__parent-btn span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort {
  position: relative;
  flex: 0 0 auto;
  margin-left: auto;
  z-index: 2;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort.is-open,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort.is-open {
  z-index: 5;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort-menu,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort-menu {
  position: absolute;
  top: calc(100% + .45rem);
  right: 0;
  left: auto;
  min-width: max(100%, 12.5rem);
  z-index: 10;
  margin: 0;
  padding: .35rem;
  list-style: none;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 14px;
  background: rgba(12, 12, 12, .96);
  box-shadow: 0 16px 40px rgba(0, 0, 0, .55);
  overflow: hidden;
}
/* Menu teletransportado pro body (acima dos cards) */
body > .mk-catalog__sort-menu {
  position: fixed !important;
  z-index: 10050 !important;
  margin: 0;
  padding: .35rem;
  list-style: none;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 14px;
  background: rgba(12, 12, 12, .97);
  box-shadow: 0 16px 40px rgba(0, 0, 0, .55);
  overflow: hidden;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-filter-btn,
.rec-front-page .mk-catalog__toolbar--bar .mk-filter-btn,
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort-trigger,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort-trigger {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  min-height: 2.4rem;
  padding: .45rem 1rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .08) !important;
  color: #fff;
  font-weight: 600;
  font-size: .88rem;
  cursor: pointer;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort-trigger,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort-trigger {
  min-width: 12.5rem;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort-icon,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort-icon,
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort-caret,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort-caret {
  color: rgba(255, 255, 255, .78);
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-filter-btn:hover,
.rec-front-page .mk-catalog__toolbar--bar .mk-filter-btn:hover,
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort-trigger:hover,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort-trigger:hover,
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort.is-open .mk-catalog__sort-trigger,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort.is-open .mk-catalog__sort-trigger {
  background: rgba(255, 255, 255, .1) !important;
  border-color: rgba(255, 255, 255, .28);
}
.rec-front-inner .mk-catalog__hero .mk-catalog__meta,
.rec-front-page .mk-catalog__hero .mk-catalog__meta {
  margin: .55rem 0 0;
  color: rgba(255, 255, 255, .55);
  font-size: .92rem;
}
.rec-front-inner .mk-catalog-price,
.rec-front-page .mk-catalog-price {
  display: grid;
  gap: .75rem;
}
.rec-front-inner .mk-catalog-price--range,
.rec-front-page .mk-catalog-price--range {
  gap: .65rem;
}
.rec-front-inner .mk-catalog-price__values,
.rec-front-page .mk-catalog-price__values {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: .5rem;
  color: #fff;
  font-size: .95rem;
  font-weight: 700;
  letter-spacing: .01em;
}
.rec-front-inner .mk-catalog-price__values-sep,
.rec-front-page .mk-catalog-price__values-sep {
  color: rgba(255, 255, 255, .35);
  font-weight: 500;
}
.rec-front-inner .mk-catalog-price__slider,
.rec-front-page .mk-catalog-price__slider {
  --mk-price-left: 0%;
  --mk-price-right: 0%;
  position: relative;
  height: 1.75rem;
  margin: .15rem .2rem 0;
  touch-action: none;
}
.rec-front-inner .mk-catalog-price__track,
.rec-front-page .mk-catalog-price__track,
.rec-front-inner .mk-catalog-price__fill,
.rec-front-page .mk-catalog-price__fill {
  position: absolute;
  top: 50%;
  height: 4px;
  border-radius: 999px;
  transform: translateY(-50%);
  pointer-events: none;
}
.rec-front-inner .mk-catalog-price__track,
.rec-front-page .mk-catalog-price__track {
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, .14);
}
.rec-front-inner .mk-catalog-price__fill,
.rec-front-page .mk-catalog-price__fill {
  left: var(--mk-price-left);
  right: var(--mk-price-right);
  background: linear-gradient(90deg, #c45a1a, var(--red, #e10600));
  box-shadow: 0 0 12px rgba(225, 6, 0, .35);
}
.rec-front-inner .mk-catalog-price__thumb,
.rec-front-page .mk-catalog-price__thumb {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 1.75rem;
  margin: 0;
  padding: 0;
  background: transparent;
  -webkit-appearance: none;
  appearance: none;
  pointer-events: none;
}
.rec-front-inner .mk-catalog-price__thumb::-webkit-slider-runnable-track,
.rec-front-page .mk-catalog-price__thumb::-webkit-slider-runnable-track {
  height: 1.75rem;
  background: transparent;
  border: 0;
}
.rec-front-inner .mk-catalog-price__thumb::-moz-range-track,
.rec-front-page .mk-catalog-price__thumb::-moz-range-track {
  height: 1.75rem;
  background: transparent;
  border: 0;
}
.rec-front-inner .mk-catalog-price__thumb::-webkit-slider-thumb,
.rec-front-page .mk-catalog-price__thumb::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 1.15rem;
  height: 1.15rem;
  margin-top: .3rem;
  border: 2px solid rgba(255, 255, 255, .85);
  border-radius: 50%;
  background: #141414;
  box-shadow:
    0 2px 10px rgba(0, 0, 0, .45),
    inset 0 1px 0 rgba(255, 255, 255, .12);
  pointer-events: auto;
  cursor: grab;
  transition: transform .15s ease, box-shadow .15s ease;
}
.rec-front-inner .mk-catalog-price__thumb::-moz-range-thumb,
.rec-front-page .mk-catalog-price__thumb::-moz-range-thumb {
  width: 1.15rem;
  height: 1.15rem;
  border: 2px solid rgba(255, 255, 255, .85);
  border-radius: 50%;
  background: #141414;
  box-shadow:
    0 2px 10px rgba(0, 0, 0, .45),
    inset 0 1px 0 rgba(255, 255, 255, .12);
  pointer-events: auto;
  cursor: grab;
}
.rec-front-inner .mk-catalog-price__thumb:active::-webkit-slider-thumb,
.rec-front-page .mk-catalog-price__thumb:active::-webkit-slider-thumb,
.rec-front-inner .mk-catalog-price__thumb:focus-visible::-webkit-slider-thumb,
.rec-front-page .mk-catalog-price__thumb:focus-visible::-webkit-slider-thumb {
  cursor: grabbing;
  transform: scale(1.12);
  box-shadow:
    0 0 0 4px rgba(225, 6, 0, .22),
    0 2px 12px rgba(0, 0, 0, .5);
}
.rec-front-inner .mk-catalog-price__thumb:focus,
.rec-front-page .mk-catalog-price__thumb:focus {
  outline: none;
}
.rec-front-inner .mk-catalog-price__thumb--min,
.rec-front-page .mk-catalog-price__thumb--min {
  z-index: 2;
}
.rec-front-inner .mk-catalog-price__thumb--max,
.rec-front-page .mk-catalog-price__thumb--max {
  z-index: 3;
}
.rec-front-inner .mk-catalog-price__bounds,
.rec-front-page .mk-catalog-price__bounds {
  display: flex;
  justify-content: space-between;
  gap: .5rem;
  color: rgba(255, 255, 255, .42);
  font-size: .75rem;
  font-weight: 600;
}
.rec-front-inner .mk-catalog-price__apply,
.rec-front-page .mk-catalog-price__apply {
  margin-top: .35rem;
  width: 100%;
  min-height: 2.5rem;
  border: 0;
  border-radius: 999px;
  background: var(--red);
  color: #fff;
  font-weight: 700;
  font-size: .9rem;
  cursor: pointer;
}
.rec-front-inner .mk-catalog-price__apply:hover,
.rec-front-page .mk-catalog-price__apply:hover {
  filter: brightness(1.06);
}

/* Drawer de filtros (layout pills) — inclusive quando o painel vai pro body */
body.mk-has-catalog-pills .mk-catalog-filters,
.rec-front-inner .mk-catalog--pills .mk-catalog-filters,
.rec-front-page .mk-catalog--pills .mk-catalog-filters {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  z-index: 10021 !important;
  display: flex;
  flex-direction: column;
  width: min(22rem, calc(100vw - 1.25rem));
  height: 100dvh !important;
  max-height: 100dvh !important;
  margin: 0 !important;
  padding: env(safe-area-inset-top, 0) 0 env(safe-area-inset-bottom, 0) !important;
  background: #0a0a0a !important;
  border: 0 !important;
  border-right: 1px solid #1f1f1f !important;
  border-radius: 0 !important;
  transform: translateX(-105%);
  transition: transform .28s ease;
  overflow: hidden;
}
body.mk-filter-open.mk-has-catalog-pills .mk-catalog-filters,
body.mk-filter-open > .mk-catalog-filters {
  transform: translateX(0) !important;
}
body.mk-has-catalog-pills .mk-catalog-filters__close {
  display: grid !important;
}
body.mk-has-catalog-pills .mk-catalog-filters__head {
  flex: 0 0 auto;
  padding: .85rem 1.15rem !important;
  border-bottom: 1px solid #1f1f1f !important;
  background: #0a0a0a !important;
}
body.mk-has-catalog-pills .mk-catalog-filters__body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: .85rem 1.15rem 1.5rem !important;
  background: #0a0a0a !important;
}
body.mk-has-catalog-pills .mk-filter-backdrop {
  display: block !important;
  z-index: 10020 !important;
}

/* Seções / painel só mobile (ordenar + pills no drawer) — desktop intacto */
@media (min-width: 980px) {
  /* Ordenar e subcats-pills: nunca no sidebar/drawer do desktop */
  .mk-catalog-filters__section--mobile-only,
  body.mk-has-catalog-pills .mk-catalog-filters__section--mobile-only,
  body > .mk-catalog-filters .mk-catalog-filters__section--mobile-only,
  .rec-front-page .mk-catalog-filters__section--mobile-only,
  .rec-front-inner .mk-catalog-filters__section--mobile-only {
    display: none !important;
  }
  .mk-catalog-filters--mobile-only,
  .mk-filter-backdrop:has(+ .mk-catalog-filters--mobile-only),
  body > .mk-filter-backdrop:has(+ .mk-catalog-filters--mobile-only),
  body > .mk-catalog-filters--mobile-only {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  /* Desktop: toolbar com ordenar (como antes); Filtro continua oculto via recmusic */
  .rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort,
  .rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort {
    display: block !important;
  }
  .rec-front-page .mk-catalog-pills,
  .rec-front-inner .mk-catalog-pills {
    display: flex !important;
  }
}

@media (max-width: 979px) {
  /* Pills e ordenar saem da página — ficam no drawer via botão Filtro */
  .rec-front-page .mk-catalog-pills,
  .rec-front-inner .mk-catalog-pills {
    display: none !important;
  }
  .rec-front-page .mk-catalog__toolbar--bar .mk-catalog__sort,
  .rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__sort {
    display: none !important;
  }
  .rec-front-page .mk-catalog__toolbar--bar,
  .rec-front-inner .mk-catalog__toolbar--bar {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: .65rem;
    margin: 0 0 1rem;
    padding: .55rem .7rem;
  }
  .rec-front-page .mk-catalog__toolbar--bar .mk-catalog__toolbar-left,
  .rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__toolbar-left {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    gap: .55rem;
    min-width: 0;
    overflow: hidden;
  }
  .rec-front-page .mk-catalog__toolbar--bar .mk-filter-btn,
  .rec-front-inner .mk-catalog__toolbar--bar .mk-filter-btn {
    display: inline-flex !important;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    max-width: 100%;
    justify-content: center;
    min-height: 2.55rem;
    border-radius: 999px;
  }
  .rec-front-page .mk-catalog__toolbar--bar .mk-catalog__toolbar-left:not(:has(.mk-catalog__active-filters)) .mk-filter-btn,
  .rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__toolbar-left:not(:has(.mk-catalog__active-filters)) .mk-filter-btn {
    width: 100%;
  }
}

/* Breadcrumb: links laranja */
.rec-front-inner .mk-breadcrumb a,
.rec-front-page .mk-breadcrumb a,
.rec-front-inner .mk-catalog__hero--on-banner .mk-breadcrumb a {
  color: var(--rec-gold) !important;
}
.rec-front-inner .mk-breadcrumb a:hover,
.rec-front-page .mk-breadcrumb a:hover,
.rec-front-inner .mk-catalog__hero--on-banner .mk-breadcrumb a:hover {
  color: #fff !important;
}
/* Breadcrumb + títulos de página: centralizados */
.rec-front-inner .mk-breadcrumb,
.rec-front-page .mk-breadcrumb,
.rec-front-inner .mk-catalog__hero--on-banner .mk-breadcrumb {
  color: rgba(255,255,255,.55);
  justify-content: center;
  text-align: center;
}
.rec-front-inner .mk-page__title,
.rec-front-page .mk-page__title,
.rec-front-inner .mk-catalog-banner__title,
.rec-front-page .mk-catalog-banner__title,
.rec-front-inner .mk-catalog__hero .mk-page__title,
.rec-front-page .mk-catalog__hero .mk-page__title {
  text-align: center;
}
.rec-front-inner .mk-catalog__hero,
.rec-front-page .mk-catalog__hero,
.rec-front-inner .mk-faq__hero,
.rec-front-page .mk-faq__hero,
.rec-front-inner .mk-contact__hero,
.rec-front-page .mk-contact__hero,
.rec-front-inner .mk-warranty__hero,
.rec-front-page .mk-warranty__hero,
.rec-front-inner .mk-pricelist__hero,
.rec-front-page .mk-pricelist__hero,
.rec-front-inner .mk-depts__hero,
.rec-front-page .mk-depts__hero,
.rec-front-inner .mk-product-page > .mk-breadcrumb,
.rec-front-page .mk-product-page > .mk-breadcrumb {
  text-align: center;
}
.rec-front-inner .mk-faq__list,
.rec-front-inner .mk-faq__cta,
.rec-front-page .mk-faq__list,
.rec-front-page .mk-faq__cta {
  margin-left: auto;
  margin-right: auto;
}
.rec-front-inner .rec-about__crumb,
.rec-front-page .rec-about__crumb,
.rec-front-inner .rec-about__hero-inner,
.rec-front-page .rec-about__hero-inner {
  text-align: center;
}
.rec-front-inner .rec-about__crumb.mk-breadcrumb,
.rec-front-page .rec-about__crumb.mk-breadcrumb {
  justify-content: center;
}
.rec-front-inner .mk-product-related .mk-section__head,
.rec-front-page .mk-product-related .mk-section__head {
  text-align: center;
  justify-content: center;
}
@media (min-width: 1100px) {
  .rec-front-inner .mk-product-related .mk-products-carousel__item,
  .rec-front-page .mk-product-related .mk-products-carousel__item {
    width: calc((100% - 3rem) / 4);
    min-width: 0;
  }
}

/* Cards unificados (.product-card) — grid / carrossel */
.rec-front-page .mk-grid > .product-card,
.rec-front-inner .mk-grid > .product-card,
.rec-front-page .mk-products-carousel__item .product-card,
.rec-front-inner .mk-products-carousel__item .product-card {
  height: 100%;
  width: 100%;
}
.rec-front-page .product-img img,
.rec-front-inner .product-img img,
.rec-front-page .product-card__lazy .product-card__img,
.rec-front-inner .product-card__lazy .product-card__img,
.rec-front-page .mk-card__media > img,
.rec-front-inner .mk-card__media > img {
  border-radius: 12px;
}
.rec-front-page .mk-card.product-card,
.rec-front-inner .mk-card.product-card {
  /* evita regras legadas do .mk-card sobrescreverem o design unificado */
  outline: none;
  background: linear-gradient(180deg, #121212 0%, #171717 48%, #222222 100%);
}
.rec-front-page .mk-card.product-card:hover,
.rec-front-inner .mk-card.product-card:hover {
  transform: translateY(-3px);
  outline: none;
}
.rec-front-page .btn-cart.is-added,
.rec-front-inner .btn-cart.is-added {
  background: #1f7a3a;
  color: #fff;
}
.rec-front-page .btn-cart.is-added:hover,
.rec-front-inner .btn-cart.is-added:hover {
  background: #196433;
}
.rec-front-inner .mk-catalog__sort-trigger,
.rec-front-inner .mk-filter-btn {
  border-radius: 999px;
}
.rec-front-inner .mk-catalog__sort-menu {
  border-radius: var(--rec-radius-sm);
  overflow: hidden;
}
.rec-front-inner .mk-empty {
  border-radius: var(--rec-radius-sm);
}
.rec-front-page .rec-search-empty,
.rec-front-inner .rec-search-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .65rem;
  max-width: 28rem;
  margin: .5rem auto 2rem;
  padding: 1.75rem 1.25rem;
  border: 1px dashed rgba(255, 255, 255, .14);
  border-radius: var(--rec-radius-sm, .85rem);
  background: rgba(255, 255, 255, .02);
  text-align: center;
}
.rec-front-page .rec-search-empty__title,
.rec-front-inner .rec-search-empty__title {
  margin: 0;
  font-family: var(--mk-font-display, inherit);
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: .02em;
}
.rec-front-page .rec-search-empty__lead,
.rec-front-inner .rec-search-empty__lead {
  margin: 0;
  max-width: 22rem;
  color: rgba(255, 255, 255, .58);
  font-size: .9rem;
  line-height: 1.5;
}
.rec-front-page .rec-search-empty__actions,
.rec-front-inner .rec-search-empty__actions {
  display: flex;
  justify-content: center;
  margin-top: .5rem;
}
.rec-front-page .rec-search-empty__actions .mk-btn,
.rec-front-inner .rec-search-empty__actions .mk-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 10rem;
}

/* Filtros: fundo 100% transparente (sem box) */
.rec-front-page .mk-catalog-filters,
.rec-front-inner .mk-catalog-filters {
  background: transparent !important;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.rec-front-page .mk-catalog-filters__head,
.rec-front-inner .mk-catalog-filters__head {
  border-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  background: transparent !important;
}
.rec-front-page .mk-catalog-filters__body,
.rec-front-inner .mk-catalog-filters__body {
  padding-left: 0;
  padding-right: 0;
  background: transparent !important;
}
.rec-front-page .mk-catalog-filters__section + .mk-catalog-filters__section,
.rec-front-inner .mk-catalog-filters__section + .mk-catalog-filters__section {
  border-top: 0;
}

@media (min-width: 980px) {
  /* Coluna filtros (header→viewport) | conteúdo (banner+produtos) */
  .rec-front-page .mk-catalog__layout--with-filters,
  .rec-front-inner .mk-catalog__layout--with-filters {
    display: grid;
    align-items: start;
    grid-template-columns: minmax(15rem, 19%) minmax(0, 1fr);
    gap: 0 1.75rem;
    width: 100%;
    max-width: var(--rec-page-max);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--rec-page-gutter);
    padding-right: var(--rec-page-gutter);
    box-sizing: border-box;
  }
  .rec-front-page .mk-catalog__content,
  .rec-front-inner .mk-catalog__content {
    position: relative;
    min-width: 0;
  }
  .rec-front-page .mk-catalog__content--full,
  .rec-front-inner .mk-catalog__content--full {
    max-width: var(--rec-page-max);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--rec-page-gutter);
    padding-right: var(--rec-page-gutter);
    box-sizing: border-box;
  }
  .rec-front-page .mk-catalog__content .mk-catalog__body,
  .rec-front-inner .mk-catalog__content .mk-catalog__body {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }
  .rec-front-page .mk-catalog__layout--with-filters > .mk-catalog-filters,
  .rec-front-inner .mk-catalog__layout--with-filters > .mk-catalog-filters {
    position: sticky;
    top: var(--rec-filters-top);
    align-self: start;
    z-index: 4;
    display: flex;
    flex-direction: column;
    height: calc(100dvh - var(--rec-filters-top));
    max-height: calc(100dvh - var(--rec-filters-top));
    height: calc(100vh - var(--rec-filters-top));
    max-height: calc(100vh - var(--rec-filters-top));
    overflow: hidden;
    box-sizing: border-box;
    /* sem padding-right: scroll fica na borda (::after) */
    padding: 0;
    margin: 0;
    border-right: 0;
    background: transparent !important;
  }
  .rec-front-page .mk-catalog__layout--with-filters > .mk-catalog-filters::after,
  .rec-front-inner .mk-catalog__layout--with-filters > .mk-catalog-filters::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 1px;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(
      to bottom,
      transparent 0%,
      rgba(255, 255, 255, 0.16) 12%,
      rgba(255, 255, 255, 0.16) 78%,
      transparent 100%
    );
  }
  .rec-front-page .mk-catalog-filters__head,
  .rec-front-inner .mk-catalog-filters__head {
    flex: 0 0 auto;
    position: sticky;
    top: 0;
    z-index: 1;
    background: transparent !important;
    padding-right: 1.25rem;
    padding-bottom: .45rem;
  }
  .rec-front-page .mk-catalog-filters__body,
  .rec-front-inner .mk-catalog-filters__body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1.5rem;
    padding-right: 1.25rem; /* conteúdo; scrollbar na faixa da linha */
    /* embutido na linha: quase invisível, aparece no hover do painel */
    scrollbar-width: thin;
    scrollbar-color: transparent transparent;
  }
  .rec-front-page .mk-catalog-filters:hover .mk-catalog-filters__body,
  .rec-front-inner .mk-catalog-filters:hover .mk-catalog-filters__body {
    scrollbar-color: rgba(255, 255, 255, 0.32) transparent;
  }
  .rec-front-page .mk-catalog-filters__body::-webkit-scrollbar,
  .rec-front-inner .mk-catalog-filters__body::-webkit-scrollbar {
    width: 2px;
  }
  .rec-front-page .mk-catalog-filters__body::-webkit-scrollbar-track,
  .rec-front-inner .mk-catalog-filters__body::-webkit-scrollbar-track {
    background: transparent;
  }
  .rec-front-page .mk-catalog-filters__body::-webkit-scrollbar-thumb,
  .rec-front-inner .mk-catalog-filters__body::-webkit-scrollbar-thumb {
    background: transparent;
    border-radius: 0;
  }
  .rec-front-page .mk-catalog-filters:hover .mk-catalog-filters__body::-webkit-scrollbar-thumb,
  .rec-front-inner .mk-catalog-filters:hover .mk-catalog-filters__body::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.32);
  }
  .rec-front-page .mk-catalog-filters__body::-webkit-scrollbar-button,
  .rec-front-inner .mk-catalog-filters__body::-webkit-scrollbar-button {
    display: none;
    width: 0;
    height: 0;
  }
  /* Um único scroll no painel (evita scroll aninhado nas marcas) */
  .rec-front-page .mk-catalog-filters__list--scroll,
  .rec-front-inner .mk-catalog-filters__list--scroll {
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }
  .rec-front-page .mk-catalog__main,
  .rec-front-inner .mk-catalog__main {
    min-width: 0;
    width: 100%;
  }
}

/* Filtros: checkbox clássico (sem chip/box) */
.rec-front-page .mk-catalog-check,
.rec-front-inner .mk-catalog-check {
  display: flex;
  align-items: center;
  gap: .65rem;
  width: 100%;
  padding: .45rem .15rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #fff;
  font-size: .9rem;
  font-weight: 600;
}
.rec-front-page .mk-catalog-check:hover,
.rec-front-inner .mk-catalog-check:hover {
  background: transparent;
  color: #fff;
}
.rec-front-page .mk-catalog-check input,
.rec-front-inner .mk-catalog-check input {
  appearance: none;
  -webkit-appearance: none;
  position: static;
  opacity: 1;
  pointer-events: auto;
  flex: 0 0 auto;
  width: 1.05rem;
  height: 1.05rem;
  margin: 0;
  border: 1.5px solid rgba(255,255,255,.4);
  border-radius: 3px;
  background: transparent;
  cursor: pointer;
}
.rec-front-page .mk-catalog-check input:checked,
.rec-front-inner .mk-catalog-check input:checked {
  background: var(--red);
  border-color: var(--red);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.2' d='M3.5 8.2l2.8 2.8 6.2-6.2'/%3E%3C/svg%3E");
  background-size: 12px 12px;
  background-position: center;
  background-repeat: no-repeat;
}
.rec-front-page .mk-catalog-check input[type="radio"],
.rec-front-inner .mk-catalog-check input[type="radio"] {
  border-radius: 50%;
}
.rec-front-page .mk-catalog-check input[type="radio"]:checked,
.rec-front-inner .mk-catalog-check input[type="radio"]:checked {
  background-image: radial-gradient(circle at center, #fff 0 28%, transparent 30%);
  background-size: auto;
}
.rec-front-page .mk-catalog-check:has(input:checked)::after,
.rec-front-inner .mk-catalog-check:has(input:checked)::after {
  content: none;
  display: none;
}

@media (max-width: 979px) {
  /* Drawer no body: cobre o header e fica rente ao topo */
  body.mk-filter-open .main-header {
    z-index: 1 !important;
    pointer-events: none;
  }
  body.mk-filter-open > .mk-filter-backdrop,
  body > .mk-filter-backdrop {
    z-index: 10020 !important;
  }
  body.mk-filter-open > .mk-catalog-filters,
  body > #mk-catalog-filters.mk-catalog-filters,
  .rec-front-page .mk-catalog-filters,
  .rec-front-inner .mk-catalog-filters {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    z-index: 10021 !important;
    display: flex;
    flex-direction: column;
    width: min(20.5rem, calc(100vw - 1.25rem));
    height: 100vh !important;
    height: 100dvh !important;
    max-height: 100vh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: env(safe-area-inset-top, 0) 0 env(safe-area-inset-bottom, 0) !important;
    background: #0a0a0a !important;
    border: 0 !important;
    border-right: 1px solid #1f1f1f !important;
    border-radius: 0 !important;
    box-sizing: border-box;
    overflow: hidden;
  }
  body.mk-filter-open > .mk-catalog-filters .mk-catalog-filters__head,
  .rec-front-page .mk-catalog-filters__head,
  .rec-front-inner .mk-catalog-filters__head {
    flex: 0 0 auto;
    margin: 0;
    padding: .7rem var(--rec-page-gutter) .55rem;
    border-bottom: 1px solid #1f1f1f;
    background: #0a0a0a !important;
  }
  body.mk-filter-open > .mk-catalog-filters .mk-catalog-filters__body,
  .rec-front-page .mk-catalog-filters__body,
  .rec-front-inner .mk-catalog-filters__body {
    flex: 1 1 auto;
    min-height: 0;
    margin: 0;
    padding: .65rem var(--rec-page-gutter) 1.25rem;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    background: transparent !important;
  }
}

/* Filtros ativos (chips) */
.rec-front-inner .mk-catalog__active-filters,
.rec-front-page .mk-catalog__active-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .65rem .75rem;
  margin: 0 0 1.1rem;
  padding: .85rem 1rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(255,255,255,.03);
}
/* Dentro da barra de filtros: ao lado do botão + scroll horizontal */
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__active-filters,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__active-filters {
  flex: 1 1 auto;
  flex-wrap: nowrap;
  align-items: center;
  gap: .5rem .65rem;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: hidden;
}
.rec-front-inner .mk-catalog__active-filters-label,
.rec-front-page .mk-catalog__active-filters-label {
  display: none;
}
.rec-front-inner .mk-catalog__active-filters-list,
.rec-front-page .mk-catalog__active-filters-list {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  min-width: 0;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__active-filters-list,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__active-filters-list {
  flex: 1 1 auto;
  flex-wrap: nowrap;
  align-items: center;
  gap: .4rem;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, .28) transparent;
  mask-image: linear-gradient(90deg, #000 0%, #000 calc(100% - 1.25rem), transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 calc(100% - 1.25rem), transparent 100%);
  padding-right: .35rem;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__active-filters-list::-webkit-scrollbar,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__active-filters-list::-webkit-scrollbar {
  height: 3px;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__active-filters-list::-webkit-scrollbar-track,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__active-filters-list::-webkit-scrollbar-track {
  background: transparent;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__active-filters-list::-webkit-scrollbar-thumb,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__active-filters-list::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, .28);
  border-radius: 999px;
}
.rec-front-inner .mk-catalog__active-chip,
.rec-front-page .mk-catalog__active-chip {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  max-width: 100%;
  padding: .4rem .7rem .4rem .9rem;
  border: 0;
  border-radius: 999px;
  background: var(--red);
  color: #fff;
  font: inherit;
  font-size: .82rem;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  transition: background .15s ease, transform .15s ease;
}
.rec-front-inner .mk-catalog__toolbar--bar .mk-catalog__active-chip,
.rec-front-page .mk-catalog__toolbar--bar .mk-catalog__active-chip {
  flex: 0 0 auto;
  max-width: 14rem;
  scroll-snap-align: start;
}
.rec-front-inner .mk-catalog__active-chip:hover,
.rec-front-page .mk-catalog__active-chip:hover {
  background: var(--red-dark, #B91C1C);
  color: #fff;
}
.rec-front-inner .mk-catalog__active-chip-text,
.rec-front-page .mk-catalog__active-chip-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rec-front-inner .mk-catalog__active-chip-x,
.rec-front-page .mk-catalog__active-chip-x {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  opacity: .9;
}
.rec-front-inner .mk-catalog__active-chip-x svg,
.rec-front-page .mk-catalog__active-chip-x svg {
  display: block;
}

.rec-front-page .whatsapp-float { z-index: 1050; }
.rec-front-page .quote-float { z-index: 1051; }
.rec-front-page .mk-quote-fab.quote-float {
  display: flex !important;
  background: var(--red);
  color: #fff !important;
}
.rec-front-page .mk-quote-fab.quote-float:hover,
.rec-front-page .mk-quote-fab.quote-float:hover i,
.rec-front-page .whatsapp-float:hover,
.rec-front-page .whatsapp-float:hover i {
  color: #fff !important;
}
.rec-front-page .mk-quote-fab.quote-float[hidden] {
  display: none !important;
}
.rec-front-page .quote-float__badge,
.rec-front-page .mk-quote-fab.quote-float .mk-quote-fab__badge {
  background: #FFC85A;
  color: #1a1200;
}

/* ========== Departamentos — grade de cards ========== */
.rec-front-inner .mk-depts--grid,
.rec-front-page .mk-depts--grid {
  max-width: var(--rec-page-max, 1200px);
}
.rec-front-inner .mk-depts--grid .mk-depts__hero,
.rec-front-page .mk-depts--grid .mk-depts__hero {
  margin-bottom: 1.5rem;
}
.rec-front-inner .mk-depts--grid .mk-depts__lead,
.rec-front-page .mk-depts--grid .mk-depts__lead {
  margin: .55rem 0 0;
  max-width: 36rem;
  color: rgba(255, 255, 255, .55);
  font-size: .98rem;
  line-height: 1.45;
}
.rec-front-inner .mk-depts--grid .mk-depts__toolbar,
.rec-front-page .mk-depts--grid .mk-depts__toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem 1rem;
  margin: 0 0 1rem;
  padding: 0;
  border: 0;
}
.rec-front-inner .mk-depts--grid .mk-depts__search,
.rec-front-page .mk-depts--grid .mk-depts__search {
  flex: 1 1 18rem;
  display: flex;
  align-items: center;
  gap: .55rem;
  min-height: 2.75rem;
  padding: .45rem .9rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 999px;
  background: rgba(0, 0, 0, .55);
  color: rgba(255, 255, 255, .65);
}
.rec-front-inner .mk-depts--grid .mk-depts__search:focus-within,
.rec-front-page .mk-depts--grid .mk-depts__search:focus-within {
  border-color: rgba(255, 255, 255, .28);
  color: #fff;
}
.rec-front-inner .mk-depts--grid .mk-depts__search input,
.rec-front-page .mk-depts--grid .mk-depts__search input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #fff;
  font: inherit;
  font-size: .92rem;
}
.rec-front-inner .mk-depts--grid .mk-depts__search input::placeholder,
.rec-front-page .mk-depts--grid .mk-depts__search input::placeholder {
  color: rgba(255, 255, 255, .4);
}
.rec-front-inner .mk-depts--grid .mk-depts__search-clear,
.rec-front-page .mk-depts--grid .mk-depts__search-clear {
  display: grid;
  place-items: center;
  width: 1.6rem;
  height: 1.6rem;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  cursor: pointer;
}
.rec-front-inner .mk-depts--grid .mk-depts__search-clear[hidden],
.rec-front-page .mk-depts--grid .mk-depts__search-clear[hidden] {
  display: none !important;
}
.rec-front-inner .mk-depts--grid .mk-depts__letters,
.rec-front-page .mk-depts--grid .mk-depts__letters {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  margin: 0 0 1rem;
}
.rec-front-inner .mk-depts--grid .mk-depts__letter,
.rec-front-page .mk-depts--grid .mk-depts__letter {
  min-width: 2.1rem;
  min-height: 2.1rem;
  padding: .35rem .55rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 999px;
  background: rgba(0, 0, 0, .28);
  color: rgba(255, 255, 255, .78);
  font-size: .78rem;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.rec-front-inner .mk-depts--grid .mk-depts__letter:hover,
.rec-front-page .mk-depts--grid .mk-depts__letter:hover {
  border-color: rgba(255, 255, 255, .3);
  color: #fff;
}
.rec-front-inner .mk-depts--grid .mk-depts__letter.is-active,
.rec-front-page .mk-depts--grid .mk-depts__letter.is-active {
  background: #fff;
  border-color: #fff;
  color: #0a0a0a;
}
.rec-front-inner .mk-depts--grid .mk-depts__count,
.rec-front-page .mk-depts--grid .mk-depts__count {
  margin: 0 0 .9rem;
  color: rgba(255, 255, 255, .45);
  font-size: .82rem;
  font-weight: 600;
}
.rec-front-inner .mk-depts--grid .mk-depts__grid,
.rec-front-page .mk-depts--grid .mk-depts__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 640px) {
  .rec-front-inner .mk-depts--grid .mk-depts__grid,
  .rec-front-page .mk-depts--grid .mk-depts__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.1rem;
  }
}
@media (min-width: 1024px) {
  .rec-front-inner .mk-depts--grid .mk-depts__grid,
  .rec-front-page .mk-depts--grid .mk-depts__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
  }
}
.rec-front-inner .mk-depts__card,
.rec-front-page .mk-depts__card {
  --mx: 50%;
  --my: 50%;
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .05);
  border-radius: 20px;
  background: linear-gradient(180deg, #121212 0%, #171717 48%, #222222 100%);
  box-shadow: 0 12px 28px -16px rgba(0, 0, 0, .7);
  cursor: pointer;
  transition:
    transform .45s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow .45s cubic-bezier(0.22, 1, 0.36, 1),
    border-color .45s ease;
}
.rec-front-inner .mk-depts__card:hover,
.rec-front-page .mk-depts__card:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 255, 255, .08);
  box-shadow:
    0 16px 32px -16px rgba(0, 0, 0, .5),
    0 0 22px -12px rgba(140, 18, 22, .28);
}
.rec-front-inner .mk-depts__card.is-hidden,
.rec-front-page .mk-depts__card.is-hidden {
  display: none;
}
.rec-front-inner .mk-depts__card-hit,
.rec-front-page .mk-depts__card-hit {
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: inherit;
  text-indent: -9999px;
  overflow: hidden;
  color: transparent;
}
.rec-front-inner .mk-depts__chips,
.rec-front-page .mk-depts__chips,
.rec-front-inner .mk-depts__chip,
.rec-front-page .mk-depts__chip {
  position: relative;
  z-index: 3;
}
.rec-front-inner .mk-depts__card-media,
.rec-front-page .mk-depts__card-media {
  position: relative;
  z-index: 1;
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #fff;
  margin: 12px 12px 4px;
  border-radius: 14px;
}
.rec-front-inner .mk-depts__card-media img,
.rec-front-page .mk-depts__card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}
.rec-front-inner .mk-depts__card:hover .mk-depts__card-media img,
.rec-front-page .mk-depts__card:hover .mk-depts__card-media img {
  transform: scale(1.04);
}
.rec-front-inner .mk-depts__card-media-empty,
.rec-front-page .mk-depts__card-media-empty {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: #c8c8c8;
  background: #f3f3f3;
}
.rec-front-inner .mk-depts__card-body,
.rec-front-page .mk-depts__card-body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: .55rem;
  flex: 1 1 auto;
  padding: 12px 0 1.15rem;
  margin: 0 18px;
  background: transparent;
}
.rec-front-inner .mk-depts__card-title,
.rec-front-page .mk-depts__card-title {
  margin: 0;
  font-family: Outfit, "Plus Jakarta Sans", sans-serif;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.25;
  color: #fff;
}
.rec-front-inner .mk-depts__card-meta,
.rec-front-page .mk-depts__card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .75rem;
  margin: 0;
  color: rgba(255, 255, 255, .48);
  font-size: .78rem;
  font-weight: 600;
}
.rec-front-inner .mk-depts__chips,
.rec-front-page .mk-depts__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  margin-top: .25rem;
}
.rec-front-inner .mk-depts__chip,
.rec-front-page .mk-depts__chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 1.85rem;
  padding: .28rem .7rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 999px;
  background: rgba(0, 0, 0, .5);
  color: rgba(255, 255, 255, .88);
  font-size: .74rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.rec-front-inner .mk-depts__chip:hover,
.rec-front-page .mk-depts__chip:hover {
  background: rgba(255, 255, 255, .1);
  border-color: rgba(255, 255, 255, .28);
  color: #fff;
}
.rec-front-inner .mk-depts__chip--more,
.rec-front-page .mk-depts__chip--more,
.rec-front-inner .mk-depts__chip--cta,
.rec-front-page .mk-depts__chip--cta {
  border-color: rgba(245, 166, 35, .35);
  color: #F5A623;
}
.rec-front-inner .mk-depts__chip--more:hover,
.rec-front-page .mk-depts__chip--more:hover,
.rec-front-inner .mk-depts__chip--cta:hover,
.rec-front-page .mk-depts__chip--cta:hover {
  background: rgba(245, 166, 35, .12);
  border-color: rgba(245, 166, 35, .55);
  color: #ffd089;
}
.rec-front-inner .mk-depts--grid .mk-depts__empty,
.rec-front-page .mk-depts--grid .mk-depts__empty {
  margin-top: 1.25rem;
}

/* ——— Busca (mesmo chrome do catálogo pills) ——— */
.rec-front-inner .mk-search-page.mk-catalog--pills .mk-search-page__corrected,
.rec-front-page .mk-search-page.mk-catalog--pills .mk-search-page__corrected {
  margin: .35rem 0 0;
  color: rgba(255, 255, 255, .62);
  font-size: .9rem;
  line-height: 1.4;
}
.rec-front-inner .mk-search-page.mk-catalog--pills .mk-catalog__hero .mk-catalog__meta,
.rec-front-page .mk-search-page.mk-catalog--pills .mk-catalog__hero .mk-catalog__meta {
  margin: .55rem 0 0;
  color: rgba(255, 255, 255, .55);
  font-size: .92rem;
}

/* ——— Produto / PDP ——— */
.rec-front-inner .mk-product-page,
.rec-front-page .mk-product-page {
  padding-top: 1.75rem;
  padding-bottom: 3rem;
  overflow: visible;
}
.rec-front-inner .mk-product-page > .mk-breadcrumb,
.rec-front-page .mk-product-page > .mk-breadcrumb {
  margin-top: .35rem;
  margin-bottom: 2.15rem;
}
.rec-front-inner .mk-product,
.rec-front-page .mk-product {
  gap: 1.85rem 2.75rem;
}
@media (min-width: 960px) {
  .rec-front-inner .mk-product,
  .rec-front-page .mk-product {
    grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
  }
}
.rec-front-inner .mk-product__frame,
.rec-front-page .mk-product__frame {
  position: relative;
  padding: 1rem 1rem .85rem;
  gap: .75rem;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .28);
}
.rec-front-inner .mk-product__avail-tag,
.rec-front-page .mk-product__avail-tag {
  position: absolute;
  top: .85rem;
  left: .85rem;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  min-height: 1.7rem;
  padding: .28rem .7rem;
  border-radius: 999px;
  background: #1f7a3a;
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  line-height: 1.1;
  box-shadow: 0 8px 18px rgba(0, 0, 0, .18);
  pointer-events: none;
}
.rec-front-inner .mk-product__price--unavailable,
.rec-front-page .mk-product__price--unavailable {
  display: inline-block;
  margin: 0;
  padding: .45rem .9rem;
  color: #c45c62;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  line-height: 1.2;
  background: transparent;
  border: 1px solid #c45c62;
  border-radius: 999px;
  box-shadow: none;
}
.rec-front-inner .mk-product__frame:hover,
.rec-front-inner .mk-product__frame:focus-within,
.rec-front-page .mk-product__frame:hover,
.rec-front-page .mk-product__frame:focus-within {
  border-color: rgba(200, 16, 46, .55);
  box-shadow: 0 22px 56px rgba(0, 0, 0, .34);
}
.rec-front-inner .mk-product__stage,
.rec-front-page .mk-product__stage {
  border: 0;
  background: transparent;
  box-shadow: none;
  aspect-ratio: 1;
  width: min(100%, calc(100dvh - 14rem));
  max-height: min(100%, calc(100dvh - 14rem));
  height: auto;
  margin-inline: auto;
}
.rec-front-inner .mk-product__stage img,
.rec-front-page .mk-product__stage img {
  width: 98%;
  height: 98%;
  max-width: 98%;
  max-height: 98%;
}
@media (min-width: 960px) {
  .rec-front-inner .mk-product,
  .rec-front-page .mk-product {
    align-items: start;
  }
  .rec-front-inner .mk-product__gallery,
  .rec-front-page .mk-product__gallery {
    --pdp-sticky-top: 6.35rem;
    --pdp-thumbs: 6.85rem;
    --pdp-gallery-max: calc(100dvh - var(--pdp-sticky-top) - .75rem);
    position: sticky;
    top: var(--pdp-sticky-top);
    z-index: 2;
    align-self: start;
    max-height: var(--pdp-gallery-max);
  }
  .rec-front-inner .mk-product__frame,
  .rec-front-page .mk-product__frame {
    max-height: var(--pdp-gallery-max);
    height: auto;
    min-height: 0;
    overflow: hidden;
    box-sizing: border-box;
  }
  .rec-front-inner .mk-product__stage,
  .rec-front-page .mk-product__stage {
    width: min(100%, calc(var(--pdp-gallery-max) - var(--pdp-thumbs) - 2.2rem));
    max-height: calc(var(--pdp-gallery-max) - var(--pdp-thumbs) - 2.2rem);
  }
  .rec-front-inner .mk-product__thumbs,
  .rec-front-page .mk-product__thumbs {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
  }
}
.rec-front-inner .mk-product__zoom-hint,
.rec-front-page .mk-product__zoom-hint {
  background: rgba(10, 10, 10, .78);
  border: 1px solid rgba(255, 255, 255, .12);
  letter-spacing: .06em;
}
.rec-front-inner .mk-product__thumbs-wrap,
.rec-front-page .mk-product__thumbs-wrap {
  border-top-color: rgba(0, 0, 0, .08);
}
.rec-front-inner .mk-product__thumb,
.rec-front-page .mk-product__thumb {
  width: 5.1rem;
  height: 5.1rem;
  padding: .35rem;
  border-color: #ddd;
  border-radius: .9rem;
  background: #fff;
}
.rec-front-inner .mk-product__thumb.is-active,
.rec-front-inner .mk-product__thumb:hover,
.rec-front-page .mk-product__thumb.is-active,
.rec-front-page .mk-product__thumb:hover {
  border-color: var(--rec-red, #c8102e);
  box-shadow: 0 0 0 1px var(--rec-red, #c8102e);
}
.rec-front-inner .mk-product__thumb--more,
.rec-front-page .mk-product__thumb--more {
  background: #fff;
}
.rec-front-inner .mk-product__thumb-more-bg,
.rec-front-page .mk-product__thumb-more-bg {
  filter: none;
  transform: none;
  object-fit: contain;
}
.rec-front-inner .mk-product__thumb-more-label,
.rec-front-page .mk-product__thumb-more-label {
  color: #fff;
  background: radial-gradient(circle at 50% 50%, rgba(0, 0, 0, .42) 0%, rgba(0, 0, 0, .18) 48%, transparent 72%);
  text-shadow: 0 1px 2px rgba(0, 0, 0, .55), 0 0 10px rgba(0, 0, 0, .45);
}
/* Modal galeria acima do header sticky (z-index 1000) */
.rec-front-page .mk-lightbox,
body > .mk-lightbox {
  z-index: 12050 !important;
}
.rec-front-inner .mk-product,
.rec-front-page .mk-product {
  align-items: start;
}
.rec-front-inner .mk-product__info,
.rec-front-page .mk-product__info {
  gap: 1.05rem;
  padding: .15rem 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.rec-front-inner .mk-product__meta,
.rec-front-page .mk-product__meta {
  justify-content: space-between;
  padding-bottom: .7rem;
  border-bottom: 1px solid rgba(255, 255, 255, .1);
}
.rec-front-inner .mk-product__brand,
.rec-front-page .mk-product__brand {
  margin-left: auto;
  color: var(--rec-gold, #F5A623);
  letter-spacing: .14em;
  text-align: right;
}
.rec-front-inner .mk-product__brand a:hover,
.rec-front-page .mk-product__brand a:hover {
  color: #ffd089;
}
.rec-front-inner .mk-product__title,
.rec-front-page .mk-product__title {
  font-size: clamp(1.2rem, 2.1vw, 1.65rem);
  letter-spacing: -.02em;
  padding-bottom: 0;
  border-bottom: 0;
}
.rec-front-inner .mk-product__copy,
.rec-front-page .mk-product__copy {
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, .06);
  color: rgba(255, 255, 255, .72);
}
.rec-front-inner .mk-product__copy:hover,
.rec-front-inner .mk-product__copy:focus-visible,
.rec-front-page .mk-product__copy:hover,
.rec-front-page .mk-product__copy:focus-visible {
  color: #fff;
  background: rgba(245, 166, 35, .18);
}
.rec-front-inner .mk-product__copy.is-copied,
.rec-front-page .mk-product__copy.is-copied {
  color: #fff;
  background: rgba(240, 138, 26, .28);
}
.rec-front-inner .mk-product__buy,
.rec-front-page .mk-product__buy {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .85rem 1.15rem;
  margin-top: 0;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.rec-front-inner .mk-product__pricing,
.rec-front-page .mk-product__pricing {
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
  flex: 0 1 auto;
  min-width: 0;
}
.rec-front-inner .mk-product__price,
.rec-front-page .mk-product__price {
  color: var(--rec-red, #c8102e);
  font-size: clamp(1.2rem, 1.9vw, 1.45rem);
}
.rec-front-inner .mk-product__price.mk-product__price--unavailable,
.rec-front-page .mk-product__price.mk-product__price--unavailable {
  color: #c45c62;
  font-size: .78rem;
  font-weight: 700;
  background: transparent;
  border: 1px solid #c45c62;
  border-radius: 999px;
  padding: .45rem .9rem;
}
.rec-front-inner .mk-product__price--consult,
.rec-front-page .mk-product__price--consult {
  color: #f4f4f4;
  font-size: clamp(1.05rem, 1.7vw, 1.25rem);
}
.rec-front-inner .mk-product__actions,
.rec-front-page .mk-product__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 0;
  gap: .55rem;
  flex: 0 1 auto;
}
.rec-front-inner .mk-product__action,
.rec-front-page .mk-product__action {
  justify-content: center;
  min-height: 2.65rem;
  width: auto;
  max-width: 100%;
  padding: .7rem 1.2rem;
  border: 0;
  border-radius: 999px;
  font-weight: 800;
  letter-spacing: .06em;
  font-size: .72rem;
}
.rec-front-inner .mk-product__quote .mk-product__action-icon,
.rec-front-page .mk-product__quote .mk-product__action-icon {
  display: none !important;
}
.rec-front-inner .mk-product__quote .mk-product__action-label,
.rec-front-page .mk-product__quote .mk-product__action-label {
  flex: 0 1 auto;
  padding: 0;
  text-align: center;
}
.rec-front-inner .mk-product__quote,
.rec-front-page .mk-product__quote {
  width: fit-content;
  max-width: min(100%, 16.5rem);
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  background: linear-gradient(180deg, #e31e24 0%, #c8102e 100%);
  color: #fff !important;
  box-shadow: 0 12px 28px rgba(200, 16, 46, .28);
}
.rec-front-inner .mk-product__quote:hover,
.rec-front-page .mk-product__quote:hover {
  background: linear-gradient(180deg, #f03339 0%, #a80d26 100%);
  transform: translateY(-1px);
  box-shadow: 0 16px 34px rgba(200, 16, 46, .36);
  filter: none;
}
.rec-front-inner .mk-product__quote.is-added,
.rec-front-page .mk-product__quote.is-added {
  background: linear-gradient(180deg, #f59e0b 0%, #f08a1a 100%);
  box-shadow: 0 12px 28px rgba(240, 138, 26, .28);
}
.rec-front-inner .mk-product__quote.is-added:hover,
.rec-front-page .mk-product__quote.is-added:hover {
  background: linear-gradient(180deg, #fbbf24 0%, #d97706 100%);
  box-shadow: 0 16px 34px rgba(240, 138, 26, .34);
}
.rec-front-inner .mk-product__consult-wa,
.rec-front-page .mk-product__consult-wa {
  border-radius: 999px;
  box-shadow: 0 12px 28px rgba(31, 173, 77, .22);
}
.rec-front-inner .mk-product__consult-wa:hover,
.rec-front-page .mk-product__consult-wa:hover {
  box-shadow: 0 16px 34px rgba(31, 173, 77, .3);
}
.rec-front-inner .mk-product__highlights,
.rec-front-page .mk-product__highlights {
  margin-top: 1.15rem;
  padding: .85rem .95rem;
  grid-template-columns: 1fr;
  gap: .35rem;
  border: 1px solid var(--dark-4, rgba(255, 255, 255, .1));
  border-radius: 1rem;
  background: rgba(255, 255, 255, .03);
  box-shadow: none;
  overflow: hidden;
}
.rec-front-inner .mk-product__highlights li,
.rec-front-page .mk-product__highlights li {
  grid-template-columns: 2.75rem minmax(0, 1fr);
  gap: .75rem;
  align-items: center;
  padding: .55rem .15rem;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  border-radius: 0;
  background: transparent;
  transition: none;
}
.rec-front-inner .mk-product__highlights li:hover,
.rec-front-page .mk-product__highlights li:hover {
  transform: none;
}
.rec-front-inner .mk-product__highlights li:nth-child(2n),
.rec-front-inner .mk-product__highlights li:nth-last-child(-n+2),
.rec-front-page .mk-product__highlights li:nth-child(2n),
.rec-front-page .mk-product__highlights li:nth-last-child(-n+2) {
  border-right: 0;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.rec-front-inner .mk-product__highlights li:last-child,
.rec-front-page .mk-product__highlights li:last-child {
  border-bottom: 0;
  padding-bottom: .35rem;
}
.rec-front-inner .mk-product__highlight-icon,
.rec-front-page .mk-product__highlight-icon {
  width: 2.75rem;
  height: 2.75rem;
  margin-top: 0;
  border-radius: 50%;
  border: 0;
  background: rgba(245, 166, 35, .12);
  color: var(--gold, #F5A623);
  box-shadow: none;
}
.rec-front-inner .mk-product__highlight-icon svg,
.rec-front-page .mk-product__highlight-icon svg {
  width: 1.35rem;
  height: 1.35rem;
  stroke-width: 1.85;
}
.rec-front-inner .mk-product__highlights li:hover .mk-product__highlight-icon,
.rec-front-page .mk-product__highlights li:hover .mk-product__highlight-icon {
  background: rgba(245, 166, 35, .18);
  box-shadow: none;
}
.rec-front-inner .mk-product__highlights strong,
.rec-front-page .mk-product__highlights strong {
  display: block;
  font-family: inherit;
  font-size: .9rem;
  font-weight: 700;
  letter-spacing: .01em;
  text-transform: none;
  color: #fff;
  line-height: 1.25;
}
.rec-front-inner .mk-product__highlight-copy,
.rec-front-page .mk-product__highlight-copy {
  display: grid;
  gap: .2rem;
  align-items: start;
}
.rec-front-inner .mk-product__highlight-copy span,
.rec-front-page .mk-product__highlight-copy span {
  color: rgba(255, 255, 255, .62);
  font-size: .8rem;
  line-height: 1.4;
}
.rec-front-inner .mk-product__info .mk-product-panels,
.rec-front-page .mk-product__info .mk-product-panels {
  margin-top: .15rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.rec-front-inner .mk-product-panels__tabs,
.rec-front-page .mk-product-panels__tabs {
  gap: 0;
  padding: 0;
  border-bottom: 1px solid rgba(255, 255, 255, .1);
  background: transparent;
}
.rec-front-inner .mk-product-panels__tab,
.rec-front-page .mk-product-panels__tab {
  position: relative;
  min-height: 3rem;
  padding: .85rem 1.15rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: rgba(255, 255, 255, .62);
  font-weight: 650;
}
.rec-front-inner .mk-product-panels__tab:hover,
.rec-front-page .mk-product-panels__tab:hover {
  color: #fff;
  background: transparent;
}
.rec-front-inner .mk-product-panels__tab.is-active,
.rec-front-page .mk-product-panels__tab.is-active {
  color: #fff;
  background: transparent;
}
.rec-front-inner .mk-product-panels__tab.is-active::after,
.rec-front-page .mk-product-panels__tab.is-active::after {
  content: "";
  position: absolute;
  left: .85rem;
  right: .85rem;
  bottom: 0;
  height: 2px;
  background: var(--rec-red, #c8102e);
  border-radius: 2px 2px 0 0;
}
.rec-front-inner .mk-product-panels__panel,
.rec-front-page .mk-product-panels__panel {
  padding: 1.2rem 0 0;
}
.rec-front-inner .mk-product__prose,
.rec-front-page .mk-product__prose {
  color: rgba(255, 255, 255, .82);
  line-height: 1.65;
  max-width: 72ch;
}
.rec-front-inner .mk-product__prose--free,
.rec-front-page .mk-product__prose--free {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.rec-front-inner .mk-product__prose--free + .mk-product-panels,
.rec-front-page .mk-product__prose--free + .mk-product-panels {
  margin-top: 1.15rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(255, 255, 255, .08);
}
.rec-front-inner .mk-product__prose p,
.rec-front-page .mk-product__prose p {
  margin: 0 0 1em;
}
.rec-front-inner .mk-product__specs,
.rec-front-page .mk-product__specs {
  width: 100%;
  border-collapse: collapse;
}
.rec-front-inner .mk-product__specs th,
.rec-front-inner .mk-product__specs td,
.rec-front-page .mk-product__specs th,
.rec-front-page .mk-product__specs td {
  padding: .7rem .85rem;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  text-align: left;
  vertical-align: top;
}
.rec-front-inner .mk-product__specs th,
.rec-front-page .mk-product__specs th {
  width: 34%;
  color: rgba(255, 255, 255, .55);
  font-weight: 650;
}
.rec-front-inner .mk-product__specs td,
.rec-front-page .mk-product__specs td {
  color: #fff;
}
.rec-front-inner .mk-product__features,
.rec-front-page .mk-product__features {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .55rem;
}
.rec-front-inner .mk-product__features li,
.rec-front-page .mk-product__features li {
  position: relative;
  padding: .65rem .85rem .65rem 2.15rem;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: .7rem;
  background: rgba(0, 0, 0, .22);
  color: rgba(255, 255, 255, .88);
  line-height: 1.4;
}
.rec-front-inner .mk-product__features li::before,
.rec-front-page .mk-product__features li::before {
  content: "";
  position: absolute;
  left: .85rem;
  top: 1.05rem;
  width: .55rem;
  height: .55rem;
  border-radius: 50%;
  background: var(--rec-red, #c8102e);
  box-shadow: 0 0 0 3px rgba(200, 16, 46, .18);
}
.rec-front-inner .mk-product-related,
.rec-front-page .mk-product-related {
  margin-top: 2.75rem;
}
.rec-front-inner .mk-product-related .mk-section__head h2,
.rec-front-page .mk-product-related .mk-section__head h2 {
  font-family: var(--mk-font-hero, Unbounded, Outfit, sans-serif);
  font-size: clamp(1.25rem, 2.2vw, 1.65rem);
  letter-spacing: -.02em;
}
@media (max-width: 720px) {
  .rec-front-inner .mk-product__info,
  .rec-front-page .mk-product__info {
    padding: .25rem 0 0;
  }
  .rec-front-inner .mk-product__highlights,
  .rec-front-page .mk-product__highlights {
    grid-template-columns: 1fr;
    gap: .4rem;
    padding: .85rem .9rem;
  }
  .rec-front-inner .mk-product__highlights li,
  .rec-front-page .mk-product__highlights li {
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: .65rem;
    padding: .45rem .1rem;
  }
  .rec-front-inner .mk-product__highlight-icon,
  .rec-front-page .mk-product__highlight-icon {
    width: 2.5rem;
    height: 2.5rem;
  }
  .rec-front-inner .mk-product__highlight-icon svg,
  .rec-front-page .mk-product__highlight-icon svg {
    width: 1.15rem;
    height: 1.15rem;
  }
  .rec-front-inner .mk-product__stage,
  .rec-front-page .mk-product__stage {
    width: min(100%, calc(100dvh - 12rem));
    max-height: min(22rem, calc(100dvh - 12rem));
  }
  .rec-front-inner .mk-product-panels__panel,
  .rec-front-page .mk-product-panels__panel {
    padding: 1.1rem;
  }
  .rec-front-inner .mk-product__specs th,
  .rec-front-page .mk-product__specs th {
    width: 42%;
  }
}

/* ── Quem Somos (rec-about) — layout editorial sem imagem de fundo ── */
.rec-front-inner .rec-about,
.rec-front-page .rec-about {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0 0 3.5rem;
  overflow: clip;
}
.rec-front-inner .rec-about__hero,
.rec-front-page .rec-about__hero {
  position: relative;
  isolation: isolate;
  min-height: min(72vh, 36rem);
  display: grid;
  align-items: end;
  padding:
    clamp(1.25rem, 4vh, 2.5rem)
    var(--rec-page-gutter, 1.25rem)
    clamp(2.5rem, 7vh, 4.5rem);
  overflow: hidden;
  background: #000;
}
.rec-front-inner .rec-about__hero-photo,
.rec-front-page .rec-about__hero-photo {
  position: absolute;
  inset: -12% 0;
  z-index: 0;
  overflow: hidden;
}
.rec-front-inner .rec-about__hero-photo img,
.rec-front-page .rec-about__hero-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: brightness(.48) saturate(.9);
  transform: translate3d(0, var(--rec-parallax-y, 0%), 0) scale(1.12);
  will-change: transform;
}
.rec-front-inner .rec-about__hero-veil,
.rec-front-page .rec-about__hero-veil {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, .35) 0%, rgba(0, 0, 0, .55) 45%, #0a0a0a 100%),
    linear-gradient(90deg, rgba(0, 0, 0, .45) 0%, transparent 55%);
}
.rec-front-inner .rec-about__hero-glow,
.rec-front-page .rec-about__hero-glow {
  position: absolute;
  inset: -20% -10% auto;
  height: 70%;
  z-index: 0;
  background:
    radial-gradient(circle at 40% 40%, rgba(245, 166, 35, .22), transparent 45%),
    radial-gradient(circle at 70% 30%, rgba(200, 16, 46, .14), transparent 40%);
  filter: blur(8px);
  animation: rec-about-glow 10s ease-in-out infinite alternate;
  pointer-events: none;
}
.rec-front-inner .rec-about__hero-grid,
.rec-front-page .rec-about__hero-grid {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: .22;
  background-image:
    linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(180deg, #000 10%, transparent 88%);
  -webkit-mask-image: linear-gradient(180deg, #000 10%, transparent 88%);
  pointer-events: none;
}
.rec-front-inner .rec-about__hero-inner,
.rec-front-page .rec-about__hero-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--rec-page-max, 72rem);
  margin: 0 auto;
  animation: rec-about-rise .85s cubic-bezier(.22, 1, .36, 1) both;
}
.rec-front-inner .rec-about__crumb,
.rec-front-page .rec-about__crumb {
  margin: 0 0 1.75rem;
}
.rec-front-inner .rec-about__kicker,
.rec-front-page .rec-about__kicker {
  margin: 0 0 .85rem;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--rec-gold, #F5A623);
}
.rec-front-inner .rec-about__brand,
.rec-front-page .rec-about__brand {
  margin: 0;
  max-width: 14ch;
}
.rec-front-inner .rec-about__brand-mark,
.rec-front-page .rec-about__brand-mark {
  display: block;
  font-family: Unbounded, Outfit, "Plus Jakarta Sans", sans-serif;
  font-size: clamp(2.8rem, 9vw, 5.6rem);
  font-weight: 800;
  line-height: .92;
  letter-spacing: -.04em;
  color: #fff;
  text-wrap: balance;
}
.rec-front-inner .rec-about__tagline,
.rec-front-page .rec-about__tagline {
  margin: 1.15rem auto 0;
  max-width: 28rem;
  font-size: clamp(1.02rem, 2.1vw, 1.2rem);
  font-weight: 500;
  line-height: 1.45;
  color: rgba(255, 255, 255, .78);
}
.rec-front-inner .rec-about__hero-actions,
.rec-front-page .rec-about__hero-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .7rem;
  margin-top: 1.65rem;
}

.rec-front-inner .rec-about__story,
.rec-front-page .rec-about__story {
  display: grid;
  gap: 1.5rem 3rem;
  width: 100%;
  max-width: var(--rec-page-max, 72rem);
  margin: 0 auto;
  padding: clamp(2.5rem, 6vw, 4rem) var(--rec-page-gutter, 1.25rem);
}
@media (min-width: 900px) {
  .rec-front-inner .rec-about__story,
  .rec-front-page .rec-about__story {
    grid-template-columns: minmax(12rem, 18rem) minmax(0, 1fr);
    align-items: start;
  }
}
.rec-front-inner .rec-about__story-rail,
.rec-front-page .rec-about__story-rail {
  position: relative;
  padding-top: .15rem;
}
@media (min-width: 900px) {
  .rec-front-inner .rec-about__story-rail,
  .rec-front-page .rec-about__story-rail {
    position: sticky;
    top: 6.5rem;
  }
}
.rec-front-inner .rec-about__rail-label,
.rec-front-page .rec-about__rail-label {
  margin: 0 0 .55rem;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .45);
}
.rec-front-inner .rec-about__story-title,
.rec-front-page .rec-about__story-title {
  margin: 0;
  font-family: Unbounded, Outfit, "Plus Jakarta Sans", sans-serif;
  font-size: clamp(1.55rem, 3vw, 2.15rem);
  font-weight: 700;
  letter-spacing: -.03em;
  line-height: 1.15;
  color: #fff;
}
.rec-front-inner .rec-about__prose,
.rec-front-page .rec-about__prose {
  max-width: 40rem;
  color: #b8b8b8;
  font-size: 1.05rem;
  line-height: 1.75;
}
.rec-front-inner .rec-about__prose p,
.rec-front-page .rec-about__prose p {
  margin: 0 0 1.15rem;
}
.rec-front-inner .rec-about__prose p:last-child,
.rec-front-page .rec-about__prose p:last-child {
  margin-bottom: 0;
}
.rec-front-inner .rec-about__prose .rec-about__lead,
.rec-front-page .rec-about__prose .rec-about__lead {
  margin-bottom: 1.4rem;
  font-size: clamp(1.15rem, 2.2vw, 1.35rem);
  font-weight: 500;
  line-height: 1.55;
  color: #efefef;
}
.rec-front-inner .rec-about__prose strong,
.rec-front-page .rec-about__prose strong {
  color: #f5f5f5;
  font-weight: 700;
}
.rec-front-inner .rec-about__prose a,
.rec-front-page .rec-about__prose a {
  color: var(--rec-gold, #F5A623);
  text-decoration: underline;
  text-underline-offset: .15em;
}
.rec-front-inner .rec-about__prose a:hover,
.rec-front-page .rec-about__prose a:hover {
  color: #fff;
}

.rec-front-inner .rec-about__pillars,
.rec-front-page .rec-about__pillars {
  width: 100%;
  max-width: var(--rec-page-max, 72rem);
  margin: 0 auto;
  padding: .5rem var(--rec-page-gutter, 1.25rem) clamp(2.5rem, 6vw, 4rem);
}
.rec-front-inner .rec-about__pillars-head,
.rec-front-page .rec-about__pillars-head {
  max-width: 34rem;
  margin-bottom: 1.75rem;
}
.rec-front-inner .rec-about__pillars-title,
.rec-front-page .rec-about__pillars-title {
  margin: 0 0 .7rem;
  font-family: Unbounded, Outfit, "Plus Jakarta Sans", sans-serif;
  font-size: clamp(1.45rem, 2.8vw, 2rem);
  font-weight: 700;
  letter-spacing: -.03em;
  color: #fff;
}
.rec-front-inner .rec-about__pillars-lead,
.rec-front-page .rec-about__pillars-lead {
  margin: 0;
  color: rgba(255, 255, 255, .58);
  font-size: 1rem;
  line-height: 1.5;
}
.rec-front-inner .rec-about__pillar-list,
.rec-front-page .rec-about__pillar-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(255, 255, 255, .1);
}
.rec-front-inner .rec-about__pillar,
.rec-front-page .rec-about__pillar {
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  gap: 1rem 1.25rem;
  align-items: start;
  padding: 1.35rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, .1);
  animation: rec-about-rise .7s cubic-bezier(.22, 1, .36, 1) both;
  animation-delay: calc(var(--rec-about-delay, 0) * .08s + .1s);
}
@media (min-width: 900px) {
  .rec-front-inner .rec-about__pillar,
  .rec-front-page .rec-about__pillar {
    grid-template-columns: 5.5rem minmax(0, 1fr);
    gap: 1.5rem 2rem;
    padding: 1.6rem 0;
  }
}
.rec-front-inner .rec-about__pillar-num,
.rec-front-page .rec-about__pillar-num {
  font-family: Unbounded, Outfit, "Plus Jakarta Sans", sans-serif;
  font-size: clamp(1.4rem, 2.4vw, 1.85rem);
  font-weight: 700;
  letter-spacing: -.03em;
  line-height: 1;
  color: transparent;
  background: linear-gradient(135deg, var(--rec-gold, #F5A623), #c8102e);
  -webkit-background-clip: text;
  background-clip: text;
}
.rec-front-inner .rec-about__pillar-copy h3,
.rec-front-page .rec-about__pillar-copy h3 {
  margin: 0 0 .35rem;
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
}
.rec-front-inner .rec-about__pillar-copy p,
.rec-front-page .rec-about__pillar-copy p {
  margin: 0;
  max-width: 36rem;
  color: rgba(255, 255, 255, .58);
  font-size: .95rem;
  line-height: 1.5;
}

.rec-front-inner .rec-about__visit,
.rec-front-page .rec-about__visit {
  display: grid;
  gap: 1.5rem;
  width: calc(100% - (2 * var(--rec-page-gutter, 1.25rem)));
  max-width: var(--rec-page-max, 72rem);
  margin: 0 auto;
  padding: clamp(1.5rem, 3.5vw, 2.25rem);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 1.35rem;
  background:
    radial-gradient(120% 90% at 100% 0%, rgba(245, 166, 35, .14), transparent 50%),
    linear-gradient(160deg, rgba(255, 255, 255, .05), rgba(0, 0, 0, .35));
  box-shadow: 0 22px 50px rgba(0, 0, 0, .3);
  animation: rec-about-rise .8s cubic-bezier(.22, 1, .36, 1) .2s both;
}
@media (min-width: 800px) {
  .rec-front-inner .rec-about__visit,
  .rec-front-page .rec-about__visit {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 2rem;
  }
}
.rec-front-inner .rec-about__visit-copy h2,
.rec-front-page .rec-about__visit-copy h2 {
  margin: 0 0 .55rem;
  font-family: Unbounded, Outfit, "Plus Jakarta Sans", sans-serif;
  font-size: clamp(1.25rem, 2.4vw, 1.65rem);
  font-weight: 700;
  letter-spacing: -.02em;
  color: #fff;
}
.rec-front-inner .rec-about__visit-copy > p,
.rec-front-page .rec-about__visit-copy > p {
  margin: 0;
  max-width: 34rem;
  color: rgba(255, 255, 255, .62);
  font-size: .95rem;
  line-height: 1.5;
}
.rec-front-inner .rec-about__addr,
.rec-front-page .rec-about__addr {
  display: inline-flex;
  align-items: flex-start;
  gap: .55rem;
  margin: 1rem 0 0;
  color: rgba(255, 255, 255, .72);
  font-size: .92rem;
  line-height: 1.45;
}
.rec-front-inner .rec-about__addr svg,
.rec-front-page .rec-about__addr svg {
  flex-shrink: 0;
  margin-top: .12rem;
  color: var(--rec-gold, #F5A623);
}
.rec-front-inner .rec-about__visit-actions,
.rec-front-page .rec-about__visit-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
}
@media (max-width: 799px) {
  .rec-front-inner .rec-about__visit-actions,
  .rec-front-page .rec-about__visit-actions {
    width: 100%;
  }
  .rec-front-inner .rec-about__visit-actions .mk-btn,
  .rec-front-page .rec-about__visit-actions .mk-btn {
    flex: 1 1 auto;
    justify-content: center;
  }
  .rec-front-inner .rec-about__hero,
  .rec-front-page .rec-about__hero {
    min-height: min(62vh, 30rem);
  }
}

.rec-front-inner .rec-about__showroom,
.rec-front-page .rec-about__showroom {
  width: calc(100% - (2 * var(--rec-page-gutter, 1.25rem)));
  max-width: var(--rec-page-max, 72rem);
  margin: 0 auto clamp(2rem, 5vw, 3.5rem);
}
.rec-about-media {
  display: grid;
  gap: .9rem;
}
.rec-about-media--modal {
  margin-top: 1.35rem;
}
.rec-about-shot {
  margin: 0;
  min-width: 0;
  height: 100%;
}
.rec-about-shot__open {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: zoom-in;
  color: inherit;
  text-align: left;
  border-radius: inherit;
}
.rec-about-shot__frame {
  position: relative;
  overflow: hidden;
  height: 100%;
  min-height: 11rem;
  aspect-ratio: 4 / 3;
  border-radius: 1.35rem;
  background: #111;
  border: 1px solid rgba(255, 255, 255, .1);
  box-shadow: 0 18px 42px rgba(0, 0, 0, .38);
}
.rec-about-shot--hero .rec-about-shot__frame {
  aspect-ratio: 16 / 9;
  min-height: 12rem;
  border-radius: 1.5rem;
}
.rec-about-shot__frame img {
  position: absolute;
  inset: -8% 0;
  width: 100%;
  height: 116%;
  object-fit: cover;
  object-position: center;
  will-change: transform;
  transform: translate3d(0, var(--rec-parallax-y, 0%), 0) scale(1.06);
  transition: transform .4s ease, filter .3s ease;
}
.rec-about-shot__zoom {
  position: absolute;
  right: .7rem;
  bottom: .7rem;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 1.85rem;
  height: 1.85rem;
  border-radius: 999px;
  background: rgba(8, 8, 8, .55);
  color: #fff;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
}
.rec-about-shot__open:hover .rec-about-shot__frame img,
.rec-about-shot__open:focus-visible .rec-about-shot__frame img {
  transform: translate3d(0, var(--rec-parallax-y, 0%), 0) scale(1.1);
}
.rec-about-shot__open:hover .rec-about-shot__zoom,
.rec-about-shot__open:focus-visible .rec-about-shot__zoom {
  opacity: 1;
}
.rec-about-shot__open:focus-visible {
  outline: none;
}
.rec-about-shot__open:focus-visible .rec-about-shot__frame {
  box-shadow: 0 0 0 3px rgba(255, 255, 255, .45), 0 18px 42px rgba(0, 0, 0, .38);
}
.rec-about-mosaic {
  display: grid;
  gap: .9rem;
  grid-template-columns: 1fr 1fr;
}
.rec-about-shot--wide {
  grid-column: 1 / -1;
}
.rec-about-shot--wide .rec-about-shot__frame {
  aspect-ratio: 16 / 9;
}
.rec-info-modal .rec-about {
  overflow: visible;
  padding-bottom: 0;
}
.rec-info-modal .rec-info-modal__prose,
.rec-info-modal .rec-info-modal__pane {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.rec-info-modal__tab-short {
  display: none;
}
@media (max-width: 799px) {
  .rec-about-mosaic {
    grid-template-columns: 1fr 1fr;
    gap: .55rem;
  }
  .rec-about-shot,
  .rec-about-shot--wide {
    height: auto;
  }
  .rec-about-shot--wide {
    grid-column: 1 / -1;
  }
  .rec-about-shot__frame,
  .rec-about-shot--hero .rec-about-shot__frame,
  .rec-about-shot--wide .rec-about-shot__frame {
    aspect-ratio: 1 / 1;
    min-height: 0;
    height: auto;
    border-radius: .85rem;
    overflow: hidden;
  }
  .rec-about-shot--wide .rec-about-shot__frame {
    aspect-ratio: 16 / 10;
  }
  .rec-about-shot__frame img {
    inset: 0;
    width: 100%;
    height: 100%;
    transform: none !important;
  }
  .rec-about-shot__zoom {
    opacity: .85;
  }
}
@media (min-width: 800px) {
  .rec-about-mosaic {
    grid-template-columns: 1.2fr .9fr .9fr;
    grid-template-rows: minmax(11rem, 1fr) minmax(11rem, 1fr);
    min-height: 26rem;
  }
  .rec-about-shot--wide {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
  }
  .rec-about-shot--wide .rec-about-shot__frame {
    aspect-ratio: auto;
    min-height: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .rec-about-shot__frame img,
  .rec-front-inner .rec-about__hero-photo img,
  .rec-front-page .rec-about__hero-photo img {
    will-change: auto;
    transform: none !important;
    transition: none;
  }
  .rec-about-shot__zoom {
    opacity: .85;
    transform: none;
  }
}

@keyframes rec-about-rise {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes rec-about-glow {
  from { transform: translate3d(0, 0, 0) scale(1); opacity: .85; }
  to { transform: translate3d(4%, 3%, 0) scale(1.06); opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .rec-front-inner .rec-about__hero-inner,
  .rec-front-page .rec-about__hero-inner,
  .rec-front-inner .rec-about__pillar,
  .rec-front-page .rec-about__pillar,
  .rec-front-inner .rec-about__visit,
  .rec-front-page .rec-about__visit,
  .rec-front-inner .rec-about__hero-glow,
  .rec-front-page .rec-about__hero-glow {
    animation: none !important;
  }
}

.rec-about-lightbox {
  position: fixed;
  inset: 0;
  z-index: 14050;
  display: grid;
  place-items: stretch;
}
.rec-about-lightbox[hidden] {
  display: none;
}
.rec-about-lightbox__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(4, 4, 4, .92);
}
.rec-about-lightbox__dialog {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto auto;
  width: 100%;
  height: 100%;
  height: 100dvh;
  color: #fff;
}
.rec-about-lightbox__close,
.rec-about-lightbox__nav {
  position: absolute;
  z-index: 8;
  display: grid;
  place-items: center;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  background: rgba(12, 12, 12, .72);
  color: #fff;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease;
}
.rec-about-lightbox__close:hover,
.rec-about-lightbox__nav:hover {
  background: #fff;
  color: #111;
  border-color: #fff;
}
.rec-about-lightbox__close {
  top: 1rem;
  right: 1rem;
  width: 2.7rem;
  height: 2.7rem;
}
.rec-about-lightbox__nav {
  top: 50%;
  width: 2.9rem;
  height: 2.9rem;
  transform: translateY(-50%);
}
.rec-about-lightbox__nav--prev { left: 1rem; }
.rec-about-lightbox__nav--next { right: 1rem; }
.rec-about-lightbox__stage {
  display: grid;
  place-items: center;
  min-height: 0;
  padding: 4.2rem 4.5rem 1rem;
}
.rec-about-lightbox__stage img {
  max-width: min(100%, 92vw);
  max-height: min(78vh, 78dvh);
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 1rem;
  box-shadow: 0 24px 60px rgba(0, 0, 0, .45);
}
.rec-about-lightbox__counter {
  margin: 0;
  padding: .15rem 1rem .55rem;
  text-align: center;
  font-size: .82rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .62);
}
.rec-about-lightbox__thumbs {
  display: flex;
  justify-content: center;
  gap: .45rem;
  padding: 0 1rem 1.15rem;
  overflow-x: auto;
}
.rec-about-lightbox__thumb {
  flex: 0 0 auto;
  width: 3.4rem;
  height: 3.4rem;
  padding: 0;
  border: 2px solid transparent;
  border-radius: .7rem;
  overflow: hidden;
  background: #111;
  cursor: pointer;
}
.rec-about-lightbox__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.rec-about-lightbox__thumb.is-active,
.rec-about-lightbox__thumb:hover {
  border-color: #fff;
}
body.rec-about-lightbox-open {
  overflow: hidden;
}
@media (max-width: 767px) {
  .rec-about-lightbox__stage {
    padding: 4rem .75rem .5rem;
  }
  .rec-about-lightbox__nav--prev { left: .45rem; }
  .rec-about-lightbox__nav--next { right: .45rem; }
}

/* Mobile: header sempre fixo no viewport (última regra — ganha o cascade) */
@media (max-width: 767px) {
  body.rec-front-page {
    padding-top: var(--rec-header-h) !important;
  }
  body.rec-front-page > .main-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 1100 !important;
    transform: none !important;
    -webkit-transform: none !important;
  }
  /* Menu do header acima do header fixo (home + internas) */
  body.rec-front-page #menuOffcanvas.offcanvas {
    z-index: 1210 !important;
  }
  body.rec-front-page .offcanvas-backdrop,
  body.rec-front-page .offcanvas-backdrop.show {
    z-index: 1205 !important;
  }
}

.rec-front-inner .mk-sellers__hero {
  margin-bottom: 1.85rem;
  text-align: center;
}
.rec-front-inner .mk-sellers__hero .mk-breadcrumb {
  justify-content: center;
}
.rec-front-inner .mk-sellers__eyebrow {
  margin: .35rem 0 0;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--gold, #F5A623);
}
.rec-front-inner .mk-sellers__lead {
  margin: .65rem auto 0;
  max-width: 36rem;
  font-size: .98rem;
  line-height: 1.55;
}
.rec-front-inner .mk-sellers__empty {
  margin: 1.5rem 0 .85rem;
  color: rgba(255, 255, 255, .62);
  text-align: center;
}
.rec-front-inner .mk-sellers__group {
  margin: 0 0 2.25rem;
}
.rec-front-inner .mk-sellers__group-title {
  margin: 0 0 1rem;
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.rec-front-inner .mk-sellers__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 1.1rem 1.15rem;
}
.rec-front-inner .mk-sellers__card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 176px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 1.05rem;
  background: #141414;
  text-decoration: none;
  color: inherit;
  box-shadow: none;
  transform: translateY(0);
  transition: transform .3s cubic-bezier(.22, 1, .36, 1), border-color .3s ease;
}
a.mk-sellers__card {
  cursor: pointer;
}
.rec-front-inner .mk-sellers__card:hover,
.rec-front-inner .mk-sellers__card:focus-visible {
  transform: translateY(-5px);
  border-color: rgba(255, 255, 255, .28);
  box-shadow: none;
  outline: none;
}
.rec-front-inner .mk-sellers__photo {
  position: relative;
  aspect-ratio: 353 / 500;
  overflow: hidden;
  background: #141414;
}
.rec-front-inner .mk-sellers__photo::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 58%;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .28) 42%, rgba(0, 0, 0, .78) 100%);
  pointer-events: none;
}
.rec-front-inner .mk-sellers__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transform: scale(1);
  transition: transform .5s ease;
}
.rec-front-inner .mk-sellers__card:hover .mk-sellers__photo img,
.rec-front-inner .mk-sellers__card:focus-visible .mk-sellers__photo img {
  transform: scale(1.04);
}
.rec-front-inner .mk-sellers__hover {
  display: none !important;
}
.rec-front-inner .mk-sellers__body {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  display: grid;
  gap: .45rem;
  padding: .85rem .7rem 1rem;
  text-align: center;
  background: transparent;
}
.rec-front-inner .mk-sellers__name {
  margin: 0;
  font-size: .92rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.25;
}
.rec-front-inner .mk-sellers__badge {
  margin: 0;
  font-size: .72rem;
  color: rgba(255, 255, 255, .55);
}
.rec-front-inner .mk-sellers__wa {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  margin: 0 auto;
  padding: .38rem .65rem;
  border-radius: 999px;
  background: rgba(37, 211, 102, .12);
  color: #25d366;
  font-size: .7rem;
  font-weight: 650;
  text-decoration: none;
  letter-spacing: .01em;
  transition: background .25s ease, color .25s ease;
}
.rec-front-inner .mk-sellers__card:hover .mk-sellers__wa {
  background: #25d366;
  color: #06210e;
}
.rec-front-inner .mk-sellers__card.is-vacation {
  opacity: .78;
  pointer-events: none;
}
@media (max-width: 520px) {
  .rec-front-inner .mk-sellers__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .7rem;
  }
  .rec-front-inner .mk-sellers__card {
    width: 100%;
    max-width: none;
  }
  .rec-front-inner .mk-sellers__body {
    padding: .65rem .5rem .75rem;
  }
  .rec-front-inner .mk-sellers__name {
    font-size: .86rem;
  }
  .rec-front-inner .mk-sellers__wa {
    font-size: .68rem;
  }
}

body.rec-info-modal-open {
  overflow: hidden;
}
body.rec-info-modal-open .rec-topbar {
  display: none !important;
}

.rec-info-modal {
  position: fixed;
  inset: 0;
  z-index: 1300;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.rec-info-modal[hidden] {
  display: none !important;
}

.rec-info-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .72);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.rec-info-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 44rem);
  max-height: min(90vh, 52rem);
  display: flex;
  flex-direction: column;
  background:
    radial-gradient(ellipse 90% 60% at 100% 0%, rgba(200, 16, 46, .22), transparent 55%),
    radial-gradient(ellipse 70% 50% at 0% 100%, rgba(200, 16, 46, .1), transparent 50%),
    #111;
  color: #f3f3f3;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 1.15rem;
  box-shadow: 0 28px 70px rgba(0, 0, 0, .55);
  overflow: hidden;
}

.rec-info-modal__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: 1rem 1.1rem .65rem;
}

.rec-info-modal__title {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.rec-info-modal__close {
  flex: 0 0 auto;
  width: 2.15rem;
  height: 2.15rem;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  display: grid;
  place-items: center;
}

.rec-info-modal__close:hover {
  background: rgba(255, 255, 255, .16);
}

.rec-info-modal__tabs {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: .35rem;
  margin: 0 1.1rem .85rem;
  padding: 4px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .06);
}

.rec-info-modal__tab {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(255, 255, 255, .72);
  font-size: .74rem;
  font-weight: 650;
  padding: .5rem .35rem;
  text-decoration: none;
  text-align: center;
  line-height: 1.2;
}

.rec-info-modal__tab.is-active {
  background: #fff;
  color: #111;
  border-color: #fff;
}

.rec-info-modal__body {
  overflow: auto;
  padding: 0 1.15rem 1.25rem;
}

.rec-info-modal__pane[hidden] {
  display: none !important;
}

.rec-info-modal__prose {
  font-size: .92rem;
  line-height: 1.55;
  color: rgba(255, 255, 255, .82);
}

.rec-info-modal__prose p {
  margin: 0 0 .85rem;
}

.rec-info-modal__lead,
.rec-info-modal__empty {
  margin: 0 0 1rem;
  font-size: .88rem;
  color: rgba(255, 255, 255, .7);
}

.rec-info-modal__more {
  margin: .25rem 0 0;
}

.rec-info-modal__more a {
  color: rgba(255, 255, 255, .55);
  font-size: .8rem;
}

.rec-info-modal.is-screen {
  padding: 0;
  align-items: stretch;
  justify-content: stretch;
}
.rec-info-modal.is-screen .rec-info-modal__dialog {
  display: grid;
  grid-template-columns: 17.5rem minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr);
  width: 100%;
  max-width: none;
  max-height: none;
  height: 100%;
  height: 100dvh;
  border-radius: 0;
  border: 0;
}
.rec-info-modal.is-screen .rec-info-modal__head {
  grid-column: 1 / -1;
  padding: .9rem 1.15rem;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.rec-info-modal.is-screen .rec-info-modal__tabs {
  grid-column: 1;
  grid-row: 2;
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: .4rem;
  margin: 0;
  padding: 1rem .85rem;
  border-radius: 0;
  background: rgba(0, 0, 0, .28);
  border-right: 1px solid rgba(255, 255, 255, .08);
}
.rec-info-modal.is-screen .rec-info-modal__tab {
  justify-content: flex-start;
  text-align: left;
  border-radius: .8rem;
  padding: .85rem 1rem;
  font-size: .88rem;
}
.rec-info-modal.is-screen .rec-info-modal__body {
  grid-column: 2;
  grid-row: 2;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding: 1.35rem 0 1.25rem 1.75rem;
  overflow: hidden;
}
.rec-info-modal.is-screen .rec-info-modal__pane.is-active {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  padding-right: 1.75rem;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, .32) transparent;
}
.rec-info-modal.is-screen .rec-info-modal__pane.is-active::-webkit-scrollbar {
  width: 8px;
}
.rec-info-modal.is-screen .rec-info-modal__pane.is-active::-webkit-scrollbar-track {
  background: transparent;
}
.rec-info-modal.is-screen .rec-info-modal__pane.is-active::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, .28);
  border-radius: 99px;
}
.rec-info-modal.is-screen .rec-info-pane--directions.is-active {
  display: flex;
  flex-direction: column;
  gap: .85rem;
  overflow: hidden;
}
.rec-info-modal.is-screen .rec-info-pane--directions .rec-info-map {
  flex: 1 1 auto;
  aspect-ratio: auto;
  width: 100%;
  max-width: none;
  min-height: 14rem;
  height: auto;
}
.rec-info-modal.is-screen .rec-info-pane--directions .rec-info-map__addr,
.rec-info-modal.is-screen .rec-info-pane--directions .rec-info-routes {
  flex: 0 0 auto;
  max-width: none;
  margin: 0;
}
.rec-info-modal.is-screen .rec-info-channels {
  max-width: 40rem;
}
.rec-info-modal.is-screen .rec-info-modal__actions {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: .55rem;
}
.rec-info-modal.is-screen .rec-info-modal__actions .mk-btn {
  width: auto;
}
.rec-info-modal.is-screen .rec-info-modal__sellers-grid {
  justify-content: flex-start;
}
@media (max-width: 800px) {
  .rec-info-modal.is-screen .rec-info-modal__dialog {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto minmax(0, 1fr);
  }
  .rec-info-modal.is-screen .rec-info-modal__head {
    padding: .75rem .9rem;
    padding-left: max(.9rem, env(safe-area-inset-left));
    padding-right: max(.9rem, env(safe-area-inset-right));
  }
  .rec-info-modal.is-screen .rec-info-modal__tabs {
    grid-column: 1;
    grid-row: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    flex-direction: unset;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    padding: .55rem .7rem .7rem;
    padding-left: max(.7rem, env(safe-area-inset-left));
    padding-right: max(.7rem, env(safe-area-inset-right));
    overflow: visible;
    gap: .35rem;
  }
  .rec-info-modal.is-screen .rec-info-modal__tab {
    flex: none;
    width: auto;
    min-width: 0;
    justify-content: center;
    text-align: center;
    padding: .5rem .28rem;
    font-size: .68rem;
    line-height: 1.15;
    white-space: normal;
  }
  .rec-info-modal__tab:has(.rec-info-modal__tab-short) .rec-info-modal__tab-full {
    display: none;
  }
  .rec-info-modal__tab-short {
    display: inline;
  }
  .rec-info-modal.is-screen .rec-info-modal__body {
    grid-column: 1;
    grid-row: 3;
    padding: 1rem max(1rem, env(safe-area-inset-right)) 1.35rem max(1rem, env(safe-area-inset-left));
  }
  .rec-info-modal.is-screen .rec-info-modal__pane.is-active {
    padding-right: 0;
    padding-bottom: max(1rem, env(safe-area-inset-bottom));
  }
  .rec-info-modal.is-screen .rec-info-pane--directions .rec-info-map {
    min-height: 12rem;
  }
}
.rec-info-map {
  position: relative;
  width: 100%;
  max-width: 52rem;
  aspect-ratio: 16 / 10;
  background: #000;
  border-radius: 1.15rem;
  overflow: hidden;
  box-shadow: 0 16px 40px rgba(0, 0, 0, .45);
}
.rec-info-map iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  filter: grayscale(.15) contrast(1.05) brightness(.88);
}
.rec-info-map__addr {
  margin: .85rem 0 1rem;
  max-width: 52rem;
  color: rgba(255, 255, 255, .72);
  font-size: .9rem;
  line-height: 1.45;
}
.rec-info-routes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
  max-width: 52rem;
}
.rec-info-routes__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .85rem .75rem;
  border-radius: .9rem;
  border: 1px solid rgba(255, 255, 255, .12);
  background: #111;
  color: #fff;
  font-weight: 700;
  font-size: .88rem;
  text-decoration: none;
}
.rec-info-routes__btn i,
.rec-info-routes__btn svg {
  flex-shrink: 0;
  font-size: 1.15rem;
}
.rec-info-routes__btn--google:hover {
  background: #fff;
  color: #1a73e8;
  border-color: #fff;
}
.rec-info-routes__btn--waze:hover {
  background: #33ccff;
  color: #072530;
  border-color: #33ccff;
}
.rec-info-routes__btn--apple:hover {
  background: #fff;
  color: #111;
  border-color: #fff;
}
@media (max-width: 640px) {
  .rec-info-map {
    aspect-ratio: 4 / 3;
    border-radius: .9rem;
  }
  .rec-info-routes {
    grid-template-columns: 1fr;
  }
}
.rec-info-modal .rec-info-modal__faq {
  max-width: 44rem;
  margin: 0;
  gap: .7rem;
}
.rec-info-modal .mk-faq__item {
  background: #111;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 1.05rem;
  overflow: hidden;
  box-shadow: none;
  transition: border-color .25s ease, background .25s ease;
}
.rec-info-modal .mk-faq__item:hover {
  border-color: rgba(255, 255, 255, .18);
  background: #161616;
}
.rec-info-modal .mk-faq__item.is-open {
  border-color: rgba(227, 30, 36, .45);
  background: #141414;
  box-shadow: none;
}
.rec-info-modal .mk-faq__trigger {
  color: #fff;
  padding: 1rem 1.1rem;
  font-size: .95rem;
  align-items: center;
}
.rec-info-modal .mk-faq__trigger:hover {
  color: #fff;
}
.rec-info-modal .mk-faq__icon {
  background: rgba(255, 255, 255, .08);
  color: rgba(255, 255, 255, .75);
  transition: transform .35s ease, background .25s ease, color .25s ease;
}
.rec-info-modal .mk-faq__item.is-open .mk-faq__icon {
  background: var(--red, #E31E24);
  color: #fff;
}
.rec-info-modal .mk-faq__answer {
  display: grid;
  grid-template-rows: 0fr;
  padding: 0 1.1rem;
  transition: grid-template-rows .38s ease, padding .38s ease;
}
.rec-info-modal .mk-faq__item.is-open .mk-faq__answer {
  grid-template-rows: 1fr;
  padding-bottom: 1.05rem;
}
.rec-info-modal .mk-faq__answer-inner {
  overflow: hidden;
  min-height: 0;
  border-top: 1px solid rgba(255, 255, 255, .08);
  color: rgba(255, 255, 255, .72);
  font-size: .92rem;
}
.rec-info-modal .mk-faq__answer-inner a {
  color: #fff;
}
.rec-info-channels {
  list-style: none;
  margin: 0 0 1.25rem;
  padding: 0;
  display: grid;
  gap: .85rem;
}
.rec-info-channels > li {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  padding: .9rem 1rem;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: .9rem;
  background: rgba(255, 255, 255, .04);
}
.rec-info-channels > li > i {
  color: var(--red, #E31E24);
  font-size: 1.15rem;
  margin-top: .1rem;
}
.rec-info-channels div {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  min-width: 0;
}
.rec-info-channels strong {
  font-size: .72rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .5);
}
.rec-info-channels a,
.rec-info-channels span {
  color: #fff;
  word-break: break-word;
}
.rec-info-channels__social {
  display: flex;
  gap: .55rem;
  margin: 0 0 1.15rem;
}
.rec-info-channels__social a {
  width: 2.5rem;
  height: 2.5rem;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  font-size: 1.1rem;
}
.rec-info-channels__social a i {
  color: inherit;
  font-size: 1.1rem;
  margin: 0;
}
body.rec-front-page .rec-info-channels__social a:hover,
body.rec-front-page .rec-info-channels__social a:focus-visible,
.rec-info-channels__social a:hover,
.rec-info-channels__social a:focus-visible {
  background: var(--red, #E31E24);
  color: #fff;
}
body.rec-front-page .rec-info-channels__social a:hover i,
body.rec-front-page .rec-info-channels__social a:focus-visible i,
.rec-info-channels__social a:hover i,
.rec-info-channels__social a:focus-visible i {
  color: #fff;
}

.rec-info-modal__contact strong {
  font-size: .72rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .5);
}

.rec-info-modal__hours {
  list-style: none;
  margin: 0 0 1rem;
  padding: 0;
}

.rec-info-modal__hours li {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  font-size: .9rem;
}

.rec-info-modal__hours em {
  font-style: normal;
  color: rgba(255, 255, 255, .7);
}

.rec-info-modal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}

.rec-info-modal__sellers-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: .55rem;
}

.rec-info-modal .mk-sellers__card {
  position: relative;
  width: 138px;
  max-width: 138px;
  min-width: 0;
  text-decoration: none;
  color: inherit;
  border-radius: .9rem;
  overflow: hidden;
  background: #141414;
  border: 1px solid rgba(255, 255, 255, .12);
  box-shadow: none;
  transition: transform .3s ease, border-color .3s ease;
}
.rec-info-modal .mk-sellers__card:hover,
.rec-info-modal .mk-sellers__card:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(255, 255, 255, .28);
  box-shadow: none;
  outline: none;
}

.rec-info-modal .mk-sellers__photo {
  position: relative;
  aspect-ratio: 353 / 500;
  overflow: hidden;
  background: #1a1a1a;
}
.rec-info-modal .mk-sellers__photo::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 58%;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, .28) 42%, rgba(0, 0, 0, .78) 100%);
  pointer-events: none;
}

.rec-info-modal .mk-sellers__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .45s ease;
}
.rec-info-modal .mk-sellers__card:hover .mk-sellers__photo img,
.rec-info-modal .mk-sellers__card:focus-visible .mk-sellers__photo img {
  transform: scale(1.04);
}

.rec-info-modal .mk-sellers__hover {
  display: none !important;
}

.rec-info-modal .mk-sellers__body {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  padding: .65rem .45rem .8rem;
  text-align: center;
  background: transparent;
}

.rec-info-modal .mk-sellers__name {
  display: block;
  font-size: .78rem;
  font-weight: 700;
  margin-bottom: .35rem;
}

.rec-info-modal .mk-sellers__wa,
.rec-info-modal .mk-sellers__badge {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  font-size: .62rem;
  font-weight: 650;
  color: #25d366;
}
.rec-info-modal .mk-sellers__wa {
  padding: .28rem .5rem;
  border-radius: 999px;
  background: rgba(37, 211, 102, .12);
  transition: background .25s ease, color .25s ease;
}
.rec-info-modal .mk-sellers__card:hover .mk-sellers__wa {
  background: #25d366;
  color: #06210e;
}

.rec-info-modal .mk-sellers__group-title {
  font-size: .8rem;
  text-align: center;
  margin: 0 0 .65rem;
  color: rgba(255, 255, 255, .55);
}

@media (max-width: 800px) {
  .rec-info-modal__sellers-grid,
  .rec-info-modal.is-screen .rec-info-modal__sellers-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .65rem;
    justify-content: stretch;
  }
  .rec-info-modal .mk-sellers__card {
    width: 100%;
    max-width: none;
  }
}
@media (max-width: 520px) {
  .rec-info-modal__dialog {
    width: 100%;
    max-height: 92vh;
  }
  .rec-info-modal__tab {
    font-size: .7rem;
  }
  .rec-info-modal .mk-sellers__card {
    width: 100%;
    max-width: none;
  }
  .rec-info-modal .mk-sellers__name {
    font-size: .82rem;
  }
  .rec-info-modal .mk-sellers__wa,
  .rec-info-modal .mk-sellers__badge {
    font-size: .64rem;
  }
}