@font-face{
  font-family:'Hind';
  font-style:normal;
  font-weight:300;
  font-display:swap;
  src:url('/portals/h1418287/design/Hind-Light.woff2') format('woff2');
}
@font-face{
  font-family:'Hind';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('/portals/h1418287/design/Hind-Regular.woff2') format('woff2');
}
@font-face{
  font-family:'Hind';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url('/portals/h1418287/design/Hind-Medium.woff2') format('woff2');
}
@font-face{
  font-family:'Hind';
  font-style:normal;
  font-weight:600;
  font-display:swap;
  src:url('/portals/h1418287/design/Hind-SemiBold.woff2') format('woff2');
}
@font-face{
  font-family:'Hind';
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url('/portals/h1418287/design/Hind-Bold.woff2') format('woff2');
}
/* ---------- Design-Tokens ---------- */
:root{
  --atv-dark:#1A1A1A;
  --atv-dark-2:#202020;
  --atv-dark-3:#161616;
  --atv-accent:#B3A586;
  --atv-light:#F2F2F2;
  --atv-off:#FAFAFA;
  --atv-maxwidth:1180px;
  --atv-pad:clamp(1.25rem,5vw,3rem);
  --atv-font:'Hind',system-ui,'Segoe UI',Tahoma,Verdana,sans-serif;
}
/* ---------- Reset / Grundlagen ---------- */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--atv-font);
  background:var(--atv-light);
  color:var(--atv-dark);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
/* SITEFORUM-Container-Breite aufheben, damit unsere Baender randlos durchlaufen.
   Das alte Design begrenzt #sfsBody auf 950px (ms7ebupa_portal.css). */
#sfsBody{
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left;
}
#sfsMain{
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
a{text-decoration:none;color:inherit;}
button{font-family:inherit;cursor:pointer;}
input,textarea,select{font-family:inherit;font-size:1rem;}
ul{margin:0;padding:0;list-style:none;}
p{margin:0;}
img{max-width:100%;display:block;}
/* Hilfsklasse fuer den zentrierten Inhaltscontainer */
.atv-container{
  max-width:var(--atv-maxwidth);
  margin:0 auto;
  padding:0 var(--atv-pad);
}
/* ============================================================
   HEADER
   ============================================================ */
.atv-header{
  position:relative;         /* bewusst NICHT sticky (Systemleiste bleibt oben) */
  z-index:50;
  background:var(--atv-dark);
  border-bottom:1px solid rgba(179,165,134,.18);
}
.atv-header__inner{
  max-width:var(--atv-maxwidth);
  margin:0 auto;
  padding:0 var(--atv-pad);
  min-height:84px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
}
/* ---------- Logo (Textsatz gemaess Brand Brief) ---------- */
.atv-logo{
  display:flex;
  flex-direction:column;
  gap:3px;
  color:var(--atv-light);
  flex:none;
  padding:.4rem 0;
}
.atv-logo__name{
  font-weight:300;
  font-size:1.45rem;
  letter-spacing:.34em;
  line-height:1;
  padding-left:.34em;
}
.atv-logo__sub{
  font-weight:600;
  font-size:.6rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--atv-accent);
  padding-left:.24em;
}
/* ============================================================
   NAVIGATION  –  stylt die SITEFORUM-Ausgabe von $mainMenuDropDown
   Struktur (vom System vorgegeben):
   #sfsMainMenuDropDown > ul.menuDropTop > li.branch.menuDrop > a.menu
                                                              > ul.tree > li > a ...
   ============================================================ */
.atv-nav{
  display:flex;
  align-items:center;
  gap:1.25rem;
}
/* Container des System-Menues */
#sfsMainMenuDropDown{position:relative;}
/* Oberste Menue-Leiste: horizontale Liste */
#sfsMainMenuDropDown ul.menuDropTop{
  display:flex;
  align-items:center;
  gap:1.9rem;
  margin:0;
  padding:0;
}
/* Hauptpunkte (Level 1) */
#sfsMainMenuDropDown ul.menuDropTop > li{
  position:relative;
}
#sfsMainMenuDropDown ul.menuDropTop > li > a{
  display:block;
  padding:.2rem 0;
  color:var(--atv-light);
  font-size:.82rem;
  font-weight:500;
  letter-spacing:.12em;
  text-transform:uppercase;
  transition:color .18s ease;
  white-space:nowrap;
}
#sfsMainMenuDropDown ul.menuDropTop > li > a:hover{
  color:var(--atv-accent);
}
/* aktiver Hauptpunkt (System vergibt .menuDropActive / a.menuActive) */
#sfsMainMenuDropDown ul.menuDropTop > li.menuDropActive > a,
#sfsMainMenuDropDown a.menuActive{
  color:var(--atv-accent);
}
/* ---------- Untermenues (ul.tree) als Hover-Dropdown ---------- */
#sfsMainMenuDropDown ul.tree{
  position:absolute;
  top:100%;
  left:0;
  min-width:288px;
  background:var(--atv-dark);
  border:1px solid rgba(179,165,134,.22);
  padding:.5rem 0;
  margin:0;
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
  z-index:70;
}
/* beim Hovern des Hauptpunkts oeffnen */
#sfsMainMenuDropDown ul.menuDropTop > li:hover > ul.tree{
  opacity:1;
  visibility:visible;
  transform:none;
}
/* Untermenue-Eintraege */
#sfsMainMenuDropDown ul.tree li{position:relative;}
#sfsMainMenuDropDown ul.tree li a{
  display:block;
  padding:.66rem 1.4rem;
  color:var(--atv-light);
  font-weight:400;
  font-size:.9rem;
  border-left:2px solid transparent;
  transition:color .18s ease,border-color .18s ease;
  white-space:nowrap;
  text-transform:none;
  letter-spacing:.005em;
}
#sfsMainMenuDropDown ul.tree li a:hover{
  color:var(--atv-accent);
  border-left-color:var(--atv-accent);
}
/* dritte Ebene (ul.tree in ul.tree) rechts ausklappen */
#sfsMainMenuDropDown ul.tree ul.tree{
  top:0;
  left:100%;
}
#sfsMainMenuDropDown ul.tree li:hover > ul.tree{
  opacity:1;
  visibility:visible;
  transform:none;
}
/* ---------- Header-Meta: Telefon, Login, Sprache ---------- */
.atv-nav__meta{
  display:flex;
  align-items:center;
  gap:1.4rem;
}
.atv-phone{
  display:flex;
  align-items:center;
  gap:.5rem;
  color:var(--atv-accent);
  font-weight:600;
  font-size:.86rem;
  letter-spacing:.04em;
  white-space:nowrap;
}
.atv-hdr-actions{
  display:flex;
  align-items:center;
  gap:.4rem;
}
.atv-icon-btn{
  background:none;
  border:1px solid rgba(179,165,134,.35);
  border-radius:2px;
  width:40px;height:40px;
  display:flex;align-items:center;justify-content:center;
  color:var(--atv-light);
  transition:color .2s,border-color .2s;
}
.atv-icon-btn:hover{
  color:var(--atv-accent);
  border-color:rgba(179,165,134,.7);
}
/* ---------- Dropdown-Panels (Login / Sprache) ---------- */
.atv-hdr-menu{position:relative;}
.atv-hdr-dropdown{
  display:none;
  position:absolute;
  top:calc(100% + 12px);
  right:0;
  background:#FFFFFF;
  color:var(--atv-dark);
  border-radius:4px;
  box-shadow:0 18px 44px -18px rgba(0,0,0,.5);
  z-index:80;
}
.atv-hdr-menu[data-open="true"] .atv-hdr-dropdown{display:block;}
.atv-hdr-dropdown--login{width:288px;padding:1.4rem;}
.atv-hdr-dropdown--lang{width:184px;padding:.5rem;}
.atv-login-title{
  margin:0;
  font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--atv-accent);
}
.atv-login-title b{font-weight:700;letter-spacing:0;}
/* SITEFORUM-Login-Formular im Dropdown angleichen */
.atv-login-slot{margin-top:1rem;}
.atv-login-slot .sf-form-login{display:flex;flex-direction:column;gap:.7rem;}
.atv-login-slot input[type="text"],
.atv-login-slot input[type="password"]{
  width:100%;box-sizing:border-box;
  border:1px solid rgba(26,26,26,.2);border-radius:2px;
  padding:.7rem .8rem;font-size:.92rem;color:var(--atv-dark);background:var(--atv-off);
}
.atv-login-slot input[type="text"]:focus,
.atv-login-slot input[type="password"]:focus{
  border-color:var(--atv-accent);outline:none;
}
.atv-login-slot input[type="submit"]{
  width:100%;margin-top:.4rem;
  background:var(--atv-dark);color:var(--atv-light);border:none;
  font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:.76rem;
  padding:.85rem;border-radius:2px;transition:filter .2s;
}
.atv-login-slot input[type="submit"]:hover{filter:brightness(1.25);}
/* Sprachumschalter-Zeilen */
.atv-lang-row{
  width:100%;display:flex;align-items:center;gap:.7rem;
  background:none;border:none;padding:.7rem;border-radius:3px;
  font-size:.95rem;color:var(--atv-dark);
}
.atv-lang-row:hover{background:var(--atv-light);}
/* ---------- Burger ---------- */
.atv-nav__toggle{
  display:none;
  background:none;
  border:1px solid rgba(179,165,134,.4);
  border-radius:2px;
  width:42px;height:42px;
  align-items:center;justify-content:center;
  color:var(--atv-light);
}
/* ============================================================
   FOOTER  (vorlaeufig – Feinschliff folgt)
   ============================================================ */
