/* ====== Base / Tokens ====== */
:root{
  --bg:#ffffff;
  --bg-alt:#f6f7f9;
  --text:#1f2328;           /* alto contraste */
  --muted:#5b6570;
  --primary:#2563eb;        /* azul acessível */
  --primary-contrast:#fff;
  --radius:14px;
  --shadow:0 8px 24px rgba(2,6,23,.08);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  background:var(--bg);
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  line-height:1.6;
}

/* ====== Links & Buttons ====== */
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}

.btn{border-radius:calc(var(--radius) - 6px)}
.btn-primary{
  background:var(--primary);
  border-color:var(--primary);
  color:var(--primary-contrast);
}
.btn-outline-primary{border-color:var(--primary);color:var(--primary)}
.btn-outline-primary:hover{background:var(--primary);color:#fff}

/* ====== Header / Navbar ====== */
.brand-text{font-size:1.05rem}
.nav-link{font-weight:600}
.nav-link.active{color:var(--primary)}
.navbar-toggler{border:0}

/* ====== Hero padrão ====== */
.hero{
  position:relative;
  min-height:52vh;
  display:grid;
  place-items:center;
  background:
    radial-gradient(1200px 600px at 100% -200px,#e9eef7 0%,transparent 60%),
    radial-gradient(900px 500px at -100px 120%,#eef1f6 0%,transparent 60%),
    #f7f8fb;
  overflow:hidden;
}
.hero__overlay{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.06));
}
.hero__content{z-index:1; padding:4rem 0}
.hero h1{letter-spacing:-.02em}
.hero p{color:#20242a; opacity:.92}

/* ====== Hero menor (página interna) ====== */
.hero-small{
  min-height:28vh;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.hero-small .hero__content{padding:2rem 0}
.hero-small h1{font-size:2rem}
.hero-small p{font-size:1.125rem}

/* ====== Seções ====== */
.section{padding:3.5rem 0}
.section-alt{background:var(--bg-alt)}
h1,h2,h3{color:var(--text); margin:0 0 .5rem}
p{color:var(--muted); margin:0 0 1rem}

/* ====== Cards ====== */
.card{border:1px solid #e8ecf2; border-radius:12px}
.card:hover{box-shadow:var(--shadow)}

/* ====== Produtos: thumbnails consistentes ====== */
.product-card .product-thumb{
  width:100%;
  aspect-ratio:1 / 1;          /* quadrado por padrão */
  overflow:hidden;
  border-top-left-radius:12px;
  border-top-right-radius:12px;
  background:#eef1f6;          /* fundo neutro enquanto carrega */
}
.product-card .product-img{
  width:100%;
  height:100%;
  object-fit:cover;             /* preenche sem deformar */
  display:block;
}
@media (min-width:768px){
  .product-card .product-thumb{ aspect-ratio:4 / 3 } /* mais horizontal em md+ */
}

/* ====== Rodapé ====== */
.site-footer{
  background:#fff;
  border-top:1px solid #e8ecf2;
  padding:1.25rem 0;
  box-shadow:var(--shadow);
}
.footer-nav a{margin-left:1rem;color:var(--muted)}
.footer-nav a:hover{color:var(--text)}

/* ====== WhatsApp FAB ====== */
.whatsapp-fab{
  position:fixed;
  right:18px; bottom:18px;
  width:56px; height:56px;
  display:grid; place-items:center;
  background:#25D366; border-radius:50%;
  box-shadow:0 10px 22px rgba(0,0,0,.15);
  transition:transform .15s ease;
  z-index:40;
}
.whatsapp-fab:hover{transform:translateY(-2px)}
.whatsapp-fab img{width:28px;height:28px}

/* ====== Acessibilidade / Motion ====== */
:focus-visible{outline:3px solid #94b7ff; outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important; transition:none!important; scroll-behavior:auto!important}
}

/* ====== Utilidades ====== */
.fw-800{font-weight:800}
