/* Shared styles for /terms, /privacy and /cookies. Tokens and header/footer match index.html. */
:root{
  --charcoal:#383025; --cream:#F0E8C8;
  --ink:#383025; --ink-soft:#6A5E4C;
  --bg:#F7F2E2; --surface:#FBF8EE; --travertine:#E3D7BD; --oak:#A8845A;
  --rule:rgba(56,48,37,.18);
  --hero-bg:#383025; --hero-ink:#F0E8C8; --hero-soft:rgba(240,232,200,.68); --hero-rule:rgba(240,232,200,.2);
  --serif:"Playfair Display", Georgia, "Times New Roman", serif;
  --sans:"Montserrat", "Helvetica Neue", Arial, sans-serif;
  --wrap:1180px; --gut:clamp(20px,5vw,56px);
  box-sizing:border-box;
}
*,*::before,*::after{box-sizing:inherit}
html{-webkit-text-size-adjust:100%;scroll-padding-top:100px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7}
a{color:inherit}
:focus-visible{outline:2px solid var(--oak);outline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}

/* Header */
.site-head{position:sticky;top:0;z-index:10;background:var(--hero-bg);color:var(--hero-ink);border-bottom:1px solid var(--hero-rule)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;min-height:80px;gap:24px}
.mark{display:block;text-decoration:none;line-height:0}
.mark svg{display:block;height:50px;width:auto}
.btn-line{color:var(--hero-ink);border:1px solid var(--hero-ink);padding:9px 16px;border-radius:2px;text-decoration:none;font-size:14px;white-space:nowrap}
.btn-line:hover{background:var(--hero-ink);color:var(--charcoal)}
.t-short{display:none}
@media (max-width:600px){.btn-line .t-long{display:none}.btn-line .t-short{display:inline}}
@media (max-width:520px){
  .mark svg{height:40px}
  .site-head .wrap{min-height:68px}
  .btn-line{padding:8px 12px;font-size:13px}
}
@media (max-width:374px){.mark svg{height:34px}.btn-line{padding:8px 10px;font-size:12.5px}}

/* Document */
.legal .wrap{max-width:820px;padding-top:clamp(40px,7vw,80px);padding-bottom:clamp(64px,9vw,112px)}
.legal-tabs{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--rule);padding-bottom:14px}
.legal-tabs a{text-decoration:none;color:var(--ink-soft)}
.legal-tabs a:hover{color:var(--ink)}
.legal-tabs a[aria-current="page"]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--oak);text-underline-offset:6px}
.legal h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4.6vw,52px);line-height:1.1;letter-spacing:-.01em;margin:36px 0 0}
.updated{margin:12px 0 0;font-size:14px;color:var(--ink-soft)}
.doc{margin-top:clamp(32px,5vw,48px)}
.doc p,.doc li{color:var(--ink-soft)}
.doc p{margin:0 0 1em}
.doc strong{color:var(--ink);font-weight:600}
.doc a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--oak);text-underline-offset:3px;overflow-wrap:anywhere}
.doc h2{display:flex;gap:14px;font-family:var(--serif);font-weight:500;font-size:clamp(22px,2.4vw,26px);line-height:1.3;margin:clamp(40px,5vw,52px) 0 16px;padding-top:24px;border-top:1px solid var(--rule)}
.doc h2 .n,.doc h3 .n{color:var(--oak);font-variant-numeric:lining-nums;flex:none}
.doc h3{display:flex;gap:12px;font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.35;margin:28px 0 10px}
.doc h4{font-size:15px;font-weight:600;color:var(--ink);margin:24px 0 8px}
.doc ul{margin:0 0 1.1em;padding-left:22px}
.doc li{margin:0 0 6px;padding-left:4px}
.doc li::marker{color:var(--oak)}
.doc .row-h{margin:0;padding:18px 0 6px;border-top:1px solid var(--rule)}
.doc .row-h + p{margin-bottom:6px}
.doc .contact-line{margin:0 0 4px}

/* Footer */
footer{background:var(--hero-bg);color:var(--hero-soft);font-size:13px;border-top:1px solid var(--hero-rule)}
footer .row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:28px;padding-bottom:28px}
footer .foot-left{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px}
footer .legal-links{display:flex;gap:16px}
footer .legal-links a{text-decoration:none;color:var(--hero-soft)}
footer .legal-links a:hover{color:var(--hero-ink)}
footer .social{display:flex;align-items:center;gap:16px}
footer .social a{display:inline-flex;padding:6px;margin:-6px;color:var(--hero-ink);opacity:.7;transition:opacity .2s}
footer .social a:hover,footer .social a:focus-visible{opacity:1}
