/* Legal pages extend the approved stylesheet; original tokens and rules remain intact. */
.legal-main{padding-block:clamp(3rem,7vw,6rem);max-width:1280px}
.legal-heading{max-width:54rem;padding-bottom:2.5rem;border-bottom:1px solid var(--line)}
.legal-heading h1{font-size:clamp(2.75rem,7vw,5rem);line-height:1.1;letter-spacing:-.035em;margin-top:1rem}
.legal-date{font-size:.875rem;color:var(--muted);margin-top:1rem}
.legal-layout{display:grid;grid-template-columns:14rem minmax(0,1fr);gap:clamp(2rem,5vw,5rem);padding-top:2.5rem}
.legal-toc{font-size:.875rem;align-self:start;position:sticky;top:1.5rem;max-height:85vh;overflow:auto}
.legal-toc p{color:var(--gold);font-weight:500;margin-bottom:.75rem}
.legal-toc a{display:block;padding:.45rem 0;text-decoration:none;line-height:1.5;color:var(--muted)}
.legal-toc a:hover,.legal-toc a:focus-visible{color:var(--ivory)}
.legal-copy{max-width:47rem;min-width:0;font-size:1rem;line-height:1.8}
.legal-copy h2{font-size:clamp(1.55rem,3vw,2rem);line-height:1.3;letter-spacing:-.018em;margin:2.7rem 0 1rem;scroll-margin-top:2rem}
.legal-copy h2:first-child{margin-top:0}
.legal-copy p{margin:0 0 1.05rem;color:var(--muted)}
.legal-copy li{color:var(--muted);padding-left:.25rem;margin:.6rem 0}
.legal-copy ul{padding-left:1.2rem;margin:0 0 1.3rem}
.legal-copy a{color:var(--ivory);overflow-wrap:anywhere}
.legal-copy a:hover{color:var(--gold)}
.collection-notice{font-family:var(--sans);font-size:.875rem;line-height:1.7;color:var(--muted);max-width:42rem;margin:1.5rem auto 0}
.contact>p.collection-notice{max-width:42rem;font-size:.875rem}
.footer-legal{display:block}
.footer-top{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 2rem}
.footer-top .footer-social{display:flex;gap:.25rem;margin-left:auto;align-items:center}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--gold);border-radius:50%}
.footer-social svg{width:24px;height:24px;display:block}
.footer-top .footer-back{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.footer-back span{margin-left:.6rem;color:var(--gold)}
.footer-bottom{border-top:1px solid var(--line);margin-top:1.25rem;padding-top:1.25rem;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1.2rem 3rem;font-size:.875rem;line-height:1.65}
.footer-company strong{color:var(--ivory);font-weight:500}
.footer-company address{font-style:normal;max-width:40rem;margin-top:.45rem}
.footer-company a{display:inline-block;margin-top:.4rem;min-height:32px}
.footer-nav{display:flex;flex-wrap:wrap;align-content:start;gap:.2rem 1.3rem}
.footer-nav a,.footer-nav button{display:inline-flex;align-items:center;min-height:44px;font:inherit;color:var(--muted);background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:.3em;cursor:pointer}
.footer-nav a:hover,.footer-nav button:hover{color:var(--gold)}
[data-privacy-open][hidden]{display:none}
.privacy-banner{position:fixed;bottom:0;left:0;right:0;z-index:30;border-top:1px solid var(--gold);background:var(--charcoal);padding:1rem clamp(1.25rem,4vw,4rem);box-shadow:0 -1rem 3rem #0006;display:flex;align-items:center;gap:1rem 2rem}
.privacy-banner[hidden],.privacy-controls[hidden]{display:none}
.privacy-banner p{font-size:.875rem;color:var(--muted);line-height:1.6;max-width:48rem}
.privacy-banner strong{color:var(--ivory);font-weight:500}
.privacy-actions{display:flex;flex-wrap:wrap;gap:.65rem;flex-shrink:0}
.privacy-actions button,.privacy-controls button{font:500 .875rem var(--sans);color:var(--ivory);border:1px solid var(--gold);background:transparent;min-height:44px;padding:.65rem 1rem;cursor:pointer}
.privacy-actions button:hover,.privacy-controls button:hover{background:var(--gold);color:var(--charcoal)}
button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.privacy-controls{position:fixed;z-index:40;inset:0;background:#000a;overflow:auto;padding:clamp(1rem,4vw,3rem);display:flex;align-items:center;justify-content:center}
.privacy-card{max-width:37rem;width:100%;padding:clamp(1.5rem,4vw,2.5rem);background:var(--charcoal);border:1px solid var(--gold);max-height:90svh;overflow:auto}
.privacy-card h2{font-size:2rem;margin-bottom:1rem}
.privacy-card p{color:var(--muted);font-size:.9375rem;margin:1rem 0}
.privacy-card label{display:flex;align-items:center;gap:.75rem;min-height:44px;color:var(--ivory)}
.privacy-card input{width:22px;height:22px;accent-color:var(--gold)}
.privacy-card .privacy-actions{margin-top:1.5rem;flex-shrink:1}
.privacy-status{min-height:1.5rem;font-size:.875rem!important}
.privacy-noscript{font-size:.875rem;color:var(--muted);padding:1rem 1.5rem;text-align:center}
@media(max-width:1000px){.privacy-banner{display:block}.privacy-banner .privacy-actions{margin-top:.85rem}}
@media(max-width:700px){.legal-layout{grid-template-columns:minmax(0,1fr);gap:2rem}.legal-toc{position:static;max-height:none;border-bottom:1px solid var(--line);padding-bottom:1.5rem}.legal-toc a{min-height:44px;padding-block:.6rem}.legal-heading{padding-bottom:1.75rem}.footer-legal .footer-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem 1rem}.footer-legal .footer-top .brand{grid-column:1;grid-row:1}.footer-legal .footer-top .footer-social{grid-column:2;grid-row:1;margin:0}.footer-legal .footer-top p{grid-column:1;grid-row:2;order:initial}.footer-legal .footer-top .footer-back{grid-column:2;grid-row:2;justify-self:end}.footer-bottom{grid-template-columns:minmax(0,1fr);gap:.75rem}.privacy-actions{gap:.5rem}.privacy-banner{max-height:50svh;overflow:auto}.privacy-banner .privacy-actions button{flex:1}.privacy-controls{align-items:flex-start}.privacy-card{margin-block:auto}}
@media(pointer:coarse){.footer-social a,.footer-nav a,.footer-nav button,.privacy-actions button{min-height:48px}.footer-social a{width:48px;height:48px}}
@media print{.site-header,.legal-toc,.privacy-banner,.privacy-controls,.footer-social,.footer-nav{display:none}body{background:white;color:black}.legal-main,.section-shell{padding:0;max-width:none}.legal-layout{display:block}.legal-copy{max-width:none}.legal-copy p,.legal-copy li,.legal-copy a,.footer-company{color:black}.legal-copy h2{break-after:avoid}.legal-copy p{orphans:3;widows:3}}

/* PERSOM availability page: retain existing type and colors. */
.availability-list{columns:2;column-gap:2rem}
.availability-list li{break-inside:avoid;margin:.35rem 0}
@media(max-width:700px){.availability-list{columns:1}}
