/* ========== NAV ========== */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:50;
  backdrop-filter: blur(6px) saturate(120%);
  -webkit-backdrop-filter: blur(6px) saturate(120%);
  background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.02));
  border-bottom: 1px solid transparent;
  transition: background .35s ease, backdrop-filter .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.nav.is-scrolled{
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  background: linear-gradient(180deg, rgba(250,246,236,.92), rgba(250,246,236,.78));
  border-bottom: 1px solid var(--line);
  box-shadow: 0 14px 40px -28px rgba(15,29,51,.25);
}
.nav-inner{ display:flex; align-items:center; justify-content:space-between; padding: 10px 0; gap: 18px; }
.nav-logo{
  display:flex; align-items:center; gap:10px;
  font-family:var(--serif); font-style:italic; font-weight:600;
  font-size:15px; letter-spacing:-.01em; color: var(--ink);
}
.nav-logo .mark{
  width:34px;height:34px;border-radius:50%;
  background: transparent;
  border:0;
  display:flex;align-items:center;justify-content:center;color:var(--gold);
  overflow:hidden;
}
.nav-logo .mark img{ width:100%; height:100%; object-fit:contain; display:block; }
.nav-logo .lo{ display:flex; flex-direction:column; line-height:1.05; }
.nav-logo .wm{
  font-family:var(--sans); font-style:normal; font-weight:700;
  font-size:18px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--ink);
}
.nav-logo .lo small{
  font-family:var(--mono); font-style:normal; font-weight:400;
  font-size:9.5px; letter-spacing:.22em; text-transform:uppercase;
  color:var(--ink-mute); margin-top:2px;
}
.nav-links{ display:flex; gap:24px; font-family:var(--sans); font-size:12.5px; color:var(--ink-2); }
.nav-links a{ position:relative; padding:6px 0; transition:color .25s; }
.nav-links a:hover{ color:var(--gold); }
.nav-links a::after{
  content:""; position:absolute; left:0; bottom:0; height:1px; width:0;
  background: var(--gold); transition: width .25s;
}
.nav-links a:hover::after{ width:100%; }
.nav-cta{ display:flex; align-items:center; gap:12px; }
.nav-cta .btn{ padding: 9px 16px; font-size: 12.5px; }
.nav-cta .btn .arr{ width: 18px; height: 18px; font-size: 11px; }
@media (max-width: 860px){ .nav-links{ display:none; } }
@media (max-width: 560px){
  .nav-inner{ gap: 8px; padding: 8px 0; }
  .nav-logo{ gap: 8px; }
  .nav-logo .mark{ width: 30px; height: 30px; flex: 0 0 auto; }
  .nav-logo .wm{ font-size: 12px !important; letter-spacing: .06em; line-height: 1.15; }
  .nav-logo .lo small{ display: none; }
  .nav-cta .btn{ padding: 9px 12px; font-size: 11.5px; white-space: nowrap; }
}
@media (max-width: 430px){
  .nav-cta .btn{ padding: 8px 11px; font-size: 10.5px; letter-spacing: 0; gap: 7px; }
  .nav-cta .btn .arr{ display: none; }
}
@media (max-width: 360px){
  .nav-logo .wm{ font-size: 11px !important; }
  .nav-cta .btn{ padding: 8px 10px; font-size: 10px; }
}

