/* ════════════════════════════════════════════════
   MEYTAIN — Legal pages shared stylesheet
   Simple, clean, mobile-friendly. Max read width 720px.
═══════════════════════════════════════════════════ */

:root {
  --blue: #4d9fff;
  --navy: #060a14;
  --navy2: #0a1020;
  --muted: #5a6a82;
  --muted2: #8294af;
  --white: #e4ecf8;
  --border: rgba(77,159,255,0.12);
  --border-strong: rgba(77,159,255,0.25);
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }

body {
  background:var(--navy);
  color:var(--white);
  font-family:'DM Sans',sans-serif;
  font-weight:400;
  line-height:1.75;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

body::before {
  content:'';
  position:fixed;
  inset:0;
  background-image:
    linear-gradient(rgba(77,159,255,0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(77,159,255,0.025) 1px, transparent 1px);
  background-size:80px 80px;
  pointer-events:none;
  z-index:0;
}

/* Language toggle */
.lang-da .da        { display:block;  }
.lang-da .en        { display:none;   }
.lang-en .da        { display:none;   }
.lang-en .en        { display:block;  }
.lang-da .da-inline { display:inline; }
.lang-da .en-inline { display:none;   }
.lang-en .da-inline { display:none;   }
.lang-en .en-inline { display:inline; }

/* ─── NAV ─── */
.legal-nav {
  position:fixed; top:0; left:0; right:0; z-index:100;
  height:108px;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 4rem;
  background:rgba(6,10,20,0.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
}
.legal-nav a.brand { display:flex; align-items:center; text-decoration:none; }
.legal-nav a.brand img { height:88px; width:auto; object-fit:contain; display:block; margin-left:-19px; }
.legal-nav .right { display:flex; align-items:center; gap:1.5rem; }
.nav-link {
  color:var(--muted); text-decoration:none; font-size:0.8rem;
  letter-spacing:0.08em; text-transform:uppercase; transition:color 0.2s;
}
.nav-link:hover { color:var(--white); }
.lang-btn {
  background:none; border:1px solid var(--border); color:var(--muted);
  padding:0.4rem 0.95rem; font-size:0.75rem; letter-spacing:0.1em;
  cursor:pointer; font-family:'DM Sans',sans-serif; transition:all 0.2s;
}
.lang-btn:hover { border-color:var(--blue); color:var(--white); }

/* ─── PAGE LAYOUT ─── */
.legal-page {
  position:relative; z-index:1;
  max-width:720px;
  margin:0 auto;
  padding:11rem 1.5rem 6rem;
}
.legal-page .crumb {
  font-size:0.72rem; letter-spacing:0.22em; text-transform:uppercase;
  color:var(--blue); margin-bottom:1.25rem;
  display:flex; align-items:center; gap:0.6rem;
}
.legal-page .crumb::before { content:''; width:20px; height:1px; background:var(--blue); }
.legal-page .crumb a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
.legal-page .crumb a:hover { color:var(--blue); }

.legal-page h1 {
  font-family:'Sora',sans-serif;
  font-weight:600;
  font-size:clamp(1.9rem, 3.2vw, 2.6rem);
  line-height:1.2;
  letter-spacing:-0.01em;
  margin-bottom:0.5rem;
  color:var(--white);
}
.legal-page .meta {
  font-size:0.82rem; color:var(--muted2);
  margin-bottom:3rem;
  padding-bottom:1.75rem;
  border-bottom:1px solid var(--border);
}

.legal-page h2 {
  font-family:'Sora',sans-serif;
  font-weight:600;
  font-size:1.15rem;
  letter-spacing:-0.005em;
  margin-top:2.75rem;
  margin-bottom:0.85rem;
  color:var(--white);
}
.legal-page h2:first-of-type { margin-top:0; }

.legal-page h3 {
  font-family:'Sora',sans-serif;
  font-weight:600;
  font-size:0.95rem;
  color:var(--white);
  margin-top:1.75rem;
  margin-bottom:0.5rem;
}

.legal-page p {
  font-size:0.95rem;
  color:var(--muted2);
  line-height:1.8;
  margin-bottom:1rem;
}
.legal-page p:last-child { margin-bottom:0; }
.legal-page strong { color:var(--white); font-weight:500; }
.legal-page a { color:var(--blue); text-decoration:none; border-bottom:1px solid rgba(77,159,255,0.25); transition:border-color 0.2s; }
.legal-page a:hover { border-bottom-color:var(--blue); }

.legal-page ul {
  list-style:none;
  margin:0.5rem 0 1.25rem;
  padding:0;
}
.legal-page ul li {
  font-size:0.95rem; color:var(--muted2); line-height:1.8;
  padding:0.25rem 0 0.25rem 1.5rem; position:relative;
}
.legal-page ul li::before {
  content:'—';
  position:absolute; left:0; top:0.25rem;
  color:var(--blue);
}

/* Section block (numbered terms) */
.legal-page .section {
  padding:0;
  margin-top:2.25rem;
}
.legal-page .section:first-of-type { margin-top:0; }

/* Info card — used on /legal company info */
.info-card {
  background:var(--navy2);
  border:1px solid var(--border);
  padding:2rem 2.25rem;
  margin:1.5rem 0 2.5rem;
}
.info-card .row {
  font-size:0.95rem;
  color:var(--white);
  line-height:1.9;
}
.info-card .row .label {
  display:inline-block;
  min-width:140px;
  color:var(--muted);
  font-size:0.82rem;
  letter-spacing:0.06em;
  text-transform:uppercase;
}

/* Doc-link list (used on /legal) */
.doc-links {
  display:flex; flex-direction:column;
  border-top:1px solid var(--border);
}
.doc-links a {
  display:flex; justify-content:space-between; align-items:center;
  padding:1.1rem 0;
  border-bottom:1px solid var(--border);
  font-size:0.98rem;
  color:var(--white);
  text-decoration:none;
  border-bottom-color:var(--border);
  transition:color 0.2s, padding-left 0.2s;
}
.doc-links a:hover {
  color:var(--blue);
  padding-left:0.5rem;
}
.doc-links a .arrow { color:var(--blue); font-family:'Sora',sans-serif; }

/* ─── FOOTER ─── */
.legal-footer {
  position:relative; z-index:1;
  padding:3rem 4rem 2.5rem;
  border-top:1px solid var(--border);
}
.legal-footer .inner {
  max-width:1400px; margin:0 auto;
  display:flex; justify-content:space-between; align-items:flex-start;
  flex-wrap:wrap; gap:2.5rem;
}
.legal-footer .corp {
  display:flex; flex-direction:column; gap:1rem; max-width:560px;
}
.legal-footer .corp img { height:96px; width:auto; object-fit:contain; display:block; margin-left:-17px; }
.legal-footer .corp p {
  font-size:0.78rem; color:var(--muted); line-height:1.7;
}
.legal-footer .corp .dot {
  color:rgba(77,159,255,0.35); margin:0 0.4rem;
}
.legal-footer .corp a { color:var(--blue); text-decoration:none; }

.legal-footer nav.links {
  display:flex; flex-direction:column; gap:0.55rem; min-width:200px;
}
.legal-footer nav.links .heading {
  font-size:0.68rem; letter-spacing:0.22em; text-transform:uppercase;
  color:var(--blue); margin-bottom:0.35rem;
}
.legal-footer nav.links a {
  font-size:0.82rem; color:var(--muted); text-decoration:none;
  letter-spacing:0.02em; transition:color 0.2s;
}
.legal-footer nav.links a:hover { color:var(--blue); }

/* ─── MOBILE ─── */
@media (max-width:768px) {
  .legal-nav { padding:0 1.2rem; height:80px; }
  .legal-nav a.brand img { height:60px; margin-left:-12px; }
  .legal-nav .right { gap:0.85rem; }
  .legal-nav .nav-link { display:none; }
  .legal-page { padding:8rem 1.25rem 4rem; }
  .info-card { padding:1.5rem 1.25rem; }
  .info-card .row .label { display:block; min-width:0; margin-top:0.5rem; }
  .legal-footer { padding:2.5rem 1.2rem; }
  .legal-footer .inner { flex-direction:column; gap:2rem; }
}
