/*
Theme Name: RE|FREEQUENCY Child
Theme URI: https://www.refreequency.com
Description: Child Theme für RE|FREEQUENCY – Custom Login & Access Styling
Author: Kristina Peters
Author URI: https://www.refreequency.com
Template: hello-elementor
Version: 1.0.0
Text Domain: refreequency-child
*/

/* ==========================================================
   GLOBAL: Hide CleanTalk special field (used across pages)
   ========================================================== */
.apbct_special_field{
  display: none !important;
}

/* ==========================================================
   RF LEGAL — Rechtsdokumente (Impressum/Datenschutz/AGB/Widerruf/Urheberrecht)
   ----------------------------------------------------------
   Scope: nur .rf-legal (Wrapper der eingefügten HTML-Fragmente).
   Erbt RF-Tokens (rf-tokens.css ist global enqueued).
   Behebt die fehlenden Heading-Abstände (Hello-Elementor-Reset),
   setzt CI (Montserrat + Mint-Akzent), lesbar auf hellem Seiten-BG,
   responsiv. Keine !important nötig (eigener Scope).
   Hinweis: Optik ist für HELLEN Seitenhintergrund ausgelegt.
   (Dark-Water-Variante auf Anfrage.)
   ========================================================== */
.rf-legal{
  font-family: var(--rf-font-family, "Montserrat", sans-serif);
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(16px, 4vw, 40px);
  color: #20302d;
  font-size: clamp(15px, 0.6rem + 0.5vw, 17px);
  line-height: 1.72;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.rf-legal > :first-child{ margin-top: 0; }
.rf-legal > :last-child{ margin-bottom: 0; }

/* ---- Headings: das eigentliche Abstands-Fix ---- */
.rf-legal h1,
.rf-legal h2,
.rf-legal h3{
  font-family: var(--rf-font-family, "Montserrat", sans-serif);
  color: var(--rf-color-ink, #0b1f1d);
  line-height: 1.3;
  letter-spacing: 0;
}
.rf-legal h1{
  font-size: clamp(24px, 3vw, 33px);
  font-weight: 700;
  margin: 0 0 0.7em;
}
.rf-legal h2{
  font-size: clamp(19px, 2.1vw, 23px);
  font-weight: 600;
  margin: 2.1em 0 0.6em;
  padding-bottom: 0.32em;
  border-bottom: 2px solid var(--rf-color-mint-strong, #9bf5e8);
}
.rf-legal h3{
  font-size: clamp(16px, 1.5vw, 18.5px);
  font-weight: 600;
  margin: 1.7em 0 0.45em;
}

/* ---- Fließtext / Listen ---- */
.rf-legal p{ margin: 0 0 1.05em; }
.rf-legal ul,
.rf-legal ol{ margin: 0 0 1.1em; padding-left: 1.45em; }
.rf-legal li{ margin: 0.35em 0; }
.rf-legal li::marker{ color: var(--rf-color-mint-soft, #a7e0d8); }
.rf-legal strong{ font-weight: 600; color: var(--rf-color-ink, #0b1f1d); }

.rf-legal a{
  color: #0f766e;
  text-decoration: underline;
  text-underline-offset: 2px;
  overflow-wrap: anywhere;
}
.rf-legal a:hover{ color: var(--rf-color-ink, #0b1f1d); }

.rf-legal code{
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.92em;
  background: rgba(155, 245, 232, 0.18);
  padding: 0.12em 0.4em;
  border-radius: 6px;
}

/* ---- ENTWURF-Hinweis (blockquote) – vor Livegang entfernen ---- */
.rf-legal blockquote{
  margin: 0 0 1.8em;
  padding: 14px 18px;
  background: rgba(155, 245, 232, 0.12);
  border-left: 4px solid var(--rf-color-mint-strong, #9bf5e8);
  border-radius: 10px;
  font-size: 0.92em;
  color: #3a4a47;
}
.rf-legal blockquote p{ margin: 0; }

/* ---- Tabellen (z. B. Modul-Matrix) ---- */
.rf-legal table{
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 1.3em;
  font-size: 0.95em;
}
.rf-legal th,
.rf-legal td{
  border: 1px solid rgba(11, 31, 29, 0.14);
  padding: 8px 11px;
  text-align: left;
  vertical-align: top;
}
.rf-legal th{
  background: rgba(155, 245, 232, 0.16);
  font-weight: 600;
  color: var(--rf-color-ink, #0b1f1d);
}

/* ---- Trenner (pandoc ---) ---- */
.rf-legal hr{
  border: 0;
  height: 1px;
  background: rgba(11, 31, 29, 0.12);
  margin: 2.2em 0;
}

/* ---- Responsive ---- */
@media (max-width: 600px){
  .rf-legal{ padding: 16px 14px; line-height: 1.66; }
  .rf-legal h2{ margin-top: 1.7em; }
  .rf-legal table{ display: block; overflow-x: auto; }
}