/* ==========================================
   ATELIÊ EDILENE LIMA
   STYLE.CSS - PARTE 1
========================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&family=Playfair+Display:wght@500;700;800&display=swap');

:root{
    --dourado:#C9A86A;
    --champagne:#F8F4EE;
    --rosa:#F3ECE7;
    --branco:#FFFFFF;
    --preto:#222;
    --cinza:#666;
    --sombra:0 15px 40px rgba(0,0,0,.12);
    --transicao:.4s ease;
}

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

html{
    scroll-behavior:smooth;
}

body{
    font-family:"Poppins",sans-serif;
    background:var(--champagne);
    color:var(--preto);
    overflow-x:hidden;
}

/* Barra de rolagem */

::-webkit-scrollbar{
    width:10px;
}

::-webkit-scrollbar-track{
    background:#eee;
}

::-webkit-scrollbar-thumb{
    background:var(--dourado);
    border-radius:20px;
}

/* Loader */

#loader{
    position:fixed;
    inset:0;
    background:#111;
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:9999;
    transition:1s;
}

#loader h1{
    color:var(--dourado);
    font-size:52px;
    font-family:"Playfair Display",serif;
    letter-spacing:4px;
    animation:brilho 2s infinite alternate;
}

@keyframes brilho{

    from{
        opacity:.4;
        transform:scale(.96);
    }

    to{
        opacity:1;
        transform:scale(1.05);
        text-shadow:0 0 30px rgba(201,168,106,.8);
    }

}

/* Header */

header{

    position:fixed;
    width:100%;
    top:0;
    left:0;

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

    padding:20px 8%;

    background:rgba(255,255,255,.35);

    backdrop-filter:blur(18px);

    z-index:1000;

    transition:.5s;

}

.logo{
    text-decoration:none;
    color:inherit;
    display:block;
}

.logo h2{

    color:var(--dourado);
    font-size:18px;
    font-weight:400;
    letter-spacing:5px;

}

.logo h1{

    font-size:35px;
    font-family:"Playfair Display",serif;

}

nav{

    display:flex;
    gap:40px;

}

nav a{

    text-decoration:none;

    color:#333;

    font-weight:500;

    position:relative;

}

nav a::after{

    content:"";

    position:absolute;

    width:0;

    height:2px;

    left:0;

    bottom:-8px;

    background:var(--dourado);

    transition:.4s;

}

nav a:hover::after{

    width:100%;

}

.icones{

    display:flex;
    gap:20px;
    font-size:20px;

}

.icones i{

    cursor:pointer;
    transition:.4s;

}

.icones i:hover{

    color:var(--dourado);
    transform:scale(1.2);

}

/* Banner Principal */

.hero{

    height:100vh;

    background:center center/cover no-repeat;

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

}

.overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.35);

}

.hero-texto{

    position:relative;

    color:white;

    text-align:center;

    max-width:900px;

    z-index:2;

    animation:fadeHero 1.5s ease;

}

.hero-texto h3{

    font-size:25px;

    color:#FFE7A5;

    letter-spacing:8px;

    text-transform:uppercase;

}

.hero-texto h1{

    font-size:75px;

    font-family:"Playfair Display",serif;

    margin:25px 0;

    line-height:1.1;

}

.hero-texto p{

    font-size:20px;

    margin-bottom:40px;

}

.hero-texto a{

    display:inline-block;

    padding:18px 45px;

    border-radius:40px;

    background:var(--dourado);

    color:white;

    text-decoration:none;

    font-size:18px;

    transition:var(--transicao);

    box-shadow:0 10px 30px rgba(201,168,106,.4);

}

.hero-texto a:hover{

    transform:translateY(-6px);

    background:#b8934d;

    box-shadow:0 20px 40px rgba(201,168,106,.5);

}

@keyframes fadeHero{

    from{
        opacity:0;
        transform:translateY(60px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/* Título das Seções */

.titulo{

    padding:90px 0 50px;

    text-align:center;

}

.titulo h2{

    font-family:"Playfair Display",serif;

    font-size:52px;

    color:var(--dourado);

    position:relative;

}

.titulo h2::after{

    content:"";

    width:90px;

    height:4px;

    background:var(--dourado);

    display:block;

    margin:20px auto;

    border-radius:10px;

}

/* ==========================================
   ATELIÊ EDILENE LIMA
   STYLE.CSS - PARTE 2 (Coleções e Alta Costura)
========================================== */

/* ---------- Coleções ---------- */

.categorias{
    width:90%;
    max-width:1400px;
    margin:0 auto 120px;

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:40px;
}

.card{
    position:relative;
    overflow:hidden;
    border-radius:25px;
    background:#fff;
    box-shadow:var(--sombra);
    transition:.5s;
    cursor:pointer;
}

.card:hover{
    transform:translateY(-15px);
    box-shadow:0 30px 60px rgba(0,0,0,.18);
}

.card img{
    width:100%;
    height:520px;
    object-fit:cover;
    transition:.7s;
}

.card:hover img{
    transform:scale(1.08);
}

.card::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.65),
        rgba(0,0,0,.05)
    );
    opacity:0;
    transition:.5s;
}

.card:hover::before{
    opacity:1;
}

.info{
    position:absolute;
    left:30px;
    bottom:-120px;
    color:#fff;
    transition:.6s;
    z-index:10;
}

.card:hover .info{
    bottom:35px;
}

.info h3{
    font-family:"Playfair Display",serif;
    font-size:40px;
    margin-bottom:10px;
}

.info p{
    font-size:17px;
    opacity:.95;
}

/* ---------- Alta Costura ---------- */

