/* Rank Hotelier — legal pages (privacy/index.html and its Spanish version). */

.lg-page { min-height: 100vh; display: flex; flex-direction: column; background: var(--rh-surface); }
.lg-main { flex: 1; padding: clamp(40px, 6vw, 72px) clamp(16px, 4vw, 28px) clamp(56px, 8vw, 96px); }
.lg-doc { max-width: 720px; margin: 0 auto; color: var(--rh-gris); font-size: 16px; line-height: 1.65; }

.lg-eyebrow { display: block; font-family: 'Inter', system-ui, sans-serif; font-size: 11px; letter-spacing: 1.8px; text-transform: uppercase; color: #C1482A; }
.lg-doc h1 { margin: 12px 0 0; font-size: clamp(32px, 5vw, 48px); line-height: 1.08; letter-spacing: -0.03em; font-weight: 800; color: var(--rh-navy); }
.lg-updated { margin: 12px 0 28px; font-family: 'Inter', system-ui, sans-serif; font-size: 13px; color: var(--rh-ink-muted); }
.lg-doc h2 { margin: 44px 0 0; scroll-margin-top: 24px; font-size: clamp(21px, 2.4vw, 24px); line-height: 1.2; letter-spacing: -0.4px; font-weight: 800; color: var(--rh-navy); }
.lg-doc h3 { margin: 28px 0 0; font-size: 17px; line-height: 1.3; font-weight: 700; color: var(--rh-navy); }
.lg-doc p, .lg-doc ul { margin: 14px 0 0; }
.lg-doc ul { padding-left: 22px; }
.lg-doc li + li { margin-top: 8px; }
.lg-doc strong { font-weight: 700; color: var(--rh-navy); }
.lg-doc a { color: var(--rh-navy); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.lg-doc a:hover { color: var(--rh-accent-active); }
.lg-doc code { font-family: 'Inter', system-ui, sans-serif; font-size: 0.875em; font-weight: 600; color: var(--rh-navy); background: var(--rh-canvas); border-radius: 4px; padding: 1px 5px; white-space: nowrap; }

/* Tables scroll inside their own box on narrow screens, never the page. */
.lg-table { margin: 14px 0 0; overflow-x: auto; border: 1px solid var(--rh-border); border-radius: var(--rh-radius-card); }
.lg-table:focus-visible { outline: 2px solid var(--rh-navy); outline-offset: 2px; }
.lg-table table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 14.5px; line-height: 1.5; }
.lg-table th { text-align: left; font-family: 'Inter', system-ui, sans-serif; font-size: 11px; font-weight: 600; letter-spacing: 1.4px; text-transform: uppercase; color: #5B564C; background: var(--rh-canvas); padding: 10px 14px; }
.lg-table td { padding: 12px 14px; vertical-align: top; border-top: 1px solid var(--rh-border); }
.lg-table td:first-child code { white-space: normal; }

/* Phones: each row becomes a small block — name and provider, then purpose and duration. */
@media (max-width: 599px) {
  .lg-table { overflow: visible; }
  .lg-table table, .lg-table tbody, .lg-table tr, .lg-table td { display: block; min-width: 0; }
  .lg-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .lg-table tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; padding: 14px; }
  .lg-table tr + tr { border-top: 1px solid var(--rh-border); }
  .lg-table td { padding: 0; border: 0; }
  .lg-table td:nth-child(2) { text-align: right; font-size: 13px; color: var(--rh-ink-muted); }
  .lg-table td:nth-child(n+3) { grid-column: 1 / -1; }
  .lg-table td:nth-child(4) { font-size: 13px; color: var(--rh-ink-muted); }
}
