.brand-footer{flex-wrap:wrap;letter-spacing:.03em;gap:.4rem 1rem}
.legal-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.15rem 1rem}
.legal-links a,.legal-links button{font:inherit;color:var(--muted);background:none;border:0;padding:.55rem .15rem;cursor:pointer;text-underline-offset:.25em}
.legal-links a:hover,.legal-links button:hover{color:var(--ink);text-decoration:underline}
.cafe-menu .legal-links button{color:#564a38}
.cafe-menu .legal-links button:hover{color:#282017}
.legal-page{min-height:100svh;background:radial-gradient(ellipse at top right,#35302450,transparent 55%),var(--night)}
.legal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:74rem;margin:auto;padding:1.5rem clamp(1.25rem,4vw,3rem)}
.legal-home{font-family:var(--serif);letter-spacing:.1em;font-size:1rem}
.legal-main{width:min(100% - 2.5rem,47rem);margin:3rem auto 5rem;font-size:1rem;line-height:1.8;overflow-wrap:anywhere}
.legal-eyebrow{font-size:.72rem;letter-spacing:.2em;color:var(--gold)}
.legal-main h1{font:400 clamp(2.3rem,6vw,4rem)/1.13 var(--serif);margin:.7rem 0 2rem}
.legal-main h2{font:400 1.5rem/1.3 var(--serif);margin:2.5rem 0 .8rem;color:var(--ink)}
.legal-main p,.legal-main li{color:#ccc9c2}
.legal-main a{color:var(--ink);text-decoration:underline;text-underline-offset:.22em}
.legal-main address{font-style:normal;color:var(--ink);line-height:1.9}
.legal-main ul{padding-left:1.25rem}
.legal-draft{border:1px solid #c5ac8360;border-left:3px solid var(--gold);padding:1rem 1.25rem;margin:0 0 2.5rem;background:#c5ac8309}
.legal-draft strong{color:var(--gold);font-weight:500}
.legal-draft p{margin:.35rem 0 0;font-size:.9rem}
.legal-pending{color:var(--gold)!important}
.legal-date{font-size:.85rem;color:var(--muted)}
.legal-footer{padding:1.5rem 1rem;border-top:1px solid var(--line);font-size:.82rem}
.legal-action{font:inherit;border:1px solid var(--gold);border-radius:4px;background:transparent;color:var(--ink);padding:.8rem 1.1rem;cursor:pointer}
.privacy-dialog{color:var(--ink);background:#111719;border:1px solid #c5ac8350;border-radius:10px;width:min(36rem,calc(100% - 2rem));max-height:calc(100svh - 2rem);padding:clamp(1.25rem,4vw,2.5rem);box-sizing:border-box;box-shadow:0 20px 80px #0009}
.privacy-dialog::backdrop{background:#040708b8;backdrop-filter:blur(5px)}
.privacy-dialog h2{font:400 clamp(1.65rem,5vw,2.15rem)/1.2 var(--serif);margin:.75rem 2rem 1.2rem 0}
.privacy-dialog p{line-height:1.65}
.privacy-close{position:absolute;top:.6rem;right:.6rem;width:44px;height:44px;border:0;background:transparent;color:var(--ink);font-size:1.8rem;cursor:pointer}
.privacy-detail,.privacy-status{color:var(--muted);font-size:.88rem}
.privacy-actions{display:grid;gap:.7rem;margin:1.5rem 0}
.privacy-actions button{font:inherit;border:1px solid var(--gold);border-radius:5px;background:transparent;color:var(--ink);padding:.85rem 1rem;cursor:pointer;min-height:48px}
.privacy-actions button:hover,.legal-action:hover{background:#c5ac8319}
.privacy-dialog>a{font-size:.85rem;color:var(--gold);text-decoration:underline;text-underline-offset:.2em}
.privacy-error{color:#efc3ae}
@media(max-width:560px){.brand-footer{padding:1rem}.brand-footer>.footer-rule{display:none}.legal-links{gap:.1rem .8rem}.legal-main{margin-top:2rem}.legal-header{padding:1.2rem}.privacy-dialog{max-height:calc(100svh - 1rem)}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}
