@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap');

/* TRILHA — Design System V1.5.7
   Audit focus: unified brand palette, readable type scale, WCAG AA contrast.
   Internal readability floor:
   - 16px body/form text
   - 14px functional/secondary UI
   - 12px tertiary metadata only
   - chart labels: 14px+ visual target
*/
:root{
  --trilha-blue-950:#0B1826;
  --trilha-blue-900:#062A5B;
  --trilha-blue-800:#0B2F6B;
  --trilha-blue-700:#173F78;
  --trilha-pink-600:#F0147B;
  --trilha-pink-700:#A50B55;
  --trilha-text:#334454;
  --trilha-muted:#526476;
  --trilha-muted-light:#93A6BF;
  --trilha-surface:#FFFFFF;
  --trilha-paper:#F7F7F4;
  --trilha-soft:#EDF2F5;
  --trilha-soft-blue:#E8F0FA;
  --trilha-soft-pink:#FCEEF4;
  --trilha-line:#D7E2E9;
  --trilha-line-strong:#B7C3CC;
  --trilha-focus:#0B2F6B;

  /* Compatibility aliases: legacy components inherit the current identity. */
  --paper:var(--trilha-paper);
  --paper-warm:var(--trilha-soft);
  --paper2:var(--trilha-soft);
  --cream:var(--trilha-paper);
  --cream-2:var(--trilha-soft);
  --sand:var(--trilha-soft);
  --stone:var(--trilha-muted);
  --botanical:var(--trilha-blue-900);
  --botanical-deep:var(--trilha-blue-950);
  --green:var(--trilha-blue-900);
  --green2:var(--trilha-blue-950);
  --deep:var(--trilha-blue-900);
  --deep2:var(--trilha-text);
  --leaf-muted:var(--trilha-muted-light);
  --olive:var(--trilha-muted);
  --indigo:var(--trilha-blue-700);
  --ochre:var(--trilha-blue-800);
  --rust:var(--trilha-pink-600);
  --terracotta:var(--trilha-pink-600);
  --terracotta-deep:var(--trilha-pink-700);
  --wine:var(--trilha-pink-700);
  --bark:var(--trilha-text);
  --ink:var(--trilha-blue-950);
  --muted:var(--trilha-muted);
  --line:rgba(96,113,129,.22);
  --white:var(--trilha-surface);

  --font-sans:"Manrope","Helvetica Neue",Helvetica,Arial,system-ui,-apple-system,sans-serif;
  --font-display:var(--font-sans);
  --text-meta:.75rem;      /* 12px */
  --text-ui:.875rem;       /* 14px */
  --text-body:1rem;        /* 16px */
  --text-body-lg:1.125rem; /* 18px */
  --text-lead:1.25rem;     /* 20px */
}

