/* A slim bar along the bottom edge: the notice never sits over the hero copy or its actions. */
.privacy-notice{position:fixed;z-index:60;left:0;right:0;bottom:0;max-height:calc(100dvh - 32px);overflow:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 32px;padding:12px max(6%,16px) calc(12px + env(safe-area-inset-bottom,0px));background:#1c2b2e;border-top:2px solid var(--copper);color:var(--paper)}
.privacy-notice[hidden]{display:none}
.privacy-notice-copy{flex:1 1 520px;min-width:0}
.privacy-notice h2{font-size:17px;line-height:1.3}
.privacy-notice p{font-size:13px;line-height:1.55;margin-top:4px;max-width:none}
.privacy-notice p a{color:var(--copper-light);text-decoration:underline;text-underline-offset:4px}
.privacy-notice-actions{display:flex;gap:10px;flex:none}
.privacy-notice-actions button{min-height:44px;border:1px solid var(--teal);padding:10px 18px;background:transparent;color:var(--paper);font-size:13px;white-space:nowrap}
.privacy-notice-actions button:hover{background:#2d4142}
.privacy-notice-open .floating-nav{visibility:hidden}
.cookie-settings{background:none;border:0;padding:0;color:inherit;text-decoration:underline;text-underline-offset:4px;min-height:24px;font-size:inherit}
.cookie-settings[hidden]{display:none}
.privacy-document{max-width:940px;padding-block:60px 90px}
.privacy-document{overflow-wrap:anywhere}
.privacy-document h1{font-size:clamp(42px,6vw,70px);max-width:20ch;margin:0 0 25px}
.privacy-document>.privacy-lead{font-size:17px;max-width:52ch;line-height:1.8}
.privacy-document .privacy-date{font-size:13px;margin:22px 0 30px}
.privacy-contents{display:flex;flex-wrap:wrap;gap:15px 25px;border-block:1px solid var(--line);padding:20px 0;margin-bottom:35px;font-size:13px;color:var(--copper-light)}
.privacy-document section{padding-block:25px;border-bottom:1px solid var(--line)}
.privacy-document h2{font-size:31px;margin-bottom:20px}
.privacy-document h3{font-size:23px;margin:25px 0 12px}
.privacy-document p,.privacy-document li{font-size:15px;line-height:1.9;max-width:52ch;color:var(--muted)}
.privacy-document p+p{margin-top:15px}
.privacy-document li+li{margin-top:8px}
.privacy-document section a{color:var(--copper-light);text-decoration:underline;text-underline-offset:4px}
.storage-list{margin:20px 0}
.storage-list>div{padding:16px 0;border-top:1px solid var(--line)}
.storage-list dt{font-size:15px;color:var(--paper)}
.storage-list dd{margin:8px 0 0;font-size:13px;line-height:1.8;color:var(--muted)}
@media(max-width:560px){.privacy-notice{gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px))}.privacy-notice h2{font-size:16px}.privacy-notice-actions{flex:1 1 100%;gap:9px}.privacy-notice-actions button{flex:1;font-size:13px;padding-inline:10px}.privacy-document{padding-top:35px}.privacy-document>.privacy-lead{font-size:15px}}
@media print{.privacy-notice,.cookie-settings{display:none}}
/* Leave room above the scrollable notice for keyboard-focused page content. */
@media(max-height:560px){.privacy-notice{max-height:60dvh}}
.cursor-accessibility{border-top:1px solid var(--line);padding-block:12px;color:var(--paper)}
.utility-footer .cursor-accessibility{flex-basis:100%;width:100%}
.cursor-accessibility summary{width:fit-content;min-height:44px;align-content:center;font-size:1rem;cursor:pointer;text-underline-offset:4px}
.cursor-accessibility summary:hover{text-decoration:underline}
.cursor-accessibility-body{max-width:52ch;padding:12px 0 20px}
.cursor-accessibility label{display:flex;align-items:center;gap:12px;min-height:44px;width:fit-content;font-size:1rem;cursor:pointer}
.cursor-accessibility input{appearance:auto;width:20px;height:20px;flex:none;accent-color:var(--copper)}
.cursor-accessibility .accessibility-motion-label{margin-top:22px}
.cursor-accessibility input:disabled{cursor:default}
.cursor-accessibility p{font-size:.875rem;line-height:1.7;margin-top:12px;color:var(--muted)}
.cursor-accessibility :is(summary,input):focus-visible{outline:2px solid var(--copper-light);outline-offset:5px}
.accessibility-shortcut{position:fixed;top:12px;left:12px;z-index:100;padding:14px 20px;background:var(--paper);color:var(--ink);transform:translateY(-200%)}
.accessibility-shortcut:focus{transform:none}
@media(forced-colors:active){.cursor-accessibility :is(summary,input):focus-visible{outline-color:Highlight}}
@media print{.cursor-accessibility,.accessibility-shortcut{display:none}}
