/* Publication layer. Approved homepage typography, artwork and crimson preserved. */
:root{--privacy-line:#dce1e4;--privacy-ink:#111518;--privacy-red:#9e2637;--privacy-muted:#52595e}
.legal-links{display:flex;align-items:center;gap:19px;flex-wrap:wrap;font:11px/1.6 var(--body,Arial,sans-serif)}
.legal-links a,.legal-links button{min-height:44px;display:inline-flex;align-items:center;padding:5px 0;color:var(--privacy-muted)}
.legal-links a:hover,.legal-links button:hover{color:var(--privacy-red)}
.footer{flex-wrap:wrap}.footer-tools{margin-left:auto}.optional{color:var(--privacy-muted);font-size:12px}
.field textarea{width:100%;min-height:85px;resize:vertical;padding:10px 0;border:0;border-bottom:1px solid var(--privacy-line);border-radius:0;background:white;font:16px/1.6 var(--body,Arial,sans-serif)}
.input-note,.direct-contact{font:12px/1.6 var(--body,Arial,sans-serif);color:var(--privacy-muted);margin-top:10px}.direct-contact{margin-top:22px}.direct-contact a,.privacy-consent a{color:var(--privacy-red);text-decoration:underline;text-underline-offset:3px}
.privacy-consent{display:flex;align-items:flex-start;gap:12px;font:12px/1.7 var(--body,Arial,sans-serif);color:var(--privacy-muted);cursor:pointer}
.privacy-consent input{flex:0 0 18px;width:18px;height:18px;accent-color:var(--privacy-red);margin:3px 0 0}.hp-field{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.form-error{white-space:pre-line}.form-error[data-state=success]{color:var(--privacy-ink);border-left:2px solid var(--privacy-red);padding-left:16px;margin-top:24px}.button:disabled{cursor:wait;opacity:.65;transform:none}
:where(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--privacy-red);outline-offset:5px}
/* Compact cookie controls. Non-blocking, corner-sized, no page overlay. */
.cookie-notice{position:fixed;inset:auto auto 20px 20px;z-index:130;width:380px;max-width:calc(100% - 40px);background:#fff;border:1px solid var(--privacy-line);padding:18px 20px;color:var(--privacy-ink)}
.cookie-copy h2{font:21px/1.2 var(--serif,Georgia,serif);margin:0 0 8px}.cookie-copy p{font:13px/1.5 var(--body,Arial,sans-serif);color:var(--privacy-muted);margin:0}
.cookie-actions{display:flex;gap:8px;margin-top:14px}.cookie-actions button,.privacy-actions button{font:12px/1.4 var(--body,Arial,sans-serif);padding:10px 12px;min-height:44px;color:var(--privacy-ink);border:1px solid var(--privacy-line);background:#fff;cursor:pointer;border-radius:2px;flex:1}
.cookie-actions button:hover,.privacy-actions button:hover{border-color:var(--privacy-red);color:var(--privacy-red)}
.cookie-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:6px;font:11px/1.4 var(--body,Arial,sans-serif)}.cookie-policy-links{display:flex;gap:14px}.cookie-meta a,.cookie-meta button{display:inline-flex;align-items:center;min-height:32px;padding:0;background:none;border:0;font:inherit;color:var(--privacy-muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.cookie-meta a:hover,.cookie-meta button:hover{color:var(--privacy-red)}
/* Preferences use show(), not showModal(): the page stays visible and scrollable. */
.privacy-dialog{position:fixed;inset:auto auto 20px 20px;margin:0;width:380px;max-width:calc(100% - 40px);max-height:calc(100svh - 40px);z-index:131;background:#fff;color:var(--privacy-ink);padding:18px 20px;border:1px solid var(--privacy-line);overflow:auto;border-radius:0}
.privacy-dialog::backdrop{background:transparent}.privacy-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.privacy-top h2{font:21px/1.2 var(--serif,Georgia,serif);margin:0}.privacy-close{min-width:44px;min-height:44px;font:23px/1 Arial;cursor:pointer;background:none;border:0;color:var(--privacy-ink);margin:-9px -9px -6px 0}
.privacy-dialog p{font:12px/1.55 var(--body,Arial,sans-serif);color:var(--privacy-muted);margin:0 0 12px}.privacy-setting{padding:12px 0;border-top:1px solid var(--privacy-line)}.privacy-setting h3{font:13px/1.4 var(--body,Arial,sans-serif);font-weight:600;margin:0 0 5px}.privacy-state{font:10px/1.4 var(--mono,monospace);color:var(--privacy-muted);display:block;margin-bottom:5px}.privacy-setting p{margin:0}.privacy-actions{display:flex;gap:8px;border-top:1px solid var(--privacy-line);padding-top:12px}.privacy-links{margin:8px 0 0!important;display:flex;gap:16px}.privacy-links a{display:inline-flex;align-items:center;min-height:32px;color:var(--privacy-muted);text-decoration:underline;text-underline-offset:3px}.privacy-status{font:12px var(--body,Arial,sans-serif)}
.legal-page{padding-top:70px;padding-bottom:90px;max-width:1000px}.legal-page h1{font:clamp(46px,6vw,76px)/1.1 var(--serif,Georgia,serif);letter-spacing:-.03em;margin:24px 0 22px}.legal-page .updated{font:11px/1.5 var(--mono,monospace);color:var(--privacy-muted);margin:0 0 42px}.legal-page section{border-top:1px solid var(--privacy-line);padding-top:25px;margin-top:30px}.legal-page h2{font:25px/1.2 var(--serif,Georgia,serif);margin:0 0 14px}.legal-page p,.legal-page li{font:16px/1.75 var(--body,Arial,sans-serif);color:var(--privacy-muted);margin:0 0 15px;max-width:770px}.legal-page a{color:var(--privacy-red);text-decoration:underline;text-underline-offset:3px}.legal-page ul{padding-left:22px}.legal-page code{font:13px var(--mono,monospace);overflow-wrap:anywhere}.legal-table{width:100%;border-collapse:collapse;text-align:left;font:13px/1.65 var(--body,Arial,sans-serif)}.legal-table th,.legal-table td{padding:16px 12px 16px 0;border-bottom:1px solid var(--privacy-line);vertical-align:top;overflow-wrap:anywhere}.legal-page .label{margin:0}
@media(max-width:1080px){.footer-tools{margin-left:0}.legal-links{gap:16px}}
@media(max-width:780px){.cookie-notice,.privacy-dialog{left:12px;bottom:max(12px,env(safe-area-inset-bottom));width:360px;max-width:calc(100% - 24px);padding:14px 16px}.cookie-copy h2,.privacy-top h2{font-size:19px}.cookie-copy p{font-size:12px}.cookie-actions{margin-top:11px}.cookie-actions button{padding:10px 8px;font-size:11px}.cookie-meta{font-size:11px;margin-top:4px}.privacy-dialog p{font-size:12px}.legal-links{width:100%;gap:17px}.legal-links a,.legal-links button{font-size:11px}.privacy-consent{font-size:12px}.form-note{font-size:11px!important;max-width:190px!important}.legal-page{padding-top:44px;padding-bottom:60px}.legal-page h1{font-size:43px}.legal-page p,.legal-page li{font-size:15px}.legal-table{font-size:11px}.legal-table th,.legal-table td{padding:12px 9px 12px 0}.legal-page .updated{margin-bottom:30px}}
@media(max-height:480px){.cookie-notice,.privacy-dialog{bottom:8px;max-height:calc(100svh - 16px);overflow:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}
@media print{.cookie-notice,.privacy-dialog,.legal-links button{display:none!important}}