html{font-size:16px;scroll-behavior:smooth}
body{
  font-family:var(--font-sans)!important;
  color:var(--trilha-blue-950)!important;
  background:var(--trilha-paper)!important;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
button,input,select,textarea{font-family:var(--font-sans)!important}
input,select,textarea{font-size:var(--text-body)!important}
button,.btn,.site-btn{font-size:var(--text-ui)!important}

/* Core readability */
.eyebrow,.kicker{font-size:var(--text-meta)!important;color:var(--trilha-muted)!important;line-height:1.35}
.lead{font-size:clamp(1.125rem,1.45vw,1.3125rem)!important;line-height:1.6!important;color:var(--trilha-text)!important}
.muted,.subtle,.small,.notice,.note{color:var(--trilha-muted)!important}

/* Navigation */
nav,.site-nav{
  background:rgba(255,255,255,.94)!important;
  border-bottom:1px solid rgba(96,113,129,.18)!important;
}
.navlinks,.site-navlinks{font-size:var(--text-ui)!important;color:var(--trilha-text)!important}
.navlinks a,.site-navlinks>a{opacity:.82!important}
.navlinks a:hover,.site-navlinks>a:hover{opacity:1!important;color:var(--trilha-blue-900)!important}
.btn-primary,.site-btn-primary{background:var(--trilha-blue-900)!important;color:#ffffff!important}
.btn-primary:hover,.site-btn-primary:hover{background:var(--trilha-blue-950)!important}
.btn-outline,.site-btn-secondary{border-color:rgba(6,42,91,.24)!important;color:var(--trilha-blue-900)!important;background:#ffffff!important}

/* Brand text: treated as brand metadata, not paragraph copy. */
.brand-full-descriptor,.site-brand-full-descriptor,
.brand-descriptor,.site-brand-descriptor,
.footer-brand-descriptor,.standalone-brand-descriptor{
  color:var(--trilha-muted)!important;
  font-size:.75rem!important;
  line-height:1.25!important;
  letter-spacing:.035em!important;
}
.footer-legal{font-size:var(--text-meta)!important;line-height:1.45!important;color:#B7C3CC!important}

/* Surface normalization — removes the previous green/warm-beige layer. */
.wheel-section,.posts-section,.diagnostic-section,.reading-section,.method-section,
.panel,.card,.metric,.context,.wheel-card,.detail-card,.signals-card,
.post-card,.privacy-table-wrap,.privacy-bases>div,
.result-metric,.result-teaser-card,.objective-summary,.publication-intro{
  border-color:rgba(96,113,129,.20)!important;
}
.posts-section{background:var(--trilha-soft)!important}
.post-card,.panel,.metric,.context,.wheel-card,.detail-card,.signals-card{
  background:rgba(255,255,255,.86)!important;
}

/* Public diagnostic + legal */
.privacy-note{font-size:var(--text-ui)!important;color:var(--trilha-muted)!important}
.privacy-meta{font-size:var(--text-meta)!important;color:var(--trilha-muted)!important}
.privacy-index a{font-size:var(--text-ui)!important;color:var(--trilha-muted)!important}
.privacy-number{font-size:var(--text-meta)!important;color:var(--trilha-pink-700)!important}
.privacy-content p,.privacy-content li{font-size:var(--text-body)!important;color:var(--trilha-text)!important;line-height:1.72!important}
.privacy-table th{font-size:var(--text-meta)!important;color:var(--trilha-muted)!important}
.privacy-table td{font-size:var(--text-ui)!important;color:var(--trilha-text)!important}
.privacy-bases b,.privacy-bases span{font-size:var(--text-ui)!important}
.privacy-bases span{color:var(--trilha-muted)!important}
.privacy-contact{background:var(--trilha-soft-blue)!important;border-color:rgba(6,42,91,.18)!important}

/* Insights */
.filters .filter,.filter{font-size:var(--text-ui)!important;color:var(--trilha-text)!important;background:#ffffff!important;border-color:rgba(6,42,91,.16)!important}
.filter.is-active{background:var(--trilha-blue-900)!important;color:#ffffff!important;border-color:var(--trilha-blue-900)!important}
.posts-count{font-size:var(--text-ui)!important;color:var(--trilha-muted)!important}
.post-meta,.article-meta{font-size:var(--text-meta)!important;color:var(--trilha-pink-700)!important}
.post-card p{font-size:.9375rem!important;color:var(--trilha-text)!important;line-height:1.65!important}
.read-more,.back{font-size:var(--text-ui)!important;color:var(--trilha-blue-900)!important}
.article-deck{color:var(--trilha-text)!important}
.article-body{font-size:1.125rem!important;color:var(--trilha-text)!important;line-height:1.78!important}
.article-body blockquote{color:var(--trilha-blue-900)!important;border-left-color:var(--trilha-pink-600)!important}
.author-signature{font-size:var(--text-ui)!important;color:var(--trilha-muted)!important}
footer{background:var(--trilha-blue-950)!important;color:#ffffff!important}
.domain{font-size:var(--text-ui)!important;color:#D7E2E9!important}

/* Diagnostic journey */
.publication-intro,.objective-summary,.result-objective{
  background:var(--trilha-soft)!important;
  color:var(--trilha-text)!important;
  border-color:rgba(96,113,129,.20)!important;
}
.publication-intro{font-size:var(--text-ui)!important}
.step-count,.step-meta,.question-shield{font-size:var(--text-meta)!important;color:var(--trilha-muted)!important}
.dimension-prompt{font-size:var(--text-body)!important;color:var(--trilha-text)!important}
.copy-toast{font-size:var(--text-ui)!important;background:var(--trilha-blue-900)!important}
.result-metric{background:var(--trilha-soft)!important}
.result-metric span,.result-teaser-card span{font-size:var(--text-meta)!important;color:var(--trilha-muted)!important}
.result-metric b{color:var(--trilha-blue-900)!important}
.result-kicker{color:var(--trilha-blue-800)!important}
.result-objective b{color:var(--trilha-blue-900)!important}
.result-dim b{font-size:var(--text-ui)!important}
.result-bar{background:var(--trilha-line)!important}.result-bar i{background:var(--trilha-blue-900)!important}
.result-teaser-card{background:var(--trilha-soft)!important}
.result-teaser-card p{font-size:var(--text-ui)!important}
.result-teaser-card:after{background:linear-gradient(to bottom,rgba(237,242,245,0),#EDF2F5 78%)!important}
.refine-panel{background:var(--trilha-blue-900)!important}.refine-panel p{font-size:var(--text-body)!important;color:#EDF2F5!important}
.refine-link{font-size:var(--text-ui)!important}
.objective-card{border-color:rgba(96,113,129,.20)!important;background:#ffffff!important}
.objective-card:has(input:checked){background:var(--trilha-soft-blue)!important;border-color:var(--trilha-blue-900)!important}
.objective-card b{font-size:var(--text-body)!important;color:var(--trilha-blue-900)!important}
.objective-card p{font-size:var(--text-ui)!important;color:var(--trilha-text)!important}
.objective-card small{font-size:var(--text-meta)!important;color:var(--trilha-muted)!important}

/* Conversation */
.conversation-card,.chat-card,.message,.conversation-shell{border-color:rgba(96,113,129,.20)!important}

/* Roda da Capacidade Institucional — legibility pass */
.wheel-top b{font-size:1.375rem!important;color:var(--trilha-blue-950)!important}
.wheel-legend{font-size:.875rem!important;color:var(--trilha-muted)!important}
.wheel-summary{font-size:.9375rem!important;line-height:1.55!important;color:var(--trilha-text)!important}
.wheel-summary b{color:var(--trilha-pink-700)!important}
.wheel-interaction-hint{font-size:.875rem!important;color:var(--trilha-muted)!important}
.radar-click-label .svg-label{
  fill:var(--trilha-blue-900)!important;
  font-size:15.5px!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
.radar-click-label .svg-score{font-size:16.5px!important;font-weight:800!important}
.radar-click-label .score-current{fill:var(--trilha-blue-800)!important}
.radar-click-label .score-divider{fill:#607181!important}
.radar-click-label .score-target{fill:var(--trilha-pink-700)!important}
.radar-click-label.is-active .label-bg{fill:var(--trilha-soft-blue)!important;stroke:rgba(11,47,107,.34)!important}
.radar-svg.has-active .radar-click-label:not(.is-active){opacity:.88!important}
.current-poly{fill:rgba(11,47,107,.08)!important;stroke:var(--trilha-blue-800)!important}
.current-dot{fill:var(--trilha-blue-800)!important}
.required-poly{fill:rgba(240,20,123,.055)!important;stroke:var(--trilha-pink-600)!important}
.radar-required-dot{fill:var(--trilha-pink-600)!important}
.radar-gap-line{stroke:rgba(240,20,123,.42)!important}
.wheel-focus-title{font-size:1rem!important;color:var(--trilha-blue-900)!important}
.wheel-focus-status{font-size:var(--text-meta)!important;color:var(--trilha-pink-700)!important}
.wheel-focus-copy{font-size:.9375rem!important;color:var(--trilha-text)!important;line-height:1.6!important}
.wheel-metric span{font-size:var(--text-meta)!important;color:var(--trilha-muted)!important}
.wheel-metric b{font-size:1.125rem!important;color:var(--trilha-blue-900)!important}
.wheel-focus,.wheel-metric{border-color:rgba(96,113,129,.18)!important}

/* Focus and controls */
:focus-visible{outline:3px solid rgba(11,47,107,.42)!important;outline-offset:3px}
a,button,input,select,textarea{accent-color:var(--trilha-blue-900)}

@media(max-width:640px){
  /* Mobile refinement will be a separate pass, but never shrink core content below the established floor. */
  .radar-click-label .svg-label{font-size:14.5px!important}
  .radar-click-label .svg-score{font-size:15.5px!important}
  .article-body{font-size:1rem!important}
  .privacy-content p,.privacy-content li{font-size:1rem!important}
}

/* V1.5.7 audit corrections — preserve the two-state brand header and remove remaining microtype. */
nav,.site-nav{
  background:#062A5B!important;
  border-bottom-color:rgba(255,255,255,.12)!important;
}
nav .navlinks a,.site-nav .site-navlinks>a{
  color:#FFFFFF!important;
  font-size:14px!important;
}
nav .btn-primary,.site-nav .site-btn-primary,nav .mobile-read-cta,.site-nav .mobile-read-cta{
  background:#A50B55!important;
  color:#FFFFFF!important;
}
nav .btn-primary:hover,.site-nav .site-btn-primary:hover,nav .mobile-read-cta:hover,.site-nav .mobile-read-cta:hover{
  background:#0B1826!important;
}
nav.is-scrolled,.site-nav.is-scrolled{
  background:rgba(255,255,255,.97)!important;
  border-bottom-color:rgba(96,113,129,.18)!important;
}
nav.is-scrolled .navlinks a,.site-nav.is-scrolled .site-navlinks>a{color:#0B1826!important}
nav.is-scrolled .navlinks a:hover,.site-nav.is-scrolled .site-navlinks>a:hover,
nav.is-scrolled .navlinks a.nav-active,.site-nav.is-scrolled .site-navlinks>a.nav-active{color:#062A5B!important}
nav.is-scrolled .btn-primary,.site-nav.is-scrolled .site-btn-primary,
nav.is-scrolled .mobile-read-cta,.site-nav.is-scrolled .mobile-read-cta{background:#062A5B!important;color:#FFFFFF!important}

/* Microtype floor: 12px only for tertiary metadata, 14px for functional copy. */
.example-badge,.layer>span,.service-lines-label,.experience-group-label,.client-logo-name,
.contact-form label,.contact-consent,.contact-consent a,.footer-map-title,
.footer-brand-meta .founder,.footer-brand-meta .founder a,.footer-legal,.footer-legal a{
  font-size:12px!important;
}
.example-badge,.layer>span{color:#A50B55!important}
.service-lines-label,.contact-form label,.contact-consent,.contact-consent a{color:#526476!important}
.experience-group-label{color:#062A5B!important}
.client-logo-name{color:#0B1826!important}
.founder-linkedin{font-size:14px!important}
.dot{font-size:12px!important}
.footer-links,.footer-links a,.footer-read-link{font-size:14px!important}
.footer-map-title{color:#B7C3CC!important}
.footer-brand-meta .founder,.footer-brand-meta .founder a{color:#B7C3CC!important}
.why-trilha p{font-size:14px!important;color:#526476!important;line-height:1.6!important}

/* Pink is an accent; use the darker accessible pink for small textual information. */
.article-head .eyebrow,.post-meta,.article-meta,.wheel-focus-status,.example-badge,.layer>span{color:#A50B55!important}
body .eyebrow{color:#526476!important}
.statement .eyebrow,.diag .eyebrow,.cta .eyebrow{color:#D7E2E9!important}

/* Buttons on light surfaces use dark blue; dark sections keep explicit light variants. */
body:not(.presentation) .btn-outline,body:not(.presentation) .site-btn-secondary{color:#062A5B!important;border-color:rgba(6,42,91,.24)!important}
.diag .btn-outline,.statement .btn-outline,.cta .btn-outline{color:#FFFFFF!important;border-color:rgba(255,255,255,.38)!important}

/* Context-aware brand/eyebrow contrast fixes from the page-by-page audit. */
nav:not(.is-scrolled) .brand-full-descriptor,
.site-nav:not(.is-scrolled) .site-brand-full-descriptor{color:#D7E2E9!important}
nav.is-scrolled .brand-descriptor,
.site-nav.is-scrolled .site-brand-descriptor{color:#334454!important}
footer .footer-brand-descriptor{color:#D7E2E9!important}
.diag .diag-card .eyebrow,.cta .contact-form .eyebrow{color:#526476!important}
.cta .contact-copy .eyebrow{color:#D7E2E9!important}

/* Functional-copy floor (14px); 12px remains reserved for true metadata/eyebrows/chips. */
.reading p,.layer p{font-size:14px!important;line-height:1.6!important;color:#526476!important}
.contact-linkedin{font-size:14px!important}
.contact-form label{font-size:14px!important;color:#334454!important}
#diagnostico label,.diagnostic-shell label,.step-shell label{font-size:14px!important;color:#334454!important}
#diagnostico .note,.diagnostic-shell .note,.step-shell .note{font-size:14px!important}
.conversation-shell .loading,.loading{font-size:14px!important}


/* Final functional type-floor lock */
label{font-size:14px!important}
body .loading{font-size:14px!important;line-height:1.55!important}
