/*
  Legal pages (/privacy-policy, /terms-of-use). No image hero needed here —
  a plain deep-background title band instead — followed by a two-column
  layout: sticky in-page nav + prose sections. Namespaced .xrt-legal-*,
  relies on the --xrt-* tokens defined on .xrt-scope in layout.css (same
  convention as about.css/contact.css). Mobile-first; the nav column drops
  above the content and stops being sticky below the 900px breakpoint.
*/

.xrt-legal-hero{background:var(--xrt-deep);padding:48px 0 40px}
.xrt-legal-hero__inner{max-width:1120px;margin:0 auto;padding:0 16px}
.xrt-legal-hero__eyebrow{font-family:var(--xrt-font-h);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--xrt-lime)}
.xrt-legal-hero__title{font-family:var(--xrt-font-h);font-weight:800;font-size:clamp(28px,4.4vw,42px);letter-spacing:-.02em;color:#fff;margin:12px 0 0}
.xrt-legal-hero__meta{font-family:var(--xrt-font-b);font-size:13px;color:var(--xrt-on-deep-muted);margin:12px 0 0}
@media(min-width:768px){.xrt-legal-hero{padding:64px 0 52px}.xrt-legal-hero__inner{padding:0 24px}}

.xrt-legal{max-width:1120px;margin:0 auto;padding:40px 16px 72px}
@media(min-width:768px){.xrt-legal{padding:56px 24px 96px}}

.xrt-legal__layout{display:flex;flex-direction:column;gap:32px}
@media(min-width:900px){.xrt-legal__layout{flex-direction:row;align-items:flex-start;gap:56px}}

/* ---- in-page nav ------------------------------------------------------ */
.xrt-legal-nav{background:var(--xrt-cream);border:1px solid var(--xrt-border);border-radius:var(--xrt-r-lg);padding:18px 20px}
.xrt-legal-nav__title{font-family:var(--xrt-font-h);font-weight:700;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--xrt-teal);margin:0 0 10px}
.xrt-legal-nav ol{list-style:none;margin:0;padding:0;counter-reset:legal-nav;display:grid;grid-template-columns:1fr;gap:2px}
@media(min-width:560px) and (max-width:899px){.xrt-legal-nav ol{grid-template-columns:1fr 1fr}}
.xrt-legal-nav li{counter-increment:legal-nav}
.xrt-legal-nav a{display:block;font-family:var(--xrt-font-b);font-size:13.5px;line-height:1.5;color:#4c5a54;text-decoration:none;padding:5px 0}
.xrt-legal-nav a::before{content:counter(legal-nav)'. ';color:var(--xrt-teal);font-weight:700}
.xrt-legal-nav a:hover{color:var(--xrt-teal);text-decoration:underline;text-underline-offset:2px}
@media(min-width:900px){
  .xrt-legal-nav{flex:0 0 240px;position:sticky;top:24px}
  .xrt-legal-nav ol{grid-template-columns:1fr}
}

/* ---- prose sections ---------------------------------------------------- */
.xrt-legal-body{flex:1 1 auto;min-width:0}
.xrt-legal-body p{font-family:var(--xrt-font-b);font-size:14.5px;line-height:1.75;color:#4c5a54;margin:0 0 14px}
.xrt-legal-body p:last-child{margin-bottom:0}
.xrt-legal-section{padding-top:36px;margin-top:36px;border-top:1px solid var(--xrt-border-light)}
.xrt-legal-section:first-child{padding-top:0;margin-top:0;border-top:none}
.xrt-legal-section__title{font-family:var(--xrt-font-h);font-weight:800;font-size:clamp(19px,2.4vw,24px);color:var(--xrt-ink);letter-spacing:-.01em;margin:0 0 14px;scroll-margin-top:24px}
.xrt-legal-body h3{font-family:var(--xrt-font-h);font-weight:700;font-size:15.5px;color:var(--xrt-ink);letter-spacing:-.005em;margin:20px 0 8px}
.xrt-legal-body ul{margin:0 0 14px;padding-left:20px}
.xrt-legal-body li{font-family:var(--xrt-font-b);font-size:14.5px;line-height:1.7;color:#4c5a54;margin:0 0 6px}
.xrt-legal-body li:last-child{margin-bottom:0}
.xrt-legal-body li strong{color:var(--xrt-ink)}
.xrt-legal-body a{color:var(--xrt-teal);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.xrt-legal-body a:hover{color:var(--xrt-deep)}

.xrt-legal-table-wrap{overflow-x:auto;margin:0 0 14px;border:1px solid var(--xrt-border);border-radius:var(--xrt-r-md)}
.xrt-legal-table{width:100%;border-collapse:collapse;font-family:var(--xrt-font-b);font-size:13.5px;min-width:520px}
.xrt-legal-table th,.xrt-legal-table td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--xrt-border-light);vertical-align:top;color:#4c5a54}
.xrt-legal-table th{font-family:var(--xrt-font-h);font-weight:700;font-size:12px;letter-spacing:.02em;text-transform:uppercase;color:var(--xrt-ink);background:var(--xrt-cream)}
.xrt-legal-table tr:last-child td{border-bottom:none}

.xrt-legal-contact{background:var(--xrt-cream);border:1px solid var(--xrt-border);border-radius:var(--xrt-r-lg);padding:22px 24px;margin-top:6px}
.xrt-legal-contact p{margin:0 0 4px}
.xrt-legal-contact p:last-child{margin-bottom:0}
