/* legal.css — shared styling for the Privacy Policy and Terms of Service pages.
   Imported from the Claude Design project (Nocturne). Matches the site's dark
   palette and shares the `mt-theme` localStorage key with index.html. */

*{box-sizing:border-box}
body{margin:0;background:#17170f;color:#ece4d2;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#cdb98a;text-decoration:none;border-bottom:1px solid rgba(205,185,138,.45)}
a:hover{color:#ece4d2}
::selection{background:#cdb98a;color:#0f0f0c}
:focus-visible{outline:2px solid #a3c061;outline-offset:2px}

.page{background:#17170f;min-height:100vh;display:flex;flex-direction:column}

/* ---- header ---- */
.hdr{position:sticky;top:0;z-index:60;background:rgba(15,15,12,.86);backdrop-filter:saturate(140%) blur(16px);-webkit-backdrop-filter:saturate(140%) blur(16px);border-bottom:1px solid rgba(236,228,210,.1)}
.hdr-inner{max-width:900px;margin:0 auto;display:flex;align-items:center;gap:20px;padding:12px clamp(16px,4vw,32px)}
.brand{display:flex;align-items:center;gap:10px;border-bottom:0}
.brand img{width:42px;height:42px;object-fit:cover;mix-blend-mode:lighten;filter:brightness(1.15)}
.brand span{display:flex;flex-direction:column;line-height:1.1}
.brand strong{font-size:14.5px;font-weight:700;color:#ece4d2}
.brand em{font-style:normal;font-size:9.5px;color:#bba679;letter-spacing:.2em;text-transform:uppercase;margin-top:2px}
.hdr-nav{margin-left:auto;display:flex;align-items:center;gap:20px}
.hdr-nav a{font-size:13.5px;font-weight:500;color:rgba(236,228,210,.78);border-bottom:0}
.hdr-nav a:hover{color:#ece4d2}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:1px solid rgba(236,228,210,.14);border-radius:10px;color:#ece4d2;cursor:pointer;flex:0 0 auto}
.theme-toggle:hover{background:rgba(236,228,210,.07)}
.theme-toggle .ico-sun{display:none}
html[data-theme="light"] .theme-toggle .ico-sun{display:block}
html[data-theme="light"] .theme-toggle .ico-moon{display:none}
@media (max-width:640px){.hdr-nav{display:none}}

/* ---- body ---- */
.legal{flex:1;max-width:900px;width:100%;margin:0 auto;padding:clamp(48px,7vw,80px) clamp(20px,5vw,32px) 72px}
.eyebrow{margin:0 0 12px;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#bba679}
.legal h1{margin:0 0 14px;font-size:clamp(2rem,4vw,2.9rem);font-weight:800;letter-spacing:-.032em;line-height:1.05;color:#ece4d2}
.legal section{margin-bottom:34px}
.legal h2{margin:0 0 12px;font-size:1.28rem;font-weight:700;letter-spacing:-.02em;color:#ece4d2}
.legal p{margin:0;font-size:1rem;line-height:1.65;color:rgba(236,228,210,.74);max-width:66ch}
/* These two must outrank `.legal p { margin:0 }` above, hence the .legal prefix. */
.legal .updated{margin:0 0 40px;font-size:.9rem;color:rgba(236,228,210,.55)}
.legal .lede{margin:0 0 36px;font-size:1.08rem;line-height:1.65;color:rgba(236,228,210,.78);max-width:66ch;text-wrap:pretty}
.legal p + p,.legal ul + p{margin-top:16px}
.legal .intro-p{margin:0 0 14px}
.legal ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;max-width:66ch}
.legal li{display:flex;gap:11px;align-items:flex-start;font-size:1rem;line-height:1.6;color:rgba(236,228,210,.74)}
.legal li::before{content:"";flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:#a3c061;margin-top:9px}
.card{background:#23221b;border:1px solid rgba(236,228,210,.12);border-radius:14px;padding:24px 26px}
.card h2{margin:0 0 10px;font-size:1.15rem}
.card p{margin:0 0 14px}
.card-contact{display:flex;flex-wrap:wrap;gap:22px}
.card-contact .phone{font-size:1.05rem;font-weight:700;color:#ece4d2;border-bottom:1px solid rgba(205,185,138,.5)}
.card-contact .email{font-size:1.05rem;font-weight:500}
.legal-foot{margin:32px 0 0;font-size:.92rem;line-height:1.6;color:rgba(236,228,210,.5);max-width:66ch}

/* ---- footer ---- */
.foot{background:#161612;color:rgba(239,230,213,.6);padding:26px clamp(20px,5vw,32px);border-top:1px solid rgba(236,228,210,.1)}
.foot-inner{max-width:900px;margin:0 auto;display:flex;gap:20px;flex-wrap:wrap;align-items:center;font-size:.85rem}
.foot-links{margin-left:auto;display:flex;gap:18px;flex-wrap:wrap}
.foot-links a{font-size:.85rem;border-bottom:0;color:rgba(239,230,213,.78)}
.foot-links a:hover{color:#ece4d2}

/* ---- light theme ---- */
html[data-theme="light"] body,
html[data-theme="light"] .page{background:#f3f2ee;color:#16170f}
html[data-theme="light"] .hdr{background:rgba(243,242,238,.9);border-bottom-color:rgba(0,0,0,.09)}
html[data-theme="light"] .hdr img{mix-blend-mode:normal;background:#0f0f0c;border-radius:9px}
html[data-theme="light"] .brand strong{color:#16170f}
html[data-theme="light"] .brand em{color:#6c5d3a}
html[data-theme="light"] .hdr-nav a{color:#3a3a30}
html[data-theme="light"] .theme-toggle{border-color:rgba(0,0,0,.14);color:#16170f}
html[data-theme="light"] .legal h1,
html[data-theme="light"] .legal h2,
html[data-theme="light"] .legal strong{color:#16170f}
html[data-theme="light"] .legal p,
html[data-theme="light"] .legal li,
html[data-theme="light"] .legal em,
html[data-theme="light"] .legal span{color:rgba(22,23,15,.74)}
html[data-theme="light"] .legal a{color:#6c5d3a;border-bottom-color:rgba(108,93,58,.5)}
html[data-theme="light"] .eyebrow{color:#6c5d3a}
html[data-theme="light"] .card{background:#fff;border-color:rgba(0,0,0,.1)}
html[data-theme="light"] .card-contact .phone{color:#16170f}
html[data-theme="light"] .foot{background:#eae8e1;color:rgba(22,23,15,.62);border-top-color:rgba(0,0,0,.09)}
html[data-theme="light"] .foot-links a{color:rgba(22,23,15,.78)}
