:root {
  color-scheme: light;
  font-family: "DM Sans", "Segoe UI", sans-serif;
  color: #17241d;
  background: #f5f4ed;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; }
a { color: inherit; }
.site-header { position: absolute; z-index: 2; inset: 0 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px clamp(20px, 5vw, 72px); color: white; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: inherit; font-size: 15px; font-weight: 750; text-decoration: none; }
.brand img { width: 34px; height: 34px; border-radius: 50%; }
.language-links { display: flex; gap: 15px; font-size: 13px; }
.language-links a { text-decoration-thickness: 1px; text-underline-offset: 4px; }
.hero { position: relative; display: flex; min-height: min(680px, 72svh); align-items: end; overflow: hidden; color: white; background: #173c2e; }
.hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 54%; }
.hero::after { position: absolute; inset: 0; background: rgb(13 31 22 / 55%); content: ""; }
.hero-copy { position: relative; z-index: 1; width: min(820px, 100%); padding: 136px clamp(20px, 8vw, 116px) 68px; }
.eyebrow { margin: 0 0 18px; color: #d7ed9f; font-size: 12px; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
h1 { max-width: 760px; margin: 0; font-family: "Manrope", "Segoe UI", sans-serif; font-size: clamp(42px, 6vw, 76px); line-height: 1.04; }
.hero-copy > p:not(.eyebrow) { max-width: 600px; margin: 22px 0 28px; font-size: 19px; line-height: 1.55; }
.action { display: inline-flex; min-height: 48px; align-items: center; padding: 0 20px; border-radius: 5px; background: #d7ed9f; color: #193325; font-weight: 750; text-decoration: none; }
.content { width: min(1040px, calc(100% - 40px)); margin: 0 auto; }
.intro { padding: 68px 0 52px; border-bottom: 1px solid #d5d9cd; }
.intro p { max-width: 70ch; margin: 0; color: #435248; font-size: 18px; line-height: 1.75; }
.section { display: grid; grid-template-columns: minmax(180px, .7fr) minmax(0, 1.3fr); gap: 42px; padding: 46px 0; border-bottom: 1px solid #d5d9cd; }
h2 { margin: 0; font-family: "Manrope", "Segoe UI", sans-serif; font-size: 27px; line-height: 1.2; }
.section p, .section li { color: #435248; font-size: 16px; line-height: 1.7; }
.section p { margin: 0 0 14px; }
.section ul { margin: 0; padding-left: 21px; }
.faq { padding: 50px 0 64px; }
.faq h2 { margin-bottom: 28px; }
.faq-item { padding: 18px 0; border-top: 1px solid #d5d9cd; }
.faq-item h3 { margin: 0 0 8px; font-size: 17px; }
.faq-item p { max-width: 74ch; margin: 0; color: #435248; line-height: 1.7; }
.site-footer { display: flex; justify-content: space-between; gap: 20px; padding: 24px clamp(20px, 5vw, 72px); background: #17241d; color: #f5f4ed; font-size: 13px; }
.site-footer a { color: #d7ed9f; }
@media (max-width: 640px) {
  .site-header { align-items: flex-start; padding-top: 16px; }
  .language-links { gap: 10px; font-size: 12px; }
  .hero { min-height: 590px; }
  .hero-copy { padding-top: 120px; padding-bottom: 44px; }
  .hero-copy > p:not(.eyebrow) { font-size: 17px; }
  .section { grid-template-columns: 1fr; gap: 14px; padding: 32px 0; }
  .site-footer { flex-direction: column; }
}