/* ── PAGES CSS (áreas internas) ─────────────────────────── */
.page-hero {
  min-height: 55vh; display: flex; align-items: center;
  background: var(--clr-dark); position: relative; overflow: hidden;
  padding-top: var(--nav-height);
}
.page-hero__bg { position: absolute; inset: 0; background: linear-gradient(135deg,#080C14 0%,#1a0a0b 100%); }
.page-hero__bg img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.14;filter:grayscale(.5); }
.page-hero__inner { position:relative;z-index:2;max-width:var(--container-max);margin-inline:auto;padding:4rem var(--sp-6); }
.page-hero h1 { font-family:var(--ff-serif);font-size:clamp(2.5rem,5vw,4rem);color:#fff;line-height:1.1;margin-bottom:1rem; }
.page-hero p { font-size:1.05rem;color:rgba(255,255,255,.55);max-width:560px;line-height:1.8; }
.breadcrumb { display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:rgba(255,255,255,.35);margin-bottom:1.25rem; }
.breadcrumb a { color:rgba(255,255,255,.45);transition:color .15s; }
.breadcrumb a:hover { color:#fff; }
.breadcrumb span { color:rgba(255,255,255,.2); }

/* QUEM SOMOS page */
.quem-somos__timeline { position:relative; padding-left:2rem; }
.quem-somos__timeline::before { content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--clr-primary),var(--clr-gold),transparent); }
.timeline-item { position:relative;padding-bottom:2.5rem;padding-left:1.5rem; }
.timeline-item::before { content:'';position:absolute;left:-2.1rem;top:.3rem;width:14px;height:14px;border-radius:50%;background:var(--clr-primary);border:3px solid var(--clr-surface); box-shadow:0 0 0 3px var(--clr-primary-glow); }
.timeline-item__year { font-family:var(--ff-sans);font-size:.75rem;font-weight:700;color:var(--clr-primary);letter-spacing:.1em;margin-bottom:.35rem; }
.timeline-item__title { font-family:var(--ff-sans);font-size:1.05rem;font-weight:600;margin-bottom:.4rem; }
.timeline-item__desc { font-size:.9rem;color:var(--clr-text-secondary);line-height:1.8; }

/* TEAM CARDS */
.team-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem; }
.team-card { text-align:center;padding:2rem 1.25rem;border-radius:16px;border:1px solid var(--clr-border);transition:all .25s ease; }
.team-card:hover { transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--clr-primary-glow); }
.team-card__avatar { width:80px;height:80px;border-radius:50%;margin-inline:auto;margin-bottom:1rem;background:var(--clr-surface-3);overflow:hidden;border:3px solid var(--clr-border); }
.team-card__avatar img { width:100%;height:100%;object-fit:cover; }
.team-card__name { font-family:var(--ff-sans);font-size:.95rem;font-weight:600;margin-bottom:.25rem; }
.team-card__role { font-size:.8rem;color:var(--clr-text-muted); }

/* BLOG / NOTÍCIAS */
.blog-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem; }
.blog-card { border-radius:16px;overflow:hidden;border:1px solid var(--clr-border);transition:all .3s ease; }
.blog-card:hover { transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:transparent; }
.blog-card__img { aspect-ratio:16/9;background:var(--clr-surface-3);overflow:hidden; }
.blog-card__img img { width:100%;height:100%;object-fit:cover;transition:transform .4s ease; }
.blog-card:hover .blog-card__img img { transform:scale(1.05); }
.blog-card__img-placeholder { width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:rgba(0,0,0,.2);font-size:.8rem; }
.blog-card__body { padding:1.5rem; }
.blog-card__cat { font-size:.7rem;font-weight:700;letter-spacing:.1em;color:var(--clr-primary);text-transform:uppercase;margin-bottom:.5rem; }
.blog-card__title { font-family:var(--ff-sans);font-size:1.05rem;font-weight:600;line-height:1.4;margin-bottom:.75rem; }
.blog-card__meta { display:flex;align-items:center;gap:.75rem;font-size:.78rem;color:var(--clr-text-muted); }

/* CONTATO */
.contact__grid { display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start; }
.contact__info { padding:2rem;background:var(--clr-dark);border-radius:20px;color:#fff; }
.contact__info h3 { font-family:var(--ff-serif);font-size:1.75rem;margin-bottom:1rem; }
.contact__info-item { display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.5rem; }
.contact__info-icon { width:44px;height:44px;border-radius:10px;background:rgba(155,29,32,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.1rem; }
.contact__info-label { font-size:.75rem;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.08em; }
.contact__info-value { font-size:.9rem;color:rgba(255,255,255,.8);margin-top:.2rem; }
.contact__form { display:flex;flex-direction:column;gap:1.25rem; }
.form-group { display:flex;flex-direction:column;gap:.4rem; }
.form-label { font-family:var(--ff-sans);font-size:.8rem;font-weight:600;color:var(--clr-text-primary);letter-spacing:.04em; }
.form-input, .form-textarea, .form-select {
  padding:.75rem 1rem;border-radius:10px;
  border:1.5px solid var(--clr-border);
  background:var(--clr-surface);font-family:var(--ff-body);font-size:.9rem;
  color:var(--clr-text-primary);outline:none;transition:border-color .2s,box-shadow .2s;width:100%;
}
.form-input:focus,.form-textarea:focus,.form-select:focus { border-color:var(--clr-primary);box-shadow:0 0 0 3px var(--clr-primary-glow); }
.form-textarea { resize:vertical;min-height:120px; }
.form-row { display:grid;grid-template-columns:1fr 1fr;gap:1rem; }
@media(max-width:768px){ .contact__grid{grid-template-columns:1fr;} .form-row{grid-template-columns:1fr;} }
