html.menu-open,html.menu-open body{overflow:hidden}
.language-picker{position:relative;font-size:12px;flex-shrink:0}
.language-picker summary{cursor:pointer;padding:10px;border:1px solid #ffffff45;border-radius:6px;list-style:none}
.language-picker nav{position:absolute;right:0;top:calc(100% + 10px);min-width:160px;padding:8px;background:var(--ink);border:1px solid #ffffff35;border-radius:8px;box-shadow:0 12px 25px #0003;z-index:60}
.language-picker a{display:block;padding:10px 14px;color:var(--cream);font-size:14px;white-space:nowrap}
.language-picker a[aria-current]{background:#ffffff15;color:var(--gold)}
.language-suggestion{position:fixed;bottom:24px;right:24px;z-index:55;padding:18px;max-width:340px;background:var(--cream);color:var(--ink);border:1px solid var(--line);box-shadow:0 8px 30px #0003;border-radius:8px;font-size:14px;display:flex;gap:14px;align-items:center}
.language-suggestion button{padding:8px;min-width:36px;background:transparent;border:1px solid currentColor;border-radius:4px;cursor:pointer}
.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,6vw,100px)}
.contact-layout h1{font-family:var(--serif);font-size:clamp(40px,5vw,70px);line-height:1.08;margin:20px 0}
.contact-form{display:grid;gap:22px;min-width:0;padding:clamp(22px,4vw,45px);border:1px solid var(--line);border-radius:10px;background:#fff9}
.contact-form label{display:grid;gap:9px;font-size:14px}
.contact-form input,.contact-form textarea{width:100%;padding:13px;border:1px solid #bdb49f;border-radius:4px;background:var(--cream);font:inherit;color:var(--ink)}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--ink);outline-offset:3px}
.contact-form textarea{resize:vertical;min-height:150px}
.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.captcha-field{margin:0;padding:18px;display:grid;gap:14px;border:1px solid var(--line);border-radius:6px}
.captcha-field img{max-width:100%;height:auto}.captcha-field input{max-width:180px}
.contact-form .contact-consent{display:flex;align-items:start;gap:12px;line-height:1.7}.contact-consent input{width:20px;height:20px;flex-shrink:0}
.contact-consent a{text-decoration:underline}.contact-errors{border-left:3px solid #a22;padding:10px 18px;background:#fff2ee}.contact-success{border-left:3px solid #286349;padding:16px;background:#e5f0e5}
@media(max-width:950px){.contact-layout{grid-template-columns:1fr}.language-suggestion{bottom:90px;left:18px;right:18px;max-width:none}.language-picker summary{padding:8px}.header-actions{gap:6px}.language-picker nav{right:-45px}}

html.privacy-open,html.privacy-open body{overflow:hidden}
.message-meta{display:flex;justify-content:space-between;gap:12px;margin-top:-14px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.captcha-status:empty{display:none}.captcha-status{font-size:12px;color:var(--muted)}
.privacy-dialog{width:min(850px,calc(100% - 32px));max-width:850px;max-height:85svh;padding:0;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;overflow:hidden}
.privacy-dialog .dialog-head{padding:20px 24px;border-bottom:1px solid var(--line);margin:0;gap:20px}
.privacy-dialog .dialog-head h2{font-family:var(--serif);font-size:30px;margin:0}
.privacy-dialog-body{overflow-y:auto;max-height:calc(85svh - 85px);overscroll-behavior:contain;padding:24px}
.privacy-dialog-body .container{width:100%;margin:0;padding:0}.privacy-dialog-body h2{font-family:var(--serif);font-size:28px;line-height:1.2}.privacy-dialog-body p{font-size:15px;line-height:1.8}
.privacy-dialog::backdrop{background:#061c1bc9}
.privacy-dialog-body h2{margin:26px 0 14px}.privacy-dialog-body h2:first-of-type{margin-top:16px;margin-bottom:28px;font-size:30px}.privacy-dialog-body p{margin:0 0 18px}