/* ========== HERO ========== */
.hero{
  padding-top: 88px; padding-bottom: 96px;
  position:relative; overflow:hidden;
  min-height: 720px;
}
.hero-bg{
  position:absolute; inset: 0; z-index: 0; pointer-events:none;
}
.hero-bg img{
  position:absolute; right: -8%; top: -4%;
  width: 78%; height: 110%; object-fit: cover; object-position: 50% 30%;
  filter: saturate(.78) contrast(1.02) brightness(.96);
  -webkit-mask-image:
    radial-gradient(ellipse 95% 90% at 78% 50%, #000 0%, #000 40%, transparent 78%);
          mask-image:
    radial-gradient(ellipse 95% 90% at 78% 50%, #000 0%, #000 40%, transparent 78%);
}
.hero-bg-fade{
  position:absolute; inset:0;
  background:
    linear-gradient(90deg, var(--bg-1) 0%, var(--bg-1) 28%, rgba(251,250,246,.85) 42%, rgba(251,250,246,.35) 60%, transparent 80%),
    linear-gradient(180deg, var(--bg-1) 0%, transparent 14%, transparent 80%, var(--bg-1) 100%);
}
.hero-mesh{
  position:absolute; inset:0; pointer-events:none; z-index:1;
  background:
    radial-gradient(600px 380px at 18% 30%, rgba(27,58,107,.06), transparent 60%),
    radial-gradient(500px 320px at 85% 80%, rgba(201,168,76,.10), transparent 60%);
  filter: saturate(120%); opacity:1; transition: opacity .4s;
}
.hero[data-mesh="off"] .hero-mesh{ opacity:0; }
.hero .container{ position:relative; z-index:2; }

.hero-grid{
  position:relative; z-index:1; display:grid; gap:48px;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); align-items:center;
}
.hero-grid-solo{ grid-template-columns: minmax(0, 720px); }
@media (max-width: 960px){
  .hero-grid, .hero-grid-solo{ grid-template-columns: 1fr; gap:36px; }
  .hero-bg img{
    width: 130%; right: -30%;
    -webkit-mask-image: radial-gradient(ellipse 90% 70% at 75% 40%, #000 0%, #000 30%, transparent 70%);
            mask-image: radial-gradient(ellipse 90% 70% at 75% 40%, #000 0%, #000 30%, transparent 70%);
    opacity: .35;
  }
  .hero-bg-fade{
    background: linear-gradient(180deg, var(--bg-1) 0%, rgba(251,250,246,.75) 30%, rgba(251,250,246,.85) 100%);
  }
}

.hero-chip{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--mono); font-size:11px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--gold); padding:8px 14px; border-radius:999px;
  border:1px solid var(--line-2);
  background: linear-gradient(180deg, rgba(201,168,76,.14), rgba(201,168,76,.04));
}
.hero-chip .dot{ width:6px;height:6px;border-radius:50%; background:var(--gold); box-shadow:0 0 10px rgba(169,136,38,.6); }
.hero-title{
  font-family:var(--serif); font-style:italic; font-weight:500;
  font-size: clamp(38px, 5.8vw, 72px); line-height: 1.04; letter-spacing:-.015em;
  color:var(--ink); margin: 22px 0 0; text-wrap: balance;
}
.hero-title em{
  font-style:italic;
  background: linear-gradient(180deg, var(--gold-2), var(--gold-deep));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color: transparent;
}
.hero-lede{ margin-top: 24px; max-width: 62ch; font-size: 18.5px; line-height: 1.62; color: var(--ink-2); text-wrap: pretty; }
.hero-ctas{ display:flex; flex-wrap:wrap; gap:14px; margin-top: 28px; }

.hero-kpis{
  margin-top: 44px; display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px;
  border-top: 1px solid var(--line); padding-top: 28px;
}
@media (max-width: 640px){ .hero-kpis{ grid-template-columns: 1fr; gap: 16px; } }
.kpi .num{
  font-family:var(--serif); font-style:italic; font-weight:500;
  font-size: clamp(28px, 3.6vw, 40px); color: var(--gold); line-height:1;
}
.kpi .lbl{ margin-top: 8px; font-size: 13px; line-height:1.45; color: var(--ink-2); max-width: 28ch; }

.hero-portrait{
  position:relative; border-radius: var(--r-lg); overflow:hidden;
  border: 1px solid var(--line-2); box-shadow: var(--shadow-1);
  aspect-ratio: 4/5; background: linear-gradient(135deg,#faf6ec,#fff);
}
.hero-portrait img{ width:100%; height:100%; object-fit: cover; }
.hero-portrait .frame{
  position:absolute; inset:14px; border:1px solid rgba(201,168,76,.55); border-radius:14px; pointer-events:none;
}
.hero-portrait .meta{
  position:absolute; left:18px; bottom:18px; right:18px;
  display:flex; align-items:end; justify-content:space-between; gap:12px;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.18em; text-transform:uppercase;
  color: #fff; text-shadow: 0 2px 8px rgba(0,0,0,.7);
}
.hero-portrait .meta::before{
  content:""; position:absolute; left:-18px; right:-18px; bottom:-18px; height:120px;
  background: linear-gradient(180deg, transparent, rgba(15,29,51,.7));
  pointer-events:none; z-index:-1;
}
.hero-portrait .meta .name{
  font-family:var(--serif); font-style:italic; font-weight:600; font-size:18px;
  letter-spacing:-.01em; text-transform:none; color:var(--gold-2);
}
.hero-portrait .ph{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.2em; color:var(--ink-mute); text-align:center;
  background-image:repeating-linear-gradient(45deg, rgba(169,136,38,.08) 0 12px, transparent 12px 24px);
}

/* ========== MARQUEE ========== */
.marquee{
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  background: linear-gradient(180deg, rgba(27,58,107,.05), rgba(27,58,107,.0));
  overflow:hidden; padding: 22px 0;
}
.marquee-track{
  display:flex; gap: 48px; animation: marq 60s linear infinite; white-space:nowrap;
  font-family:var(--mono); font-size:12px; letter-spacing:.22em; text-transform:uppercase;
  color: var(--ink-mute);
}
.marquee-track span.b{ color: var(--gold); }
@keyframes marq{ from{ transform: translateX(0); } to{ transform: translateX(-50%); } }

/* ========== TESE ========== */
.tese-grid{ display:grid; gap:44px; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); align-items:center; }
@media (max-width: 900px){ .tese-grid{ grid-template-columns: 1fr; } }
.tese-points{ margin-top: 28px; display:flex; flex-direction:column; gap: 14px; padding:0; }
.tese-points li{
  list-style:none; display:flex; gap:14px;
  padding: 14px 16px; border-radius: 12px;
  border: 1px solid var(--line);
  background: #fff;
  font-size: 15px; color: var(--ink-2);
  box-shadow: 0 1px 0 rgba(15,29,51,.02);
}
.tese-points .num{ font-family:var(--mono); font-size:11px; color: var(--gold); letter-spacing:.18em; flex:none; padding-top: 2px; }
.gap-chart{
  position:relative; border-radius: var(--r-lg); border: 1px solid var(--line);
  background:
    radial-gradient(120% 80% at 0% 0%, rgba(27,58,107,.06), transparent 60%),
    linear-gradient(180deg,#ffffff,#faf6ec);
  padding: 22px; box-shadow: var(--shadow-1);
}
.gap-chart .head{
  display:flex; align-items:center; justify-content:space-between;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.2em; color:var(--ink-mute); text-transform:uppercase;
  margin-bottom: 12px;
}
.gap-chart .head .tag{ color: var(--gold); }
.gap-svg{ width:100%; height:auto; display:block; }
.gap-legend{
  display:flex; gap:18px; flex-wrap:wrap; margin-top: 14px;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase;
  color: var(--ink-mute);
}
.gap-legend .dot{ display:inline-block; width:10px; height:10px; border-radius:50%; margin-right:8px; vertical-align:middle; }

/* ========== ARGUMENTOS ========== */
.args-grid{ display:grid; gap: 18px; grid-template-columns: repeat(3, minmax(0,1fr)); }
@media (max-width: 980px){ .args-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 640px){ .args-grid{ grid-template-columns: 1fr; } }
.arg-card{
  position:relative; padding: 24px; border-radius: var(--r-lg); border: 1px solid var(--line);
  background: #fff;
  transition: transform .35s, border-color .35s, box-shadow .35s;
  display:flex; flex-direction:column; gap: 12px; min-height: 280px;
  box-shadow: 0 1px 0 rgba(15,29,51,.02);
}
.arg-card:hover{
  border-color: var(--line-2);
  transform: translateY(-2px);
  box-shadow: var(--shadow-2);
}
.arg-card .num{ font-family:var(--mono); font-size:11px; letter-spacing:.18em; color: var(--ink-mute); }
.arg-card .head{
  font-family:var(--serif); font-style:italic; font-weight:500; font-size: 24px; line-height: 1.18;
  color: var(--ink); text-wrap: balance;
}
.arg-card .lede{ font-size:15px; color: var(--ink-2); margin: 0; }
.arg-card .body{ font-size:14px; color: var(--ink-mute); line-height: 1.55; }
.arg-card .stat{
  margin-top:auto; padding-top: 14px; border-top: 1px dashed rgba(169,136,38,.4);
  font-family: var(--mono); font-size: 11.5px; letter-spacing:.1em; text-transform: uppercase;
  color: var(--gold);
}

/* ========== PULL BAND ========== */
.pull-band{
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  background: linear-gradient(180deg, rgba(201,168,76,.10), rgba(201,168,76,.0));
  padding: 64px 0;
}
.pull-band .text{
  font-family:var(--serif); font-style:italic; font-weight:400;
  font-size: clamp(26px, 3.6vw, 44px); line-height: 1.18; letter-spacing:-.01em;
  color: var(--ink); text-wrap: balance; max-width: 24ch;
}
.pull-band .text em{
  background:linear-gradient(180deg,var(--gold-2),var(--gold-deep));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
  font-style:italic;
}
.pull-band .row{ display:flex; align-items:center; gap: 28px; flex-wrap:wrap; }
.pull-band .mark{
  font-family:var(--serif); font-style:italic; font-size: 80px; color: var(--gold);
  line-height: 1; flex:none;
}

/* ========== SERVIÇOS ========== */
.svc-eixo{ margin-top: 36px; }
.svc-eixo:first-of-type{ margin-top: 0; }
.svc-eixo-head{
  display:flex; align-items:center; gap:14px; margin-bottom: 22px;
  flex-wrap:wrap;
}
.svc-eixo-head .badge{
  font-family:var(--mono); font-size:11px; letter-spacing:.2em; text-transform:uppercase;
  padding: 6px 12px; border-radius: 999px;
  border: 1px solid var(--line-2); color: var(--gold);
  background: linear-gradient(180deg, rgba(201,168,76,.10), rgba(201,168,76,.02));
}
.svc-eixo-head .ttl{
  font-family:var(--serif); font-style:italic; font-weight:500; font-size: 28px; color: var(--ink);
}
.svc-grid{ display:grid; gap: 18px; grid-template-columns: repeat(3, minmax(0,1fr)); }
@media (max-width: 980px){ .svc-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 640px){ .svc-grid{ grid-template-columns: 1fr; } }
.svc-card{
  position:relative; padding: 26px;
  border-radius: var(--r-lg); border: 1px solid var(--line);
  background: #fff;
  display:flex; flex-direction:column; gap:12px; min-height: 240px;
  transition: transform .3s, border-color .3s, box-shadow .3s;
  box-shadow: 0 1px 0 rgba(15,29,51,.02);
}
.svc-card:hover{ transform: translateY(-2px); border-color: var(--line-2); box-shadow: var(--shadow-2); }

/* Subtle eixo tints so cards read as intentional, not blank */
.svc-eixo--prev .svc-card{
  background: linear-gradient(180deg, rgba(201,168,76,.07), rgba(201,168,76,.02));
  border-color: rgba(169,136,38,.20);
}
.svc-eixo--prev .svc-card:hover{ border-color: rgba(169,136,38,.42); }
.svc-eixo--cont .svc-card{
  background: linear-gradient(180deg, rgba(27,58,107,.06), rgba(27,58,107,.015));
  border-color: rgba(27,58,107,.16);
}
.svc-eixo--cont .svc-card:hover{ border-color: rgba(27,58,107,.34); }
.svc-card .ico{
  width:42px;height:42px;border-radius:10px;
  background: linear-gradient(180deg, rgba(201,168,76,.18), rgba(201,168,76,.04));
  border: 1px solid var(--line-2);
  display:flex; align-items:center; justify-content:center; color: var(--gold);
}
.svc-card .ttl{
  font-family:var(--serif); font-style:italic; font-weight:500; font-size: 22px; line-height:1.2;
  color: var(--ink); text-wrap: balance;
}
.svc-card .num{ font-family:var(--mono); font-size:10.5px; letter-spacing:.22em; color:var(--ink-mute); }
.svc-card .desc{ font-size: 14px; color: var(--ink-2); line-height: 1.55; }

.svc-bullets{
  list-style:none; padding:0; margin: 4px 0 0;
  display:flex; flex-direction:column; gap:8px;
}
.svc-bullets li{
  position:relative;
  padding-left: 20px;
  font-size: 14px; color: var(--ink-2); line-height: 1.5;
}
.svc-bullets li::before{
  content:"";
  position:absolute; left: 0; top: 9px;
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 0 3px rgba(201,168,76,.12);
}

/* Centralização da seção Serviços */
#servicos .section-label{ justify-content: center; }
#servicos .section-label .line{ display: none; }
#servicos > .container > .h2,
#servicos .reveal > .h2{ text-align: center; margin-left: auto; margin-right: auto; }
#servicos .svc-eixo-head{
  flex-direction: column; justify-content: center; align-items: center;
  gap: 12px; text-align: center;
}
#servicos .svc-card{ align-items: center; text-align: center; }
#servicos .svc-bullets{ text-align: left; }
#servicos .svc-eixo--prev{
  padding-bottom: 40px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 40px;
}
#servicos .svc-grid{
  grid-template-columns: repeat(2, minmax(0, 360px));
  justify-content: center;
}
#servicos .svc-eixo{ margin-top: 0; }
@media (max-width: 760px){ #servicos .svc-grid{ grid-template-columns: minmax(0, 420px); } }

/* ========== PROCESSO ========== */
.proc-layout{
  display:grid; grid-template-columns: minmax(0,0.82fr) minmax(0,1.18fr);
  gap: 60px; align-items:start;
}
@media (max-width: 900px){ .proc-layout{ grid-template-columns: 1fr; gap: 34px; } }
.proc-intro{ position: sticky; top: 100px; }
@media (max-width: 900px){ .proc-intro{ position: static; } }
.proc-note{
  margin-top: 28px; max-width: 330px;
  padding: 18px 20px; border-radius: var(--r-md);
  border: 1px solid var(--line-2);
  background: linear-gradient(180deg, rgba(201,168,76,.08), rgba(201,168,76,.02));
}
.proc-note-k{ display:block; font-family:var(--mono); font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color: var(--gold); }
.proc-note-v{ display:block; margin-top:7px; font-size:15px; color: var(--ink-2); line-height:1.5; }
.proc-note-v strong{ color: var(--ink); font-weight:600; }

.proc-flow{ display:flex; flex-direction:column; }
.proc-step{ display:grid; grid-template-columns: 52px 1fr; gap: 22px; }
.proc-step.is-last{ padding-bottom: 0; }
.proc-marker{ display:flex; flex-direction:column; align-items:center; }
.proc-dot{
  width:52px; height:52px; border-radius:50%; flex:none;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--mono); font-size:15px; color:#fff;
  background: linear-gradient(155deg, var(--gold-2), var(--gold-deep));
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 10px 22px -10px rgba(169,136,38,.65), inset 0 1px 0 rgba(255,255,255,.3);
}
.proc-line{
  flex:1; width:2px; margin-top:8px; min-height:16px;
  background: linear-gradient(180deg, var(--line-2), transparent);
}
.proc-step.is-last .proc-line{ display:none; }
.proc-step.is-last .proc-card{ margin-bottom: 0; }
.proc-card{
  margin-bottom: 24px; padding: 17px 22px 19px;
  border-radius: var(--r-md); border:1px solid var(--line); background:#fff;
  box-shadow: 0 1px 0 rgba(15,29,51,.02);
  transition: transform .3s, border-color .3s, box-shadow .3s;
}
.proc-card:hover{ transform: translateY(-2px); border-color: var(--line-2); box-shadow: var(--shadow-2); }
.proc-card .h{ font-family:var(--serif); font-style:italic; font-weight:500; font-size:22px; color: var(--ink); line-height:1.2; }
.proc-card .b{ margin-top:6px; font-size:14.5px; color: var(--ink-2); line-height:1.55; }
@media (max-width: 640px){
  .proc-step{ grid-template-columns: 44px 1fr; gap:16px; }
  .proc-dot{ width:44px; height:44px; font-size:13px; }
}

