:root { --font-body: 'DM Sans', Arial, sans-serif; --font-display: 'Playfair Display', Georgia, serif; }
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: #172b25; font: 400 16px/1.6 var(--font-body); background: #f6f3e9; }
img { max-width: 100%; }
h1, h2, h3, p, figure { margin: 0; }
h1, h2, h3 { font-family: var(--font-display); }
a { text-decoration: none; }
.home-skip-link { position: absolute; left: -9999px; top: 10px; z-index: 1000; padding: 9px 15px; background: #fff; color: #182e27; }
.home-skip-link:focus { left: 10px; }
.home-site-header { position: sticky; top: 0; z-index: 100; background: #fff; border-bottom: 1px solid #dbe0d9; }
.home-site-header-inner { width: min(100% - 48px, 1280px); min-height: 68px; margin: auto; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.home-site-logo { display: inline-flex; align-items: center; flex: none; }
.home-site-logo img { display: block; width: 160px; height: auto; }
.home-site-links { display: flex; align-items: center; justify-content: center; gap: clamp(14px, 3vw, 42px); margin-left: auto; }
.home-site-links a { color: #263b33; font-size: .87rem; font-weight: 700; min-height: 44px; display: inline-flex; align-items: center; white-space: nowrap; }
.home-site-links a:hover { color: #a04d3b; }
.home-site-links a[aria-current] { text-decoration: underline; text-underline-offset: 6px; }
.home-country-switcher { position: relative; flex: none; }
.home-country-switcher summary { display: flex; align-items: center; gap: 7px; min-height: 44px; padding: 7px 14px; border: 1px solid #d7ddd5; border-radius: 24px; cursor: pointer; color: #263b33; font-size: .88rem; font-weight: 700; list-style: none; white-space: nowrap; }
.home-country-switcher summary::-webkit-details-marker { display: none; }
.home-country-switcher nav { position: absolute; right: 0; top: calc(100% + 9px); width: min(290px, calc(100vw - 26px)); padding: 14px; border: 1px solid #d9dfd7; border-radius: 13px; background: #fff; box-shadow: 0 18px 38px #162a222c; }
.home-country-switcher nav p { margin-bottom: 8px; font-size: .8rem; font-weight: 700; }
.home-country-switcher nav a { display: block; min-height: 50px; padding: 8px 10px; color: #263b33; border-radius: 6px; line-height: 1.4; }
.home-country-switcher nav a:hover, .home-country-switcher nav a[aria-current] { background: #edf1ea; }
.home-country-switcher nav a strong, .home-country-switcher nav a small { display: block; }
.home-country-switcher nav a small { color: #526159; font-size: .72rem; }
.home-country-switcher summary:focus-visible, .home-country-switcher a:focus-visible, .home-site-links a:focus-visible, .home-site-logo:focus-visible, .home-site-footer a:focus-visible, .home-mobile-nav a:focus-visible { outline: 3px solid #a04d3b; outline-offset: 3px; }
.home-site-footer { color: #f6f3e9; background: #192c27; }
.home-site-footer-inner { width: min(100% - 48px, 1280px); margin: auto; display: grid; grid-template-columns: minmax(0, 1.5fr) 1fr 1fr; gap: clamp(30px, 6vw, 110px); padding: 58px 0 54px; }
.home-site-footer-brand { display: inline-block; color: #fff; font: 700 2.1rem/1 var(--font-display); }
.home-site-footer p { max-width: 340px; margin-top: 16px; color: #c5d5ca; font-size: .9rem; line-height: 1.6; }
.home-site-footer h2 { margin-bottom: 14px; color: #edf6ee; font: 700 .76rem/1.4 var(--font-body); letter-spacing: .12em; text-transform: uppercase; }
.home-site-footer nav a { display: block; max-width: 280px; margin: 0 0 12px; color: #d5e1d7; font-size: .85rem; line-height: 1.4; }
.home-site-footer nav a:hover { color: #fff; text-decoration: underline; }
.home-site-footer-bottom { width: min(100% - 48px, 1280px); margin: auto; padding: 20px 0 27px; border-top: 1px solid #52645a; display: flex; justify-content: space-between; gap: 20px; color: #c5d5ca; }
.home-site-footer-bottom a { color: #d5e1d7; font-size: .8rem; }
.home-mobile-nav { display: none; }
@media(max-width: 900px) { .home-site-links { gap: 16px; } .home-site-links a:nth-child(n+3) { display: none; } }
@media(max-width: 600px) {
  .home-site-header-inner { width: min(100% - 28px, 460px); min-height: 62px; gap: 10px; }
  .home-site-logo img { width: 132px; }
  .home-site-links { display: none; }
  .home-country-switcher summary { min-height: 44px; padding: 7px 10px; font-size: .76rem; }
  .home-site-footer-inner { width: min(100% - 28px, 460px); grid-template-columns: 1fr 1fr; gap: 28px 18px; padding: 46px 0 25px; }
  .home-site-footer-inner > div { grid-column: 1 / -1; }
  .home-site-footer nav a { font-size: .79rem; }
  .home-site-footer-bottom { width: min(100% - 28px, 460px); padding-bottom: 28px; flex-direction: column; gap: 8px; }
  .home-mobile-nav { display: grid; grid-template-columns: repeat(3, 1fr); min-height: 43px; background: #fff; border-top: 1px solid #edf0ed; }
  .home-mobile-nav a { display: flex; flex-direction: column; align-items: center; justify-content: center; color: #31463d; font-size: .68rem; font-weight: 700; line-height: 1.1; }
  .home-mobile-nav a span { font-size: 1rem; line-height: 1.1; }
  .home-mobile-nav a[aria-current] { color: #a04d3b; }
}
@media(prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
