/* Readability pass. Loaded last so the established layout remains reusable. */
:root {
  --head: 'Inter', Arial, Helvetica, sans-serif;
  --body: 'Inter', Arial, Helvetica, sans-serif;
  --muted: #b8bac2;
}
body { font-size: 17px; line-height: 1.75; }
h1, h2, h3 { font-weight: 600; line-height: 1.2; letter-spacing: -.03em; }
.hero h1, .partner-hero h1 { font-size: clamp(44px, 4.4vw, 62px); line-height: 1.12; letter-spacing: -.04em; }
h2 { font-size: clamp(30px, 3.3vw, 44px); }
h3 { font-size: 24px; }

/* The existing wordmark keeps its original type and sizing. */
.brand-wordmark strong { font-family: 'Rajdhani', Arial, sans-serif; }
.brand-wordmark small { font-family: 'Share Tech Mono', monospace; }

#site-nav { font-size: 14px; }
.eyebrow { font-size: 12px; line-height: 1.6; letter-spacing: 1.5px; }
.hero-description { font-size: 17px; line-height: 1.8; }
.partner-audience { max-width: 560px; font-size: 14px; line-height: 1.75; margin-top: 17px; }
.beacon-deliverables > .eyebrow { margin-bottom: 24px; font-size: 12px; line-height: 1.6; }
.beacon-deliverables > div { padding-bottom: 19px; margin-bottom: 19px; }
.beacon-points.beacon-deliverables h3 { font-size: 22px; }
.beacon-deliverables p:not(.eyebrow) { font-size: 15px; line-height: 1.75; }
.hero-footnote { font-family: var(--body); font-size: 12px; letter-spacing: 0; color: var(--muted); }
.button, .hero .button-primary, .hero .button-text, .text-link { font-size: 14px; }
.hero-route-index > a { font-family: var(--body); font-size: 13px; line-height: 1.55; }
.hero-route-index .route-label { font-size: 11px; }
.product-topline, .video-topline { font-size: 11px; line-height: 1.6; letter-spacing: .5px; flex-wrap: wrap; }
.product-caption strong { font-size: 15px; line-height: 1.5; }
.product-caption p { font-size: 13px; line-height: 1.65; }
.video-cover small, .video-disclosure { font-size: 12px; line-height: 1.6; }
.section-intro > p, .resource-intro > p { font-size: 17px; line-height: 1.8; }

