/* ============================================================
   MESCLA 2026 — o que veio das versões novas para a original
   (24/09/2026). A página é a original de antes do redesign de
   23/09; daqui só entram os pontos que o dono escolheu:
   1. o bloco amarelo da "Integração entre os núcleos", em
      contraste com o branco e o cinza da folha;
   2. sem o link "segue anexo" (pedido anterior: "tire isso").
   ============================================================ */

/* 1. Integração entre os núcleos: bloco dourado */
.extrato-row--integracao {
  border-top: 0;
  margin: 14px 0 18px;
}
.extrato-row--integracao .ext-link,
.extrato-row--integracao .ext-link--static {
  margin: 0;
  padding: 22px 24px;
  border-radius: 18px;
  background: var(--brand-300);
  box-shadow: 0 18px 36px -24px rgba(168, 122, 31, 0.55);
}
.extrato-row--integracao .ext-link::before { display: none; }
.extrato-row--integracao .ext-num--amp {
  color: var(--cool-900);
  font-size: 1.5rem;
}
.extrato-row--integracao .ext-nome { color: var(--cool-900); }
.extrato-row--integracao .ext-linha { color: #3D2E0A; }
.extrato-rows .extrato-row--integracao + * { border-top: 0; }
@media (max-width: 719px) {
  .extrato-row--integracao .ext-link,
  .extrato-row--integracao .ext-link--static { padding: 18px 16px; border-radius: 16px; }
}

/* 2. Sem o "segue anexo": o respiro passa a ser do capítulo */
.clinica { padding-bottom: clamp(28px, 3.5vw, 48px); }

/* ============================================================
   3. DESENHO ARREDONDADO DEPOIS DA CAPA (24/09/2026)
   A capa e a faixa dos +400 não mudam. Do Posicionamento para
   baixo, a mesma página ganha cantos grandes, cartões e painéis
   escuros arredondados, sempre com as cores e fontes da capa
   (tinta, dourado, Fraunces + Inter).
   ============================================================ */
:root {
  --mx-gap: clamp(10px, 1.2vw, 16px);
  --mx-r-panel: 34px;
  --mx-r-card: 24px;
  --mx-ink: linear-gradient(180deg, #171A21 0%, #0E1015 100%);
  --mx-ink-card: #1A1D25;
  --mx-ink-card-2: #21252E;
  --mx-ink-line: rgba(245, 242, 236, 0.09);
  --mx-paper: #FDFCF9;
  --mx-shadow: 0 1px 2px rgba(26, 29, 36, 0.04), 0 22px 48px -30px rgba(26, 29, 36, 0.3);
}
@media (max-width: 767.98px) {
  :root { --mx-r-panel: 26px; --mx-r-card: 20px; }
}

/* ---------- Posicionamento: o texto ganha um cartão claro ---------- */
@media (min-width: 1024px) {
  #clinica .clinica-grid { align-items: center; }
}
#clinica .clinica-col--texto {
  padding: clamp(26px, 3.2vw, 46px);
  border-radius: 28px;
  background: var(--mx-paper);
  box-shadow: var(--mx-shadow);
}
#clinica .clinica-col--texto .body-text { margin-bottom: 0; }

/* ---------- Núcleos: folha arredondada, fecho em barra escura ---------- */
#nucleos .extrato-sheet {
  border-radius: 32px;
  border-color: transparent;
  box-shadow: var(--mx-shadow);
}
#nucleos a.ext-link { border-radius: 14px; }
#nucleos .extrato-total {
  margin-top: 4px;
  padding: 22px clamp(20px, 2.6vw, 30px);
  border-top: 0;
  border-radius: 20px;
  background: var(--mx-ink);
  align-items: center;
}
#nucleos .extrato-total .total-label { color: var(--warm-100); }
#nucleos .extrato-total .total-label .marker {
  background: var(--brand-300);
  color: var(--cool-900);
}
#nucleos .extrato-total .link-arrow { color: var(--brand-300); border-bottom-color: rgba(240, 187, 74, 0.45); }
#nucleos .extrato-total .link-arrow:hover { color: #F5C868; }

/* ---------- Painéis escuros arredondados ---------- */
#equipe,
#metodo,
#cta-final {
  position: relative;
  margin-inline: var(--mx-gap);
  border-radius: var(--mx-r-panel);
  background: var(--mx-ink);
  overflow: clip;
  isolation: isolate;
}
/* sem o numeral gigante e sem a grade de fundo: o painel já separa */
#equipe::before, #equipe::after,
#metodo::before, #metodo::after,
#cta-final::before, #cta-final::after { display: none; }
#cta-final .cta-mesh { display: none; }