.luxo{

    width:90%;
    max-width:1400px;

    margin:100px auto;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.texto h2{

    font-family:"Playfair Display",serif;

    font-size:58px;

    color:var(--dourado);

    margin-bottom:30px;

}

.texto p{

    color:var(--cinza);

    line-height:1.9;

    font-size:18px;

    margin-bottom:35px;

}

.texto a{

    display:inline-block;

    padding:18px 40px;

    text-decoration:none;

    background:var(--dourado);

    color:#fff;

    border-radius:50px;

    transition:.4s;

    font-weight:600;

}

.texto a:hover{

    background:#b28e53;

    transform:translateY(-5px);

}

.imagem{

    overflow:hidden;

    border-radius:30px;

    box-shadow:var(--sombra);

}

.imagem img{

    width:100%;

    display:block;

    transition:.8s;

}

.imagem:hover img{

    transform:scale(1.06);

}

/* ---------- Faixa Luxuosa ---------- */

.luxo::before{

    content:"";

    position:absolute;

    left:0;

    width:100%;

    height:1px;

    background:#e6d8c1;

}

/* ---------- Responsivo ---------- */

@media(max-width:1000px){

.luxo{

grid-template-columns:1fr;

}

.texto{

text-align:center;

}

.hero-texto h1{

font-size:52px;

}

}

@media(max-width:700px){

.hero-texto h1{

font-size:38px;

}

.hero-texto p{

font-size:16px;

}

.logo h1{

font-size:28px;

}

nav{

display:none;

}

header{

padding:18px 5%;

}

.card img{

height:420px;

}

.texto h2{

font-size:42px;

}

}

/* ==========================================
   STYLE.CSS - PARTE 4
   Instagram • Rodapé • WhatsApp • Extras
==========================================*/

/* ===========================
   INSTAGRAM
=========================== */

.instagram{

    width:90%;
    max-width:1400px;

    margin:120px auto;

    text-align:center;

}

.instagram h2{

    font-family:"Playfair Display",serif;

    font-size:52px;

    color:var(--dourado);

    margin-bottom:60px;

}

.galeria{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:25px;

}

.galeria img{

    width:100%;

    height:320px;

    object-fit:cover;

    border-radius:18px;

    transition:.5s;

    cursor:pointer;

    box-shadow:0 10px 25px rgba(0,0,0,.12);

}

.galeria img:hover{

    transform:scale(1.05) rotate(1deg);

    filter:brightness(1.08);

}

/* ===========================
   RODAPÉ
=========================== */

footer{

    margin-top:120px;

    background:#181818;

    color:#fff;

    text-align:center;

    padding:70px 20px;

}

footer h2{

    font-family:"Playfair Display",serif;

    color:var(--dourado);

    font-size:42px;

    margin-bottom:15px;

}

footer p{

    color:#cfcfcf;

    line-height:1.8;

    margin:10px 0;

}

footer div:last-child{

    margin:30px 0;

}

footer a{

    width:55px;

    height:55px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    margin:0 10px;

    border-radius:50%;

    background:#2d2d2d;

    color:#fff;

    font-size:22px;

    text-decoration:none;

    transition:.4s;

}

footer a:hover{

    background:var(--dourado);

    transform:translateY(-8px);

}

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

.whatsapp{

    position:fixed;

    right:25px;

    bottom:25px;

    width:65px;

    height:65px;

    border-radius:50%;

    background:#25D366;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:32px;

    text-decoration:none;

    box-shadow:0 12px 30px rgba(0,0,0,.25);

    z-index:999;

    transition:.4s;

    animation:pulsar 2s infinite;

}

.whatsapp:hover{

    transform:scale(1.12);

}

@keyframes pulsar{

    0%{

        box-shadow:0 0 0 0 rgba(37,211,102,.7);

    }

    70%{

        box-shadow:0 0 0 18px rgba(37,211,102,0);

    }

    100%{

        box-shadow:0 0 0 0 rgba(37,211,102,0);

    }

}

/* ===========================
   BOTÃO VOLTAR AO TOPO
=========================== */

.topo{

    position:fixed;

    left:25px;

    bottom:25px;

    width:55px;

    height:55px;

    border-radius:50%;

    background:var(--dourado);

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    text-decoration:none;

    font-size:22px;

    transition:.4s;

    box-shadow:0 10px 20px rgba(0,0,0,.2);

}

.topo:hover{

    transform:translateY(-8px);

}

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

.card,
.imagem img,
.galeria img{

    will-change:transform;

}

::selection{

    background:var(--dourado);

    color:#fff;

}

img{

    user-select:none;

}

a{

    transition:.35s;

}

button{

    cursor:pointer;

}

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

@media(max-width:768px){

.instagram h2{

font-size:38px;

}

footer h2{

font-size:32px;

}

.whatsapp{

width:58px;
height:58px;
font-size:28px;

}

.topo{

width:50px;
height:50px;

}

}

/* ===== Partículas Douradas ===== */

.particula{

position:fixed;

bottom:-20px;

width:6px;

height:6px;

background:#d6b06d;

border-radius:50%;

pointer-events:none;

opacity:.5;

animation:subir linear infinite;

z-index:-1;

}

@keyframes subir{

0%{

transform:translateY(0);

opacity:0;

}

20%{

opacity:.6;

}

100%{

transform:translateY(-120vh);

opacity:0;

}

}

/* =================================
   CATÁLOGO DE PRODUTOS
================================= */


.pagina-titulo{

height:450px;

background-image:
linear-gradient(
rgba(0,0,0,.45),
rgba(0,0,0,.45)
),
url("../imagens/banner.png") !important;

background-size:cover;

background-position:center;

display:flex;

flex-direction:column;

justify-content:center;

align-items:center;

text-align:center;

color:white;

padding-top:100px;

}



.pagina-titulo h1{

font-family:"Playfair Display",serif;

font-size:70px;

}



.pagina-titulo p{

font-size:20px;

margin-top:20px;

}




/* FILTROS */


.filtros{

display:flex;

justify-content:center;

gap:20px;

margin:70px 0;

}



.filtros button{

padding:15px 35px;

border:none;

background:white;

border-radius:50px;

font-size:16px;

cursor:pointer;

box-shadow:0 8px 20px rgba(0,0,0,.1);

transition:.4s;

}



.filtros button:hover,
.filtros .ativo{

background:var(--dourado);

color:white;

}




/* PRODUTOS */


.produtos{

width:90%;

max-width:1400px;

margin:auto;

display:grid;

grid-template-columns:

repeat(auto-fit,minmax(300px,1fr));

gap:40px;

}



.produto{

background:white;

border-radius:25px;

overflow:hidden;

box-shadow:var(--sombra);

transition:.5s;

}



.produto:hover{

transform:translateY(-15px);

}



.produto img{

width:100%;

height:500px;

object-fit:cover;

transition:.6s;

}



.produto:hover img{

transform:scale(1.08);

}




.produto-info{

padding:30px;

text-align:center;

}



.produto-info h2{

font-family:"Playfair Display",serif;

font-size:32px;

color:var(--dourado);

}



.produto-info p{

color:#777;

margin:15px 0;

}



.produto-info span{

display:block;

font-size:22px;

font-weight:bold;

margin-bottom:25px;

}



.produto-info a{

display:inline-block;

padding:14px 30px;

background:#222;

color:white;

text-decoration:none;

border-radius:40px;

transition:.4s;

}



.produto-info a:hover{

background:var(--dourado);

}




@media(max-width:700px){

.pagina-titulo h1{

font-size:45px;

}


.filtros{

flex-wrap:wrap;

}

}

/* ======================================
   PÁGINA DO PRODUTO
====================================== */


.produto-detalhe{

width:90%;

max-width:1400px;

margin:180px auto 100px;

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:start;

}



.imagem-principal{

width:100%;

height:700px;

object-fit:cover;

border-radius:30px;

box-shadow:var(--sombra);

}




.miniaturas{

display:flex;

gap:20px;

margin-top:25px;

}



.miniaturas img{

width:100px;

height:120px;

object-fit:cover;

border-radius:15px;

cursor:pointer;

transition:.4s;

}



.miniaturas img:hover{

transform:scale(1.1);

}




.informacoes-produto h1{

font-family:"Playfair Display",serif;

font-size:60px;

color:var(--dourado);

}



.estrelas{

color:#d5aa55;

font-size:25px;

margin:20px 0;

}



.informacoes-produto h2{

font-size:35px;

margin-bottom:30px;

}



.informacoes-produto p{

color:#666;

line-height:1.8;

font-size:18px;

}




.opcao{

margin-top:35px;

}



.opcao h3{

margin-bottom:15px;

}



.opcao button{

width:50px;

height:45px;

border:1px solid #ddd;

background:white;

border-radius:10px;

margin-right:10px;

cursor:pointer;

transition:.3s;

}



.opcao button:hover{

background:var(--dourado);

color:white;

}




.cores span{

display:inline-block;

width:40px;

height:40px;

border-radius:50%;

margin-right:15px;

cursor:pointer;

border:2px solid #ddd;

}



.branco{

background:white;

}



.nude{

background:#d8b49a;

}



.champagne{

background:#e8d2a8;

}





.comprar{

margin-top:40px;

width:100%;

padding:20px;

border:none;

background:var(--dourado);

color:white;

font-size:18px;

border-radius:50px;

cursor:pointer;

transition:.4s;

}



.comprar:hover{

transform:translateY(-5px);

background:#a88348;

}




.prova{

display:block;

margin-top:20px;

padding:18px;

text-align:center;

border-radius:50px;

background:#25D366;

color:white;

text-decoration:none;

font-size:18px;

}




.descricao{

width:80%;

margin:80px auto;

text-align:center;

}



.descricao h2{

font-family:"Playfair Display",serif;

font-size:45px;

color:var(--dourado);

margin-bottom:25px;

}




@media(max-width:900px){


.produto-detalhe{

grid-template-columns:1fr;

}


.informacoes-produto h1{

font-size:42px;

}


.produto-detalhe{

margin-top:130px;

}


}

/* ==================================
   CARRINHO
================================== */


.carrinho{

width:90%;

max-width:1200px;

margin:170px auto 100px;

}



.carrinho h1{

font-family:"Playfair Display",serif;

font-size:60px;

color:var(--dourado);

text-align:center;

margin-bottom:60px;

}



.item-carrinho{

display:flex;

align-items:center;

justify-content:space-between;

background:white;

padding:25px;

border-radius:20px;

margin-bottom:25px;

box-shadow:var(--sombra);

}



.item-carrinho img{

width:130px;

height:150px;

object-fit:cover;

border-radius:15px;

}



.item-info h2{

font-family:"Playfair Display",serif;

color:var(--dourado);

}



.quantidade button{

width:35px;

height:35px;

border:none;

background:#eee;

border-radius:50%;

cursor:pointer;

}



.remover{

background:#b33;

color:white;

border:none;

padding:10px 20px;

border-radius:30px;

cursor:pointer;

}



.resumo{

background:#fff;

padding:40px;

margin-top:50px;

border-radius:25px;

box-shadow:var(--sombra);

text-align:right;

}



.resumo h2{

font-family:"Playfair Display",serif;

font-size:35px;

}



.finalizar{

display:inline-block;

margin-top:30px;

padding:18px 45px;

background:var(--dourado);

color:white;

text-decoration:none;

border-radius:50px;

}



@media(max-width:700px){

.item-carrinho{

flex-direction:column;

gap:20px;

}

}

/* =====================================
   CHECKOUT
===================================== */


.checkout{

width:90%;

max-width:1300px;

margin:170px auto 100px;

}


.checkout>h1{

font-family:"Playfair Display",serif;

font-size:60px;

color:var(--dourado);

text-align:center;

margin-bottom:70px;

}



.checkout-grid{

display:grid;

grid-template-columns:1fr 400px;

gap:50px;

}



#formulario{

background:white;

padding:45px;

border-radius:30px;

box-shadow:var(--sombra);

}



