/* =====================================================================
   quemsomos-v0.css — Página Quem Somos (estilo v0 Apple-like).
   Scoped sob .qs-v0. Header/footer globais. Override do modern.css.
   ===================================================================== */
.qs-v0{
  --background:#fbfbfa;--foreground:#1a1b1e;--card:#fff;--primary:#3ea22b;
  --muted-fg:#6f7079;--border:#e7e7ea;--secondary:#f1f2f0;
  --serif:'Instrument Serif',Georgia,serif;--sans:'Geist',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--background);color:var(--foreground);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased;
}
.qs-v0 *{box-sizing:border-box}
.qs-v0 h1,.qs-v0 h2,.qs-v0 h3,.qs-v0 p{margin:0}
.qs-v0 img{display:block;max-width:100%}
.qs-v0,.qs-v0 p,.qs-v0 a,.qs-v0 span,.qs-v0 li{font-family:var(--sans) !important}
.qs-v0 .serif,.qs-v0 h1,.qs-v0 h2,.qs-v0 h3{font-family:var(--serif) !important;font-weight:400}
.qs-v0 .eyebrow{font-size:12px;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--muted-fg)}

/* hero */
.qs-hero{max-width:1400px;margin:0 auto;padding:72px 24px 0}
@media(min-width:768px){.qs-hero{padding:88px 48px 0}}
.qs-hero .eyebrow{margin-bottom:22px}
.qs-hero h1{font-size:clamp(46px,7vw,84px);line-height:1.05;letter-spacing:-.01em;max-width:20ch}
.qs-hero h1 .mut{color:var(--muted-fg)}
.qs-hero h1 .dot{color:var(--primary)}
.qs-hero .lead{margin-top:30px;max-width:42rem;font-size:clamp(18px,2vw,21px);color:var(--muted-fg)}

/* foto */
.qs-photo{max-width:1400px;margin:60px auto 0;padding:0 24px}
@media(min-width:768px){.qs-photo{padding:0 48px}}
.qs-photo .fig{overflow:hidden;border-radius:32px}
.qs-photo img{width:100%;aspect-ratio:16/9;object-fit:cover}

/* stats */
.qs-stats{max-width:1400px;margin:0 auto;padding:96px 24px}
@media(min-width:768px){.qs-stats{padding:120px 48px}}
.qs-stats .grid{display:grid;gap:48px;border-top:1px solid var(--border);padding-top:52px;grid-template-columns:1fr}
@media(min-width:640px){.qs-stats .grid{grid-template-columns:repeat(3,1fr)}}
.qs-stat .v{font-family:var(--serif) !important;font-size:clamp(52px,7vw,80px);line-height:1;letter-spacing:-.01em}
.qs-stat .l{margin-top:12px;font-size:14px;color:var(--muted-fg)}

/* timeline */
.qs-tl{max-width:1400px;margin:0 auto;padding:0 24px 96px}
@media(min-width:768px){.qs-tl{padding:0 48px 120px}}
.qs-tl .eyebrow{margin-bottom:44px}
.qs-tl ol{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:32px;overflow:hidden}
@media(min-width:768px){.qs-tl ol{grid-template-columns:repeat(2,1fr)}}
.qs-tl li{display:flex;flex-direction:column;gap:16px;background:var(--card);padding:32px}
@media(min-width:768px){.qs-tl li{padding:48px}}
.qs-tl .top{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}
.qs-tl .year{font-family:var(--serif) !important;font-size:clamp(40px,5vw,56px);line-height:1;color:var(--primary)}
.qs-tl .place{font-size:13px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--muted-fg)}
.qs-tl .text{max-width:26rem;color:var(--muted-fg)}

/* missão */
.qs-mission{max-width:1400px;margin:0 auto;padding:0 24px 96px}
@media(min-width:768px){.qs-mission{padding:0 48px 120px}}
.qs-mission .box{border-radius:32px;background:var(--secondary);padding:64px 32px}
@media(min-width:768px){.qs-mission .box{padding:104px 64px}}
.qs-mission .eyebrow{margin-bottom:30px}
.qs-mission .statement{max-width:60rem;font-family:var(--serif) !important;font-size:clamp(28px,4.2vw,50px);line-height:1.18;letter-spacing:-.01em;color:var(--foreground)}

/* onde estamos */
.qs-loc{max-width:1400px;margin:0 auto;padding:0 24px 96px}
@media(min-width:768px){.qs-loc{padding:0 48px 120px}}
.qs-loc .eyebrow{margin-bottom:44px}
.qs-loc .grid{display:grid;gap:16px;grid-template-columns:1fr}
@media(min-width:640px){.qs-loc .grid{grid-template-columns:repeat(3,1fr)}}
.qs-loc .card{display:flex;flex-direction:column;gap:12px;border:1px solid var(--border);border-radius:20px;background:var(--card);padding:32px}
.qs-loc .role{font-size:12px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--primary)}
.qs-loc h3{font-size:28px;color:var(--foreground)}
.qs-loc .note{font-size:14px;color:var(--muted-fg)}