/* ---------- Quem conduz ---------- */
#equipe .equipe-preview-grid { gap: 14px; }
#equipe .socio-card {
  padding: 8px;
  border: 0;
  border-radius: var(--mx-r-card);
  background: var(--mx-ink-card);
  box-shadow: none;
}
#equipe .socio-card figure { border-radius: 18px; overflow: hidden; }
#equipe .socio-card figure::after { display: none; }
#equipe .socio-nome { padding: 16px 10px 3px; }
#equipe .socio-papel { padding: 0 10px 12px; }
@media (hover: hover) and (pointer: fine) {
  #equipe .socio-card:hover {
    background: var(--mx-ink-card-2);
    border-color: transparent;
    box-shadow: 0 24px 50px -30px rgba(0, 0, 0, 0.8);
  }
}
/* o "65+" vira o bloco dourado, par do bloco da Integração */
#equipe .socio-card--more {
  padding: 26px 24px 24px;
  border: 0;
  background: var(--brand-300);
  box-shadow: 0 22px 44px -28px rgba(240, 187, 74, 0.5);
}
#equipe .socio-card--more::before {
  color: rgba(15, 17, 22, 0.62);
  border-bottom-color: rgba(15, 17, 22, 0.16);
}
#equipe .socio-card--more .more-num { color: var(--cool-900); }
#equipe .socio-card--more .more-num span { color: rgba(15, 17, 22, 0.5); }
#equipe .socio-card--more .more-label { color: #3D2E0A; }
#equipe .socio-card--more .more-cta { color: var(--cool-900); font-weight: 600; }
@media (hover: hover) and (pointer: fine) {
  #equipe .socio-card--more:hover { background: #F5C868; }
}

/* ---------- Método: limpo e em cartões ---------- */
#metodo .timeline::before,
#metodo .timeline::after,
#metodo .step::before,
#metodo .step-dot { display: none; }
#metodo .timeline { gap: 14px; }
#metodo .step {
  gap: 10px;
  padding: 28px 26px 30px;
  border: 1px solid var(--mx-ink-line);
  border-radius: var(--mx-r-card);
  background: var(--mx-ink-card);
}
#metodo .step:hover { border-color: rgba(240, 187, 74, 0.28); }
#metodo .step .step-icon {
  box-sizing: content-box;
  width: 22px;
  height: 22px;
  padding: 12px;
  margin-bottom: 12px;
  border-radius: 50%;
  background: rgba(240, 187, 74, 0.12);
}
#metodo .conviccoes-grid { gap: 14px; }
#metodo .conviccao {
  padding: 24px 24px 26px;
  border: 1px solid var(--mx-ink-line);
  border-radius: var(--mx-r-card);
}

/* ---------- Clientes: logos em cartões ---------- */
#clientes .logo-item {
  height: 84px;
  min-width: 168px;
  padding: 0 30px;
  margin-right: 12px;
  border-radius: 22px;
  background: var(--mx-paper);
  box-shadow: 0 1px 2px rgba(26, 29, 36, 0.05);
}
@media (max-width: 768px) {
  #clientes .logo-item { height: 64px; min-width: 124px; padding: 0 20px; margin-right: 8px; border-radius: 18px; }
}

/* ---------- Unidades ---------- */
#unidades .unidade-card {
  border-color: transparent;
  border-radius: 28px;
  background: var(--mx-paper);
  box-shadow: var(--mx-shadow);
}
#unidades .unidade-card::after { display: none; }
#unidades .unidade-index {
  top: 22px;
  right: 22px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(240, 187, 74, 0.16);
  font-family: var(--font-sans);
  font-style: normal;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1;
  color: var(--brand-700);
  opacity: 1;
}
#unidades .phone {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid var(--border-subtle);
  background: #FFFFFF;
  text-decoration: none;
}
#unidades .phone:hover { border-color: var(--brand-600); }

/* ---------- Chamada final ---------- */
#cta-final .contact-cta,
#cta-final .contact-form.contact-cta {
  border: 1px solid var(--mx-ink-line);
  border-radius: 28px;
  background: var(--mx-ink-card);
  background-image: none;
  box-shadow: none;
}
#cta-final .contact-form::before,
#cta-final .contact-form::after { display: none; }
#cta-final .whatsapp-btn { border-radius: 14px; }
#cta-final .cta-quote { border-radius: 0 16px 16px 0; }

