.elementor-kit-6{--e-global-color-primary:#F9F7F3;--e-global-color-secondary:#F4F2EF;--e-global-color-text:#E3DFDB;--e-global-color-accent:#FEFDFC;--e-global-color-c258b42:#173124;--e-global-color-22fef3b:#0A1D15;--e-global-color-0cfe20d:#314F3E;--e-global-color-13f9312:#648A70;--e-global-color-b10d8f5:#B7A282;--e-global-color-c40003c:#836B50;--e-global-color-e28e1a0:#1F1D18;--e-global-color-74ab61d:#54524C;--e-global-color-98aff49:#706E69;--e-global-color-351e674:#DDDBD7;--e-global-color-681ad9e:#CBC8C4;--e-global-color-fed0993:#F6F4F1;--e-global-color-a364cfa:#C1BEB5;--e-global-color-43464f7:#E1EBE4;--e-global-color-46ae110:#EFEBE3;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.14em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.25em;--e-global-typography-secondary-letter-spacing:-0.015em;--e-global-typography-text-font-family:"Plus Jakarta Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.72em;--e-global-typography-accent-font-family:"Outfit";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0px;background-color:var( --e-global-color-primary );}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============ FOKUSWOCHE · DESIGNSYSTEM ============ */
:root{
  --fw-papier:#F9F7F3;  --fw-papier2:#F4F2EF; --fw-papier3:#E3DFDB;
  --fw-weiss:#FEFDFC;
  --fw-wald:#173124;    --fw-wald-tief:#0A1D15; --fw-wald-mittel:#314F3E;
  --fw-blatt:#648A70;
  --fw-messing:#B7A282; --fw-messing-d:#836B50;
  --fw-tinte:#1F1D18;   --fw-text:#54524C;      --fw-gedaempft:#706E69;
  --fw-linie:#DDDBD7;   --fw-linie2:#CBC8C4;
  --fw-auf-wald:#F6F4F1;--fw-auf-wald-m:#C1BEB5;
  --fw-sh:    0 6px 20px -14px rgba(10,29,21,0.14);
  --fw-sh-lg: 0 14px 34px -20px rgba(10,29,21,0.17);
  --fw-eo: cubic-bezier(0.23,1,0.32,1);
}

/* Grundtypografie */
body{ line-height:1.72; }
.fw-page h1,.fw-page h2,.fw-page h3,.fw-page h4{ text-wrap:balance; }

/* Handschrift-Label */
.fw-script{ font-family:'Caveat',cursive !important; line-height:1 !important; }

/* Buttons: Pillenform, Hover ohne Hüpfen */
.fw-btn .elementor-button{
  border-radius:999px !important;
  box-shadow:var(--fw-sh);
  transition:background-color 240ms var(--fw-eo),
             box-shadow 240ms var(--fw-eo) !important;
}
.fw-btn .elementor-button:active{ transform:scale(0.98); }
.fw-btn .elementor-button svg,
.fw-btn .elementor-button i{ transition:transform 240ms var(--fw-eo); }
.fw-btn .elementor-button:hover svg,
.fw-btn .elementor-button:hover i{ transform:translateX(3px); }

/* Bildplatzhalter, solange keine Fotos da sind */
.fw-ph{
  position:relative; overflow:hidden; background:var(--fw-papier3);
  display:grid; place-items:center; text-align:center; padding:20px;
  font-family:'Outfit',sans-serif; font-size:12px; font-weight:500;
  letter-spacing:.1em; text-transform:uppercase;
  color:var(--fw-wald-mittel); border-radius:8px;
}
.fw-ph::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(circle at 22% 28%, rgba(211,225,196,0.85), transparent 42%),
    radial-gradient(circle at 78% 72%, rgba(230,219,192,0.75), transparent 46%);
}
.fw-ph > *{ position:relative; z-index:1; max-width:20ch; }

