:root {
  --navy: #0a1c66;
  --navy-dark: #06133f;
  --orange: #ff4b0b;
  --orange-soft: #ff8a63;
  --blue-soft: #edf2ff;
  --soft: #f6f7fa;
  --text: #1f2937;
  --muted: #5b6473;
  --white: #ffffff;
  --border: #e7eaf0;
  --shadow: 0 12px 35px rgba(10, 28, 102, .08);
  --radius: 18px;
  --container: 1220px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: "Inter", sans-serif;
  color: var(--text);
  background: var(--white);
  line-height: 1.65;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }

.container {
  width: min(calc(100% - 40px), var(--container));
  margin-inline: auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--border);
}

.nav-wrap {
  min-height: 82px;
  display: flex;
  align-items: center;
  gap: 24px;
}

.brand img {
  width: 150px;
  max-height: 58px;
  object-fit: contain;
}

.main-nav {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: .92rem;
  font-weight: 600;
}

.main-nav a {
  position: relative;
  padding: 8px 0;
}
.main-nav a::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 2px;
  height: 2px;
  background: var(--orange);
  transform: scaleX(0);
  transform-origin: left;
  transition: .25s ease;
}
.main-nav a:hover::after,
.main-nav a.active::after { transform: scaleX(1); }

.menu-toggle {
  display: none;
  margin-left: auto;
  background: transparent;
  border: 0;
  padding: 8px;
}
.menu-toggle span {
  display: block;
  width: 26px;
  height: 2px;
  background: var(--navy);
  margin: 5px 0;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  font-weight: 700;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary {
  background: var(--orange);
  color: var(--white);
  box-shadow: 0 10px 25px rgba(255,75,11,.2);
}
.btn-secondary {
  border: 1px solid var(--navy);
  color: var(--navy);
  background: var(--white);
}
.btn-light { background: var(--white); color: var(--navy); }
.btn-outline-light {
  border: 1px solid rgba(255,255,255,.65);
  color: var(--white);
}
.header-cta { min-height: 44px; padding-inline: 18px; font-size: .9rem; }

.hero {
  background:
    radial-gradient(circle at 90% 10%, rgba(255,75,11,.10), transparent 28%),
    linear-gradient(135deg, #f8faff 0%, #ffffff 58%, #fef7f3 100%);
  padding: 88px 0;
}

.hero-grid {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  align-items: center;
  gap: 70px;
}

.eyebrow {
  display: inline-block;
  color: var(--orange);
  font-weight: 800;
  font-size: .8rem;
  letter-spacing: .16em;
  margin-bottom: 14px;
}
.eyebrow.light { color: #ffd2c3; }

h1, h2, h3 {
  font-family: "Montserrat", sans-serif;
  color: var(--navy-dark);
  line-height: 1.12;
  margin-top: 0;
}
h1 {
  font-size: clamp(2.8rem, 5vw, 4.6rem);
  max-width: 720px;
  margin-bottom: 22px;
}
h2 {
  font-size: clamp(2rem, 3.4vw, 3.1rem);
  margin-bottom: 18px;
}
h3 { font-size: 1.25rem; }

.hero-copy > p {
  max-width: 680px;
  font-size: 1.1rem;
  color: var(--muted);
  margin-bottom: 30px;
}
.hero-actions, .cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.visual-card {
  min-height: 430px;
  border-radius: 28px;
  background:
    linear-gradient(145deg, rgba(10,28,102,.96), rgba(6,19,63,.98));
  color: var(--white);
  box-shadow: var(--shadow);
  padding: 38px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  overflow: hidden;
  position: relative;
}
.visual-card::before,
.visual-card::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  background: rgba(255,75,11,.16);
}
.visual-card::before { width: 230px; height: 230px; right: -60px; top: -70px; }
.visual-card::after { width: 160px; height: 160px; left: -30px; bottom: -55px; }

.visual-symbol {
  width: 150px;
  height: 150px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,.7);
  font-family: "Montserrat";
  font-size: 2.2rem;
  font-weight: 800;
  margin: 24px 0;
}
.visual-tag {
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
  font-size: .82rem;
}
.visual-card p { max-width: 330px; color: rgba(255,255,255,.8); }

.section { padding: 92px 0; }
.section-soft { background: var(--soft); }

.two-col {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 80px;
  align-items: start;
}
.two-col p { color: var(--muted); }

.section-heading {
  max-width: 820px;
  margin-bottom: 42px;
}
.section-heading.centered {
  text-align: center;
  margin-inline: auto;
}
.section-heading p { color: var(--muted); }

.cards {
  display: grid;
  gap: 20px;
}
.cards-4 { grid-template-columns: repeat(4, 1fr); }
.cards-3 { grid-template-columns: repeat(3, 1fr); }

.card, .article-card, .founder-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: 0 8px 30px rgba(10,28,102,.04);
}
.card {
  padding: 28px;
  transition: transform .22s ease, box-shadow .22s ease;
}
.card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow);
}
.card-icon {
  width: 44px; height: 44px;
  display: grid; place-items: center;
  border-radius: 14px;
  color: var(--white);
  background: var(--navy);
  font-weight: 800;
  margin-bottom: 22px;
}
.card p { color: var(--muted); }

