/* =================================================================
   YEC. — Legal pages (Terms, Privacy) — self-contained layout
   ================================================================= */

/* top bar */
.legal-top { padding: 26px 0; border-bottom: 1px solid rgba(23,32,41,0.10); }
.legal-topbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.legal-top img { height: 30px; width: auto; display: block; }
.legal-back {
  font-family: var(--font-kicker); font-weight: 600; text-transform: uppercase;
  letter-spacing: 0.12em; font-size: 0.72rem; color: var(--teal);
  display: inline-flex; align-items: center; gap: 0.5em;
}
.legal-back:hover { color: var(--navy); }

/* hero */
.legal-hero { padding: clamp(48px, 8vw, 88px) 0 clamp(28px, 4vw, 44px); }
.legal-hero .kicker { margin-bottom: 20px; }
.legal-updated { color: var(--gray); margin-top: 16px; font-size: 0.98rem; }

/* body */
.legal-body { padding-bottom: clamp(64px, 9vw, 120px); }

.prose { font-size: 1.1rem; line-height: 1.72; color: var(--slate); }
.prose > * + * { margin-top: 1.5em; }
.prose h2 { font-family: var(--font-head); font-weight: 300; font-size: clamp(1.5rem, 2.6vw, 2rem); line-height: 1.12; margin-top: 1.8em; color: var(--navy); letter-spacing: -0.02em; }
.prose h3 { font-family: var(--font-head); font-weight: 400; font-size: 1.3rem; margin-top: 1.6em; color: var(--navy); }
.prose p { text-wrap: pretty; }
.prose ul, .prose ol { padding-left: 1.3em; }
.prose ul { list-style: disc; } .prose ol { list-style: decimal; }
.prose li { margin-top: 0.5em; }
.prose li::marker { color: var(--orange); }
.prose a { color: var(--teal); border-bottom: 1px solid currentColor; }
.prose strong { font-weight: 600; color: var(--navy); }
.prose .lede { font-size: 1.28rem; line-height: 1.5; color: var(--navy); font-weight: 400; }

/* placeholder marker — visible reminder to replace with counsel's copy */
.legal-placeholder {
  display: inline-block; font-family: var(--font-kicker); font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.1em; font-size: 0.6rem;
  color: var(--orange-deep); background: rgba(233,133,0,0.12);
  padding: 2px 8px; margin-bottom: 18px;
}

/* footer */
.legal-foot { padding: 28px 0 40px; border-top: 1px solid rgba(23,32,41,0.10); }
.legal-footbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.legal-foot .copy { font-size: 0.84rem; color: rgba(23,32,41,0.7); }
.legal-foot .legal-links { display: flex; gap: 22px; }
.legal-foot .legal-links a {
  font-family: var(--font-kicker); font-weight: 600; text-transform: uppercase;
  letter-spacing: 0.1em; font-size: 0.7rem; color: var(--gray);
}
.legal-foot .legal-links a:hover { color: var(--navy); }
@media (max-width: 560px){ .legal-footbar { justify-content: center; text-align: center; } }