/* ---------- Perguntas: itens em cartões ---------- */
#faq .faq-list { display: grid; gap: 10px; }
#faq .faq-item,
#faq .faq-item:last-child,
#faq .faq-item[open] {
  border: 0;
  border-radius: 20px;
  background: var(--mx-paper);
  box-shadow: 0 1px 2px rgba(26, 29, 36, 0.04);
}
#faq .faq-item::after { display: none; }
#faq .faq-summary { padding: 20px 22px 20px 26px; }
#faq .faq-summary:focus-visible { border-radius: 20px; }
#faq .faq-icon { width: 36px; height: 36px; border: 0; background: var(--warm-200); }
#faq .faq-item[open] .faq-icon { background: var(--cool-900); }
#faq .faq-content-inner { padding: 0 26px 26px; }
@media (min-width: 769px) {
  #faq .faq-content-inner { padding-left: calc(26px + 130px + var(--space-6)); }
}
/* Perguntas no desktop: título à esquerda (acompanha a leitura),
   perguntas à direita — antes a lista parava em 860px e sobrava vão. */
@media (min-width: 1024px) {
  #faq > .container {
    display: grid;
    grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.5fr);
    column-gap: clamp(40px, 5vw, 80px);
    align-items: start;
  }
  #faq > .container > header {
    grid-column: 1;
    grid-row: 1 / span 2;
    position: sticky;
    top: 120px;
  }
  #faq .faq-list { grid-column: 2; max-width: none; }
  #faq .faq-footer { grid-column: 2; }
}

/* ============================================================
   4. NÚCLEOS EM GRADE DE CARTÕES (24/09/2026)
   Pedido do dono, mostrando a versão nova: "na parte dos núcleos
   assim tava mais legal". A folha do demonstrativo vira cabeçalho
   + grade de cartões (3 colunas), nas cores e fontes da original.
   O cartão escurece no hover; a Integração é o cartão dourado.
   ============================================================ */
#nucleos .extrato-sheet {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  column-gap: clamp(40px, 6vw, 96px);
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
#nucleos .extrato-sheet::before,
#nucleos .extrato-sheet::after { display: none; }
#nucleos .extrato-masthead {
  padding: 0;
  border: 0;
}
#nucleos .extrato-label { color: var(--brand-700); }
#nucleos .extrato-meta,
#nucleos .extrato-emissor,
#nucleos .extrato-selo { display: none; }
#nucleos .extrato-title {
  margin: 14px 0 0;
  max-width: 13em;
  font-size: clamp(2.2rem, 2.2vw + 1.2rem, 3.6rem);
  line-height: 1.05;
  text-wrap: balance;
}
#nucleos .extrato-lead { margin: 20px 0 0; max-width: 46ch; }
@media (min-width: 1024px) {
  #nucleos .extrato-sheet { grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr); }
  #nucleos .extrato-masthead { grid-column: 1; grid-row: 1; }
  #nucleos .extrato-title { grid-column: 1; grid-row: 2; }
  #nucleos .extrato-lead { grid-column: 2; grid-row: 2; align-self: end; margin: 0; padding-bottom: 6px; }
  #nucleos .extrato-rows,
  #nucleos .extrato-total { grid-column: 1 / -1; }
}

/* a grade */
#nucleos .extrato-rows {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  margin-top: clamp(36px, 4.5vw, 64px);
}
@media (min-width: 640px) { #nucleos .extrato-rows { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { #nucleos .extrato-rows { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; } }
#nucleos .extrato-row,
#nucleos .extrato-row--integracao { margin: 0; border: 0; }

/* o cartão */
#nucleos .ext-link,
#nucleos a.ext-link,
#nucleos .extrato-row--integracao .ext-link--static {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 240px;
  margin: 0;
  padding: 26px 26px 28px;
  border-radius: 22px;
  background: var(--mx-paper);
  box-shadow: 0 1px 2px rgba(26, 29, 36, 0.05);
  color: var(--text-primary);
  transition: background-color 280ms var(--ease-standard), transform 280ms var(--ease-standard), box-shadow 280ms var(--ease-standard);
}
#nucleos .ext-link::before { display: none; }
#nucleos .ext-num {
  font-family: var(--font-sans);
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--text-tertiary);
  transition: color 280ms var(--ease-standard);
}
#nucleos .ext-nome {
  margin-top: auto;
  padding-top: 44px;
  max-width: 17ch;
  font-size: clamp(1.3rem, 0.5vw + 1.05rem, 1.55rem);
  line-height: 1.18;
  background: none;
  transition: color 280ms var(--ease-standard);
}
#nucleos .ext-linha {
  margin-top: 12px;
  max-width: none;
  font-size: 0.9375rem;
  line-height: 1.55;
  transition: color 280ms var(--ease-standard);
}
#nucleos .ext-go {
  position: absolute;
  top: 20px;
  right: 20px;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--warm-100);
  color: var(--text-primary);
  font-size: 1rem;
  line-height: 1;
  transform: rotate(-45deg);
  transition: background-color 280ms var(--ease-standard), color 280ms var(--ease-standard), transform 280ms var(--ease-standard);
}
@media (hover: hover) and (pointer: fine) {
  #nucleos a.ext-link:hover {
    background: var(--cool-900);
    transform: translateY(-3px);
    box-shadow: 0 24px 44px -26px rgba(15, 17, 22, 0.55);
  }
  #nucleos a.ext-link:hover .ext-nome { color: var(--text-inverse); }
  #nucleos a.ext-link:hover .ext-linha { color: var(--text-inverse-secondary); }
  #nucleos a.ext-link:hover .ext-num { color: var(--brand-300); }
  #nucleos a.ext-link:hover .ext-go { background: var(--brand-300); color: var(--cool-900); transform: rotate(0deg); }
}
#nucleos a.ext-link:focus-visible { outline: 2px solid var(--brand-600); outline-offset: 3px; }

