/* ===== Design tokens ===== */
:root{
  --tinta:#141210;        /* preto quente */
  --papel:#f5f1ea;        /* off-white */
  --ouro:#c9a24a;         /* dourado das placas */
  --ouro-claro:#e6c873;
  --cinza:#6e675e;
  --linha:rgba(20,18,16,.12);
  --raio:18px;
  --serif:"Fraunces",Georgia,serif;
  --sans:"Manrope",system-ui,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--papel);color:var(--tinta);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}

/* ===== Botões ===== */
.btn{display:inline-block;background:var(--tinta);color:var(--papel);padding:.95rem 1.6rem;border-radius:999px;font-weight:700;font-size:.95rem;transition:transform .3s var(--ease),background .3s}
.btn:hover{transform:translateY(-2px);background:#2a2520}
.btn-linha{background:transparent;color:var(--tinta);border:1px solid var(--tinta)}
.btn-linha:hover{background:var(--tinta);color:var(--papel)}
.btn-sm{padding:.55rem 1.1rem}

/* ===== Cabeçalho ===== */
.topo{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:1rem clamp(1.2rem,5vw,4rem);background:rgba(245,241,234,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--linha)}
.marca{font-family:var(--serif);font-size:1.6rem;font-weight:600}
.marca span{color:#d6312a}
.marca small{font-family:var(--sans);font-size:.8rem;color:var(--cinza);margin-left:.3rem}
.topo nav{display:flex;gap:1.6rem;align-items:center;font-size:.92rem}
.topo nav a:not(.btn):hover{color:var(--ouro)}

/* ===== Hero ===== */
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:normal;padding:clamp(3rem,7vw,3rem) clamp(1.2rem,5vw,4rem)}
.selo{display:inline-block;color:var(--ouro);font-weight:700;letter-spacing:.08em;font-size:.8rem;margin-bottom:1.2rem}
h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.8rem,6.5vw,5.4rem);line-height:1.02;letter-spacing:-.02em}
h1 em{color:var(--ouro);font-style:italic}
.lead{max-width:34rem;margin:1.5rem 0 2rem;color:var(--cinza);font-size:1.08rem}
.acoes{display:flex;gap:.8rem;flex-wrap:wrap}
.hero-foto{position:relative;border-radius:calc(var(--raio)*1.5);overflow:hidden;box-shadow:0 40px 80px -30px rgba(20,18,16,.45)}
.hero-foto img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
/* Pulso NFC animado (só transform/opacity = leve) */
.nfc-pulso{position:absolute;right:22%;top:62%;width:70px;height:70px;border-radius:50%;border:2px solid var(--ouro-claro);animation:pulso 2.4s var(--ease) infinite}
@keyframes pulso{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.2);opacity:0}}
.hero-texto{
    
    margin-left: 5rem;
}

/* ===== Seções ===== */
.secao{padding:clamp(4rem,8vw,3rem) clamp(1.2rem,5vw,4rem)}
.secao-topo{margin-bottom:3rem}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;color:var(--ouro);font-weight:700}
h2{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,4vw,3.2rem);line-height:1.1;letter-spacing:-.01em;margin-top:.4rem}
h3{font-size:1.1rem;margin-bottom:.3rem}

/* Grade da vitrine */
.grade{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.card{position:relative;border-radius:var(--raio);overflow:hidden;background:#e8e2d8;cursor:zoom-in}
.card.largo{grid-column:span 2}
.card img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;transition:transform .8s var(--ease)}
.card.largo img{aspect-ratio:2/1}
.card:hover img{transform:scale(1.05)}
.card figcaption{position:absolute;left:1rem;bottom:1rem;background:rgba(245,241,234,.92);padding:.35rem .8rem;border-radius:999px;font-size:.8rem;font-weight:700}

/* Funções (fundo escuro) */
.escuro{background:var(--tinta);color:var(--papel)}
.funcoes{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(245,241,234,.15)}
.funcoes li{padding:2rem 1.5rem 2rem 0;border-bottom:1px solid rgba(245,241,234,.15)}
.funcoes b{font-family:var(--serif);color:var(--ouro);font-weight:400;font-size:1.2rem;display:block;margin-bottom:1rem}
.funcoes p{color:rgba(245,241,234,.65)}

/* Passos */
.passos{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.passos li{padding:2rem;border:1px solid var(--linha);border-radius:var(--raio);background:#fff}
.passos span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ouro);color:var(--tinta);font-weight:700;margin-bottom:1.2rem}
.passos p{color:var(--cinza)}

/* CTA */
.cta{margin:0 clamp(1.2rem,5vw,4rem) 5rem;padding:clamp(3rem,6vw,5rem);border-radius:calc(var(--raio)*1.6);background:linear-gradient(135deg,#1d1a16,#3a2f1d);color:var(--papel);text-align:center}
.cta h2{margin-bottom:2rem}
.cta .btn{background:var(--ouro);color:var(--tinta)}
.cta .btn:hover{background:var(--ouro-claro)}

.rodape{text-align:center;padding:2rem;color:var(--cinza);font-size:.85rem;border-top:1px solid var(--linha)}

/* WhatsApp flutuante */
.zap{position:fixed;right:1.2rem;bottom:1.2rem;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 10px 25px -8px rgba(0,0,0,.4);transition:transform .3s var(--ease);z-index:30}
.zap:hover{transform:scale(1.08)}

/* Lightbox */
.lightbox{position:fixed;inset:0;background:rgba(10,9,8,.9);display:grid;place-items:center;z-index:50;opacity:0;pointer-events:none;transition:opacity .3s}
.lightbox.aberto{opacity:1;pointer-events:auto}
.lightbox img{max-width:92vw;max-height:88vh;border-radius:12px}

/* Revelar ao rolar */
.revelar{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.revelar.visivel{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.revelar{opacity:1;transform:none;transition:none}.nfc-pulso{animation:none}}

/* ===== Responsivo ===== */
@media (max-width:900px){
  .hero{grid-template-columns:1fr}
  .grade{grid-template-columns:repeat(2,1fr)}
  .funcoes,.passos{grid-template-columns:1fr 1fr}
  .topo nav a:not(.btn){display:none}
}
@media (max-width:560px){
  .grade{grid-template-columns:1fr}
  .card.largo{grid-column:auto}
  .card.largo img{aspect-ratio:1}
  .funcoes,.passos{grid-template-columns:1fr}
}

/* ===== Tema escuro (fundo principal do site) ===== */
body{background:#0f0e0c;color:#f5f1ea}
.topo{background:rgba(15,14,12,.85);border-bottom-color:rgba(245,241,234,.1)}
.marca small,.lead,.passos p,.rodape{color:#a59d92}
.btn{background:var(--ouro);color:var(--tinta)}
.btn:hover{background:var(--ouro-claro)}
.btn-linha{background:transparent;color:#f5f1ea;border-color:rgba(245,241,234,.4)}
.btn-linha:hover{background:#f5f1ea;color:var(--tinta)}
.card{background:#1c1a17}
.card figcaption{background:rgba(15,14,12,.85);color:#f5f1ea}
.escuro{background:#171512}
.passos li{background:#171512;border-color:rgba(245,241,234,.1)}
.rodape{border-top-color:rgba(245,241,234,.1)}
