/* Crush Diet — shared styles for legal pages (Terms, Privacy) */
:root{
  --ivory:#F2EDE3;--paper:#F7F3EB;--charcoal:#1B1915;
  --ink-70:rgba(27,25,21,.70);--ink-60:rgba(27,25,21,.62);--ink-52:rgba(27,25,21,.52);--ink-38:rgba(27,25,21,.38);
  --hair:rgba(27,25,21,.16);--hair-soft:rgba(27,25,21,.09);
  --oxblood:#6C2130;--brandmark:#6C2130;
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --grotesk:"Schibsted Grotesk","Helvetica Neue",Arial,sans-serif;
  --mono:"Space Mono",ui-monospace,Menlo,monospace;
  --pad:clamp(1.25rem,5vw,5.5rem);--maxw:1500px;--ease:cubic-bezier(.22,.61,.36,1);
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --ivory:#17150F;--paper:#1E1B15;--charcoal:#EBE4D6;
  --ink-70:rgba(235,228,214,.72);--ink-60:rgba(235,228,214,.62);--ink-52:rgba(235,228,214,.54);--ink-38:rgba(235,228,214,.40);
  --hair:rgba(235,228,214,.18);--hair-soft:rgba(235,228,214,.10);
  --oxblood:#C15A6B;--brandmark:#ffffff;
}}
:root[data-theme="dark"]{
  --ivory:#17150F;--paper:#1E1B15;--charcoal:#EBE4D6;
  --ink-70:rgba(235,228,214,.72);--ink-60:rgba(235,228,214,.62);--ink-52:rgba(235,228,214,.54);--ink-38:rgba(235,228,214,.40);
  --hair:rgba(235,228,214,.18);--hair-soft:rgba(235,228,214,.10);
  --oxblood:#C15A6B;--brandmark:#ffffff;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:var(--grotesk);font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit}
::selection{background:var(--oxblood);color:#F2EDE3}
:focus-visible{outline:2px solid var(--oxblood);outline-offset:3px}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.label{font-family:var(--grotesk);font-size:.68rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-60)}

/* header */
header{border-bottom:1px solid var(--hair)}
.nav{display:flex;align-items:center;justify-content:space-between;max-width:var(--maxw);margin:0 auto;padding:clamp(1rem,2.3vw,1.6rem) var(--pad)}
.brand{font-family:var(--serif);font-weight:500;font-size:clamp(1.25rem,2.3vw,1.5rem);line-height:1;display:inline-flex;align-items:center;gap:.3em;color:var(--charcoal);text-decoration:none}
.brand .amp{color:var(--oxblood);font-style:italic}
.brand-mark{width:1.5em;height:2.25em;flex:0 0 auto;background-color:var(--brandmark);
  -webkit-mask:url(images/logo-mark-maroon-512.png) center/contain no-repeat;mask:url(images/logo-mark-maroon-512.png) center/contain no-repeat}
@supports not ((-webkit-mask:url(#a)) or (mask:url(#a))){ .brand-mark{display:none} }
.nav-right{display:flex;align-items:center;gap:clamp(.9rem,2vw,1.6rem)}
.nav-back{font-size:.74rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-70);text-decoration:none;transition:color .25s var(--ease)}
.nav-back:hover{color:var(--charcoal)}
.lang{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:500}
.lang-btn{background:none;border:none;cursor:pointer;font:inherit;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-38);padding:.2rem .1rem;transition:color .25s var(--ease)}
.lang-btn:hover{color:var(--ink-70)}
.lang-btn.active{color:var(--charcoal)}
.lang-sep{color:var(--ink-38)}
[hidden]{display:none!important}

/* hero */
.legal-hero{padding-block:clamp(3rem,8vw,6rem) clamp(1.5rem,4vw,2.5rem)}
.legal-hero .label{margin-bottom:1.2rem}
.legal-hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(2.6rem,7vw,5rem);line-height:1;letter-spacing:-.02em;margin:0}
.legal-hero .updated{margin-top:1.4rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.03em;color:var(--ink-52)}
hr.divide{height:1px;background:var(--hair);border:none;margin:0}

/* prose */
.prose{max-width:72ch;padding-block:clamp(2.5rem,6vw,4.5rem) clamp(3rem,7vw,6rem)}
.prose .lede{font-family:var(--serif);font-weight:300;font-size:clamp(1.25rem,2.4vw,1.7rem);line-height:1.3;color:var(--charcoal);margin:0 0 clamp(2rem,4vw,3rem)}
.prose h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.35rem,2.4vw,1.9rem);line-height:1.1;letter-spacing:-.01em;margin:clamp(2.4rem,5vw,3.4rem) 0 .8rem}
.prose h2:first-of-type{margin-top:0}
.prose p{margin:0 0 1.1rem;color:var(--ink-70)}
.prose ul{margin:0 0 1.1rem;padding-left:1.1rem;color:var(--ink-70)}
.prose li{margin:0 0 .5rem}
.prose strong{color:var(--charcoal);font-weight:600}
.prose a{color:var(--oxblood);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.prose a:hover{text-decoration-thickness:2px}
.prose .small{font-size:.85rem;color:var(--ink-52)}

/* footer */
footer{background:#1B1915;color:#F2EDE3}
.foot{max-width:var(--maxw);margin:0 auto;padding:clamp(2.5rem,5vw,3.5rem) var(--pad);
  display:flex;justify-content:space-between;align-items:center;gap:1.5rem 2rem;flex-wrap:wrap}
.foot .brand{color:#F2EDE3}
.foot-links{display:flex;gap:1.4rem;flex-wrap:wrap}
.foot-links a{font-size:.8rem;letter-spacing:.06em;color:rgba(242,237,227,.72);text-decoration:none;transition:color .25s var(--ease)}
.foot-links a:hover{color:#fff}
.foot-legal{width:100%;border-top:1px solid rgba(242,237,227,.16);margin-top:.5rem;padding-top:1.4rem;font-size:.74rem;color:rgba(242,237,227,.45);letter-spacing:.02em}
@media(max-width:600px){.foot{flex-direction:column;align-items:flex-start}}