/* Integração: o cartão dourado */
#nucleos .extrato-row--integracao .ext-link--static {
  background: var(--brand-300);
  box-shadow: 0 18px 36px -24px rgba(168, 122, 31, 0.55);
}
#nucleos .extrato-row--integracao .ext-num--amp {
  font-family: var(--font-display);
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0;
  color: var(--cool-900);
}
#nucleos .extrato-row--integracao .ext-nome { color: var(--cool-900); }
#nucleos .extrato-row--integracao .ext-linha { color: #3D2E0A; }

/* fecho: a barra escura logo abaixo da grade */
#nucleos .extrato-total { margin-top: 14px; }

@media (max-width: 639.98px) {
  #nucleos .ext-link,
  #nucleos a.ext-link,
  #nucleos .extrato-row--integracao .ext-link--static { min-height: 0; padding: 22px 22px 24px; }
  #nucleos .ext-nome { padding-top: 28px; }
  #nucleos .ext-go { display: grid; top: 16px; right: 16px; width: 36px; height: 36px; }
}

/* ============================================================
   5. BRANCO DE VERDADE (24/09/2026)
   O dono: "não gosto desse fundo branco meio sujo, quero o branco
   de verdade… mas que integre com o site". O bege (e o grão de
   papel que o sujava) sai; os tons de apoio passam para a família
   fria da tinta da capa, e os cartões viram cinza bem claro sobre
   o branco. Assim a home fica igual à equipe e aos artigos.
   ============================================================ */
