:root{
    --preto:#050505;
    --preto-2:#0b0b0b;
    --preto-3:#111;
    --branco:#fff;
    --off:#f7f3ed;
    --cinza:#b8b8b8;
    --cinza-2:#777;
    --dourado:#c9a75d;
    --dourado-2:#b8913d;
    --borda:rgba(255,255,255,.16);
    --sombra:0 25px 70px rgba(0,0,0,.28);
    --font-titulo:'Playfair Display',serif;
    --font-texto:'Montserrat',Arial,sans-serif;
}
 
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

html,
body{
    min-height:100%;
}

body{
    min-height:100vh;
    display:flex;
    flex-direction:column;
}

footer.footer-site{
    margin-top:auto;
}


body{
    background:var(--preto);
    color:var(--branco);
    font-family:var(--font-texto);
    overflow-x:hidden;
}

img{
    max-width:100%;
    display:block;
}

a{
    text-decoration:none;
}

section{
    position:relative;
}

.text-gold{
    color:var(--dourado);
}

.section-padding{
    padding:110px 0;
}

.section-label{
    color:var(--dourado);
    font-size:.78rem;
    letter-spacing:6px;
    text-transform:uppercase;
    margin-bottom:18px;
}

.section-title{
    font-family:var(--font-titulo);
    font-size:clamp(2.2rem,4vw,4.8rem);
    line-height:1;
    margin-bottom:24px;
}

.section-text{
    color:#d6d6d6;
    font-size:1rem;
    line-height:1.8;
}

/* =========================
   MENU
========================= */

.navbar{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    z-index:50;
    padding:16px 0;
    background:rgba(0,0,0,.26);
    backdrop-filter:blur(8px);
    border-bottom:1px solid rgba(255,255,255,.08);
}

.navbar .container{
    max-width:1320px;
}

.navbar-brand img,
.logo{
    height:58px;
    width:auto;
}

.navbar-nav{
    gap:20px;
    align-items:center;
}

.nav-link{
    color:#fff!important;
    font-size:.82rem;
    font-weight:500;
    letter-spacing:3px;
    text-transform:uppercase;
    position:relative;
    padding:10px 0!important;
}

.nav-link:after{
    content:"";
    position:absolute;
    width:0;
    height:1px;
    left:0;
    bottom:2px;
    background:var(--dourado);
    transition:.3s;
}

.nav-link:hover:after{
    width:100%;
}

.btn-header{
    border:1px solid rgba(255,255,255,.75);
    color:#fff!important;
    padding:10px 22px!important;
    border-radius:4px;
    letter-spacing:.4px;
    text-transform:none;
    font-size:.88rem;
    transition:.3s;
}

.btn-header:hover{
    background:#fff;
    color:#000!important;
}

/* =========================
   HERO
========================= */

.hero{
    min-height:100vh;
    background-size:cover;
    background-position:center;
    display:flex;
    align-items:center;
    position:relative;
}

.hero:before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.42),rgba(0,0,0,.18)),
        linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.68));
}

.hero .container{
    position:relative;
    z-index:2;
    max-width:1320px;
    padding-top:90px;
}

.hero-label{
    color:var(--dourado);
    font-size:.82rem;
    letter-spacing:6px;
    text-transform:uppercase;
    margin-bottom:24px;
}

.hero h1{
    font-family:var(--font-titulo);
    font-size:clamp(3rem,6.3vw,6.8rem);
    line-height:.92;
    max-width:850px;
    margin-bottom:28px;
    text-shadow:0 8px 30px rgba(0,0,0,.35);
}

.hero p{
    font-size:clamp(1rem,1.35vw,1.35rem);
    line-height:1.8;
    max-width:720px;
    color:#f2f2f2;
    margin-bottom:34px;
}

.btn-luxo,
.btn-outline-luxo{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:48px;
    padding:14px 34px;
    font-size:.88rem;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    border-radius:0;
    transition:.3s;
}

.btn-luxo{
    background:var(--dourado);
    border:1px solid var(--dourado);
    color:#000;
}

.btn-luxo:hover{
    background:var(--dourado-2);
    border-color:var(--dourado-2);
    color:#000;
    transform:translateY(-2px);
}

.btn-outline-luxo{
    border:1px solid rgba(255,255,255,.65);
    color:#fff;
    background:transparent;
}

.btn-outline-luxo:hover{
    background:#fff;
    color:#000;
    transform:translateY(-2px);
}

/* =========================
   SOBRE
========================= */

.sobre-section{
    background:var(--preto);
}

.sobre-img{
    position:relative;
    overflow:hidden;
    box-shadow:var(--sombra);
}

.sobre-img img{
    width:100%;
    height:620px;
    object-fit:cover;
    transition:transform 1s ease;
}

.sobre-img:hover img{
    transform:scale(1.04);
}

.sobre-box{
    border-left:1px solid var(--dourado);
    padding-left:34px;
}

/* =========================
   CATEGORIAS
========================= */

