/* Shared presentation layer: loaded after page rules. LEXIUM 2026-09-23. */
:root {
  --surface-soft: #f5f7f8;
  --gold-readable: #806018;
  --focus-ring: #bd9447;
}
html { scroll-padding-top: 88px; }
body { -webkit-font-smoothing: antialiased; }
nav { border-bottom: 1px solid rgba(216,183,107,.2); }
.nav-links a { min-height: 44px; display: inline-flex; align-items: center; }
.nav-links a.active { text-decoration: underline; text-underline-offset: 8px; text-decoration-thickness: 2px; }
.hamburger { min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
.lang-btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.hero { background-image: radial-gradient(ellipse at 15% 0%, rgba(170,142,74,.13), transparent 65%); }
.hero p, .page-hero p { color: #d5dfe5; }
.hero h1, .page-hero h1 { text-wrap: balance; }
.value-card { border-radius: 10px; background: rgba(255,255,255,.045); padding: 26px; }
.value-card p { color: #d5dfe5; }
.value-card h2, .value-card h3 { color: #dec185; }
.practices-grid { gap: 14px; background: transparent; border: 0; }
.practice-item { border: 1px solid var(--border); border-radius: 10px; padding: 30px 24px; }
.practice-item p { font-size: 14px; }
.practice-item:hover { border-color: var(--gold); box-shadow: 0 6px 22px rgba(27,61,79,.06); }
.section-label, .assure-label, .practice-num { color: var(--gold-readable); }
.btn-primary, .portal-btn, .lxh-btn-primary { background: #c5a35a; color: #102a39; }
.btn-primary, .btn-outline-white, .btn-outline-dark, .lxh-btn-primary, .lxh-btn-secondary { min-height: 48px; border-radius: 6px; }
.footer-brand p, .footer-col p, .footer-col a { color: #c0cdd5; }
.footer-bottom p { color: #adbec9; }
.footer-col h4, .footer-brand .sub { color: #dec185; }
input[type="email"], input[type="tel"], input[type="url"] { direction: ltr; text-align: start; }
input, select, textarea, button { font: inherit; }
textarea { resize: vertical; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible,
[tabindex]:focus-visible { outline: 3px solid var(--focus-ring); outline-offset: 4px; }
@media (min-width: 1440px) {
  nav, .hero, .page-hero, .practices-section, .lxh-why, .lxh-cta, footer {
    padding-inline: max(56px, calc((100vw - 1328px) / 2));
  }
}
@media (max-width: 900px) {
  .nav-links { max-height: calc(100dvh - 80px); overflow-y: auto; gap: 8px; }
  .nav-links a { width: 100%; justify-content: center; }
  .hero h1 { font-size: clamp(32px, 8vw, 44px); }
  .hero p, .page-hero p { font-size: 16px; }
  .value-card { padding: 22px; }
}
@media (max-width: 600px) {
  .footer-bottom { gap: 14px; flex-wrap: wrap; }
  .hero-btns { align-items: stretch; }
  .hero-btns > a { white-space: normal; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

button.form-step { background: transparent; border: 0; border-bottom: 2px solid transparent; text-align: inherit; }
button.form-step.active { border-bottom-color: var(--gold); }
.hero h1 em { color: #dec185; }
