/* Shared styles for /terms, /privacy, /cancellations. Mirrors index.html tokens. */
:root{
  --sand-50:#FBFAF6; --sand-100:#F8F5F0; --sand-200:#F1ECE2; --sand-300:#E5DDD0;
  --ink:#1A1A1A; --ink-soft:#6B6258; --line:#E5DDD0;
  --clay:#8A6B3B; --clay-600:#6F562E;
}
*{ box-sizing:border-box }
body{
  margin:0; font-family:'Inter',system-ui,sans-serif; color:var(--ink);
  background:var(--sand-100); font-size:16px; line-height:1.7; -webkit-font-smoothing:antialiased;
}
a{ color:var(--clay-600); text-underline-offset:3px }
a:hover{ color:var(--ink) }
a:focus-visible{ outline:2px solid var(--clay); outline-offset:3px; border-radius:2px }

.top{ border-bottom:1px solid var(--line); background:var(--sand-50) }
.top-inner{ max-width:760px; margin:0 auto; padding:18px 20px; display:flex; justify-content:space-between; align-items:center; gap:16px }
.wordmark{ display:inline-flex; align-items:center; min-height:44px; font-family:'Cinzel',Georgia,serif; font-weight:500; letter-spacing:.42em; text-transform:uppercase; font-size:13px; color:var(--ink); text-decoration:none }
.top nav{ display:flex; gap:4px 18px; flex-wrap:wrap; font-size:13px }
.top nav a{ display:inline-flex; align-items:center; min-height:44px; color:var(--ink-soft); text-decoration:none }
.top nav a[aria-current="page"]{ color:var(--ink); text-decoration:underline }

main{ max-width:760px; margin:0 auto; padding:48px 20px 80px }
h1{ font-family:'Cormorant Garamond',Georgia,serif; font-weight:300; font-size:clamp(36px,6vw,54px); line-height:1.1; margin:0 0 8px }
.updated{ color:var(--ink-soft); font-size:14px; margin:0 0 32px }
.summary{ background:var(--sand-50); border:1px solid var(--line); border-radius:12px; padding:20px 22px; margin:0 0 40px }
.summary h2{ margin-top:0 }
.summary ul{ margin:0; padding-left:20px }
h2{ font-family:'Cormorant Garamond',Georgia,serif; font-weight:400; font-size:clamp(24px,3.6vw,30px); line-height:1.25; margin:44px 0 12px }
h3{ font-size:16px; font-weight:600; margin:24px 0 6px }
p,li{ color:#2B2723 }
li{ margin:6px 0 }
.caps{ text-transform:uppercase; font-size:14px; letter-spacing:.01em }
table{ width:100%; border-collapse:collapse; font-size:15px; margin:12px 0 }
th,td{ text-align:left; vertical-align:top; padding:10px 12px; border-bottom:1px solid var(--line) }
th{ font-weight:600; background:var(--sand-50) }
.table-wrap{ overflow-x:auto }

footer{ border-top:1px solid var(--line); background:var(--sand-50) }
.foot{ max-width:760px; margin:0 auto; padding:24px 20px; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:13px; color:var(--ink-soft) }
.foot a{ display:inline-block; padding:12px 2px; color:var(--ink-soft) }
