/* Conservative design refinements approved after the migration audit. */
body { font-size: 16px; line-height: 1.75; }
.entry-content { max-width: 760px; }
.entry-content a:not(.btn), .textwidget a { color: #9b3c0d; text-decoration: underline; text-underline-offset: 0.16em; text-decoration-thickness: 1px; }
a:focus-visible, button:focus-visible, [tabindex]:focus-visible { outline: 3px solid #d8b45a !important; outline-offset: 3px !important; background: transparent !important; text-decoration: none; }
.home-slider .slides > li::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, rgba(0,0,0,.22), rgba(0,0,0,.10) 50%, rgba(0,0,0,.22)); }
.home-slider .slide-content, .home-slider .flex-direction-nav { z-index: 2; }
.home-slider .slide-content .btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.flex-direction-nav a { min-width: 44px; min-height: 44px; }
.language-label { display: inline-block; margin-left: 5px; font-size: 12px; font-weight: 700; letter-spacing: .04em; vertical-align: middle; }
.list-social-icons .social-icon { width: 44px; height: 44px; line-height: 44px; }
.hero-title { margin-top: 36px; margin-bottom: 36px; }
#main { padding-top: 60px; padding-bottom: 60px; }
@media (max-width: 767px) {
  body { font-size: 16px; line-height: 1.7; }
  #main { padding-top: 40px; padding-bottom: 40px; }
  .hero-title { margin-top: 24px; margin-bottom: 24px; letter-spacing: .22em; }
  .mobile-nav-trigger { min-height: 44px; display: inline-flex !important; align-items: center; padding: 0 10px; }
  .wpml-ls-menu-item > a { min-height: 44px; display: flex !important; align-items: center; }
  .home-slider .slide-content h3 { letter-spacing: .02em; }
  .entry-content h2 { letter-spacing: .04em; }
}
