
:focus-visible{outline:3px solid #b4512e;outline-offset:4px}
*{min-width:0;overflow-wrap:break-word}

body{margin:0;background:oklch(0.975 0.008 80);color:oklch(0.23 0.02 55);font-family:'Hanken Grotesk',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:oklch(0.23 0.02 55)}a:hover{color:oklch(0.6 0.13 42)}*{box-sizing:border-box}

[hidden] { display: none !important; }
.skip-link { position: fixed; top: 8px; left: 8px; z-index: 100; padding: 12px 18px; background: #fffaf3; color: #241c17; transform: translateY(-180%); }
.skip-link:focus { transform: translateY(0); }
nav a[hreflang] { display: inline-block; }
[data-filter][aria-pressed="true"] { background: oklch(0.23 0.02 55) !important; color: oklch(0.975 0.008 80) !important; border-color: oklch(0.23 0.02 55) !important; }
[data-filter][aria-pressed="false"] { background: transparent !important; color: oklch(0.23 0.02 55) !important; border-color: oklch(0.82 0.014 75) !important; }
.filter-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.contact-cta { display: inline-block; padding: 16px 24px; border-radius: 999px; background: oklch(0.52 0.13 42); color: #fffaf3; font-weight: 600; }
.contact-cta:hover { background: oklch(0.47 0.13 42); color: #fffaf3; }
.contact-note { font-size: 13px; line-height: 1.6; }
.image-disclosure { max-width: 1320px; margin: 0 auto; padding: 0 clamp(20px,4vw,48px) 32px; font-size: 13px; line-height: 1.6; color: oklch(0.75 0.012 75); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

