/* ReHealth AI: a restrained institutional visual layer. Content is unchanged. */
:root {
  --rh-ink: #172b35;
  --rh-ink-soft: #405965;
  --rh-muted: #687d86;
  --rh-paper: #ffffff;
  --rh-panel: #f5f8f8;
  --rh-line: #d8e2e4;
  --rh-teal: #087c83;
  --rh-cyan: #176fae;
  --rh-lime: #78a84b;
  --rh-shadow: none;
  --rh-shadow-active: none;
  --bg: #fff;
  --bg2: #f5f8f8;
  --bg3: #fff;
  --card: #fff;
  --text: var(--rh-ink);
  --text2: var(--rh-ink-soft);
  --text3: var(--rh-muted);
  --border: var(--rh-line);
  --border2: #c8d7d9;
  --cyan: var(--rh-teal);
  --cyan-dim: #e9f2f1;
  --cyan-glow: transparent;
  --sans: 'Manrope', 'Noto Sans SC', system-ui, sans-serif;
  --display: 'Manrope', 'Noto Sans SC', system-ui, sans-serif;
}
html { scroll-behavior: smooth; }
body { background: #fff !important; color: var(--rh-ink) !important; font-family: var(--sans) !important; }
body::before, body::after, .hero-grid, .section::before, .steps-section::before,
.engines-section::before, .fed-section::before, .partners-section::before,
.cta-section::before { display: none !important; }
nav:not(.rl-nav):not(.isi-nav) { background: rgba(255,255,255,.97) !important; border-bottom: 1px solid var(--rh-line) !important; backdrop-filter: blur(12px) !important; box-shadow: none !important; }
.nav-a, .nav-drop-item { font-weight: 600 !important; }
.nav-a:hover, .nav-drop-item:hover { background: #f2f6f6 !important; color: var(--rh-teal) !important; }
.nav-cta, .btn-cyan, .rl-button:not(.ghost), .isi-cta {
  background: var(--rh-teal) !important; color: #fff !important; border: 1px solid var(--rh-teal) !important;
  border-radius: 4px !important; box-shadow: none !important; transition: background .2s ease, border-color .2s ease, transform .2s ease !important;
}
.nav-cta:hover, .btn-cyan:hover, .rl-button:not(.ghost):hover, .isi-cta:hover { background: #065e66 !important; border-color: #065e66 !important; box-shadow: none !important; transform: translateY(-1px) !important; }
.btn-ghost, .rl-button.ghost { background: transparent !important; color: var(--rh-teal) !important; border: 1px solid #9db8bb !important; border-radius: 4px !important; box-shadow: none !important; }
.btn-ghost:hover, .rl-button.ghost:hover { background: #f2f7f6 !important; box-shadow: none !important; transform: none !important; }
.hero:not(.rl-hero):not(.isi-hero) { min-height: 660px !important; background: #fff !important; border-bottom: 1px solid var(--rh-line) !important; }
.hero-inner { grid-template-columns: minmax(0,.96fr) minmax(0,1.04fr) !important; gap: 4rem !important; }
.hero-badge { padding: 0 0 .55rem !important; border: 0 !important; border-bottom: 2px solid var(--rh-teal) !important; border-radius: 0 !important; background: transparent !important; color: var(--rh-teal) !important; font-size: .78rem !important; font-weight: 700 !important; }
.badge-dot { display: none !important; }
.hero-h1 { font-size: 3.55rem !important; line-height: 1.2 !important; font-weight: 800 !important; color: var(--rh-ink) !important; }
.hero-h1 .accent { background: none !important; -webkit-text-fill-color: currentColor !important; color: var(--rh-teal) !important; }
.hero-h1 .accent::after { display: none !important; }
.hero-sub { color: var(--rh-ink-soft) !important; line-height: 1.85 !important; }
.hero-btns .btn-cyan[style] { color: var(--rh-teal) !important; background: transparent !important; border: 1px solid #9db8bb !important; box-shadow: none !important; }
.ui-home .orbit-wrap { max-width: 560px !important; aspect-ratio: 1.24 / 1 !important; border: 1px solid var(--rh-line); border-radius: 4px; background: #f8faf9; }
.ui-home .orbit-wrap::before { top: 42% !important; left: 12% !important; right: 12% !important; height: 1px !important; background: #a8c8c8 !important; box-shadow: none !important; animation: none !important; }
.ui-home .orbit-wrap::after, .ui-home .orbit-flow, .ui-home .orbit-ring-outer, .ui-home .orbit-ring-inner, .ui-home .orbit-glow, .ui-home .orbit-dot { display: none !important; }
.ui-home .orbit-wrap::after { content: ''; display: block !important; position: absolute; top: 42%; left: 12%; width: 76%; height: 2px; background: var(--rh-teal); transform-origin: left; transform: scaleX(.08); transition: transform .75s cubic-bezier(.2,.7,.2,1) !important; z-index: 1; }
.ui-home .orbit-wrap[data-stage="1"]::after { transform: scaleX(.34); }
.ui-home .orbit-wrap[data-stage="2"]::after { transform: scaleX(.68); }
.ui-home .orbit-wrap[data-stage="3"]::after { transform: scaleX(1); }
.ui-home .orbit-node.on-left { left: 88% !important; }
.ui-home .orbit-node.on-bottom { left: 63% !important; }
.ui-home .orbit-node-box { width: 54px !important; height: 54px !important; border-radius: 4px !important; border: 1px solid #c4d7d8 !important; background: #fff !important; box-shadow: none !important; }
.ui-home .orbit-node.is-active .orbit-node-box, .ui-home .orbit-node:hover .orbit-node-box { background: #e6f1ef !important; border-color: var(--rh-teal) !important; box-shadow: none !important; transform: none !important; }
.ui-home .orbit-node-label { font-size: .95rem !important; }
.ui-home .orbit-node-desc { font-size: .69rem !important; }
.ui-home .orbit-center { top: 77% !important; width: auto !important; min-width: 220px !important; height: auto !important; padding: .8rem 1.2rem !important; border: 0 !important; border-top: 2px solid var(--rh-teal) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; backdrop-filter: none !important; }
.ui-home .orbit-center-name { color: var(--rh-ink) !important; }
.tagline-bar { background: #f5f8f8 !important; border-block: 0 !important; padding: 4.5rem 3rem !important; }
.tagline-bar h2 { color: var(--rh-ink) !important; max-width: 850px; line-height: 1.35 !important; }
.tagline-bar p { color: var(--rh-ink-soft) !important; }
.section, .steps-section, .engines-section, .fed-section, .partners-section, .cta-section { padding-top: 5.5rem !important; padding-bottom: 5.5rem !important; }
.s-label { color: var(--rh-teal) !important; font-family: var(--sans) !important; font-size: .78rem !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.s-label::before, .s-label::after { display: none !important; }
.s-title { color: var(--rh-ink) !important; font-size: 2.35rem !important; line-height: 1.28 !important; font-weight: 800 !important; letter-spacing: 0 !important; }
.s-sub { color: var(--rh-ink-soft) !important; }
.steps-section, .partners-section { background: #fff !important; }
.steps-grid { gap: 0 !important; border: 0 !important; border-top: 1px solid var(--rh-line) !important; border-bottom: 1px solid var(--rh-line) !important; border-radius: 0 !important; background: #fff !important; overflow: visible !important; }
.step-card { padding: 2.2rem 1.5rem 2.4rem !important; border: 0 !important; border-right: 1px solid var(--rh-line) !important; border-radius: 0 !important; background: #fff !important; box-shadow: none !important; }
.step-card:first-child { border-left: 1px solid var(--rh-line) !important; }
.step-card::before, .step-card::after { display: none !important; }
.step-card:hover { background: #f8faf9 !important; transform: none !important; box-shadow: none !important; }
.step-num, .step-code, .step-output { border-radius: 0 !important; background: transparent !important; padding-left: 0 !important; color: var(--rh-teal) !important; }
.step-num { font-size: .72rem !important; font-weight: 700 !important; }
.step-icon { width: 48px !important; height: 48px !important; border-radius: 4px !important; background: #e9f2f1 !important; border: 0 !important; }
.step-name { font-size: 1.2rem !important; }
.stats-section { background: #edf3f2 !important; border: 0 !important; }
.stats-grid { border: 0 !important; border-radius: 0 !important; background: transparent !important; }
.stat-cell { border: 0 !important; border-left: 1px solid #c7d9d9 !important; padding: .4rem 2rem !important; }
.stat-cell:first-child { border-left: 0 !important; }
.stat-n { color: var(--rh-teal) !important; }
.engines-section { background: #fff !important; }
.engines-grid { gap: 0 !important; border-top: 1px solid var(--rh-line); border-bottom: 1px solid var(--rh-line); }
.engine-card { padding: 2rem !important; border: 0 !important; border-right: 1px solid var(--rh-line) !important; border-radius: 0 !important; background: #fff !important; box-shadow: none !important; }
.engine-card:first-child { border-left: 1px solid var(--rh-line) !important; }
.engine-card:hover { transform: none !important; background: #f8faf9 !important; box-shadow: none !important; }
.engine-card::before { display: none !important; }
.engine-mockup { margin-top: 2rem !important; border: 1px solid var(--rh-line) !important; border-radius: 4px !important; background: #f7faf9 !important; box-shadow: none !important; }
.fed-section { background: #f5f8f8 !important; }
.fed-diagram, .rl-service-map { border: 1px solid var(--rh-line) !important; border-radius: 4px !important; box-shadow: none !important; background: #fff !important; }
.fed-mid { border-radius: 4px !important; }
.rl-home-product { background: #fff !important; }
.rl-home-step, .rl-home-connection, .rl-panel, .rl-audience { border-radius: 4px !important; box-shadow: none !important; }
.logo-wall { border: 1px solid var(--rh-line) !important; border-radius: 4px !important; overflow: hidden !important; }
.logo-cell { border-radius: 0 !important; box-shadow: none !important; transition: background .2s ease !important; }
.logo-cell:hover { background: #f2f7f6 !important; transform: none !important; }
.cta-section { background: #f5f8f8 !important; }
.cta-card { border: 0 !important; border-top: 2px solid var(--rh-teal) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
.cta-card:hover { transform: none !important; box-shadow: none !important; }
.page-hero, .concept-hero, .solution-hero, .about-hero, .contact-hero, .news-hero, .ia-hero, .isi-hero, .rl-hero { background: #f5f8f8 !important; background-image: none !important; }
.team-card, .value-card, .contact-card, .contact-method, .article-card, .news-card, .concept-card, .concept-link, .rel-card, .policy-card, .signal, .question, .sources, .faq-item, .report-sample, .level, .ia-card, .isi-steps section { border: 1px solid var(--rh-line) !important; border-radius: 4px !important; background: #fff !important; box-shadow: none !important; }
.team-card:hover, .value-card:hover, .contact-card:hover, .contact-method:hover, .article-card:hover, .news-card:hover, .concept-card:hover, .concept-link:hover, .rel-card:hover, .policy-card:hover, .signal:hover, .question:hover, .sources:hover, .faq-item:hover, .report-sample:hover, .level:hover { transform: none !important; border-color: #a9c8c7 !important; box-shadow: none !important; }
.rh-tech-card::before, .team-card::before, .value-card::before, .article-card::before, .news-card::before, .concept-card::before, .concept-link::before, .rel-card::before, .policy-card::before { display: none !important; }
.ia-takeaway, .isi-takeaway, .isi-quote, .takeaway, .callout, .ia-notice, .isi-notice { border-radius: 4px !important; background: #f5f8f8 !important; }
footer, .ia-footer, .isi-footer, .rl-footer { background: #f5f8f8 !important; }
.ui-reveal, .ui-reveal.ui-in { animation: none !important; transition: none !important; opacity: 1 !important; transform: none !important; }
.rh-reactive { will-change: auto !important; }
.rh-reactive:hover { transform: none !important; box-shadow: none !important; }
.ui-ripple-wave { display: none !important; }
@media (max-width: 1024px) {
  .hero-inner { gap: 2rem !important; }
  .hero-h1 { font-size: 3rem !important; }
}
@media (max-width: 768px) {
  .hero:not(.rl-hero):not(.isi-hero) { min-height: auto !important; padding: 92px 1.2rem 2.5rem !important; }
  .hero-inner { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .hero-h1 { font-size: 2.5rem !important; }
  .ui-home .orbit-wrap { width: 100% !important; max-width: 440px !important; aspect-ratio: 1.18 / 1 !important; }
  .ui-home .orbit-wrap::before { top: 30% !important; }
  .ui-home .orbit-wrap::after { top: 30% !important; }
  .ui-home .orbit-node, .ui-home .orbit-node.on-top, .ui-home .orbit-node.on-right, .ui-home .orbit-node.on-left, .ui-home .orbit-node.on-bottom { top: 30% !important; }
  .ui-home .orbit-node-box { width: 42px !important; height: 42px !important; }
  .ui-home .orbit-center { top: 77% !important; min-width: 180px !important; }
  .section, .steps-section, .engines-section, .fed-section, .partners-section, .cta-section { padding: 3.5rem 1.15rem !important; }
  .s-title { font-size: 1.85rem !important; }
  .steps-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  .step-card { border-bottom: 1px solid var(--rh-line) !important; padding: 1.5rem 1rem !important; }
  .step-card:nth-child(odd) { border-left: 1px solid var(--rh-line) !important; }
  .engines-grid { display: block !important; }
  .engine-card { border-left: 1px solid var(--rh-line) !important; border-bottom: 1px solid var(--rh-line) !important; }
  .stats-grid { grid-template-columns: 1fr !important; }
  .stat-cell, .stat-cell:first-child { border-left: 0 !important; border-bottom: 1px solid #c7d9d9 !important; padding: 1rem 0 !important; }
}
@media (max-width: 420px) {
  .hero-h1 { font-size: 2.25rem !important; }
  .ui-home .orbit-node-desc { max-width: 72px !important; font-size: .56rem !important; }
  .step-desc { overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* 2026 visual system: precise typography, quiet depth, responsive motion. */
:root {
  --rh-ink: #18252e;
  --rh-ink-soft: #455863;
  --rh-muted: #687983;
  --rh-panel: #f5f7f8;
  --rh-line: #e5eaed;
  --rh-teal: #087c83;
  --rh-cyan: #1479bb;
  --rh-shadow: 0 16px 48px rgba(20, 57, 75, .07);
  --rh-shadow-active: 0 24px 64px rgba(20, 57, 75, .12);
  --sans: 'Inter', 'Noto Sans SC', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --display: 'Inter', 'Noto Sans SC', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
body { background: #fff !important; letter-spacing: 0 !important; -webkit-font-smoothing: antialiased; }
nav:not(.rl-nav):not(.isi-nav) {
  background: rgba(255,255,255,.82) !important;
  backdrop-filter: saturate(180%) blur(20px) !important;
  -webkit-backdrop-filter: saturate(180%) blur(20px) !important;
  border-color: rgba(220,229,233,.75) !important;
}
nav.ui-scrolled:not(.rl-nav):not(.isi-nav) { box-shadow: 0 8px 30px rgba(18,45,59,.055) !important; }
.nav-a, .nav-drop-item { transition: color .25s ease, background .25s ease, opacity .25s ease !important; }
.nav-cta, .btn-cyan, .rl-button:not(.ghost), .isi-cta {
  border-radius: 10px !important;
  box-shadow: 0 8px 20px rgba(8,124,131,.15) !important;
  transition: transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease, background .3s ease !important;
}
.nav-cta:hover, .btn-cyan:hover, .rl-button:not(.ghost):hover, .isi-cta:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 28px rgba(8,124,131,.21) !important;
}
.nav-cta:active, .btn-cyan:active, .rl-button:not(.ghost):active, .isi-cta:active { transform: scale(.97) !important; }
.btn-ghost, .rl-button.ghost { border-radius: 10px !important; transition: background .25s ease, transform .25s ease !important; }
.btn-ghost:hover, .rl-button.ghost:hover { transform: translateY(-2px) !important; }
.hero:not(.rl-hero):not(.isi-hero) { background: #fff !important; }
.hero-h1 { font-weight: 750 !important; line-height: 1.13 !important; }
.hero-sub { line-height: 1.8 !important; }
.s-title { font-weight: 750 !important; line-height: 1.2 !important; }
.page-hero, .concept-hero, .solution-hero, .about-hero, .contact-hero, .news-hero, .ia-hero, .isi-hero, .rl-hero {
  background: #f7f9fa !important;
}
.step-card, .engine-card, .team-card, .value-card, .contact-card, .contact-method,
.article-card, .news-card, .concept-card, .concept-link, .rel-card, .policy-card,
.signal, .question, .sources, .faq-item, .report-sample, .level, .ia-card, .isi-steps section {
  transition: transform .38s cubic-bezier(.2,.8,.2,1), box-shadow .38s ease, border-color .38s ease, background .38s ease !important;
}
.team-card, .value-card, .contact-card, .contact-method, .article-card, .news-card,
.concept-card, .concept-link, .rel-card, .policy-card, .signal, .question, .sources,
.faq-item, .report-sample, .level, .ia-card, .isi-steps section {
  border-radius: 14px !important;
  box-shadow: var(--rh-shadow) !important;
}
.team-card:hover, .value-card:hover, .contact-card:hover, .contact-method:hover,
.article-card:hover, .news-card:hover, .concept-card:hover, .concept-link:hover,
.rel-card:hover, .policy-card:hover, .signal:hover, .question:hover, .sources:hover,
.faq-item:hover, .report-sample:hover, .level:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--rh-shadow-active) !important;
}
.step-card:hover, .engine-card:hover { background: #f8fbfc !important; transform: translateY(-3px) !important; }
.fed-diagram, .rl-service-map, .engine-mockup, .logo-wall { border-radius: 14px !important; }
.logo-cell { transition: background .3s ease, transform .4s cubic-bezier(.2,.8,.2,1) !important; }
.logo-cell:hover { background: #f4f9fa !important; transform: scale(1.025) !important; }
.ui-reveal { opacity: 1 !important; transform: none !important; }
@media (prefers-reduced-motion: no-preference) {
  .ui-reveal:not(.ui-in) { opacity: .65 !important; transform: translateY(16px) !important; }
  .ui-reveal.ui-in { opacity: 1 !important; transform: translateY(0) !important; transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1) !important; }
}
@media (max-width: 768px) {
  .hero-h1 { line-height: 1.18 !important; }
  .team-card, .value-card, .contact-card, .contact-method, .article-card, .news-card,
  .concept-card, .concept-link, .rel-card { border-radius: 12px !important; }
}

/* A content-first marketing layout. Existing copy and metadata stay in the page. */
.ui-home .hero:not(.rl-hero):not(.isi-hero) {
  min-height: 0 !important;
  display: block !important;
  padding: 112px 24px 72px !important;
  background: #f8fafb !important;
  overflow: hidden;
}
.ui-home .hero-inner {
  max-width: 1160px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 48px !important;
  align-items: start !important;
}
.ui-home .hero-inner > div:first-child { max-width: 900px; margin-inline: auto; text-align: center; }
.ui-home .hero-badge { margin-bottom: 26px !important; color: #4c6976 !important; border: 0 !important; padding: 0 !important; font-size: .82rem !important; }
.ui-home .hero-h1 { margin-bottom: 24px !important; font-size: clamp(3.8rem, 5.8vw, 5.8rem) !important; line-height: 1.06 !important; font-weight: 760 !important; }
.ui-home .hero-sub { max-width: 700px !important; margin: 0 auto 32px !important; font-size: 1.14rem !important; line-height: 1.7 !important; }
.ui-home .hero-btns { margin-bottom: 0 !important; gap: 12px !important; justify-content: center !important; }
.ui-home .orbit-wrap {
  width: 100% !important;
  max-width: none !important;
  min-height: 255px !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 24px 0 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-template-rows: auto 1fr !important;
  gap: 32px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  border-top: 1px solid #bdcbd2 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.ui-home .orbit-wrap::before,
.ui-home .orbit-wrap::after,
.ui-home .orbit-ring-outer,
.ui-home .orbit-ring-inner,
.ui-home .orbit-flow,
.ui-home .orbit-glow,
.ui-home .orbit-dot { display: none !important; }
.ui-home .orbit-center {
  position: static !important;
  transform: none !important;
  grid-column: 1 / -1 !important;
  min-width: 0 !important;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
}
.ui-home .orbit-center-name { font-size: 1.35rem !important; font-weight: 700 !important; color: #1a2c35 !important; }
.ui-home .orbit-center-sub { display: block !important; margin-top: 4px !important; color: #6c828c !important; font-size: .78rem !important; line-height: 1.4 !important; }
.ui-home .orbit-center-sub br { display: none !important; }
.ui-home .orbit-node,
.ui-home .orbit-node.on-top,
.ui-home .orbit-node.on-right,
.ui-home .orbit-node.on-bottom,
.ui-home .orbit-node.on-left {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  width: auto !important;
  transform: none !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  min-width: 0 !important;
  padding: 22px 18px 8px 0 !important;
  border-top: 2px solid #cdd8de !important;
  transition: border-color .45s ease, opacity .45s ease !important;
}
.ui-home .orbit-node.on-top { grid-column: 1 !important; }
.ui-home .orbit-node.on-right { grid-column: 2 !important; }
.ui-home .orbit-node.on-bottom { grid-column: 3 !important; }
.ui-home .orbit-node.on-left { grid-column: 4 !important; }
.ui-home .orbit-node.is-active { border-color: #087c83 !important; }
.ui-home .orbit-wrap[data-stage="1"] .orbit-node.on-top,
.ui-home .orbit-wrap[data-stage="2"] .orbit-node.on-top,
.ui-home .orbit-wrap[data-stage="2"] .orbit-node.on-right,
.ui-home .orbit-wrap[data-stage="3"] .orbit-node.on-top,
.ui-home .orbit-wrap[data-stage="3"] .orbit-node.on-right,
.ui-home .orbit-wrap[data-stage="3"] .orbit-node.on-bottom { border-color: #087c83 !important; }
.ui-home .orbit-node-box { display: none !important; }
.ui-home .orbit-node::before {
  display: block;
  color: #8296a0;
  font-size: .8rem;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  margin-bottom: 12px;
}
.ui-home .orbit-node.on-top::before { content: '01'; }
.ui-home .orbit-node.on-right::before { content: '02'; }
.ui-home .orbit-node.on-bottom::before { content: '03'; }
.ui-home .orbit-node.on-left::before { content: '04'; }
.ui-home .orbit-node-label { color: #1c3039 !important; font-size: 1.35rem !important; font-weight: 700 !important; text-align: left !important; }
.ui-home .orbit-node-desc { display: block !important; max-width: none !important; color: #647982 !important; font-size: .9rem !important; line-height: 1.5 !important; text-align: left !important; }
.steps-section { background: #fff !important; }
.steps-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 1px !important; border: 0 !important; background: #dce5e9 !important; }
.step-card { min-height: 345px !important; padding: 38px 42px !important; border: 0 !important; background: #f7f9fa !important; }
.step-card:first-child { border-left: 0 !important; }
.step-card::before, .step-card::after { display: none !important; }
.step-icon { display: none !important; }
.step-num { padding: 0 !important; border: 0 !important; color: #517380 !important; font-size: .78rem !important; background: transparent !important; }
.step-name { margin: 20px 0 12px !important; font-size: 2.25rem !important; font-weight: 730 !important; }
.step-code { background: transparent !important; border: 0 !important; padding: 0 !important; color: #087c83 !important; }
.step-desc { max-width: 520px; color: #485e69 !important; font-size: 1rem !important; line-height: 1.75 !important; }
.step-output { margin-top: 26px !important; }
.step-card:hover { background: #eef5f5 !important; transform: none !important; }
.engine-card { border-radius: 0 !important; }
.engine-card:hover { transform: none !important; }
.article-card, .news-card, .team-card, .value-card { border-radius: 10px !important; }
.article-card:hover, .news-card:hover, .team-card:hover, .value-card:hover { transform: translateY(-3px) !important; }
.ui-reveal:not(.ui-in) { opacity: 1 !important; transform: translateY(10px) !important; }
body:not(.ui-home) .hero:not(.rl-hero):not(.isi-hero) {
  min-height: 0 !important;
  padding-top: 120px !important;
  padding-bottom: 90px !important;
  background: #f8fafb !important;
  border-bottom: 0 !important;
}
body:not(.ui-home) .hero-inner { max-width: 1080px !important; }
body:not(.ui-home) .hero h1,
.page-hero h1, .solution-hero h1, .about-hero h1, .contact-hero h1,
.news-hero h1, .ia-hero h1, .isi-hero h1, .rl-hero h1 {
  font-size: clamp(2.8rem, 5vw, 5rem) !important;
  line-height: 1.12 !important;
  font-weight: 750 !important;
}
.article-def { border-left: 0 !important; padding-left: 0 !important; color: #526873 !important; }
.filter-tabs { gap: 6px !important; }
.filter-tab { border-radius: 999px !important; transition: background .25s ease, color .25s ease, transform .25s ease !important; }
.filter-tab:hover { transform: translateY(-2px) !important; }
.article-grid { gap: 16px !important; }
.article-card { background: #fff !important; }
.article-card .card-body { padding: 26px !important; }
.article-card .card-title { font-size: 1.2rem !important; line-height: 1.4 !important; }
.article-card.featured .card-title { font-size: 1.4rem !important; }
.article-card .card-tag { border: 0 !important; border-radius: 4px !important; background: #eaf4f4 !important; color: #087c83 !important; }
.article-card .card-desc { color: #546b75 !important; font-size: .88rem !important; }
.article-card .card-arrow { margin-top: 18px !important; }
@media (max-width: 768px) {
  body:not(.ui-home) .hero:not(.rl-hero):not(.isi-hero) { padding: 96px 20px 58px !important; }
  body:not(.ui-home) .hero h1 { font-size: clamp(2.35rem, 9vw, 3.3rem) !important; }
  .article-card .card-body { padding: 22px !important; }
}
@media (max-width: 768px) {
  .ui-home .hero:not(.rl-hero):not(.isi-hero) { padding: 96px 20px 44px !important; }
  .ui-home .hero-inner { gap: 42px !important; }
  .ui-home .hero-inner > div:first-child { text-align: left; }
  .ui-home .hero-btns { justify-content: flex-start !important; }
  .ui-home .hero-h1 { font-size: clamp(2.7rem, 12vw, 4.2rem) !important; }
  .ui-home .hero-sub { font-size: 1rem !important; }
  .ui-home .orbit-wrap { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 22px 12px !important; min-height: 0 !important; }
  .ui-home .orbit-node.on-top, .ui-home .orbit-node.on-right, .ui-home .orbit-node.on-bottom, .ui-home .orbit-node.on-left { grid-column: auto !important; }
  .ui-home .orbit-node { padding-top: 15px !important; }
  .ui-home .orbit-node-label { font-size: 1.1rem !important; }
  .ui-home .orbit-node-desc { font-size: .78rem !important; }
  .steps-grid { grid-template-columns: 1fr !important; }
  .step-card { min-height: 0 !important; padding: 30px 24px !important; border: 0 !important; }
  .step-card:nth-child(odd) { border-left: 0 !important; }
  .step-name { font-size: 1.8rem !important; }
}