.category-card {
    display: block;
    min-height: 210px;
    padding: 28px;
    color: #fff;
    text-decoration: none;
    border: 1px solid rgba(255,255,255,.12);
    background: linear-gradient(145deg, #151515, #050505);
    position: relative;
    overflow: hidden;
    transition: transform .35s ease, border-color .35s ease;
}

.category-card::after {
    content: '';
    position: absolute;
    right: -50px;
    bottom: -50px;
    width: 140px;
    height: 140px;
    border: 1px solid rgba(199,164,93,.35);
    border-radius: 50%;
}
 
.category-card:hover {
    transform: translateY(-8px);
    border-color: var(--dourado);
    color: #fff;
}

.category-card h3 {
    font-family: var(--font-titulo);
    font-size: 1.7rem;
}

.category-card p { color: rgba(255,255,255,.62); }

.categoria-extra{
    display:none;
}

.categoria-extra.categoria-visivel{
    display:block;
}

.product-card {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.product-img-wrap img {
    width: 100%;
    height: 310px;
    object-fit: cover;
}

.product-body {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.product-category {
    color: var(--dourado);
    font-weight: 600;
    font-size: .95rem;
}

.product-title {
    color: #fff;
    font-size: 1.65rem;
    line-height: 1.2;
}

.product-description {
    color: rgba(255,255,255,.72);
    font-size: 1rem;
    line-height: 1.5;
    margin-bottom: 22px;
}

.product-body .btn {
    margin-top: auto;
    color: #fff;
    border-color: rgba(255,255,255,.35);
}

.product-body .btn:hover {
    background: var(--dourado);
    border-color: var(--dourado);
    color: #000;
}

.section-produtos-categoria{
    padding: 25px 0 80px;
}


/* =========================================================
   PRODUTOS EM DESTAQUE — PÁGINA INICIAL
========================================================= */

.produtos-section{
    position:relative;
    background:#070707;
    color:#fff;
    overflow:hidden;
}

.produtos-section .section-label{
    color:var(--dourado-2, #c9a45c);
}

.produtos-section .section-title{
    color:#fff;
}

.produtos-section .section-text{
    color:rgba(255,255,255,.68);
}


/* =========================================================
   CARD DOS PRODUTOS DA PÁGINA INICIAL
========================================================= */

.produto-card{
    position:relative;
    width:100%;
    height:100%;
    margin:0;
    background:#0d0d0d;
    border:1px solid rgba(255,255,255,.09);
    display:flex;
    flex-direction:column;
    overflow:hidden;
    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}

.produto-card:hover{
    transform:translateY(-8px);
    border-color:rgba(201,164,92,.38);
    box-shadow:0 28px 70px rgba(0,0,0,.38);
}


/* =========================================================
   IMAGEM DO PRODUTO
========================================================= */

.produto-img{
    position:relative;
    width:100%;
    height:360px;
    display:block;
    background:#151515;
    overflow:hidden;
    text-decoration:none;
}

.produto-img img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .8s cubic-bezier(.2,.7,.2,1);
}

.produto-card:hover .produto-img img{
    transform:scale(1.055);
}


/* =========================================================
   CONTEÚDO DO CARD
========================================================= */

.produto-body{
    padding:25px 27px 27px;
    display:flex;
    flex-direction:column;
    flex:1;
}

.produto-categoria{
    margin:0 0 10px;
    color:var(--dourado-2, #c9a45c);
    font-size:.75rem;
    font-weight:600;
    line-height:1.4;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.produto-body h3{
    min-height:0;
    margin:0 0 12px;
    color:#fff;
    font-family:var(--font-titulo);
    font-size:1.8rem;
    font-weight:400;
    line-height:1.2;
}

.produto-body p{
    min-height:76px;
    margin:0 0 20px;
    color:rgba(255,255,255,.58);
    font-size:.96rem;
    line-height:1.65;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
}

.produto-preco{
    margin:0 0 20px;
    color:var(--dourado-2, #c9a45c);
    font-size:1.05rem;
    font-weight:600;
}

.produto-body .btn{
    min-height:46px;
    margin-top:auto;
    border:1px solid rgba(255,255,255,.28);
    background:transparent;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease;
}

.produto-body .btn:hover{
    background:#fff;
    border-color:#fff;
    color:#080808;
}
 

/* =====================================
   BOTÃO COMPARTILHAR WHATSAPP
===================================== */

.btn-whatsapp-share{
    background:#25D366 !important;
    border:1px solid #25D366 !important;
    color:#fff !important;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;

    min-height:48px;
    padding:0.75rem 1.5rem;

    border-radius:0;

    font-weight:500;
    text-decoration:none;

    transition:all .25s ease;
}

.btn-whatsapp-share i{
    font-size:1.15rem;
}

.btn-whatsapp-share:hover{
    background:#1EBE5D !important;
    border-color:#1EBE5D !important;
    color:#fff !important;

    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(37,211,102,.28);
}

.btn-whatsapp-share:focus,
.btn-whatsapp-share:active{
    background:#1EBE5D !important;
    border-color:#1EBE5D !important;
    color:#fff !important;
}

/* ==========================================
   BOTÕES DA PÁGINA DO PRODUTO
========================================== */

.botoes-produto{
    width:100%;
}

.botoes-produto .btn{
    flex:1;
    min-height:52px;
}

/* Mobile */

@media (max-width:767px){

    .botoes-produto{
        gap:10px !important;
    }

    .botoes-produto .btn{
        flex:1 1 50%;
        width:50%;
        padding:12px 10px;
        font-size:.92rem;
    }

    .botoes-produto .btn i{
        font-size:1rem;
    }

}

/* =========================================================
   ESTRUTURA DO CARROSSEL
========================================================= */

.produtos-carousel-wrap{
    position:relative;
    width:100%;
}

.produtos-carousel{
    position:relative;
}

.produto-slide{
    display:flex;
}


/* =========================================================
   CARROSSEL E SETAS — DESKTOP
========================================================= */

@media (min-width:992px){

    .produtos-carousel-wrap.tem-carousel{
        overflow:hidden;
    }

    .produtos-carousel-wrap.tem-carousel .produtos-carousel{
        display:flex;
        flex-wrap:nowrap !important;
        margin-left:-12px;
        margin-right:-12px;
        transition:transform .6s cubic-bezier(.25,.7,.25,1);
        will-change:transform;
    }

    .produtos-carousel-wrap.tem-carousel .produto-slide{
        flex:0 0 33.333333%;
        width:33.333333%;
        max-width:33.333333%;
        padding-left:12px;
        padding-right:12px;
    }

    .produtos-seta{
        position:absolute;
        top:180px;
        z-index:20;

        width:44px;
        height:44px;
        padding:0;

        border:1px solid rgba(201,164,92,.72);
        border-radius:50%;

        background:rgba(7,7,7,.88);
        color:var(--dourado-2, #c9a45c);

        display:flex;
        align-items:center;
        justify-content:center;

        cursor:pointer;
        box-shadow:0 10px 28px rgba(0,0,0,.34);

        transition:
            background .25s ease,
            color .25s ease,
            border-color .25s ease,
            transform .25s ease;
    }

    .produtos-seta i{
        font-size:1rem;
        line-height:1;
    }

    .produtos-seta:hover{
        background:var(--dourado-2, #c9a45c);
        border-color:var(--dourado-2, #c9a45c);
        color:#080808;
        transform:scale(1.08);
    }

    .produtos-seta-esquerda{
        left:14px;
    }

    .produtos-seta-direita{
        right:14px;
    }

}


/* =========================================================
   TABLET E CELULAR
========================================================= */

@media (max-width:991px){

    .produtos-seta{
        display:none !important;
    }

    .produtos-carousel{
        flex-wrap:wrap;
    }

    .produto-img{
        height:310px;
    }

    .produto-body{
        padding:22px;
    }

}


/* =========================================================
   CELULAR — DOIS PRODUTOS POR LINHA
========================================================= */

@media (max-width:767px){

    .produto-img{
        height:210px;
    }

    .produto-body{
        padding:15px 13px;
    }

    .produto-categoria{
        margin-bottom:7px;
        font-size:.62rem;
        letter-spacing:.09em;
    }

    .produto-body h3{
        margin-bottom:9px;
        font-size:1.2rem;
        line-height:1.2;
    }

    .produto-body p{
        min-height:70px;
        margin-bottom:15px;
        font-size:.78rem;
        line-height:1.5;
    }

    .produto-preco{
        margin-bottom:14px;
        font-size:.9rem;
    }

    .produto-body .btn{
        min-height:40px;
        padding:8px 5px;
        font-size:.77rem;
    }

}


/* =========================================================
   CELULAR PEQUENO
========================================================= */

@media (max-width:390px){

    .produto-img{
        height:180px;
    }

    .produto-body{
        padding:12px 10px;
    }

    .produto-body h3{
        font-size:1.05rem;
    }

    .produto-body p{
        min-height:66px;
        font-size:.72rem;
    }

}


/* =========================================================
   MOBILE — DOIS PRODUTOS POR LINHA
========================================================= */

@media (max-width:767px){

    .produtos-section .section-title{
        font-size:2.25rem;
    }

    .produto-img{
        height:220px;
    }

    .produto-body{
        padding:15px 13px;
    }

    .produto-body h3{
        font-size:1.25rem;
        line-height:1.2;
        margin-bottom:8px;
    }

    .produto-body p{
        min-height:72px;
        font-size:.78rem;
        line-height:1.5;
        margin-bottom:14px;

        display:-webkit-box;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:3;
        overflow:hidden;
    }

    .produto-preco{
        font-size:.9rem;
        margin-bottom:14px;
    }

    .produto-body .btn{
        min-height:40px;
        padding:8px 6px;
        font-size:.78rem;
    }

}


/* =========================================================
   MOBILE PEQUENO
========================================================= */

@media (max-width:390px){

    .produto-img{
        height:190px;
    }

    .produto-body{
        padding:12px 10px;
    }

    .produto-body h3{
        font-size:1.08rem;
    }

    .produto-body p{
        min-height:68px;
        font-size:.73rem;
    }

}

/* =========================================================
   CATÁLOGO DE PRODUTOS — VISUAL PREMIUM
========================================================= */

.catalogo-luxo{
    width:100%;
    min-height:100vh;
    background:#070707;
    color:#fff;
    overflow:hidden;
}


/* =========================================================
   CABEÇALHO DA PÁGINA
========================================================= */

.catalogo-luxo-hero{
    position:relative;
    background:
        radial-gradient(
            circle at 82% 25%,
            rgba(180,145,75,.10),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #070707 0%,
            #0b0b0b 55%,
            #080808 100%
        );

    padding:175px 0 75px;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.catalogo-luxo-hero::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    width:42%;
    height:100%;
    opacity:.15;
    pointer-events:none;
    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.03)
        );
}

.catalogo-luxo-hero-conteudo{
    position:relative;
    z-index:2;
    max-width:850px;
}

.catalogo-luxo-kicker{
    display:flex;
    align-items:center;
    gap:14px;
    color:var(--dourado-2, #c9a45c);
    font-size:.82rem;
    font-weight:600;
    letter-spacing:.22em;
    line-height:1.4;
    text-transform:uppercase;
    margin-bottom:22px;
}

.catalogo-luxo-kicker::before{
    content:"";
    width:42px;
    height:1px;
    background:var(--dourado-2, #c9a45c);
}

.catalogo-luxo-titulo{
    max-width:800px;
    color:#fff;
    font-family:var(--font-titulo);
    font-size:clamp(3rem, 5.2vw, 5.4rem);
    font-weight:400;
    line-height:.98;
    letter-spacing:-.035em;
    margin:0 0 28px;
}

.catalogo-luxo-introducao{
    max-width:690px;
    color:rgba(255,255,255,.68);
    font-size:1.08rem;
    font-weight:300;
    line-height:1.8;
    margin:0;
}

.catalogo-luxo-linha{
    width:110px;
    height:1px;
    margin-top:38px;
    background:linear-gradient(
        90deg,
        var(--dourado-2, #c9a45c),
        transparent
    );
}


/* =========================================================
   SEÇÃO DE PRODUTOS
========================================================= */

.catalogo-luxo-produtos{
    background:#070707;
    padding:72px 0 100px;
}

.catalogo-luxo-topo-listagem{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    margin-bottom:42px;
}

.catalogo-luxo-titulo-filtro{
    width:100%;
    max-width:520px;
}

.catalogo-luxo-secao-label{
    display:block;
    color:var(--dourado-2, #c9a45c);
    font-size:.78rem;
    font-weight:600;
    letter-spacing:.18em;
    line-height:1.4;
    text-transform:uppercase;
    margin-bottom:9px;
}

.catalogo-luxo-secao-titulo{
    color:#fff;
    font-family:var(--font-titulo);
    font-size:clamp(2rem, 3vw, 3rem);
    font-weight:400;
    line-height:1.1;
    margin:0;
}

.catalogo-luxo-total{
    color:rgba(255,255,255,.45);
    font-size:.9rem;
    white-space:nowrap;
    padding-bottom:6px;
}


/* =========================================================
   FILTRO DE CATEGORIAS
========================================================= */

.catalogo-luxo-filtro{
    width:100%;
    max-width:390px;
    margin-top:28px;
}

.catalogo-luxo-filtro-label{
    display:block;
    color:rgba(255,255,255,.48);
    font-size:.72rem;
    font-weight:500;
    letter-spacing:.12em;
    text-transform:uppercase;
    margin-bottom:9px;
}

.catalogo-luxo-select-wrap{
    position:relative;
    width:100%;
}

.catalogo-luxo-select{
    width:100%;
    height:52px;
    padding:0 50px 0 18px;
    background:#0d0d0d;
    border:1px solid rgba(255,255,255,.14);
    border-radius:0;
    color:#fff;
    font-family:inherit;
    font-size:.92rem;
    cursor:pointer;
    outline:none;
    appearance:none;
    -webkit-appearance:none;
    transition:
        border-color .25s ease,
        background .25s ease,
        box-shadow .25s ease;
}

.catalogo-luxo-select:hover{
    background:#111;
    border-color:rgba(201,164,92,.45);
}

.catalogo-luxo-select:focus{
    background:#111;
    border-color:var(--dourado-2, #c9a45c);
    box-shadow:0 0 0 3px rgba(201,164,92,.08);
}

.catalogo-luxo-select option{
    background:#111;
    color:#fff;
}

.catalogo-luxo-select-wrap > i{
    position:absolute;
    top:50%;
    right:18px;
    color:var(--dourado-2, #c9a45c);
    font-size:.82rem;
    pointer-events:none;
    transform:translateY(-50%);
    transition:transform .25s ease;
}

.catalogo-luxo-select-wrap:focus-within > i{
    transform:translateY(-50%) rotate(180deg);
}


/* =========================================================
   GRID
========================================================= */

.catalogo-luxo-grid{
    align-items:stretch;
}

.catalogo-luxo-coluna{
    display:flex;
}

.catalogo-luxo-coluna[hidden]{
    display:none !important;
}


/* =========================================================
   CARD DO PRODUTO
========================================================= */

.catalogo-luxo-card{
    position:relative;
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    background:#0d0d0d;
    border:1px solid rgba(255,255,255,.09);
    overflow:hidden;
    transition:
        transform .4s ease,
        border-color .4s ease,
        box-shadow .4s ease;
}

.catalogo-luxo-card:hover{
    transform:translateY(-8px);
    border-color:rgba(201,164,92,.38);
    box-shadow:0 28px 70px rgba(0,0,0,.38);
}


/* =========================================================
   IMAGEM
========================================================= */

.catalogo-luxo-imagem{
    position:relative;
    width:100%;
    aspect-ratio:4 / 3;
    display:block;
    overflow:hidden;
    background:#151515;
}

.catalogo-luxo-imagem img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .8s cubic-bezier(.2,.7,.2,1);
}

.catalogo-luxo-card:hover .catalogo-luxo-imagem img{
    transform:scale(1.055);
}

.catalogo-luxo-imagem-sombra{
    position:absolute;
    inset:0;
    opacity:0;
    background:linear-gradient(
        180deg,
        transparent 45%,
        rgba(0,0,0,.72) 100%
    );
    transition:opacity .4s ease;
}

.catalogo-luxo-card:hover .catalogo-luxo-imagem-sombra{
    opacity:1;
}

.catalogo-luxo-ver-produto{
    position:absolute;
    left:25px;
    bottom:22px;
    color:#fff;
    font-size:.78rem;
    font-weight:500;
    letter-spacing:.14em;
    text-transform:uppercase;
    opacity:0;
    transform:translateY(12px);
    transition:
        opacity .35s ease,
        transform .35s ease;
}

.catalogo-luxo-card:hover .catalogo-luxo-ver-produto{
    opacity:1;
    transform:translateY(0);
}


/* =========================================================
   CONTEÚDO DO CARD
========================================================= */

.catalogo-luxo-card-conteudo{
    padding:25px 27px 27px;
    display:flex;
    flex-direction:column;
    flex:1;
}

.catalogo-luxo-categoria{
    color:var(--dourado-2, #c9a45c);
    font-size:.76rem;
    font-weight:600;
    letter-spacing:.13em;
    line-height:1.4;
    text-transform:uppercase;
    margin-bottom:11px;
}

.catalogo-luxo-produto-titulo{
    font-family:var(--font-titulo);
    font-size:1.85rem;
    font-weight:400;
    line-height:1.15;
    margin:0 0 14px;
}

.catalogo-luxo-produto-titulo a{
    color:#fff;
    text-decoration:none;
    transition:color .25s ease;
}

.catalogo-luxo-produto-titulo a:hover{
    color:var(--dourado-2, #c9a45c);
}

.catalogo-luxo-descricao{
    color:rgba(255,255,255,.57);
    font-size:.96rem;
    line-height:1.7;
    margin:0 0 22px;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
}

.catalogo-luxo-preco{
    color:var(--dourado-2, #c9a45c);
    font-size:1.08rem;
    font-weight:600;
    margin:0 0 20px;
}


/* =========================================================
   BOTÃO
========================================================= */

.catalogo-luxo-botao{
    min-height:48px;
    margin-top:auto;
    padding:12px 17px;
    color:#fff;
    border-top:1px solid rgba(255,255,255,.11);
    text-decoration:none;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    font-size:.88rem;
    font-weight:500;
    letter-spacing:.04em;
    transition:
        color .25s ease,
        border-color .25s ease;
}

.catalogo-luxo-botao i{
    color:var(--dourado-2, #c9a45c);
    font-size:1rem;
    transition:transform .3s ease;
}

.catalogo-luxo-botao:hover{
    color:var(--dourado-2, #c9a45c);
    border-color:rgba(201,164,92,.42);
}

.catalogo-luxo-botao:hover i{
    transform:translateX(6px);
}


/* =========================================================
   PAGINAÇÃO
========================================================= */

.catalogo-luxo-paginacao{
    width:100%;
    margin-top:55px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
}

.catalogo-luxo-pagina{
    min-width:44px;
    height:44px;
    padding:0 13px;
    background:#0d0d0d;
    border:1px solid rgba(255,255,255,.12);
    color:rgba(255,255,255,.72);
    font-family:inherit;
    font-size:.88rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease,
        transform .25s ease;
}

.catalogo-luxo-pagina:hover{
    color:#fff;
    background:#151515;
    border-color:rgba(201,164,92,.52);
    transform:translateY(-2px);
}

.catalogo-luxo-pagina.ativo{
    background:var(--dourado-2, #c9a45c);
    border-color:var(--dourado-2, #c9a45c);
    color:#080808;
    font-weight:600;
}

.catalogo-luxo-pagina-seta{
    color:var(--dourado-2, #c9a45c);
}

.catalogo-luxo-reticencias{
    min-width:30px;
    height:44px;
    color:rgba(255,255,255,.35);
    display:inline-flex;
    align-items:center;
    justify-content:center;
}


/* =========================================================
   CATÁLOGO VAZIO
========================================================= */

.catalogo-luxo-vazio,
.catalogo-luxo-filtro-vazio{
    padding:80px 30px;
    text-align:center;
    border:1px solid rgba(255,255,255,.08);
    background:#0d0d0d;
}

.catalogo-luxo-filtro-vazio{
    margin-top:20px;
}

.catalogo-luxo-filtro-vazio[hidden]{
    display:none !important;
}

.catalogo-luxo-vazio-icone{
    color:var(--dourado-2, #c9a45c);
    font-size:2.5rem;
    margin-bottom:20px;
}

.catalogo-luxo-vazio h2,
.catalogo-luxo-filtro-vazio h2{
    color:#fff;
    font-family:var(--font-titulo);
    font-size:2rem;
    font-weight:400;
    margin-bottom:12px;
}

.catalogo-luxo-vazio p,
.catalogo-luxo-filtro-vazio p{
    color:rgba(255,255,255,.58);
    margin:0;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:991px){

    .catalogo-luxo-hero{
        padding:145px 0 65px;
    }

    .catalogo-luxo-produtos{
        padding:60px 0 80px;
    }

    .catalogo-luxo-card-conteudo{
        padding:22px;
    }

    .catalogo-luxo-produto-titulo{
        font-size:1.65rem;
    }

}


/* =========================================================
   CELULAR
========================================================= */

@media (max-width:767px){

    .catalogo-luxo-hero{
        padding:125px 0 52px;
    }

    .catalogo-luxo-kicker{
        font-size:.68rem;
        margin-bottom:16px;
    }

    .catalogo-luxo-kicker::before{
        width:28px;
    }

    .catalogo-luxo-titulo{
        font-size:2.75rem;
        line-height:1.03;
        margin-bottom:20px;
    }

    .catalogo-luxo-introducao{
        font-size:.95rem;
        line-height:1.65;
    }

    .catalogo-luxo-linha{
        margin-top:28px;
    }

    .catalogo-luxo-produtos{
        padding:45px 0 60px;
    }

    .catalogo-luxo-topo-listagem{
        align-items:flex-start;
        margin-bottom:28px;
    }

    .catalogo-luxo-total{
        display:none;
    }

    .catalogo-luxo-secao-titulo{
        font-size:2rem;
    }

    .catalogo-luxo-filtro{
        max-width:100%;
        margin-top:22px;
    }

    .catalogo-luxo-select{
        height:48px;
        font-size:.86rem;
    }

    .catalogo-luxo-card-conteudo{
        padding:16px 14px 15px;
    }

    .catalogo-luxo-categoria{
        font-size:.64rem;
        letter-spacing:.08em;
        margin-bottom:7px;
    }

    .catalogo-luxo-produto-titulo{
        font-size:1.22rem;
        line-height:1.18;
        margin-bottom:9px;
    }

    .catalogo-luxo-descricao{
        font-size:.79rem;
        line-height:1.5;
        margin-bottom:15px;
        -webkit-line-clamp:3;
    }

    .catalogo-luxo-preco{
        font-size:.9rem;
        margin-bottom:14px;
    }

    .catalogo-luxo-botao{
        min-height:41px;
        padding:10px 0 2px;
        font-size:.73rem;
        letter-spacing:0;
    }

    .catalogo-luxo-ver-produto{
        display:none;
    }

    .catalogo-luxo-paginacao{
        margin-top:38px;
        gap:6px;
    }

    .catalogo-luxo-pagina{
        min-width:38px;
        height:38px;
        padding:0 10px;
        font-size:.8rem;
    }

    .catalogo-luxo-reticencias{
        min-width:20px;
        height:38px;
    }

}


/* =========================================================
   CELULAR PEQUENO
========================================================= */

@media (max-width:390px){

    .catalogo-luxo-hero{
        padding-top:115px;
    }

    .catalogo-luxo-titulo{
        font-size:2.4rem;
    }

    .catalogo-luxo-card-conteudo{
        padding:13px 11px;
    }

    .catalogo-luxo-produto-titulo{
        font-size:1.08rem;
    }

    .catalogo-luxo-descricao{
        font-size:.74rem;
    }

    .catalogo-luxo-botao span{
        max-width:85px;
    }

    .catalogo-luxo-pagina{
        min-width:35px;
        height:35px;
        padding:0 8px;
    }

}

/* =========================
   CTA DESCONTO
========================= */

.cta-section{
    background-size:cover;
    background-position:center;
    position:relative;
    padding:105px 0;
}

.cta-section:before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.54),rgba(0,0,0,.35));
}

.cta-section .container{
    position:relative;
    z-index:2;
}

.cta-box{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
}

.cta-box h2{
    font-family:var(--font-titulo);
    font-size:clamp(2.1rem,4vw,4.6rem);
    line-height:1;
    max-width:720px;
}

.cta-box p{
    color:#e7e7e7;
    max-width:760px;
    margin-top:18px;
    line-height:1.8;
}

/* =========================
   CONTATO
========================= */

.contato-section{
    background:linear-gradient(135deg,#050505,#111 60%,#080808);
    color:#fff;
    padding:110px 0;
}

.contato-card{
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.11);
    padding:42px;
    height:100%;
    box-shadow:0 30px 80px rgba(0,0,0,.25);
}

.contato-card h3{
    font-family:var(--font-titulo);
    font-size:2.5rem;
    margin-bottom:20px;
}

.contato-info{
    margin-top:30px;
}

.contato-info-item{
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.contato-info-item span{
    display:block;
    color:var(--dourado);
    font-size:.75rem;
    letter-spacing:3px;
    text-transform:uppercase;
    margin-bottom:6px;
}

.contato-info-item p,
.contato-info-item a{
    color:#f2f2f2;
    margin:0;
    line-height:1.6;
}

.maps-box{
    height:100%;
    min-height:500px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 30px 80px rgba(0,0,0,.3);
}

.maps-box iframe{
    width:100%;
    height:100%;
    min-height:500px;
    border:0;
    filter:grayscale(20%) contrast(1.05);
}

/* =========================
   FORMULÁRIOS
========================= */

.form-control,
.form-select{
    border-radius:0;
    border:1px solid #ddd;
    padding:14px 16px;
    font-size:.95rem;
}

.form-control:focus,
.form-select:focus{
    box-shadow:none;
    border-color:var(--dourado);
}

.modal-content{
    border-radius:0;
    border:0;
}

.modal-header{
    border-bottom:0;
}

.modal-title{
    font-family:var(--font-titulo);
    font-size:2rem;
}

/* =========================
   WHATSAPP
========================= */

.whatsapp-fixo{
    position:fixed;
    right:26px;
    bottom:26px;
    width:58px;
    height:58px;
    border-radius:50%;
    background:#25d366;
    color:#fff;
    z-index:80;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.7rem;
    box-shadow:0 16px 36px rgba(0,0,0,.32);
    transition:.3s;
}

.whatsapp-fixo:hover{
    transform:scale(1.08);
    color:#fff;
}

/* =========================
   FOOTER
========================= */

.footer{
    background:#000;
    color:#aaa;
    padding:70px 0 28px;
    border-top:1px solid rgba(255,255,255,.08);
}

.footer-logo{
    height:62px;
    margin-bottom:24px;
}

.footer h5{
    color:#fff;
    font-size:.82rem;
    letter-spacing:3px;
    text-transform:uppercase;
    margin-bottom:20px;
}

.footer a{
    color:#aaa;
    display:block;
    margin-bottom:10px;
    transition:.3s;
}

.footer a:hover{
    color:var(--dourado);
}

.footer-bottom{
    border-top:1px solid rgba(255,255,255,.08);
    margin-top:45px;
    padding-top:22px;
    font-size:.85rem;
}

/* =========================
   ANIMAÇÕES
========================= */

.reveal{
    opacity:0;
    transform:translateY(40px);
    transition:1s ease;
}

.reveal.active{
    opacity:1;
    transform:translateY(0);
}

/* =========================
   RESPONSIVO
========================= */

@media(max-width:1400px){

    .navbar-brand img,
    .logo{
        height:52px;
    }

    .nav-link{
        font-size:.78rem;
        letter-spacing:2.4px;
    }

    .btn-header{
        padding:9px 18px!important;
        font-size:.84rem;
    }

    .hero h1{
        font-size:clamp(3rem,5.5vw,5.5rem);
        max-width:760px;
    }

    .hero p{
        font-size:1.08rem;
        max-width:690px;
    }

}

@media(max-width:1199px){

    .navbar{
        padding:12px 0;
    }

    .navbar-nav{
        gap:14px;
    }

    .hero{
        min-height:88vh;
    }

    .hero h1{
        font-size:clamp(2.8rem,5vw,4.8rem);
        max-width:700px;
    }

    .hero p{
        font-size:1rem;
    }

    .btn-luxo,
    .btn-outline-luxo{
        padding:13px 26px;
        font-size:.82rem;
    }

    .whatsapp-fixo{
        width:52px;
        height:52px;
        font-size:1.45rem;
    }

}

@media(max-width:991px){

    .navbar{
        background:rgba(0,0,0,.82);
        position:absolute;
    }

    .navbar-collapse{
        background:rgba(0,0,0,.94);
        margin-top:14px;
        padding:22px;
        border:1px solid rgba(255,255,255,.1);
    }

    .navbar-nav{
        align-items:flex-start;
        gap:8px;
    }

    .hero{
        min-height:82vh;
    }

    .hero .container{
        padding-top:115px;
    }

    .hero h1{
        font-size:clamp(2.5rem,8vw,4.1rem);
        line-height:1;
    }

    
    .hero p{
        max-width:620px;
        font-size:1rem;
    }

    .section-padding{
        padding:80px 0;
    }

    .sobre-img img{
        height:460px;
    }

    .categoria-card{
        height:360px;
    }

    .produto-img{
        height:320px;
    }

    .cta-box{
        display:block;
    }

    .cta-box .btn-luxo{
        margin-top:24px;
    }

    .maps-box,
    .maps-box iframe{
        min-height:380px;
    }

}

@media(max-width:767px){

    .hero{
        min-height:78vh;
        text-align:left;
    }

    .hero-label,
    .section-label{
        font-size:.7rem;
        letter-spacing:4px;
    }

    .hero h1{
        font-size:clamp(1.7rem,10vw,2.2rem);
        line-height:1.05;
    }

    .hero p{
        font-size:.96rem;
        line-height:1.7;
    }

    .hero .d-flex{
        flex-direction:column;
        align-items:stretch!important;
    }

    .btn-luxo,
    .btn-outline-luxo{
        width:100%;
        padding:12px 20px;
        min-height:46px;
        font-size:.8rem;
    }

    .section-title{
        font-size:clamp(2rem,9vw,3rem);
    }

    .contato-card{
        padding:30px 24px;
    }

    .contato-card h3{
        font-size:2rem;
    }

    .whatsapp-fixo{
        width:48px;
        height:48px;
        right:18px;
        bottom:18px;
        font-size:1.35rem;
    }

}

@media(max-width:575px){

    .navbar-brand img,
    .logo{
        height:46px;
    }

    .hero{
        min-height:74vh;
        background-position: 62% center;
    }

    .hero .container{
        padding-top:65px;
    }

    .hero h1{
        font-size:1.85rem;
        max-width:70%;
        margin-top:168px;
    }

    .hero p{
        font-size:.82rem;
        max-width:70%;
    }

    .hero .d-flex{
        margin-top:60px !important;
    }

    .section-padding{
        padding:65px 0;
    }

    .sobre-img img,
    .categoria-card,
    .produto-img{
        height:300px;
    }

    .produto-body{
        padding:22px;
    }

    .cta-section{
        padding:70px 0;
    }

    .cta-box h2{
        font-size:2.3rem;
    }

    .maps-box,
    .maps-box iframe{
        min-height:320px;
    }

    .footer{
        padding:55px 0 24px;
    }

    #categorias{
    display:none!important;
    }

    .produtos-section .row.g-4{
        --bs-gutter-x: .75rem;
        --bs-gutter-y: .75rem;
    }

    .produto-img{
        height:190px;
    }

    .produto-body{
        padding:14px;
    }

    .produto-body h3{
        font-size:1.15rem;
    }

    .produto-body p{
        font-size:.82rem;
        line-height:1.5;
    }

    .produto-body .btn{
        font-size:.75rem;
        padding:8px 6px;
    }

    .footer-copy{
    font-size: .82rem;
}


    .footer-copy{
        font-size: .72rem;
    }


}


/* =========================
   MODAL / POPUP PREMIUM
========================= */

#modalLead .modal-content{
    background:#0b0b0b;
    color:#fff;
    border:1px solid rgba(201,167,93,.35);
    box-shadow:0 30px 90px rgba(0,0,0,.55);
}

#modalLead .modal-header,
#modalLead .modal-footer{
    border-color:rgba(255,255,255,.10);
}

#modalLead .modal-title{
    font-family:var(--font-titulo);
    font-size:2rem!important;
    color:#fff;
}

#modalLead .btn-close{
    filter:invert(1);
    opacity:.8;
}

#modalLead .modal-body,
#modalLead .modal-body p,
#modalLead label{
    color:#e5e5e5!important;
}

#modalLead .form-control,
#modalLead .form-select{
    background:#111;
    color:#fff;
    border:1px solid rgba(255,255,255,.18);
}

#modalLead .form-control:focus,
#modalLead .form-select:focus{
    border-color:var(--dourado);
    background:#111;
    color:#fff;
}

#modalLead .modal-footer .btn-dark{
    background:var(--dourado);
    border-color:var(--dourado);
    color:#000;
    font-weight:700;
}

#modalLead .modal-footer .btn-outline-secondary{
    color:#fff;
    border-color:rgba(255,255,255,.35);
}

#modalLead .modal-footer .btn-outline-secondary:hover{
    background:#fff;
    color:#000;
}

#modalLead .form-select option{
    background:#111;
    color:#fff;
}

/* =========================
   WHATSAPP FIXO
========================= */

html,
body{
    transform:none!important;
    filter:none!important;
    perspective:none!important;
}

.whatsapp-fixo{
    position:fixed!important;
    right:22px!important;
    bottom:22px!important;
    top:auto!important;
    left:auto!important;
    width:58px!important;
    height:58px!important;
    border-radius:50%!important;
    background:#25d366!important;
    color:#fff!important;
    z-index:2147483647!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:1.7rem!important;
    box-shadow:0 16px 36px rgba(0,0,0,.32)!important;
    text-decoration:none!important;
    line-height:1!important;
}

.whatsapp-fixo i{
    line-height:1!important;
}

.whatsapp-fixo:hover{
    transform:scale(1.08)!important;
    color:#fff!important;
}

@media(max-width:767px){
    .whatsapp-fixo{
        width:52px!important;
        height:52px!important;
        right:18px!important;
        bottom:18px!important;
        font-size:1.45rem!important;
    }
}

@media (max-width: 767px){

    /* Primeira coluna (logo e descrição) */
    /* Primeira coluna */
    .footer .col-lg-5{
        text-align:center;
    }

    .footer-logo{
        display:block;
        margin:0 auto 20px;
    }

    .footer .col-lg-5 p{
        text-align:center;
    }

    /* Última coluna */
    .footer .col-lg-4{
        text-align:center !important;
    }

    .footer .col-lg-4 h3{
        text-align:center;
    }

    .footer .col-lg-4 .btn{
        display:inline-block;
        margin:0 auto;
    }

}

@media (max-width:575px){

    .footer-logo{
        display:block;
        margin:0 auto 20px;
    }

    .footer .col-lg-4 .btn{
        display:inline-block;
    }

}