/* Seitenverhältnisse für echte Bilder */
.fw-r11 img{ aspect-ratio:1/1;  object-fit:cover; width:100%; }
.fw-r43 img{ aspect-ratio:4/3;  object-fit:cover; width:100%; }
.fw-r34 img{ aspect-ratio:3/4;  object-fit:cover; width:100%; }
.fw-r45 img{ aspect-ratio:4/5;  object-fit:cover; width:100%; }
.fw-r54 img{ aspect-ratio:5/4;  object-fit:cover; width:100%; }
.fw-r169 img{ aspect-ratio:16/9; object-fit:cover; width:100%; }

/* Weiche Farbkreise als Hintergrunddeko */
.fw-blob{ position:absolute; border-radius:50%; pointer-events:none; z-index:0; }
.fw-blob-a{ width:min(46vw,520px); aspect-ratio:1; background:rgba(224,236,220,0.55); }
.fw-blob-b{ width:min(34vw,380px); aspect-ratio:1; background:rgba(243,234,213,0.50); }

/* Punktraster als Deko */
.fw-dots{
  position:absolute; width:120px; height:120px; z-index:0; pointer-events:none;
  background-image:radial-gradient(var(--fw-linie2) 1.6px, transparent 1.6px);
  background-size:14px 14px; opacity:.85;
}

/* Deko-Ebene hinter den Inhalt legen */
.fw-deko-host > .e-con,
.fw-deko-host > .elementor-element:not(.fw-blob):not(.fw-dots){
  position:relative; z-index:1;
}

/* Maximale Textbreiten */
.fw-maxw42{ max-width:42ch; }
.fw-maxw38{ max-width:38rem; }