.atv-footer{
  background:var(--atv-dark);
  color:var(--atv-light);
  padding:clamp(3.5rem,6vw,5rem) 0 2.5rem;
  /* Dezenter Goldstrich als Trenner zum Inhalt darueber. Ersetzt die grelle
     Siteforum-Clearfix-Zeile (.sf-row, oben ausgeblendet) durch eine
     kontrollierte Linie in der Akzentfarbe, damit eine dunkle Section nicht
     ohne Absetzung an den ebenfalls dunklen Footer stoesst. Opazitaet bei
     Bedarf anpassen. */
  border-top:1px solid rgba(179,165,134,.35);
}
.atv-footer__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:clamp(2rem,4vw,3.5rem);
}
.atv-footer__brand{font-weight:300;font-size:1.5rem;letter-spacing:.34em;}
.atv-footer__text{
  margin-top:.9rem;font-size:.95rem;line-height:1.7;
  color:rgba(242,242,242,.6);font-weight:300;max-width:300px;
}
.atv-footer__head{
  font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(179,165,134,.7);
}
.atv-footer__head b{color:var(--atv-accent);font-weight:700;letter-spacing:0;}
.atv-footer__list{margin-top:1rem;display:flex;flex-direction:column;gap:.7rem;}
.atv-footer__list a{color:rgba(242,242,242,.7);font-size:.92rem;transition:color .18s;}
.atv-footer__list a:hover{color:var(--atv-accent);}
.atv-footer__bar{
  margin-top:clamp(2.5rem,4vw,3.5rem);
  padding-top:1.6rem;
  border-top:1px solid rgba(242,242,242,.1);
  display:flex;flex-wrap:wrap;gap:.8rem 1.5rem;justify-content:space-between;
  font-size:.82rem;color:rgba(242,242,242,.45);
}
/* Mitarbeiter-Login im Footer (dezent) */
.atv-footer__login{
  margin-top:1.4rem;max-width:320px;
}
.atv-footer__login summary{
  cursor:pointer;list-style:none;
  font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(242,242,242,.4);user-select:none;
}
.atv-footer__login .sf-form-login{
  margin-top:1rem;display:flex;flex-direction:column;gap:.6rem;
}
.atv-footer__login input[type="text"],
.atv-footer__login input[type="password"]{
  width:100%;box-sizing:border-box;padding:.6rem .7rem;font-size:.9rem;
  background:var(--atv-off);color:var(--atv-dark);
  border:1px solid rgba(26,26,26,.2);border-radius:2px;
}
.atv-footer__login input[type="submit"]{
  width:100%;padding:.7rem;font-size:.72rem;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;
  color:var(--atv-light);background:var(--atv-accent);
  border:none;border-radius:2px;
}
.atv-footer__login input[type="submit"]:hover{filter:brightness(1.08);}
/* ============================================================
   RESPONSIVE  –  Mobile Navigation
   ============================================================ */
@media (max-width:940px){
  .atv-nav__toggle{display:inline-flex;}
  /* Menue-Wrap wird zum ausklappbaren Panel */
  .atv-nav{position:static;}
  #sfsMainMenuDropDown{
    position:absolute;
    top:100%;left:0;right:0;
    background:var(--atv-dark-3);
    border-top:1px solid rgba(179,165,134,.22);
    padding:.4rem 0 1rem;
    display:none;
  }
  .atv-nav[data-open="true"] #sfsMainMenuDropDown{display:block;}
  /* Panel-Hintergrund gegen den spaeteren Transparenz-Override (PATCH 2026-07-31)
     behaupten. Der Override setzt #sfsMainMenuDropDown per !important auf
     transparent, um am DESKTOP den beigen System-Balken zu entfernen; auf Mobil
     ist dasselbe Element aber das dunkle Ausklapp-Panel. Hoehere Spezifitaet
     (Klasse + ID) gewinnt trotz frueherer Position, ohne den Desktop-Header
     anzufassen. */
  .atv-nav #sfsMainMenuDropDown{
    background:var(--atv-dark-3) !important;
    background-color:var(--atv-dark-3) !important;
  }
  #sfsMainMenuDropDown ul.menuDropTop{
    flex-direction:column;
    align-items:stretch;
    gap:0;
  }
  #sfsMainMenuDropDown ul.menuDropTop > li{
    width:100%;
    border-bottom:1px solid rgba(242,242,242,.07);
  }
  #sfsMainMenuDropDown ul.menuDropTop > li > a{
    padding:.95rem var(--atv-pad);
  }
  /* Untermenues auf Mobile statisch, immer sichtbar unter dem Hauptpunkt */
  #sfsMainMenuDropDown ul.tree{
    position:static;
    opacity:1;visibility:visible;transform:none;
    border:none;background:#111111;
    padding:0;min-width:0;
  }
  #sfsMainMenuDropDown ul.tree li a{
    border-left:none;
    padding:.8rem var(--atv-pad) .8rem calc(var(--atv-pad) + .9rem);
  }
  #sfsMainMenuDropDown ul.tree ul.tree{left:0;}
  .atv-nav__meta{
    flex-direction:row;flex-wrap:wrap;align-items:center;gap:1.25rem;
    padding:1.1rem var(--atv-pad) 0;
  }
}
@media (max-width:620px){
  .atv-phone{display:none;}
}
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto !important;}
}

/* ============================================================
   PATCH 2026-07-31 — Header an das Claude-Design angleichen
   Entfernt den vom System (MasterSet/DesignSet) gesetzten beigen
   Balken hinter dem Hauptmenue und erzwingt die Design-Farben.
   Bewusst am ENDE der Datei, damit dieser Block in der Kaskade
   gewinnt. Die dunklen Dropdown-Panels (ul.tree) bleiben erhalten.
   ============================================================ */

/* 1) Beigen System-Hintergrund hinter dem Hauptmenue entfernen.
      Ursache: Die bisherigen Regeln setzen Text/Layout, aber nie
      den Hintergrund zurueck, daher scheint die System-Flaeche durch. */
#sfsMainMenuDropDown,
#sfsMainMenuDropDown ul.menuDropTop,
#sfsMainMenuDropDown ul.menuDropTop > li,
#sfsMainMenuDropDown ul.menuDropTop > li > a,
#sfsMainMenuDropDown ul.menuDropTop > li.menuDrop,
#sfsMainMenuDropDown ul.menuDropTop > li.branch,
#sfsMainMenuDropDown ul.menuDropTop > li.menuDropActive,
#sfsMainMenuDropDown ul.menuDropTop > li:hover,
#sfsMainMenuDropDown ul.menuDropTop > li.menuDropActive > a,
#sfsMainMenuDropDown ul.menuDropTop > li:hover > a{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
  border-color:transparent !important;
}

/* 2) Untermenue-Panels behalten ihren dunklen Hintergrund (sicherheitshalber). */
#sfsMainMenuDropDown ul.tree{
  background:var(--atv-dark) !important;
  border:1px solid rgba(179,165,134,.22) !important;
}

/* 3) Menuefarben: hell auf dunkel, Gold nur bei Hover/aktiv. */
#sfsMainMenuDropDown ul.menuDropTop > li > a{
  color:var(--atv-light) !important;
}
#sfsMainMenuDropDown ul.menuDropTop > li > a:hover,
#sfsMainMenuDropDown ul.menuDropTop > li.menuDropActive > a,
#sfsMainMenuDropDown a.menuActive{
  color:var(--atv-accent) !important;
}
#sfsMainMenuDropDown ul.tree li a{color:var(--atv-light) !important;}
#sfsMainMenuDropDown ul.tree li a:hover{color:var(--atv-accent) !important;}

/* 4) Logo: "ATVANTIS" weiss, Unterzeile gold (System-Linkfarbe ueberschreiben). */
.atv-logo .atv-logo__name{color:var(--atv-light) !important;}
.atv-logo .atv-logo__sub{color:var(--atv-accent) !important;}

/* 5) Kleines Aufklapp-Pfeilchen NUR an Punkten mit echtem Untermenue.
      Alle Level-1-Punkte tragen zwar die Klasse .branch, ein Pfeil soll
      aber nur erscheinen, wo tatsaechlich eine ul.tree vorhanden ist.
      :has() sorgt dafuer; wo es nicht unterstuetzt wird, bleibt der Pfeil
      einfach aus (kein Fehler). */
#sfsMainMenuDropDown ul.menuDropTop > li.branch:has(> ul.tree) > a::after{
  content:"";
  display:inline-block;
  width:.42em;height:.42em;
  margin-left:.5em;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  opacity:.85;
  vertical-align:middle;
}

/* ============================================================
   PATCH 2b 2026-07-31 — Untermenues (Dropdowns) angleichen
   - weissen System-Kasten bei Hover/aktiv entfernen
   - Panel breit genug fuer lange Gesellschaftsnamen
   Ebenfalls am ENDE, gewinnt per !important gegen die Systemregeln.
   ============================================================ */

/* Panel-Breite an den laengsten Eintrag anpassen, nicht abschneiden.
   Das System setzt eine feste Breite; die heben wir auf. */
#sfsMainMenuDropDown ul.tree{
  width:max-content !important;
  min-width:300px !important;
  max-width:none !important;
  overflow:visible !important;
}
#sfsMainMenuDropDown ul.tree li{
  width:auto !important;
  background:transparent !important;
}
#sfsMainMenuDropDown ul.tree li a{
  white-space:nowrap !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
}

/* Hover / aktiver Untermenue-Eintrag: nur Gold-Text plus Gold-Kante links,
   KEIN weisser Kasten. */
#sfsMainMenuDropDown ul.tree li:hover,
#sfsMainMenuDropDown ul.tree li:hover > a,
#sfsMainMenuDropDown ul.tree li a:hover,
#sfsMainMenuDropDown ul.tree li a:focus,
#sfsMainMenuDropDown ul.tree li.menuDropActive > a,
#sfsMainMenuDropDown ul.tree a.menuActive{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  color:var(--atv-accent) !important;
  border-left-color:var(--atv-accent) !important;
}

/* ============================================================
   PATCH 3 2026-07-31 — Seiteninhalt volle Breite + zentriert
   Neutralisiert die CMS-Wrapper, die eine Story in eine schmale,
   linksbuendige 630px-Spalte (inkl. Seiten-Navi) zwingen. Danach
   laufen unsere Baender randlos und der Inhalt zentriert sich
   ueber unsere eigenen Container (.atv-container / max-width:1180px).
   WICHTIG: Nur den Inhaltsbereich treffen, NICHT das Menue im Header
   (dessen ul traegt zufaellig auch die Klasse .sf-main-width). */

/* Aeusserer CMS-Wrapper um Inhalt + Seiten-Navigation
   (direktes Kind von #sfsMain, also nicht das Header-Menue) */
#sfsMain > .sf-main-width{
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Innere Story-Wrapper: Breite, Rand, Padding, Float aufheben.
   Schlaegt auch die inline gesetzte width:630px an .sfsStoryContent. */
#sfsMain .sf-app-content-page,
#sfsMain .sf-app-content-page .sf-main-width,
#sfsMain .sf-app-content-page .sf-display-container,
#sfsMain .sfsStoryContainer,
#sfsMain .sfsStoryContent{
  display:block !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
  border:0 !important;
}