#formulario h2{

font-family:"Playfair Display",serif;

color:var(--dourado);

margin:25px 0;

font-size:30px;

}



#formulario input,
#formulario select{

width:100%;

padding:18px;

border-radius:15px;

border:1px solid #ddd;

margin-bottom:20px;

font-size:16px;

outline:none;

}



#formulario input:focus,
#formulario select:focus{

border-color:var(--dourado);

}



.resumo-checkout{

background:white;

height:max-content;

padding:35px;

border-radius:30px;

box-shadow:var(--sombra);

}



.resumo-checkout h2{

font-family:"Playfair Display",serif;

font-size:35px;

color:var(--dourado);

}



.resumo-checkout h3{

margin-top:30px;

font-size:25px;

}



@media(max-width:900px){


.checkout-grid{

grid-template-columns:1fr;

}


.checkout>h1{

font-size:42px;

}

}

/* =====================================
   PAINEL ADMINISTRATIVO
===================================== */


.admin{

width:90%;

max-width:1200px;

margin:170px auto;

}



.admin>h1{

font-family:"Playfair Display",serif;

font-size:60px;

color:var(--dourado);

text-align:center;

margin-bottom:60px;

}



.form-admin{

background:white;

padding:40px;

border-radius:30px;

box-shadow:var(--sombra);

}



