/* Shared cream, sage and gold palette, including the optional-purpose notice. */
.privacy-panel[hidden],.privacy-open[hidden]{display:none!important}
.privacy-panel{position:fixed;z-index:1000;left:20px;right:20px;bottom:20px;max-width:1200px;margin:auto;background:#fffdf8;border:1px solid #d4c9b8;border-radius:24px;box-shadow:0 12px 70px #302a2340;padding:28px 32px;color:#292722;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain}
.privacy-top{display:flex;gap:20px;align-items:flex-start}
.privacy-mark{flex:none;background:#dfe9e1;border:1px solid #96b59e;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;color:#4b6751}
.privacy-mark svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.privacy-panel h2{font-size:24px;line-height:1.3;letter-spacing:-.5px;color:#825923;font-weight:600}
.privacy-panel .privacy-intro{font-size:13px;line-height:1.8;max-width:930px;margin-top:8px;color:#635e57}
.privacy-panel a,.privacy-panel summary{color:#4b6751;text-decoration:underline;text-underline-offset:3px}
.privacy-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;border:0;padding:18px 0;margin:0}
.privacy-options legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.privacy-option{display:flex;align-items:flex-start;gap:11px;padding:12px;background:#f4f1ec;border:1px solid #e4dbce;border-radius:12px;font-size:13px;line-height:1.6;cursor:pointer}
.privacy-option input{accent-color:#4b6751;width:20px;height:20px;min-width:20px;margin:1px 0 0;cursor:pointer}
.privacy-option strong{font-weight:600;display:block}
.privacy-option small{display:block;font-size:11px;line-height:1.65;color:#635e57;margin-top:2px}
.privacy-current{font-size:11px;line-height:1.7;color:#4b6751;margin:0 0 14px}
.privacy-bottom{display:flex;gap:24px;justify-content:space-between;align-items:flex-end;border-top:1px solid #e4dbce;padding-top:17px}
.privacy-detail{font-size:11px;line-height:1.8;max-width:450px}
.privacy-detail summary{font-size:12px;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.privacy-detail summary:after{content:'+';text-decoration:none}.privacy-detail[open] summary:after{content:'−'}
.privacy-detail p{margin-top:8px}.privacy-detail ul{padding-left:18px;margin:8px 0}
.privacy-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.privacy-panel .privacy-button{border:1px solid #ae8450;border-radius:999px;padding:12px 18px;min-height:46px;background:#fffdf8;color:#292722;font-size:12px;line-height:1.5;font-weight:600;white-space:nowrap}
.privacy-panel .privacy-button:hover{background:#f4eadb}
.privacy-panel .privacy-allow{background:linear-gradient(145deg,#f8dfb4,#e9b775);box-shadow:0 4px 10px #94672f1b}
.privacy-panel .privacy-allow:hover{background:#e9b775}
.privacy-panel :focus-visible,.privacy-open:focus-visible{outline:3px solid #4b6751;outline-offset:4px}
.privacy-open{font:inherit;padding:0;border:0;background:none;color:inherit;text-align:left;text-decoration:underline;text-underline-offset:3px}
.privacy-panel h2:focus{outline:none}
.privacy-legal-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:7px}
.page-legal .legal-hero{background:#f4f1ec;padding:48px 0;border-bottom:1px solid #e5ded3}
.page-legal .legal-hero h1{font-size:52px;line-height:1.2;color:#94672f;overflow-wrap:anywhere;margin:16px 0}
.page-legal .legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;padding-top:48px;padding-bottom:72px}
.page-legal .legal-toc{align-self:start;position:sticky;top:28px;background:#edf2ec;border:1px solid #c4d3c7;border-radius:18px;padding:22px;font-size:12px;line-height:1.8;max-height:calc(100dvh - 56px);overflow:auto;scrollbar-width:thin}
.page-legal .legal-toc h2{font-size:16px;line-height:1.5;color:#4b6751;margin-bottom:12px}
.page-legal .legal-toc a{display:block;margin-top:7px;color:#4b6751}
.page-legal .legal-toc-children{padding-left:13px;margin:9px 0 13px;border-left:1px solid #96b59e;font-size:11px}
.page-legal .legal-status{margin-top:24px;max-width:850px;background:#edf2ec;border:1px solid #c4d3c7;border-radius:18px;padding:22px 26px}
.page-legal .legal-status h2{font-size:20px;line-height:1.4;color:#4b6751;margin-bottom:9px}
.page-legal .legal-status p{font-size:13px;line-height:1.85}
.page-legal .legal-status a{display:inline-flex;gap:10px;margin-top:12px;color:#4b6751;font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.page-legal .legal-subsection{border:1px solid #ded6c9;border-radius:18px;background:#fffdf8;margin-top:26px;padding:25px;scroll-margin-top:28px}
.page-legal .legal-subsection h3{font-size:21px;line-height:1.45;color:#825923;margin-bottom:15px}
.page-legal .legal-section{scroll-margin-top:28px;padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid #e5ded3}
.page-legal .legal-section h2{font-size:25px;line-height:1.4;color:#825923;margin-bottom:16px}
.page-legal .legal-section p,.page-legal .legal-section li{font-size:14px;line-height:1.9;overflow-wrap:anywhere}
.page-legal .legal-section a{color:#4b6751;text-decoration:underline;text-underline-offset:3px}
.page-legal .legal-section ul{padding-left:20px;margin:12px 0}
.page-legal .legal-section .privacy-open{margin-top:18px;font-size:13px;color:#4b6751}
.legal-date{font-size:12px;margin-top:18px}
@media(max-width:900px){.privacy-panel{padding:24px}.privacy-bottom{align-items:stretch;flex-direction:column;gap:16px}.privacy-actions{justify-content:flex-start}.privacy-detail{max-width:none}.page-legal .legal-layout{grid-template-columns:190px minmax(0,1fr);gap:32px}}
@media(max-width:600px){.privacy-panel{left:10px;right:10px;bottom:10px;border-radius:20px;padding:20px;max-height:calc(100dvh - 20px)}.privacy-mark{display:none}.privacy-panel h2{font-size:21px}.privacy-panel .privacy-intro{font-size:12px;line-height:1.75}.privacy-options{grid-template-columns:1fr;gap:8px;padding:16px 0}.privacy-option{padding:10px 12px;font-size:12px}.privacy-option small{font-size:10px}.privacy-bottom{padding-top:13px;gap:14px}.privacy-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.privacy-panel .privacy-button{padding:11px 9px;font-size:11px;white-space:normal}.privacy-panel .privacy-allow{grid-column:1/-1}.page-legal .legal-hero{padding:32px 0}.page-legal .legal-hero h1{font-size:36px}.page-legal .legal-layout{grid-template-columns:1fr;gap:28px;padding-top:28px}.page-legal .legal-toc{position:static;max-height:none;overflow:visible}.page-legal .legal-status{padding:18px}.page-legal .legal-status h2{font-size:19px}.page-legal .legal-subsection{padding:20px}.page-legal .legal-subsection h3{font-size:20px}.page-legal .legal-section h2{font-size:23px}.page-legal .legal-section p,.page-legal .legal-section li{font-size:13px}}
