/* Quem somos. Header e botões vêm de products.css. */

.about h1, .about h2, .about h3{ text-wrap:balance; }
.about-narrow{ max-width:720px; }

/* ---------- Abertura ---------- */
.about-hero{ padding:72px 0 88px; }
.about-hero-grid{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:64px; align-items:center; }
.about-hero h1{ font-size:clamp(2.2rem,4.6vw,3.7rem); line-height:1.06; font-weight:700; }
.about-lead{ margin:20px 0 28px; max-width:34em; font-size:1.12rem; color:var(--ink-soft); }
.about-hero-copy > *{ opacity:0; transform:translateY(12px); animation:aboutRise .7s var(--ease) forwards; }
.about-hero-copy > :nth-child(2){ animation-delay:.07s; }
.about-hero-copy > :nth-child(3){ animation-delay:.14s; }
@keyframes aboutRise{ to{ opacity:1; transform:none; } }

/* fotos: a caixa tem a proporção do arquivo, então a foto aparece inteira */
.about-photo{ margin:0; overflow:hidden; border-radius:22px; background:var(--panel); }
.about-photo img{ display:block; width:100%; height:100%; object-fit:cover; }
.about-photo--portrait{ aspect-ratio:3/4; max-width:420px; justify-self:end; width:100%; }
.about-photo--wide{ aspect-ratio:3/2; }

/* ---------- Marca ---------- */
.about-brand{ padding:24px 0 96px; }
.about-brand h2, .about-store h2, .about-trust h2, .about-cta h2{ font-size:clamp(1.7rem,3vw,2.5rem); line-height:1.1; }
.about-brand p{ margin-top:20px; font-size:1.06rem; line-height:1.75; color:var(--ink-soft); }
.about-brand h2 + p{ margin-top:22px; }

/* ---------- Loja física ---------- */
.about-store{ background:var(--panel); padding:88px 0; }
.about-store .wrap{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:56px; align-items:center; }
.about-store .about-photo{ background:#E9E9EC; }
.about-store-copy p{ margin-top:16px; font-size:1.04rem; line-height:1.7; color:var(--ink-soft); }
.about-record{ margin:28px 0 0; display:grid; grid-template-columns:auto 1fr; gap:10px 20px; padding-top:22px; border-top:1px solid var(--line); }
.about-record dt{ font-size:0.83rem; color:var(--gray); }
.about-record dd{ margin:0; font-size:0.95rem; }
.about-record dd[data-mono]{ font-variant-numeric:tabular-nums; }

/* ---------- Confiança ---------- */
.about-trust{ padding:96px 0; }
.about-points{ list-style:none; margin:44px 0 0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:64px; }
.about-points li{ padding:26px 0; border-top:1px solid var(--line); }
.about-points h3{ font-size:1.08rem; margin-bottom:8px; }
.about-points p{ font-size:0.96rem; line-height:1.65; color:var(--ink-soft); }
.about-points a{ color:var(--blue); font-weight:500; text-decoration:underline; text-underline-offset:2px; }

/* ---------- Fechamento ---------- */
.about-cta{ padding:88px 0 104px; border-top:1px solid var(--line); text-align:center; }
.about-cta .wrap{ margin:0 auto; }
.about-cta p{ margin:14px 0 26px; font-size:1.06rem; color:var(--ink-soft); }
.about .btn{ white-space:nowrap; }
.btn:active{ transform:scale(.97); }
.btn{ transition:background-color .2s ease, border-color .2s ease, transform .16s var(--ease); }

/* ---------- Mobile ---------- */
@media (max-width:900px){
  .about-hero{ padding:44px 0 64px; }
  .about-hero-grid{ grid-template-columns:minmax(0,1fr); gap:36px; }
  .about-photo--portrait{ justify-self:center; max-width:340px; }
  .about-brand{ padding-bottom:64px; }
  .about-store{ padding:64px 0; }
  .about-store .wrap{ grid-template-columns:minmax(0,1fr); gap:32px; }
  .about-trust{ padding:64px 0; }
  .about-points{ grid-template-columns:minmax(0,1fr); }
  .about-cta{ padding:64px 0 80px; }
}
@media (prefers-reduced-motion:reduce){
  .about-hero-copy > *{ animation:none; opacity:1; transform:none; }
}
