/* Legal pages: local reset and accessible editorial layout */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body, h1, h2, h3, p, ul { margin: 0; }
body {
  min-height: 100vh;
  background: #f4efe6;
  color: #171719;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  line-height: 1.72;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { max-width: 100%; height: auto; }
a { color: #6e1d2d; text-underline-offset: .18em; }
a:hover { color: #48101d; }
a:focus-visible { outline: 3px solid #c8a86a; outline-offset: 3px; }
.skip-link { position: fixed; top: -5rem; left: 1rem; z-index: 100; background: #fffaf1; color: #171719; padding: .75rem 1rem; border-radius: 8px; box-shadow: 0 12px 30px rgba(0,0,0,.14); }
.skip-link:focus { top: 1rem; }
.legal-header { background: #0e0f11; color: #fff; border-bottom: 1px solid rgba(255,255,255,.1); }
.legal-nav { max-width: 1160px; margin: 0 auto; padding: 1rem 24px; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
.brand { color: #fff; text-decoration: none; font-family: Georgia, "Times New Roman", serif; font-size: 1.45rem; font-weight: 700; }
.legal-nav-links { display: flex; flex-wrap: wrap; gap: .65rem 1rem; }
.legal-nav-links a { color: rgba(255,255,255,.78); text-decoration: none; font-size: .92rem; }
.legal-nav-links a:hover { color: #fff; }
.legal-hero { background: linear-gradient(130deg, #111214, #2d1219); color: #fff; }
.legal-hero-inner { max-width: 980px; margin: 0 auto; padding: 74px 24px 64px; }
.eyebrow { color: #e4d2ad; font-size: .78rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; margin-bottom: .8rem; }
h1, h2, h3 { font-family: Georgia, "Times New Roman", serif; letter-spacing: -.018em; overflow-wrap: anywhere; hyphens: auto; }
h1 { font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1.05; margin-bottom: 1rem; }
.legal-hero p { max-width: 760px; color: rgba(255,255,255,.74); }
.legal-layout { max-width: 980px; margin: 0 auto; padding: 60px 24px 80px; }
.legal-intro { font-size: 1.08rem; color: #393638; padding: 1.25rem 1.35rem; background: #fffaf1; border: 1px solid rgba(17,18,20,.12); border-left: 4px solid #c8a86a; border-radius: 10px; margin-bottom: 2.5rem; }
.legal-section { padding: 2rem 0; border-top: 1px solid rgba(17,18,20,.13); }
.legal-section:first-of-type { border-top: 0; }
h2 { font-size: clamp(1.7rem, 3vw, 2.25rem); line-height: 1.15; margin-bottom: 1rem; }
h3 { font-size: 1.22rem; line-height: 1.3; margin: 1.35rem 0 .55rem; }
p + p { margin-top: .85rem; }
ul { padding-left: 1.35rem; margin-top: .75rem; }
li + li { margin-top: .45rem; }
.contact-box { margin-top: 1.1rem; padding: 1rem 1.15rem; background: #ebe3d8; border-radius: 10px; }
.legal-note { color: #5f5b58; font-size: .93rem; }
.legal-footer { background: #0d0e10; color: rgba(255,255,255,.68); }
.legal-footer-inner { max-width: 1160px; margin: 0 auto; padding: 36px 24px; }
.legal-footer-links { display: flex; flex-wrap: wrap; gap: .75rem 1rem; margin-bottom: 1rem; }
.legal-footer a { color: rgba(255,255,255,.82); }
.legal-footer p { font-size: .9rem; }
@media (max-width: 720px) {
  h1 { font-size: clamp(1.5rem, 6.8vw, 2.25rem); line-height: 1.15; }
  h2 { font-size: clamp(1.3rem, 5.6vw, 1.7rem); line-height: 1.2; }
  .legal-nav { align-items: flex-start; flex-direction: column; }
  .legal-nav-links { gap: .5rem .8rem; }
  .legal-hero-inner { padding-top: 52px; padding-bottom: 48px; }
  .legal-layout { padding-top: 42px; padding-bottom: 58px; }
}
