/*
 Theme Name:   Hello Elementor Child
 Theme URI:    https://elementor.com/hello-theme/
 Description:  Child Theme for Hello Elementor
 Author:       Kristina Peters
 Author URI:   https://www.freieresleben.com/
 Template:     hello-elementor
 Version:      1.0.0
 Text Domain:  hello-elementor-child
*/
/* ==========================================================
   FL LEGAL — Rechtsdokumente (Impressum/Datenschutz/AGB/Widerruf/
   Urheberrecht/Cookie-Richtlinie) — analog .rf-legal von RE|FREEQUENCY,
   FL-Farbwelt (Teal #227874 statt Mint).
   Scope: nur .fl-legal (Wrapper der eingefügten HTML-Fragmente).
   Hinweis: Optik ist für HELLEN Seitenhintergrund ausgelegt.
   ========================================================== */
.fl-legal{
  font-family: "Montserrat", sans-serif;
  max-width: 820px;
  margin: 0 auto;
  padding: clamp(20px, 4.5vw, 52px);
  color: #20302d;
  font-size: clamp(15px, 0.6rem + 0.5vw, 17px);
  line-height: 1.78;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.fl-legal > :first-child{ margin-top: 0; }
.fl-legal > :last-child{ margin-bottom: 0; }
/* ---- Headings ---- */
.fl-legal h1,
.fl-legal h2,
.fl-legal h3{
  font-family: "Montserrat", sans-serif;
  color: #003738;
  line-height: 1.32;
  letter-spacing: 0;
}
.fl-legal h1{
  font-size: clamp(24px, 3vw, 33px);
  font-weight: 700;
  margin: 0 0 1em;
}
.fl-legal h2{
  font-size: clamp(19px, 2.1vw, 23px);
  font-weight: 600;
  margin: 2.9em 0 0.95em;
  padding-bottom: 0.42em;
  border-bottom: 2px solid #91BCBA;
}
.fl-legal h3{
  font-size: clamp(16px, 1.5vw, 18.5px);
  font-weight: 600;
  margin: 2.1em 0 0.6em;
}
/* ---- Fließtext / Listen ---- */
.fl-legal p{ margin: 0 0 1.25em; }
.fl-legal ul,
.fl-legal ol{ margin: 0.4em 0 1.35em; padding-left: 1.5em; }
.fl-legal li{ margin: 0.5em 0; padding-left: 0.15em; }
.fl-legal li::marker{ color: #91BCBA; }
.fl-legal strong{ font-weight: 600; color: #003738; }
.fl-legal a{
  color: #227874;
  text-decoration: underline;
  text-underline-offset: 2px;
  overflow-wrap: anywhere;
}
.fl-legal a:hover{ color: #003738; }
.fl-legal code{
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.92em;
  background: rgba(34, 120, 116, 0.12);
  padding: 0.12em 0.4em;
  border-radius: 6px;
}
/* ---- ENTWURF-Hinweis (blockquote) – vor Livegang entfernen ---- */
.fl-legal blockquote{
  margin: 0 0 2.4em;
  padding: 16px 20px;
  background: rgba(34, 120, 116, 0.08);
  border-left: 4px solid #91BCBA;
  border-radius: 10px;
  font-size: 0.92em;
  color: #3a4a47;
}
.fl-legal blockquote p{ margin: 0; }
/* ---- ENTWURF-Hinweis als <p class="fl-entwurf"> (HTML-Fragment-Variante) ---- */
.fl-legal .fl-entwurf{
  margin: 0 0 2.4em;
  padding: 16px 20px;
  background: rgba(34, 120, 116, 0.08);
  border-left: 4px solid #91BCBA;
  border-radius: 10px;
  font-size: 0.92em;
  color: #3a4a47;
}
/* ---- Tabellen (z. B. Modul-Matrix) ---- */
.fl-legal table{
  width: 100%;
  border-collapse: collapse;
  margin: 0.4em 0 1.6em;
  font-size: 0.95em;
}
.fl-legal th,
.fl-legal td{
  border: 1px solid rgba(0, 55, 56, 0.14);
  padding: 10px 13px;
  text-align: left;
  vertical-align: top;
}
.fl-legal th{
  background: rgba(34, 120, 116, 0.1);
  font-weight: 600;
  color: #003738;
}
/* ---- Trenner (pandoc ---) ---- */
.fl-legal hr{
  border: 0;
  height: 1px;
  background: rgba(0, 55, 56, 0.12);
  margin: 2.6em 0;
}
/* ---- Responsive ---- */
@media (max-width: 600px){
  .fl-legal{ padding: 20px 16px; line-height: 1.7; }
  .fl-legal h2{ margin-top: 2.2em; }
  .fl-legal table{ display: block; overflow-x: auto; }
}