/* Stable header controls in either language and colour scheme. */
.kp-preferences{height:44px;align-items:center;justify-content:flex-end;flex:0 0 156px;min-width:156px;white-space:nowrap}
.kp-preferences .kp-language{height:44px;width:44px;flex:0 0 44px}
.kp-preferences .kp-theme-toggle{width:104px;min-width:104px;max-width:104px;flex:0 0 104px;height:44px;display:grid;grid-template-columns:18px 1fr;gap:8px;padding:0 12px;align-items:center;line-height:1;overflow:hidden}
.kp-theme-toggle svg{grid-column:1;grid-row:1;align-self:center}
.kp-theme-label{grid-column:2;grid-row:1;display:block;min-width:0;text-align:left;font-size:12px;line-height:1;white-space:nowrap}
.kp-language-current{line-height:1;min-width:2ch;text-align:center}
@media(max-width:760px){
 .kp-preferences{flex:0 0 auto;min-width:0}
 .kp-header .kp-nav-wrap{height:72px;min-height:72px;flex-wrap:nowrap}
 .kp-preferences .kp-theme-toggle{width:44px;min-width:44px;max-width:44px;flex-basis:44px;padding:0;grid-template-columns:1fr;gap:0;justify-items:center}
 .kp-theme-label{display:none}
}
/* Keep the nav rows and preference controls at a constant height in either language. */
@media(min-width:1101px){.kp-header .kp-nav-wrap{height:96px;min-height:96px}}
@media(min-width:761px) and (max-width:1100px){.kp-header .kp-nav-wrap{height:128px;min-height:128px;align-content:center;row-gap:10px}.kp-header .kp-nav{flex:0 0 100%;min-height:32px}}
/* A quiet photograph emerges towards the right edge, desktop only. */
.kw-hero-art{display:none}
@media(min-width:1000px){
 .kw-intro{position:relative;isolation:isolate;max-width:none;padding-right:42%;min-height:320px}
 .kw-hero-art{display:block;position:absolute;right:0;top:0;bottom:0;width:49%;z-index:-1;overflow:hidden;pointer-events:none;background:url('/assets/forest-roadside-1280.webp') 73% center/cover no-repeat;opacity:.84;mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 34%,#000 78%);-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 34%,#000 78%)}
 .kw-hero-art{filter:saturate(.65)}
 html[data-theme=dark] .kw-hero-art{opacity:.66;filter:saturate(.6) brightness(.72)}
}
/* FAQ slides vertically; the chevron is the same shape as navigation arrows. */
.kw-faq details{overflow:hidden}
.kw-faq details summary::after{content:'';width:9px;height:9px;box-sizing:border-box;border-top:1.6px solid currentColor;border-right:1.6px solid currentColor;transform:rotate(135deg);margin-right:4px;transition:transform .35s ease;font-size:0;color:var(--terra)}
.kw-faq details[open] summary::after{content:'';transform:rotate(-45deg)}
.kw-faq details p,.kw-faq details[open] p{animation:none!important}
.kp-faq-answer{display:flow-root}
/* All arrow glyphs are drawn chevrons, never platform-dependent characters. */
.kp-mobile-chevron{display:inline-flex;width:14px;height:14px;align-items:center;justify-content:center;vertical-align:middle;flex:none;line-height:0}
.kp-mobile-chevron svg{width:14px;height:14px;display:block;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.kp-chevron{width:10px;height:10px;border-top:1.6px solid currentColor;border-right:1.6px solid currentColor;box-sizing:border-box}
@media(prefers-reduced-motion:reduce){.kw-faq details summary::after{transition:none}}
.kw-faq{overflow-anchor:none}
.kp-contact-privacy h2{margin-bottom:20px}
.kp-contact-privacy p{max-width:850px;margin-bottom:16px}
@media(min-width:1000px){
 .kw-hero-art{z-index:0}
 .kw-intro>:not(.kw-hero-art){position:relative;z-index:1}
}