:root {
  --warm-0: #FFFFFF;
  --warm-50: #F6F7F9;
  --warm-100: #FFFFFF;
  --warm-200: #EEF0F3;
  --warm-300: #E3E6EB;
  --warm-400: #C9CDD5;
  --warm-500: #6B707A;
  --warm-600: #525761;
  --warm-700: #3D4149;
  --warm-800: #282B31;
  --bg-canvas: #FFFFFF;
  --bg-surface: #F6F7F9;
  --bg-surface-hover: #EEF0F3;
  --bg-surface-recessed: #EEF0F3;
  --mx-paper: #F4F5F7;
  --mx-shadow: none;
}
html, body { background-color: #FFFFFF; }

/* seções claras: branco liso, sem grão, sem vinheta, sem grade */
#clinica,
#nucleos,
#clientes,
#unidades,
#faq,
.hero-proof,
.section-rule {
  background: #FFFFFF;
  background-image: none;
}
#clinica::before,
#nucleos::before,
#unidades::before,
#faq::before { display: none; }
/* numerais-fantasma: ficam, em cinza frio bem leve */
#clinica::after,
#unidades::after,
#faq::after { color: var(--cool-900); opacity: 0.045; }
.hero-proof { border-bottom-color: var(--warm-300); }

/* cabeçalho sobre o branco */
.site-header.theme-light,
.site-header.theme-light.scrolled,
.site-header.is-condensed.theme-light {
  background-color: rgba(255, 255, 255, 0.9);
}
.site-header.theme-light.scrolled { border-bottom-color: var(--warm-300); }
.site-header.theme-light .mobile-menu { background-color: #FFFFFF; }

/* cartões claros: cinza bem claro sobre branco, sem sombra de papel */
#clinica .clinica-col--texto,
#nucleos .ext-link,
#nucleos a.ext-link,
#clientes .logo-item,
#unidades .unidade-card,
#faq .faq-item,
#faq .faq-item:last-child,
#faq .faq-item[open] {
  background: var(--mx-paper);
  box-shadow: none;
}
#nucleos .ext-go { background: #FFFFFF; }
#unidades .unidade-index { background: #FFFFFF; }
#unidades .phone { background: #FFFFFF; border-color: var(--warm-300); }
#faq .faq-icon { background: #FFFFFF; }
#faq .faq-item[open] .faq-icon { background: var(--cool-900); }
@media (hover: hover) and (pointer: fine) {
  #unidades .unidade-card:hover { background: var(--warm-200); box-shadow: none; }
  #faq .faq-item:hover { background: var(--warm-200); }
}

:root {
  /* o "&" da logo embutido (assets/e-logo.svg): como máscara, um arquivo
     separado não carrega quando a página é aberta direto do disco no Chrome */
  --e-logo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 560 636'%3E%3Cpath fill='%23F0BB4A' fill-rule='evenodd' d='M169.0,617.0C120.6,611.7 83.6,596.1 56.3,569.6C35.8,549.8 23.2,525.6 18.6,496.9C14.9,474.8 18.2,445.5 26.7,423.5C30.1,414.8 40.2,395.3 43.1,391.7L46.1,388.0L82.7,388.3C116.2,388.5 119.4,388.6 120.4,390.2C121.2,391.5 120.9,394.1 119.3,400.7C116.5,411.8 114.0,433.3 113.8,447.0C113.6,459.0 116.3,481.5 119.1,490.9C120.1,494.4 121.0,498.0 121.0,498.9C121.1,499.8 121.9,502.3 123.0,504.5C124.1,506.7 124.9,509.0 125.0,509.7C125.0,510.8 127.5,516.3 130.2,521.4C150.2,558.6 182.4,580.3 226.8,586.4C268.1,592.1 306.7,582.1 348.5,554.7C359.5,547.5 361.0,546.2 361.0,543.9C361.0,542.9 352.4,532.5 341.8,520.8C331.3,509.1 317.2,493.4 310.6,486.1C303.9,478.7 291.7,465.2 283.5,456.1C275.2,446.9 250.4,419.5 228.4,395.0C206.3,370.5 179.0,340.1 167.5,327.5C106.4,259.8 86.7,230.3 75.3,189.0C72.7,179.9 72.6,178.4 72.6,154.5C72.6,130.3 72.6,129.2 75.3,119.5C76.8,114.0 78.5,109.1 79.0,108.6C79.6,108.0 80.0,106.9 80.0,106.1C80.0,103.4 89.0,86.9 94.4,79.7C114.4,52.8 146.2,33.2 183.7,24.5C203.1,20.0 239.7,18.6 261.6,21.4C298.5,26.3 323.1,36.7 343.4,56.0C366.8,78.2 376.4,108.1 371.5,143.0C370.6,149.9 369.2,156.8 368.5,158.5C367.9,160.2 367.0,163.2 366.6,165.2C365.4,171.9 355.7,193.1 351.5,198.4L349.3,201.2L316.0,201.0C297.7,201.0 282.3,200.7 281.7,200.3C280.5,199.5 281.5,192.0 284.0,184.5C290.1,165.8 292.9,137.2 291.0,113.8C290.3,105.2 288.9,95.9 287.9,92.5C286.9,89.2 286.0,85.6 286.0,84.5C286.0,83.4 285.1,80.7 284.0,78.5C282.9,76.3 282.0,74.0 282.0,73.5C281.9,71.7 277.6,63.7 273.5,57.5C257.6,33.4 230.8,25.2 200.3,35.1C178.8,42.1 160.5,66.1 156.9,92.0C153.7,115.0 153.7,117.2 156.9,138.6C159.4,155.1 170.0,179.5 183.8,200.5C196.5,219.7 200.5,224.3 284.0,317.0C323.8,361.3 370.8,413.5 388.3,433.0C428.5,477.7 425.3,474.4 427.6,473.2C431.4,471.1 442.6,445.4 447.0,428.9C448.0,425.2 449.1,421.7 449.4,421.1C449.8,420.5 450.7,416.1 451.5,411.3C452.3,406.4 453.4,400.5 453.9,398.0C454.4,395.5 455.3,385.3 456.0,375.2C457.4,353.9 456.1,326.7 452.9,310.8C451.9,305.5 451.0,300.2 451.0,299.0C451.0,297.9 450.1,293.5 448.9,289.2C445.2,275.4 442.9,267.6 441.6,263.4C439.3,256.7 439.7,256.6 457.6,258.5C476.1,260.6 477.1,261.1 478.9,270.7C479.5,273.9 480.8,280.1 481.8,284.5C484.3,296.2 484.3,353.5 481.8,366.0C480.8,370.7 479.6,376.8 479.1,379.5C477.6,387.6 474.9,398.3 473.6,401.5C472.8,403.2 471.9,406.1 471.6,408.0C470.8,411.9 467.7,420.4 464.9,426.6C463.8,428.9 463.0,431.3 463.0,432.0C463.0,432.6 462.4,434.4 461.6,435.8C460.8,437.3 457.4,444.1 454.0,451.0C448.3,462.7 440.3,476.5 437.3,480.1C436.6,480.9 436.0,482.6 436.0,483.8C436.0,485.3 453.0,505.1 487.9,544.4C516.4,576.4 540.3,603.7 540.9,604.9C541.6,606.1 541.8,607.5 541.5,608.0C541.1,608.6 519.4,609.0 482.2,609.0C432.2,609.0 423.1,608.8 421.4,607.5C420.2,606.7 408.6,594.4 395.5,580.0C382.4,565.7 371.4,554.0 371.1,554.0C370.0,554.0 365.3,557.4 359.1,562.7C345.1,574.6 320.4,590.0 302.8,597.6C284.2,605.7 264.6,611.5 243.5,615.1C232.7,616.9 225.9,617.3 203.5,617.6C188.7,617.7 173.1,617.5 169.0,617.0Z'/%3E%3C/svg%3E");
}

/* ============================================================
   6. O "&" É SEMPRE O DA LOGO (24/09/2026)
   Pedido do dono. assets/e-logo.svg foi vetorizado do "&"
   dourado de logo.original.png; entra como máscara, então a cor
   segue o lugar (tinta no cartão dourado, dourado no resto).
   ============================================================ */
#nucleos .extrato-row--integracao .ext-num--amp,
.section-rule .rule-mark {
  display: block;
  font-size: 0 !important;
  line-height: 0;
  color: transparent;
  -webkit-mask: var(--e-logo) no-repeat left center / contain;
  mask: var(--e-logo) no-repeat left center / contain;
}
#nucleos .extrato-row--integracao .ext-num--amp {
  width: 30px;
  height: 34px;
  background: var(--cool-900);
}
.section-rule .rule-mark {
  width: 22px;
  height: 25px;
  -webkit-mask-position: center;
  mask-position: center;
  background: var(--brand-300);
}
.site-footer::after {
  content: "";
  right: 1%;
  bottom: -5%;
  width: clamp(9rem, 20vw, 18rem);
  aspect-ratio: 560 / 636;
  font-size: 0;
  line-height: 0;
  background: var(--brand-300);
  opacity: 0.055;
  -webkit-mask: var(--e-logo) no-repeat center / contain;
  mask: var(--e-logo) no-repeat center / contain;
}