/* HINWEIS 2026-07-31: Frueher stand hier ein display:none auf
   .sf-nav-main und .sf-app-content-page > .right. Das hat versehentlich
   die blaue System-/Admin-Navigationsleiste fuer eingeloggte Nutzer
   ausgeblendet. Bewusst entfernt. .sf-nav-main ist die System-Navigation,
   nicht eine ueberfluessige Seitenspalte. Die Vollbreite kommt allein aus
   dem Aufheben der festen 630px-Breite oben, nicht aus dem Ausblenden.
   Falls die Leiste fuer ausgeloggte Besucher unerwuenscht auftaucht,
   loesen wir das gezielt und login-abhaengig, nicht pauschal. */

/* Leeren 30px-Spacer vor dem Inhalt entfernen, damit die dunkle
   Hero-Sektion oben buendig am Header sitzt. */
#sfsMain .sfsStoryContainer > div[style*="height:30px"]{
  display:none !important;
}

/* Weisser Streifen zwischen Inhalt und Footer entfernen:
   leere Siteforum-Clearfix-Zeile (.sf-row mit nur &nbsp;) im Inhaltsbereich.
   In Siteforum wird je Seite (.sf-app-content-page) IMMER ein Artikel
   (.sf-app-content-article) angelegt; die Clearfix-Zeile kann in beiden
   Wrappern sitzen. Je nach Seite liegt sie zudem als direktes Geschwister
   NEBEN dem Inhalt, direkt unter #sfsMain > .sf-main-width (dann ist sie
   wegen &nbsp; + Clearfix hoeher / breiter sichtbar). Daher alle drei Faelle
   abdecken. Bewusst eng gefasst (Kind-Kombinator beim dritten Fall), damit
   die Admin-Navigationsleiste (.sf-nav-main) NICHT getroffen wird. */
#sfsMain .sf-app-content-page .sf-row,
#sfsMain .sf-app-content-article .sf-row,
#sfsMain > .sf-main-width > .sf-row{display:none !important;}

/* Auto-Ueberschrift auf ARTIKEL-Seiten ausblenden.
   Storys, die als Artikel ausgegeben werden (Wrapper .sf-app-content-article,
   z. B. die menuelosen Einzel-/Vergleichsseiten), bekommen vom System
   automatisch eine <h1> mit dem Story-Namen vor den Body gesetzt
   (z. B. "Bauherrenhaftpflicht"). Das Artikel-Template steuert nur den Body,
   nicht diese Ueberschrift. Wir blenden sie aus, weil jede Story ihren
   eigenen gestalteten Seitenkopf (.atv-pagehead) mitbringt.
   ENG gefasst: nur die direkte <h1> im ersten .sf-main-width des Artikel-
   Wrappers. Die Kopf-Ueberschrift .atv-pagehead__title liegt tiefer und
   bleibt unberuehrt; Menueseiten (.sf-app-content-page) sind nicht betroffen. */
#sfsMain .sf-app-content-article > .sf-main-width > h1{display:none !important;}

/* ============================================================
   KOMPONENTEN 2026-07-31 — Wiederverwendbare Bausteine fuer ALLE
   Seiteninhalte. Gekapselt auf #atvantis-home; das gibt zugleich die
   noetige Spezifitaet, um Siteforum-Standardstyles (Linkfarben etc.)
   zu schlagen. Das Seiten-HTML enthaelt danach nur noch Struktur und
   Klassen, keine Inline-Styles mehr.
   ============================================================ */
@keyframes atv-zoom{0%,100%{transform:scale(1);}50%{transform:scale(1.07);}}
@keyframes atv-marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* --- Grundlagen im Inhaltsbereich --- */
/* PATCH 4 2026-08-04 — Hero-vs-Abschnitt-Versatz beheben.
   Siteforum legt neben dem Inhalt ein links gefloatetes Element (Admin-/
   Systemspalte .right). Grid-Container (.atv-splittext u. a.) weichen einem
   Float aus und rutschen nach rechts, normale Block-Container (Hero) nicht.
   Ergebnis: der Hero stand ~18px weiter links als die folgenden Abschnitte.
   flow-root macht den gesamten Inhalt zu einem eigenen Formatierungskontext,
   damit kein aeusserer Float mehr hineinwirkt und alle Sektionen buendig sind. */
#atvantis-home{display:flow-root;}
#atvantis-home a{color:inherit;text-decoration:none;}
#atvantis-home p{margin:0;}

/* --- Sektionen / Layout --- */
#atvantis-home .atv-section{padding:clamp(4.5rem,9vw,7rem) 0;}
#atvantis-home .atv-section--dark{background:var(--atv-dark);color:var(--atv-light);}
#atvantis-home .atv-section--light{background:var(--atv-light);color:var(--atv-dark);}
#atvantis-home .atv-section--white{background:#FFFFFF;color:var(--atv-dark);}
#atvantis-home .atv-container{max-width:var(--atv-maxwidth);margin:0 auto;padding:0 var(--atv-pad);}
#atvantis-home .atv-grid{display:grid;}
#atvantis-home .atv-grid--2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(1.25rem,2.5vw,2rem);}
#atvantis-home .atv-grid--3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(2.5rem,6vw,5rem);}
#atvantis-home .atv-grid--4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(1rem,1.6vw,1.25rem);}
#atvantis-home .atv-split{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(2.5rem,6vw,5rem);}

/* --- Eyebrow "// ..." --- */
#atvantis-home .atv-eyebrow{margin:0;font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--atv-accent);display:inline-flex;align-items:baseline;gap:.5rem;}
#atvantis-home .atv-eyebrow__mark{font-weight:700;letter-spacing:0;}

/* --- Ueberschriften --- */
#atvantis-home .atv-heading{margin:0;font-weight:300;font-size:clamp(1.6rem,3.2vw,2.3rem);letter-spacing:.06em;text-transform:uppercase;line-height:1.2;text-wrap:balance;color:inherit;}
#atvantis-home .atv-heading-plain{margin:0;font-weight:300;font-size:clamp(1.9rem,3.6vw,2.7rem);letter-spacing:.02em;line-height:1.15;max-width:20ch;text-wrap:balance;color:inherit;}

/* --- Buttons --- */
#atvantis-home .atv-btn{display:inline-flex;align-items:center;gap:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:.82rem;padding:1.05rem 2rem;border:none;border-radius:2px;cursor:pointer;transition:filter .25s,transform .25s,background .25s;}
#atvantis-home .atv-btn svg{width:16px;height:16px;flex:none;}
#atvantis-home .atv-btn--accent{background:var(--atv-accent);color:var(--atv-dark);}
#atvantis-home .atv-btn--accent:hover{filter:brightness(.93);transform:translateY(-2px);}
#atvantis-home .atv-btn--dark{background:var(--atv-dark);color:var(--atv-light);}
#atvantis-home .atv-btn--dark:hover{filter:brightness(1.25);transform:translateY(-2px);}
#atvantis-home .atv-btn--block{width:100%;justify-content:center;margin-top:.4rem;padding:1.05rem 1.8rem;}
#atvantis-home .atv-btn--phone{gap:.65rem;padding:.95rem 1.6rem;font-size:.9rem;letter-spacing:.06em;text-transform:none;}
#atvantis-home .atv-btn--phone svg{width:17px;height:17px;}
#atvantis-home .atv-btn--phone:hover{background:#000;filter:none;transform:none;}

/* --- Inline-Link "Mehr erfahren" --- */
#atvantis-home .atv-more{display:inline-flex;align-items:center;gap:.5rem;color:var(--atv-light);font-weight:600;font-size:.84rem;letter-spacing:.06em;text-transform:uppercase;transition:gap .2s,color .2s;}
#atvantis-home .atv-more svg{width:15px;height:15px;flex:none;}
#atvantis-home .atv-more:hover{gap:.85rem;color:var(--atv-accent);}
/* Gold-Variante des "Mehr"-Links (statt hell). */
#atvantis-home .atv-more--accent{color:var(--atv-accent);}
/* Mehr Abstand, wenn der Link direkt auf den Risikoprofil-Kasten folgt. */
#atvantis-home .atv-profiles + .atv-more{margin-top:clamp(2.4rem,5vw,3.4rem);}

/* --- Hero --- */
#atvantis-home .atv-hero{position:relative;overflow:hidden;background:var(--atv-dark);color:var(--atv-light);padding:clamp(5rem,11vw,9rem) 0 clamp(5.5rem,12vw,10rem);}
#atvantis-home .atv-hero .atv-container{position:relative;}
#atvantis-home .atv-hero__media{position:absolute;inset:0;overflow:hidden;pointer-events:none;}
#atvantis-home .atv-hero__bg{position:absolute;inset:0;background:url('/portals/h1418287/design/herostart.jpg') center center/cover no-repeat;filter:grayscale(1) contrast(1.03);transform-origin:center;animation:atv-zoom 30s ease-in-out infinite;}
#atvantis-home .atv-hero__scrim{position:absolute;inset:0;}
#atvantis-home .atv-hero__scrim--x{background:linear-gradient(90deg,rgba(20,20,20,.82) 0%,rgba(20,20,20,.45) 45%,rgba(20,20,20,.08) 100%);}
#atvantis-home .atv-hero__scrim--y{background:linear-gradient(0deg,rgba(20,20,20,.45) 0%,rgba(20,20,20,0) 45%);}
#atvantis-home .atv-hero__inner{max-width:860px;}
#atvantis-home .atv-hero__title{margin:1.4rem 0 0;font-weight:300;font-size:clamp(2rem,5vw,3.5rem);letter-spacing:.04em;text-transform:uppercase;line-height:1.18;text-wrap:balance;}
#atvantis-home .atv-hero__lead{margin:1.6rem 0 0;font-size:clamp(1.02rem,1.6vw,1.22rem);line-height:1.7;color:rgba(242,242,242,.76);max-width:660px;font-weight:300;}
#atvantis-home .atv-hero .atv-btn{margin-top:2.4rem;}

