/* =====================================================================
   homepage-v0.css — Homepage premium (port do design v0/Vercel)
   ---------------------------------------------------------------------
   TUDO scoped sob .v0 (o corpo da homepage). Não afeta outras páginas
   nem o header global (header.css) nem o footer do tema. Sem o header v0
   (usamos o header global). Tokens OKLCH→HEX; Instrument Serif + Geist.
   ===================================================================== */
.v0{
  --background:#fbfbfa; --foreground:#1a1b1e; --card:#ffffff;
  --primary:#3ea22b; --primary-fg:#ffffff;
  --muted:#f4f4f5; --muted-fg:#6f7079; --border:#e7e7ea;
  --accent:#e6f1e2; --accent-fg:#285c1c;
  --serif:'Instrument Serif',Georgia,serif;
  --sans:'Geist',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--background); color:var(--foreground);
  font-family:var(--sans); font-size:17px; line-height:1.6;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
.v0 *{box-sizing:border-box}
.v0 a{color:inherit;text-decoration:none}
.v0 h1,.v0 h2,.v0 h3,.v0 p{margin:0}
.v0 img{display:block;max-width:100%}
.v0 .serif{font-family:var(--serif);font-weight:400}
.v0 .eyebrow{font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-fg)}
.v0 .pill{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:13px 28px;font-size:14px;
  font-weight:500;transition:all .25s ease;cursor:pointer}
.v0 .pill-green{background:var(--primary);color:#fff}
.v0 .pill-green:hover{opacity:.9;color:#fff}
.v0 .pill-dark{background:var(--foreground);color:var(--background)}
.v0 .pill-dark:hover{opacity:.9}
.v0 .pill-ghost{border:1px solid var(--border);color:var(--foreground)}
.v0 .pill-ghost:hover{border-color:var(--foreground)}

/* OVERRIDE do modern.css (que força Manrope !important em h1..h3/p/a/span globalmente).
   .v0 dá mais especificidade que os selectores de elemento → ganha. */
.v0,.v0 p,.v0 a,.v0 span,.v0 li,.v0 button,.v0 input,.v0 select{font-family:var(--sans) !important}
.v0 .serif,.v0 h1,.v0 h2,.v0 h3{font-family:var(--serif) !important}

/* ===== hero ===== */
.v0-hero{max-width:1400px;margin:0 auto;padding:48px 24px 70px;display:flex;flex-direction:column;gap:48px;position:relative}
@media(min-width:768px){.v0-hero{padding:64px 48px 90px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;min-height:calc(100vh - 80px)}}
.v0-hero h1{font-family:var(--serif);font-size:clamp(52px,8vw,116px);line-height:.96;letter-spacing:-.02em;margin-top:20px}
.v0-hero h1 .dot{color:var(--primary)}
.v0-hero .lead{margin-top:28px;max-width:30ch;font-size:clamp(20px,2.4vw,25px);color:var(--muted-fg)}
.v0-hero .ctas{margin-top:36px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.v0-hero-photo{aspect-ratio:4/5;border-radius:32px;overflow:hidden;box-shadow:0 40px 80px -32px rgba(26,27,30,.35);outline:1px solid var(--border)}
.v0-hero-photo img{width:100%;height:100%;object-fit:cover}
.v0-scroll{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);color:var(--muted-fg);font-size:18px;animation:v0bounce 1.6s infinite}
@keyframes v0bounce{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,8px)}}

