:focus-visible{outline:3px solid #926f42;outline-offset:4px}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:8px;left:8px;z-index:5000;background:#fff;color:#17231d;padding:12px;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.footer-legal{font-size:.83rem;line-height:1.7;max-width:36rem}
.footer-links button,.legal-page button{font:inherit;color:inherit;border:0;background:none;padding:0;text-align:left;text-decoration:underline;cursor:pointer}
.consent-panel{width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;border:1px solid #d8cbbb;padding:30px;color:#17231d;background:#faf7f2;box-shadow:0 12px 60px #0004}
.consent-panel::backdrop{background:#17231d66}
.consent-panel h2{font-size:clamp(1.5rem,6vw,2rem);padding-right:20px;margin:0 0 16px}
.consent-panel p{line-height:1.55;font-size:.95rem}
.consent-close{position:absolute;top:12px;right:12px;width:44px;height:44px;font-size:28px;background:transparent;color:#17231d;border:0;cursor:pointer}
.consent-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}
.consent-actions button{flex:1;min-width:130px;min-height:48px;padding:12px;border:1px solid #17231d;background:#17231d;color:#fff;font:inherit;cursor:pointer}
.consent-links{display:flex;gap:22px;flex-wrap:wrap}
.consent-links button,.consent-links a{font:inherit;color:#17231d;background:none;border:0;padding:8px 0;text-decoration:underline;cursor:pointer}
.consent-panel fieldset{border:1px solid #c6bcae;padding:16px;margin-top:20px}
.consent-toggle{display:flex;align-items:center;gap:12px;line-height:1.5;min-height:44px}
.consent-toggle input{width:22px;height:22px;accent-color:#17231d;flex-shrink:0}
.consent-note{font-size:.8rem!important;color:#4a544e}
.privacy-note{font-size:.85rem;line-height:1.6;color:#465149}
.privacy a,.privacy-note a{text-decoration:underline}
.form-copy ol{padding-left:1.3em;line-height:1.7}
.legal-page{max-width:920px;margin:0 auto;padding:64px 24px;line-height:1.7}
.legal-page h1{font-size:clamp(2rem,5vw,3.3rem);margin-bottom:24px}
.legal-page h2{font-size:1.5rem;margin-top:36px}
.legal-page a{text-decoration:underline;overflow-wrap:anywhere}
.legal-table{overflow:auto}.legal-table table{border-collapse:collapse;width:100%;font-size:.9rem}.legal-table th,.legal-table td{text-align:left;vertical-align:top;border-bottom:1px solid #c6bcae;padding:12px;min-width:100px}
@media(max-width:600px){.consent-panel{padding:24px 18px}.footer{overflow-wrap:anywhere}.field.two{grid-template-columns:1fr}.legal-page{padding-top:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation:none!important}}

.footer-legal button{font:inherit;color:inherit;background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}