/* ============================================================
   7. FONTE: MANROPE NO LUGAR DA FRAUNCES E DA INTER (24/09/2026)
   Pedido do dono: "implemente aquela fonte que eu tinha gostado…
   num tamanho igual à outra… só mude a fonte". Tamanhos, pesos de
   layout e quebras de linha ficam como estavam: cada face abaixo é
   a mesma Manrope, calibrada por medição (largura do texto, fonte
   antiga × nova, na própria página) para ocupar o mesmo espaço.
   · KO Texto ........ no lugar da Inter (a Manrope é ~4% mais estreita)
   · KO Titulos ...... no lugar da Fraunces nos títulos comuns
   · KO Titulos Grande no lugar da Fraunces "de cartaz" (opsz 110–144,
                       que desenha a Fraunces bem mais estreita)
   A Manrope não tem itálico: font-synthesis:none evita o itálico
   falso; os destaques ficam retos e mantêm a cor.
   ============================================================ */
@font-face {
  font-family: "KO Texto";
  src: url("fonts/manrope-latin.woff2") format("woff2");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
  size-adjust: 104%;
}
@font-face {
  font-family: "KO Titulos";
  src: url("fonts/manrope-latin.woff2") format("woff2");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
  size-adjust: 96%;
}
@font-face {
  font-family: "KO Titulos Grande";
  src: url("fonts/manrope-latin.woff2") format("woff2");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
  size-adjust: 77.5%;
}
:root {
  --font-display: "KO Titulos", Arial, sans-serif;
  --font-serif: var(--font-display);
  --font-sans: "KO Texto", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --font-cartaz: "KO Titulos Grande", Arial, sans-serif;
}
html { font-synthesis: none; }

/* onde a Fraunces usava o corte "de cartaz" (mesmos seletores e faixas) */
.h1-hero,
.cta-final h2.h1,
.clientes-num { font-family: var(--font-cartaz); }
@media (min-width: 1024px) {
  .hero-v2 .hero-headline,
  .h1,
  .card-metric .number,
  .hero-v2 .kpi-num,
  .tese-pullquote { font-family: var(--font-cartaz); }
}
@media (max-width: 767.98px) {
  .office-story-content h2 { font-family: var(--font-cartaz); max-width: 6.53em; }
}

