/* Readability and proportion refinements. Kept separate to preserve the approved visual design. */
@media (min-width: 761px) {
  .section-pad { padding-block: 96px; }
  .section-heading { margin-bottom: 42px; }
  .feature-story { padding-block: 62px; gap: 64px; }
  .story-video-shell { width: min(1100px, 100%); margin-inline: auto; }
  .visual-proof-grid, .problem-strip { width: min(1140px, 100%); margin-inline: auto; }
  .visual-proof-grid { margin-top: 28px; }
  .problem-strip { margin-top: 20px; }
  .role-panel { padding: 44px; gap: 56px; }
  .phones { height: 560px; }
  .phone { transform-origin: center; }
}

/* Public labels and navigation */
.eyebrow, .section-index { font-size: 11px; line-height: 1.45; }
.mega-kicker, .mega-links b, .mega-solutions b { font-size: 10px; }
.mega-links a, .mega-solutions a, .mini-menu a { font-size: 12px; }
.watch-story > span { font-size: 12px; }
.watch-story small { font-size: 10px; }
.existing-login, .hero-assurance { font-size: 12px; }

/* Hero product preview */
.preview-label, .screen-caption { font-size: 9px; line-height: 1.4; }
.browser-address, .app-heading small, .app-heading button { font-size: 9px; }
.metric-grid span, .metric-grid small { font-size: 9px; line-height: 1.35; }
.app-card-title { font-size: 10px; }
.chart-total small { font-size: 9px; }
.action-list p { font-size: 9px; }
.action-list p small, .action-list em { font-size: 8px; }
.live-toast { font-size: 9px; }
.live-toast small { font-size: 10px; }

/* Visual story */
.story-video-top, .story-video-top small, .story-chapters { font-size: 10px; }
.visual-tag b { font-size: 11px; }
.visual-tag small { font-size: 9px; }
.community-overlay > span { font-size: 10px; }
.community-overlay p { font-size: 12px; line-height: 1.55; }
.community-overlay a { font-size: 12px; }
.role-pins span { font-size: 9px; }
.problem-strip article > span { font-size: 11px; }
.problem-strip b { font-size: 13px; line-height: 1.35; }
.problem-strip small { font-size: 10px; line-height: 1.45; }

/* Module orbit */
.module-orbit button { font-size: 9px; line-height: 1.2; }
.orbit-centre small { font-size: 8px; }
.module-detail span { font-size: 11px; }
.connected-flow small { font-size: 10px; }
.connected-result div { font-size: 12px; }
.connected-result small { font-size: 10px; }

/* Product screens */
.screen-toolbar span { font-size: 10px; }
.finance-summary small { font-size: 10px; }
.ledger-table > div { font-size: 10px; }
.ledger-table .table-head { font-size: 9px; }
.ledger-table em { font-size: 9px; }
.flow-step div { font-size: 12px; }
.flow-step small { font-size: 10px; }
.ticket-head .priority, .ticket-head small, .ticket-screen > p { font-size: 10px; }
.ticket-owner div { font-size: 11px; }
.ticket-owner small, .ticket-owner em { font-size: 9px; }
.ticket-timeline span small { font-size: 9px; }

/* Role dashboard and mobile mock-ups */
.role-tabs button { font-size: 12px; }
.role-copy > span { font-size: 10px; }
.role-copy li, .role-copy a { font-size: 13px; }
.role-dash-top span { font-size: 10px; }
.health-score small, .health-score p { font-size: 9px; }
.role-task span { font-size: 10px; }
.role-task small, .role-task em { font-size: 9px; }
.mobile-feature-list button span { font-size: 12px; }
.mobile-feature-list small { font-size: 10px; }
.phone-top { font-size: 9px; }
.home-card small, .phone-quick span, .phone-section > div, .phone-notice { font-size: 9px; }
.home-card b { font-size: 12px; }
.phone-section > b { font-size: 10px; }
.phone-section small, .phone-notice small { font-size: 8px; }
.secure-ring span { font-size: 9px; }

/* Cards, resources and footer */
.benefit-grid p, .article-grid p, .faq-list p { font-size: 13px; }
.benefit-grid small { font-size: 10px; }
.article-grid article > span, .article-grid article > div { font-size: 10px; }
.security-list span { font-size: 12px; }
.footer-top b { font-size: 12px; }
.footer-top a { font-size: 12px; line-height: 1.5; }
.footer-bottom { font-size: 10px; }
.floating-demo { font-size: 11px; }

