/* Refinamento visual EPC. A copy permanece no HTML, sem alterações editoriais. */
:root {
  --layout-width: 1320px;
  --layout-gutter: 40px;
  --card-radius: 8px;
  --ink-dim: #9AAAC2;
}
.hero-nav, .hero-content, .section-inner, .manifesto-inner, .foot-inner {
  width: 100%; max-width: var(--layout-width);
  padding-left: var(--layout-gutter); padding-right: var(--layout-gutter);
}
.section { padding: 96px 0; }
.section-header { margin-bottom: 26px; }
.section.surface { background: #081426; }
.section-num { border-radius: 5px; background: transparent; border-color: #314330; }
.section-eyebrow, .font-mono-tag, .diag-card-tag, .metodo-pillar-label,
.qualif-card-tag, .virada-side-tag { font-size: 11px; letter-spacing: .08em; }
.h2, .rodrigo-bio-h { font-size: clamp(32px, 3.4vw, 48px); line-height: 1.12; }
.h2 .italic, .rodrigo-bio-h .italic, .proof-testimonials-h .accent,
.diag-veredito-text .italic, .manifesto-quote .accent {
  font-family: var(--font-display); font-style: normal;
  font-weight: 900; letter-spacing: -.02em;
}
.h2 .italic, .rodrigo-bio-h .italic, .proof-testimonials-h .accent { text-transform: uppercase; }
.diag-veredito-text .italic { color: var(--accent); text-transform: uppercase; }
.executor-label { color: var(--ink-dim); font-weight: 700; text-decoration: line-through; text-decoration-color: #628932; }
.diag-grid-head, .metodo-head, .encaixe-head { grid-template-columns: minmax(0, 1fr); gap: 16px; }
.diag-grid-head .end-tag, .metodo-head .end-tag, .encaixe-head .font-mono-tag { text-align: left !important; }
.diag-grid-head .h2, .metodo-head .h2 { max-width: 880px; }
.lead { font-size: 18px; line-height: 1.65; max-width: 840px; margin-top: 22px; }
.btn-pill, .hero-cta-row .btn-pill, .metodo-cta-row .btn-pill,
.garantia-cta-row .btn-pill, .form-actions .btn-pill, .sticky-mobile-cta .btn-pill {
  min-height: 54px; padding: 16px 26px; border-radius: var(--card-radius);
  font-size: 13px; font-weight: 700; letter-spacing: .025em;
  line-height: 1.5; text-transform: uppercase; gap: 14px;
}
.btn-pill:hover { box-shadow: 0 8px 25px rgba(156,219,24,.14); }
.metodo-cta-row, .garantia-cta-row { gap: 20px; margin-top: 30px; }
.metodo-cta-row .micro, .garantia-cta-row .micro { font-size: 11px; line-height: 1.8; letter-spacing: .035em; }
.hero-content { padding-top: 34px; padding-bottom: 54px; }
.hero-eyebrow-row .font-mono-tag, .hero-stats, .hero-microcopy, .hero-cta-secondary { font-size: 11px; letter-spacing: .035em; }
.hero-h1 { font-size: clamp(36px, 3.8vw, 56px); margin-top: 0; }
.hero-stats { gap: 8px 10px; }
.hero-blockquote { border-radius: var(--card-radius); background: rgba(8,20,38,.6); border-color: #354b31; }
.hero-paragraph { font-size: 17px; line-height: 1.65; }
.hero-microcopy { line-height: 1.8; }
.hero-cta-secondary:hover { color: var(--accent); }
.hero-portrait-mobile { display: none; }

/* Faixa leve, pausável por mouse ou teclado. */
.marquee-section { padding: 16px 0; background: #071020; }
.marquee-item { font-size: 11px; letter-spacing: .075em; color: #a8b6cc; }
.marquee { animation-duration: 55s; }
.marquee-section:hover .marquee, .marquee-section:focus .marquee,
.marquee-section:focus-within .marquee { animation-play-state: paused; }
.marquee-section:focus-visible { outline: 2px solid var(--accent); outline-offset: -3px; }

/* Cartões e comparações seguem a mesma superfície e borda. */
.diag-card, .metodo-pillar, .qualif-card, .proof-testimonial, .rodrigo-stat {
  border-radius: var(--card-radius); border: 1px solid #20304a;
  background: #0a1628; padding: 28px;
}
.diag-card-text, .metodo-pillar-lede, .metodo-pillar-list,
.qualif-card li, .virada-side-text { font-size: 16px; line-height: 1.65; }
.diag-card-header { gap: 18px; }
.diag-card-tag { text-align: right; }
.diag-card-num { font-size: 22px; }
.diag-card-divider { margin-top: 18px; width: 32px; opacity: .65; }
.diag-card-text { margin-top: 18px; color: #d5deeb; }
.diag-cards { gap: 20px; margin-top: 30px; }
.diag-veredito { margin-top: 28px; padding: 28px 32px; border: 1px solid #354b31; border-radius: var(--card-radius); background: #091626; box-shadow: none; }
.diag-veredito-row { gap: 22px; }
.diag-veredito-arrow { font-size: 42px; }
.diag-veredito-text { font-size: 28px; line-height: 1.2; }
.virada-table { margin-top: 30px; border-color: #20304a; }
.virada-side { padding: 32px; }
.virada-side.after { background: #0c1c32; border-color: #8cbc36; }
.virada-side-title { font-size: 28px; }
.virada-side.before .virada-side-text, .virada-side.before .virada-side-list { color: var(--ink-muted); }
.virada-side-list { font-size: 11px; line-height: 1.8; }
.qualif-grid { gap: 24px; margin-top: 30px; }
.qualif-card.yes { border-color: #3c5338; }
.qualif-card.no { background: #071222; }
.qualif-card.yes .qualif-card-icon { background: rgba(156,219,24,.1); color: var(--accent); border: 1px solid #3c5338; }

/* Fotografias com cores naturais e transições apenas nas bordas. */
.manifesto { min-height: 560px; background: #010713; }
.manifesto-inner { padding-top: 80px; padding-bottom: 80px; }
.manifesto-bg-grid { opacity: .16; }
.manifesto-content { margin-right: 43%; max-width: 710px; }
.manifesto-photo-desktop { width: 47%; background: var(--bg); }
.manifesto-photo-desktop img, .manifesto-photo-mobile img {
  filter: none; opacity: 1;
}
.manifesto-photo-desktop .gradient {
  background: linear-gradient(90deg, #010713, transparent 28%),
    linear-gradient(0deg, #010713, transparent 15%);
}
.manifesto.grain::after { display: none; }
.manifesto-quote { background: transparent; border: 0; border-left: 2px solid #628932; padding: 0 0 0 26px; border-radius: 0; }
.manifesto-quote p { font-size: clamp(24px, 2.2vw, 32px); line-height: 1.25; }
.manifesto-quote .accent { color: #d7e1ef; }
.manifesto-quote footer { font-size: 12px; }
.rodrigo-photo-frame, .rodrigo-photo-blur { display: none; }
.rodrigo-photo { border-radius: var(--card-radius); border: 1px solid #263956; background: var(--bg); }
.rodrigo-photo img { filter: none; opacity: 1; }
.rodrigo-photo-overlay { display: none; }
.rodrigo-photo-caption { position: static; padding: 16px 0 0; }
.rodrigo-grid { grid-template-columns: .8fr 1.2fr; gap: 48px; }
.rodrigo-bio-h { margin-top: 14px; }
.rodrigo-bio-text { font-size: 17px; line-height: 1.7; }
.rodrigo-stats { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 24px; }
.rodrigo-stat { padding: 18px; }
.rodrigo-stat .label { font-size: 11px; letter-spacing: .035em; }
.rodrigo-stat .value { font-size: 18px; }

/* EPC em três movimentos, com letras de fundo discretas. */
.metodo-pillars { gap: 24px; margin-top: 32px; }
.metodo-pillar { overflow: hidden; }
.metodo-pillar-num { position: absolute; top: -8px; right: 12px; font-size: 112px; line-height: 1; color: rgba(40,94,164,.12); pointer-events: none; }
.metodo-pillar-row, .metodo-pillar-title, .metodo-pillar-lede, .metodo-pillar-list { position: relative; }
.metodo-pillar-title { font-size: 25px; margin-top: 26px; }
.metodo-pillar-list { gap: 12px; padding-top: 22px; border-top: 1px solid #20304a; }
.metodo-pillar-list li.head { font-size: 11px; }

/* As duas sequências usam o mesmo desenho, sem alterar suas etapas. */
.steps-section .diag-cards { position: relative; gap: 28px; }
.steps-section .diag-cards::before { content: ''; position: absolute; left: 24px; right: 24px; top: 23px; height: 1px; background: #294063; }
.steps-section .diag-card { border: 0; background: transparent; padding: 0; overflow: visible; }
.steps-section .diag-card-header { justify-content: flex-start; align-items: center; gap: 15px; }
.steps-section .diag-card-num { position: relative; z-index: 1; display: grid; place-items: center; width: 48px; height: 48px; flex-shrink: 0; font-size: 16px; border-radius: 50%; border: 1px solid #3c5338; background: #09172a; }
.steps-section .diag-card-tag { position: relative; z-index: 1; text-align: left; background: #081426; padding: 8px; color: #dce5f3; }
.steps-section:not(.surface) .diag-card-tag { background: var(--bg); }
.steps-section .diag-card-divider { display: none; }
.steps-section .diag-card-text { margin-top: 22px; padding-right: 12px; }
.steps-section .diag-card:hover { transform: none; box-shadow: none; }

/* Resultados e depoimentos em uma grade equilibrada. */
.rodrigo-proof-wrap { margin-top: 64px; }
.proof-metrics-card { padding: 36px; border-radius: var(--card-radius); border: 1px solid #20304a; background: #0b1a30; }
.proof-metrics-h { font-size: 26px; text-align: left; max-width: none; }
.proof-metrics-h .accent { text-transform: uppercase; }
.proof-metrics-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; margin-top: 32px; }
.proof-metric { text-align: left; padding-left: 20px; border-left: 1px solid #294063; }
.proof-metric .value { font-size: 52px; }
.proof-metric .label { font-size: 15px; line-height: 1.55; }
.proof-metrics-disclaimer { text-align: left; max-width: 850px; margin-left: 0; font-size: 13px; }
.proof-testimonials-h { font-size: 36px; text-align: left; margin: 54px 0 0; max-width: 850px; line-height: 1.2; }
.proof-testimonials-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-top: 28px; }
.proof-testimonial { padding: 28px; }
.proof-testimonial .tag { font-size: 11px; line-height: 1.8; letter-spacing: .04em; display: block; min-height: 40px; }
.proof-testimonial blockquote { font-size: 17px; }
.proof-testimonial .quote-mark { font-size: 36px; opacity: .65; }
.proof-meta, .proof-when { font-size: 11px; letter-spacing: .025em; }
.proof-disclaimer { text-align: left; margin-left: 0; max-width: 850px; font-size: 13px; }

/* Fechamento mais compacto e centrado na ação. */
.faq-list { margin-top: 30px; }
.faq-list summary span:first-child { font-size: 20px; font-weight: 700; line-height: 1.4; }
.faq-list details { padding: 22px 0; }
.faq-list details > p { font-size: 16px; line-height: 1.7; }
.aplicacao-section.section.surface { background: radial-gradient(ellipse at 90% 40%, #0a2b61 0%, #06142c 36%, #010713 75%); border-top: 1px solid #20304a; }
.aplicacao-bg { opacity: .1; }
.aplicacao-content .h2 { max-width: 970px; font-size: 44px; }
.aplicacao-lede { font-size: 18px; max-width: 780px; margin-top: 24px; }
.application-action { margin-top: 30px; max-width: 860px; }
.application-action .form-card { margin: 0; padding: 28px 0 0; background: transparent; border: 0; border-top: 1px solid #294063; text-align: left; }
.form-step-meta { margin-top: 0; justify-content: flex-start; flex-wrap: wrap; gap: 12px 24px; }
.form-step-count { font-size: 11px; }
.form-step-lede { font-size: 15px; line-height: 1.7; color: var(--ink-muted); }
.application-action .form-actions { margin-top: 22px; }
.foot-inner { padding-top: 48px; padding-bottom: 48px; }
.foot-brand-block p, .foot-legal { font-size: 15px; }
.foot-legal-id, .foot-copy { font-size: 11px; letter-spacing: .04em; line-height: 1.8; }
.foot-social { width: 42px; height: 42px; }
.reveal { transform: translateY(12px); transition-duration: .35s; }
.reveal.delay-1 { transition-delay: .035s; }
.reveal.delay-2 { transition-delay: .07s; }
.reveal.delay-3 { transition-delay: .105s; }
.reveal.delay-4 { transition-delay: .14s; }
.card-lift:hover, .diag-card:hover, .metodo-pillar:hover, .proof-testimonial:hover { box-shadow: 0 12px 30px rgba(0,0,0,.18); }

@media (min-width: 768px) and (max-width: 1100px) {
  :root { --layout-gutter: 32px; }
  .hero-text { width: 69%; }
  .hero-art { opacity: .5; }
  .hero-art::after { background: linear-gradient(90deg,#010713,rgba(1,7,19,.65) 36%,transparent 85%); }
  .hero-stats { max-width: 480px; }
  .section { padding: 80px 0; }
  .rodrigo-grid { gap: 30px; }
  .proof-testimonials-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .proof-testimonial:last-child { grid-column: 1 / -1; }
  .steps-section .diag-cards { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
  .steps-section .diag-card-header { flex-direction: column; align-items: flex-start; gap: 10px; }
  .steps-section .diag-card-tag { padding: 0; background: transparent; }
}
@media (max-width: 767px) {
  :root { --layout-gutter: 24px; }
  .section { padding: 60px 0; }
  .section-header { margin-bottom: 22px; }
  .h2, .rodrigo-bio-h { font-size: clamp(26px,7vw,32px); line-height: 1.18; }
  .lead, .rodrigo-bio-text, .aplicacao-lede { font-size: 16px; }
  .hero-content { padding-top: 26px; padding-bottom: 34px; }
  .hero-text { display: grid; grid-template-columns: minmax(0,1fr) 44%; width: 100%; }
  .hero-text > * { grid-column: 1 / -1; min-width: 0; }
  .hero-h1 { font-size: clamp(24px,6.9vw,40px); line-height: 1.08; margin-top: 0; }
  .hero-eyebrow-row .font-mono-tag { font-size: 11px; }
  .hero-line { grid-column: 1; grid-row: 3; align-self: start; margin-top: 26px; }
  .hero-stats { grid-column: 1; grid-row: 3; align-self: center; flex-direction: column; align-items: flex-start; gap: 12px; margin: 44px 0 10px; padding-right: 6px; font-size: 11px; line-height: 1.6; }
  .hero-stats .sep { display: none; }
  .hero-portrait-mobile { display: block; position: relative; overflow: hidden; grid-column: 2; grid-row: 2; height: 205px; margin-right: -24px; align-self: end; pointer-events: none; }
  .hero-portrait-mobile img { position: absolute; height: 475px; width: auto; max-width: none; right: -16px; top: -160px; }
  .hero-portrait-mobile::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#010713,transparent 26%,transparent 85%,#010713),linear-gradient(90deg,#010713,transparent 35%); }
  .hero-art { display: none; }
  .hero-blockquote { margin-top: 4px; padding: 18px 20px; }
  .hero-blockquote p { font-size: 15px; }
  .hero-blockquote footer { margin-top: 10px; font-size: 11px; }
  .hero-paragraph { font-size: 16px; line-height: 1.65; margin-top: 22px; }
  .hero-cta-row { gap: 16px; margin-top: 24px; }
  .hero-cta-row .btn-pill { justify-content: center; }
  .btn-pill, .hero-cta-row .btn-pill, .metodo-cta-row .btn-pill,
  .garantia-cta-row .btn-pill, .form-actions .btn-pill, .sticky-mobile-cta .btn-pill {
    padding: 16px 20px; font-size: 12px;
  }
  .hero-microcopy { font-size: 11px; }
  .diag-cards, .metodo-pillars, .qualif-grid { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .diag-card, .metodo-pillar, .qualif-card { padding: 24px; }
  .diag-card-tag { font-size: 11px; letter-spacing: .03em; }
  .diag-veredito { padding: 24px; }
  .diag-veredito-row { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .diag-veredito-arrow { display: none; }
  .diag-veredito-text { font-size: 24px; }
  .virada-side { padding: 26px; }
  .virada-side-title { font-size: 24px; }
  .manifesto { min-height: 0; display: flex; flex-direction: column; }
  .manifesto-inner { order: 1; padding-top: 64px; padding-bottom: 32px; }
  .manifesto-content { margin-right: 0; max-width: none; text-align: left; }
  .manifesto-photo-mobile { position: relative; inset: auto; order: 2; align-self: center; width: calc(100% - 2 * var(--layout-gutter)); max-width: 440px; aspect-ratio: 4 / 3; margin-bottom: 40px; overflow: hidden; border-radius: 4px; background: var(--bg); }
  .manifesto-photo-mobile img { height: 100%; object-position: center 30%; }
  .manifesto-photo-mobile .gradient { display: none; }
  .manifesto-quote { padding-left: 20px; margin-top: 22px; }
  .manifesto-quote p { font-size: 24px; }
  .metodo-pillar-title { font-size: 24px; }
  .metodo-pillar-num { font-size: 100px; }
  .steps-section .diag-cards { gap: 28px; }
  .steps-section .diag-cards::before { left: 23px; top: 24px; bottom: 24px; right: auto; width: 1px; height: auto; }
  .steps-section .diag-card { padding: 0; }
  .steps-section .diag-card-text { margin-top: 12px; padding-left: 63px; padding-right: 0; }
  .rodrigo-grid { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .rodrigo-photo { aspect-ratio: 1 / 1; max-width: 440px; }
  .rodrigo-photo img { object-position: center 30%; }
  .rodrigo-stats { gap: 12px; }
  .rodrigo-stat { padding: 16px; }
  .rodrigo-stat .value { font-size: 16px; }
  .rodrigo-proof-wrap { margin-top: 44px; }
  .proof-metrics-card { padding: 24px; }
  .proof-metrics-h { font-size: 23px; }
  .proof-metrics-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 16px; }
  .proof-metric { padding-left: 12px; }
  .proof-metric .value { font-size: 36px; }
  .proof-metric .label { font-size: 13px; }
  .proof-testimonials-h { font-size: 28px; margin-top: 40px; }
  .proof-testimonials-grid { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .proof-testimonial { padding: 24px; }
  .proof-testimonial .tag { min-height: 0; }
  .proof-testimonial blockquote { font-size: 16px; }
  .faq-list summary span:first-child { font-size: 17px; }
  .faq-toggle { flex-shrink: 0; }
  .aplicacao-content .h2 { font-size: 30px; }
  .application-action .form-card { padding-top: 22px; }
  .application-action .form-step-meta { gap: 8px 16px; }
  .form-step-count { font-size: 11px; }
  .foot-inner { padding-top: 36px; padding-bottom: 104px; }
  .foot-side { align-items: flex-start; }
  .foot-copy { text-align: left; }
}
@media (max-width: 359px) {
  :root { --layout-gutter: 20px; }
  .hero-portrait-mobile { margin-right: -20px; }
  .hero-stats { font-size: 10px; }
  .proof-metrics-card { padding: 20px 16px; }
  .proof-metric .value { font-size: 32px; }
  .steps-section .diag-card-text { padding-left: 0; background: var(--bg); position: relative; }
  .steps-section.surface .diag-card-text { background: #081426; }
}
@media (prefers-reduced-motion: reduce) {
  .marquee { animation: none; }
  .reveal { opacity: 1; transform: none; transition: none; }
}

/* Composição editorial: a hierarquia vem do texto e do espaço. */
.hero-blockquote {
  margin-top: 26px; padding: 0; border: 0; border-radius: 0; background: none;
}
.hero-blockquote p { font-size: 20px; line-height: 1.45; font-style: normal; color: var(--ink-muted); }
.hero-blockquote p > span, .hero-blockquote strong { display: block; }
.hero-blockquote strong { color: var(--ink); font-weight: 700; }
.hero-blockquote footer {
  margin-top: 10px; font-size: 12px; font-weight: 500; letter-spacing: .02em;
  text-transform: none; color: var(--ink-dim);
}
.diag-veredito {
  margin-top: 44px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
}
.diag-veredito-row { display: block; }
.diag-veredito-text {
  margin: 0; font-family: var(--font-sans); font-size: clamp(22px, 2.2vw, 30px);
  font-weight: 500; text-transform: none; line-height: 1.4; letter-spacing: -.015em;
  color: var(--ink-muted);
}
.diag-veredito-text > span, .diag-veredito-text > strong { display: block; }
.diag-veredito-text > strong {
  margin-top: 8px; font-family: var(--font-display); font-size: clamp(28px, 3vw, 40px);
  font-weight: 700; color: var(--accent);
}
.executor-label { text-decoration: none; }
.virada-table {
  grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px;
  margin-top: 48px; border: 0; border-radius: 0; background: none; overflow: visible;
}
.virada-side, .virada-side.before, .virada-side.after { padding: 0; border: 0; background: none; }
.virada-side-tag { margin-bottom: 12px; color: var(--ink-dim); }
.virada-side-title { font-size: 32px; font-weight: 700; text-transform: none; }
.virada-side.before .virada-side-title { text-decoration: none; color: var(--ink-muted); }
.virada-side.after .virada-side-title { color: var(--accent); }
.virada-side-text { max-width: 53ch; margin-top: 16px; }
.virada-side-list {
  margin-top: 24px; gap: 12px; font-family: var(--font-sans); font-size: 16px;
  line-height: 1.55; text-transform: none; letter-spacing: 0;
}
.virada-side-list li { display: flex; gap: 12px; }
.virada-side-list li::before {
  content: ''; flex: 0 0 4px; height: 4px; margin-top: .65em;
  border-radius: 50%; background: var(--ink-dim);
}
.virada-side.after li::before { background: var(--accent); }
.manifesto-content { text-align: left; }
.manifesto-quote { border: 0; padding: 0; margin-top: 24px; }
.manifesto-quote p {
  font-size: clamp(24px, 2.2vw, 32px); font-weight: 600; text-transform: none;
  line-height: 1.4; color: var(--ink-muted); letter-spacing: -.02em;
}
.manifesto-quote .accent { display: block; margin-top: 20px; color: var(--ink); font-weight: 700; }
.manifesto-quote footer { color: var(--ink-dim); font-weight: 500; text-transform: none; letter-spacing: .02em; }
.qualif-grid { gap: 64px; margin-top: 40px; }
.qualif-card, .qualif-card.yes, .qualif-card.no { padding: 0; border: 0; border-radius: 0; background: none; }
.qualif-card-tag { font-family: var(--font-display); font-size: 23px; font-weight: 700; letter-spacing: -.02em; text-transform: none; }
.qualif-card.no .qualif-card-tag { color: var(--ink-muted); }
.qualif-card ul { gap: 20px; margin-top: 24px; }
.qualif-card li { padding: 0; border: 0; gap: 14px; }
.qualif-card.yes li::before, .qualif-card.no li::before {
  content: ''; flex: 0 0 4px; height: 4px; margin-top: .7em;
  border-radius: 50%; background: var(--ink-dim);
}
.qualif-card.yes li::before { background: var(--accent); }

/* Rodrigo, resultados e depoimentos: fotografias e vídeos em primeiro plano. */
.talks-gallery { margin-top: 64px; }
.talks-gallery h3 { font-family: var(--font-display); font-size: 26px; font-weight: 700; letter-spacing: -.02em; }
.talks-photos { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-top: 24px; }
.talks-photos figure { margin: 0; min-width: 0; }
.talks-photos a { display: block; border-radius: 4px; }
.talks-photos img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; border-radius: 4px; filter: none; opacity: 1; }
.talks-photos figcaption { margin-top: 12px; color: var(--ink-dim); font-size: 13px; line-height: 1.5; }
.talks-swipe-hint { display: none; }
.rodrigo-grid { gap: 64px; align-items: start; grid-template-columns: .85fr 1.15fr; }
.rodrigo-photo { border: 0; border-radius: 4px; }
.rodrigo-bio-h { margin-top: 16px; }
.rodrigo-stats { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px 28px; margin-top: 30px; }
.rodrigo-stat { padding: 0; border: 0; border-radius: 0; background: none; }
.rodrigo-stat:hover { transform: none; box-shadow: none; }
.rodrigo-stat .label { font-family: var(--font-sans); font-size: 13px; text-transform: none; letter-spacing: 0; }
.rodrigo-stat .value { font-size: 20px; text-transform: none; color: var(--ink); }
.rodrigo-proof-wrap { margin-top: 80px; }
.proof-metrics-card { padding: 0; border: 0; border-radius: 0; background: none; }
.proof-metrics-h { font-size: 28px; font-weight: 700; text-transform: none; }
.proof-metrics-h .accent { text-transform: none; color: var(--ink); }
.proof-metrics-grid { grid-template-columns: repeat(5,minmax(0,1fr)); margin-top: 36px; gap: 28px; }
.proof-metric { padding: 0; border: 0; }
.proof-metric .value { font-size: 46px; color: var(--ink); font-weight: 700; }
.proof-metric .label { max-width: 22ch; white-space: normal; }
.proof-metrics-disclaimer { margin-top: 30px; color: var(--ink-dim); }
.proof-testimonials-h { margin-top: 80px; font-size: 36px; font-weight: 700; text-transform: none; }
.proof-testimonials-h .accent { font-weight: 700; text-transform: none; }
.proof-testimonials-grid { gap: 28px; align-items: start; }
.proof-testimonial {
  min-width: 0; padding: 0; border: 0; border-radius: 0; background: none;
  justify-content: flex-start; gap: 0;
}
.proof-testimonial:hover { transform: none; box-shadow: none; }
.testimonial-video {
  display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: contain;
  background: #010713; border-radius: 6px;
}
.testimonial-video:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.proof-testimonial .tag {
  min-height: 0; margin-top: 20px; font-family: var(--font-sans); font-size: 15px;
  font-weight: 700; text-transform: none; letter-spacing: 0; line-height: 1.5;
}
.proof-testimonial .tag::before { content: none; }
.proof-testimonial blockquote { margin-top: 10px; font-size: 16px; color: var(--ink-muted); line-height: 1.65; }
.proof-testimonial figcaption { margin-top: 18px; padding: 0; border: 0; }
.proof-meta { font-family: var(--font-sans); font-size: 15px; font-weight: 700; text-transform: none; letter-spacing: 0; color: var(--ink); }
.proof-when { font-family: var(--font-sans); font-size: 13px; text-transform: none; letter-spacing: 0; line-height: 1.5; }
@media (min-width: 768px) and (max-width: 1100px) {
  .virada-table, .qualif-grid, .rodrigo-grid { gap: 36px; }
  .proof-testimonials-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .proof-testimonial:last-child { grid-column: auto; }
}
@media (max-width: 767px) {
  .talks-gallery { margin-top: 44px; }
  .talks-gallery h3 { font-size: 23px; }
  .talks-swipe-hint { display: block; color: var(--ink-dim); font-size: 13px; margin-top: 8px; }
  .talks-photos { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 88%; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 4px 2px 16px; margin-top: 18px; scrollbar-width: thin; scrollbar-color: #53647c transparent; }
  .talks-photos figure { scroll-snap-align: start; }
  .hero-blockquote { grid-column: 1; grid-row: 2; align-self: center; margin-top: 12px; padding: 0 8px 0 0; }
  .hero-blockquote p { font-size: 17px; line-height: 1.5; }
  .diag-veredito { margin-top: 32px; }
  .virada-table, .qualif-grid { grid-template-columns: minmax(0,1fr); gap: 36px; margin-top: 32px; }
  .virada-side-title { font-size: 28px; }
  .manifesto-quote { padding: 0; }
  .manifesto-quote p { font-size: 23px; }
  .qualif-card-tag { font-size: 22px; }
  .qualif-card ul { gap: 16px; margin-top: 20px; }
  .rodrigo-grid { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .rodrigo-stats { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
  .rodrigo-stat:last-child { grid-column: 1 / -1; }
  .rodrigo-proof-wrap, .proof-testimonials-h { margin-top: 56px; }
  .proof-metrics-h { font-size: 25px; }
  .proof-metrics-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .proof-metric .value { font-size: 36px; }
  .proof-testimonials-h { font-size: 28px; }
  .proof-testimonials-grid { grid-template-columns: minmax(0,1fr); gap: 36px; }
  .proof-testimonial { max-width: 540px; }
  .proof-testimonial:last-child { grid-column: auto; }
}
@media (max-width: 1023px) {
  .proof-metrics-grid { grid-template-columns: minmax(0,1fr); gap: 24px; max-width: 600px; }
  .proof-metric { display: grid; grid-template-columns: 104px minmax(0,1fr); align-items: center; gap: 20px; }
  .proof-metric .value { font-size: 36px; }
  .proof-metric .label { margin-top: 0; max-width: 32ch; font-size: 15px; }
}
@media (max-width: 359px) {
  .proof-metric { grid-template-columns: 86px minmax(0,1fr); gap: 16px; }
  .proof-metric .value { font-size: 32px; }
  .proof-metric .label { font-size: 14px; }
}
