/* Full-name language control; the entry scroll leaves the website visible. */
.header .language-label{display:flex;align-items:center;gap:8px;border:1px solid #a49267;border-radius:4px;padding:0 8px 0 12px;background:#e8cb8580;min-height:46px;color:#173e32}
.header .language-label>span{font-size:11px;letter-spacing:.02em}
.header .language-label select{font-size:14px;min-width:104px;min-height:44px;padding:8px 0;background:transparent}
/* Keep the hero visible even while the fresh-visit native dialog is pending. */
.language-entry{box-sizing:border-box;width:min(440px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 24px);margin:auto;padding:66px 44px 62px;border:0;border-radius:0;background:transparent url('/assets/language-parchment-v40.webp') center/100% 100% no-repeat;color:#183d33;box-shadow:none;filter:drop-shadow(0 10px 16px #071d1738);overflow:auto;overscroll-behavior:contain;font-family:Koba,Arial,sans-serif}
.language-entry::backdrop{background:#082d231c;backdrop-filter:none}
.language-entry form{margin:0}
.language-entry-brand{display:block;font-size:10px;font-weight:600;letter-spacing:.22em;margin-bottom:13px;color:#6a6544}
.language-entry h2{font:400 29px/1.08 Georgia,serif;letter-spacing:-.035em;margin:0 0 11px;color:#183d33;text-wrap:balance}
.language-entry p{font-size:13px;line-height:1.5;color:#5d624b;margin:0 0 19px;max-width:42ch}
.language-entry fieldset{border:0;padding:0;margin:0 0 19px;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.language-entry fieldset label{box-sizing:border-box;display:flex;align-items:center;gap:8px;border:1px solid #a8935a73;border-radius:3px;padding:11px 10px;min-height:48px;cursor:pointer;background:#fffaf22e;transition:background-color .15s ease,border-color .15s ease}
.language-entry fieldset label:hover{background:#fff7df91;border-color:#8f783e}
.language-entry fieldset label:has(input:checked){background:#e3c576b5;border-color:#887039}
.language-entry input{accent-color:#254d38;margin:0;width:16px;height:16px;flex-shrink:0}
.language-entry label span{font-size:13px;line-height:1.3}
.language-entry label small{margin-left:auto;font-size:9px;color:#686745}
.language-entry-continue{box-sizing:border-box;width:100%;min-height:46px;padding:11px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#183d33;color:#fff6db;border:1px solid #183d33;border-radius:3px;font:500 13px/1.4 Koba,Arial,sans-serif;cursor:pointer;transition:background-color .15s ease}
.language-entry-continue:hover{background:#254d3a}
.language-entry :is(button,input):focus-visible{outline:2px solid #183d33;outline-offset:4px}
.footer .charity-support{flex:0 0 100%;display:flex;align-items:center;justify-content:space-between;gap:20px 30px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.charity-support h2{font:400 24px/1.2 Georgia,serif;letter-spacing:-.025em;margin:0 0 8px}.charity-support p{font-size:12px;line-height:1.6;color:#64745f;max-width:55ch}.charity-support nav{display:flex;gap:12px;flex-wrap:wrap;flex-shrink:0}.charity-support a{display:inline-flex;align-items:center;border:1px solid #a3946a;border-radius:3px;padding:11px 18px;font-size:12px;min-height:44px}.charity-support a:hover{background:#e8cb852e}
@media(max-width:760px){.header .language-label{padding-left:8px;gap:5px}.header .language-label>span{display:none}.header .language-label select{font-size:13px;min-width:100px}.header-actions{gap:12px}.footer .charity-support{align-items:flex-start;flex-direction:column;gap:16px}.charity-support h2{font-size:23px}}
@media(max-width:480px){.language-entry{padding:56px 32px 52px}.language-entry h2{font-size:26px}.language-entry label small{display:none}.language-entry fieldset label{padding:10px 8px;gap:7px}.language-entry p{font-size:12px}.language-entry-continue{font-size:12px}}
@media(max-width:380px){.language-entry{padding:49px 27px 47px}.language-entry h2{font-size:24px}.language-entry label span{font-size:12px}.header .language-label select{min-width:90px}.header .brand>span{font-size:31px}}
@media(max-height:500px){.language-entry{padding-top:42px;padding-bottom:40px}.language-entry-brand{margin-bottom:8px}.language-entry h2{font-size:24px;margin-bottom:8px}.language-entry p{margin-bottom:12px;font-size:12px}.language-entry fieldset{margin-bottom:12px;gap:7px}.language-entry fieldset label{min-height:44px;padding-top:8px;padding-bottom:8px}.language-entry-continue{min-height:44px}}
@media(prefers-reduced-motion:reduce){.language-entry :is(label,button){transition:none}}