/* --- Positionierung --- */
#atvantis-home .atv-lead{flex:1 1 420px;margin:0;font-size:clamp(1.25rem,2.4vw,1.7rem);line-height:1.6;font-weight:300;color:var(--atv-dark);text-wrap:pretty;}
#atvantis-home .atv-logomark{flex:0 1 320px;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:clamp(2rem,4vw,2.8rem);text-align:center;}
#atvantis-home .atv-logomark__name{font-weight:300;font-size:clamp(1.9rem,4vw,2.4rem);letter-spacing:.34em;color:var(--atv-dark);line-height:1;padding-left:.34em;}
#atvantis-home .atv-logomark__sub{font-weight:500;font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--atv-accent);}

/* --- Saeulen --- */
#atvantis-home .atv-pillars{margin-top:2.6rem;}
#atvantis-home .atv-pillar{background:var(--atv-dark-2);border:1px solid rgba(242,242,242,.12);border-radius:3px;padding:clamp(1.8rem,3vw,2.6rem);transition:transform .25s,border-color .25s,background .25s;}
#atvantis-home .atv-pillar:hover{transform:translateY(-3px);border-color:var(--atv-accent);background:#242424;}
#atvantis-home .atv-pillar__eyebrow{margin:0;display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap;}
#atvantis-home .atv-pillar__eyebrow .atv-eyebrow__mark{color:var(--atv-accent);font-size:1.3rem;line-height:1;letter-spacing:.05em;}
#atvantis-home .atv-pillar__label{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--atv-accent);transition:color .18s;}
#atvantis-home .atv-pillar__label:hover{text-decoration:underline;text-underline-offset:3px;}
#atvantis-home .atv-pillar__title{margin:1.4rem 0 0;font-size:1.4rem;font-weight:600;letter-spacing:.02em;color:var(--atv-light);}
#atvantis-home .atv-pillar__text{margin:1rem 0 0;font-size:1.05rem;line-height:1.75;color:rgba(242,242,242,.7);}
#atvantis-home .atv-pillar .atv-more{margin-top:1.6rem;}

/* --- Leistungs-Kacheln --- */
#atvantis-home .atv-tiles{margin-top:2.8rem;}
#atvantis-home .atv-tile{background:var(--atv-off);border:1px solid rgba(26,26,26,.1);border-top:3px solid var(--atv-accent);border-radius:3px;padding:clamp(1.5rem,2.4vw,1.9rem);transition:border-color .25s,transform .25s;}
#atvantis-home .atv-tile:hover{border-color:var(--atv-accent);transform:translateY(-3px);}
/* Variante ohne goldenen Oberstrich (z. B. Immobilien "Drei Wege zur Immobilie"). */
#atvantis-home .atv-tiles--flat .atv-tile{border-top:1px solid rgba(26,26,26,.1);}
#atvantis-home .atv-tile__num{font-size:.8rem;font-weight:600;letter-spacing:.1em;color:var(--atv-accent);}
#atvantis-home .atv-tile__title{margin:.9rem 0 0;font-size:1.2rem;font-weight:600;color:var(--atv-dark);}
#atvantis-home .atv-tile__text{margin:.7rem 0 0;font-size:1rem;line-height:1.7;color:rgba(26,26,26,.78);}

/* --- Verbundenes Zellraster (zusammenhaengendes Gitter mit Haarlinien) ---
   Fuer Auflistungen, die als EIN zusammenhaengender Block wirken sollen
   (z. B. Kapitalanlagen "Ein breites Spektrum"), statt einzelner Karten mit
   Abstand (.atv-tiles). Die Trennlinien entstehen ueber die 1px-Luecken (gap),
   die den Container-Hintergrund durchscheinen lassen; die Zellen selbst sind
   weiss. Eine Zelle kann ueber zwei Spalten laufen (.atv-matrix__cell--wide),
   damit die letzte Reihe ohne leere Zelle voll wird. Ziffer/Titel/Text nutzen
   die .atv-tile__*-Styles. */
#atvantis-home .atv-matrix{margin-top:clamp(2.6rem,5vw,3.6rem);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(26,26,26,.12);border:1px solid rgba(26,26,26,.12);border-radius:3px;overflow:hidden;}
#atvantis-home .atv-matrix__cell{background:#FFFFFF;padding:clamp(1.7rem,2.6vw,2.3rem);}
/* Doppelt breite Zelle: ueberspannt zwei Spalten (fuellt z. B. die untere Reihe,
   sodass keine leere Zelle noetig ist). Auf einer Spalte zurueckgesetzt. */
#atvantis-home .atv-matrix__cell--wide{grid-column:span 2;}
/* "Mehr dazu unten"-Sprunglink innerhalb einer Zelle (Gold, Abwaerts-Pfeil,
   verweist auf die passende Detail-Section weiter unten auf der Seite). */
