/* Shared: lang gate, lang switch, forms, klaro path helpers */
.lang-switch{display:inline-flex;align-items:center;gap:.35rem}
.lang-switch .lang-btn{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:.28rem;border:1px solid transparent;opacity:.7;text-decoration:none}
.lang-switch .lang-btn.is-active,.lang-switch .lang-btn:hover{opacity:1;border-color:rgba(0,0,0,.18)}
.lang-switch .lang-btn img{width:1.05rem;height:1.05rem;display:block;border-radius:.2rem}
.nav__tools{display:flex;align-items:center;gap:1rem}
.lang-gate{border:0;padding:0;background:transparent;max-width:min(26rem,calc(100vw - 2rem));position:fixed;inset:0;width:fit-content;height:fit-content;margin:auto}
.lang-gate::backdrop{background:rgba(14,12,10,.72)}
.lang-gate-card{background:#f3efe8;color:#141210;padding:1.6rem 1.5rem 1.4rem;border-radius:.85rem;box-shadow:0 18px 50px rgba(0,0,0,.28)}
.lang-gate-card .kicker{margin:0 0 .55rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;opacity:.65;font-family:system-ui,sans-serif}
.lang-gate-card h2{margin:0;font-family:Georgia,serif;font-size:clamp(1.55rem,4vw,1.9rem);font-weight:500;line-height:1.15;color:#141210}
.lang-gate-card .hint{margin:.7rem 0 1.25rem;color:#5c574e;font-size:.92rem;line-height:1.45;font-family:system-ui,sans-serif}
.lang-gate-card .choices{display:grid;gap:.65rem}
.lang-gate-card .choice{display:flex;align-items:center;gap:.85rem;width:100%;padding:.85rem .95rem;border:1px solid rgba(20,18,16,.16);border-radius:.65rem;background:#fff;color:inherit;font:inherit;cursor:pointer;text-align:left}
.lang-gate-card .choice:hover,.lang-gate-card .choice:focus-visible{border-color:rgba(20,18,16,.45)}
.lang-gate-card .choice img{width:1.55rem;height:1.55rem;border-radius:.28rem;display:block}
.kontakt-form{display:grid;gap:1rem;margin-top:1.5rem;max-width:28rem}
.kontakt-form label{display:grid;gap:.35rem;font-family:system-ui,sans-serif;font-size:.85rem;color:#5a574e}
.kontakt-form input,.kontakt-form textarea{font:inherit;padding:.75rem .85rem;border:1px solid #ddd6c8;border-radius:.4rem;background:#fff;color:#1c1b18}
.kontakt-form textarea{min-height:8rem;resize:vertical}
.kontakt-form button{justify-self:start;background:#b08d57;color:#1a1a16;border:0;padding:1rem 1.6rem;border-radius:999px;font-family:system-ui,sans-serif;font-size:1rem;font-weight:500;cursor:pointer}
.kontakt-form button:hover{filter:brightness(1.05)}
.kontakt-form button:disabled{opacity:.6;cursor:wait}
.kontakt-success{margin-top:1.5rem;padding:1.25rem 1.1rem;background:#e8dfd0;border:1px solid #ddd6c8;border-radius:.5rem;font-size:1.05rem}
.kontakt-error{margin-top:.75rem;color:#8a3a32;font-family:system-ui,sans-serif;font-size:.9rem}
.photo-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,240px));justify-content:center;justify-items:stretch;gap:1rem;margin:1.75rem 0 0;width:100%}
.photo-row img{display:block;width:100%;max-width:240px;height:210px;object-fit:cover;background:#d9d0c0;border:1px solid #ddd6c8;justify-self:center}
@media (max-width:720px){.photo-row{grid-template-columns:repeat(auto-fit,minmax(160px,240px))}}
footer .cookie-settings{background:none;border:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:.15em;padding:0}