/* a Fraunces 400 já é encorpada; a Manrope pede 600 nos títulos */
h1, h2, h3,
.h1,
.hero-v2 .hero-headline,
.hero-v2 .hl-word,
.extrato-title,
.ext-nome,
.extrato-total .total-label,
.socio-nome,
.more-num,
.clientes-num,
.unidade-card .city,
.hero-v2 .kpi-num,
.hero-proof-num,
.form-proof-num,
.step h3,
.conviccao h3,
.office-story-content h2 { font-weight: 600 !important; }

/* Larguras medidas em "ch" (a largura do algarismo 0) mudariam com a
   troca de fonte e quebrariam os títulos em outra linha. Ficam travadas
   no equivalente exato que tinham com a Fraunces (0 = 0,646em no corte
   comum; 0,590em no corte de cartaz, usado a partir de 1024px). */
.clinica-col--titulo h2 { max-width: 9.6em; }
.equipe-preview-header .h1,
.metodo h2 { max-width: 11.52em; }
.unidades h2,
.faq h2 { max-width: 8.96em; }
.cta-final h2 { max-width: 10.63em; }
#nucleos .ext-nome { max-width: 10.98em; }
.cta-quote { max-width: 23.29em; }
.concept-chain { max-width: 38.76em; }
@media (min-width: 1024px) {
  .clinica-col--titulo h2 { max-width: 8.85em; }
  .equipe-preview-header .h1,
  .metodo h2 { max-width: 10.62em; }
  .unidades h2,
  .faq h2 { max-width: 8.26em; }
}

/* ============================================================
   8. POSICIONAMENTO: A EMPRESA NO CENTRO, OS NÚCLEOS EM ÓRBITA
   (24/09/2026) Pedido do dono: "uma empresa no meio e vários
   núcleos em volta… algo visual; título e texto na esquerda, o
   visual na direita". Duas versões recusadas (bolhas com fios:
   "está feio"; grade de cartões: "ainda não gostei"); das três
   opções mostradas lado a lado ele escolheu esta: "órbita ficou
   melhor". Painel preto; um prédio isométrico (SVG gerado por
   scratchpad/pos-opcoes/build.py) com a etiqueta "Sua empresa";
   os 11 núcleos giram em volta conforme a rolagem
   (assets/orbita.js): o da frente fica dourado, os de trás passam
   por trás do prédio. No celular os núcleos viram só ícones e o
   da frente dá nome à legenda. Cada núcleo leva à própria página.
   ============================================================ */
#clinica .clinica-grid--mapa { align-items: center; }
@media (min-width: 1024px) {
  #clinica .clinica-grid--mapa {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(40px, 5vw, 80px);
  }
  /* a órbita ocupa o canto do "I" fantasma do capítulo */
  #clinica::after { display: none; }
}
#clinica .clinica-texto { margin-top: clamp(22px, 2.4vw, 32px); }
#clinica .clinica-texto .lead { margin-bottom: var(--space-5); max-width: 32em; }
#clinica .clinica-texto .body-text { margin-bottom: 0; max-width: 34em; }
/* empilhado (tablet): tamanho confortável, centrado */
@media (max-width: 1023.98px) {
  .pos-orbita { width: 100%; max-width: 560px; justify-self: center; }
}
@media (max-width: 559.98px) {
  .pos-orbita { width: auto; max-width: none; justify-self: stretch; }
}
@media (prefers-reduced-motion: reduce) {
  .po-chip { transition: none; }
}

