/* Shared by the five policy pages (terms-of-use, privacy-policy, copyright-policy,
   cookie-policy, return-policy). Colours match index.html. */
@font-face {
  font-family: 'Coolvetica';
  src: url('/assets/coolvetica_rg.ttf') format('truetype');
  font-display: swap;
}
:root {
  --teal: #37BEC7;
  --teal-deep: #2FA5BC;
  --bubble: #CDEAF2;
  --ink: #14181B;
  --ink-soft: #57636C;
  --ink-faint: #95A1AC;
  --line: #E0E3E7;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 96px; }
body {
  margin: 0; background: #fff; color: var(--ink);
  font-family: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 17px; line-height: 1.65;
}
.legal-wrap { max-width: 760px; margin-inline: auto; padding-inline: 20px; }
.legal-head {
  position: sticky; top: 0; z-index: 2;
  background: rgba(255, 255, 255, .94); border-bottom: 1px solid var(--line);
}
.legal-head .legal-wrap {
  max-width: 1040px; display: flex; align-items: center; gap: 12px 28px; padding-block: 12px;
}
.legal-home { display: block; flex: none; }
.legal-home img { display: block; width: 34px; border-radius: 9px; }
.legal-head nav {
  display: flex; gap: 22px; margin-left: auto; overflow-x: auto; scrollbar-width: none;
  font-size: 15px; white-space: nowrap;
}
.legal-head nav::-webkit-scrollbar { display: none; }
.legal-head nav a { color: var(--ink-soft); text-decoration: none; padding-block: 4px; }
.legal-head nav a:hover { color: var(--ink); }
.legal-head nav a[aria-current] { color: var(--ink); font-weight: 600; box-shadow: inset 0 -2px var(--teal); }
.legal-body { padding-block: 44px 32px; overflow-wrap: anywhere; }
.legal-body h1 { margin: 0; font-size: clamp(34px, 6vw, 46px); line-height: 1.1; font-weight: 700; letter-spacing: -.01em; }
.legal-body .legal-date { margin: 10px 0 0; color: var(--ink-faint); font-size: 15px; }
.legal-body h2 { margin: 40px 0 10px; font-size: 23px; line-height: 1.25; font-weight: 700; }
.legal-body h3 { margin: 28px 0 8px; font-size: 18px; line-height: 1.3; font-weight: 600; }
.legal-body p { margin: 0 0 14px; }
.legal-body ul, .legal-body ol { margin: 0 0 16px; padding-left: 24px; }
.legal-body li { margin-bottom: 8px; }
.legal-body a { color: var(--teal-deep); text-underline-offset: 2px; }
.legal-foot { padding-block: 22px 40px; border-top: 1px solid var(--line); font-size: 13.5px; color: var(--ink-faint); }
@media (max-width: 640px) {
  .legal-head nav { margin-left: 0; gap: 18px; }
}