@media (prefers-reduced-motion:reduce){
  .fw-btn .elementor-button{ transition:none !important; }
}
.fw-hero .fw-blob-a{ top:-14%; right:-10%; }
.fw-hero .fw-blob-b{ bottom:6%; left:-12%; }
.fw-label{
  display:inline-flex; align-items:center; gap:8px;
  margin:0 0 10px; line-height:1;
  color:var(--fw-wald-mittel);
}
.fw-label svg{ flex:none; }
.fw-label span{
  font-family:'Caveat', cursive;
  font-weight:600;
  font-size:28px;
  line-height:1;
}
/* Label auf grünen Sektionen */
.fw-label--hell{ color:var(--fw-messing); }
/* Sektionslabel etwas kleiner als das Hero-Label */
.fw-label--sm span{ font-size:24px; }
.fw-vp{
  overflow-x:auto; scroll-snap-type:x mandatory;
  scrollbar-width:none; -ms-overflow-style:none; cursor:grab;
}
.fw-vp::-webkit-scrollbar{ display:none; }
.fw-vp.drag{ cursor:grabbing; scroll-snap-type:none; }
.fw-vp.drag *{ pointer-events:none; }
.fw-vp > .e-con{ flex:0 0 min(85%,372px) !important; scroll-snap-align:start; }
.fw-r43 img{ aspect-ratio:4/3; object-fit:cover; width:100%; display:block; }
.fw-r45 img{ aspect-ratio:4/5; object-fit:cover; width:100%; display:block; }
.fw-r34 img{ aspect-ratio:3/4; object-fit:cover; width:100%; display:block; }
.fw-r54 img{ aspect-ratio:5/4; object-fit:cover; width:100%; display:block; }
.fw-r11 img{ aspect-ratio:1/1; object-fit:cover; width:100%; display:block; }
.fw-dots{
  position:absolute; width:120px; height:120px; z-index:0; pointer-events:none;
  background-image:radial-gradient(#CBC8C4 1.6px, transparent 1.6px);
  background-size:14px 14px; opacity:.85;
}
.fw-sec > .e-con{ position:relative; z-index:1; }
/* ===== MOBIL: überlappende Elemente entschärfen ===== */
@media (max-width:980px){
  .fw-chip-tr, .fw-chip-br, .fw-chip-br2,
  .fw-chip-br3, .fw-chip-br4, .fw-chip-br5{ right:0 !important; }
}

@media (max-width:900px){
  /* Chip in den Tabs rutscht unter das Bild */
  .fw-chip-tab{
    position:relative !important;
    left:0 !important; bottom:0 !important;
    margin-top:16px; display:inline-flex;
  }
}

@media (max-width:620px){
  .fw-coll-sub{ width:50% !important; left:-2% !important; }
  .fw-sub-r{ width:50% !important; right:-2% !important; }
  /* Chips werden auf sehr schmalen Displays kompakter */
  .fw-chip{ padding:11px 14px !important; }
  .fw-chip b{ font-size:15px !important; }
  .fw-chip span{ font-size:11px !important; }
}

@media (max-width:767px){
  /* Punktraster stört auf Mobil nur */
  .fw-dots{ display:none !important; }
  /* Slider-Karten breiter, damit weniger angeschnitten wird */
  .fw-vp > *, .fw-vp2 > *{ flex:0 0 86% !important; }
  /* Accordion-Einzug raus */
  .fw-acc .in{ padding-left:24px !important; }
}

@media (max-width:600px){
  .fw-acc .in{ padding-left:18px !important; }
}
/* ===== RECHTSTEXTE ===== */
.fw-legal{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:16px;
  line-height:1.72;
  color:#54524C;
}

.fw-legal h2{
  font-family:'Outfit',sans-serif;
  font-weight:600;
  font-size:26px;
  line-height:1.2;
  letter-spacing:-0.02em;
  color:#1F1D18;
  margin:44px 0 14px;
  padding-top:28px;
  border-top:1px solid #DDDBD7;
}
.fw-legal h2:first-child{
  margin-top:0; padding-top:0; border-top:0;
}

.fw-legal h3{
  font-family:'Outfit',sans-serif;
  font-weight:600;
  font-size:20px;
  line-height:1.25;
  letter-spacing:-0.02em;
  color:#1F1D18;
  margin:30px 0 10px;
}

.fw-legal h4{
  font-family:'Outfit',sans-serif;
  font-weight:600;
  font-size:17px;
  line-height:1.3;
  color:#1F1D18;
  margin:24px 0 8px;
}

.fw-legal p{ margin:0 0 16px; }
.fw-legal p:last-child{ margin-bottom:0; }

.fw-legal strong{ color:#1F1D18; font-weight:600; }

.fw-legal a{
  color:#314F3E;
  text-decoration:underline;
  text-underline-offset:3px;
  text-decoration-thickness:1px;
  word-break:break-word;
  transition:color 240ms cubic-bezier(.23,1,.32,1);
}
@media (hover:hover) and (pointer:fine){
  .fw-legal a:hover{ color:#173124; }
}

.fw-legal ul,
.fw-legal ol{ margin:0 0 16px; padding-left:22px; }
.fw-legal li{ margin-bottom:8px; }
.fw-legal ul li::marker{ color:#648A70; }
.fw-legal ol li::marker{ color:#648A70; font-weight:600; }

/* Tabellen, falls eRecht24 welche ausgibt */
.fw-legal table{
  width:100%; border-collapse:collapse; margin:0 0 20px;
  font-size:15px;
}
.fw-legal th,
.fw-legal td{
  text-align:left; padding:10px 12px;
  border-bottom:1px solid #DDDBD7; vertical-align:top;
}
.fw-legal th{
  font-family:'Outfit',sans-serif; font-weight:600; color:#1F1D18;
  background:#F4F2EF;
}

/* Mobil */
@media (max-width:767px){
  .fw-legal{ font-size:15px; }
  .fw-legal h2{ font-size:22px; margin-top:36px; padding-top:24px; }
  .fw-legal h3{ font-size:18px; margin-top:26px; }
  .fw-legal h4{ font-size:16px; }
  .fw-legal ul, .fw-legal ol{ padding-left:20px; }
  .fw-legal table{ font-size:14px; }
  .fw-legal th, .fw-legal td{ padding:8px 10px; }
}/* End custom CSS */