
/* v1.6.6-modern — Sobre Nós (hero + refinamentos) */
:root{
  --ip-blue:#0b3fae;
  --ip-yellow:#f2b705;
  --ink-900:#0f172a;
  --ink-700:#334155;
  --ink-500:#64748b;
  --bg-50:#f8fafc;
  --card:#ffffff;
  --radius-xl:18px;
  --shadow-lg:0 20px 50px rgba(2,6,23,.12);
}
.hero-sobre{
  position:relative; overflow:hidden; min-height: 440px; display:grid; place-items:center;
  background: radial-gradient(1200px 480px at 70% -10%, rgba(11,63,174,.25), transparent),
              linear-gradient(180deg, #0b3fae0d, #0b3fae00);
}
.hero-sobre .hero-media{
  position:absolute; inset:0; z-index:0;
}
.hero-sobre .hero-media::after{
  content:""; position:absolute; inset:0;
  background: radial-gradient(800px 240px at 50% 0%, rgba(11,63,174,.35), transparent 60%),
              linear-gradient(180deg, rgba(2,6,23,.45), rgba(2,6,23,.65));
}
.hero-sobre .hero-media img{
  width:100%; height:100%; object-fit:cover; object-position:center;
  filter:saturate(1.05) contrast(1.05);
}
.hero-sobre .hero-content{
  position:relative; z-index:1; text-align:center; color:#fff; padding: 64px 16px;
  max-width: 1040px; margin:auto;
}
.hero-sobre .eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-weight:600; letter-spacing:.12em; text-transform:uppercase; font-size:12px; opacity:.9;
}
.hero-sobre .eyebrow .dot{ width:8px; height:8px; border-radius:999px; background:var(--ip-yellow); display:inline-block; }
.hero-sobre h1{ font-size: clamp(28px, 4.2vw, 48px); line-height:1.05; margin:10px 0 8px; }
.hero-sobre p.sub{ font-size: clamp(14px, 1.4vw, 18px); opacity:.95; }
.hero-sobre .actions{ margin-top:20px; display:flex; justify-content:center; gap:12px; flex-wrap:wrap; }
.hero-sobre .btn{
  background:var(--ip-yellow); color:#111827; border:none; padding:12px 18px; border-radius:999px;
  font-weight:700; text-decoration:none; box-shadow: 0 8px 24px rgba(242,183,5,.35);
}
.hero-sobre .btn.alt{ background:transparent; color:#fff; border:1px solid rgba(255,255,255,.35); }

/* MVV refinado */
section.mvv{ padding: 42px 0 56px; background: var(--bg-50); }
.mvv .title{ font-size:32px; color:var(--ink-900); margin:0 0 6px; text-align:center;}
.mvv .subtitle{ text-align:center; color:var(--ink-500); max-width: 900px; margin: 8px auto 22px;}
.mvv .grid{ display:grid; gap: 18px; grid-template-columns: repeat(3, minmax(220px,1fr)); }
.mvv .card{ background:var(--card); border-radius: var(--radius-xl); box-shadow: var(--shadow-lg); padding:20px; }
.mvv .card h3{ margin:0 0 8px; font-size:18px; color:var(--ip-blue); }
.mvv .card p{ margin:0; color:var(--ink-700); text-align: justify; }
.mvv .values{ margin-top:18px; background:#fff; border-radius: var(--radius-xl); box-shadow: var(--shadow-lg); padding:18px 20px; }
.mvv .values ul{ margin:0; padding-left: 20px; }
.mvv .values li{ margin: 6px 0; color:var(--ink-700); }

@media (max-width: 991px){
  .mvv .grid{ grid-template-columns: 1fr; }
  .hero-sobre{ min-height: 380px; }
}

/* seção CTA final (opcional) */
.section-cta{ padding: 28px 0 56px; text-align:center; }
.section-cta .cta-card{ display:inline-flex; flex-direction:column; align-items:center; gap:10px;
  background:linear-gradient(180deg,#fff, #f7faff); border:1px solid #e5e7eb;
  border-radius: 16px; padding: 18px 20px; box-shadow: 0 12px 30px rgba(2,6,23,.08);
}
.section-cta .cta-card p{ margin:0; color: var(--ink-700); }
.section-cta .btn{ background:var(--ip-blue); color:#fff; border:0; border-radius:10px; padding:10px 16px; text-decoration:none; }