.form-admin h2{

font-family:"Playfair Display",serif;

font-size:35px;

color:var(--dourado);

margin-bottom:30px;

}



.form-admin input{

width:100%;

padding:18px;

border-radius:15px;

border:1px solid #ddd;

margin-bottom:20px;

}



.form-admin button{

padding:18px 40px;

background:var(--dourado);

border:none;

color:white;

border-radius:40px;

cursor:pointer;

font-size:17px;

}



.titulo-admin{

font-family:"Playfair Display",serif;

font-size:40px;

margin:70px 0 30px;

}



.produto-admin{

display:flex;

align-items:center;

justify-content:space-between;

background:white;

padding:25px;

border-radius:20px;

margin-bottom:20px;

box-shadow:var(--sombra);

}



.produto-admin img{

width:100px;

height:120px;

object-fit:cover;

border-radius:15px;

}



.produto-admin button{

background:#a33;

color:white;

border:none;

padding:12px 20px;

border-radius:30px;

cursor:pointer;

}



@media(max-width:700px){

.produto-admin{

flex-direction:column;

gap:20px;

}

}

.icones a {
    color: #222;
    text-decoration: none;
}

.icones a:visited {
    color: #222;
}

.icones a:hover {
    color: #222;
}

.icones a:active {
    color: #222;
}

/* ==========================================
   CORREÇÕES E MELHORIAS
   ATELIÊ EDILENE LIMA
========================================== */


/* ===============================
   CONTADOR DO CARRINHO
=============================== */

.icones a {
    position: relative;
}

.contador-carrinho {
    position: absolute;

    top: -10px;
    right: -12px;

    min-width: 19px;
    height: 19px;

    padding: 0 5px;

    display: none;

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

    background: #b8934d;
    color: #fff;

    border-radius: 50%;

    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 600;

    border: 2px solid #fff;
}


/* ===============================
   NOTIFICAÇÃO
=============================== */

.notificacao {
    position: fixed;

    right: 25px;
    bottom: 105px;

    z-index: 10000;

    max-width: 350px;

    padding: 16px 22px;

    background: #222;
    color: #fff;

    border-left: 4px solid var(--dourado);

    border-radius: 12px;

    box-shadow: 0 15px 40px rgba(0,0,0,.2);

    opacity: 0;

    transform: translateY(20px);

    pointer-events: none;

    transition: .4s ease;
}

.notificacao.mostrar {
    opacity: 1;
    transform: translateY(0);
}


/* ===============================
   PRODUTO
=============================== */

.categoria-produto {
    display: inline-block;

    margin-bottom: 12px;

    color: var(--dourado);

    text-transform: uppercase;

    letter-spacing: 3px;

    font-size: 13px;
    font-weight: 600;
}


.opcoes-tamanho {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}


.opcao button.selecionado {
    background: var(--dourado);
    color: #fff;
    border-color: var(--dourado);
    transform: translateY(-2px);
}


.cores span {
    position: relative;

    transition: .3s;
}


.cores span.selecionada {
    border-color: var(--dourado);

    box-shadow:
        0 0 0 3px var(--champagne),
        0 0 0 5px var(--dourado);

    transform: scale(1.08);
}


/* ===============================
   MINIATURAS
=============================== */

.miniaturas img {
    border: 2px solid transparent;
}

.miniaturas img.ativa {
    border-color: var(--dourado);

    box-shadow:
        0 5px 15px rgba(201,168,106,.25);
}


/* ===============================
   CARRINHO
=============================== */

.quantidade {
    display: flex;
    align-items: center;
    gap: 12px;
}

.quantidade span {
    min-width: 25px;
    text-align: center;
    font-weight: 600;
}

.subtotal {
    min-width: 120px;
    text-align: right;
}


.carrinho-vazio {
    background: #fff;

    padding: 70px 30px;

    text-align: center;

    border-radius: 25px;

    box-shadow: var(--sombra);
}


.carrinho-vazio i {
    font-size: 55px;

    color: var(--dourado);

    margin-bottom: 20px;
}


.carrinho-vazio h2 {
    font-family: "Playfair Display", serif;

    font-size: 32px;

    margin-bottom: 10px;
}