/* Demo submission clarity and confirmed direct-contact routes */
.demo-contact-card { margin-top: 22px; padding: 20px; border: 1px solid #d9e3f6; border-radius: 14px; background: rgba(255,255,255,.78); display: flex; flex-direction: column; gap: 4px; }
.demo-contact-card > span { color: var(--blue); font-size: 10px; font-weight: 850; letter-spacing: .12em; }
.demo-contact-card > b { color: var(--navy); font-size: 18px; margin-top: 4px; }
.demo-contact-card > small { color: var(--muted); font-size: 12px; }
.demo-contact-card > div { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 12px; }
.demo-contact-card a { color: var(--blue); font-size: 13px; font-weight: 800; }
.form-feedback { display: flex; flex-direction: column; gap: 3px; margin: 18px 0; padding: 14px 16px; border: 1px solid #efb4b4; border-left: 4px solid #c43e3e; border-radius: 9px; background: #fff5f5; color: #812929; }
.form-feedback[hidden] { display: none !important; }
.form-feedback b { font-size: 13px; }
.form-feedback span { font-size: 11px; }
.demo-form.was-validated input:invalid, .demo-form.was-validated select:invalid, .demo-form.was-validated textarea:invalid { border-color: #c43e3e; background: #fffafa; box-shadow: 0 0 0 3px rgba(196,62,62,.09); }
.submit-demo:disabled { cursor: wait; opacity: .78; }
.submission-journey { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 16px 0 4px; color: #647087; font-size: 10px; }
.submission-journey span { display: flex; align-items: center; gap: 5px; }
.submission-journey b { width: 18px; height: 18px; border-radius: 50%; display: grid; place-items: center; background: #e7edff; color: var(--blue); font-size: 9px; }
.submission-journey i { color: #a1acc0; font-style: normal; }
.footer-contact { margin: 5px 0 3px; padding-left: 12px; border-left: 2px solid #315be8; display: flex; flex-direction: column; gap: 4px; }
.footer-contact b { margin: 0; font-size: 12px; }
.footer-contact a { color: #b9c9ef; font-size: 12px; }
.contact-role { margin: -10px 0 20px; color: #9fb0d1; font-size: 13px; }
.contact-direct-actions { display: grid; gap: 9px; }
.button-whatsapp { background: #23a765; color: #fff; border-color: #23a765; text-align: center; }
.contact-panel hr { border: 0; border-top: 1px solid rgba(255,255,255,.14); margin: 28px 0 22px; }
.context-title { display: block; color: #fff; font-size: 12px; }
.contact-form-link { display: inline-block; margin-top: 8px; color: #a9c0ff; font-size: 12px; font-weight: 800; }
.thanks-contact { display: flex !important; flex-direction: column; align-items: center; gap: 12px !important; margin-top: 26px !important; padding-top: 24px; border-top: 1px solid #e5e9f0; }
.thanks-contact > b { color: var(--navy); }
.thanks-contact > span { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; }
.thanks-home-link { display: inline-block; margin-top: 22px; color: var(--blue); font-size: 12px; font-weight: 800; }

/* Product and solution pages */
.breadcrumb, .module-label { font-size: 10px; }
.module-window-head div, .persona-board-head div { font-size: 12px; }
.module-window-head small, .persona-board-head small, .module-window-head em, .persona-board-head em { font-size: 9px; }
.module-window-stats small, .module-window-stats span { font-size: 9px; }
.module-window-list > div, .persona-benefit { font-size: 11px; }
.module-window-list small, .persona-benefit small, .module-window-list em, .persona-benefit em { font-size: 9px; }
.capability-grid small, .related-grid small, .role-module-grid small { font-size: 10px; }

@media (max-width: 760px) {
  .section-pad { padding-block: 68px; }
  .section-heading { margin-bottom: 34px; }
  .eyebrow, .section-index { font-size: 10px; }
  .hero h1, .simple-hero h1, .module-hero h1, .persona-hero h1, .contact-page h1 { font-size: clamp(36px, 10.5vw, 42px); }
  .hero-copy > p, .section-heading > p, .section-heading.split > p { font-size: 15px; }
  .dashboard-wrap { width: 106%; margin-left: -3%; transform: scale(.94); }
  .watch-story { display: flex; width: max-content; max-width: 100%; }
  .existing-login { display: block; width: max-content; margin: 16px auto 0; }
  .story-video-top, .story-chapters { font-size: 9px; }
  .visual-tag b { font-size: 10px; }
  .problem-strip b { font-size: 14px; }
  .problem-strip small { font-size: 11px; }
  .module-orbit { transform: scale(.94); }
  .mobile-copy h2, .security-copy h2 { font-size: 36px; }
  .phones { transform: scale(.8); height: 500px; }
  .phone-top, .phone-quick span, .phone-section > div, .phone-notice { font-size: 11px; }
  .phone-section small, .phone-notice small, .home-card small { font-size: 9px; }
  .footer-top a { font-size: 12px; }
  .submission-journey { align-items: flex-start; gap: 5px; }
  .submission-journey span { flex-direction: column; text-align: center; line-height: 1.3; }
  .submission-journey i { padding-top: 3px; }
  .thanks-contact > span { flex-direction: column; width: 100%; }
  .thanks-contact .button { width: 100%; }
}
