/**
 * =========================================================
 * ARQUIVO : /assets/css/brasil-v2-premium.css
 * PROJETO : Bom Vendedor Brasil (.com.br)
 * MÓDULO  : Design System Premium V2
 * VERSÃO  : V2.0 PREMIUM GREEN COMMERCE
 * DATA    : 07/05/2026
 * =========================================================
 * OBJETIVO:
 * - Aplicar identidade independente verde/teal + laranja.
 * - Padronizar header, footer, cards, botões, páginas legais,
 *   categorias, lojas, ofertas, busca, produto, auth e conta.
 * - Sobrescrever estilos legados sem alterar regra de negócio.
 * =========================================================
 */

:root {
    --br-green-950: #073B36;
    --br-green-900: #0D3B36;
    --br-green-850: #0B4B43;
    --br-green-800: #055E52;
    --br-green-700: #047A67;
    --br-green-600: #0B967D;
    --br-green-500: #0FA67A;
    --br-green-400: #16BD92;
    --br-mint-50: #F3FFFB;
    --br-mint-80: #EFFBF8;
    --br-mint-100: #E8F7F1;
    --br-mint-200: #D7F1EA;
    --br-orange-500: #FF6A00;
    --br-orange-600: #EF5900;
    --br-orange-100: #FFF1E7;
    --br-gray-50: #F8FAFA;
    --br-gray-100: #F1F3F5;
    --br-gray-200: #E3E9E8;
    --br-gray-500: #657975;
    --br-gray-700: #334B47;
    --br-ink: #10231F;
    --br-white: #FFFFFF;
    --br-border: rgba(13, 59, 54, .12);
    --br-border-strong: rgba(13, 59, 54, .20);
    --br-shadow-xs: 0 2px 8px rgba(13, 59, 54, .04);
    --br-shadow-sm: 0 10px 28px rgba(13, 59, 54, .08);
    --br-shadow-md: 0 18px 48px rgba(13, 59, 54, .12);
    --br-shadow-lg: 0 28px 80px rgba(13, 59, 54, .16);
    --br-radius-xs: 8px;
    --br-radius-sm: 12px;
    --br-radius-md: 16px;
    --br-radius-lg: 22px;
    --br-radius-xl: 30px;
    --br-font-heading: "Poppins", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --br-font-body: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: var(--br-font-body);
    color: var(--br-ink);
    background:
        radial-gradient(circle at 8% 12%, rgba(15, 166, 122, .12), transparent 24%),
        radial-gradient(circle at 96% 14%, rgba(15, 166, 122, .08), transparent 28%),
        linear-gradient(180deg, #ffffff 0%, var(--br-mint-50) 44%, #f4fbf9 100%);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body a { color: inherit; }
img { max-width: 100%; }
.container,
.br-container,
.bv-categories-v2-shell,
.bv-category-v2-shell,
.bv-ofertas-shell,
.bv-lojas-shell,
.bv-product-shell,
.bv-contact-shell,
.bv-legal-shell,
.bv-page > .container,
.auth-page .container,
.account-page .container {
    width: min(1220px, calc(100% - 32px));
    margin-inline: auto;
}

/* =========================================================
   ELEMENTOS GLOBAIS
========================================================= */
.br-btn,
.bv-ofertas-card__btn,
.bv-lojas-card__btn,
.bv-category-v2-card__btn,
.home-product-card__btn,
.auth-button,
.bv-contact-btn,
.bv-legal-btn,
.account-nav__link,
.account-logout-link,
.bv-product-main-cta,
.bv-product-card a[class*="btn"],
button[type="submit"] {
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}
.br-btn:hover,
.bv-ofertas-card__btn:hover,
.bv-lojas-card__btn:hover,
.bv-category-v2-card__btn:hover,
.home-product-card__btn:hover,
.auth-button:hover,
.bv-contact-btn:hover,
.bv-legal-btn:hover,
.bv-product-main-cta:hover,
button[type="submit"]:hover {
    transform: translateY(-1px);
}

.br-btn--primary,
.bv-contact-btn,
.auth-button--primary,
.auth-button--success,
.bv-legal-btn--primary,
.bv-category-v2-btn--primary,
.bv-categories-v2-btn--primary,
.bv-ofertas-card__btn,
.bv-lojas-card__btn,
.bv-category-v2-card__btn,
.home-product-card__btn,
.bv-product-main-cta {
    background: linear-gradient(135deg, var(--br-green-600), var(--br-green-500)) !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: 0 12px 26px rgba(15, 166, 122, .24) !important;
    border-radius: 13px !important;
    font-weight: 850 !important;
}
.br-btn--orange,
.bv-search__button,
.bv-action-link--primary,
.bv-newsletter-form button,
.bv-footer__newsletter button,
.bv-cookie-button {
    background: linear-gradient(135deg, var(--br-orange-500), #FF8A3D) !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: 0 12px 26px rgba(255, 106, 0, .25) !important;
    border-radius: 13px !important;
    font-weight: 850 !important;
}
.br-btn--outline,
.bv-legal-btn--ghost,
.bv-categories-v2-btn--secondary,
.bv-category-v2-btn--secondary {
    background: rgba(255,255,255,.88) !important;
    color: var(--br-green-900) !important;
    border: 1px solid var(--br-border-strong) !important;
    box-shadow: var(--br-shadow-xs) !important;
    border-radius: 13px !important;
    font-weight: 850 !important;
}
.br-btn--primary:hover,
.br-btn--orange:hover,
.bv-action-link--primary:hover,
.bv-ofertas-card__btn:hover,
.bv-lojas-card__btn:hover,
.bv-category-v2-card__btn:hover,
.home-product-card__btn:hover,
.auth-button:hover,
.bv-contact-btn:hover,
.bv-legal-btn:hover,
.bv-product-main-cta:hover { box-shadow: var(--br-shadow-md) !important; }

/* =========================================================
   HEADER GLOBAL V2
========================================================= */
.bv-header {
    position: sticky;
    top: 0;
    z-index: 7000;
    background: rgba(255,255,255,.94) !important;
    border-bottom: 1px solid rgba(13,59,54,.10) !important;
    box-shadow: 0 12px 34px rgba(13,59,54,.07) !important;
    backdrop-filter: blur(20px);
}
.bv-header__bar { display: none !important; }
.bv-header__container { padding-block: 10px 14px !important; }
.bv-header__top {
    display: grid !important;
    grid-template-columns: 210px minmax(280px, 620px) auto !important;
    align-items: center !important;
    gap: 28px !important;
}
.bv-brand { width: 210px !important; min-width: 210px !important; display: flex !important; align-items: center !important; }
.bv-brand__logo {
    width: 178px !important;
    height: auto !important;
    max-height: 56px !important;
    object-fit: contain !important;
    object-position: left center !important;
}
.bv-search {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) 54px !important;
    width: 100% !important;
    max-width: 620px !important;
    justify-self: center !important;
    gap: 0 !important;
}
.bv-search__box {
    min-height: 48px !important;
    border: 1px solid var(--br-border-strong) !important;
    border-right: 0 !important;
    border-radius: 16px 0 0 16px !important;
    background: #fff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.85), var(--br-shadow-xs) !important;
}
.bv-search__icon { color: var(--br-green-600) !important; font-size: 18px !important; }
.bv-search input {
    font-family: var(--br-font-body) !important;
    font-weight: 600 !important;
    color: var(--br-green-950) !important;
}
.bv-search input::placeholder { color: #78908C !important; }
.bv-search__button {
    min-height: 48px !important;
    width: 54px !important;
    padding: 0 !important;
    border-radius: 0 16px 16px 0 !important;
    font-size: 0 !important;
    display: grid !important;
    place-items: center !important;
}
.bv-search__button::before {
    content: "";
    width: 21px;
    height: 21px;
    display: block;
    background: currentColor;
    -webkit-mask: url('/assets/img/brasil/icons/search.svg') center/contain no-repeat;
    mask: url('/assets/img/brasil/icons/search.svg') center/contain no-repeat;
}
.bv-header__actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 18px !important;
    white-space: nowrap !important;
}
.bv-action-link,
.bv-account {
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 0 4px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--br-green-950) !important;
    font-weight: 850 !important;
    text-decoration: none !important;
}
.bv-action-link--primary {
    padding: 0 18px !important;
    min-height: 42px !important;
}
.bv-action-link--favorite span { font-size: 23px; color: var(--br-green-950); }
.bv-account__avatar-wrap { border-color: var(--br-border-strong) !important; }
.bv-account__content strong { color: var(--br-green-950) !important; }
.bv-account__content small { color: var(--br-gray-500) !important; }
.bv-header__bottom {
    position: absolute !important;
    top: calc(100% - 1px) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
    pointer-events: none !important;
}
.bv-nav {
    display: flex !important;
    align-items: center !important;
    gap: 22px !important;
    padding: 0 22px !important;
    min-height: 48px !important;
    background: rgba(255,255,255,.92) !important;
    border: 1px solid rgba(13,59,54,.08) !important;
    border-top: 0 !important;
    border-radius: 0 0 20px 20px !important;
    box-shadow: 0 12px 24px rgba(13,59,54,.06) !important;
    pointer-events: auto !important;
}
.bv-nav a {
    color: var(--br-green-950) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    text-decoration: none !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    position: relative !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.bv-nav a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 6px;
    height: 3px;
    border-radius: 999px;
    background: transparent;
    transition: background .18s ease, transform .18s ease;
    transform: scaleX(.25);
}
.bv-nav a:hover,
.bv-nav a.is-active { color: var(--br-green-600) !important; }
.bv-nav a:hover::after,
.bv-nav a.is-active::after { background: var(--br-green-600); transform: scaleX(1); }
.bv-mobile-toggle span { background: var(--br-green-600) !important; }

/* =========================================================
   HOME - APROXIMAÇÃO AO MOCKUP APROVADO
========================================================= */
.br-home { overflow: hidden; }
.br-hero {
    position: relative;
    padding: 92px 0 36px !important;
    background:
        radial-gradient(circle at 76% 32%, rgba(15,166,122,.18), transparent 31%),
        radial-gradient(circle at 4% 48%, rgba(15,166,122,.08), transparent 22%),
        linear-gradient(180deg, #F3FFFB 0%, #FFFFFF 100%) !important;
    border-bottom: 1px solid rgba(13,59,54,.08) !important;
}
.br-hero::before {
    content: "";
    position: absolute;
    left: -160px;
    top: 112px;
    width: 340px;
    height: 340px;
    border: 1px solid rgba(15,166,122,.13);
    border-radius: 50%;
    box-shadow: 0 0 0 24px rgba(15,166,122,.04), 0 0 0 54px rgba(15,166,122,.025);
}
.br-hero__grid {
    display: grid !important;
    grid-template-columns: minmax(0, .9fr) minmax(430px, 1.1fr) !important;
    align-items: center !important;
    gap: 52px !important;
}
.br-kicker {
    display: inline-flex !important;
    align-items: center;
    min-height: 30px;
    padding: 7px 13px !important;
    border-radius: 999px !important;
    background: rgba(15,166,122,.12) !important;
    color: var(--br-green-700) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .02em;
    text-transform: uppercase;
}
.br-hero h1 {
    margin: 20px 0 12px !important;
    font-family: var(--br-font-heading) !important;
    color: var(--br-green-950) !important;
    font-size: clamp(44px, 5vw, 76px) !important;
    line-height: .94 !important;
    letter-spacing: -0.055em !important;
    font-weight: 900 !important;
}
.br-hero h1 span {
    display: block;
    color: var(--br-green-600) !important;
}
.br-hero p {
    max-width: 590px;
    margin: 0 0 24px !important;
    font-size: 18px !important;
    line-height: 1.55 !important;
    color: var(--br-gray-700) !important;
    font-weight: 700;
}
.br-hero__actions { display: flex !important; gap: 18px !important; flex-wrap: wrap; }
.br-btn {
    min-height: 50px !important;
    padding: 0 24px !important;
    border-radius: 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    text-decoration: none !important;
    font-size: 15px !important;
    font-weight: 900 !important;
}
.br-hero__features {
    margin-top: 28px !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
}
.br-hero__features span {
    display: grid !important;
    grid-template-columns: 36px 1fr !important;
    column-gap: 12px !important;
    row-gap: 2px !important;
    align-items: center !important;
    color: var(--br-gray-700) !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}
.br-hero__features b {
    grid-row: span 2;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: var(--br-mint-100);
    color: var(--br-green-600);
    font-size: 17px;
}
.br-hero__features strong { color: var(--br-green-950) !important; font-size: 13px; font-weight: 900; }
.br-hero__features small { color: var(--br-gray-500) !important; font-size: 12px; font-weight: 650; line-height: 1.25; }
.br-hero__visual {
    min-height: 345px;
    position: relative;
    display: block;
}
.br-hero__halo {
    position: absolute;
    inset: 10px 20px 10px 0;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(15,166,122,.15), rgba(255,255,255,.6));
    filter: blur(.2px);
}
.br-device--laptop {
    position: absolute;
    right: 28px;
    top: 22px;
    width: min(560px, 85%);
    border-radius: 22px !important;
    border: 12px solid #1F2937 !important;
    border-top-width: 30px !important;
    background: #fff !important;
    box-shadow: 0 35px 80px rgba(13,59,54,.24) !important;
    overflow: hidden;
}
.br-device__bar { position: absolute; left: 16px; top: -22px; display: flex; gap: 6px; }
.br-device__bar span { width: 8px; height: 8px; border-radius: 50%; background: #FF6A00; }
.br-device__bar span:nth-child(2) { background: #FFC43D; }
.br-device__bar span:nth-child(3) { background: #0FA67A; }
.br-comparison-screen { padding: 18px; min-height: 215px; }
.br-comparison-screen__head { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:12px; }
.br-comparison-screen__head strong { color: var(--br-green-950); font-size: 14px; font-weight: 900; }
.br-comparison-screen__head span { background: var(--br-green-600); color:#fff; border-radius:9px; padding:6px 10px; font-size:11px; font-weight:900; }
.br-price-row { display:grid; grid-template-columns: 1fr auto auto; align-items:center; gap:10px; padding:9px 0; border-top:1px solid var(--br-gray-100); color: var(--br-gray-700); font-size:12px; font-weight:750; }
.br-price-row strong { color: var(--br-green-950); }
.br-price-row em { font-style:normal; color: var(--br-green-600); font-weight: 900; font-size: 11px; }
.br-device--phone {
    position: absolute;
    left: 10px;
    top: 88px;
    width: 170px;
    min-height: 260px;
    background: #fff;
    border: 9px solid #10231F;
    border-radius: 26px;
    z-index: 3;
    padding: 14px 12px;
    box-shadow: 0 24px 55px rgba(13,59,54,.22);
}
.br-device--phone img { height: 118px; width: 100%; object-fit: contain; display:block; margin: 4px 0 8px; }
.br-device--phone em { position:absolute; right:-14px; top:20px; background: var(--br-orange-500); color:#fff; border-radius:8px; padding:5px 9px; font-style:normal; font-weight:900; font-size:12px; }
.br-device--phone strong { display:block; font-size:22px; color:var(--br-green-950); margin-top: 8px; font-weight: 950; }
.br-device--phone a { margin-top: 10px; display:flex; align-items:center; justify-content:center; min-height: 36px; border-radius:10px; background: var(--br-green-600); color:#fff; text-decoration:none; font-weight:900; font-size:12px; }
.br-shopping-bag {
    position:absolute;
    right:0;
    bottom:30px;
    z-index:4;
    width:112px;
    height:112px;
    display:grid;
    place-items:center;
    border-radius:22px;
    color:#fff;
    font-size:42px;
    background: linear-gradient(135deg, var(--br-green-700), var(--br-green-500));
    box-shadow: var(--br-shadow-md);
}
.br-category-strip {
    position: relative;
    z-index: 8;
    margin-top: -2px;
    display: grid !important;
    grid-template-columns: repeat(8, minmax(116px, 1fr)) 42px !important;
    gap: 12px !important;
    padding: 16px !important;
    background: rgba(255,255,255,.92) !important;
    border: 1px solid var(--br-border) !important;
    border-radius: 20px !important;
    box-shadow: var(--br-shadow-sm) !important;
}
.br-category-tile,
.br-category-more {
    min-height: 72px !important;
    border: 1px solid var(--br-border) !important;
    border-radius: 15px !important;
    background: #fff !important;
    display: grid !important;
    grid-template-columns: 36px 1fr !important;
    grid-template-rows: auto auto !important;
    align-items: center !important;
    column-gap: 10px !important;
    padding: 10px 12px !important;
    color: var(--br-green-950) !important;
    text-decoration: none !important;
    box-shadow: var(--br-shadow-xs) !important;
}
.br-category-tile span { grid-row: span 2; font-size: 0 !important; width: 34px; height:34px; border-radius:12px; background: var(--br-mint-100); display:grid; place-items:center; }
.br-category-tile span::before { content:""; width:21px; height:21px; display:block; background: var(--br-green-600); -webkit-mask: url('/assets/img/brasil/icons/tag.svg') center/contain no-repeat; mask: url('/assets/img/brasil/icons/tag.svg') center/contain no-repeat; }
.br-category-tile strong { font-size: 12px !important; font-weight: 900 !important; line-height:1.15; }
.br-category-tile small { font-size: 11px !important; color: var(--br-gray-500) !important; font-weight: 700 !important; }
.br-category-more { grid-template-columns:1fr !important; place-items:center !important; font-size: 26px !important; color: var(--br-green-600) !important; }
.br-section {
    padding: 28px 0 !important;
}
.br-section__head {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 20px !important;
    margin-bottom: 14px !important;
}
.br-section__head h2,
.bv-categories-v2-grid-head h2,
.bv-ofertas-section__head h2,
.bv-contact-form-card__title,
.auth-card__title,
.account-panel-head__title {
    margin: 0 !important;
    font-family: var(--br-font-heading) !important;
    color: var(--br-green-950) !important;
    font-size: clamp(23px, 2vw, 30px) !important;
    line-height: 1.05 !important;
    letter-spacing: -.035em !important;
    font-weight: 900 !important;
}
.br-section__head p { margin: 4px 0 0; color: var(--br-gray-500); font-weight: 650; }
.br-section__head a { color: var(--br-green-600); font-weight: 900; text-decoration: none; }
.br-product-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
    gap: 18px !important;
}
.br-product-card,
.br-blog-card,
.bv-ofertas-card,
.bv-lojas-card,
.bv-category-v2-card,
.home-product-card,
.bv-product-card,
.account-card,
.auth-card,
.bv-contact-form-card,
.bv-contact-info__card,
.bv-legal-card,
.bv-legal-summary__card,
.bv-legal-cta {
    background: rgba(255,255,255,.96) !important;
    border: 1px solid var(--br-border) !important;
    border-radius: var(--br-radius-lg) !important;
    box-shadow: var(--br-shadow-sm) !important;
}
.br-product-card { display:grid; grid-template-columns: 42% 1fr; min-height: 178px; overflow:hidden; }
.br-product-card__media { position:relative; display:grid; place-items:center; background: linear-gradient(180deg, var(--br-gray-50), #fff); padding: 16px; }
.br-product-card__media span,
.bv-ofertas-card__badge,
.bv-lojas-card__badge,
.bv-category-v2-card__discount,
.home-product-card__discount {
    position:absolute;
    left: 12px;
    top: 12px;
    background: var(--br-green-600) !important;
    color:#fff !important;
    border-radius: 9px !important;
    padding: 5px 8px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}
.br-product-card__media img { max-height: 130px; object-fit: contain; }
.br-product-card__body { padding: 16px; display:flex; flex-direction:column; gap:10px; min-width:0; }
.br-product-card h3 { margin:0; font-size:14px; line-height:1.25; color:var(--br-green-950); font-weight:900; }
.br-product-card h3 a { text-decoration:none; }
.br-product-card__stores { display:grid; gap:4px; }
.br-product-card__stores span { display:flex; justify-content:space-between; gap:10px; font-size:11px; color:var(--br-gray-500); font-weight:700; }
.br-product-card__stores strong { color: var(--br-green-600); font-weight:900; }
.br-rating { color: var(--br-gray-500); font-size:12px; font-weight:800; }
.br-rating span { color:#FFB000; }
.br-btn--orange { min-height: 38px !important; padding:0 14px !important; font-size: 13px !important; align-self: stretch; }
.br-store-strip { display:grid !important; grid-template-columns: repeat(auto-fit, minmax(130px,1fr)) !important; gap:14px !important; }
.br-store-strip a { min-height:58px; border-radius:14px; background:#fff; border:1px solid var(--br-border); display:grid; place-items:center; padding:10px 18px; box-shadow:var(--br-shadow-xs); }
.br-store-strip img { max-height:34px; object-fit:contain; }
.br-blog-preview { background: rgba(232,247,241,.58); padding: 26px !important; border-radius: var(--br-radius-xl); border:1px solid rgba(15,166,122,.10); }
.br-blog-grid { display:grid !important; grid-template-columns: repeat(4, minmax(0,1fr)) !important; gap:16px !important; }
.br-blog-card { display:grid; grid-template-columns: 38% 1fr; min-height:118px; overflow:hidden; }
.br-blog-card img { width:100%; height:100%; object-fit:cover; background: var(--br-mint-100); }
.br-blog-card div { padding:13px; }
.br-blog-card span { display:inline-flex; background:rgba(15,166,122,.12); color:var(--br-green-600); border-radius:999px; padding:4px 8px; font-size:9px; font-weight:900; text-transform:uppercase; }
.br-blog-card h3 { margin:8px 0 6px; font-size:13px; line-height:1.18; color:var(--br-green-950); font-weight:900; }
.br-blog-card h3 a { text-decoration:none; }
.br-blog-card p { margin:0; color:var(--br-gray-500); font-size:11px; line-height:1.35; font-weight:650; }
.br-blog-card small { display:block; margin-top:8px; color:#7B918E; font-size:10px; font-weight:750; }
.br-ad-section { margin: 24px 0 !important; border-radius: 20px; overflow: hidden; box-shadow: var(--br-shadow-sm); border:1px solid var(--br-border); }

/* =========================================================
   OFERTAS RELÂMPAGO - PAINEL HOME
========================================================= */
.bv-flash-home,
.ofertas-relampago-home,
.bv-ofertas-relampago-home {
    margin: 22px 0 28px !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, var(--br-green-950), var(--br-green-700)) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: 0 22px 55px rgba(13,59,54,.18) !important;
}
.bv-flash-home h2,
.ofertas-relampago-home h2,
.bv-ofertas-relampago-home h2 { color:#fff !important; font-family:var(--br-font-heading); }
.bv-flash-home a,
.ofertas-relampago-home a,
.bv-ofertas-relampago-home a { text-decoration:none; }

/* =========================================================
   PÁGINAS DE CATEGORIAS / CATEGORIA
========================================================= */
.bv-categories-v2-page,
.bv-category-v2-page,
.bv-ofertas-page,
.bv-lojas-page,
.bv-contact-page,
.bv-legal-page,
.auth-page,
.account-page,
.bv-product-page,
.bv-page {
    padding-top: 74px !important;
    padding-bottom: 56px !important;
    background:
        radial-gradient(circle at 14% 5%, rgba(15,166,122,.10), transparent 25%),
        linear-gradient(180deg, #fff 0%, var(--br-mint-50) 100%) !important;
}
.bv-categories-v2-hero,
.bv-category-v2-hero,
.bv-ofertas-hero,
.bv-lojas-hero,
.bv-contact-hero,
.bv-legal-hero,
.auth-card__header,
.account-panel-head,
.bv-product-hero-v21 {
    background: rgba(255,255,255,.92) !important;
    border: 1px solid var(--br-border) !important;
    border-radius: var(--br-radius-xl) !important;
    box-shadow: var(--br-shadow-sm) !important;
}
.bv-categories-v2-hero,
.bv-category-v2-hero,
.bv-ofertas-hero,
.bv-lojas-hero,
.bv-contact-hero,
.bv-legal-hero { padding: clamp(24px, 4vw, 44px) !important; }
.bv-categories-v2-hero__eyebrow,
.bv-category-v2-hero__eyebrow,
.bv-ofertas-hero__badge,
.bv-lojas-hero__badge,
.bv-contact-hero__eyebrow,
.bv-legal-hero__badge,
.auth-card__eyebrow,
.account-panel-head__eyebrow {
    display: inline-flex !important;
    background: rgba(15,166,122,.12) !important;
    color: var(--br-green-700) !important;
    border-radius: 999px !important;
    padding: 6px 12px !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}
.bv-categories-v2-hero h1,
.bv-category-v2-hero h1,
.bv-ofertas-hero h1,
.bv-lojas-hero h1,
.bv-contact-hero__title,
.bv-legal-hero__title,
.auth-card__title,
.bv-product-title h1 {
    font-family: var(--br-font-heading) !important;
    color: var(--br-green-950) !important;
    font-size: clamp(34px, 4vw, 54px) !important;
    line-height: 1 !important;
    letter-spacing: -.045em !important;
    font-weight: 900 !important;
}
.bv-categories-v2-chip,
.bv-category-v2-chip,
.bv-categories-v2-pill,
.bv-category-v2-pill,
.bv-ofertas-hero__meta span,
.bv-lojas-hero__chips span,
.bv-product-tag,
.account-pill {
    border-radius: 999px !important;
    background: rgba(15,166,122,.10) !important;
    color: var(--br-green-700) !important;
    border: 1px solid rgba(15,166,122,.16) !important;
    font-weight: 850 !important;
}
.bv-categories-v2-grid,
.bv-category-v2-products-grid,
.bv-ofertas-grid,
.bv-lojas-grid,
.home-products-grid,
.home-products-grid--eight {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
    gap: 18px !important;
}
.bv-categories-v2-card,
.bv-category-v2-card,
.bv-ofertas-card,
.bv-lojas-card,
.home-product-card {
    overflow: hidden !important;
    min-height: 100% !important;
}
.bv-categories-v2-card:hover,
.bv-category-v2-card:hover,
.bv-ofertas-card:hover,
.bv-lojas-card:hover,
.home-product-card:hover,
.br-product-card:hover,
.br-blog-card:hover { transform: translateY(-2px); box-shadow: var(--br-shadow-md) !important; }
.bv-categories-v2-card__media,
.bv-category-v2-card__image,
.bv-ofertas-card__image,
.bv-lojas-card__image,
.home-product-card__image {
    background: linear-gradient(180deg, var(--br-gray-50), #fff) !important;
    border-bottom: 1px solid var(--br-border) !important;
}
.bv-categories-v2-card__media img,
.bv-category-v2-card__image img,
.bv-ofertas-card__image img,
.bv-lojas-card__image img,
.home-product-card__image img { object-fit: contain !important; }
.bv-categories-v2-card__body,
.bv-category-v2-card__body,
.bv-ofertas-card__body,
.bv-lojas-card__body,
.home-product-card__content { padding: 16px !important; }
.bv-categories-v2-card__title,
.bv-category-v2-card__title,
.bv-ofertas-card__title,
.bv-lojas-card__title,
.home-product-card__title { color: var(--br-green-950) !important; font-weight: 900 !important; line-height: 1.22 !important; }
.bv-category-v2-card__price,
.bv-ofertas-card__price,
.bv-lojas-card__price,
.home-product-card__price,
.bv-product-price-card__value { color: var(--br-green-950) !important; font-weight: 950 !important; }
.bv-ofertas-card__old,
.bv-lojas-card__old-price,
.bv-category-v2-card__old-price { color: #95A5A2 !important; }
.bv-categories-v2-ad-slot,
.bv-category-v2-ad-slot,
.bv-ofertas-ad,
.bv-lojas-ad,
.home-ad-section { border-radius: var(--br-radius-lg) !important; overflow:hidden; box-shadow: var(--br-shadow-sm); border:1px solid var(--br-border); }
.bv-categories-v2-featured,
.bv-categories-v2-featured__primary,
.bv-categories-v2-featured__secondary,
.bv-categories-v2-mini,
.bv-categories-v2-quicknav,
.bv-category-v2-section-head,
.bv-ofertas-section,
.bv-lojas-section { border-color: var(--br-border) !important; }

/* =========================================================
   PRODUTO
========================================================= */
.bv-product-hero-v21 { overflow: hidden; }
.bv-product-price-card,
.bv-product-utility-card,
.bv-product-card,
.bv-product-offer-card {
    border-color: var(--br-border) !important;
    box-shadow: var(--br-shadow-sm) !important;
    border-radius: var(--br-radius-lg) !important;
}
.bv-product-gallery-main { background: linear-gradient(180deg, #fff, var(--br-gray-50)) !important; border-color: var(--br-border) !important; }
.bv-product-title h1 { font-size: clamp(28px,3vw,44px) !important; }
.bv-product-main-cta { min-height: 48px; display:flex; align-items:center; justify-content:center; text-decoration:none; }
.bv-product-secondary-link { color: var(--br-green-700) !important; }

/* =========================================================
   PÁGINAS LEGAIS E CONTATO
========================================================= */
.bv-legal-page { min-height: 100vh; }
.bv-legal-hero { margin-bottom: 22px !important; }
.bv-legal-hero__title { margin: 12px 0 8px !important; }
.bv-legal-hero__text,
.bv-contact-hero__text,
.auth-card__subtitle { color: var(--br-gray-700) !important; font-weight: 650 !important; line-height: 1.65 !important; }
.bv-legal-layout { display:grid; grid-template-columns: 260px 1fr; gap:24px; align-items:start; }
.bv-legal-summary__card { position: sticky; top: 120px; padding: 22px !important; }
.bv-legal-summary__card h2 { color: var(--br-green-950); font-family:var(--br-font-heading); }
.bv-legal-card,
.bv-legal-cta { padding: 28px !important; margin-bottom: 14px !important; }
.bv-legal-card h3,
.bv-legal-cta h3 { color: var(--br-green-950); font-family:var(--br-font-heading); font-weight:900; }
.bv-legal-card p,
.bv-legal-card li,
.bv-legal-cta p { color: var(--br-gray-700); line-height:1.72; }
.bv-legal-list li::marker { color: var(--br-green-600); }
.bv-contact-grid { display:grid; grid-template-columns: .85fr 1.15fr; gap:26px; }
.bv-contact-info__card,
.bv-contact-form-card { padding: 26px !important; }
.bv-contact-form input,
.bv-contact-form textarea,
.auth-form input,
.account-page input,
.account-page select,
.account-page textarea {
    border: 1px solid var(--br-border-strong) !important;
    border-radius: 14px !important;
    background: #fff !important;
    color: var(--br-green-950) !important;
    font-weight: 650 !important;
}
.bv-contact-form input:focus,
.bv-contact-form textarea:focus,
.auth-form input:focus,
.account-page input:focus,
.account-page select:focus,
.account-page textarea:focus {
    outline: none !important;
    border-color: var(--br-green-500) !important;
    box-shadow: 0 0 0 4px rgba(15,166,122,.12) !important;
}

/* =========================================================
   AUTH E MINHA CONTA
========================================================= */
.auth-page { min-height: calc(100vh - 80px); }
.auth-card { max-width: 520px; margin: 0 auto; padding: 30px !important; }
.auth-alert { border-radius: 14px !important; }
.auth-alert--success { background: rgba(15,166,122,.12) !important; color: var(--br-green-800) !important; border-color: rgba(15,166,122,.20) !important; }
.auth-alert--error { background: #FFF3EE !important; color: #B9360B !important; border-color: #FFD9C8 !important; }
.account-layout { gap:24px !important; }
.account-sidebar { position: sticky; top: 118px; }
.account-nav__link { border:1px solid var(--br-border) !important; color: var(--br-green-950) !important; }
.account-nav__link.is-active { background: linear-gradient(135deg, var(--br-green-950), var(--br-green-700)) !important; color:#fff !important; }
.account-hero-card { background: linear-gradient(135deg, rgba(15,166,122,.14), rgba(255,255,255,.96)) !important; border:1px solid var(--br-border) !important; }

/* =========================================================
   FOOTER
========================================================= */
.bv-footer {
    margin-top: 54px !important;
    background: linear-gradient(135deg, #063E39, #055448 60%, #073B36) !important;
    color: #fff !important;
    border-top: 0 !important;
}
.bv-footer .container { padding-block: 52px 28px !important; }
.bv-footer a { color: rgba(255,255,255,.86) !important; text-decoration: none !important; }
.bv-footer a:hover { color: #fff !important; }
.bv-footer__brand strong,
.bv-footer h3,
.bv-footer h4 { color:#fff !important; font-family:var(--br-font-heading); }
.bv-footer__brand p,
.bv-footer p,
.bv-footer li,
.bv-footer small { color: rgba(255,255,255,.72) !important; }
.bv-footer__newsletter input {
    border:0 !important;
    border-radius: 999px 0 0 999px !important;
    min-height: 46px !important;
}
.bv-footer__newsletter button { border-radius: 0 999px 999px 0 !important; min-height: 46px !important; }
.bv-footer__badges { border-top:1px solid rgba(255,255,255,.12) !important; border-bottom:1px solid rgba(255,255,255,.12) !important; }
.bv-footer__badges span { color:#DFF9F1 !important; }
.bv-footer__legal { color: rgba(255,255,255,.68) !important; }
.bv-cookie-banner { border-color: var(--br-border) !important; box-shadow: var(--br-shadow-md) !important; }
.bv-cookie-button { min-height: 38px; padding-inline: 18px; }

/* =========================================================
   BLOG - IDENTIDADE VERDE QUANDO INCLUIR CSS GLOBAL
========================================================= */
.blog-site,
.blog-body { --blog-primary: var(--br-green-600); --blog-accent: var(--br-orange-500); }

/* =========================================================
   RESPONSIVO
========================================================= */
@media (max-width: 1120px) {
    .bv-header__top { grid-template-columns: 190px 1fr auto !important; gap: 16px !important; }
    .bv-brand { width: 190px !important; min-width: 190px !important; }
    .bv-brand__logo { width: 160px !important; }
    .br-hero__grid { grid-template-columns: 1fr !important; }
    .br-hero__visual { min-height: 390px; max-width: 720px; width:100%; margin-inline:auto; }
    .br-category-strip { grid-template-columns: repeat(4, minmax(0,1fr)) !important; }
    .br-category-more { display:none !important; }
    .br-product-grid,
    .br-blog-grid,
    .bv-categories-v2-grid,
    .bv-category-v2-products-grid,
    .bv-ofertas-grid,
    .bv-lojas-grid,
    .home-products-grid,
    .home-products-grid--eight { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}
@media (max-width: 860px) {
    .bv-header__top { grid-template-columns: 1fr auto !important; }
    .bv-brand { width:auto !important; min-width:0 !important; }
    .bv-brand__logo { width: 145px !important; }
    .bv-search { order: 3; grid-column: 1 / -1; max-width: none !important; }
    .bv-header__actions { display: none !important; }
    .bv-header__bottom { position: static !important; transform:none !important; margin-top:12px !important; pointer-events:auto !important; }
    .bv-nav { width:100%; overflow-x:auto; justify-content:flex-start; border-radius:18px !important; }
    .br-hero { padding-top: 34px !important; }
    .br-hero h1 { font-size: clamp(38px, 12vw, 54px) !important; }
    .br-hero__features { grid-template-columns: 1fr !important; }
    .br-device--laptop { position:relative; right:auto; top:auto; width: 100%; }
    .br-device--phone { left: 12px; top: 80px; transform: scale(.78); transform-origin:left top; }
    .br-shopping-bag { right: 12px; bottom: 4px; transform:scale(.8); }
    .br-category-strip { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
    .br-product-grid,
    .br-blog-grid,
    .bv-categories-v2-grid,
    .bv-category-v2-products-grid,
    .bv-ofertas-grid,
    .bv-lojas-grid,
    .home-products-grid,
    .home-products-grid--eight { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
    .br-product-card { grid-template-columns: 1fr; }
    .br-blog-card { grid-template-columns: 1fr; }
    .br-blog-card img { height: 150px; }
    .bv-legal-layout,
    .bv-contact-grid { grid-template-columns: 1fr !important; }
    .bv-legal-summary__card,
    .account-sidebar { position: static; }
}
@media (max-width: 560px) {
    .container,
    .br-container,
    .bv-categories-v2-shell,
    .bv-category-v2-shell,
    .bv-ofertas-shell,
    .bv-lojas-shell,
    .bv-product-shell,
    .bv-contact-shell,
    .bv-legal-shell,
    .bv-page > .container,
    .auth-page .container,
    .account-page .container { width: min(100% - 20px, 1220px); }
    .br-category-strip,
    .br-product-grid,
    .br-blog-grid,
    .bv-categories-v2-grid,
    .bv-category-v2-products-grid,
    .bv-ofertas-grid,
    .bv-lojas-grid,
    .home-products-grid,
    .home-products-grid--eight { grid-template-columns: 1fr !important; }
    .br-hero__visual { min-height: 320px; }
    .br-device--phone { display:none; }
    .br-shopping-bag { display:none; }
    .br-section__head { align-items:flex-start !important; flex-direction:column; }
}