.carrinho-vazio p {
    color: #777;

    margin-bottom: 25px;
}


.carrinho-vazio a {
    display: inline-block;

    padding: 15px 30px;

    background: var(--dourado);

    color: #fff;

    text-decoration: none;

    border-radius: 50px;
}


/* ===============================
   PARTÍCULAS
=============================== */

.particula {
    z-index: 0;
}


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

.comprar {
    position: relative;
    z-index: 2;
}


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

@media(max-width: 768px) {

    header {
        padding: 15px 5% !important;
    }

    .logo h2 {
        font-size: 13px;
        letter-spacing: 3px;
    }

    .logo h1 {
        font-size: 23px;
    }

    .icones {
        gap: 14px;
        font-size: 18px;
    }

    .produto-detalhe {
        width: 92%;
        margin-top: 120px;
        gap: 40px;
    }

    .imagem-principal {
        height: 500px;
    }

    .miniaturas {
        gap: 10px;
    }

    .miniaturas img {
        width: 75px;
        height: 90px;
    }

    .informacoes-produto h1 {
        font-size: 40px;
    }

    .informacoes-produto h2 {
        font-size: 28px;
    }

    .informacoes-produto p {
        font-size: 16px;
    }

    .item-carrinho {
        padding: 20px;
        text-align: center;
    }

    .item-carrinho img {
        width: 150px;
        height: 180px;
    }

    .item-info {
        width: 100%;
    }

    .subtotal {
        min-width: auto;
    }

    .notificacao {
        right: 15px;
        left: 15px;
        bottom: 90px;
        max-width: none;
    }

}