/* ========== TIME ========== */
.team-grid{ display:grid; gap:22px; grid-template-columns: repeat(2, minmax(0,1fr)); }
@media (max-width: 820px){ .team-grid{ grid-template-columns: 1fr; } }
.team-card{
  display:grid; grid-template-columns: 200px 1fr; gap: 22px;
  padding: 22px; border-radius: var(--r-lg); border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 1px 0 rgba(15,29,51,.02);
}
@media (max-width: 540px){ .team-card{ grid-template-columns: 1fr; } }
.team-photo{
  aspect-ratio: 4/5; border-radius: 14px; overflow:hidden;
  border: 1px solid var(--line-2); background: linear-gradient(135deg,#faf6ec,#fff); position:relative;
}
.team-photo img{ width:100%; height:100%; object-fit:cover; }
.team-photo .ph{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.18em; color:var(--ink-mute); text-align:center;
  background-image:repeating-linear-gradient(45deg, rgba(169,136,38,.08) 0 10px, transparent 10px 20px);
}
.team-info .name{ font-family:var(--serif); font-style:italic; font-weight:500; font-size: 26px; color: var(--ink); line-height:1.1; }
.team-info .role{
  font-family:var(--mono); font-size:11px; letter-spacing:.18em; text-transform:uppercase;
  color: var(--gold); margin-top: 6px;
}
.team-info .bio{ font-size: 14px; color: var(--ink-2); line-height: 1.55; margin-top: 14px; }
.team-badges{ display:flex; flex-wrap:wrap; gap: 6px; margin-top: 14px; }
.team-badges span{
  font-family:var(--mono); font-size:10px; letter-spacing:.12em; text-transform:uppercase;
  padding: 5px 10px; border-radius: 999px;
  border: 1px solid var(--line); color: var(--ink-2); background: #faf6ec;
}

/* ========== FAQ ========== */
.faq-tabs{ display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.faq-tab{
  font-family:var(--mono); font-size:11px; letter-spacing:.16em; text-transform:uppercase;
  padding:9px 16px; border-radius:999px; cursor:pointer;
  border:1px solid var(--line); background:#fff; color:var(--ink-mute);
  transition: color .2s, border-color .2s, background .2s;
}
.faq-tab:hover{ color:var(--ink-2); border-color:var(--line-2); }
.faq-tab.active{
  color:var(--gold); border-color:var(--line-2);
  background: linear-gradient(180deg, rgba(201,168,76,.12), rgba(201,168,76,.03));
}
.faq{ display:flex; flex-direction:column; gap: 8px; }
.faq-item{
  border: 1px solid var(--line); border-radius: var(--r-md);
  background: #fff; overflow:hidden;
  transition: border-color .25s, background .25s, box-shadow .25s;
  box-shadow: 0 1px 0 rgba(15,29,51,.02);
}
.faq-item.open{
  border-color: var(--line-2);
  background: #faf6ec;
  box-shadow: var(--shadow-2);
}
.faq-q{
  width:100%; text-align:left; cursor:pointer;
  display:flex; align-items:center; justify-content:space-between; gap: 22px;
  padding: 20px 22px;
  font-family:var(--serif); font-style:italic; font-weight:500; font-size: 19px;
  color: var(--ink); background: transparent; border: 0;
}
.faq-q .plus{
  width:28px; height:28px; border-radius: 50%;
  border: 1px solid var(--line-2); color: var(--gold);
  display:flex; align-items:center; justify-content:center;
  font-family: var(--mono); font-size: 16px;
  flex:none; transition: transform .3s;
  background: #fff;
}
.faq-item.open .faq-q .plus{ transform: rotate(45deg); }
.faq-a{ display:grid; grid-template-rows: 0fr; transition: grid-template-rows .3s ease; }
.faq-item.open .faq-a{ grid-template-rows: 1fr; }
.faq-a > div{ overflow:hidden; }
.faq-a-inner{ padding: 0 22px 22px; font-size: 15px; color: var(--ink-2); line-height: 1.6; max-width: 70ch; }

/* ========== CTA FINAL ========== */
.cta-final{
  position:relative; margin: 32px 0; padding: 84px 44px;
  border-radius: var(--r-xl); border: 1px solid rgba(201,168,76,.28);
  background:
    linear-gradient(180deg, rgba(8,17,33,.82), rgba(8,17,33,.62) 45%, rgba(8,17,33,.86)),
    url("assets/clinic-opt.jpg") center 38% / cover no-repeat;
  box-shadow: 0 30px 80px -30px rgba(8,17,33,.55);
  overflow:hidden; text-align:center;
}
.cta-final::before{
  content:""; position:absolute; inset:-2px; border-radius: var(--r-xl);
  background: conic-gradient(from 140deg, var(--gold-2), transparent 30%, transparent 60%, var(--gold-2));
  filter: blur(30px); opacity:.5; z-index:0;
  transition: opacity .4s;
}
.cta-final[data-glow="off"]::before{ opacity: 0; }
.cta-final > *{ position:relative; z-index:1; }
.cta-final .eyebrow{ color: var(--gold-2); }
.cta-final .h{
  font-family:var(--serif); font-style:italic; font-weight:500;
  font-size: clamp(28px, 4vw, 48px); line-height:1.1;
  color: #fbf7ec; text-wrap: balance; margin: 14px 0 0;
}
.cta-final .h em{
  font-style:italic;
  background:linear-gradient(180deg,#e9cf8a,var(--gold-2));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.cta-final .lede{ margin: 16px auto 0; max-width: 60ch; color: rgba(251,247,236,.82); }
.cta-final .row{ margin-top: 32px; display:flex; gap: 14px; justify-content:center; flex-wrap:wrap; }
.cta-final .btn-ghost{ color:#fbf7ec; border-color: rgba(251,247,236,.4); }
.cta-final .btn-ghost:hover{ border-color: var(--gold-2); color: var(--gold-2); background: rgba(251,247,236,.06); }

/* ========== FOOTER ========== */
.foot{
  border-top: 1px solid var(--line);
  padding: 56px 0 36px; margin-top: 32px;
  position: relative; z-index: 2;
  background: #faf6ec;
}
.foot-grid{
  display:grid; gap: 32px;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 1fr);
}
@media (max-width: 760px){ .foot-grid{ grid-template-columns: 1fr; } }
.foot h5{
  font-family:var(--mono); font-size:10.5px; letter-spacing:.22em; text-transform:uppercase;
  color: var(--ink-mute); margin: 0 0 12px; font-weight: 500;
}
.foot ul{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap: 8px; font-size: 14px; color: var(--ink-2); }
.foot ul a:hover{ color: var(--gold); }
.foot .tagline{ color: var(--ink-2); max-width: 38ch; font-size: 14.5px; line-height: 1.55; margin-top: 14px; }
.foot-socials{ display:flex; gap: 10px; margin-top: 18px; }
.foot-socials a{
  width: 40px; height: 40px; border-radius: 12px;
  display:flex; align-items:center; justify-content:center;
  background: #fff;
  border: 1px solid var(--line);
  color: var(--ink-2); transition: color .25s, border-color .25s, background .25s, transform .25s;
}
.foot-socials a:hover{
  color: var(--gold); border-color: var(--line-2);
  background: #fff; transform: translateY(-2px);
}
.foot-bottom{
  margin-top: 40px; padding-top: 22px; border-top: 1px solid var(--line);
  display:flex; align-items:center; justify-content:space-between; gap: 20px; flex-wrap:wrap;
  font-family:var(--mono); font-size: 11px; letter-spacing:.16em; text-transform:uppercase;
  color: var(--ink-mute);
}
.foot-bottom .legal{ max-width: 60ch; line-height: 1.6; letter-spacing:.08em; text-transform:none; font-family: var(--sans); font-size: 12px; }

/* ========== INFINITE GRID BG ========== */
.bg-grid{
  position: fixed; inset: 0; z-index: 0; pointer-events: none;
  --gx: 0px; --gy: 0px; --mx: -9999px; --my: -9999px;
  overflow: hidden;
}
.bg-grid-base, .bg-grid-mask{
  position: absolute; inset: 0;
  background-image:
    linear-gradient(to right, rgba(15,29,51,.65) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(15,29,51,.65) 1px, transparent 1px);
  background-size: 40px 40px;
  background-position: var(--gx) var(--gy);
}
.bg-grid-base{ opacity: .06; }
.bg-grid-mask{
  opacity: .55;
  background-image:
    linear-gradient(to right, rgba(169,136,38,.85) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(169,136,38,.85) 1px, transparent 1px);
  background-size: 40px 40px;
  background-position: var(--gx) var(--gy);
  -webkit-mask-image: radial-gradient(320px circle at var(--mx) var(--my), #000 0%, transparent 70%);
          mask-image: radial-gradient(320px circle at var(--mx) var(--my), #000 0%, transparent 70%);
}
.bg-grid-orb{
  position: absolute; border-radius: 50%; filter: blur(120px); opacity: .35;
}
.bg-grid-orb-1{ right:-15%; top:-15%; width:42%; height:42%; background: rgba(201,168,76,.55); }
.bg-grid-orb-2{ right: 8%; top:-8%; width:18%; height:18%; background: rgba(42,77,133,.30); opacity:.35; }
.bg-grid-orb-3{ left:-12%; bottom:-18%; width:42%; height:42%; background: rgba(27,58,107,.22); }
@media (prefers-reduced-motion: reduce){ .bg-grid-mask{ display:none; } }

/* offset for fixed nav */
body{ padding-top: 56px; }
.hero{ scroll-margin-top: 56px; }

section, .foot{ position: relative; z-index: 2; }


/* ===== ALTERNATING SECTION TONES =====
   Strong contrast: odd = deep navy, even = white.
   Hero opts out (has its own bg). */
#root > section{ position: relative; }
#root > section::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
}
#root > section:nth-of-type(2n+1)::before{
  background:
    radial-gradient(1000px 500px at 80% 0%, rgba(42,77,133,.55), transparent 60%),
    linear-gradient(180deg, #0f2348 0%, #0a1a37 100%);
}
#root > section:nth-of-type(2n)::before{
  background: #ffffff;
}
.hero::before{ display: none !important; }

/* === Dark-section ink flip (Argumentos, Processo, FAQ) === */
#root > section:nth-of-type(2n+1):not(.hero){
  --ink: #f3eee2;
  --ink-2: #c8c9c0;
  --ink-mute: #8a96aa;
  --line: rgba(255,255,255,.10);
  --line-2: rgba(201,168,76,.32);
}
/* lift typography against navy */
#root > section:nth-of-type(2n+1):not(.hero) .h2,
#root > section:nth-of-type(2n+1):not(.hero) .arg-card .head,
#root > section:nth-of-type(2n+1):not(.hero) .proc-body .h,
#root > section:nth-of-type(2n+1):not(.hero) .faq-q{
  color: #f3eee2;
}
#root > section:nth-of-type(2n+1):not(.hero) .lede,
#root > section:nth-of-type(2n+1):not(.hero) .arg-card .lede,
#root > section:nth-of-type(2n+1):not(.hero) .arg-card .body,
#root > section:nth-of-type(2n+1):not(.hero) .proc-body .b,
#root > section:nth-of-type(2n+1):not(.hero) .faq-a-inner{
  color: #c8c9c0;
}
#root > section:nth-of-type(2n+1):not(.hero) .section-label,
#root > section:nth-of-type(2n+1):not(.hero) .arg-card .num{
  color: #8a96aa;
}
#root > section:nth-of-type(2n+1):not(.hero) .section-label .line{
  background: linear-gradient(90deg, rgba(255,255,255,.22), transparent);
}
/* Cards inside dark sections */
#root > section:nth-of-type(2n+1):not(.hero) .arg-card,
#root > section:nth-of-type(2n+1):not(.hero) .faq-item{
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.10);
  box-shadow: none;
}
#root > section:nth-of-type(2n+1):not(.hero) .arg-card:hover{
  background: rgba(201,168,76,.07);
  border-color: rgba(201,168,76,.45);
  box-shadow: 0 18px 40px -22px rgba(0,0,0,.5);
}
#root > section:nth-of-type(2n+1):not(.hero) .arg-card .stat{
  border-top-color: rgba(201,168,76,.35);
  color: var(--gold-2);
}
#root > section:nth-of-type(2n+1):not(.hero) .faq-item.open{
  background: rgba(201,168,76,.10);
  border-color: rgba(201,168,76,.40);
}
#root > section:nth-of-type(2n+1):not(.hero) .faq-q .plus{
  background: rgba(255,255,255,.04);
}
#root > section:nth-of-type(2n+1):not(.hero) .faq-tab{
  background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.12); color:#c8c9c0;
}
#root > section:nth-of-type(2n+1):not(.hero) .faq-tab.active{
  color: var(--gold-2); border-color: rgba(201,168,76,.40);
  background: rgba(201,168,76,.12);
}
/* Processo cards on navy */
#root > section:nth-of-type(2n+1):not(.hero) .proc-card{
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.10);
  box-shadow: none;
}
#root > section:nth-of-type(2n+1):not(.hero) .proc-card:hover{
  background: rgba(201,168,76,.07);
  border-color: rgba(201,168,76,.45);
  box-shadow: 0 18px 40px -22px rgba(0,0,0,.5);
}
#root > section:nth-of-type(2n+1):not(.hero) .proc-note{
  background: rgba(201,168,76,.10);
  border-color: rgba(201,168,76,.32);
}