.text-link {
  color: var(--navy);
  font-weight: 700;
}
.text-link:hover { color: var(--orange); }

.pillars {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.pillar {
  padding: 22px;
  border-left: 4px solid var(--orange);
  background: var(--blue-soft);
  border-radius: 0 14px 14px 0;
}
.pillar strong {
  display: block;
  color: var(--navy);
  font-family: "Montserrat";
  margin-bottom: 8px;
}
.pillar span { color: var(--muted); font-size: .95rem; }

.founders { background: linear-gradient(180deg, #fff 0%, #fbfcff 100%); }
.founder-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
.founder-card {
  overflow: hidden;
  display: grid;
  grid-template-columns: 190px 1fr;
}
.photo-placeholder {
  min-height: 100%;
  background: linear-gradient(145deg, var(--navy), var(--navy-dark));
  color: rgba(255,255,255,.75);
  display: grid;
  place-items: center;
  padding: 18px;
  text-align: center;
  font-weight: 700;
}
.founder-content { padding: 28px; }
.role {
  color: var(--orange);
  font-weight: 700;
  font-size: .92rem;
}
.cred-list {
  margin: 16px 0 18px;
  padding-left: 18px;
  color: var(--muted);
}

.split-feature {
  display: grid;
  grid-template-columns: .75fr 1.25fr;
  gap: 70px;
  align-items: center;
}
.book-placeholder {
  min-height: 420px;
  width: min(100%, 310px);
  margin-inline: auto;
  background: linear-gradient(160deg, var(--navy), #0f3f86 60%, var(--orange));
  color: var(--white);
  border-radius: 12px;
  box-shadow: 14px 18px 30px rgba(6,19,63,.2);
  padding: 32px 26px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.book-placeholder span { font-size: .72rem; letter-spacing: .14em; opacity: .8; }
.book-placeholder strong { font-family: "Montserrat"; font-size: 2.1rem; line-height: 1.1; }

.article-card { padding: 28px; }
.category {
  color: var(--orange);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.article-card p, .meta { color: var(--muted); }
.meta { display: block; font-size: .86rem; margin-top: 20px; }

.section-action { margin-top: 30px; text-align: center; }

.cta-section {
  padding: 34px 0 0;
  background: var(--white);
}
.cta-box {
  border-radius: 26px 26px 0 0;
  background: linear-gradient(130deg, var(--navy), var(--navy-dark));
  color: var(--white);
  padding: 54px;
  display: grid;
  grid-template-columns: 1.4fr .6fr;
  gap: 40px;
  align-items: center;
}
.cta-box h2 { color: var(--white); }
.cta-box p { color: rgba(255,255,255,.78); max-width: 720px; }

.site-footer {
  background: var(--navy-dark);
  color: rgba(255,255,255,.78);
  padding: 58px 0 22px;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1fr;
  gap: 36px;
}
.footer-brand img {
  width: 160px;
  background: var(--white);
  border-radius: 12px;
  padding: 8px;
  margin-bottom: 18px;
}
.site-footer h3 {
  color: var(--white);
  font-size: 1rem;
  margin-bottom: 14px;
}
.site-footer a {
  display: block;
  margin: 8px 0;
  font-size: .93rem;
}
.site-footer a:hover { color: var(--white); }

.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.12);
  margin-top: 36px;
  padding-top: 20px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  font-size: .86rem;
}

@media (max-width: 1100px) {
  .main-nav, .header-cta { display: none; }
  .menu-toggle { display: block; }
  .main-nav.open {
    display: flex;
    position: absolute;
    top: 82px;
    left: 20px;
    right: 20px;
    padding: 20px;
    border-radius: 16px;
    background: var(--white);
    box-shadow: var(--shadow);
    flex-direction: column;
    align-items: stretch;
  }
  .hero-grid, .two-col, .split-feature { grid-template-columns: 1fr; }
  .cards-4 { grid-template-columns: repeat(2, 1fr); }
  .founder-grid { grid-template-columns: 1fr; }
  .pillars { grid-template-columns: repeat(2, 1fr); }
  .cta-box { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .container { width: min(calc(100% - 28px), var(--container)); }
  .hero { padding: 62px 0; }
  .section { padding: 68px 0; }
  .hero-grid { gap: 36px; }
  .visual-card { min-height: 340px; }
  .cards-4, .cards-3, .pillars { grid-template-columns: 1fr; }
  .founder-card { grid-template-columns: 1fr; }
  .photo-placeholder { min-height: 220px; }
  .cta-box { padding: 34px 24px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-bottom { flex-direction: column; }
}

@media (max-width: 520px) {
  .footer-grid { grid-template-columns: 1fr; }
  .hero-actions, .cta-actions { flex-direction: column; }
  .btn { width: 100%; }
}


/* Página interna — Quem Somos */
.internal-hero {
  padding: 84px 0;
  background:
    radial-gradient(circle at 90% 15%, rgba(255,75,11,.10), transparent 26%),
    linear-gradient(135deg, #f8faff 0%, #ffffff 62%, #fef8f5 100%);
}
.internal-hero-grid {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 70px;
  align-items: center;
}
.internal-hero p {
  color: var(--muted);
  font-size: 1.08rem;
  max-width: 760px;
}
.internal-highlight {
  min-height: 270px;
  border-radius: 26px;
  padding: 36px;
  background: linear-gradient(145deg, var(--navy), var(--navy-dark));
  color: var(--white);
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-shadow: var(--shadow);
}
.internal-highlight strong {
  font-family: "Montserrat";
  font-size: 2rem;
  line-height: 1.1;
}
.internal-highlight span {
  color: #ffd2c3;
  font-size: 1.2rem;
  margin-top: 8px;
}

.story-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 70px;
  align-items: center;
}
.story-visual {
  min-height: 430px;
  border-radius: 24px;
  background: linear-gradient(145deg, #0d2a7a, #071643);
  color: rgba(255,255,255,.8);
  display: flex;
  flex-direction: column;
  justify-content: end;
  padding: 32px;
  box-shadow: var(--shadow);
}
.story-visual span {
  font-family: "Montserrat";
  font-weight: 700;
  color: var(--white);
}
.quote-line {
  margin-top: 28px;
  padding-left: 18px;
  border-left: 4px solid var(--orange);
  color: var(--navy) !important;
  font-weight: 700;
}

.meaning-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.meaning-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 26px;
}
.meaning-symbol {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: var(--blue-soft);
  color: var(--navy);
  font-size: 1.5rem;
  margin-bottom: 18px;
}
.meaning-card p {
  color: var(--orange);
  font-size: .9rem;
}
.meaning-card span { color: var(--muted); }

.purpose-section { padding-top: 36px; }
.purpose-box {
  border-radius: 26px;
  padding: 56px;
  background: linear-gradient(130deg, var(--navy), var(--navy-dark));
  color: var(--white);
}
.purpose-box h2 { color: var(--white); max-width: 800px; }
.purpose-box p { color: rgba(255,255,255,.8); max-width: 850px; }

.mv-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.mv-card {
  padding: 32px;
  border-radius: 18px;
  background: var(--soft);
  border: 1px solid var(--border);
}
.mv-card.featured {
  background: var(--blue-soft);
}
.mv-label {
  color: var(--orange);
  font-size: .78rem;
  letter-spacing: .14em;
  font-weight: 800;
}
.mv-card p { color: var(--muted); }

.values-grid {
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.value-card {
  padding: 20px;
  border-radius: 14px;
  border: 1px solid var(--border);
}
.value-card strong {
  display: block;
  color: var(--navy);
  margin-bottom: 6px;
}
.value-card span { color: var(--muted); font-size: .92rem; }

.profile-stack {
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.profile-card {
  display: grid;
  grid-template-columns: 330px 1fr;
  overflow: hidden;
}
.profile-card.reverse {
  grid-template-columns: 1fr 330px;
}
.profile-card.reverse .profile-photo { order: 2; }
.profile-photo {
  min-height: 420px;
  display: grid;
  place-items: center;
  padding: 24px;
  text-align: center;
  background: linear-gradient(145deg, var(--navy), var(--navy-dark));
  color: rgba(255,255,255,.82);
  font-weight: 700;
}
.profile-content { padding: 38px; }
.profile-kicker {
  color: var(--orange);
  font-size: .78rem;
  letter-spacing: .14em;
  font-weight: 800;
}
.profile-content p { color: var(--muted); }
.credential-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}
.credential-chips span {
  padding: 7px 11px;
  border-radius: 999px;
  background: var(--blue-soft);
  color: var(--navy);
  font-size: .82rem;
  font-weight: 700;
}

.complement-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 70px;
}
.complement-list {
  display: grid;
  gap: 12px;
}
.complement-list div {
  padding: 20px;
  border-left: 4px solid var(--orange);
  background: var(--soft);
}
.complement-list strong {
  display: block;
  color: var(--navy);
}
.complement-list span { color: var(--muted); }

@media (max-width: 1000px) {
  .internal-hero-grid,
  .story-grid,
  .complement-grid {
    grid-template-columns: 1fr;
  }
  .meaning-grid { grid-template-columns: repeat(2, 1fr); }
  .values-grid { grid-template-columns: repeat(2, 1fr); }
  .profile-card,
  .profile-card.reverse {
    grid-template-columns: 1fr;
  }
  .profile-card.reverse .profile-photo { order: 0; }
}

@media (max-width: 620px) {
  .internal-hero { padding: 58px 0; }
  .meaning-grid,
  .mv-grid,
  .values-grid {
    grid-template-columns: 1fr;
  }
  .purpose-box { padding: 34px 24px; }
  .profile-content { padding: 28px 22px; }
}


/* Página interna — Formações & Palestras */
.commercial-highlight {
  min-height: 310px;
  border-radius: 26px;
  padding: 38px;
  background: linear-gradient(145deg, #fff7f2, #ffffff);
  border: 1px solid #ffe1d5;
  box-shadow: var(--shadow);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.commercial-highlight .mini-label {
  color: var(--orange);
  font-size: .76rem;
  letter-spacing: .14em;
  font-weight: 800;
  margin-bottom: 14px;
}
.commercial-highlight strong {
  color: var(--navy-dark);
  font-family: "Montserrat";
  font-size: 2rem;
  line-height: 1.1;
}
.commercial-highlight > span:not(.mini-label) {
  color: var(--orange);
  font-size: 1.35rem;
  font-weight: 700;
  margin-top: 6px;
}
.commercial-highlight p {
  margin-top: 18px;
  color: var(--muted);
}

.audience-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.audience-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 26px;
}
.audience-card h3 { margin-bottom: 10px; }
.audience-card p { color: var(--muted); margin-bottom: 0; }

.format-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.format-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 8px 30px rgba(10,28,102,.04);
}
.format-number {
  display: inline-flex;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: var(--navy);
  color: var(--white);
  font-weight: 800;
  margin-bottom: 18px;
}
.format-card p { color: var(--muted); }

.topics-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.topic-item {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 22px;
  border-left: 4px solid var(--orange);
}
.topic-item strong {
  display: block;
  color: var(--navy);
  margin-bottom: 6px;
}
.topic-item span { color: var(--muted); }

.process-section {
  background: linear-gradient(180deg, #fff 0%, #fbfcff 100%);
}
.process-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.process-card {
  border-radius: 18px;
  padding: 28px;
  background: var(--white);
  border: 1px solid var(--border);
}
.process-card > span {
  color: var(--orange);
  font-family: "Montserrat";
  font-weight: 800;
  font-size: 1.4rem;
}
.process-card h3 { margin-top: 14px; }
.process-card p { color: var(--muted); }

.modality-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 60px;
  align-items: center;
}
.modality-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.modality-card {
  padding: 28px;
  border-radius: 18px;
  background: var(--white);
  border: 1px solid var(--border);
}
.modality-card p { color: var(--muted); }

.credibility-strip {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 60px;
  align-items: start;
}
.credibility-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.credibility-grid div {
  padding: 22px;
  background: var(--blue-soft);
  border-radius: 14px;
}
.credibility-grid strong {
  display: block;
  color: var(--navy);
  margin-bottom: 6px;
}
.credibility-grid span {
  color: var(--muted);
  font-size: .93rem;
}

.faq-list {
  display: grid;
  gap: 12px;
  max-width: 900px;
}
.faq-list details {
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--white);
  overflow: hidden;
}
.faq-list summary {
  cursor: pointer;
  padding: 20px 22px;
  color: var(--navy);
  font-weight: 700;
}
.faq-list details p {
  margin: 0;
  padding: 0 22px 22px;
  color: var(--muted);
}

@media (max-width: 1000px) {
  .audience-grid { grid-template-columns: repeat(2, 1fr); }
  .format-grid { grid-template-columns: repeat(2, 1fr); }
  .process-grid { grid-template-columns: repeat(2, 1fr); }
  .modality-grid,
  .credibility-strip { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .audience-grid,
  .format-grid,
  .topics-grid,
  .process-grid,
  .modality-cards,
  .credibility-grid {
    grid-template-columns: 1fr;
  }
}


/* Página interna — Educação Parental */
.parental-highlight {
  min-height: 300px;
  border-radius: 26px;
  padding: 38px;
  background: linear-gradient(145deg, #fff7f2, #ffffff);
  border: 1px solid #ffe1d5;
  box-shadow: var(--shadow);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.parental-highlight .mini-label {
  color: var(--orange);
  font-size: .76rem;
  letter-spacing: .14em;
  font-weight: 800;
  margin-bottom: 14px;
}
.parental-highlight strong {
  color: var(--navy-dark);
  font-family: "Montserrat";
  font-size: 2rem;
  line-height: 1.1;
}
.parental-highlight > span:not(.mini-label) {
  color: var(--muted);
  margin-top: 10px;
  font-size: 1.05rem;
}

.family-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.family-card {
  padding: 24px;
  border-radius: 16px;
  background: var(--white);
  border: 1px solid var(--border);
}
.family-card strong {
  display: block;
  color: var(--navy);
  font-family: "Montserrat";
  margin-bottom: 8px;
}
.family-card span { color: var(--muted); }

.parental-topics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.parental-topics article {
  padding: 26px;
  border-radius: 16px;
  border: 1px solid var(--border);
  border-top: 4px solid var(--orange);
}
.parental-topics p { color: var(--muted); }

.approach-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 60px;
  align-items: center;
}
.approach-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.approach-list div {
  padding: 22px;
  border-radius: 14px;
  background: var(--white);
  border: 1px solid var(--border);
}
.approach-list strong {
  display: block;
  color: var(--navy);
  margin-bottom: 6px;
}
.approach-list span { color: var(--muted); }

.vanessa-parental {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 60px;
  align-items: center;
}
.vanessa-photo {
  min-height: 500px;
  border-radius: 24px;
  background: linear-gradient(145deg, var(--navy), var(--navy-dark));
  color: rgba(255,255,255,.82);
  display: grid;
  place-items: center;
  text-align: center;
  padding: 24px;
  box-shadow: var(--shadow);
  font-weight: 700;
}
.credential-panel {
  margin-top: 26px;
  padding: 24px;
  border-radius: 16px;
  background: var(--blue-soft);
  border-left: 4px solid var(--orange);
}
.credential-label {
  display: block;
  color: var(--orange);
  font-size: .74rem;
  letter-spacing: .14em;
  font-weight: 800;
  margin-bottom: 8px;
}
.credential-panel strong {
  display: block;
  color: var(--navy);
  font-family: "Montserrat";
  font-size: 1.1rem;
}
.credential-panel p { margin-bottom: 0; color: var(--muted); }

.parental-process {
  grid-template-columns: repeat(5, 1fr);
}

.institutional-parental {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 34px 60px;
  align-items: center;
}
.institutional-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.institutional-list span {
  padding: 9px 13px;
  border-radius: 999px;
  background: var(--white);
  border: 1px solid var(--border);
  color: var(--navy);
  font-weight: 700;
  font-size: .88rem;
}
.institutional-parental > .btn { justify-self: start; }

.scope-box {
  max-width: 980px;
  padding: 38px;
  border: 1px solid #ffe1d5;
  background: #fff9f6;
  border-radius: 20px;
}
.scope-box p { color: var(--muted); }

.space-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 60px;
  align-items: center;
}
.space-placeholder {
  min-height: 360px;
  border-radius: 22px;
  background:
    radial-gradient(circle at 80% 20%, rgba(255,75,11,.16), transparent 26%),
    linear-gradient(145deg, var(--navy), var(--navy-dark));
  color: var(--white);
  padding: 32px;
  display: flex;
  flex-direction: column;
  justify-content: end;
}
.space-placeholder strong {
  font-family: "Montserrat";
  font-size: 1.7rem;
}
.space-placeholder span {
  color: rgba(255,255,255,.76);
  margin-top: 8px;
}

@media (max-width: 1000px) {
  .family-grid { grid-template-columns: repeat(2, 1fr); }
  .parental-topics { grid-template-columns: repeat(2, 1fr); }
  .approach-grid,
  .vanessa-parental,
  .institutional-parental,
  .space-grid {
    grid-template-columns: 1fr;
  }
  .parental-process { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 620px) {
  .family-grid,
  .parental-topics,
  .approach-list,
  .parental-process {
    grid-template-columns: 1fr;
  }
  .vanessa-photo { min-height: 360px; }
  .scope-box { padding: 28px 22px; }
}


/* Página interna — Livros & Publicações */
.books-hero-visual{min-height:350px;position:relative;display:flex;align-items:center;justify-content:center;gap:18px;padding:30px}
.mini-book{width:180px;height:270px;border-radius:9px;padding:24px 18px;color:#fff;box-shadow:12px 16px 28px rgba(6,19,63,.2);display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-5deg)}
.mini-book span,.book-cover-placeholder>span{font-size:.68rem;letter-spacing:.13em;opacity:.8}.mini-book strong{font-family:"Montserrat";font-size:1.45rem}.book-two{transform:rotate(5deg) translateY(18px);background:linear-gradient(160deg,#ff4b0b,#a62d08)}.book-one{background:linear-gradient(160deg,var(--navy),#1749a0)}.books-hero-visual small{position:absolute;bottom:10px;color:var(--muted)}
.book-feature{display:grid;grid-template-columns:330px 1fr;gap:60px;align-items:center;padding:48px 0;border-bottom:1px solid var(--border)}.reverse-book .book-cover-placeholder{order:2}.book-cover-placeholder{width:280px;min-height:400px;border-radius:10px;padding:30px 24px;color:#fff;box-shadow:14px 18px 30px rgba(6,19,63,.2);display:flex;flex-direction:column;justify-content:space-between}.book-cover-placeholder strong{font-family:"Montserrat";font-size:2rem;line-height:1.05}.book-cover-placeholder small{opacity:.8}.cover-praticas{background:linear-gradient(155deg,var(--navy),#2461bd 65%,var(--orange))}.cover-insubstituiveis{background:linear-gradient(155deg,#181b2d,#5d2432 60%,var(--orange))}
.book-status{display:inline-block;color:var(--navy);background:var(--blue-soft);padding:7px 11px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.1em}.book-status.upcoming{color:#9a310d;background:#fff0e9}.book-author{color:var(--orange);font-weight:700}.book-info>p:not(.book-author){color:var(--muted)}
.book-meta{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.book-meta span{padding:10px 14px;border-radius:10px;background:#fff;border:1px solid var(--border);color:var(--muted)}.book-meta strong{color:var(--navy);margin-right:5px}.book-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:24px}.external-buy-disabled{color:var(--muted);font-size:.86rem;font-style:italic}
.launch-box{padding:18px;border-left:4px solid var(--orange);background:#fff7f2;margin-top:20px}.launch-box strong,.launch-box span{display:block}.launch-box strong{color:var(--navy)}.launch-box span{color:var(--muted)}
.future-book{margin-top:52px;padding:44px;border-radius:22px;background:linear-gradient(130deg,var(--navy),var(--navy-dark));color:#fff;display:grid;grid-template-columns:1fr 180px;gap:40px;align-items:center}.future-book h2{color:#fff}.future-book p{color:rgba(255,255,255,.78)}.future-cover{width:150px;height:210px;border:1px solid rgba(255,255,255,.4);border-radius:8px;display:grid;place-items:center;text-align:center;font-family:"Montserrat";font-weight:800}
.sales-explainer{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px}.sales-flow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sales-flow div{padding:20px;border-radius:14px;background:var(--soft)}.sales-flow strong{display:block;color:var(--orange);font-family:"Montserrat";font-size:1.2rem}.sales-flow span{color:var(--muted)}.external-note{grid-column:1/-1;padding:18px;border-radius:12px;background:#fff9f6;border:1px solid #ffe1d5;color:var(--muted);font-size:.9rem}
.author-section{display:grid;grid-template-columns:360px 1fr;gap:60px;align-items:center}.author-photo-placeholder{min-height:430px;border-radius:22px;background:linear-gradient(145deg,var(--navy),var(--navy-dark));color:rgba(255,255,255,.8);display:grid;place-items:center;text-align:center;padding:24px;font-weight:700}
@media(max-width:900px){.book-feature,.sales-explainer,.author-section{grid-template-columns:1fr}.reverse-book .book-cover-placeholder{order:0}.book-cover-placeholder{margin-inline:auto}.future-book{grid-template-columns:1fr}.future-cover{margin:auto}.books-hero-visual{margin-top:20px}}
@media(max-width:600px){.mini-book{width:135px;height:210px;padding:18px 14px}.mini-book strong{font-size:1rem}.sales-flow{grid-template-columns:1fr}.book-feature{gap:30px}.book-cover-placeholder{width:240px;min-height:350px}}


/* Página interna — Conteúdos */
.content-hero-card{min-height:310px;border-radius:26px;padding:38px;background:linear-gradient(145deg,var(--navy),var(--navy-dark));color:#fff;display:flex;flex-direction:column;justify-content:center;box-shadow:var(--shadow)}
.content-hero-card>span{font-size:.72rem;letter-spacing:.14em;color:#ffd2c3;font-weight:800}.content-hero-card strong{font-family:"Montserrat";font-size:2rem;line-height:1.12;margin:16px 0}.content-hero-card p{color:rgba(255,255,255,.76)}
.featured-content{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}.featured-content-visual{min-height:390px;border-radius:22px;background:linear-gradient(145deg,#e9efff,#fff2ec);display:grid;place-items:center;color:var(--navy);font-weight:700}.article-byline{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:.88rem;margin:20px 0}.disabled-link{opacity:.58;cursor:default}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.category-grid article{padding:22px;border-radius:15px;background:#fff;border:1px solid var(--border)}.category-grid strong{display:block;color:var(--navy);margin-bottom:7px}.category-grid span{color:var(--muted);font-size:.91rem}
.content-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.content-card{border:1px solid var(--border);border-radius:18px;overflow:hidden;background:#fff}.content-thumb{height:180px}.thumb-a{background:linear-gradient(135deg,#dfe8ff,#fff0e9)}.thumb-b{background:linear-gradient(135deg,#d8e4ff,#dff4ff)}.thumb-c{background:linear-gradient(135deg,#fff0e9,#f7dfeb)}.thumb-d{background:linear-gradient(135deg,#f0e6ff,#ffe7dd)}.thumb-e{background:linear-gradient(135deg,#dcefff,#e7e5ff)}.thumb-f{background:linear-gradient(135deg,#ffe4da,#e4ebff)}.content-card-body{padding:24px}.content-card-body p{color:var(--muted)}.content-author{border-top:1px solid var(--border);padding-top:16px;margin-top:18px;display:flex;justify-content:space-between;gap:12px;font-size:.82rem}.content-author strong{color:var(--navy)}.content-author span{color:var(--muted)}
.editorial-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.editorial-points{display:grid;grid-template-columns:1fr 1fr;gap:14px}.editorial-points div{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px}.editorial-points strong{display:block;color:var(--navy);margin-bottom:6px}.editorial-points span{color:var(--muted);font-size:.92rem}
.author-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.author-content-grid article{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:28px;border:1px solid var(--border);border-radius:18px}.author-initial{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-family:"Montserrat";font-size:1.4rem;font-weight:800}.author-content-grid p{color:var(--muted)}
.newsletter-preview{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.newsletter-disabled{display:flex;gap:10px}.newsletter-disabled input{flex:1;min-height:50px;border:1px solid var(--border);border-radius:999px;padding:0 18px;background:#fff}.newsletter-disabled button:disabled,.newsletter-disabled input:disabled{opacity:.65}
@media(max-width:1000px){.featured-content,.editorial-grid,.newsletter-preview{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,1fr)}.content-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.category-grid,.content-cards,.editorial-points,.author-content-grid{grid-template-columns:1fr}.newsletter-disabled{flex-direction:column}.newsletter-disabled .btn{width:100%}}


/* Página interna — Contato */
.contact-highlight{min-height:300px;border-radius:26px;padding:38px;background:linear-gradient(145deg,#fff7f2,#fff);border:1px solid #ffe1d5;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:center}
.contact-highlight .mini-label{color:var(--orange);font-size:.76rem;letter-spacing:.14em;font-weight:800;margin-bottom:14px}
.contact-highlight strong{font-family:"Montserrat";color:var(--navy-dark);font-size:2rem;line-height:1.12}
.contact-highlight>span:not(.mini-label){color:var(--muted);margin-top:10px}
.contact-paths{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.contact-path-card{padding:26px;border:1px solid var(--border);border-radius:18px;background:#fff}
.path-index{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--navy);color:#fff;font-weight:800;margin-bottom:18px}
.contact-path-card p{color:var(--muted)}
.contact-form-grid,.parental-contact-grid,.direct-contact,.social-contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}
.contact-form,.proposal-form,.parental-contact-form{background:#fff;border:1px solid var(--border);border-radius:20px;padding:30px;box-shadow:0 10px 30px rgba(10,28,102,.05)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form label,.proposal-form label,.parental-contact-form label{display:flex;flex-direction:column;gap:7px;color:var(--navy);font-weight:700;font-size:.92rem;margin-bottom:16px}
.contact-form input,.contact-form select,.contact-form textarea,.proposal-form input,.proposal-form select,.proposal-form textarea,.parental-contact-form input,.parental-contact-form select,.parental-contact-form textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:13px 14px;color:var(--text);background:#fff;outline:none}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.proposal-form input:focus,.proposal-form select:focus,.proposal-form textarea:focus,.parental-contact-form input:focus,.parental-contact-form select:focus,.parental-contact-form textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(10,28,102,.08)}
.consent-check{display:grid!important;grid-template-columns:18px 1fr;align-items:start;gap:10px!important;color:var(--muted)!important;font-weight:500!important}
.consent-check input{margin-top:3px;width:16px!important;height:16px}
.contact-info-box{margin-top:24px;padding:22px;border-left:4px solid var(--orange);background:#fff;border-radius:0 14px 14px 0}
.contact-info-box strong,.contact-info-box span,.contact-info-box small{display:block}.contact-info-box strong{color:var(--navy)}.contact-info-box span{margin-top:4px;font-weight:700}.contact-info-box small{color:var(--muted);margin-top:6px}
.proposal-form{padding:36px}.proposal-form fieldset{border:0;padding:0;margin:0 0 30px}.proposal-form legend{font-family:"Montserrat";font-weight:800;color:var(--navy-dark);font-size:1.2rem;margin-bottom:18px}
.hidden-field{display:none!important}.form-status{margin-top:14px;color:var(--navy);font-weight:700}
.direct-buttons{display:flex;flex-wrap:wrap;gap:12px}.social-placeholder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.social-placeholder-grid span{padding:22px;border:1px solid var(--border);border-radius:14px;text-align:center;color:var(--navy);font-weight:800;background:#fff}
@media(max-width:1000px){.contact-paths{grid-template-columns:repeat(2,1fr)}.contact-form-grid,.parental-contact-grid,.direct-contact,.social-contact{grid-template-columns:1fr}}
@media(max-width:650px){.contact-paths,.form-row,.social-placeholder-grid{grid-template-columns:1fr}.contact-form,.proposal-form,.parental-contact-form{padding:22px}}


/* Páginas legais e revisão técnica V1.0 */
.legal-hero{padding:72px 0;background:linear-gradient(135deg,#f7f9ff,#fff7f2)}
.legal-width{max-width:900px}.legal-hero p{color:var(--muted)}
.legal-copy h2{margin-top:34px;font-size:1.35rem}.legal-copy p{color:var(--muted);line-height:1.8}
.legal-notice{margin-top:38px;padding:22px;border-radius:14px;background:#fff7f2;border:1px solid #ffe1d5;color:var(--muted)}
.footer-pending{display:block;color:rgba(255,255,255,.62);margin:.45rem 0;font-size:.92rem}

/* Infraestrutura oficial */
.institutional-email{display:block;margin-top:4px;font-weight:700;color:var(--navy);text-decoration:none}
.institutional-email:hover{text-decoration:underline}