/* ===== AJUSTES DO SITE-VITRINE ===== */
.botao-link{display:block;text-align:center;text-decoration:none}
.secundario{background:#222!important;margin-top:15px}
.favoritar{border:none;cursor:pointer}
.produto-info .favoritar{
  display:inline-block;margin-top:12px;padding:12px 24px;border-radius:40px;
  background:#f2eee8;color:#333;font-family:"Poppins",sans-serif;
}
.produto-info .favoritar:hover{background:var(--dourado);color:#fff}
.pesquisa{width:90%;max-width:1000px;margin:170px auto 80px;text-align:center}
.pesquisa h1{font-family:"Playfair Display",serif;color:var(--dourado);font-size:55px}
.caixa-pesquisa{margin:30px auto 50px}
.caixa-pesquisa input{width:100%;max-width:650px;padding:18px;border:1px solid #ddd;border-radius:40px}
.lista{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:30px}
.item{background:#fff;border-radius:20px;padding:20px;box-shadow:var(--sombra)}
.item img{width:100%;height:300px;object-fit:cover;border-radius:15px}
.item a,.botao-principal{display:inline-block;margin-top:15px;padding:13px 25px;background:var(--dourado);color:#fff;text-decoration:none;border-radius:40px}
.favoritos{width:90%;max-width:1200px;margin:170px auto 80px}
.favoritos h1{text-align:center;font-family:"Playfair Display",serif;color:var(--dourado);font-size:55px}
.favoritos>p{text-align:center;margin:15px auto 50px;max-width:700px}
.lista-favoritos{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:30px}
.card-favorito{background:#fff;border-radius:20px;padding:20px;box-shadow:var(--sombra)}
.card-favorito img{width:100%;height:340px;object-fit:cover;border-radius:15px}
.card-favorito a,.card-favorito button{display:inline-block;margin-top:12px;padding:12px 18px;border:none;border-radius:30px;text-decoration:none;cursor:pointer}
.card-favorito a{background:var(--dourado);color:#fff}.card-favorito button{background:#eee}
.processo-atendimento{width:90%;max-width:1200px;margin:80px auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:25px}
.passo{background:#fff;padding:35px;border-radius:25px;box-shadow:var(--sombra)}
.passo strong{display:flex;width:50px;height:50px;border-radius:50%;background:var(--dourado);color:#fff;align-items:center;justify-content:center;font-size:22px;margin-bottom:20px}
.passo h2{font-family:"Playfair Display",serif;margin-bottom:12px}
#formularioAtendimento textarea{
  width:100%;min-height:150px;padding:18px;border-radius:15px;border:1px solid #ddd;
  margin-bottom:20px;font-family:"Poppins",sans-serif;resize:vertical;
}


/* CONEXÃO ENTRE TODAS AS PÁGINAS */
.menu-principal {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 18px;
}
.menu-principal a { text-decoration: none; }
.categorias .card { display: block; text-decoration: none; color: inherit; }
.categorias .card .info span { display: inline-block; margin-top: 8px; font-weight: 600; }
.atalhos-site {
  width: min(1100px, 92%);
  margin: 0 auto 70px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.atalhos-site a {
  text-decoration: none;
  color: inherit;
  padding: 28px 22px;
  border: 1px solid #eee;
  border-radius: 16px;
  background: #fff;
  transition: .25s;
}
.atalhos-site a:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,.08); }
.atalhos-site i { font-size: 26px; margin-bottom: 12px; }
.atalhos-site h3 { margin: 5px 0; }
.atalhos-site p { margin: 0; opacity: .75; }
.footer-conteudo {
  width: min(1150px, 92%);
  margin: auto;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 35px;
}
.footer-conteudo > div { display: flex; flex-direction: column; gap: 8px; }
.footer-conteudo a { text-decoration: none; color: inherit; }
.footer-conteudo h2, .footer-conteudo h3 { margin-top: 0; }
.botao-footer { margin-top: 8px; font-weight: 600; }
.copyright { margin-top: 35px; text-align: center; }
@media (max-width: 900px) {
  .footer-conteudo { grid-template-columns: repeat(2, 1fr); }
  .atalhos-site { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .menu-principal { gap: 10px; }
  .footer-conteudo, .atalhos-site { grid-template-columns: 1fr; }
}


.site-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  flex-wrap:wrap;
}
.site-nav a{
  text-decoration:none;
}

/* ==========================================
   AJUSTE FINAL DO RODAPÉ
   CENTRALIZAR TEXTO + REDES SOCIAIS
========================================== */

footer {
    margin-top: 120px;
    background: #181818;
    color: #fff;
    padding: 55px 20px;
    text-align: center;
}

/* Conjunto inteiro do rodapé */
.footer-conteudo {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;

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

    gap: 70px;
}

/* Área do texto */
.footer-conteudo > div:first-child {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;

    width: 450px;
}

/* Título */
.footer-conteudo h2 {
    font-family: "Playfair Display", serif;
    color: var(--dourado);
    font-size: 42px;
    margin-bottom: 15px;
}

/* Textos */
.footer-conteudo p {
    color: #cfcfcf;
    line-height: 1.8;
    margin: 10px 0;
}

/* Redes sociais */
.footer-conteudo .redes-sociais {
    display: flex;
    flex-direction: column;

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

    gap: 10px;

    width: 55px;
}

/* Bolinhas */
.footer-conteudo .redes-sociais a {
    width: 55px;
    height: 55px;

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

    margin: 0;

    border-radius: 50%;

    background: #2d2d2d;
    color: #fff;

    font-size: 22px;
    text-decoration: none;

    transition: .4s;
}

.footer-conteudo .redes-sociais a:hover {
    background: var(--dourado);
    transform: translateY(-5px);
}

/* Copyright */
footer .copyright {
    margin-top: 40px;
    text-align: center;
}

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

@media (max-width: 700px) {

    .footer-conteudo {
        flex-direction: column;
        gap: 25px;
    }

    .footer-conteudo > div:first-child {
        width: 100%;
    }

    .footer-conteudo .redes-sociais {
        flex-direction: row;
        width: auto;
    }

    .footer-conteudo h2 {
        font-size: 32px;
    }

}

/* WordPress compatibility */
.admin-bar header{top:32px;}
@media screen and (max-width:782px){.admin-bar header{top:46px;}}
body{margin:0;}
.site-main{padding-top:0;}
img{max-width:100%;}


/* =========================================================
   MELHORIAS 2026 — MOBILE, ANIMAÇÕES E GALERIA
   As regras de desktop existentes são preservadas.
========================================================= */

/* Card: destaque escuro somente na parte inferior durante o hover */
.card::before{
    background:linear-gradient(
        to top,
        rgba(0,0,0,.78) 0%,
        rgba(0,0,0,.48) 28%,
        rgba(0,0,0,0) 65%
    );
}

.card .info{
    text-shadow:0 2px 12px rgba(0,0,0,.45);
}

/* Menu mobile */
.menu-mobile-toggle{
    display:none;
    border:0;
    background:transparent;
    color:#222;
    font-size:23px;
    padding:8px;
    line-height:1;
}

.menu-mobile-toggle i{
    pointer-events:none;
}

/* Animações de entrada */
html.js .reveal{
    opacity:0;
    transform:translateY(35px);
    transition:opacity .75s ease, transform .75s ease;
}

html.js .reveal.reveal-visivel{
    opacity:1;
    transform:none;
}

@media (prefers-reduced-motion: reduce){
    html.js .reveal{
        opacity:1;
        transform:none;
        transition:none;
    }
    *, *::before, *::after{
        scroll-behavior:auto !important;
        animation-duration:.01ms !important;
        animation-iteration-count:1 !important;
        transition-duration:.01ms !important;
    }
}

/* =========================================================
   PÁGINA DE DETALHES / GALERIA DO VESTIDO
========================================================= */

.produto-galeria{
    min-width:0;
}

.imagem-principal-wrap{
    position:relative;
}

.imagem-principal{
    display:block;
}

.galeria-seta{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:48px;
    height:48px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.9);
    color:#222;
    font-size:34px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 8px 25px rgba(0,0,0,.15);
    transition:.3s ease;
    z-index:2;
}

.galeria-seta:hover{
    background:var(--dourado);
    color:#fff;
    transform:translateY(-50%) scale(1.08);
}

.galeria-anterior{left:18px;}
.galeria-proxima{right:18px;}

.miniaturas{
    overflow-x:auto;
    padding:4px 4px 8px;
}

.miniatura-btn{
    flex:0 0 auto;
    padding:0;
    border:2px solid transparent;
    background:transparent;
    border-radius:15px;
    cursor:pointer;
    transition:.3s ease;
}

.miniatura-btn img{
    display:block;
}

.miniatura-btn.ativa{
    border-color:var(--dourado);
    box-shadow:0 5px 15px rgba(201,168,106,.25);
}

.miniatura-btn:hover{
    transform:translateY(-3px);
}

.descricao-produto{
    color:#666;
    line-height:1.9;
    font-size:18px;
}

.descricao-produto p{
    margin:0 0 15px;
}

.voltar-catalogo{
    display:inline-block;
    margin-top:18px;
    color:#555;
    text-decoration:none;
    font-weight:500;
}

.voltar-catalogo:hover{
    color:var(--dourado);
}

.produto-info .ver-detalhes,
.lista .ver-detalhes{
    background:var(--dourado);
    margin-right:6px;
}

.produto-info .ver-detalhes:hover,
.lista .ver-detalhes:hover{
    background:#a88348;
}

.produto-info a + a{
    margin-top:10px;
}

/* =========================================================
   CELULAR — layout completo sem alterar desktop
========================================================= */

@media (max-width:700px){

    header{
        min-height:72px;
        padding:12px 5% !important;
        gap:10px;
    }

    .logo h2{
        font-size:11px;
        letter-spacing:3px;
    }

    .logo h1{
        font-size:22px;
    }

    .menu-mobile-toggle{
        display:block;
        margin-left:auto;
    }

    .site-nav{
        position:absolute;
        top:100%;
        left:4%;
        right:4%;
        display:flex !important;
        flex-direction:column;
        align-items:stretch;
        gap:0;
        padding:8px;
        background:rgba(255,255,255,.98);
        border-radius:0 0 20px 20px;
        box-shadow:0 18px 40px rgba(0,0,0,.12);
        opacity:0;
        visibility:hidden;
        transform:translateY(-8px);
        transition:.3s ease;
    }

    header.menu-aberto .site-nav{
        opacity:1;
        visibility:visible;
        transform:translateY(0);
    }

    .site-nav a{
        padding:13px 15px;
        border-radius:12px;
    }

    .site-nav a:hover{
        background:var(--champagne);
    }

    .icones{
        gap:12px;
        font-size:18px;
    }

    .hero{
        min-height:720px;
        height:100svh;
        padding:95px 7% 45px;
    }

    .hero-texto{
        width:100%;
    }

    .hero-texto h3{
        font-size:15px;
        letter-spacing:4px;
    }

    .hero-texto h1{
        font-size:36px;
        line-height:1.15;
        margin:18px 0;
    }

    .hero-texto p{
        font-size:15px;
        line-height:1.7;
        margin-bottom:28px;
    }

    .hero-texto a{
        padding:15px 28px;
        font-size:15px;
    }

    .titulo{
        padding:65px 6% 35px;
    }

    .titulo h2{
        font-size:35px;
    }

    .categorias{
        width:90%;
        grid-template-columns:1fr;
        gap:24px;
        margin-bottom:75px;
    }

    .card{
        border-radius:20px;
    }

    .card img{
        height:430px;
    }

    /* No toque: no celular não existe hover. O conteúdo fica acessível. */
    .card::before{
        opacity:1;
    }

    .card .info,
    .card:hover .info{
        left:22px;
        right:22px;
        bottom:22px;
    }

    .info h3{
        font-size:32px;
    }

    .info p{
        font-size:14px;
        line-height:1.55;
    }

    .luxo{
        width:90%;
        gap:35px;
        margin:70px auto;
    }

    .texto h2{
        font-size:38px;
        line-height:1.15;
    }

    .texto p{
        font-size:15px;
        line-height:1.75;
    }

    .texto a{
        padding:15px 27px;
        font-size:15px;
    }

    .pagina-titulo{
        height:330px;
        padding:90px 6% 25px;
    }

    .pagina-titulo h1{
        font-size:40px;
        line-height:1.1;
    }

    .pagina-titulo p{
        font-size:15px;
        line-height:1.6;
    }

    .filtros{
        width:90%;
        margin:40px auto;
        gap:10px;
    }

    .filtros button{
        padding:12px 20px;
        font-size:14px;
    }

    .produtos{
        width:90%;
        grid-template-columns:1fr;
        gap:25px;
    }

    .produto{
        border-radius:20px;
    }

    .produto img{
        height:440px;
    }

    .produto-info{
        padding:23px 18px;
    }

    .produto-info h2{
        font-size:28px;
    }

    .produto-info span{
        font-size:19px;
    }

    .produto-info a{
        display:block;
        width:100%;
        margin-left:0;
    }

    .produto-info .ver-detalhes{
        margin-right:0;
    }

    /* Detalhes do vestido */
    .produto-detalhe{
        width:90%;
        margin:60px auto 70px;
        gap:30px;
    }

    .imagem-principal{
        height:auto;
        max-height:620px;
        min-height:390px;
        object-fit:cover;
        border-radius:22px;
    }

    .galeria-seta{
        width:42px;
        height:42px;
        font-size:29px;
    }

    .galeria-anterior{left:10px;}
    .galeria-proxima{right:10px;}

    .miniaturas{
        gap:8px;
        margin-top:15px;
    }

    .miniatura-btn img,
    .miniaturas img{
        width:68px;
        height:82px;
        border-radius:10px;
    }

    .informacoes-produto h1{
        font-size:39px;
        line-height:1.1;
    }

    .informacoes-produto h2{
        font-size:25px;
        margin-bottom:20px;
    }

    .descricao-produto{
        font-size:15px;
        line-height:1.75;
    }

    .prova{
        font-size:15px;
        padding:16px 18px;
    }

    .voltar-catalogo{
        display:block;
        text-align:center;
        padding:10px;
    }

    .pesquisa{
        width:90%;
        margin:120px auto 60px;
    }

    .pesquisa h1,
    .favoritos h1{
        font-size:40px;
    }

    .lista{
        grid-template-columns:1fr;
    }

    footer{
        margin-top:75px;
        padding:45px 18px;
    }

    .footer-conteudo{
        width:100%;
    }

}

@media (min-width:701px){
    .site-nav{
        flex-wrap:wrap;
    }
}

/* Conta do cliente */
.conta-page{max-width:1100px!important}
.conta-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:1000px;margin:0 auto}
.conta-card{background:#fff;padding:35px;border-radius:18px;box-shadow:0 12px 35px rgba(0,0,0,.08)}
.conta-card h2{font-family:"Playfair Display",serif;color:var(--dourado);margin-bottom:22px}
.conta-card input{width:100%;box-sizing:border-box;margin-bottom:14px}
.conta-dupla{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.conta-acoes{display:flex;gap:15px;align-items:center;flex-wrap:wrap}
.conta-ajuda,.conta-banner{color:#666;line-height:1.6}
.conta-erro{padding:12px 15px;background:#fff1f1;color:#9b3333;border-radius:8px}
.conta-banner{max-width:850px;margin:0 auto 30px;text-align:center}
.conta-banner a{color:var(--dourado);font-weight:700}
@media(max-width:700px){
 .conta-grid{grid-template-columns:1fr;gap:20px}
 .conta-card{padding:24px 18px}
 .conta-dupla{grid-template-columns:1fr}
 .conta-acoes{flex-direction:column;align-items:stretch}
}

/* Perfil do cliente */
.conta-grid-perfil{grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr)}
.conta-resumo{margin:22px 0;padding:18px 20px;background:#faf8f4;border-radius:12px;border:1px solid rgba(0,0,0,.06)}
.conta-resumo p{margin:8px 0;color:#555;line-height:1.5}
.conta-label{display:block;margin:3px 0 8px;font-weight:600;color:#333}
.conta-label span{font-weight:400;color:#888;font-size:.9em}
.conta-card-editar{scroll-margin-top:110px}
.conta-ok{padding:12px 15px;background:#eef9f0;color:#286b37;border-radius:8px;margin:0 auto 22px;max-width:1000px}
@media(max-width:700px){
 .conta-grid-perfil{grid-template-columns:1fr}
}


/* =====================================
   PAINEL EXCLUSIVO DO ATELIÊ
===================================== */
.admin-acesso{width:90%;max-width:560px;margin:90px auto 120px}.admin-card{background:#fff;border-radius:28px;padding:45px;box-shadow:var(--sombra);text-align:center}.admin-icone{width:72px;height:72px;border-radius:50%;margin:0 auto 20px;background:#f5ead6;color:var(--dourado);display:flex;align-items:center;justify-content:center;font-size:28px}.admin-card h2,.admin-topo h2,.admin-lista-titulo h2{font-family:"Playfair Display",serif;color:var(--dourado);font-size:36px;margin:10px 0 15px}.admin-card p,.admin-topo p,.admin-lista-titulo span{color:#777;line-height:1.7}.admin-card form{text-align:left;margin-top:30px}.admin-card label,.admin-formulario label{display:block;font-weight:600;margin:18px 0 8px;color:#333}.admin-card input,.admin-formulario input,.admin-formulario select,.admin-formulario textarea{width:100%;box-sizing:border-box;border:1px solid #ddd;border-radius:13px;padding:15px;font:inherit;background:#fff;outline:none}.admin-card input:focus,.admin-formulario input:focus,.admin-formulario select:focus,.admin-formulario textarea:focus{border-color:var(--dourado)}.admin-botao{border:0;border-radius:40px;padding:16px 28px;background:var(--dourado);color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:.3s}.admin-botao:hover{transform:translateY(-2px);background:#a88348}.admin-card .admin-botao{width:100%;margin-top:22px}.admin-card small{display:block;color:#999;margin-top:22px;line-height:1.6}.admin-alerta{width:90%;max-width:1200px;margin:25px auto;padding:16px 20px;border-radius:14px;font-weight:600}.admin-alerta.erro{background:#fff0f0;color:#a33}.admin-alerta.sucesso{background:#edf9f0;color:#26733a}.admin-painel{width:90%;max-width:1200px;margin:90px auto 120px}.admin-topo{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:35px}.admin-sair{padding:13px 22px;border:1px solid #ddd;border-radius:30px;text-decoration:none;color:#555;background:#fff}.admin-formulario{background:#fff;padding:40px;border-radius:28px;box-shadow:var(--sombra)}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px}.admin-campo-grande{grid-column:1/-1}.admin-formulario textarea{resize:vertical}.admin-formulario input[type=file]{padding:12px}.admin-formulario small{display:block;color:#888;margin-top:8px}.admin-formulario>.admin-botao{margin-top:25px}.admin-lista{margin-top:70px}.admin-lista-titulo{margin-bottom:25px}.admin-tabela{display:flex;flex-direction:column;gap:12px}.admin-item{background:#fff;border-radius:18px;padding:14px;display:flex;align-items:center;gap:18px;box-shadow:0 8px 25px rgba(0,0,0,.07)}.admin-item-img img{width:70px;height:85px;object-fit:cover;border-radius:10px;display:block}.admin-item-info{flex:1;display:flex;flex-direction:column;gap:5px}.admin-item-info strong{font-size:18px}.admin-item-info span{color:#888}.admin-ver,.admin-excluir{border:0;border-radius:25px;padding:10px 17px;text-decoration:none;cursor:pointer;font:inherit}.admin-ver{background:#222;color:#fff}.admin-excluir{background:#f3e3e3;color:#9a3030}.admin-vazio{background:#fff;padding:25px;border-radius:18px;color:#777}@media(max-width:700px){.admin-grid{grid-template-columns:1fr}.admin-campo-grande{grid-column:auto}.admin-topo{align-items:flex-start;flex-direction:column}.admin-formulario{padding:25px}.admin-item{flex-wrap:wrap}.admin-item-info{min-width:150px}}

/* Correção: títulos e informações dos cards ficam ocultos até o hover */
.categorias .card .info{
    bottom:-160px !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none;
    transition:bottom .6s ease, opacity .4s ease, visibility 0s linear .6s;
}

.categorias .card:hover .info{
    bottom:35px !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto;
    transition:bottom .6s ease, opacity .4s ease, visibility 0s linear 0s;
}

@media (max-width:782px){
    .categorias .card .info,
    .categorias .card:hover .info{
        bottom:22px !important;
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto;
    }
}

/* Ações administrativas no cabeçalho */
.site-nav .nav-admin-link{
  font-weight:700;
  color:var(--dourado);
}
.admin-senha-card{
  margin-top:70px;
  scroll-margin-top:120px;
}
.admin-formulario-senha{
  margin-top:20px;
}
.admin-formulario-senha .admin-botao{
  margin-top:25px;
}
@media(max-width:900px){
  .site-nav .nav-admin-link{
    display:block;
  }
}
