:root {
  --lh-primary: #e50914;
  --lh-primary-dark: #b8000a;
  --lh-dark: #101318;
  --lh-text: #1f2933;
  --lh-muted: #667085;
  --lh-bg: #f7f8fb;
  --lh-card: #ffffff;
  --lh-border: rgba(16, 24, 40, 0.10);
  --lh-shadow: 0 18px 45px rgba(16, 24, 40, 0.08);
  --lh-radius: 22px;
  --lh-font: 'Kanit', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

html, body,
button, input, textarea, select,
.elementor-widget, .elementor-heading-title,
.elementor-button, .elementor-nav-menu,
.wpr-menu, .wpr-nav-menu, .wpr-mobile-menu,
.wpr-button, .wpr-price-table, .wpr-testimonial,
.lopburi-homepage, .lopburi-homepage * {
  font-family: var(--lh-font) !important;
}

body {
  color: var(--lh-text);
  background: #fff;
  font-weight: 400;
  line-height: 1.65;
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  color: var(--lh-dark);
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.18;
}

p { color: var(--lh-muted); }

a { color: var(--lh-primary); }
a:hover { color: var(--lh-primary-dark); }

.elementor-button,
.wpr-button,
button[type='submit'],
input[type='submit'] {
  border-radius: 14px !important;
  font-weight: 600 !important;
}

.lh-card,
.elementor-widget-container.lh-card {
  background: var(--lh-card);
  border: 1px solid var(--lh-border);
  border-radius: var(--lh-radius);
  box-shadow: var(--lh-shadow);
}

/* Royal Addons nav polish */
.wpr-nav-menu .menu-item > a,
.elementor-nav-menu .menu-item > a {
  font-weight: 500 !important;
}

.wpr-nav-menu .sub-menu,
.elementor-nav-menu--dropdown {
  border-radius: 16px !important;
  box-shadow: 0 20px 50px rgba(16, 24, 40, 0.12) !important;
  border: 1px solid var(--lh-border) !important;
}

@media (max-width: 767px) {
  h1, .elementor-heading-title {
    letter-spacing: -0.018em;
  }
  .elementor-section,
  .e-con {
    --container-default-padding-top: 48px;
    --container-default-padding-bottom: 48px;
  }
}