/* ---------------------------------------------------------------- o prédio */
.predio { display: block; width: 100%; height: auto; overflow: visible; }
.predio .b-topo { fill: var(--b-topo); }
.predio .b-esq { fill: var(--b-esq); }
.predio .b-dir { fill: var(--b-dir); }
.predio .b-vidro { fill: var(--b-vidro); }
.predio .b-vidro--dir { fill: var(--b-vidro-dir); }
.predio .b-luz { fill: #F0BB4A; }
.predio .b-mont { stroke: var(--b-mont); stroke-width: 0.35; }
.predio .b-aresta { stroke: var(--b-aresta); stroke-width: 0.45; }
.predio .b-aresta--vert { stroke-width: 0.35; }
.predio .b-praca { fill: var(--b-praca); }
.predio .b-praca-lado { fill: var(--b-praca-lado); }
.predio .b-praca-lado--dir { fill: var(--b-praca-lado-dir); }
.predio .b-praca-fio { stroke: #F0BB4A; stroke-width: 0.6; opacity: 0.75; }

/* paleta sobre fundo escuro */
.pos-orbita {
  --b-topo: #5A6376;
  --b-esq: #3A4150;
  --b-dir: #2A303C;
  --b-vidro: #141820;
  --b-vidro-dir: #10131A;
  --b-mont: rgba(255, 255, 255, 0.07);
  --b-aresta: rgba(255, 255, 255, 0.22);
  --b-praca: #2B313D;
  --b-praca-lado: #1D222B;
  --b-praca-lado-dir: #161A21;
}
/* etiqueta dourada "Sua empresa" em cima da torre */
.tag-empresa {
  position: absolute;
  left: calc(var(--tt-x) * 100%);
  top: calc(var(--tt-y) * 100%);
  transform: translate(-50%, calc(-100% - 4px));
  display: flex;
  flex-direction: column;
  align-items: center;
  pointer-events: none;
}
.tag-empresa span {
  padding: 0.5em 0.95em;
  border-radius: 999px;
  background: #F0BB4A;
  color: #1A1D24;
  font-family: var(--font-display);
  font-size: clamp(0.7rem, 2.4cqi, 0.95rem);
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1;
  white-space: nowrap;
  box-shadow: 0 10px 24px -10px rgba(138, 101, 22, 0.7);
}
.tag-empresa::after {
  content: "";
  width: 1px;
  height: clamp(8px, 2.6cqi, 16px);
  background: #F0BB4A;
}

.ic { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }

/* ---------------------------------------------------------------- a órbita */
.pos-orbita {
  margin: 0;
  padding: clamp(12px, 2vw, 22px);
  border-radius: var(--mx-r-panel);
  background:
    radial-gradient(70% 55% at 50% 58%, rgba(240, 187, 74, 0.16), transparent 70%),
    linear-gradient(180deg, #171A21 0%, #0E1015 100%);
  overflow: hidden;
}
.po-palco { position: relative; aspect-ratio: 1 / 1; container-type: inline-size; }
.po-anel { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.po-anel path { fill: none; stroke: rgba(240, 187, 74, 0.5); stroke-width: 0.28; stroke-dasharray: 0.6 1.1; }
.po-anel--tras { z-index: 1; }
.po-anel--tras path { stroke: rgba(240, 187, 74, 0.28); }
.po-anel--frente { z-index: 3; }
.po-predio {
  position: absolute;
  z-index: 2;
  width: 54%;
  left: calc(50% - var(--pc-x) * 54%);
  top: calc(60% - var(--pc-y) * 54% * var(--ratio));
  filter: drop-shadow(0 24px 30px rgba(0, 0, 0, 0.45));
}
.po-nucleos { list-style: none; margin: 0; padding: 0; }
.po-nucleos li {
  position: absolute;
  left: 50%;
  top: 60%;
  transform: translate(-50%, -50%) scale(calc(0.74 + 0.26 * var(--d, 1)));
  opacity: calc(0.4 + 0.6 * var(--d, 1));
  z-index: 1;
}
.po-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  padding: 0.55em 0.95em 0.55em 0.7em;
  border-radius: 999px;
  background: rgba(30, 34, 43, 0.94);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #FFFFFF;
  font-family: var(--font-sans);
  font-size: clamp(0.72rem, 2.4cqi, 0.9rem);
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  box-shadow: 0 12px 26px -14px rgba(0, 0, 0, 0.8);
  transition: background-color 240ms ease, color 240ms ease, border-color 240ms ease;
}
.po-chip .ic { width: 1.35em; height: 1.35em; color: #F0BB4A; transition: color 240ms ease; }
.po-nucleos li.is-frente .po-chip { background: #F0BB4A; border-color: transparent; color: #1A1D24; }
.po-nucleos li.is-frente .po-chip .ic { color: #1A1D24; }
@media (hover: hover) and (pointer: fine) {
  .po-chip:hover { background: #FFFFFF; color: #1A1D24; border-color: transparent; }
  .po-chip:hover .ic { color: #1A1D24; }
}
.po-legenda { display: none; }
@media (max-width: 559.98px) {
  .pos-orbita { margin-inline: -6px; }
  .po-nome { display: none; }
  .po-chip { padding: 0.6em; }
  .po-chip .ic { width: 1.5em; height: 1.5em; }
  .po-legenda {
    position: absolute;
    left: 50%;
    bottom: 1%;
    transform: translateX(-50%);
    display: flex;
    align-items: baseline;
    gap: 0.5em;
    margin: 0;
    color: #FFFFFF;
    font-family: var(--font-display);
    font-size: 0.95rem;
    font-weight: 600;
    white-space: nowrap;
    z-index: 6;
  }
  .po-leg-num { color: #F0BB4A; font-family: var(--font-sans); font-size: 0.72rem; letter-spacing: 0.08em; }
}