#atvantis-home .atv-matrix__more{margin-top:1.3rem;display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--atv-accent);transition:gap .2s,color .2s;}
#atvantis-home .atv-matrix__more svg{width:14px;height:14px;flex:none;}
#atvantis-home .atv-matrix__more:hover{gap:.72rem;color:#8A7B54;}
@media (max-width:860px){#atvantis-home .atv-matrix{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){#atvantis-home .atv-matrix{grid-template-columns:1fr;}#atvantis-home .atv-matrix__cell--wide{grid-column:auto;}}

/* --- Akkordeon (aufklappbare Sparten), z. B. Versicherungen "Absicherung fuer
   jeden Bereich". Natives <details>/<summary>, KEIN JavaScript.
   HINWEIS: In Siteforum den Story-Inhalt im HTML-/Quellcode-Modus einfuegen;
   der visuelle Editor kann <details> zerlegen. Fuer dunkle Abschnitte. --- */
#atvantis-home .atv-accgrid{margin-top:clamp(2.6rem,5vw,3.6rem);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,1.6vw,1.25rem);align-items:start;}
#atvantis-home .atv-acc{border:1px solid rgba(242,242,242,.14);border-radius:3px;background:rgba(242,242,242,.02);transition:border-color .2s;}
#atvantis-home .atv-acc[open]{border-color:rgba(179,165,134,.5);}
#atvantis-home .atv-acc__head{list-style:none;display:flex;align-items:center;gap:1rem;padding:clamp(1rem,1.8vw,1.25rem) clamp(1.1rem,2vw,1.4rem);cursor:pointer;}
#atvantis-home .atv-acc__head::-webkit-details-marker{display:none;}
#atvantis-home .atv-acc__num{flex:none;font-size:.8rem;font-weight:600;letter-spacing:.1em;color:var(--atv-accent);}
#atvantis-home .atv-acc__title{flex:1;font-size:1.05rem;font-weight:600;color:var(--atv-light);line-height:1.3;}
#atvantis-home .atv-acc__chev{flex:none;width:18px;height:18px;color:rgba(242,242,242,.6);transition:transform .2s,color .2s;}
#atvantis-home .atv-acc[open] .atv-acc__chev{transform:rotate(180deg);color:var(--atv-accent);}
#atvantis-home .atv-acc__body{margin:0;padding:0 clamp(1.1rem,2vw,1.4rem) clamp(1.1rem,2vw,1.4rem);font-size:1rem;line-height:1.7;color:rgba(242,242,242,.74);}
@media (max-width:900px){#atvantis-home .atv-accgrid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:600px){#atvantis-home .atv-accgrid{grid-template-columns:1fr;}}
/* JS-Erweiterung (optional, Code in atvantis.js): volles Panel UNTER der Zeile.
   Ist das Skript aktiv, markiert es das Raster mit .atv-accgrid--js; dann wird
   der In-Spalte-Text ausgeblendet und der Inhalt im vollbreiten Panel gezeigt.
   Ohne Skript bleibt das native In-Spalte-Akkordeon als Fallback erhalten. */
#atvantis-home .atv-accgrid--js .atv-acc__body{display:none;}
#atvantis-home .atv-acc__panel{grid-column:1/-1;margin:0;border:1px solid rgba(179,165,134,.4);border-radius:3px;background:rgba(242,242,242,.03);padding:clamp(1.2rem,2.4vw,1.8rem) clamp(1.3rem,2.6vw,2rem);font-size:1rem;line-height:1.7;color:rgba(242,242,242,.8);}

/* --- Vermoegensverwaltungs-Block --- */
#atvantis-home .atv-vv{margin-top:clamp(3.5rem,7vw,5.5rem);background:#FFFFFF;border-top:4px solid var(--atv-accent);padding:clamp(2.8rem,5vw,3.8rem) clamp(1.6rem,4vw,3.4rem);text-align:center;}
#atvantis-home .atv-vv__eyebrow{display:block;font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--atv-accent);line-height:1.5;}
#atvantis-home .atv-vv__title{margin:1.1rem 0 0;font-weight:300;font-size:clamp(1.7rem,3.4vw,2.4rem);letter-spacing:.03em;line-height:1.15;color:var(--atv-dark);}
#atvantis-home .atv-vv__body{max-width:760px;margin:1.5rem auto 0;}
#atvantis-home .atv-vv__text{margin:0;font-size:clamp(1.05rem,1.7vw,1.2rem);line-height:1.75;color:rgba(26,26,26,.82);font-weight:300;text-wrap:pretty;}
#atvantis-home .atv-vv .atv-btn{margin-top:1.8rem;}

/* --- Vertrauen --- */
#atvantis-home .atv-trust{margin-top:clamp(2.5rem,5vw,3.4rem);}
#atvantis-home .atv-trust__item h3{margin:0;font-size:1.1rem;font-weight:600;letter-spacing:.02em;color:var(--atv-accent);}
#atvantis-home .atv-trust__item p{margin:.8rem 0 0;font-size:1.02rem;line-height:1.7;color:rgba(242,242,242,.74);font-weight:300;}

/* --- Partner / Marquee --- */
#atvantis-home .atv-partners{margin-top:clamp(3rem,5vw,4rem);padding-top:clamp(2rem,3vw,2.6rem);border-top:1px solid rgba(179,165,134,.22);}
#atvantis-home .atv-partners__head{position:relative;display:flex;align-items:center;justify-content:center;}
#atvantis-home .atv-partners__title{text-align:center;margin:0;font-size:.72rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--atv-accent);}
#atvantis-home .atv-allpartners{position:absolute;right:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(242,242,242,.5);transition:color .25s,gap .25s;}
#atvantis-home .atv-allpartners svg{width:14px;height:14px;flex:none;}
#atvantis-home .atv-allpartners:hover{color:var(--atv-accent);gap:.7rem;}
#atvantis-home .atv-marquee{margin-top:1.8rem;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);}
#atvantis-home .atv-marquee__track{display:flex;width:max-content;animation:atv-marquee 26s linear infinite;}
#atvantis-home .atv-marquee:hover .atv-marquee__track{animation-play-state:paused;}
#atvantis-home .atv-marquee__item{flex:0 0 auto;padding:0 clamp(2rem,5vw,4rem);font-weight:300;font-size:1.15rem;letter-spacing:.22em;color:rgba(242,242,242,.4);white-space:nowrap;}

/* --- Kontakt --- */
#atvantis-home .atv-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(2.5rem,5vw,4.5rem);align-items:start;}
#atvantis-home .atv-contact__text{margin:1.2rem 0 0;font-size:1.05rem;line-height:1.75;color:rgba(26,26,26,.8);max-width:440px;}
#atvantis-home .atv-contact__actions{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.9rem;}
#atvantis-home .atv-hours{margin-top:2.4rem;padding-top:1.8rem;border-top:1px solid rgba(26,26,26,.14);}
#atvantis-home .atv-hours .atv-eyebrow{margin-bottom:.9rem;}
#atvantis-home .atv-hours__row{display:flex;justify-content:space-between;gap:1.5rem;max-width:340px;font-size:1rem;color:rgba(26,26,26,.82);margin-top:.4rem;}
#atvantis-home .atv-hours__val{font-weight:500;}

/* --- Formular --- */
#atvantis-home .atv-formcard{background:#FFFFFF;border:1px solid rgba(26,26,26,.1);border-radius:3px;padding:clamp(1.6rem,3vw,2.4rem);box-shadow:0 1px 3px rgba(26,26,26,.05);}
#atvantis-home .atv-form{display:flex;flex-direction:column;gap:1.1rem;}
#atvantis-home .atv-form__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.1rem;}
#atvantis-home .atv-field{display:flex;flex-direction:column;gap:.4rem;}
#atvantis-home .atv-field__label{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(26,26,26,.65);}
#atvantis-home .atv-input{padding:.85rem .9rem;border:1px solid rgba(26,26,26,.2);border-radius:2px;background:#fff;width:100%;color:var(--atv-dark);transition:border-color .18s;}
#atvantis-home .atv-input:focus{border-color:var(--atv-accent);outline:none;}
#atvantis-home textarea.atv-input{resize:vertical;}
#atvantis-home .atv-select{appearance:none;padding-right:2.4rem;cursor:pointer;background-image:url('data:image/svg+xml;utf8,<svg xmlns=%22http://www.w3.org/2000/svg%22 width=%2216%22 height=%2216%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%231A1A1A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><polyline points=%226 9 12 15 18 9%22/></svg>');background-repeat:no-repeat;background-position:right .9rem center;}
#atvantis-home .atv-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.86rem;line-height:1.5;color:rgba(26,26,26,.7);}
#atvantis-home .atv-consent input{margin-top:.2rem;accent-color:var(--atv-accent);width:16px;height:16px;flex:none;}
#atvantis-home .atv-consent a{color:var(--atv-dark);text-decoration:underline;text-underline-offset:2px;}
#atvantis-home .atv-captcha{display:flex;align-items:center;gap:.85rem;padding:.9rem 1rem;border:1px solid rgba(26,26,26,.2);border-radius:2px;background:#fff;}
#atvantis-home .atv-captcha input{width:22px;height:22px;flex:none;accent-color:var(--atv-accent);}
#atvantis-home .atv-captcha__text{font-size:.9rem;color:rgba(26,26,26,.75);}
#atvantis-home .atv-captcha__badge{margin-left:auto;display:flex;flex-direction:column;align-items:center;gap:2px;color:rgba(26,26,26,.4);}
#atvantis-home .atv-captcha__badge span{font-size:.52rem;letter-spacing:.06em;text-transform:uppercase;}

@media (prefers-reduced-motion:reduce){
  #atvantis-home .atv-hero__bg,
  #atvantis-home .atv-marquee__track{animation:none !important;}
}

/* ============================================================
   KOMPONENTEN — UNTERSEITEN 2026-07-31
   Zusaetzliche wiederverwendbare Bausteine (Seitenkopf mit Bild,
   Link-Karten, Zulassungs-Faktenspalte, Info-Spalten, zweispaltiger
   Text, Bild-CTA-Band). Bilder werden per Inline-background-image am
   .atv-imgbg gesetzt (Asset-Referenz, kein Styling), alles andere hier.
   ============================================================ */

/* --- Gemeinsame Bild-Ebenen (Kopf + CTA-Band) --- */
#atvantis-home .atv-imgbg{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;filter:grayscale(1) contrast(1.02);}
#atvantis-home .atv-imgscrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,20,20,.93) 0%,rgba(20,20,20,.78) 44%,rgba(20,20,20,.45) 100%);}

/* --- Kompakter Seitenkopf --- */
#atvantis-home .atv-pagehead{position:relative;overflow:hidden;background:var(--atv-dark);color:var(--atv-light);padding:clamp(3.5rem,7.5vw,6rem) 0;}
#atvantis-home .atv-pagehead .atv-container{position:relative;}
#atvantis-home .atv-pagehead__inner{max-width:720px;}
#atvantis-home .atv-pagehead__title{margin:1.2rem 0 0;font-weight:300;font-size:clamp(1.9rem,4.2vw,3rem);letter-spacing:.04em;text-transform:uppercase;line-height:1.18;text-wrap:balance;color:var(--atv-light);}
#atvantis-home .atv-pagehead__lead{margin:1.4rem 0 0;font-size:clamp(1.02rem,1.6vw,1.2rem);line-height:1.7;color:rgba(242,242,242,.8);max-width:640px;font-weight:300;}

/* --- Leads / Fliesstext, kontextabhaengige Farbe --- */
#atvantis-home .atv-lead-2{max-width:820px;margin:0;font-size:clamp(1.08rem,1.7vw,1.2rem);line-height:1.8;font-weight:300;text-wrap:pretty;}
#atvantis-home .atv-body{margin:0;font-size:1.08rem;line-height:1.8;max-width:820px;}
#atvantis-home .atv-section--dark .atv-lead-2{color:rgba(242,242,242,.82);}
#atvantis-home .atv-section--light .atv-lead-2,#atvantis-home .atv-section--white .atv-lead-2{color:rgba(26,26,26,.82);}
#atvantis-home .atv-section--dark .atv-body{color:rgba(242,242,242,.76);}
#atvantis-home .atv-section--light .atv-body,#atvantis-home .atv-section--white .atv-body{color:rgba(26,26,26,.82);}

/* Abstaende zwischen Kopfzeilen-Elementen innerhalb einer Sektion */
#atvantis-home .atv-eyebrow + .atv-heading,
#atvantis-home .atv-eyebrow + .atv-heading-plain{margin-top:1.1rem;}
#atvantis-home .atv-heading + .atv-lead-2,
#atvantis-home .atv-heading-plain + .atv-lead-2,
#atvantis-home .atv-heading + .atv-body{margin-top:1.4rem;}
#atvantis-home .atv-lead-2 + .atv-steps{margin-top:clamp(2.4rem,5vw,3.2rem);}
/* .atv-linkcards traegt seinen oberen Abstand jetzt selbst (siehe oben),
   damit er auch greift, wenn zwischen Ueberschrift und Karten ein Fliesstext
   (.atv-lead-2 / .atv-body) steht. Die alte Sonderregel
   ".atv-heading + .atv-linkcards" ist dadurch ueberfluessig geworden. */
#atvantis-home .atv-body + .atv-more{margin-top:1.6rem;}

/* --- Verlinkte Karten (Aufgaben/Bereiche) --- */
#atvantis-home .atv-linkcards{margin-top:clamp(2.4rem,5vw,3.2rem);display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(1.25rem,2.5vw,2rem);}
/* Vier gleich breite Karten in EINER Reihe (z. B. Leistungen "Unsere Bereiche").
   Der auto-fit-Standard oben passt bei 260px Mindestbreite im 1180er-Container
   nur drei Spalten ein, die vierte Karte bricht um. Diese Variante erzwingt vier
   gleiche Spalten und staffelt darunter sauber (2 Spalten, dann 1). */
#atvantis-home .atv-linkcards--4{grid-template-columns:repeat(4,minmax(0,1fr));}
@media (max-width:1040px){#atvantis-home .atv-linkcards--4{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){#atvantis-home .atv-linkcards--4{grid-template-columns:1fr;}}
#atvantis-home .atv-linkcard{position:relative;display:block;background:#FFFFFF;border:1px solid rgba(26,26,26,.1);border-radius:3px;padding:clamp(1.8rem,3vw,2.4rem);box-shadow:0 1px 3px rgba(26,26,26,.05);transition:transform .25s,border-color .25s;}
#atvantis-home .atv-linkcard:hover{transform:translateY(-3px);border-color:var(--atv-accent);}
#atvantis-home .atv-linkcard__num{font-size:.8rem;font-weight:600;letter-spacing:.1em;color:var(--atv-accent);}
#atvantis-home .atv-linkcard__title{margin:.8rem 0 0;font-size:1.3rem;font-weight:600;color:var(--atv-dark);}
#atvantis-home .atv-linkcard__text{margin:.8rem 0 0;font-size:1rem;line-height:1.7;color:rgba(26,26,26,.78);}
#atvantis-home .atv-linkcard__more{margin-top:1.4rem;display:inline-flex;align-items:center;gap:.5rem;color:var(--atv-dark);font-weight:600;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;transition:gap .2s,color .2s;}
#atvantis-home .atv-linkcard__more svg{width:14px;height:14px;flex:none;}
#atvantis-home .atv-linkcard:hover .atv-linkcard__more{gap:.8rem;color:var(--atv-accent);}
/* Gestreckter Link: ganze Karte klickbar, ohne Block-Elemente in ein <a> zu packen */
#atvantis-home .atv-linkcard__more::after{content:"";position:absolute;inset:0;}

/* --- Info-Spalten mit Oberlinie (z.B. 01/02/03) --- */
#atvantis-home .atv-steps{margin-top:clamp(2.6rem,5vw,3.6rem);display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:clamp(1.6rem,3vw,2.6rem);}
#atvantis-home .atv-step{position:relative;border-top:1px solid rgba(179,165,134,.28);padding-top:1.4rem;}
/* Goldener Punkt am linken Anfang der Oberlinie (wie im Layout). Sitzt mittig
   auf der Linie; reines CSS, kein zusaetzliches Markup noetig. */
#atvantis-home .atv-step::before{content:"";position:absolute;top:0;left:0;width:10px;height:10px;border-radius:50%;background:var(--atv-accent);transform:translateY(-50%);box-shadow:0 0 0 5px rgba(179,165,134,.25);}
#atvantis-home .atv-step__label{margin:0;font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--atv-accent);}
/* Layout-Variante der Prozess-Schritte: grosse, helle Ziffer + separater
   fetter Titel (statt der kompakten Zeile ".atv-step__label"). Beide Varianten
   koexistieren; Seiten mit __label bleiben unveraendert. Farben kontextabhaengig
   (hell/dunkel), analog zu den anderen Bausteinen. */
#atvantis-home .atv-step__num{display:block;margin:0;font-weight:300;font-size:clamp(2.2rem,3.4vw,2.9rem);line-height:1;letter-spacing:.02em;color:rgba(26,26,26,.22);}
#atvantis-home .atv-step__title{margin:.85rem 0 0;font-size:1.25rem;font-weight:600;line-height:1.25;color:var(--atv-dark);}
#atvantis-home .atv-section--dark .atv-step__num{color:rgba(242,242,242,.28);}
#atvantis-home .atv-section--dark .atv-step__title{color:var(--atv-light);}

/* --- Risikoprofil-Box mit Balken ("Strategien fuer unterschiedliche Profile").
   Helle Karte (auch auf dunklem Abschnitt lesbar): links Text, rechts vier
   ansteigende Balken. Die Balkenhoehen sind Daten und stehen als height-Inline
   im Story-Markup. --- */
#atvantis-home .atv-profiles{margin-top:clamp(2.6rem,5vw,3.8rem);background:var(--atv-light);border-radius:4px;padding:clamp(1.8rem,3.5vw,2.8rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,4vw,3.5rem);align-items:center;}
#atvantis-home .atv-profiles__title{margin:0;font-size:1.3rem;font-weight:600;color:var(--atv-dark);}
#atvantis-home .atv-profiles__text{margin:1rem 0 0;font-size:1.02rem;line-height:1.75;color:rgba(26,26,26,.72);font-weight:300;text-wrap:pretty;}
#atvantis-home .atv-profiles__chart{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.7rem,1.6vw,1.3rem);}
#atvantis-home .atv-profiles__col{display:flex;flex-direction:column;}
#atvantis-home .atv-profiles__track{display:flex;align-items:flex-end;height:170px;}
#atvantis-home .atv-profiles__bar{width:100%;border-radius:2px 2px 0 0;background:var(--atv-accent);}
#atvantis-home .atv-profiles__cap{margin-top:.8rem;font-size:.62rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#8A7B54;}
@media (max-width:760px){#atvantis-home .atv-profiles{grid-template-columns:1fr;}}

/* Abstand zwischen Fliesstext (.atv-prose) und einem direkt folgenden Button. */
#atvantis-home .atv-prose + .atv-btn{margin-top:clamp(1.8rem,3vw,2.4rem);}
#atvantis-home .atv-step__text{margin:.7rem 0 0;font-size:1.02rem;line-height:1.75;font-weight:300;text-wrap:pretty;color:inherit;}

/* --- Zweispaltiger Text (Ueberschrift links / Text rechts) --- */
#atvantis-home .atv-splittext{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(2rem,5vw,4rem);align-items:start;}
/* Traegt die LINKE Spalte ein Label (Eyebrow) UEBER der Ueberschrift, soll der
   Text der RECHTEN Spalte auf Hoehe der UEBERSCHRIFT beginnen, nicht auf Hoehe
   des Labels. Ein unsichtbarer Platzhalter in Eyebrow-Groesse (Zeile + Abstand
   wie .atv-eyebrow und .atv-eyebrow + .atv-heading) schiebt den rechten Text
   exakt um diese Label-Zeile nach unten. Ohne Eyebrow greift die Regel nicht,
   dann bleibt alles wie bisher. Auf schmalen (gestapelten) Screens deaktiviert. */
#atvantis-home .atv-splittext > div:first-child:has(.atv-eyebrow) + div::before{
  content:"//";
  display:block;
  font-size:.72rem;
  line-height:1.2;
  letter-spacing:.2em;
  visibility:hidden;
  margin:0 0 1.1rem;
}
@media (max-width:620px){
  #atvantis-home .atv-splittext > div:first-child:has(.atv-eyebrow) + div::before{display:none;}
}

/* --- Zentrierter Intro-/Textblock (Ueberschrift + Prosa mittig, begrenzte Breite).
   Gegenstueck zu .atv-splittext fuer Abschnitte, die mittig statt zweispaltig
   stehen sollen (z. B. "Wer wir sind"). Text-align:center vererbt sich auf die
   enthaltene .atv-prose, daher dort keine Extra-Regel noetig. --- */
#atvantis-home .atv-centerblock{max-width:820px;margin-inline:auto;text-align:center;}

/* --- Zulassung/Erlaubnis: Text + Faktenspalte --- */
#atvantis-home .atv-splitcols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.4rem,5vw,4.5rem);align-items:start;}
#atvantis-home .atv-prose .atv-heading{margin:0 0 1.4rem;}
#atvantis-home .atv-prose p{margin:0;font-size:1.08rem;line-height:1.8;color:rgba(26,26,26,.82);font-weight:300;}
#atvantis-home .atv-prose p + p{margin-top:1.2rem;}
#atvantis-home .atv-inlinelink{color:#8A7B54;text-decoration:underline;text-underline-offset:3px;transition:color .18s;}
#atvantis-home .atv-inlinelink:hover{color:var(--atv-accent);}
#atvantis-home .atv-facts{margin:clamp(4rem,7vw,5.2rem) 0 0;border-top:1px solid rgba(26,26,26,.14);}
#atvantis-home .atv-facts__row{display:grid;grid-template-columns:minmax(120px,.5fr) minmax(0,1fr);gap:1rem 1.5rem;padding:1.15rem 0;border-bottom:1px solid rgba(26,26,26,.09);}
#atvantis-home .atv-facts__term{margin:0;font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#8A7B54;}
#atvantis-home .atv-facts__val{margin:0;font-size:1rem;line-height:1.6;color:var(--atv-dark);font-variant-numeric:tabular-nums;}
#atvantis-home .atv-facts__note{margin-top:1.6rem;font-size:1rem;line-height:1.7;color:rgba(26,26,26,.72);font-weight:300;}
#atvantis-home .atv-textlink{margin-top:1rem;display:inline-flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#8A7B54;transition:color .18s,gap .18s;}
#atvantis-home .atv-textlink svg{width:14px;height:14px;flex:none;}
#atvantis-home .atv-textlink:hover{color:var(--atv-accent);gap:.75rem;}

/* --- Bild-CTA-Band (z.B. "Fuer Vermittler") --- */
#atvantis-home .atv-imgband{position:relative;overflow:hidden;background:var(--atv-dark);color:var(--atv-light);padding:clamp(5rem,10vw,8rem) 0;}
#atvantis-home .atv-imgband .atv-container{position:relative;}
#atvantis-home .atv-imgband__inner{max-width:640px;}
#atvantis-home .atv-imgband__text{margin:1.3rem 0 0;font-size:1.08rem;line-height:1.8;color:rgba(242,242,242,.8);font-weight:300;}
#atvantis-home .atv-imgband .atv-btn{margin-top:clamp(2rem,4vw,2.6rem);}

/* --- Responsive: Faktenspalte/Zweispalter stapeln --- */
@media (max-width:760px){
  #atvantis-home .atv-splitcols{grid-template-columns:1fr;}
  #atvantis-home .atv-facts{margin-top:0;}
}

/* ============================================================
   KOMPONENTEN — GRUPPE UNTERNEHMEN / PARTNER / KARRIERE 2026-07-31
   ============================================================ */

/* --- Schlanker Kontakt-/CTA-Streifen (Seitenabschluss) --- */
#atvantis-home .atv-ctaband{display:flex;flex-direction:column;align-items:flex-start;gap:0;}
#atvantis-home .atv-ctaband__text{margin:1.1rem 0 0;font-size:1.05rem;line-height:1.75;max-width:520px;}
#atvantis-home .atv-section--dark .atv-ctaband__text{color:rgba(242,242,242,.76);}
#atvantis-home .atv-section--light .atv-ctaband__text,#atvantis-home .atv-section--white .atv-ctaband__text{color:rgba(26,26,26,.8);}
#atvantis-home .atv-ctaband__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem;margin-top:2rem;}
#atvantis-home .atv-ctaband__phone{display:inline-flex;align-items:center;gap:.65rem;background:var(--atv-accent);color:var(--atv-dark);font-weight:600;letter-spacing:.06em;font-size:.9rem;padding:.95rem 1.6rem;border-radius:2px;transition:filter .2s,transform .2s;}
#atvantis-home .atv-ctaband__phone svg{width:17px;height:17px;flex:none;}
#atvantis-home .atv-ctaband__phone:hover{filter:brightness(.93);transform:translateY(-2px);}
#atvantis-home .atv-ctaband__link{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:.84rem;letter-spacing:.06em;text-transform:uppercase;color:var(--atv-accent);transition:gap .2s;}
#atvantis-home .atv-ctaband__link svg{width:14px;height:14px;flex:none;}
#atvantis-home .atv-ctaband__link:hover{gap:.8rem;}
/* Kontakt-Band mit Bildhintergrund (Bruecke). Bild via .atv-imgbg,
   dunkler Verlauf links via .atv-imgscrim, Inhalt darueber. */
#atvantis-home .atv-ctasection{position:relative;overflow:hidden;}
#atvantis-home .atv-ctasection > .atv-container{position:relative;}

/* --- Gruppengesellschaften-Karten --- */
#atvantis-home .atv-groupwrap{margin-top:clamp(2.4rem,5vw,3.2rem);background:rgba(26,26,26,.025);border:1px solid rgba(26,26,26,.08);border-radius:4px;padding:clamp(1rem,2.2vw,1.6rem);display:flex;flex-direction:column;gap:clamp(1rem,2.2vw,1.6rem);}
#atvantis-home .atv-groupcards{display:grid;gap:clamp(1rem,2vw,1.5rem);}
#atvantis-home .atv-groupcards--focus{grid-template-columns:repeat(2,minmax(0,1fr));}
#atvantis-home .atv-groupcards--rest{grid-template-columns:repeat(3,minmax(0,1fr));}
@media (max-width:860px){
  #atvantis-home .atv-groupcards--focus,
  #atvantis-home .atv-groupcards--rest{grid-template-columns:1fr;}
}
#atvantis-home .atv-groupcard{position:relative;display:flex;flex-direction:column;background:#FFFFFF;border:1px solid rgba(26,26,26,.1);border-radius:3px;padding:clamp(1.6rem,2.6vw,2.1rem);}
#atvantis-home .atv-groupcard--focus{border-top:3px solid var(--atv-accent);box-shadow:0 1px 3px rgba(26,26,26,.05);padding:clamp(1.9rem,3vw,2.5rem);}
#atvantis-home .atv-groupcard--link{transition:transform .25s,border-color .25s;}
#atvantis-home .atv-groupcard--link:hover{transform:translateY(-3px);border-color:var(--atv-accent);}
#atvantis-home .atv-groupcard__top{display:flex;align-items:center;justify-content:space-between;gap:1rem;}
#atvantis-home .atv-groupcard__num{font-size:.8rem;font-weight:600;letter-spacing:.1em;color:var(--atv-accent);}
#atvantis-home .atv-groupcard__badge{font-size:.62rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--atv-accent);border:1px solid rgba(179,165,134,.5);border-radius:100px;padding:.25rem .65rem;}
#atvantis-home .atv-groupcard__name{margin:1rem 0 0;font-size:1.15rem;font-weight:600;color:var(--atv-dark);line-height:1.3;}
#atvantis-home .atv-groupcard__place{margin:.35rem 0 0;font-size:.8rem;letter-spacing:.04em;color:rgba(26,26,26,.5);}
#atvantis-home .atv-groupcard__text{margin:.9rem 0 0;font-size:.98rem;line-height:1.65;color:rgba(26,26,26,.75);}
#atvantis-home .atv-groupcard__more{margin-top:1.3rem;display:inline-flex;align-items:center;gap:.45rem;font-weight:600;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--atv-dark);transition:gap .2s,color .2s;}
#atvantis-home .atv-groupcard__more svg{width:13px;height:13px;flex:none;}
#atvantis-home .atv-groupcard--link:hover .atv-groupcard__more{gap:.75rem;color:var(--atv-accent);}
#atvantis-home .atv-groupcard__more::after{content:"";position:absolute;inset:0;}

/* --- Stellenanzeigen (aufklappbar via <details>) --- */
#atvantis-home .atv-jobs{margin-top:clamp(2.4rem,5vw,3.2rem);display:flex;flex-direction:column;gap:1rem;}
#atvantis-home .atv-job{border:1px solid rgba(26,26,26,.12);border-radius:3px;background:#FFFFFF;overflow:hidden;}
#atvantis-home .atv-job__head{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.2rem,2.5vw,1.6rem) clamp(1.4rem,3vw,2rem);}
#atvantis-home .atv-job__head::-webkit-details-marker{display:none;}
#atvantis-home .atv-job__meta{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--atv-accent);}
#atvantis-home .atv-job__title{margin:.5rem 0 0;font-size:1.15rem;font-weight:600;color:var(--atv-dark);line-height:1.3;}
#atvantis-home .atv-job__toggle{flex:none;display:inline-flex;align-items:center;gap:.4rem;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(26,26,26,.55);}
#atvantis-home .atv-job__toggle svg{width:16px;height:16px;transition:transform .2s;}
#atvantis-home .atv-job[open] .atv-job__toggle svg{transform:rotate(180deg);}
#atvantis-home .atv-job__body{padding:0 clamp(1.4rem,3vw,2rem) clamp(1.4rem,3vw,2rem);}
#atvantis-home .atv-job__intro{margin:0 0 0;padding-top:1.4rem;border-top:1px solid rgba(26,26,26,.08);font-size:1rem;line-height:1.75;color:rgba(26,26,26,.82);}
#atvantis-home .atv-job__grid{margin-top:1.6rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.6rem 2.4rem;}
#atvantis-home .atv-job__subhead{margin:0 0 .7rem;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#8A7B54;}
#atvantis-home .atv-joblist{display:flex;flex-direction:column;gap:.5rem;}
#atvantis-home .atv-joblist li{position:relative;padding-left:1.1rem;font-size:.98rem;line-height:1.55;color:rgba(26,26,26,.8);}
#atvantis-home .atv-joblist li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;background:var(--atv-accent);border-radius:50%;}
#atvantis-home .atv-job__contact{margin-top:1.8rem;padding-top:1.4rem;border-top:1px solid rgba(26,26,26,.08);font-size:.95rem;line-height:1.6;color:rgba(26,26,26,.7);}
#atvantis-home .atv-job__body .atv-btn{margin-top:1.6rem;}
#atvantis-home .atv-initiativ{margin-top:1.6rem;background:var(--atv-off);border:1px dashed rgba(26,26,26,.18);border-radius:3px;padding:clamp(1.6rem,3vw,2.2rem);}
#atvantis-home .atv-initiativ__title{margin:0;font-size:1.1rem;font-weight:600;color:var(--atv-dark);}
#atvantis-home .atv-initiativ__text{margin:.7rem 0 0;font-size:1rem;line-height:1.7;color:rgba(26,26,26,.78);max-width:640px;}
#atvantis-home .atv-initiativ .atv-btn{margin-top:1.4rem;}

/* --- Karriere Variante 2: Uebersicht + Einzel-Stellenseite --- */
#atvantis-home .atv-backlink{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:1.8rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--atv-accent);transition:gap .2s;}
#atvantis-home .atv-backlink svg{width:14px;height:14px;flex:none;}
#atvantis-home .atv-backlink:hover{gap:.7rem;}
#atvantis-home .atv-pagehead__title + .atv-job__meta{display:block;margin-top:1.1rem;}
#atvantis-home .atv-linkcard .atv-job__meta{display:block;}

/* --- Positionen-Liste (Zeilen, jede Zeile verlinkt eine Stellen-Story) --- */
#atvantis-home .atv-poslist{margin-top:clamp(2rem,4vw,2.8rem);border-top:1px solid rgba(26,26,26,.12);}
#atvantis-home .atv-posrow{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1.25rem 2rem;padding:clamp(1.4rem,3vw,1.9rem) 0;border-bottom:1px solid rgba(26,26,26,.12);}
#atvantis-home .atv-posrow .atv-job__meta{display:block;}
#atvantis-home .atv-posrow__title{margin:.5rem 0 0;font-size:clamp(1.15rem,2vw,1.4rem);font-weight:600;color:var(--atv-dark);line-height:1.25;transition:color .2s;}
#atvantis-home .atv-posrow__desc{margin:.5rem 0 0;font-size:1rem;line-height:1.6;color:rgba(26,26,26,.7);max-width:640px;}
#atvantis-home .atv-posrow__link{flex:none;display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--atv-accent);transition:gap .2s;}
#atvantis-home .atv-posrow__link svg{width:15px;height:15px;flex:none;}
#atvantis-home .atv-posrow:hover .atv-posrow__title{color:var(--atv-accent);}
#atvantis-home .atv-posrow:hover .atv-posrow__link{gap:.8rem;}
#atvantis-home .atv-posrow__link::after{content:"";position:absolute;inset:0;}

/* ============================================================
   PATCH 5 2026-08-04 — Bausteine fuer die Leistungs-Seiten
   (Prosa auf dunklem Grund, Abstaende, Fonds-Risikohinweis,
   Vergleichs-Liste, Immobilien-Karten, iframe-Einbettung).
   ============================================================ */

/* Prosa auch auf dunklem Hintergrund lesbar + Abstand nach Ueberschrift/Lead */
#atvantis-home .atv-section--dark .atv-prose p{color:rgba(242,242,242,.78);}
#atvantis-home .atv-heading + .atv-prose,
#atvantis-home .atv-heading-plain + .atv-prose,
#atvantis-home .atv-lead-2 + .atv-prose{margin-top:1.4rem;}
#atvantis-home .atv-steps + .atv-more{margin-top:clamp(2rem,4vw,2.6rem);}

/* Eckdaten in einer zweispaltigen Aufteilung nicht nach unten schieben */
#atvantis-home .atv-splitcols .atv-facts{margin-top:1.1rem;}

/* Fonds-Risikohinweis: Kleingedrucktes, zweispaltig, abgesetzt */
#atvantis-home .atv-riskblock{margin-top:clamp(2.5rem,5vw,4rem);padding-top:clamp(2rem,4vw,2.8rem);border-top:1px solid rgba(26,26,26,.12);}
#atvantis-home .atv-risknote{margin-top:1.1rem;columns:2;column-gap:clamp(2rem,4vw,3.5rem);}
#atvantis-home .atv-risknote p{margin:0 0 1rem;break-inside:avoid;font-size:.82rem;line-height:1.65;color:rgba(26,26,26,.6);text-align:justify;hyphens:auto;}
#atvantis-home .atv-risknote p:last-child{margin-bottom:0;}
@media (max-width:760px){#atvantis-home .atv-risknote{columns:1;}}

/* Vergleichs-Liste (Versicherungsvergleich): Kacheln als getrennte Karten,
   editorfest (Div + gestreckter Link). Aktive Sparte = --active. */
#atvantis-home .atv-cmplist{margin-top:clamp(2.4rem,5vw,3.2rem);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(1rem,1.6vw,1.25rem);}
#atvantis-home .atv-cmprow{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#FFFFFF;border:1px solid rgba(26,26,26,.1);border-radius:3px;box-shadow:0 1px 3px rgba(26,26,26,.05);padding:clamp(1.3rem,2vw,1.6rem) clamp(1.3rem,2.4vw,1.7rem);transition:transform .25s,border-color .25s,background .25s;}
#atvantis-home .atv-cmprow:hover{background:#FFFFFF;transform:translateY(-2px);border-color:var(--atv-accent);}
#atvantis-home .atv-cmprow__name{font-size:1.02rem;font-weight:500;color:var(--atv-dark);line-height:1.3;}
#atvantis-home .atv-cmprow__ico{flex:none;color:var(--atv-accent);display:inline-flex;transition:transform .2s;}
#atvantis-home .atv-cmprow__ico svg{width:16px;height:16px;}
#atvantis-home .atv-cmprow:hover .atv-cmprow__ico{transform:translateX(3px);}
#atvantis-home .atv-cmprow__link::after{content:"";position:absolute;inset:0;}
/* Aktive Sparte (aktuelle Einzelseite): gold hinterlegt, nicht verlinkt */
#atvantis-home .atv-cmprow--active{background:var(--atv-accent);border-color:var(--atv-accent);box-shadow:none;cursor:default;}
#atvantis-home .atv-cmprow--active:hover{transform:none;}
#atvantis-home .atv-cmprow--active .atv-cmprow__name{color:var(--atv-dark);font-weight:600;}
#atvantis-home .atv-cmprow--active .atv-cmprow__ico{color:var(--atv-dark);}
#atvantis-home .atv-cmpnote{margin-top:1.6rem;font-size:1rem;line-height:1.7;color:rgba(26,26,26,.72);font-weight:300;}
#atvantis-home .atv-cmpnote a{color:var(--atv-dark);text-decoration:underline;text-underline-offset:2px;}
#atvantis-home .atv-cmpnote a:hover{color:var(--atv-accent);}

/* iframe-Einbettung (z. B. mr-money Vergleichsrechner) */
#atvantis-home .atv-embed{margin-top:clamp(2rem,4vw,2.8rem);width:100%;background:#FFFFFF;border:1px solid rgba(26,26,26,.12);border-radius:3px;overflow:hidden;}
#atvantis-home .atv-embed iframe{display:block;width:100%;border:0;}
#atvantis-home .atv-embed--placeholder{min-height:440px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;text-align:center;padding:2rem;background:var(--atv-off);border-style:dashed;border-color:rgba(26,26,26,.25);color:rgba(26,26,26,.5);}
#atvantis-home .atv-embed--placeholder .atv-embed__hint{font-size:.95rem;letter-spacing:.02em;}
#atvantis-home .atv-embed--placeholder .atv-embed__tag{font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--atv-accent);}

/* Vergleichs-Fussnote auch auf dunklem Abschnitt lesbar */
#atvantis-home .atv-section--dark .atv-cmpnote{color:rgba(242,242,242,.72);}
#atvantis-home .atv-section--dark .atv-cmpnote a{color:#FFFFFF;}
#atvantis-home .atv-section--dark .atv-cmpnote a:hover{color:var(--atv-accent);}

/* Lange Begriffe in den Eckdaten sauber umbrechen (z. B. Kapitalverwaltungsgesellschaft) */
#atvantis-home .atv-facts__term{overflow-wrap:break-word;hyphens:auto;}

/* Variante: kompakte, sauber ausgerichtete Eckdaten (z. B. Speerbridge).
   - Begriffe ohne Grossbuchstaben (schmaler, wie im Entwurf), einzeilig.
   - ALLE Zeilen teilen sich EIN Raster, damit die Werte exakt untereinander
     stehen. Dazu wird .atv-facts selbst zum Raster und die einzelnen Zeilen
     per display:contents aufgeloest; Trennlinie und Innenabstand wandern auf
     die Zellen (Begriff/Wert). */
#atvantis-home .atv-facts--nowrap{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:clamp(1.5rem,3vw,2.4rem);}
#atvantis-home .atv-facts--nowrap .atv-facts__row{display:contents;}
#atvantis-home .atv-facts--nowrap .atv-facts__term,
#atvantis-home .atv-facts--nowrap .atv-facts__val{padding:1.05rem 0;border-bottom:1px solid rgba(26,26,26,.09);}
#atvantis-home .atv-facts--nowrap .atv-facts__term{white-space:nowrap;overflow-wrap:normal;hyphens:manual;text-transform:none;letter-spacing:.01em;font-size:.95rem;font-weight:600;color:var(--atv-dark);}
/* Schmale Screens: zurueck auf gestapelte Zeilen (Begriff ueber Wert). */
@media (max-width:560px){
  #atvantis-home .atv-facts--nowrap{display:block;}
  #atvantis-home .atv-facts--nowrap .atv-facts__row{display:block;padding:1.05rem 0;border-bottom:1px solid rgba(26,26,26,.09);}
  #atvantis-home .atv-facts--nowrap .atv-facts__term,
  #atvantis-home .atv-facts--nowrap .atv-facts__val{padding:0;border-bottom:0;white-space:normal;}
  #atvantis-home .atv-facts--nowrap .atv-facts__val{margin-top:.3rem;}
}

/* Merkmalliste (z. B. Vermittler-Leistungsspektrum): zweispaltig, Goldstrich */
#atvantis-home .atv-checklist{margin-top:clamp(2.6rem,5vw,3.6rem);display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.85rem 3.5rem;max-width:760px;list-style:none;padding:0;}
#atvantis-home .atv-checklist li{display:flex;gap:.7rem;border-bottom:1px solid rgba(179,165,134,.28);padding-bottom:.85rem;font-size:1.05rem;line-height:1.5;color:rgba(26,26,26,.82);font-weight:300;}
#atvantis-home .atv-checklist li::before{content:"\2014";color:var(--atv-accent);flex:none;}
#atvantis-home .atv-section--dark .atv-checklist li{color:rgba(242,242,242,.82);}
#atvantis-home .atv-tiles + .atv-lead-2,#atvantis-home .atv-tiles + .atv-body{margin-top:clamp(2.6rem,5vw,3.6rem);}

/* ============================================================
   PATCH 7 2026-08-05 — Eckdaten/Facts editorfest machen.
   Der Story-Editor verpackt dt/dd oft in ein <dl>. Dann liegt das ganze
   <dl> in nur EINER Spalte des .atv-facts__row-Rasters und die Werte werden
   viel zu schmal (Label ueber Wert statt daneben). Fix: enthaelt eine Zeile
   ein <dl>, wird die Zeile zum Block und das <dl> selbst zum zweispaltigen
   Raster (Label links, Wert rechts). Trennlinie/Innenabstand wandern ans <dl>.
   Die alte Variante (dt/dd direkt in .atv-facts__row) bleibt unveraendert.
   ============================================================ */
#atvantis-home .atv-facts__row:has(> dl){display:block;padding:0;border-bottom:0;}
#atvantis-home .atv-facts__row > dl{
  display:grid;
  grid-template-columns:minmax(120px,.5fr) minmax(0,1fr);
  gap:1rem 1.5rem;
  align-items:baseline;
  margin:0;
  padding:1.15rem 0;
  border-bottom:1px solid rgba(26,26,26,.09);
}
#atvantis-home .atv-facts__row > dl > .atv-facts__term,
#atvantis-home .atv-facts__row > dl > .atv-facts__val{margin:0;}

/* ============================================================
   PATCH 8 2026-08-05 — Siteforum-Kontaktformular im ATVANTIS-Design.
   Das Formularmodul erzeugt die Felder ueber Platzhalter
   ($metadata_form[...]) innerhalb unseres Layout-Wrappers .atv-sfform.
   Wir stylen die vom System erzeugten Controls (input/select/textarea/
   checkbox/Button) passend zu .atv-form. Top-level gescoped, damit es
   unabhaengig vom Einbindungsort greift. Preview im Modul bleibt
   unformatiert (dort ist atvantis.css nicht geladen) – Design greift auf
   der Kontaktseite.
   ============================================================ */
.atv-sfform{display:flex;flex-direction:column;gap:1.1rem;}
.atv-sfform__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.1rem;}
.atv-sfform__field{display:flex;flex-direction:column;gap:.4rem;}
.atv-sfform__label{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(26,26,26,.65);}

/* Textfelder, Auswahl, mehrzeilig */
.atv-sfform input[type="text"],
.atv-sfform input[type="email"],
.atv-sfform input[type="tel"],
.atv-sfform select,
.atv-sfform textarea{
  width:100%;box-sizing:border-box;
  padding:.85rem .9rem;
  border:1px solid rgba(26,26,26,.2);
  border-radius:2px;
  background:#fff;
  color:var(--atv-dark);
  font-family:inherit;font-size:1rem;
  transition:border-color .18s;
}
.atv-sfform input[type="text"]:focus,
.atv-sfform input[type="email"]:focus,
.atv-sfform input[type="tel"]:focus,
.atv-sfform select:focus,
.atv-sfform textarea:focus{border-color:var(--atv-accent);outline:none;}
.atv-sfform textarea{min-height:150px;resize:vertical;}
.atv-sfform select{
  appearance:none;-webkit-appearance:none;padding-right:2.4rem;cursor:pointer;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns=%22http://www.w3.org/2000/svg%22 width=%2216%22 height=%2216%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%231A1A1A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22><polyline points=%226 9 12 15 18 9%22/></svg>');
  background-repeat:no-repeat;background-position:right .9rem center;
}

/* Datenschutz-Haekchen */
.atv-sfform__consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.86rem;line-height:1.5;color:rgba(26,26,26,.7);}
.atv-sfform__consent input[type="checkbox"]{margin:.2rem 0 0;width:16px;height:16px;flex:none;accent-color:var(--atv-accent);}
.atv-sfform__consent label{margin:0;cursor:pointer;}
.atv-sfform__consent a{color:var(--atv-dark);text-decoration:underline;text-underline-offset:2px;}
.atv-sfform__consent br{display:none;}

/* Captcha (nur fuer Gaeste sichtbar; bei eingeloggten Nutzern leer) */
.atv-sfform__captcha img{max-width:100%;height:auto;}
.atv-sfform__captcha input[type="text"]{max-width:220px;}

/* Aktionen / Senden-Button: System-Umbrueche weg, Button im Akzent-Stil */
.atv-sfform__actions{margin-top:.4rem;}
.atv-sfform__actions br,
.atv-sfform__actions hr,
.atv-sfform__actions .cleaner{display:none;}
.atv-sfform__actions .sf-buttons{display:block;}
.atv-sfform__actions input[type="submit"],
.atv-sfform__actions button,
.atv-sfform__actions .sf-buttons a{
  display:inline-flex;align-items:center;justify-content:center;
  width:100%;box-sizing:border-box;
  background:var(--atv-accent);color:var(--atv-dark);
  font-family:inherit;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:.82rem;
  padding:1.05rem 1.8rem;border:none;border-radius:2px;cursor:pointer;text-decoration:none;
  transition:filter .25s,transform .25s;
}
.atv-sfform__actions input[type="submit"]:hover,
.atv-sfform__actions button:hover,
.atv-sfform__actions .sf-buttons a:hover{filter:brightness(.93);transform:translateY(-2px);}