.assessment-card h3 { font-size: 25px; line-height: 1.25; min-height: 2.5em; letter-spacing: -.025em; }
.assessment-card p { font-size: 16px; line-height: 1.75; }
.card-number { font-size: 11px; line-height: 1.6; letter-spacing: .7px; }
.card-tags { font-size: 11px; line-height: 1.65; letter-spacing: .25px; }
.card-link, .beacon-points .text-link { font-size: 14px; }
.beacon-points h3, .process-list h3, .partner-roles h3, .partner-steps h3 { font-size: 24px; line-height: 1.3; }
.beacon-points p, .process-list p, .partner-roles p, .partner-steps p,
.about-grid p:not(.eyebrow), .faq-list p, .contact-layout > div > p:not(.eyebrow),
.contact-next p, .partner-band p:not(.eyebrow), .review-list p { font-size: 16px; line-height: 1.8; }
.about-grid .about-lead { font-size: 18px !important; }
.partner-band h2 { font-size: clamp(29px, 3vw, 38px); line-height: 1.25; }
.partner-roles .eyebrow, .partner-roles > div > span, .credentials .eyebrow { font-size: 11px; }
.roles-bridge { font-family: var(--body); font-size: 13px; line-height: 1.6; }
.faq-list summary { font-size: 16px; line-height: 1.6; }
.primary-certs span { font-size: 23px; }
.credentials summary { font-size: 14px; }
.credentials details p { font: 13px/1.9 var(--body) !important; }
.credentials .credential-note { font-size: 14px !important; }
.contact-form label { font-size: 14px; }
.contact-form input, .contact-form textarea, .contact-form select { font-size: 16px; }
.contact-next > span { font-size: 11px; line-height: 1.6; }
.preview-form-note { font-size: 12px !important; line-height: 1.65; }
.footer-main p, .footer-main nav, .footer-contact { font-size: 14px; line-height: 1.7; }
.footer-bottom { font-family: var(--body); font-size: 11px; line-height: 1.6; letter-spacing: 0; color: #a2a5af; }
.partner-preview > p { font-size: 12px !important; line-height: 1.65; }

.service-dialog h2 { font-size: clamp(28px, 3.5vw, 36px); line-height: 1.2; }
.service-dialog > p:not(.eyebrow), .service-facts p, .service-subsection p { font-size: 16px; line-height: 1.8; }
.service-facts h3 { font-size: 12px; line-height: 1.6; }
.service-facts small { font-size: 12px; color: var(--muted); }
.service-subsection h3 { font-size: 21px; line-height: 1.3; }

/* Carry the same reading rhythm through resources and article views. */
.resource-intro h1 { font-size: clamp(38px, 4.8vw, 64px); line-height: 1.15; letter-spacing: -.04em; }
.blog-card-title { font-size: 25px; line-height: 1.3; letter-spacing: -.025em; }
.blog-card:first-child .blog-card-title { font-size: clamp(28px, 3vw, 40px); line-height: 1.25; }
.blog-card-summary, .blog-card:first-child .blog-card-summary,
.feed-card-summary { font-size: 16px; line-height: 1.8; }
.blog-card-meta, .blog-post-meta, .feed-card-meta { font-family: var(--body); font-size: 12px; line-height: 1.7; letter-spacing: 0; }
.tag, .feed-tag, .blog-card:first-child .tag { font-size: 11px; line-height: 1.6; }
.blog-card-read, .feed-read-link, .resource-tabs a, .feed-filter { font-size: 14px; }
.blog-back { font-family: var(--body); font-size: 14px; }
.blog-post-title { font-size: clamp(32px, 4vw, 52px); line-height: 1.2; letter-spacing: -.035em; }
.blog-post-body { font-size: 18px; line-height: 1.85; }
.blog-post-body h2 { font-size: 30px; }
.blog-post-body h3 { font-size: 25px; }
.feed-card-title { font-size: 27px; line-height: 1.3; letter-spacing: -.025em; }
.feed-source-badge { font-size: 12px; line-height: 1.6; }
.filter-label, .feed-count, .snapshot-note { font-size: 11px; line-height: 1.7; color: #a7aab4; }
.review-page h1 { font-size: clamp(36px, 4.5vw, 56px); line-height: 1.15; }
.review-list h2 { font-size: 25px; line-height: 1.3; }

@media (min-width: 851px) and (max-width: 1100px) {
  .hero h1, .partner-hero h1 { font-size: clamp(39px, 4.4vw, 48px); }
  #site-nav { gap: 16px; }
  .nav-wrap { gap: 20px; }
  .nav-contact { gap: 12px; padding-inline: 14px; }
  .assessment-card { padding: 22px; }
  .assessment-card h3 { font-size: 23px; }
}
@media (max-width: 850px) {
  #site-nav { font-size: 16px; }
  .hero h1, .partner-hero h1 { font-size: clamp(40px, 7vw, 60px); }
  .hero-route-index > a { font-size: 13px; }
  .blog-card:first-child .blog-card-title { font-size: 30px; }
}
@media (max-width: 560px) {
  body { font-size: 16px; }
  .hero h1, .partner-hero h1 { font-size: clamp(32px, 9vw, 48px); line-height: 1.16; }
  .hero-description, .section-intro > p, .resource-intro > p { font-size: 16px; }
  .hero-footnote { font-size: 12px; }
  .assessment-card h3 { font-size: 25px; min-height: 0; }
  .partner-steps h3 { font-size: 23px; }
  .hero-route-index > a { font-size: 14px; }
  .product-topline, .video-topline { font-size: 10px; }
  .product-caption strong { font-size: 14px; }
  .product-caption p { font-size: 13px; }
  .footer-bottom { gap: 12px; flex-wrap: wrap; }
  .resource-intro h1 { font-size: clamp(34px, 9vw, 46px); }
  .blog-card:first-child .blog-card-title { font-size: 29px; }
  .blog-post-body { font-size: 17px; }
  .blog-post-body h2 { font-size: 27px; }
  .feed-card-title { font-size: 25px; }
  .feed-card-header { flex-wrap: wrap; }
  .feed-card-meta { max-width: none; }
}

.production-motion{padding-top:0;padding-bottom:20px}.production-motion #logo-motion{font-size:11px;padding:8px 0}.contact-form{min-width:0}.captcha-container{width:100%;min-width:0;height:78px;overflow:hidden}.captcha-container .g-recaptcha{width:304px;margin:0;transform-origin:top left}.button:disabled{opacity:.65;cursor:wait}
