/*
Theme Name: Hautarztpraxis Friedrichshagen
Theme URI: https://www.hautarztpraxis-friedrichshagen.de/
Author: Hautarztpraxis Friedrichshagen
Description: Individuelles Theme für die Hautarztpraxis Friedrichshagen (Dr. Wolfram Skarabis und Stefanie Florek), auf Basis des Redesign-Konzepts. Team, Leistungen und Kontaktdaten lassen sich vollständig im WordPress-Backend pflegen.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: hautarztpraxis-friedrichshagen
*/

:root{
    --primary:#145c58;
    --primary-dark:#0c3532;
    --primary-light:#e7f1ef;
    --accent:#96a17e;
    --accent-dark:#565c46;
    --accent-light:#eef0e7;
    --warn:#a97b45;
    --warn-dark:#8c6236;
    --warn-light:#f6ede0;
    --bg:#faf8f4;
    --surface:#ffffff;
    --ink:#262620;
    --muted:#726f64;
    --line:#e3e6dd;
    --shadow:0 20px 46px -24px rgba(12,53,50,.22);
    --shadow-soft:0 8px 24px -14px rgba(12,53,50,.16);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Inter', system-ui, sans-serif;
    color:var(--ink);
    background:var(--bg);
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,h4,.brand{ font-family:'Fraunces', serif; font-weight:500; letter-spacing:-0.01em; }
  em{ font-style:italic; color:var(--accent-dark); }
  a{ color:inherit; text-decoration:none; }
  img{ max-width:100%; display:block; }
  .container{ width:100%; max-width:1160px; margin:0 auto; padding:0 28px; }
  section{ padding:112px 0; position:relative; }
  .eyebrow{
    display:inline-flex; align-items:center; gap:10px;
    color:var(--accent-dark);
    font-family:'Inter',sans-serif; font-weight:600; font-size:.76rem; letter-spacing:.14em; text-transform:uppercase;
    margin-bottom:22px;
  }
  .eyebrow::before{ content:""; width:26px; height:1px; background:var(--accent); display:inline-block; }
  h2.section-title{ font-size:clamp(1.9rem,3.3vw,2.7rem); font-weight:500; margin-bottom:16px; line-height:1.18; }
  p.section-sub{ color:var(--muted); font-size:1.05rem; max-width:600px; font-weight:400; }
  .reveal{ opacity:0; transform:translateY(24px); transition:opacity .8s cubic-bezier(.22,.61,.36,1), transform .8s cubic-bezier(.22,.61,.36,1); }
  .reveal.in{ opacity:1; transform:none; }

  /* Header */
  header{
    position:fixed; top:0; left:0; right:0; z-index:1000;
    background:rgba(250,248,244,.7);
    backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
    border-bottom:1px solid transparent;
    transition:border-color .3s ease, box-shadow .3s ease, background .3s ease;
  }
  header.scrolled{ border-color:var(--line); background:rgba(250,248,244,.94); }
  .nav-wrap{ display:flex; align-items:center; justify-content:space-between; padding-top:20px; padding-bottom:20px; }
  .brand{ display:flex; align-items:center; gap:12px; font-weight:500; font-size:1.15rem; color:var(--primary-dark); }
  .brand-mark{ height:84px; width:auto; display:block; flex:none; }
  footer .brand-mark{ height:100px; }
  nav ul{ list-style:none; display:flex; gap:34px; }
  nav a{ font-family:'Inter',sans-serif; font-weight:500; font-size:.86rem; letter-spacing:.02em; color:var(--ink); position:relative; padding:4px 0; }
  nav a::after{ content:""; position:absolute; left:0; bottom:-4px; width:0; height:1px; background:var(--accent); transition:width .25s ease; }
  nav a:hover::after, nav a.active::after{ width:100%; }
  .nav-actions{ display:flex; align-items:center; gap:22px; }
  .phone-link{ font-family:'Inter',sans-serif; font-weight:500; font-size:.86rem; color:var(--primary-dark); display:flex; align-items:center; gap:7px; }
  .btn{
    display:inline-flex; align-items:center; gap:8px; justify-content:center;
    font-family:'Inter',sans-serif;
    padding:13px 26px; border-radius:999px; font-weight:600; font-size:.86rem; letter-spacing:.01em;
    cursor:pointer; border:1px solid transparent; transition:transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .btn-primary{ background:var(--primary-dark); color:#fdfbf7; }
  .btn-primary:hover{ background:var(--primary); box-shadow:var(--shadow-soft); transform:translateY(-1px); }
  .btn-ghost{ background:transparent; color:var(--primary-dark); border-color:var(--line); }
  .btn-ghost:hover{ border-color:var(--accent); color:var(--accent-dark); }
  .btn-text{ font-family:'Inter',sans-serif; font-weight:600; font-size:.88rem; color:var(--primary-dark); display:inline-flex; align-items:center; gap:8px; position:relative; padding:6px 0; border:none; background:none; }
  .btn-text::after{ content:""; position:absolute; left:0; bottom:0; width:100%; height:1px; background:currentColor; opacity:.35; }
  .btn-text:hover{ color:var(--accent-dark); }
  .btn-text svg{ transition:transform .25s ease; }
  .btn-text:hover svg{ transform:translateX(4px); }
  .hamburger{ display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:6px; }
  .hamburger span{ width:22px; height:1px; background:var(--ink); }

  /* Hero */
  .hero{ padding:234px 0 110px; position:relative; overflow:hidden; }
  .hero::before{
    content:""; position:absolute; top:-140px; right:-160px; width:560px; height:560px; border-radius:50%;
    background:radial-gradient(circle at 40% 40%, #e7ede2 0%, transparent 68%); z-index:0;
  }
  .hero-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:70px; align-items:center; position:relative; z-index:1; }
  .hero h1{ font-size:clamp(2.3rem,4.3vw,3.5rem); font-weight:500; line-height:1.16; margin-bottom:22px; }
  .hero p.lead{ font-size:1.08rem; color:var(--muted); max-width:500px; margin-bottom:36px; font-weight:400; }
  .hero-cta{ display:flex; align-items:center; gap:26px; flex-wrap:wrap; margin-bottom:46px; }
  .hero-facts{ display:flex; gap:0; flex-wrap:wrap; border-top:1px solid var(--line); padding-top:26px; }
  .fact{ padding-right:32px; margin-right:32px; border-right:1px solid var(--line); }
  .fact:last-child{ border-right:none; margin-right:0; padding-right:0; }
  .fact strong{ display:block; font-size:1.7rem; font-weight:500; color:var(--primary-dark); font-family:'Fraunces',serif; margin-bottom:2px; }
  .fact span{ font-size:.78rem; color:var(--muted); }
  .hero-visual{ position:relative; }
  .hero-photo{ border-radius:6px; overflow:hidden; margin-bottom:18px; border:1px solid var(--line); }
  .hero-photo img{ width:100%; aspect-ratio:3/2; object-fit:cover; display:block; }
  .hero-photo figcaption{ font-family:'Inter',sans-serif; font-size:.74rem; color:var(--muted); padding:10px 2px 0; letter-spacing:.02em; }
  .hero-panel{
    background:var(--primary-dark); color:#f2efe8; border-radius:6px;
    padding:44px 38px; position:relative;
  }
  .hero-panel::before{
    content:""; position:absolute; inset:10px; border:1px solid rgba(242,239,232,.18); border-radius:2px; pointer-events:none;
  }
  .hero-panel .tag{ display:inline-flex; align-items:center; gap:8px; font-family:'Inter',sans-serif; color:#cdd6c6; font-weight:600; font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; margin-bottom:18px; }
  .hero-panel .tag::before{ content:""; width:18px; height:1px; background:#a5b39a; }
  .hero-panel h3{ font-size:1.4rem; margin-bottom:14px; font-weight:500; }
  .hero-panel p{ color:#c9d0c1; font-size:.94rem; margin-bottom:22px; }
  .hero-panel .panel-foot{ display:flex; justify-content:space-between; align-items:center; border-top:1px solid rgba(242,239,232,.16); padding-top:18px; font-family:'Inter',sans-serif; font-size:.82rem; color:#c9d0c1; }

  .notice-bar{
    margin-top:0; display:flex; gap:16px; align-items:flex-start;
    border-left:2px solid var(--warn);
    padding:4px 0 4px 20px; font-size:.9rem; max-width:560px; color:var(--muted);
  }
  .notice-bar strong{ color:var(--ink); font-weight:600; }

  /* Über uns */
  .about-grid{ display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:center; }
  .quote-card{
    background:var(--primary-dark); color:#f2efe8; border-radius:4px; padding:48px 40px; position:relative;
  }
  .quote-card::before{ content:"\201C"; position:absolute; top:14px; left:34px; font-family:'Fraunces',serif; font-size:4rem; color:rgba(242,239,232,.18); line-height:1; }
  .quote-card p{ font-size:1.5rem; font-weight:500; font-style:italic; font-family:'Fraunces',serif; line-height:1.35; position:relative; z-index:1; }
  .quote-card span{ display:block; margin-top:22px; font-size:.82rem; font-family:'Inter',sans-serif; color:#b8c1af; letter-spacing:.03em; }
  .value-list{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); border:1px solid var(--line); }
  .value{ background:var(--bg); padding:30px 26px; transition:background .25s ease; }
  .value:hover{ background:var(--surface); }
  .value .ic{ width:34px; height:34px; border-radius:50%; border:1px solid var(--accent); color:var(--accent-dark); display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
  .value h4{ font-size:1.02rem; margin-bottom:8px; font-weight:500; }
  .value p{ font-size:.86rem; color:var(--muted); }

  /* Team */
  .team-section{ background:var(--surface); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
  .team-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:50px; background:var(--line); border:1px solid var(--line); }
  .team-card{ padding:44px 32px; text-align:center; background:var(--surface); transition:background .3s ease; }
  .team-card:hover{ background:var(--bg); }
  .avatar{
    width:78px; height:78px; border-radius:50%; margin:0 auto 22px;
    display:flex; align-items:center; justify-content:center; border:1px solid var(--accent);
    background:var(--accent-light);
    font-family:'Fraunces', serif; font-weight:500; font-size:1.3rem; color:var(--accent-dark);
  }
  .team-card h3{ font-size:1.18rem; margin-bottom:6px; font-weight:500; }
  .team-card .role{ color:var(--accent-dark); font-family:'Inter',sans-serif; font-weight:600; font-size:.72rem; text-transform:uppercase; letter-spacing:.09em; margin-bottom:16px; }
  .team-card p{ color:var(--muted); font-size:.86rem; }
  .team-tags{ display:flex; flex-wrap:wrap; gap:6px; justify-content:center; margin-top:16px; }
  .team-tags span{ font-family:'Inter',sans-serif; font-size:.7rem; font-weight:600; color:var(--primary-dark); background:var(--primary-light); padding:5px 11px; border-radius:999px; letter-spacing:.02em; }
  .bio-toggle{
    margin-top:20px; font-family:'Inter',sans-serif; font-weight:600; font-size:.78rem; color:var(--accent-dark);
    background:none; border:none; border-bottom:1px solid var(--accent); padding:4px 0; cursor:pointer; letter-spacing:.02em;
  }
  .bio-panel{ max-height:0; overflow:hidden; transition:max-height .4s ease; text-align:left; }
  .team-card.open .bio-panel{ max-height:900px; }
  .team-card.open .bio-toggle{ color:var(--primary-dark); }
  .bio-inner{ padding-top:22px; margin-top:22px; border-top:1px solid var(--line); }
  .bio-inner h5{ font-family:'Inter',sans-serif; font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); margin-bottom:10px; }
  .bio-inner ul{ padding-left:18px; margin-bottom:16px; }
  .bio-inner li{ font-size:.85rem; color:var(--muted); margin-bottom:6px; }
  .bio-inner .personal{ font-family:'Fraunces',serif; font-style:italic; font-size:.92rem; color:var(--ink); line-height:1.5; }

  /* Leistungen */
  .services-tabs{ display:flex; gap:8px; flex-wrap:wrap; margin:40px 0 40px; border-bottom:1px solid var(--line); }
  .tab-btn{
    padding:13px 4px; margin-right:30px; border:none; border-bottom:1px solid transparent; background:none;
    font-family:'Inter',sans-serif; font-weight:600; font-size:.86rem; color:var(--muted); cursor:pointer; transition:all .2s ease;
  }
  .tab-btn.active{ color:var(--primary-dark); border-color:var(--accent); }
  .tab-panel{ display:none; }
  .tab-panel.active{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
  .service-card{ background:var(--surface); padding:32px 28px; transition:background .25s ease; }
  .service-card:hover{ background:var(--bg); }
  .service-card .ic{ width:38px; height:38px; border-radius:50%; border:1px solid var(--accent); color:var(--accent-dark); display:flex; align-items:center; justify-content:center; margin-bottom:18px; }
  .service-card h4{ font-size:1.04rem; margin-bottom:10px; font-weight:500; }
  .service-card p{ font-size:.86rem; color:var(--muted); }
  .service-card ul{ margin-top:12px; padding-left:18px; color:var(--muted); font-size:.84rem; }
  .service-card li{ margin-bottom:5px; }
  .service-note{ margin-top:28px; font-size:.86rem; color:var(--muted); font-style:italic; font-family:'Fraunces',serif; }

  /* Sprechzeiten */
  .hours-section{ background:var(--bg); }
  .hours-tabs{ display:flex; gap:10px; flex-wrap:wrap; margin:40px 0 36px; }
  .doc-tab{
    display:flex; align-items:center; gap:12px; padding:10px 20px 10px 10px; border-radius:999px;
    border:1px solid var(--line); background:var(--surface); cursor:pointer; transition:all .25s ease;
  }
  .doc-tab .mini-avatar{ width:32px; height:32px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--accent-dark); background:var(--accent-light); border:1px solid var(--accent); font-weight:500; font-size:.76rem; font-family:'Fraunces',serif; }
  .doc-tab span:last-child{ font-family:'Inter',sans-serif; font-weight:600; font-size:.86rem; }
  .doc-tab.active{ border-color:var(--primary-dark); background:var(--primary-dark); color:#fdfbf7; }
  .doc-tab.active .mini-avatar{ border-color:#fdfbf7; }
  .hours-panel{ display:none; }
  .hours-panel.active{ display:block; }
  .hours-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
  .day-card{ background:var(--surface); padding:22px 16px; text-align:center; }
  .day-card .day{ font-family:'Inter',sans-serif; font-weight:600; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; margin-bottom:14px; color:var(--muted); }
  .day-card .slot{ font-size:.86rem; color:var(--ink); margin-bottom:5px; font-family:'Fraunces',serif; }
  .day-card .slot.priv{ color:var(--accent-dark); font-style:italic; }
  .day-card .off{ color:var(--muted); font-size:.86rem; }
  .acute-note{
    margin-top:34px; display:flex; gap:16px; align-items:flex-start;
    border-left:2px solid var(--primary); padding:2px 0 2px 20px; font-size:.9rem; color:var(--muted);
  }
  .acute-note strong{ color:var(--ink); }

  /* Patienten */
  .patients-grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:1px; margin-top:44px; background:var(--line); border:1px solid var(--line); }
  .info-card{ background:var(--surface); padding:38px; }
  .info-card h3{ font-size:1.15rem; margin-bottom:16px; font-weight:500; }
  .info-card p, .info-card li{ color:var(--muted); font-size:.92rem; }
  .info-card ul{ padding-left:20px; margin-top:12px; }
  .info-card li{ margin-bottom:9px; }
  .stop-card{ background:var(--warn-light); }
  .stop-card h3{ color:var(--warn-dark); }
  .stop-card p, .stop-card li{ color:#6b5232; }
  .stop-card strong{ color:#523c22; }

  /* Kontakt */
  .contact-section{ background:var(--surface); }
  .contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; margin-top:44px; align-items:start; }
  .contact-list{ display:flex; flex-direction:column; gap:24px; margin-bottom:32px; }
  .contact-item{ display:flex; gap:18px; align-items:flex-start; }
  .contact-item .ic{ width:38px; height:38px; border-radius:50%; border:1px solid var(--accent); color:var(--accent-dark); display:flex; align-items:center; justify-content:center; flex:none; }
  .contact-item h4{ font-family:'Inter',sans-serif; font-weight:600; font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; color:var(--muted); margin-bottom:5px; }
  .contact-item p, .contact-item a{ font-size:.98rem; color:var(--ink); }
  .contact-item a:hover{ color:var(--accent-dark); }
  .map-wrap{ border-radius:4px; overflow:hidden; border:1px solid var(--line); height:100%; min-height:380px; filter:grayscale(.25) contrast(1.02); }
  .map-wrap iframe{ width:100%; height:100%; min-height:380px; border:0; display:block; }
  .request-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
  .request-tile{ display:flex; flex-direction:column; align-items:flex-start; gap:10px; background:var(--surface); padding:18px 16px; transition:background .2s ease; }
  .request-tile:hover{ background:var(--bg); }
  .request-tile .ic{ width:32px; height:32px; border-radius:50%; border:1px solid var(--accent); color:var(--accent-dark); display:flex; align-items:center; justify-content:center; }
  .request-tile strong{ display:block; font-size:.86rem; font-weight:600; font-family:'Inter',sans-serif; color:var(--ink); }
  .request-tile em{ display:block; font-style:normal; font-size:.76rem; color:var(--muted); margin-top:2px; }

  .booking-grid{ display:flex; flex-direction:column; gap:1px; background:var(--line); border:1px solid var(--line); }
  .booking-tile{ display:flex; align-items:center; gap:16px; background:var(--surface); padding:18px 20px; transition:background .2s ease; }
  .booking-tile:hover{ background:var(--primary-light); }
  .booking-tile:hover .arrow{ transform:translateX(4px); }
  .booking-tile .ic{ width:38px; height:38px; border-radius:50%; border:1px solid var(--accent); color:var(--accent-dark); display:flex; align-items:center; justify-content:center; flex:none; }
  .booking-body{ flex:1; }
  .booking-body strong{ display:block; font-size:.92rem; font-weight:600; font-family:'Inter',sans-serif; color:var(--ink); margin-bottom:3px; }
  .booking-body em{ display:block; font-style:normal; font-size:.8rem; color:var(--muted); line-height:1.45; }
  .booking-tile .arrow{ flex:none; color:var(--accent-dark); transition:transform .25s ease; }

  /* Footer */
  footer{ background:var(--primary-dark); color:#c9d0c1; padding:64px 0 28px; }
  .footer-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; margin-bottom:48px; }
  footer .brand{ color:#f2efe8; margin-bottom:16px; }
  footer p{ font-size:.88rem; color:#a3ac98; max-width:320px; }
  footer h5{ font-family:'Inter',sans-serif; font-size:.74rem; text-transform:uppercase; letter-spacing:.1em; color:#8b9880; margin-bottom:16px; font-weight:600; }
  footer ul{ list-style:none; display:flex; flex-direction:column; gap:11px; }
  footer a{ font-size:.9rem; color:#c9d0c1; }
  footer a:hover{ color:#f2efe8; }
  .footer-bottom{ border-top:1px solid rgba(242,239,232,.12); padding-top:24px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:.78rem; color:#8b9880; }
  .footer-legal-links{ display:flex; gap:18px; }
  .footer-legal-links a{ color:#8b9880; }
  .footer-legal-links a:hover{ color:#f2efe8; }

  /* Back to top */
  .top-btn{
    position:fixed; right:24px; bottom:24px; width:44px; height:44px; border-radius:50%;
    background:var(--primary-dark); color:#f2efe8; display:flex; align-items:center; justify-content:center;
    opacity:0; pointer-events:none; transition:opacity .3s ease, transform .3s ease;
    z-index:900; cursor:pointer; border:none;
  }
  .top-btn.show{ opacity:1; pointer-events:auto; }
  .top-btn:hover{ transform:translateY(-3px); }

  @media (max-width:920px){
    nav{ display:none; }
    .hamburger{ display:flex; }
    .hero-grid, .about-grid, .contact-grid, .patients-grid{ grid-template-columns:1fr; }
    .team-grid, .tab-panel.active{ grid-template-columns:1fr 1fr; }
    .hours-grid{ grid-template-columns:repeat(2,1fr); }
    .footer-grid{ grid-template-columns:1fr; }
    .value-list{ grid-template-columns:1fr; }
  }
  @media (max-width:600px){
    section{ padding:72px 0; }
    .hero{ padding:208px 0 76px; }
    .team-grid, .tab-panel.active{ grid-template-columns:1fr; }
    .hours-grid{ grid-template-columns:1fr 1fr; }
    .nav-actions .phone-link{ display:none; }
    .fact{ padding-right:20px; margin-right:20px; }
    .request-grid{ grid-template-columns:1fr; }
  }

  /* Mobile nav panel */
  .mobile-nav{
    position:fixed; inset:0 0 auto 0; top:125px; background:var(--surface); z-index:999;
    transform:translateY(calc(-100% - 100vh)); transition:transform .35s ease; border-bottom:1px solid var(--line);
    pointer-events:none;
  }
  .mobile-nav.open{ transform:translateY(0); pointer-events:auto; }
  .mobile-nav ul{ list-style:none; padding:20px 28px 28px; display:flex; flex-direction:column; gap:4px; }
  .mobile-nav a{ display:block; padding:13px 0; font-family:'Inter',sans-serif; font-weight:600; border-bottom:1px solid var(--line); }

/* ==== Legal-Seiten (Impressum/Datenschutz) - page.php ==== */
main.legal-main{ padding:218px 0 100px; }
.legal-section .container{ max-width:840px; }
.back-link{ display:inline-flex; align-items:center; gap:8px; font-family:'Inter',sans-serif; font-weight:600; font-size:.84rem; color:var(--muted); margin-bottom:28px; }
.back-link:hover{ color:var(--accent-dark); }
.legal-note{ background:var(--warn-light); border-left:2px solid var(--warn); padding:16px 22px; font-size:.86rem; color:#6b5232; margin:36px 0 44px; border-radius:2px; }
.legal-block{ margin-bottom:34px; }
.legal-block h3{ font-family:'Inter',sans-serif; font-size:.98rem; font-weight:700; color:var(--primary-dark); margin-bottom:10px; }
.legal-block p{ font-size:.92rem; color:var(--muted); margin-bottom:8px; }
.legal-block ul{ padding-left:20px; margin:8px 0; }
.legal-block li{ font-size:.92rem; color:var(--muted); margin-bottom:6px; }
.legal-block a{ color:var(--accent-dark); font-weight:600; }
.legal-block.highlight{ background:var(--primary-light); padding:24px 26px; border-radius:4px; }
.page-links{ display:flex; gap:24px; margin-top:52px; padding-top:28px; border-top:1px solid var(--line); }
.page-links a{ font-family:'Inter',sans-serif; font-weight:600; font-size:.86rem; color:var(--primary-dark); }
.page-links a:hover{ color:var(--accent-dark); }

@media (max-width:600px){
  main.legal-main{ padding:198px 0 70px; }
}

/* ==== WordPress-Standardklassen ==== */
.alignwide{ margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); max-width:1160px; }
.alignfull{ margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); max-width:none; }
.wp-caption, .wp-block-image{ max-width:100%; }
.screen-reader-text{ position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden; }
