/* ============================================================
   KARADAG DÖNER — Legal Pages (Impressum / AGB / Datenschutz)
   ============================================================ */

/* ── PAGE HERO OVERRIDES ─────────────────────────────────── */
.page-hero { padding: 72px 0 56px; }
.page-hero::before { opacity: .08; }
.page-hero h1 {
  font-size: clamp(2rem, 5vw, 3.4rem);
  font-weight: 900; text-transform: uppercase;
  letter-spacing: -.01em; color: var(--white);
  line-height: 1.1;
}
.page-hero p {
  font-size: .95rem; color: rgba(255,255,255,.55);
  margin-top: 12px; max-width: 480px;
}

/* Breadcrumb tweak */
.breadcrumb span { color: rgba(255,255,255,.7); }

/* ── LAYOUT ──────────────────────────────────────────────── */
.impressum-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 64px;
  padding: 80px 0;
  align-items: start;
}

/* Sticky side nav */
.impressum-sidenav {
  position: sticky;
  top: 92px;
}
.impressum-sidenav p {
  font-size: .7rem; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; color: var(--gray-400);
  margin-bottom: 12px;
}
.impressum-sidenav ul { display: flex; flex-direction: column; gap: 2px; }
.impressum-sidenav a {
  display: block;
  font-size: .82rem; font-weight: 600;
  color: var(--gray-600);
  padding: 8px 12px;
  border-left: 2px solid var(--gray-200);
  border-radius: 0 var(--radius) var(--radius) 0;
  transition: color var(--transition), border-color var(--transition), background var(--transition);
}
.impressum-sidenav a:hover { color: var(--black); border-color: var(--black); background: var(--gray-100); }
.impressum-sidenav a.active { color: var(--red); border-color: var(--red); background: rgba(225,6,0,.05); }

/* Content sections */
.impressum-content { display: flex; flex-direction: column; gap: 56px; }

.imp-section { scroll-margin-top: 100px; }
.imp-section h2 {
  font-size: .68rem; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--red);
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--gray-200);
}
.imp-section h3 {
  font-size: .9rem; font-weight: 800; text-transform: uppercase;
  letter-spacing: .04em; margin-bottom: 8px; margin-top: 24px;
  color: var(--black);
}
.imp-section h3:first-of-type { margin-top: 0; }
.imp-section p {
  font-size: .9rem; color: var(--gray-600); line-height: 1.75;
  margin-bottom: 12px;
}
.imp-section p:last-child { margin-bottom: 0; }
.imp-section a { color: var(--black); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.imp-section a:hover { color: var(--red); }
.imp-section ol {
  list-style: decimal; padding-left: 20px;
  display: flex; flex-direction: column; gap: 10px;
}
.imp-section ol li { font-size: .9rem; color: var(--gray-600); line-height: 1.75; }

/* Info card */
.info-card {
  background: var(--gray-100);
  border-radius: 8px;
  padding: 28px 32px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 48px;
}
.info-card dt {
  font-size: .7rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; color: var(--gray-400);
  margin-bottom: 4px;
}
.info-card dd { font-size: .9rem; font-weight: 600; color: var(--black); line-height: 1.6; }
.info-card dd a { font-weight: 600; color: var(--black); }

/* TODO badge */
.todo-badge {
  display: inline-block;
  background: #FEF3C7; color: #92400E;
  font-size: .7rem; font-weight: 700; letter-spacing: .06em;
  padding: 2px 8px; border-radius: 100px;
  text-transform: uppercase; margin-left: 6px;
  vertical-align: middle;
}

/* Disclaimer box */
.disclaimer-box {
  background: var(--black); color: rgba(255,255,255,.75);
  border-radius: 8px; padding: 24px 28px;
  font-size: .85rem; line-height: 1.7;
  border-left: 4px solid var(--red);
}
.disclaimer-box strong { color: var(--white); }

/* Highlight box */
.highlight-box {
  background: var(--gray-100);
  border-radius: 8px; padding: 24px 28px;
  font-size: .85rem; line-height: 1.7;
  color: var(--gray-600);
  border-left: 4px solid var(--gray-200);
}
.highlight-box strong { color: var(--black); }

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media (max-width: 768px) {
  .impressum-layout { grid-template-columns: 1fr; gap: 0; }
  .impressum-sidenav { display: none; }
  .info-card { grid-template-columns: 1fr; }
}