/* ===== secção genérica + slider ===== */
.v0-sec{max-width:1400px;margin:0 auto;padding:80px 24px}
@media(min-width:768px){.v0-sec{padding:110px 48px}}
.v0-sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px}
.v0-h2{font-family:var(--serif);font-size:clamp(44px,6vw,84px);line-height:1;letter-spacing:-.02em}
.v0-h2 .dot{color:var(--primary)}
.v0-sec-head .desc{max-width:24rem;font-size:16px;color:var(--muted-fg)}
.v0-slider{position:relative;overflow:hidden;border-radius:32px;border:1px solid var(--border);background:var(--card)}
.v0-track{display:flex;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.v0-slide{flex:0 0 100%;display:grid;grid-template-columns:1fr}
@media(min-width:768px){.v0-slide{grid-template-columns:1fr 1fr}}
.v0-slide .txt{display:flex;flex-direction:column;justify-content:center;gap:22px;padding:40px}
@media(min-width:768px){.v0-slide .txt{padding:64px}}
.v0-tag{align-self:flex-start;background:var(--accent);color:var(--accent-fg);border-radius:999px;padding:6px 16px;
  font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.v0-slide h3{font-family:var(--serif);font-size:clamp(32px,4vw,50px);line-height:1.05}
.v0-slide .txt p{max-width:28rem;color:var(--muted-fg)}
.v0-slide .pic{min-height:300px}
@media(min-width:768px){.v0-slide .pic{min-height:470px}}
.v0-slide .pic img{width:100%;height:100%;object-fit:cover}
.v0-arrows{display:flex;gap:12px}
.v0-arrow{width:48px;height:48px;border-radius:999px;border:1px solid var(--border);background:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;color:var(--foreground);transition:border-color .2s}
.v0-arrow:hover{border-color:var(--foreground)}
.v0-dots{margin-top:30px;display:flex;justify-content:center;gap:12px}
.v0-dot{height:8px;width:8px;border-radius:999px;background:var(--border);border:0;cursor:pointer;transition:all .3s}
.v0-dot.on{width:40px;background:var(--primary)}

/* ===== produtos (foto + tipográficos) ===== */
.v0-prod-grid{display:grid;gap:24px;grid-template-columns:1fr}
@media(min-width:768px){.v0-prod-grid{grid-template-columns:repeat(3,1fr)}}
.v0-prod-card{display:flex;flex-direction:column;overflow:hidden;border-radius:24px;border:1px solid var(--border);
  background:var(--card);transition:border-color .3s}
.v0-prod-card:hover{border-color:rgba(26,27,30,.3)}
.v0-prod-card .img{aspect-ratio:4/5;overflow:hidden}
.v0-prod-card .img img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.v0-prod-card:hover .img img{transform:scale(1.05)}
.v0-prod-card .body{flex:1;display:flex;justify-content:space-between;gap:16px;padding:24px}
.v0-prod-card h3{font-family:var(--serif);font-size:30px}
.v0-prod-card .body p{margin-top:8px;font-size:14px;color:var(--muted-fg)}
.v0-arrow-sm{flex:0 0 auto;width:40px;height:40px;border-radius:999px;border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;transition:all .3s}
.v0-prod-card:hover .v0-arrow-sm{background:var(--foreground);color:var(--background)}
.v0-prod-mini{margin-top:24px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}
@media(min-width:768px){.v0-prod-mini{grid-template-columns:repeat(4,1fr)}}
.v0-mini{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:26px 24px;border-radius:20px;
  border:1px solid var(--border);background:var(--card);transition:all .25s}
.v0-mini:hover{border-color:var(--primary)}
.v0-mini .nm{font-family:var(--serif);font-size:23px}
.v0-mini:hover .nm{color:var(--primary)}
.v0-mini .ar{color:var(--muted-fg);transition:transform .25s,color .2s}
.v0-mini:hover .ar{color:var(--primary);transform:translate(3px,-3px)}

/* ===== cores RAL ===== */
.v0-colors{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}
@media(min-width:640px){.v0-colors{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.v0-colors{grid-template-columns:repeat(4,1fr)}}
.v0-swatch{cursor:pointer}
.v0-swatch .chip{position:relative;display:block;aspect-ratio:5/4;border-radius:16px;border:1px solid rgba(0,0,0,.05);
  box-shadow:0 2px 8px -4px rgba(0,0,0,.2);overflow:hidden;transition:transform .5s ease,box-shadow .5s ease}
.v0-swatch:hover .chip{transform:translateY(-4px);box-shadow:0 14px 26px -12px rgba(0,0,0,.28)}
.v0-swatch .chip .ask{position:absolute;inset:auto 0 0 0;padding-bottom:12px;text-align:center;font-size:11px;
  letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.92);opacity:0;transform:translateY(100%);transition:all .3s}
.v0-swatch:hover .chip .ask{opacity:1;transform:translateY(0)}
.v0-swatch .code{margin-top:12px;font-size:14px;color:var(--muted-fg);letter-spacing:.03em}
.v0-colors-cta{margin-top:52px;text-align:center}

/* ===== sustentabilidade ===== */
.v0-sus-grid{display:grid;gap:48px;align-items:center;grid-template-columns:1fr}
@media(min-width:768px){.v0-sus-grid{grid-template-columns:1fr 1fr}}
.v0-sus-photo{border-radius:24px;overflow:hidden}
.v0-sus-photo img{aspect-ratio:1/1;width:100%;object-fit:cover}
.v0-sus h2{font-family:var(--serif);font-size:clamp(40px,5vw,62px);line-height:1.05;margin-top:6px}
.v0-sus p{margin-top:22px;max-width:30rem;font-size:18px;color:var(--muted-fg)}
.v0-dotg{width:8px;height:8px;border-radius:999px;background:var(--primary)}

/* ===== CTA verde ===== */
.v0-cta{position:relative;overflow:hidden;border-radius:32px;background:var(--primary);color:#fff;text-align:center;padding:84px 32px}
@media(min-width:640px){.v0-cta{padding:112px 64px}}
.v0-cta .eyebrow{color:rgba(255,255,255,.7)}
.v0-cta h2{font-family:var(--serif);font-size:clamp(40px,6vw,84px);line-height:1.02;margin:22px auto 0;max-width:48rem;color:#fff}
.v0-cta p{margin:22px auto 0;max-width:28rem;color:rgba(255,255,255,.85);font-size:18px}
.v0-cta .pill{margin-top:38px}
