/* Final readability layer. Keep the information readable; let the layout grow. */
.site-v3 { font-size: 18px; }
.site-v3 .header nav { font-size: 16px; gap: 28px; }
.site-v3 .button,
.site-v3 .button.small,
.site-v3 .hero-actions .button,
.site-v3 .final-invitation .button,
.site-v3 .page-cta .button { font-size: 17px; line-height: 1.35; min-height: 52px; padding: 15px 23px; gap: 16px; }
.site-v3 .button.small { font-size: 15px; min-height: 46px; padding: 12px 18px; gap: 12px; }
.site-v3 .text-link,
.site-v3 .hero-actions .text-link,
.site-v3 .company-band-copy .text-link { font-size: 17px; line-height: 1.5; }
.site-v3 .eyebrow,
.site-v3 .enterprise-hero-copy .eyebrow,
.site-v3 .company-band .eyebrow { font-size: 14px; line-height: 1.55; letter-spacing: .11em; }
.site-v3 .enterprise-intro { font-size: 21px; line-height: 1.65; max-width: 510px; }
.site-v3 .heritage-link { font-size: 16px; line-height: 1.6; gap: 5px; color: #62748d; }
.site-v3 .heritage-link strong { color: #314c70; }
.site-v3 .hero-actions { flex-wrap: wrap; }

/* Four clear statements, with room for each description. */
.site-v3 .credibility-rail { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; padding: 45px 4vw; }
.site-v3 .credibility-rail > div { display: grid; grid-template-columns: 1fr; align-content: start; align-items: start; gap: 16px; min-width: 0; padding: 0 28px; }
.site-v3 .credibility-rail b { font-size: 50px; line-height: 1.05; letter-spacing: -2px; white-space: normal; }
.site-v3 .credibility-rail > div:last-child b { font-size: 30px; line-height: 1.25; letter-spacing: -1px; min-height: 52px; }
.site-v3 .credibility-rail span,
.site-v3 .credibility-rail > div:last-child span { display: block; margin: 0; font-size: 18px; line-height: 1.55; color: #5c6f87; }

/* Product, company, and enterprise copy. */
.site-v3 .positioning-top > p:last-child,
.site-v3 .enterprise-path-copy > p:not(.eyebrow),
.site-v3 .company-band p:not(.eyebrow),
.site-v3 .split-section > div > p,
.site-v3 .feature-grid p,
.site-v3 .process-list p,
.site-v3 .statement-panel p,
.site-v3 .page-cta p,
.site-v3 .platform-human > div > p:last-child,
.site-v3 .final-invitation > div > p:not(.eyebrow) { font-size: 19px; line-height: 1.7; }
.site-v3 .positioning-top > p:last-child,
.site-v3 .enterprise-path-copy > p:not(.eyebrow),
.site-v3 .company-band p:not(.eyebrow),
.site-v3 .split-section > div > p,
.site-v3 .feature-grid p,
.site-v3 .process-list p,
.site-v3 .page-cta p,
.site-v3 .platform-human > div > p:last-child { color: #5c6f87; }
.site-v3 .page-hero > p:last-child { font-size: 22px; line-height: 1.65; color: #5c6f87; max-width: 790px; }
.site-v3 .pillar-grid h3 { font-size: 30px; line-height: 1.18; }
.site-v3 .pillar-grid p { font-size: 18px; line-height: 1.7; color: #5c6f87; max-width: none; }
.site-v3 .pillar-grid a { font-size: 16px; line-height: 1.5; max-width: none; gap: 15px; }
.site-v3 .pillar-symbol,
.site-v3 .feature-grid small,
.site-v3 .step-number,
.site-v3 .evaluation-map span { font-size: 14px; line-height: 1.5; }
.site-v3 .step-number { min-width: 25px; flex-shrink: 0; }
.site-v3 .feature-grid h3 { font-size: 30px; line-height: 1.2; }
.site-v3 .process-list h3,
.site-v3 .evaluation-map h3 { font-size: 25px; line-height: 1.25; }
.site-v3 .evaluation-map p { font-size: 18px; line-height: 1.65; color: #5c6f87; max-width: 410px; }
.site-v3 .company-band h2 { font-size: clamp(32px, 2.6vw, 42px); line-height: 1.18; }
.site-v3 .final-invitation > div > a { font-size: 17px; line-height: 1.5; }
.site-v3 .faq-section summary { font-size: 19px; line-height: 1.5; }
.site-v3 .faq-list details > p { font-size: 18px; line-height: 1.7; color: #5c6f87; }

/* A comparison that can be read without magnification. */
.site-v3 .compare-heading > p { font-size: 19px; line-height: 1.7; }
.site-v3 .date-note { font-size: 14px; line-height: 1.5; color: #64768e; }
.site-v3 .comparison-label { font-size: 17px; line-height: 1.5; }
.site-v3 .sources-button,
.site-v3 .comparison-controls button { font-size: 15px; line-height: 1.5; }
.site-v3 .comparison-sources { font-size: 16px; line-height: 1.7; color: #5c6f87; }
.site-v3 .comparison-legend { font-size: 14px; line-height: 1.6; gap: 16px 26px; color: #526b8a; }
.site-v3 .comparison-legend > span { align-items: flex-start; }
.site-v3 .comparison-legend i { flex-shrink: 0; }
.site-v3 table { min-width: 1040px; }
.site-v3 th,
.site-v3 td { font-size: 16px; line-height: 1.6; padding: 26px 25px; }
.site-v3 thead th { font-size: 22px; padding: 29px 25px; }
.site-v3 thead th:first-child { font-size: 16px; width: 34%; }
.site-v3 thead th small { font-size: 14px; line-height: 1.5; margin-top: 8px; }
.site-v3 .table-brand { font-size: 30px; }
.site-v3 tbody th b { font-size: 18px; line-height: 1.5; }
.site-v3 tbody th small { font-size: 14px; line-height: 1.6; margin-top: 9px; color: #526b8a; }
.site-v3 td small { font-size: 14px; line-height: 1.55; margin-top: 8px; padding-left: 0; color: #526b8a; }
.site-v3 .cap-status { font-size: 16px; line-height: 1.5; gap: 9px; align-items: flex-start; }
.site-v3 .cap-status.supported i { width: 21px; height: 21px; font-size: 14px; margin-top: 1px; }
.site-v3 .comparison-closing p,
.site-v3 .comparison-closing .text-link { font-size: 17px; line-height: 1.6; }

/* The interactive illustration is a readable explanation, not a tiny screenshot. */
.site-v3 .experience-heading > p:last-child { font-size: 20px; line-height: 1.65; max-width: 450px; color: #5c6f87; }
.site-v3 .experience .label { font-size: 14px; line-height: 1.5; color: #63758f; }
.site-v3 .experience-topline p { font-size: 25px; line-height: 1.3; }
.site-v3 .scenario-switch { flex-shrink: 0; }
.site-v3 .scenario-switch button { font-size: 15px; line-height: 1.4; padding: 13px 19px; }
.site-v3 .assignment { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 14px; padding: 22px 14px; }
.site-v3 .assignment > span:nth-child(2) { min-width: 0; }
.site-v3 .facility-square { width: 44px; height: 48px; font-size: 16px; }
.site-v3 .assignment strong { font-size: 18px; line-height: 1.4; }
.site-v3 .assignment small { font-size: 14px; line-height: 1.5; color: #61728b; margin-top: 5px; }
.site-v3 .assignment b { font-size: 21px; line-height: 1.3; margin-left: 0; }
.site-v3 .assignment .row-arrow { display: none; }
.site-v3 .connected-note p { font-size: 16px; line-height: 1.6; color: #62758f; }
.site-v3 .premium-note { font-size: 16px; line-height: 1.6; color: #62758f; }
.site-v3 .premium-note.is-active { color: var(--blue); }
.site-v3 .explanation-heading { font-size: 18px; line-height: 1.5; }
.site-v3 .explanation > div { font-size: 16px; line-height: 1.6; gap: 20px; padding: 12px 0; }
.site-v3 .explanation dt { color: #63758f; }
.site-v3 .explanation dd { color: #314d71; }
.site-v3 .experience-footer { font-size: 14px; line-height: 1.65; color: #62758f; }

/* Footer and contact flow. */
.site-v3 .footer-identity > p,
.site-v3 .footer-identity .legal-name,
.site-v3 .footer-main > div > span,
.site-v3 .footer-main > div > a:not(.brand),
.site-v3 .footer-contact .text-link { font-size: 16px; line-height: 1.55; }
.site-v3 .footer-identity > p,
.site-v3 .footer-main > div > a:not(.brand),
.site-v3 .footer-contact p { color: #5c6f87; }
.site-v3 .footer-main > div > span { font-weight: 600; color: #2e496e; }
.site-v3 .footer-contact p { font-size: 17px; line-height: 1.7; }
.site-v3 .footer-main > div > a:not(.brand) { padding: 3px 0; margin-bottom: 10px; }
.site-v3 .footer a[href^="mailto:"] { overflow-wrap: anywhere; }
.site-v3 .footer-bottom { font-size: 13px; line-height: 1.6; color: #60748f; flex-wrap: wrap; align-items: flex-start; gap: 14px 25px; }
.site-v3 .preview-logout { font-size: 14px; }
.site-v3 dialog { width: min(660px, calc(100% - 30px)); }
.site-v3 dialog > p:not(.eyebrow) { font-size: 17px; line-height: 1.65; color: #5c6f87; }
.site-v3 dialog label { font-size: 16px; line-height: 1.5; color: #365274; }
.site-v3 dialog label > span { font-size: 14px; color: #61758f; }
.site-v3 dialog input,
.site-v3 dialog textarea { font-size: 17px; line-height: 1.5; padding: 13px; }
.site-v3 .form-note { font-size: 14px; line-height: 1.6; color: #62758f; }
.site-v3 #demo-summary { font-size: 16px; line-height: 1.65; overflow-wrap: anywhere; }
.site-v3 #demo-result > p:not(#demo-summary) { font-size: 16px; line-height: 1.65; color: #5c6f87; }
.site-v3 #demo-result > .button { font-size: 16px; }

@media (max-width: 1200px) {
  .site-v3 .nav-inner { padding-left: 30px; padding-right: 30px; gap: 24px; }
  .site-v3 .header nav { font-size: 15px; gap: 22px; }
  .site-v3 .credibility-rail > div { padding: 0 22px; }
  .site-v3 .credibility-rail span { font-size: 17px; }
  .site-v3 .experience-body { grid-template-columns: 1fr; }
  .site-v3 .assignment-list { border-right: 0; border-bottom: 1px solid #e9ebf0; }
  .site-v3 .experience-total { padding: 35px; }
  .site-v3 .footer-main { grid-template-columns: 1fr 1fr; gap: 40px 55px; }
}

@media (max-width: 1000px) {
  .site-v3 .header nav { display: none; }
  .site-v3 .menu-toggle { display: block; width: 44px; height: 44px; padding: 9px 8px; }
  .site-v3 .nav-inner { height: 76px; padding: 0 25px; }
  .site-v3 .mobile-nav { top: 76px; }
  .site-v3 .mobile-nav a,
  .site-v3 .mobile-nav button { font-size: 22px; line-height: 1.5; padding: 13px 0; }
  .site-v3 .credibility-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 35px 0; padding: 40px 4vw; }
  .site-v3 .credibility-rail > div:nth-child(2) { border-right: 0; }
  .site-v3 .credibility-rail span { font-size: 18px; }
  .site-v3 .evaluation-map { display: block; border-top: 0; border-left: 1px solid #c9d9ee; padding: 0 0 0 30px; }
  .site-v3 .evaluation-map > div { padding: 0 0 30px; }
  .site-v3 .evaluation-map > div:last-child { padding-bottom: 0; }
  .site-v3 .evaluation-map > div::before { left: -35px; top: 5px; }
  .site-v3 .evaluation-map p { max-width: 600px; }
  .site-v3 .enterprise-path { grid-template-columns: 1fr; }
  .site-v3 .comparison-controls { align-items: flex-start; flex-wrap: wrap; }
  .site-v3 .comparison-closing { flex-wrap: wrap; }
  .site-v3 .experience-topline { flex-wrap: wrap; }
  .site-v3 .connected-note,
  .site-v3 .contribution-bar { display: none; }
}

@media (max-width: 800px) {
  .site-v3 .pillar-grid { grid-template-columns: 1fr; gap: 40px; }
  .site-v3 .pillar-grid p { max-width: 620px; }
  .site-v3 .pillar-grid a { max-width: 620px; }
  .site-v3 .split-section { grid-template-columns: 1fr; gap: 35px; }
  .site-v3 .company-band { grid-template-columns: 1fr; }
  .site-v3 .company-band-image { height: 390px; }
  .site-v3 .company-band-copy { padding: 60px 6vw; }
  .site-v3 .company-band p:not(.eyebrow) { max-width: 650px; }
}

@media (max-width: 680px) {
  .site-v3 { font-size: 16px; }
  .site-v3 .nav-inner { height: 73px; padding: 0 20px; gap: 16px; }
  .site-v3 .header .brand { width: 155px; height: 52px; }
  .site-v3 .header .nav-actions { gap: 0; }
  .site-v3 .header .button.small { display: none; }
  .site-v3 .mobile-nav { top: 73px; }
  .site-v3 .button,
  .site-v3 .hero-actions .button,
  .site-v3 .final-invitation .button,
  .site-v3 .page-cta .button { font-size: 16px; min-height: 50px; padding: 14px 20px; gap: 13px; }
  .site-v3 .text-link,
  .site-v3 .hero-actions .text-link,
  .site-v3 .company-band-copy .text-link { font-size: 16px; }
  .site-v3 .hero-actions { flex-direction: column; align-items: flex-start; gap: 20px; }
  .site-v3 .enterprise-intro { font-size: 18px; line-height: 1.7; }
  .site-v3 .heritage-link { font-size: 15px; line-height: 1.6; }
  .site-v3 .eyebrow,
  .site-v3 .enterprise-hero-copy .eyebrow,
  .site-v3 .company-band .eyebrow { font-size: 14px; line-height: 1.6; letter-spacing: .08em; }
  .site-v3 .credibility-rail { padding: 35px 24px; gap: 32px 24px; }
  .site-v3 .credibility-rail > div { display: grid; padding: 0; border: 0; gap: 12px; }
  .site-v3 .credibility-rail b { font-size: 44px; }
  .site-v3 .credibility-rail > div:last-child b { font-size: 27px; min-height: 46px; }
  .site-v3 .credibility-rail span,
  .site-v3 .credibility-rail > div:last-child span { font-size: 16px; line-height: 1.55; }
  .site-v3 .credibility-rail span br { display: none; }
  .site-v3 .positioning-top > p:last-child,
  .site-v3 .enterprise-path-copy > p:not(.eyebrow),
  .site-v3 .company-band p:not(.eyebrow),
  .site-v3 .split-section > div > p,
  .site-v3 .feature-grid p,
  .site-v3 .process-list p,
  .site-v3 .statement-panel p,
  .site-v3 .page-cta p,
  .site-v3 .platform-human > div > p:last-child,
  .site-v3 .final-invitation > div > p:not(.eyebrow) { font-size: 17px; line-height: 1.7; }
  .site-v3 .page-hero > p:last-child { font-size: 18px; line-height: 1.7; }
  .site-v3 .pillar-grid h3 { font-size: 28px; }
  .site-v3 .pillar-grid p { font-size: 17px; }
  .site-v3 .pillar-grid a { font-size: 16px; }
  .site-v3 .feature-grid,
  .site-v3.platform-page .feature-grid { grid-template-columns: 1fr; }
  .site-v3 .feature-grid h3 { font-size: 28px; }
  .site-v3 .process-list h3,
  .site-v3 .evaluation-map h3 { font-size: 24px; }
  .site-v3 .process-list article { gap: 15px; }
  .site-v3 .evaluation-map p { font-size: 17px; }
  .site-v3 .company-band h2 { font-size: 32px; }
  .site-v3 .company-band-image { height: 320px; }
  .site-v3 .compare-heading > p { font-size: 17px; }
  .site-v3 .comparison-label { font-size: 16px; }
  .site-v3 .sources-button,
  .site-v3 .comparison-controls button { font-size: 14px; }
  .site-v3 .comparison-legend { font-size: 14px; gap: 12px; }
  .site-v3 .comparison-closing p,
  .site-v3 .comparison-closing .text-link { font-size: 16px; }
  .site-v3 .experience-heading > p:last-child { font-size: 18px; }
  .site-v3 .experience-topline { padding: 25px 22px; }
  .site-v3 .experience-topline p { font-size: 23px; }
  .site-v3 .scenario-switch { display: flex; width: 100%; margin-top: 22px; }
  .site-v3 .scenario-switch button { flex: 1; font-size: 14px; padding: 12px 10px; }
  .site-v3 .assignment-list { padding: 15px; }
  .site-v3 .assignment { grid-template-columns: 36px minmax(0, 1fr); align-items: start; gap: 9px 13px; padding: 19px 12px; }
  .site-v3 .facility-square { width: 36px; height: 40px; font-size: 15px; }
  .site-v3 .assignment strong { font-size: 18px; }
  .site-v3 .assignment small { font-size: 14px; line-height: 1.55; }
  .site-v3 .assignment b { grid-column: 2; font-size: 23px; }
  .site-v3 .experience-total { padding: 29px 25px; }
  .site-v3 .experience-total output { font-size: clamp(44px, 12vw, 58px); line-height: 1.15; letter-spacing: -2px; }
  .site-v3 .premium-note { font-size: 15px; }
  .site-v3 .explanation > div { display: grid; grid-template-columns: 1fr; gap: 3px; font-size: 16px; padding: 12px 0; }
  .site-v3 .explanation dt { font-size: 14px; }
  .site-v3 .explanation dd { text-align: left; }
  .site-v3 .experience-footer { font-size: 14px; padding: 21px 25px; }
  .site-v3 .experience-footer span { max-width: none; }
  .site-v3 .experience-footer span + span { margin-top: 12px; }
  .site-v3 .faq-section summary { font-size: 18px; }
  .site-v3 .faq-list details > p { font-size: 16px; }
  .site-v3 .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 35px 23px; }
  .site-v3 .footer-identity,
  .site-v3 .footer-contact { grid-column: 1 / -1; }
  .site-v3 .footer-identity > p,
  .site-v3 .footer-identity .legal-name,
  .site-v3 .footer-main > div > span,
  .site-v3 .footer-main > div > a:not(.brand),
  .site-v3 .footer-contact .text-link { font-size: 15px; }
  .site-v3 .footer-contact p { font-size: 16px; }
  .site-v3 .footer-bottom { font-size: 13px; gap: 14px; }
  .site-v3 dialog { padding: 37px 25px; }
  .site-v3 dialog > p:not(.eyebrow),
  .site-v3 dialog input,
  .site-v3 dialog textarea { font-size: 16px; }
}

@media (max-width: 380px) {
  .site-v3 .credibility-rail { grid-template-columns: 1fr; gap: 26px; padding: 32px 20px; }
  .site-v3 .credibility-rail > div { grid-template-columns: 95px minmax(0, 1fr); align-items: center; gap: 20px; }
  .site-v3 .credibility-rail b { font-size: 42px; }
  .site-v3 .credibility-rail > div:last-child b { font-size: 23px; min-height: 0; }
  .site-v3 .footer-main { grid-template-columns: 1fr; }
  .site-v3 .assignment-list { padding: 10px; }
  .site-v3 .assignment { padding-left: 10px; padding-right: 10px; gap: 9px 11px; }
  .site-v3 .experience-total { padding-left: 20px; padding-right: 20px; }
  .site-v3 .experience-footer { padding-left: 20px; padding-right: 20px; }
}