/* ========== ASSESSORIA CONTÍNUA (RECORRÊNCIA) ========== */
.apre-band{
  position: relative; overflow: hidden;
  border-radius: var(--r-lg); border: 1px solid var(--line-2);
  background:
    radial-gradient(120% 90% at 50% -10%, rgba(27,58,107,.06), transparent 60%),
    linear-gradient(180deg, #fffdf7, #f7f1e4);
  box-shadow: var(--shadow-1);
  padding: 64px 40px;
}
.apre-glow{
  position:absolute; left:50%; top:-40%; transform:translateX(-50%);
  width:560px; height:560px; pointer-events:none;
  background: radial-gradient(circle, rgba(201,168,76,.16), transparent 62%);
}
.apre-inner{ position:relative; z-index:1; max-width: 66ch; margin: 0 auto; text-align:center; }
.apre-mark{
  display:inline-flex; align-items:center; justify-content:center;
  width:72px; height:72px; border-radius:16px;
  border:1px solid var(--line-2);
  background: linear-gradient(180deg,#ffffff,#f3efe2);
  box-shadow: 0 10px 26px -14px rgba(27,58,107,.4);
}
.apre-mark img{ width:52px; height:52px; object-fit:contain; }
.apre-label{ justify-content:center; margin-top: 22px; }
.apre-label > span:not(.line){
  font-family:var(--mono); font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--gold);
  white-space:nowrap;
}
.apre-label .line{ max-width: 64px; }
.apre-h2{
  margin-top: 16px !important; max-width: none;
  font-size: clamp(28px, 3.4vw, 42px) !important;
}
.apre-p{
  margin: 18px auto 0; max-width: 60ch;
  font-size: 16.5px; line-height: 1.68; color: var(--ink-2); text-wrap: pretty;
}
.apre-p + .apre-p{ margin-top: 16px; }

/* Atuação nacional — mapa do Brasil */
.apre-nac{
  position: relative; z-index: 1;
  margin-top: 48px; padding-top: 42px;
  border-top: 1px solid var(--line-2);
  display: grid; grid-template-columns: 1fr 0.9fr; gap: 44px;
  align-items: center; text-align: left;
}
.apre-nac-body .apre-label{ justify-content: flex-start; margin-top: 0; }
.apre-nac-h{
  font-family: var(--serif); font-weight: 500;
  font-size: clamp(24px, 2.6vw, 33px); line-height: 1.08;
  color: var(--ink); margin: 14px 0 0;
}
.apre-nac-h em{
  font-style: italic; color: var(--gold);
  background: linear-gradient(180deg, var(--gold-2), var(--gold-deep));
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.apre-nac .apre-p{ margin: 16px 0 0; max-width: 46ch; }
.apre-legend{ display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 24px; }
.lg-item{
  display: inline-flex; align-items: center; gap: 9px;
  font-family: var(--sans); font-size: 13px; color: var(--ink-2);
}
.lg-dot{
  width: 11px; height: 11px; border-radius: 50%;
  background: var(--gold); box-shadow: 0 0 0 3px rgba(169,136,38,.16);
}
.lg-dot.sede{
  background: var(--navy); border: 1.5px solid var(--gold);
  box-shadow: 0 0 0 3px rgba(27,58,107,.14);
}
.apre-nac-map{ display: flex; justify-content: center; }
.apre-nac-map img{
  width: 100%; max-width: 380px; height: auto;
  filter: drop-shadow(0 18px 30px rgba(15,29,51,.09));
}
@media (max-width: 760px){
  .apre-nac{ grid-template-columns: 1fr; gap: 30px; text-align: center; }
  .apre-nac-body .apre-label{ justify-content: center; }
  .apre-nac .apre-p{ margin-left: auto; margin-right: auto; }
  .apre-legend{ justify-content: center; }
  .apre-nac-map{ order: -1; }
  .apre-nac-map img{ max-width: 300px; }
}
@media (max-width: 640px){ .apre-band{ padding: 48px 22px; } }

.rec-band{
  position: relative; z-index: 2;
  padding: 92px 0;
  border-top: 1px solid var(--line-2);
  border-bottom: 1px solid var(--line-2);
  background:
    radial-gradient(900px 480px at 12% 0%, rgba(201,168,76,.16), transparent 60%),
    radial-gradient(760px 460px at 100% 100%, rgba(27,58,107,.10), transparent 62%),
    linear-gradient(180deg, #fbf7ec 0%, #f5efdf 100%);
}
.rec-grid{
  display:grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 52px; align-items:center;
}
@media (max-width: 940px){ .rec-grid{ grid-template-columns: 1fr; gap: 36px; } }

.rec-list{
  list-style:none; padding:0; margin: 26px 0 0;
  display:flex; flex-direction:column; gap: 12px;
}
.rec-list li{
  display:flex; align-items:flex-start; gap: 12px;
  font-size: 15px; line-height: 1.5; color: var(--ink-2);
}
.rec-list li svg{ color: var(--gold); flex:none; margin-top: 1px; }

/* featured plan card */
.rec-card{ position: relative; }
.rec-card-glow{
  position:absolute; inset:-2px; border-radius: var(--r-xl);
  background: conic-gradient(from 130deg, var(--gold-2), transparent 28%, transparent 64%, var(--gold-2));
  filter: blur(28px); opacity:.5;
}
.rec-card-inner{
  position: relative;
  border-radius: var(--r-xl);
  border: 1px solid var(--line-2);
  background: linear-gradient(180deg, #ffffff, #fbf7ec);
  box-shadow: var(--shadow-1);
  padding: 34px 32px 30px;
  display:flex; flex-direction:column; align-items:flex-start;
}
.rec-chip{
  display:inline-flex; align-items:center; gap:9px;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--gold); padding:7px 13px; border-radius:999px;
  border:1px solid var(--line-2);
  background: linear-gradient(180deg, rgba(201,168,76,.14), rgba(201,168,76,.04));
}
.rec-chip .dot{ width:6px;height:6px;border-radius:50%; background:var(--gold); box-shadow:0 0 10px rgba(169,136,38,.6); }
.rec-card-ico{
  width:56px; height:56px; border-radius:14px; margin: 22px 0 16px;
  display:flex; align-items:center; justify-content:center; color: var(--gold);
  background: linear-gradient(180deg, rgba(201,168,76,.18), rgba(201,168,76,.04));
  border: 1px solid var(--line-2);
}
.rec-card-h{
  font-family:var(--serif); font-style:italic; font-weight:500;
  font-size: 27px; line-height:1.18; color: var(--ink); text-wrap: balance; margin: 0;
}
.rec-card-b{ font-size: 14.5px; color: var(--ink-2); line-height: 1.55; margin: 12px 0 0; }
.rec-price-teaser{
  width:100%; margin: 22px 0 24px; padding: 14px 16px;
  border-radius: var(--r-md); border: 1px dashed rgba(169,136,38,.45);
  background: rgba(201,168,76,.07);
}
.rec-price-teaser .k{
  display:block; font-family:var(--mono); font-size:10.5px; letter-spacing:.2em;
  text-transform:uppercase; color: var(--gold);
}
.rec-price-teaser .v{
  display:block; margin-top: 5px; font-family:var(--serif); font-style:italic;
  font-size: 19px; color: var(--ink);
}
.rec-cta{ width:100%; justify-content:center; margin-top: 24px; }
.rec-note{
  margin-top: 14px; font-family:var(--mono); font-size: 10.5px; letter-spacing:.14em;
  text-transform:uppercase; color: var(--ink-mute);
}

/* ========== VS COMPARISON PANELS (on navy section) ========== */
.vs-grid{
  display:grid; grid-template-columns: 1fr 1fr; gap: 26px;
  align-items: stretch;
}
@media (max-width:780px){ .vs-grid{ grid-template-columns:1fr; gap:20px; } }

.vs-panel{
  position:relative; height:100%;
  border-radius: var(--r-xl);
  padding: 32px 30px;
  box-sizing:border-box;
}
/* exposed = muted dark glass */
.vs-panel.exposed{
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.10);
}
/* shielded = elevated, gold ring */
.vs-panel.shielded{ padding:0; }
.vs-panel.shielded .vs-glow{
  position:absolute; inset:-2px; border-radius: var(--r-xl);
  background: conic-gradient(from 130deg, var(--gold-2), transparent 30%, transparent 66%, var(--gold-2));
  filter: blur(26px); opacity:.4;
}
.vs-panel.shielded .vs-inner{
  position:relative; height:100%; box-sizing:border-box;
  border-radius: var(--r-xl);
  padding: 32px 30px;
  background: linear-gradient(180deg, rgba(201,168,76,.10), rgba(255,255,255,.04));
  border: 1px solid rgba(201,168,76,.42);
  box-shadow: 0 24px 60px -32px rgba(0,0,0,.6);
}

.vs-head{ border-bottom:1px solid rgba(255,255,255,.12); padding-bottom:20px; margin-bottom:22px; }
.vs-badge{
  display:inline-flex; align-items:center;
  font-family:var(--mono); font-size:10px; letter-spacing:.22em; text-transform:uppercase;
  padding:5px 11px; border-radius:999px; margin-bottom:14px;
}
.vs-badge.exp{ color:#f0a0a0; background:rgba(201,90,90,.16); border:1px solid rgba(201,90,90,.34); }
.vs-badge.blin{ color:var(--gold-2); background:rgba(201,168,76,.18); border:1px solid rgba(201,168,76,.42); }
.vs-head h3{
  font-family:var(--serif); font-style:italic; font-weight:600; font-size:26px;
  color:#f6f2e8; margin:0; line-height:1.1;
}
.vs-panel.shielded .vs-head h3{ color:#fbf3df; }
.vs-head p{ font-size:14.5px; color:#aeb3bf; margin:8px 0 0; line-height:1.5; max-width:34ch; }

.vs-list{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:18px; }
.vs-list li{ display:flex; gap:13px; align-items:flex-start; font-size:15px; line-height:1.55; color:#dde0e7; }
.vs-list li strong{ color:#ffffff; font-weight:600; }
.vs-panel.shielded .vs-list li{ color:#ece8db; }
.vs-panel.shielded .vs-list li strong{ color:#fff7e6; }

.vs-x, .vs-check{
  width:24px;height:24px;border-radius:50%; flex:none; margin-top:1px;
  display:flex;align-items:center;justify-content:center;
}
.vs-x{ background:rgba(201,90,90,.20); color:#f0a0a0; }
.vs-x svg{ width:13px;height:13px; }
.vs-check{ background:rgba(201,168,76,.24); color:var(--gold-2); }
.vs-check svg{ width:14px;height:14px; }

/* ========== TWEAKS PANEL ========== */
.tw-panel{
  position: fixed; right: 18px; bottom: 18px; z-index: 80;
  width: 280px;
  background: #fff;
  border: 1px solid var(--line-2);
  border-radius: 16px; padding: 16px;
  box-shadow: 0 30px 60px -20px rgba(15,29,51,.25); font-family: var(--sans);
}
.tw-panel.hidden{ display: none; }
.tw-panel h6{
  font-family:var(--mono); font-size:10.5px; letter-spacing:.22em; text-transform:uppercase;
  color: var(--ink-mute); margin: 0 0 10px;
}
.tw-row{ display:flex; align-items:center; justify-content:space-between; gap: 10px; margin: 10px 0; }
.tw-row .lbl{ font-size: 13px; color: var(--ink-2); }
.tw-swatches{ display:flex; gap:8px; }
.tw-swatch{
  width: 26px; height: 26px; border-radius: 50%;
  border: 2px solid transparent; cursor: pointer;
  box-shadow: inset 0 0 0 1px rgba(15,29,51,.18);
}
.tw-swatch.active{ border-color: var(--gold); }
.tw-toggle{
  width: 38px; height: 22px; border-radius: 999px;
  background: rgba(15,29,51,.10); position: relative;
  cursor: pointer; border: 1px solid var(--line); transition: background .25s;
}
.tw-toggle i{
  position: absolute; top: 2px; left: 2px;
  width: 16px; height: 16px; border-radius: 50%;
  background: var(--ink-mute);
  transition: transform .25s, background .25s;
}
.tw-toggle.on{ background: rgba(201,168,76,.30); }
.tw-toggle.on i{ transform: translateX(16px); background: var(--gold); }
.tw-close{
  position:absolute; right: 10px; top: 8px;
  background: transparent; border: 0; color: var(--ink-mute); cursor: pointer; font-size: 18px;
}

/* =========================================================
   CENTRALIZAÇÃO DAS SEÇÕES (exceto Hero)
   ========================================================= */
.centered-sec > .container > .section-label{ justify-content: center; }
.centered-sec .section-label .line{ display: none; }
.centered-sec > .container > .reveal > .h2{ text-align: center; margin-left: auto; margin-right: auto; }
.centered-sec .eyebrow{ justify-content: center; }

/* Tese */
.centered-sec .tese-grid{ grid-template-columns: minmax(0, 780px); justify-content: center; text-align: center; }
.centered-sec .tese-grid .h2{ margin-left: auto; margin-right: auto; }
.centered-sec .tese-points{ max-width: 640px; margin-left: auto; margin-right: auto; text-align: left; }
.centered-sec .gap-chart{ max-width: 640px; margin-left: auto; margin-right: auto; }

/* Argumentos */
#diferenciais > .container{ text-align: center; }
#diferenciais > .container > .reveal > .h2{ margin-left: auto; margin-right: auto; }
#diferenciais .vs-head{ text-align: center; }
#diferenciais .vs-head p{ margin-left: auto; margin-right: auto; }
#diferenciais .vs-list{ text-align: left; }

/* Processo */
.centered-sec .proc-layout{ grid-template-columns: minmax(0, 720px); justify-content: center; text-align: center; }
.centered-sec .proc-intro{ position: static; top: auto; }
.centered-sec .proc-intro .section-label{ justify-content: center; }
.centered-sec .proc-intro .h2,
.centered-sec .proc-intro .lede{ margin-left: auto; margin-right: auto; }
.centered-sec .proc-flow{ max-width: 560px; margin: 36px auto 0; text-align: left; }

/* Equipe */
#sobre > .container{ text-align: center; }
#sobre .eyebrow{ justify-content: center; }
#sobre > .container > .reveal > .h2{ margin-left: auto; margin-right: auto; }
#sobre .team-card{
  grid-template-columns: 1fr; justify-items: center; text-align: center;
  max-width: 440px; margin-left: auto; margin-right: auto;
}
#sobre .team-photo{ width: 190px; }
#sobre .team-badges{ justify-content: center; }

/* FAQ */
.centered-sec .faq-tabs{ justify-content: center; }
.centered-sec .faq{ max-width: 860px; margin-left: auto; margin-right: auto; }

@media (max-width: 900px){
  .centered-sec .tese-grid,
  .centered-sec .proc-layout{ grid-template-columns: 1fr; }
}
