/*Kategorien-Links-Texte*/
@media screen and (max-width: 768px) {
    div.ce_text.block > table {
        width: auto !important;
    }
}

/*Claude Überarbeitung-02.08.2026 - 12:15*/


@media screen and (max-width: 390px) {
#header .nav ul.level_1 > li > a {
    min-height: calc(46/12*1vw) !important;
    padding: calc(9/12*1vw) calc(11/12*1vw) !important;
    font-size: calc(15/12*1vw) !important;
}

#main .agentlist.agentlist > div.profile {
    grid-template-columns: calc(108/12*1vw) minmax(0, 1fr) !important;
    gap: calc(11/12*1vw) calc(12/12*1vw) !important;
    padding: calc(12/12*1vw) !important;
}


}

/* ==================================================
    MOBILER HEADER: HAMBURGER – LOGO – LOGIN
    ================================================== */
/* Login-Icon im mobilen Header (Kopf & Schultern) */
html body #wrapper#wrapper #header#header > .inside > a.mobile_btn.mobile_login::before {
    top: calc(22/12*1vw) !important;
    width: calc(27/12*1vw) !important;
    height: calc(27/12*1vw) !important;
}

html body #wrapper#wrapper #header#header > .inside > a.mobile_btn.mobile_login::after {
    top: calc(52/12*1vw) !important;
    width: calc(49/12*1vw) !important;
    height: calc(27/12*1vw) !important;
    border-radius: calc(26/12*1vw) calc(26/12*1vw) calc(7/12*1vw) calc(7/12*1vw) !important;
}
@media screen and (max-width: 768px) {
html, body {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
}

body {
    background: #fff !important;
    color: var(--sonalea-text) !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    -webkit-text-size-adjust: 100%;
}

*, *::before, *::after {
    box-sizing: border-box !important;
}

img {
    max-width: 100%;
    height: auto;
}

#wrapper, #header, #container, #footer {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
}

/* ==================================================
        HEADER UND LOGO
        ================================================== */
#header .toptext, #header .mobile_menu, #header .mobile_login, #header .menu_close {
    display: none !important;
}

/* Menü bleibt sichtbar – kein Hamburger */
#header .nav nav {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

#header .nav nav::-webkit-scrollbar {
    display: none;
}

/* ==================================================
        MOBILE REIHENFOLGE
        Banner – Login – Busylist – Filter – Berater
        ================================================== */
#left, #left > .inside, #main, #main > .inside {
    display: contents !important;
}

#left > .inside > .block {
    display: none !important;
}

#main .agentlist {
    order: 5 !important;
}

#main .pagination {
    order: 6 !important;
}

#main .cte_tariffs {
    order: 7 !important;
}

#main > .inside > h1, #main > .inside > .cte_text {
    order: 8 !important;
}

#main > .inside > .clear, #container > .clear {
    display: none !important;
}

/* ==================================================
        STATISCHER MOBILBANNER
        ================================================== */
#cteFader66 {
    order: 1 !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #f9f1ef !important;
}

/* ==================================================
        HEUTE BESONDERS BELIEBT
        ================================================== */
#main .busylist {
    order: 3 !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(14/12*1vw) !important;
    padding: 0 0 calc(10/12*1vw) !important;
    overflow: hidden !important;
    border: 0 !important;
    background: var(--sonalea-rose-light) !important;
}

#main .busylist .bh {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(10/12*1vw) !important;
    padding: calc(9/12*1vw) calc(12/12*1vw) !important;
    background: rgba(201, 144, 159, 0.88) !important;
    color: #fff !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
    line-height: calc(32/12*1vw) !important;
    text-align: center !important;
}

#main .busylist > .inside {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

#main .busylist > .inside::-webkit-scrollbar {
    display: none;
}

#main .busylist ul {
    display: none !important;
}

#main .busylist ul.active, #main .busylist ul.first.active {
    position: static !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
    padding: calc(4/12*1vw) calc(12/12*1vw) calc(9/12*1vw) !important;
    opacity: 1 !important;
    transform: none !important;
    scroll-snap-type: x proximity;
}

#main .busylist li {
    display: block !important;
    flex: 0 0 126px !important;
    width: calc(126/12*1vw) !important;
    margin: 0 calc(7/12*1vw) !important;
    padding: 0 !important;
    text-align: center !important;
    scroll-snap-align: start;
}

#main .busylist .online {
    color: var(--sonalea-green) !important;
}

#main .busylist .busy {
    color: var(--sonalea-busy) !important;
}

#main .busylist .offline {
    color: #999 !important;
}

#main .busylist .btn {
    display: none !important;
}

/* ==================================================
    BELIEBTE BERATER – MITTIG STARTEN, RECHTS WEITERSCROLLEN
    ================================================== */

/* ==================================================
        BERATERFILTER – ZWEI FELDER PRO REIHE
        ================================================== */
#main form#tabnav li:nth-child(6) {
    order: 6 !important;
}

/* ==================================================
        BERATERLISTE UND BERATERKACHELN
        ================================================== */
#main .agentlist.agentlist {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 calc(8/12*1vw) !important;
    overflow: visible !important;
    background: #fff !important;
}

/* Bild, Sterne, Bewertungen und Gespräche */
#main .agentlist.agentlist > div.profile > .left img.pic, #main .agentlist.agentlist > div.profile > .left img.img.pic {
    position: static !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    object-fit: cover !important;
    object-position: center top !important;
}

/* Name über dem Profiltext, beides neben dem Bild */
#main .agentlist.agentlist > div.profile .center h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    width: 100% !important;
    margin: 0 0 calc(7/12*1vw) !important;
    padding: 0 !important;
    text-align: center !important;
}

#main .agentlist.agentlist > div.profile .center h3 a {
    display: block !important;
    width: 100% !important;
    color: var(--sonalea-wine) !important;
    font-size: clamp(calc(23/12*1vw), 6vw, calc(30/12*1vw)) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
}

#main .agentlist.agentlist > div.profile .center .teaser {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    color: var(--sonalea-text) !important;
    font-size: clamp(calc(15/12*1vw), 4.2vw, calc(20/12*1vw)) !important;
    font-weight: 400 !important;
    line-height: 1.48 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-line-clamp: unset !important;
}

/* Aktueller Hinweis */
/* Preise und Aktionsbuttons */
#main .agentlist.agentlist > div.profile > .right > * {
    position: static !important;
    float: none !important;
    clear: none !important;
    box-sizing: border-box !important;
}

#main .agentlist.agentlist > div.profile > .right > div.chat > a.button.chat, #main .agentlist.agentlist > div.profile > .right > a.button.chat {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

#main .agentlist.agentlist > div.profile.status_online > .right a.button.click2call, #main .agentlist.agentlist > div.profile.status_online > .right a.button.chat:not(.offline) {
    border-color: var(--sonalea-green) !important;
    background: var(--sonalea-green) !important;
}

#main .agentlist.agentlist > div.profile.status_busy > .right a.button.click2call, #main .agentlist.agentlist > div.profile.status_busy > .right a.button.chat {
    border-color: var(--sonalea-busy) !important;
    background: var(--sonalea-busy) !important;
}

#main .agentlist.agentlist > div.profile > .right a.button.offline {
    border-color: #a9a9a9 !important;
    background: #a9a9a9 !important;
}

/* Letzte Bewertung unter Hinweis und Buttons */
#main .agentlist.agentlist > div.profile .center .last_rating {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: calc(13/12*1vw) calc(14/12*1vw) !important;
    overflow: visible !important;
    border: 0 !important;
    border-top: 1px solid #ead1d8 !important;
    border-radius: 0 !important;
    background: #fff9fb !important;
    color: var(--sonalea-wine) !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-align: center !important;
}

#main .agentlist.agentlist > div.profile .center .last_rating::before {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(6/12*1vw) !important;
    content: "Letzte Bewertung" !important;
    color: var(--sonalea-wine) !important;
    font-size: clamp(calc(18/12*1vw), 4.8vw, calc(21/12*1vw)) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
}

#main .agentlist.agentlist > div.profile .center .last_rating br {
    display: none !important;
}

#main .agentlist.agentlist > div.profile .center .last_rating p {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    color: var(--sonalea-text) !important;
    font-size: clamp(calc(16/12*1vw), 4.2vw, calc(19/12*1vw)) !important;
    font-weight: 400 !important;
    line-height: 1.48 !important;
    text-align: center !important;
    white-space: normal !important;
    text-overflow: clip !important;
}

/* ==================================================
        WEITERE HAUPTINHALTE UND FOOTER
        ================================================== */
#main .pagination, #main .cte_tariffs, #main > .inside > h1, #main > .inside > .cte_text {
    width: calc(100% - calc(24/12*1vw)) !important;
    margin-right: calc(12/12*1vw) !important;
    margin-left: calc(12/12*1vw) !important;
}

#footer {
    padding: calc(18/12*1vw) calc(14/12*1vw) !important;
    overflow: hidden !important;
}

#footer > .inside {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

#footer img {
    max-width: 100% !important;
    height: auto !important;
}

/* Logo mittig */
/* Hamburger links */
/* Login rechts */
/* Menü zunächst geschlossen */
/*
      * Mögliche Öffnungsklassen des vorhandenen Systems.
      * Die tatsächlich verwendete Klasse prüfen wir nach dem Klick.
      */
#header .nav ul.level_1 > li:last-child > a {
    border-bottom: 0 !important;
}

/* Feststehender Header */
#header {
    height: var(--mobile-header-height) !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    z-index: 9999 !important;
    display: block !important;
    width: 100% !important;
    min-height: var(--mobile-header-height) !important;
    max-height: var(--mobile-header-height) !important;
    margin: 0 !important;
    overflow: visible !important;
    box-shadow: 0 4px 14px rgba(112, 65, 81, 0.18) !important;
}

/* Platz unter dem festen Header */
#container {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    padding: 0 !important;
    background: #fff !important;
    margin-top: 70px !important;
}

#header > .inside {
    display: grid !important;
    flex-direction: column !important;
    width: 100% !important;
    height: var(--mobile-header-height) !important;
    margin: 0 !important;
    padding: 0 clamp(calc(14/12*1vw), 3vw, calc(34/12*1vw)) !important;
    position: relative !important;
    grid-template-columns: clamp(80px, 11vw, 125px)
             minmax(0, 1fr)
             clamp(80px, 11vw, 125px) !important;
    grid-template-rows: var(--mobile-header-height) auto !important;
    align-items: center !important;
    min-height: var(--mobile-header-height) !important;
    background: #ffffff !important;
    max-height: none !important;
    overflow: visible !important;
}

#header .toptext {
    display: none !important;
}

/* Logo groß und mittig */
/* Hamburger links */
#header .mobile_menu {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: start !important;
    position: static !important;
    display: flex !important;
    visibility: visible !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(96/12*1vw) !important;
    height: calc(96/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 3px solid #dfb6c3 !important;
    border-radius: 50% !important;
    background: #fcf3f6 !important;
    color: #9a5069 !important;
    font-size: 0 !important;
    cursor: pointer !important;
    z-index: 20 !important;
}

/* Login rechts */
#header .mobile_login {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: center !important;
    justify-self: end !important;
    position: static !important;
    display: flex !important;
    visibility: visible !important;
    align-items: center !important;
    justify-content: center !important;
    width: var(--mobile-icon-size) !important;
    height: var(--mobile-icon-size) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 3px solid #dfb6c3 !important;
    border-radius: 50% !important;
    background: #fcf3f6 !important;
    color: #9a5069 !important;
    font-size: calc(20/12*1vw) !important;
    text-decoration: none !important;
    z-index: 20 !important;
}

/* Menü geschlossen */
/* Menü geöffnet */
#header .nav.mod_simplenav.active, #header .nav.mod_simplenav.open, #header .nav.mod_simplenav.show, body.menu_open #header .nav.mod_simplenav, body.menu-open #header .nav.mod_simplenav {
    display: block !important;
    visibility: visible !important;
}

/* Logo deutlich größer */
/* Hamburger größer */
/* Login-Schloss größer */
#header .logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: calc(4/12*1vw) 0 !important;
    background: #fff !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    height: var(--mobile-header-height) !important;
    max-height: var(--mobile-header-height) !important;
    overflow: visible !important;
}

#cteFader66 .slide {
    display: none !important;
}

#cteFader66 .slide1 {
    position: relative !important;
    inset: auto !important;
    z-index: 2 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 5 / 4 !important;
    opacity: 1 !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    background-image: url("/files/layout/img/Mobil/Mobilbanner.png") !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
}

/* Alle Sliderbewegungen abschalten */
#cteFader66 .sliderContainer, #cteFader66 .mask, #cteFader66 .mover {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    transform: none !important;
    top: 10px !important;
    left: auto !important;
    transition: none !important;
    animation: none !important;
}

/* Nur das neue Mobilbild anzeigen */
#cteFader66 .slide:not(.slide1) {
    display: none !important;
}

/* Pfeile und Punkte entfernen */
#cteFader66 > .btn, #cteFader66 > ul.nav {
    display: none !important;
}

/* Alten Loginbereich unter dem Banner mobil entfernen */
/* ==================================================
    HEUTE BESONDERS BELIEBT – MOBILE SCROLLREIHE
    ================================================== */
/* Vollkommen runde, mittig zugeschnittene Bilder */
#main .busylist li img {
    display: block !important;
    width: calc(200/12*1vw) !important;
    height: calc(200/12*1vw) !important;
    margin: 0 auto calc(12/12*1vw) !important;
    border: 4px solid #d9a5b3 !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    object-position: center center !important;
    min-width: calc(200/12*1vw) !important;
    max-width: calc(200/12*1vw) !important;
    min-height: calc(200/12*1vw) !important;
    max-height: calc(200/12*1vw) !important;
    padding: 0 !important;
    background: #ffffff !important;
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
}

/* Name größer */
#main .busylist .name {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    color: var(--sonalea-text) !important;
    font-size: clamp(calc(23/12*1vw), 2.7vw, calc(30/12*1vw)) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    min-height: calc(68/12*1vw) !important;
}

/* Status größer */
#main .busylist .status {
    display: block !important;
    margin-top: calc(5/12*1vw) !important;
    font-size: clamp(calc(20/12*1vw), 2.3vw, calc(26/12*1vw)) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

#main form#tabnav {
    order: 4 !important;
    display: block !important;
    width: calc(100% - calc(28/12*1vw)) !important;
    height: auto !important;
    margin: calc(18/12*1vw) calc(14/12*1vw) calc(24/12*1vw) !important;
    padding: 0 !important;
    overflow: visible !important;
}

/* Reihenfolge */
/* Alle Filter über die gesamte Breite */
/* Aktiver Filter */
#main form#tabnav ul.tabnav > li.active > a {
    background: #c9909f !important;
    color: #ffffff !important;
    border-color: #c9909f !important;
}

/* Suchfeld ganz oben */
#main form#tabnav ul.tabnav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(58px, auto) !important;
    gap: calc(10/12*1vw) !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    flex-direction: column !important;
}

/* Beratersuche: erste Reihe, volle Breite */
/* Alle Berater: zweite Reihe, volle Breite */
#main form#tabnav li:nth-child(1) {
    order: 2 !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
}

/* Chatberater: dritte Reihe links */
#main form#tabnav li:nth-child(2) {
    order: 3 !important;
    grid-column: 1 !important;
}

/* Mailberater: dritte Reihe rechts */
#main form#tabnav li:nth-child(3) {
    order: 4 !important;
    grid-column: 2 !important;
}

/* Neue Berater: vierte Reihe links */
#main form#tabnav li:nth-child(4) {
    order: 5 !important;
    grid-column: 1 !important;
}

/* Aktionsberater: vierte Reihe rechts */
#main form#tabnav li:nth-child(5) {
    order: 6 !important;
    grid-column: 2 !important;
}

#main form#tabnav ul.tabnav > li {
    float: none !important;
    display: block !important;
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: calc(62/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

#main form#tabnav ul.tabnav > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: calc(64/12*1vw) !important;
    margin: 0 !important;
    padding: calc(10/12*1vw) calc(15/12*1vw) !important;
    border-radius: calc(8/12*1vw) !important;
    background: #fcf3f6 !important;
    color: #8a6871 !important;
    font-size: clamp(calc(22/12*1vw), 2.8vw, calc(30/12*1vw)) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;
    border: 1px solid #efdbe1 !important;
    min-width: 0 !important;
    padding-right: calc(8/12*1vw) !important;
    padding-left: calc(8/12*1vw) !important;
}

#main form#tabnav li.last {
    order: 1 !important;
    position: relative !important;
    width: 100% !important;
    margin-bottom: calc(5/12*1vw) !important;
    grid-column: 1 / -1 !important;
}

#main form#tabnav input.search {
    display: block !important;
    width: 100% !important;
    height: calc(68/12*1vw) !important;
    margin: 0 !important;
    padding: 0 calc(56/12*1vw) 0 calc(18/12*1vw) !important;
    border: 2px solid #d7a7b1 !important;
    border-radius: calc(9/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-size: clamp(calc(23/12*1vw), 3vw, calc(31/12*1vw)) !important;
    line-height: calc(68/12*1vw) !important;
    padding-right: calc(64/12*1vw) !important;
    padding-left: calc(64/12*1vw) !important;
    font-weight: 400 !important;
    text-align: center !important;
}

#main form#tabnav input.search::placeholder {
    color: #80636c !important;
    opacity: 1 !important;
    font-weight: 400 !important;
    text-align: center !important;
}

/* Sichtbare Lupe */
#main form#tabnav li.last .fa-search {
    position: absolute !important;
    top: 50% !important;
    right: calc(20/12*1vw) !important;
    color: #a44063 !important;
    font-size: calc(32/12*1vw) !important;
    pointer-events: none !important;
    transform: translateY(-50%) !important;
    cursor: pointer !important;
    z-index: 3 !important;
}

/*
      * Unsichtbarer echter Absende-Button liegt
      * über der Lupe und macht sie anklickbar.
      */
#main form#tabnav input.go {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    z-index: 4 !important;
    display: block !important;
    width: calc(68/12*1vw) !important;
    height: calc(68/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 calc(9/12*1vw) calc(9/12*1vw) 0 !important;
    background: transparent !important;
    opacity: 0 !important;
    cursor: pointer !important;
}

#header .nav ul.level_1 > li {
    float: none !important;
    flex: 1 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
}

#header .nav ul.level_1 > li, #header .nav ul.level_1 > li > a {
    width: 100% !important;
}

#header .nav ul.level_1, #header .nav ul.level_1 > li, #header .nav ul.level_1 > li > a {
    background: transparent !important;
}

#header .nav ul.level_1 > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: calc(58/12*1vw) !important;
    padding: calc(11/12*1vw) calc(18/12*1vw) !important;
    color: #75354d !important;
    font-size: clamp(calc(26/12*1vw), 3.2vw, calc(35/12*1vw)) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    width: 100% !important;
    border-bottom: 1px solid rgba(132, 72, 92, 0.22) !important;
    text-align: left !important;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.55) !important;
    background: transparent !important;
}

#header .nav ul.level_1 {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    flex-direction: column !important;
}

#header .nav.mod_simplenav {
    position: absolute !important;
    display: none !important;
    visibility: hidden !important;
    width: min(54%, calc(340/12*1vw)) !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(239, 219, 225, 0.9) !important;
    transform: none !important;
    opacity: 1 !important;
    grid-column: auto !important;
    grid-row: auto !important;
    z-index: 10000 !important;
    top: 100% !important;
    right: auto !important;
    left: 0 !important;
    max-height: calc(100vh - var(--mobile-header-height)) !important;
    overflow-y: auto !important;
    max-width: calc(340/12*1vw) !important;
    border-radius: 0 0 calc(8/12*1vw) 0 !important;
    box-shadow: 0 6px 16px rgba(91, 47, 63, 0.22) !important;
    backdrop-filter: blur(3px) !important;
    -webkit-backdrop-filter: blur(3px) !important;
    grid-area: auto !important;
    bottom: auto !important;
}

/* Logo größer */
/* Hamburger-Symbol größer */
/* Schloss größer */
:root {
    --sonalea-wine: #86163e;
    --sonalea-rose: #c9909f;
    --sonalea-rose-dark: #b65f7d;
    --sonalea-rose-light: #fcf3f6;
    --sonalea-rose-border: #e7c4cf;
    --sonalea-text: #68424f;
    --sonalea-muted: #8a6871;
    --sonalea-green: #81ab87;
    --sonalea-busy: #a0838b;
    --sonalea-button: #a0838b;
    --mobile-header-height: clamp(15px, 17vw, 230px);
    --mobile-icon-size: clamp(88px, 9.5vw, 128px);
}

#header .logo a {
    display: flex !important;
    width: clamp(calc(380/12*1vw), 62vw, calc(830/12*1vw)) !important;
    margin: 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: none !important;
    height: calc(var(--mobile-header-height) - calc(8/12*1vw)) !important;
    padding: 0 !important;
    overflow: visible !important;
}

#header .logo img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    max-width: none !important;
    max-height: calc(var(--mobile-header-height) - calc(16/12*1vw)) !important;
    object-fit: contain !important;
    transform: translateY(12px) scale(1.22) !important;
    transform-origin: center center !important;
    /* keine starke skalierung mehr */
         transform: translateY(5px) !important;
}

#header .mobile_menu::before {
    content: "☰" !important;
    display: block !important;
    color: #9a5069 !important;
    font-size: clamp(calc(50/12*1vw), 5.6vw, calc(70/12*1vw)) !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

#header .mobile_login .fa-lock {
    color: #9a5069 !important;
    font-size: clamp(calc(42/12*1vw), 4.7vw, calc(58/12*1vw)) !important;
}

/* Gesamte Kachel */
#main .agentlist.agentlist > div.profile {
    position: relative !important;
    display: grid !important;
    grid-template-columns: calc(230/12*1vw) minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto auto auto !important;
    gap: calc(18/12*1vw) calc(24/12*1vw) !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 calc(24/12*1vw) !important;
    padding: calc(24/12*1vw) !important;
    overflow: visible !important;
    border: 2px solid #eccbd7 !important;
    border-radius: calc(10/12*1vw) !important;
    background: #ffffff !important;
    box-shadow: 0 3px 10px rgba(113, 35, 64, 0.09) !important;
}

#main .agentlist.agentlist > div.profile > .center {
    display: contents !important;
}

#main .agentlist.agentlist > div.profile > .clear {
    display: none !important;
}

/* ==============================================
        PROFILBILD UND ZAHLEN
        ============================================== */
#main .agentlist.agentlist > div.profile > .left {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    grid-template-rows: auto auto auto !important;
    justify-content: center !important;
    align-content: start !important;
    align-items: center !important;
    gap: calc(8/12*1vw) calc(6/12*1vw) !important;
    float: none !important;
    width: calc(230/12*1vw) !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    position: static !important;
}

/* Profilbild */
#main .agentlist.agentlist > div.profile > .left > a:not(.rating) {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: calc(210/12*1vw) !important;
    height: calc(252/12*1vw) !important;
    aspect-ratio: 101 / 121 !important;
    margin: 0 auto calc(4/12*1vw) !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: calc(8/12*1vw) !important;
}

#main .agentlist.agentlist > div.profile > .left img.pic {
    display: block !important;
    width: calc(210/12*1vw) !important;
    min-width: calc(210/12*1vw) !important;
    max-width: calc(210/12*1vw) !important;
    height: calc(252/12*1vw) !important;
    min-height: calc(252/12*1vw) !important;
    max-height: calc(252/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: calc(8/12*1vw) !important;
    object-fit: cover !important;
    object-position: center top !important;
}

/* Sterne unter das Bild verschieben */
#main .agentlist.agentlist > div.profile > .left > a.rating {
    position: static !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    display: block !important;
    visibility: visible !important;
    width: auto !important;
    height: calc(34/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
}

#main .agentlist.agentlist > div.profile .rating .stars {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    height: calc(34/12*1vw) !important;
    background: none !important;
    font-size: 0 !important;
    line-height: calc(34/12*1vw) !important;
}

#main .agentlist.agentlist > div.profile .rating .stars::before {
    display: block !important;
    content: "★★★★★" !important;
    color: #c98aa0 !important;
    font-size: calc(27/12*1vw) !important;
    line-height: calc(34/12*1vw) !important;
    letter-spacing: 1px !important;
    white-space: nowrap !important;
}

/* Informationen wieder sichtbar */
#main .agentlist.agentlist > div.profile > .left > ul.infos {
    display: contents !important;
    visibility: visible !important;
}

#main .agentlist.agentlist > div.profile > .left li.pin {
    display: none !important;
}

/* Anzahl der Bewertungen hinter den Sternen */
#main .agentlist.agentlist > div.profile > .left li.ratings {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #80666e !important;
    font-size: calc(19/12*1vw) !important;
    line-height: calc(34/12*1vw) !important;
    white-space: nowrap !important;
}

/* Gespräche darunter */
#main .agentlist.agentlist > div.profile > .left li.calls {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 600 !important;
    line-height: calc(30/12*1vw) !important;
    text-align: center !important;
    white-space: nowrap !important;
}

/* ==============================================
        NAME UND PROFILTEXT NEBEN DEM BILD
        ============================================== */
#main .agentlist.agentlist > div.profile h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    width: 100% !important;
    margin: 0 0 calc(10/12*1vw) !important;
    padding: 0 !important;
    text-align: center !important;
}

#main .agentlist.agentlist > div.profile h3 a {
    display: block !important;
    width: 100% !important;
    color: #86163e !important;
    font-size: calc(36/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
}

#main .agentlist.agentlist > div.profile p.teaser {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 calc(10/12*1vw) !important;
    overflow: visible !important;
    color: #653647 !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
    white-space: normal !important;
}

/* ==============================================
        AKTUELLER HINWEIS
        ============================================== */
#main .agentlist.agentlist > div.profile > .notice {
    position: static !important;
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: calc(18/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(8/12*1vw) !important;
    background: rgba(210, 116, 148, 0.18) !important;
    color: #68424f !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

#main .agentlist.agentlist > div.profile > .notice::before {
    display: block !important;
    content: "Aktueller Hinweis" !important;
    margin: 0 0 calc(7/12*1vw) !important;
    color: #86163e !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* ==============================================
        PREISE UND BUTTONS
        ============================================== */
#main .agentlist.agentlist > div.profile > .right {
    position: static !important;
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto auto !important;
    align-items: stretch !important;
    gap: calc(10/12*1vw) calc(14/12*1vw) !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

#main .agentlist.agentlist > div.profile > .right > div.chat {
    display: contents !important;
}

#main .agentlist.agentlist > div.profile > .right small.tariff.disable {
    display: none !important;
}

/* Telefonpreis */
#main .agentlist.agentlist > div.profile > .right > small.tariff:not(.disable) {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

/* Chatpreis */
#main .agentlist.agentlist > div.profile > .right > div.chat > small.tariff:not(.disable) {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

#main .agentlist.agentlist > div.profile > .right small.tariff:not(.disable) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(38/12*1vw) !important;
    margin: 0 !important;
    padding: calc(3/12*1vw) calc(6/12*1vw) !important;
    color: #a62958 !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

#main .agentlist.agentlist > div.profile > .right > a.button.click2call {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

#main .agentlist.agentlist > div.profile > .right > div.chat > a.button.chat {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

#main .agentlist.agentlist > div.profile > .right > a.button.pm {
    grid-column: 1 !important;
    grid-row: 3 !important;
}

#main .agentlist.agentlist > div.profile > .right > a.button.email, #main .agentlist.agentlist > div.profile > .right > a.button.mail {
    grid-column: 2 !important;
    grid-row: 3 !important;
}

#main .agentlist.agentlist > div.profile > .right a.button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: calc(68/12*1vw) !important;
    margin: 0 !important;
    padding: calc(13/12*1vw) calc(16/12*1vw) !important;
    border: 1px solid var(--sonalea-button) !important;
    border-radius: calc(7/12*1vw) !important;
    background: var(--sonalea-button) !important;
    color: #ffffff !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

/* ==============================================
        LETZTE BEWERTUNG GANZ UNTEN
        ============================================== */
#main .agentlist.agentlist > div.profile .last_rating {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: calc(18/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-top: 1px solid #ead1d8 !important;
    border-radius: 0 !important;
    background: #fff9fb !important;
    color: #86163e !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-align: center !important;
}

#main .agentlist.agentlist > div.profile .last_rating::before {
    display: block !important;
    content: "Letzte Bewertung" !important;
    margin: 0 0 calc(8/12*1vw) !important;
    color: #86163e !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
}

#main .agentlist.agentlist > div.profile .last_rating br {
    display: none !important;
}

#main .agentlist.agentlist > div.profile .last_rating p {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
    white-space: normal !important;
}

/* Testseite #agents580 / Originalseite #agents271 */
/* ==============================================
        Bild, Sterne, Bewertungen und Beratungen
        ============================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .left {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: calc(250/12*1vw) !important;
    align-self: start !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .left > a:not(.rating) {
    width: calc(230/12*1vw) !important;
    height: calc(276/12*1vw) !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .left img.pic {
    width: calc(230/12*1vw) !important;
    min-width: calc(230/12*1vw) !important;
    max-width: calc(230/12*1vw) !important;
    height: calc(276/12*1vw) !important;
    min-height: calc(276/12*1vw) !important;
    max-height: calc(276/12*1vw) !important;
    object-fit: cover !important;
    object-position: center top !important;
}

/* Sterne sicher unter dem Bild */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .left > a.rating {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    grid-column: 1 !important;
    grid-row: 2 !important;
    display: block !important;
    visibility: visible !important;
    width: auto !important;
    height: calc(42/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .rating .stars {
    width: auto !important;
    height: calc(42/12*1vw) !important;
    background: none !important;
    font-size: 0 !important;
    line-height: calc(42/12*1vw) !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .rating .stars::before {
    display: block !important;
    content: "★★★★★" !important;
    color: #c98aa0 !important;
    font-size: calc(34/12*1vw) !important;
    line-height: calc(42/12*1vw) !important;
    letter-spacing: 2px !important;
    white-space: nowrap !important;
}

/* Bewertungsanzahl neben den Sternen */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .left li.ratings {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: block !important;
    color: #76505c !important;
    font-size: calc(24/12*1vw) !important;
    line-height: calc(42/12*1vw) !important;
    white-space: nowrap !important;
}

/* Gespräche/Beratungen darunter */
/* ==============================================
        Name und Profiltext oben neben dem Bild
        ============================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile h3 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile h3 a {
    font-size: calc(44/12*1vw) !important;
    line-height: calc(48/12*1vw) !important;
}

/*
      * Profiltext liegt in derselben Rasterzeile wie das Bild.
      * Der obere Abstand lässt Platz für den Beraternamen.
      */
/* ==============================================
        Hinweis ohne zusätzliche Überschrift
        ============================================== */
/* Text „Aktueller Hinweis“ entfernen */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .notice::before {
    display: none !important;
    content: none !important;
}

/* ==============================================
        Preise und Buttons: zwei Spalten
        ============================================== */
/* Telefonpreis links */
/* Chatpreis rechts */
/* Anrufen links, Chatten rechts */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > a.button.click2call {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

/* Nachricht links, E-Mail rechts */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > a.button.pm {
    grid-column: 1 !important;
    grid-row: 3 !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > a.button.email, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > a.button.mail {
    grid-column: 2 !important;
    grid-row: 3 !important;
}

/* ==============================================
        Letzte Bewertung über die gesamte Breite
        ============================================== */
/* ==================================================
        PROFILTEXT UND STATISTIK
        ================================================== */
/* Bewertungssterne und Bewertungsanzahl oben entfernen */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .left > a.rating, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .left li.ratings {
    display: none !important;
    visibility: hidden !important;
}

/* Gesprächszahl mittig unter dem Bild */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .left li.calls {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    display: block !important;
    color: #68424f !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 600 !important;
    line-height: calc(38/12*1vw) !important;
    text-align: center !important;
    width: 100% !important;
    margin: calc(8/12*1vw) 0 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
}

/* Profiltext groß und vollständig sichtbar */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile p.teaser {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
    width: 100% !important;
    margin: 0 !important;
    padding: calc(62/12*1vw) calc(10/12*1vw) 0 !important;
    font-size: calc(38/12*1vw) !important;
    line-height: 1.55 !important;
    text-align: center !important;
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding-top: calc(80/12*1vw) !important;
    overflow: visible !important;
    color: #653647 !important;
    font-weight: 400 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

/* ==================================================
        EINZIGES BUTTONRASTER
        ================================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto auto !important;
    gap: calc(12/12*1vw) calc(16/12*1vw) !important;
    width: 100% !important;
    position: static !important;
    grid-auto-flow: row !important;
    grid-auto-rows: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

/* Chat-Inhalte nehmen direkt am Raster teil */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat {
    display: contents !important;
}

/* Alte oder künstliche Leerzellen entfernen */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right::before, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right::after {
    display: none !important;
    content: none !important;
}

/* Deaktivierten Normalpreis ausblenden */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right small.tariff.disable {
    display: none !important;
}

/* Gemeinsame Preisgestaltung */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right small.tariff:not(.disable) {
    min-height: calc(44/12*1vw) !important;
    color: #a62958 !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: calc(3/12*1vw) calc(6/12*1vw) !important;
    text-align: center !important;
    white-space: normal !important;
}

/* Telefonpreis immer links über „Jetzt anrufen“ */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > small.tariff:not(.disable) {
    grid-column: 1 !important;
    grid-row: 1 !important;
    order: initial !important;
}

/* Chatpreis immer rechts über Online-/Offline-Chat */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat > small.tariff:not(.disable) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    order: initial !important;
}

/* Gemeinsame Buttongestaltung */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right a.button, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > a.button, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat > a.button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    grid-column: auto !important;
    grid-row: auto !important;
    order: initial !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: calc(84/12*1vw) !important;
    margin: 0 !important;
    padding: calc(16/12*1vw) calc(14/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
    color: #fff !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/*
      * Telefonbutton:
      * Flexcom verwendet nicht immer die Klasse click2call.
      * Deshalb wird jedes direkte Aktionsfeld ausgeschlossen,
      * das eindeutig Chat, E-Mail oder Nachricht ist.
      */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > a.button:not(.pm):not(.email):not(.mail):not(.chat) {
    grid-column: 1 !important;
    grid-row: 2 !important;
    border-color: #869f8ad9 !important;
    background: #869f8ad9 !important;
}

/* Chat immer rechts neben Anrufen – auch wenn offline */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat > a.button.chat, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > a.button.chat {
    grid-column: 2 !important;
    grid-row: 2 !important;
    border-color: #869f8ad9 !important;
    background: #869f8ad9 !important;
}

/* Mit Chat: E-Mail links in der unteren Reihe */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:has(> div.chat) > a.button.email, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:has(> div.chat) > a.button.mail {
    grid-column: 1 !important;
    grid-row: 3 !important;
    border-color: #b33a638c !important;
    background: #b33a638c !important;
}

/*
      * Ohne Chat: E-Mail rückt direkt rechts neben Anrufen.
      */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:not(:has(> div.chat)) > a.button.email, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:not(:has(> div.chat)) > a.button.mail {
    grid-column: 2 !important;
    grid-row: 2 !important;
    border-color: #b33a638c !important;
    background: #b33a638c !important;
}

/* Mit Chat und E-Mail: Nachricht rechts neben E-Mail */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:has(> div.chat):has(> a.button.email) > a.button.pm, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:has(> div.chat):has(> a.button.mail) > a.button.pm {
    grid-column: 2 !important;
    grid-row: 3 !important;
    border-color: #a0838bcc !important;
    background: #a0838bcc !important;
}

/* Mit Chat, aber ohne E-Mail: Nachricht links darunter */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:has(> div.chat):not(:has(> a.button.email)):not(:has(> a.button.mail)) > a.button.pm {
    grid-column: 1 !important;
    grid-row: 3 !important;
    border-color: #a0838bcc !important;
    background: #a0838bcc !important;
}

/* Ohne Chat, aber mit E-Mail: Nachricht links darunter */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:not(:has(> div.chat)):has(> a.button.email) > a.button.pm, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:not(:has(> div.chat)):has(> a.button.mail) > a.button.pm {
    grid-column: 1 !important;
    grid-row: 3 !important;
    border-color: #a0838bcc !important;
    background: #a0838bcc !important;
}

/* Nur Anrufen und Nachricht: beide nebeneinander */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right:not(:has(> div.chat)):not(:has(> a.button.email)):not(:has(> a.button.mail)) > a.button.pm {
    grid-column: 2 !important;
    grid-row: 2 !important;
    border-color: #a0838bcc !important;
    background: #a0838bcc !important;
}

/* ==================================================
        LETZTE BEWERTUNG MIT DYNAMISCHEN STERNEN
        ================================================== */
/* Schrift in allen Aktionsbuttons größer */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right a.button {
    min-height: calc(92/12*1vw) !important;
    padding: calc(18/12*1vw) calc(12/12*1vw) !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
}

/* Letzte Bewertung über die gesamte Kachelbreite */
/* Überschrift „Letzte Bewertung“ und Sterne */
/* Vollständiger Bewertungstext */
/* Alle Buttons mit exakt gleicher Schrift */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right a.button, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat > a.button {
    font-family: inherit !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
}

/* Auch enthaltene Texte und Symbole übernehmen die Schriftgröße */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right a.button span, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right a.button small {
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

/* ===== Statusfarben mit höherster Priorität ===== */
/* Pause – Anruf und Chat */
html body #main#main#main#main .button.button.break, html body #main#main#main#main .break .button.button {
    background: #a0838b !important;
    background-color: #a0838b !important;
    background-image: none !important;
    border-color: #a0838b !important;
    color: #ffffff !important;
}

/* Offline – Anruf und Chat */
html body #main#main#main#main .button.button.offline, html body #main#main#main#main .offline .button.button {
    background: #a9a9a9 !important;
    background-color: #a9a9a9 !important;
    background-image: none !important;
    border-color: #a9a9a9 !important;
    color: #ffffff !important;
}

/* Kachel als Bezugspunkt */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile {
    grid-template-columns: calc(250/12*1vw) minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto auto !important;
    gap: calc(20/12*1vw) calc(26/12*1vw) !important;
    padding: calc(26/12*1vw) !important;
    position: relative !important;
    overflow: hidden !important;
}

/* Gemeinsames Design aller diagonalen Eckbanner */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile::before, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile::after {
    position: absolute !important;
    z-index: 20 !important;
    display: none;
    align-items: center !important;
    justify-content: center !important;
    width: calc(190/12*1vw) !important;
    height: calc(48/12*1vw) !important;
    padding: 0 !important;
    margin: 0 !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: 0 2px 6px rgba(80, 40, 55, 0.2) !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
}

/* ==================================================
        VIP – immer links oben
        ================================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.vip::before {
    content: "VIP" !important;
    display: flex !important;
    top: calc(1/12*1vw) !important;
    left: -calc(59/12*1vw) !important;
    right: auto !important;
    transform: rotate(0deg) !important;
    background: #b33a6394 !important;
}

/* ==================================================
        NEU – rechts oben, während der ersten 60 Tage
        ================================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.new::after {
    content: "NEU" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(0deg) !important;
    background: #ca8c99 !important;
}

/* ==================================================
        SILBER – rechts oben
        ================================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.silber::after {
    content: "SILBER" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(0deg) !important;
    background: #a9a9a9 !important;
}

/* ==================================================
        GOLD – rechts oben
        ================================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.gold::after {
    content: "GOLD" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(0deg) !important;
    background: #a17b7be3 !important;
}

/* ==================================================
        PREMIUM – rechts oben
        ================================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.premium::after {
    content: "PREMIUM" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(0deg) !important;
    background: #a7657d !important;
}

/* ==================================================
        TOP – rechts oben
        ================================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.top::after {
    content: "TOP" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(0deg) !important;
    background: #b33a6391 !important;
}

/* ==================================================
        BERATER DES TAGES
        Ersetzt das rechte Eckbanner
        ================================================== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.campagent::after {
    content: none !important;
    display: none !important;
}

/* ===== Berater des Tages oberhalb des Namens ===== */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.campagent .center h3 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 0 0 calc(14/12*1vw) !important;
    padding: 0 !important;
    gap: calc(9/12*1vw) !important;
    text-align: center !important;
}

/* Beratername unterhalb des Hinweises */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.campagent .center h3 > a {
    order: 2 !important;
    display: block !important;
    margin: 0 !important;
}

/* Hinweis oberhalb des Beraternamens */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.campagent .center h3::after {
    content: "Berater des Tages" !important;
    order: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: calc(230/12*1vw) !important;
    max-width: 90% !important;
    margin: 0 auto !important;
    padding: calc(10/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #d895aa !important;
    box-shadow: none !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-transform: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

/* Platz für Banner und Beratername reservieren */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.campagent .center p.teaser {
    padding-top: calc(125/12*1vw) !important;
}

/* Beraterkachel „Berater des Tages“ hervorheben */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile.campagent {
    border: 4px solid #d895aa !important;
    border-radius: calc(10/12*1vw) !important;
    background-color: #fffafb !important;
    box-shadow: 0 0 0 2px rgba(216, 149, 170, 0.15),
         0 5px 16px rgba(134, 22, 62, 0.16) !important;
    box-sizing: border-box !important;
}

/* Bewertungstext etwas weiter rechts beginnen lassen */
/* Gesamter oberer Beraterbereich */
#main .article[id^="ddi"] {
    display: grid !important;
    grid-template-columns: calc(220/12*1vw) minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto auto auto !important;
    gap: calc(16/12*1vw) calc(24/12*1vw) !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 calc(28/12*1vw) !important;
    padding: calc(28/12*1vw) !important;
    border: 2px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Beratername über die gesamte Breite */
#main .article[id^="ddi"] > h1 {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    margin: 0 0 calc(8/12*1vw) !important;
    padding: 0 !important;
    color: #86163e !important;
    font-size: calc(38/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Panel-Inhalte in das äußere Raster übernehmen */
#main .article[id^="ddi"] > .panel {
    display: contents !important;
}

/* Profilbild links */
#main .article[id^="ddi"] > .left img {
    display: block !important;
    width: calc(200/12*1vw) !important;
    max-width: 100% !important;
    height: calc(240/12*1vw) !important;
    margin: 0 auto !important;
    border-radius: calc(8/12*1vw) !important;
    object-fit: cover !important;
}

/* Kurzbeschreibung rechts neben dem Profilbild */
/* Berater-ID unter dem Bild */
/* Alte Trennlinie entfernen */
#main .article[id^="ddi"] > .panel > .devider, #main .article[id^="ddi"] > .panel > .clear {
    display: none !important;
}

/* Aktueller Hinweis über die gesamte Breite */
/* Bereich für Preis und Buttons */
/* Alten durchgestrichenen Preis ausblenden */
#main .article[id^="ddi"] > .panel > .right small.tariff.disable {
    display: none !important;
}

/* Aktueller Preis über dem Anrufbutton */
#main .article[id^="ddi"] > .panel > .right small.tariff:not(.disable) {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #b33a63 !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: center !important;
}

/* Alle Aktionsbuttons */
#main .article[id^="ddi"] > .panel > .right a.button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(84/12*1vw) !important;
    margin: 0 !important;
    padding: calc(16/12*1vw) calc(12/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(32/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Anrufbutton links */
#main .article[id^="ddi"] > .panel > .right a.button:first-of-type {
    grid-column: 1 !important;
    grid-row: 2 !important;
    background: #869f8ad9 !important;
    border-color: #869f8ad9 !important;
}

/* Nachricht rechts */
#main .article[id^="ddi"] > .panel > .right a.button:last-of-type {
    grid-column: 2 !important;
    grid-row: 2 !important;
    background: #a0838b !important;
    border-color: #a0838b !important;
}

/* Alle Bestandteile wieder normal in das Raster einordnen */
#main .article[id^="ddi"] > h1, #main .article[id^="ddi"] > .left, #main .article[id^="ddi"] > .panel, #main .article[id^="ddi"] > .panel > .right, #main .article[id^="ddi"] > .panel > p.teaser, #main .article[id^="ddi"] > .panel > .pin, #main .article[id^="ddi"] > .panel > p.notice {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    float: none !important;
    transform: none !important;
}

/* Preis und Buttons ebenfalls aus alter Positionierung lösen */
#main .article[id^="ddi"] > .panel > .right a.button, #main .article[id^="ddi"] > .panel > .right small.tariff {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    float: none !important;
    clear: none !important;
    transform: none !important;
}

/* Profilbild und Kurzbeschreibung in einer gemeinsamen Reihe */
#main .article[id^="ddi"] > .left {
    grid-column: 1 !important;
    grid-row: 2 !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    align-self: start !important;
}

#main .article[id^="ddi"] > .panel > p.teaser {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: center !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    color: #68424f !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
    white-space: normal !important;
}

/* ID unter dem Profilbild */
#main .article[id^="ddi"] > .panel > .pin {
    grid-column: 1 !important;
    grid-row: 3 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-size: calc(28/12*1vw) !important;
    line-height: 1.4 !important;
    text-align: center !important;
}

/* Hinweis darunter über die gesamte Breite */
#main .article[id^="ddi"] > .panel > p.notice {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: calc(8/12*1vw) 0 0 !important;
    padding: calc(20/12*1vw) calc(24/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(8/12*1vw) !important;
    background: #f8e9ee !important;
    color: #68424f !important;
    font-size: calc(32/12*1vw) !important;
    font-style: italic !important;
    line-height: 1.5 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Preis und Buttons ganz unten */
#main .article[id^="ddi"] > .panel > .right {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto !important;
    gap: calc(12/12*1vw) calc(16/12*1vw) !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    margin: calc(4/12*1vw) 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    position: static !important;
}

html body .longtext.longtext {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: calc(30/12*1vw) calc(32/12*1vw) calc(40/12*1vw) !important;
    color: #68424f !important;
    background: #ffffff !important;
    font-size: calc(28/12*1vw) !important;
    line-height: 1.6 !important;
    text-align: left !important;
    overflow: visible !important;
    white-space: normal !important;
    box-sizing: border-box !important;
}

html body .longtext.longtext p {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 calc(20/12*1vw) !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    text-align: left !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

html body .longtext.longtext p:first-child {
    color: #86163e !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 600 !important;
}

/* Gesamter Bewertungsbereich */
html body #ratings.ratings {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: calc(30/12*1vw) 0 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
}

html body #ratings.ratings > .inside {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Überschrift „Alle Bewertungen“ */
html body #ratings.ratings h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(64/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(31/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Einzelne Bewertung als eigene Karte */
html body #ratings.ratings .rating {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    gap: calc(10/12*1vw) calc(18/12*1vw) !important;
    width: calc(100% - calc(32/12*1vw)) !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: calc(16/12*1vw) !important;
    padding: calc(22/12*1vw) calc(24/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(8/12*1vw) !important;
    background: #fffafb !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

/* Kundenname und Datum */
html body #ratings.ratings .rating > span.name {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

html body #ratings.ratings .rating > span.name strong {
    color: #86163e !important;
    font-size: inherit !important;
    font-weight: 700 !important;
}

/* Alte kleine Sternengrafik zurücksetzen */
html body #ratings.ratings .rating > .stars {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: block !important;
    width: auto !important;
    min-width: calc(170/12*1vw) !important;
    height: auto !important;
    min-height: calc(38/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    background-image: none !important;
    color: #c98aa0 !important;
    font-size: calc(31/12*1vw) !important;
    line-height: 1.2 !important;
    letter-spacing: 2px !important;
    text-align: right !important;
}

/* Bewertungssterne entsprechend der vorhandenen Klasse */
html body #ratings.ratings .rating > .stars::before {
    display: block !important;
    color: #c98aa0 !important;
    font-size: calc(31/12*1vw) !important;
    line-height: 1.2 !important;
    letter-spacing: 2px !important;
    text-align: right !important;
}

html body #ratings.ratings .rating > .stars.s0::before {
    content: "☆☆☆☆☆" !important;
}

html body #ratings.ratings .rating > .stars.s1::before {
    content: "★☆☆☆☆" !important;
}

html body #ratings.ratings .rating > .stars.s2::before {
    content: "★★☆☆☆" !important;
}

html body #ratings.ratings .rating > .stars.s3::before {
    content: "★★★☆☆" !important;
}

html body #ratings.ratings .rating > .stars.s4::before {
    content: "★★★★☆" !important;
}

html body #ratings.ratings .rating > .stars.s5::before {
    content: "★★★★★" !important;
}

/* Vollständiger Bewertungstext über die ganze Breite */
html body #ratings.ratings .rating > p {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    text-align: left !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-overflow: clip !important;
}

/* Seitennavigation */
html body #ratings.ratings .pagination {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: calc(12/12*1vw) !important;
    width: 100% !important;
    margin: calc(24/12*1vw) 0 calc(34/12*1vw) !important;
    padding: 0 calc(16/12*1vw) !important;
    font-size: calc(24/12*1vw) !important;
    box-sizing: border-box !important;
}

html body #ratings.ratings .pagination ul {
    display: flex !important;
    gap: calc(10/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body #ratings.ratings .pagination li {
    display: block !important;
    margin: 0 !important;
    list-style: none !important;
}

html body #ratings.ratings .pagination a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: calc(48/12*1vw) !important;
    min-height: calc(48/12*1vw) !important;
    padding: calc(6/12*1vw) calc(12/12*1vw) !important;
    border-radius: calc(6/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

html body #ratings.ratings .pagination li.active a {
    background: #c9909f !important;
    color: #ffffff !important;
}

html body #ratings.ratings .pagination .total {
    color: #68424f !important;
    font-size: calc(23/12*1vw) !important;
}

/* Profilbild beginnt bereits auf Höhe des Namens */
html body #main#main .article[id^="ddi"] > .left {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
}

/* Beratername mittig über dem Kurzprofiltext */
html body #main#main .article[id^="ddi"] > h1 {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(12/12*1vw) !important;
    padding: 0 !important;
    text-align: center !important;
}

/* Kurzprofiltext auf derselben Mittelachse */
html body #main#main .article[id^="ddi"] > .panel > p.teaser {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

/* ID bleibt unter dem Profilbild */
html body #main#main .article[id^="ddi"] > .panel > .pin {
    grid-column: 1 !important;
    grid-row: 3 !important;
    text-align: center !important;
}

html body #main#main h2.bh:has(+ .longtext), html body #main#main *:has(> .longtext) > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(64/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(31/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Gemeinsames Raster */
html body #main#main .article[id^="ddi"] > .panel > .right {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto auto !important;
    grid-auto-flow: row !important;
    gap: calc(12/12*1vw) calc(16/12*1vw) !important;
    width: 100% !important;
    height: auto !important;
}

/* Chat-Inhalte direkt in das gemeinsame Raster übernehmen */
html body #main#main .article[id^="ddi"] > .panel > .right > div.chat {
    display: contents !important;
}

/* Telefonpreis links oben */
html body #main#main .article[id^="ddi"] > .panel > .right > small.tariff:not(.disable) {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
}

/* Chatpreis rechts oben */
html body #main#main .article[id^="ddi"] > .panel > .right > div.chat > small.tariff:not(.disable) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
}

/* Anruf immer links */
html body #main#main .article[id^="ddi"] > .panel > .right > a.button:first-of-type {
    grid-column: 1 !important;
    grid-row: 2 !important;
    background: #869f8ad9 !important;
    border-color: #869f8ad9 !important;
}

/* Chat immer rechts neben Anrufen */
html body #main#main .article[id^="ddi"] > .panel > .right > div.chat > a.button.chat {
    grid-column: 2 !important;
    grid-row: 2 !important;
    width: 100% !important;
    margin: 0 !important;
    background: #869f8ad9 !important;
    border-color: #869f8ad9 !important;
}

/* E-Mail-Beratung mit Chat: links in der unteren Reihe */
html body #main#main .article[id^="ddi"] > .panel > .right:has(> div.chat) > a.button.email {
    grid-column: 1 !important;
    grid-row: 3 !important;
    background: #b33a638c !important;
    border-color: #b33a638c !important;
}

/* Nachricht mit Chat und E-Mail: rechts unten */
html body #main#main .article[id^="ddi"] > .panel > .right:has(> div.chat):has(> a.button.email) > a.button:not(:first-of-type):not(.email) {
    grid-column: 2 !important;
    grid-row: 3 !important;
    background: #a0838b !important;
    border-color: #a0838b !important;
}

/* Nachricht mit Chat, aber ohne E-Mail: links unten */
html body #main#main .article[id^="ddi"] > .panel > .right:has(> div.chat):not(:has(> a.button.email)) > a.button:not(:first-of-type) {
    grid-column: 1 !important;
    grid-row: 3 !important;
    background: #a0838b !important;
    border-color: #a0838b !important;
}

/* Ohne Chat: E-Mail rechts neben Anrufen */
html body #main#main .article[id^="ddi"] > .panel > .right:not(:has(> div.chat)) > a.button.email {
    grid-column: 2 !important;
    grid-row: 2 !important;
    background: #b33a638c !important;
    border-color: #b33a638c !important;
}

/* Ohne Chat und ohne E-Mail: Nachricht rechts neben Anrufen */
html body #main#main .article[id^="ddi"] > .panel > .right:not(:has(> div.chat)):not(:has(> a.button.email)) > a.button:not(:first-of-type) {
    grid-column: 2 !important;
    grid-row: 2 !important;
    background: #a0838b !important;
    border-color: #a0838b !important;
}

/* Ohne Chat, aber mit E-Mail: Nachricht links unten */
html body #main#main .article[id^="ddi"] > .panel > .right:not(:has(> div.chat)):has(> a.button.email) > a.button:not(:first-of-type):not(.email) {
    grid-column: 1 !important;
    grid-row: 3 !important;
    background: #a0838b !important;
    border-color: #a0838b !important;
}

/* Pause-Farben für Anruf und Chat */
html body #main#main .article[id^="ddi"] > .panel > .right .button.break {
    background: #a0838b !important;
    border-color: #a0838b !important;
    color: #ffffff !important;
}

/* Offline-Farben für Anruf und Chat */
html body #main#main .article[id^="ddi"] > .panel > .right .button.offline {
    background: #a9a9a9 !important;
    border-color: #a9a9a9 !important;
    color: #ffffff !important;
}

/* Gesamter Kategorienbereich */
html body #main#main .cats.block {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: calc(30/12*1vw) 0 !important;
    padding: 0 0 calc(26/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Überschrift */
html body #main#main .cats.block > h2 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(64/12*1vw) !important;
    margin: 0 0 calc(22/12*1vw) !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(31/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Kategorien als zweispaltiges Raster */
html body #main#main .cats.block > ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: calc(14/12*1vw) calc(16/12*1vw) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 calc(24/12*1vw) !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

html body #main#main .cats.block > ul > li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Einzelne Kategorie als gut lesbare Schaltfläche */
html body #main#main .cats.block > ul > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(76/12*1vw) !important;
    height: 100% !important;
    margin: 0 !important;
    padding: calc(14/12*1vw) calc(16/12*1vw) !important;
    border: 1px solid #e5c8d1 !important;
    border-radius: calc(8/12*1vw) !important;
    background: #efdbe1 !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
}

/* Berührung beziehungsweise Mauszeiger */
html body #main#main .cats.block > ul > li > a:hover, html body #main#main .cats.block > ul > li > a:focus {
    background: #d7a7b1 !important;
    color: #ffffff !important;
}

html body #main#main .cats.block > .clear {
    display: none !important;
}

/* Gesamter Angebotsbereich */
html body #main#main .mailcon_articles {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: calc(30/12*1vw) 0 !important;
    padding: 0 0 calc(26/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Überschriftenbalken */
html body #main#main .mailcon_articles > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(64/12*1vw) !important;
    margin: 0 0 calc(22/12*1vw) !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(31/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

html body #main#main .mailcon_articles > h2.bh span {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

/* Alte Tabellenbegrenzung entfernen */
html body #main#main .mailcon_articles .table {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 calc(22/12*1vw) !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

html body #main#main .mailcon_articles table, html body #main#main .mailcon_articles tbody {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Alte Tabellenüberschrift mobil ausblenden */
html body #main#main .mailcon_articles thead {
    display: none !important;
}

/* Jedes Angebot als eigene Karte */
html body #main#main .mailcon_articles tbody > tr {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    gap: calc(14/12*1vw) calc(18/12*1vw) !important;
    width: 100% !important;
    margin: 0 0 calc(16/12*1vw) !important;
    padding: calc(22/12*1vw) calc(24/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(8/12*1vw) !important;
    background: #fffafb !important;
    box-sizing: border-box !important;
}

/* Bezeichnung über die gesamte Breite */
html body #main#main .mailcon_articles tbody > tr > td.first {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

/* Preis links unten */
html body #main#main .mailcon_articles tbody > tr > td:not(.first):not(.last) {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: center !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #b33a63 !important;
    font-family: inherit !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: left !important;
}

html body #main#main .mailcon_articles tbody > tr > td:not(.first):not(.last) span {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

/* Aktionsfeld rechts unten */
html body #main#main .mailcon_articles tbody > tr > td.last {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: right !important;
}

/* Anzeigen-Button */
html body #main#main .mailcon_articles tbody > tr > td.last > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: calc(180/12*1vw) !important;
    min-height: calc(58/12*1vw) !important;
    margin: 0 !important;
    padding: calc(10/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #b33a638c !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

html body #main#main .mailcon_articles tbody > tr > td.last > a:hover, html body #main#main .mailcon_articles tbody > tr > td.last > a:focus {
    background: #b33a63 !important;
}

/* Letzte Karte ohne zusätzlichen unteren Abstand */
html body #main#main .mailcon_articles tbody > tr:last-child {
    margin-bottom: 0 !important;
}

/* Oberen Profilbereich für Eckbanner vorbereiten */
html body #main#main .profile:has(> .article[id^="ddi"]) > .article[id^="ddi"] {
    position: relative !important;
    overflow: hidden !important;
}

/* Gemeinsame Gestaltung */
html body #main#main .profile:has(> .article[id^="ddi"]) > .article[id^="ddi"]::before, html body #main#main .profile:has(> .article[id^="ddi"]) > .article[id^="ddi"]::after {
    position: absolute !important;
    z-index: 40 !important;
    display: none;
    align-items: center !important;
    justify-content: center !important;
    width: calc(70/12*1vw) !important;
    height: calc(30/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background-image: none !important;
    box-shadow: 0 2px 6px rgba(80, 40, 55, 0.2) !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
}

/* VIP immer links oben */
html body #main#main .profile.vip > .article[id^="ddi"]::before {
    content: "VIP" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    left: -calc(59/12*1vw) !important;
    right: auto !important;
    transform: rotate(-0deg) !important;
    background: #c9909f !important;
}

/* Neu rechts oben */
html body #main#main .profile.new > .article[id^="ddi"]::after {
    content: "NEU" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(45deg) !important;
    background: #ca8c99 !important;
}

/* Silber rechts oben */
html body #main#main .profile.silber > .article[id^="ddi"]::after {
    content: "SILBER" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(45deg) !important;
    background: #a9a9a9 !important;
}

/* Gold rechts oben */
html body #main#main .profile.gold > .article[id^="ddi"]::after {
    content: "GOLD" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(45deg) !important;
    background: #c5a15a !important;
}

/* Premium rechts oben */
html body #main#main .profile.premium > .article[id^="ddi"]::after {
    content: "PREMIUM" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(45deg) !important;
    background: #a7657d !important;
}

/* Top rechts oben */
html body #main#main .profile.top > .article[id^="ddi"]::after {
    content: "TOP" !important;
    display: flex !important;
    top: calc(24/12*1vw) !important;
    right: -calc(59/12*1vw) !important;
    left: auto !important;
    transform: rotate(45deg) !important;
    background: #b33a63 !important;
}

/* Berater des Tages ersetzt das rechte Eckbanner */
html body #main#main .profile.campagent > .article[id^="ddi"]::after {
    content: "BERATER DES TAGES" !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(250/12*1vw) !important;
    height: calc(58/12*1vw) !important;
    top: calc(38/12*1vw) !important;
    right: -calc(78/12*1vw) !important;
    left: auto !important;
    transform: rotate(45deg) !important;
    background: #d895aa !important;
    color: #ffffff !important;
    font-size: calc(17/12*1vw) !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

/* Kachel „Berater des Tages“ zusätzlich hervorheben */
html body #main#main .profile.campagent > .article[id^="ddi"] {
    border: 4px solid #d895aa !important;
    border-radius: calc(10/12*1vw) !important;
    background-color: #fffafb !important;
    box-shadow: 0 0 0 2px rgba(216, 149, 170, 0.15),
             0 5px 16px rgba(134, 22, 62, 0.16) !important;
    box-sizing: border-box !important;
}

html body #main#main .profile:has(> .article[id^="ddi"])::before, html body #main#main .profile:has(> .article[id^="ddi"])::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: none !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* Gesamter Footer */
html body #footer#footer, html body #footer#footer > .inside {
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: calc(26/12*1vw) calc(24/12*1vw) !important;
    color: #68424f !important;
    background: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(22/12*1vw) !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

html body #footer#footer > .inside {
    padding: 0 !important;
}

/* Sämtliche Footertexte */
html body #footer#footer p, html body #footer#footer span, html body #footer#footer small, html body #footer#footer strong, html body #footer#footer li, html body #footer#footer td, html body #footer#footer th {
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(22/12*1vw) !important;
    line-height: 1.5 !important;
}

/* Alle Footerlinks */
html body #footer#footer a {
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
}

html body #footer#footer a:hover, html body #footer#footer a:focus {
    color: #b33a63 !important;
    text-decoration: underline !important;
}

/* Linklisten übersichtlich umbrechen */
html body #footer#footer ul {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: calc(14/12*1vw) calc(22/12*1vw) !important;
    width: 100% !important;
    margin: calc(18/12*1vw) 0 !important;
    padding: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

html body #footer#footer li {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Tabellen und Preisangaben */
html body #footer#footer table {
    width: 100% !important;
    margin: calc(18/12*1vw) 0 !important;
    border-collapse: collapse !important;
    table-layout: auto !important;
}

html body #footer#footer th, html body #footer#footer td {
    padding: calc(10/12*1vw) calc(12/12*1vw) !important;
    text-align: left !important;
    vertical-align: top !important;
    white-space: normal !important;
}

/* Kleine Hinweise nicht mehr winzig */
html body #footer#footer small, html body #footer#footer .small {
    font-size: calc(19/12*1vw) !important;
    line-height: 1.45 !important;
}

/* Footerbuttons */
html body #footer#footer .button, html body #footer#footer a.button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: calc(52/12*1vw) !important;
    padding: calc(10/12*1vw) calc(18/12*1vw) !important;
    border-radius: calc(6/12*1vw) !important;
    background: #a0838b !important;
    color: #ffffff !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Gesamter Tarifbereich */
html body .cte_tariffs.cte_tariffs {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: calc(26/12*1vw) 0 !important;
    padding: calc(22/12*1vw) calc(24/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(8/12*1vw) !important;
    background: #fffafb !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

/* Hinweis oberhalb der Tabelle */
html body .cte_tariffs.cte_tariffs > p {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(18/12*1vw) !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: left !important;
    white-space: normal !important;
}

/* Tabelle */
html body .cte_tariffs.cte_tariffs table {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
}

/* Spaltenüberschriften */
html body .cte_tariffs.cte_tariffs th {
    padding: calc(14/12*1vw) calc(12/12*1vw) !important;
    border-bottom: 2px solid #c9909f !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-family: inherit !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    vertical-align: middle !important;
    white-space: normal !important;
    box-sizing: border-box !important;
}

/* Länder und Preise */
html body .cte_tariffs.cte_tariffs td {
    padding: calc(13/12*1vw) calc(12/12*1vw) !important;
    border-bottom: 1px solid #ead5dc !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-align: center !important;
    vertical-align: middle !important;
    white-space: normal !important;
    box-sizing: border-box !important;
}

/* Erste Spalte linksbündig */
html body .cte_tariffs.cte_tariffs th.first, html body .cte_tariffs.cte_tariffs td.first {
    width: 38% !important;
    text-align: left !important;
}

html body .cte_tariffs.cte_tariffs th:not(.first), html body .cte_tariffs.cte_tariffs td:not(.first) {
    width: 31% !important;
}

/* „Alle anzeigen“ */
html body .cte_tariffs.cte_tariffs a.show_all {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: calc(52/12*1vw) !important;
    margin: calc(8/12*1vw) auto 0 !important;
    padding: calc(10/12*1vw) calc(22/12*1vw) !important;
    border-radius: calc(6/12*1vw) !important;
    background: #a0838b !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Überschrift und Sterne */
/* Ursprüngliche Überschrift verbergen */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating br {
    display: none !important;
}

/* Bewertungstext */
/* Preise und Buttons zuerst */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    margin-top: calc(16/12*1vw) !important;
    margin-bottom: 0 !important;
}

/* Aktueller Hinweis direkt unter den Buttons */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .notice {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
    width: 100% !important;
    margin: calc(18/12*1vw) 0 0 !important;
    padding: calc(18/12*1vw) calc(22/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(8/12*1vw) !important;
    background: #f8e9ee !important;
    color: #68424f !important;
    font-size: calc(27/12*1vw) !important;
    line-height: 1.5 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Keine zusätzliche Überschrift „Aktueller Hinweis“ */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .notice::before {
    content: none !important;
    display: none !important;
}

/* Letzte Bewertung bleibt als ruhiger Abschluss */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating {
    grid-column: 1 / -1 !important;
    grid-row: 5 !important;
    margin-top: calc(18/12*1vw) !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating p::before {
    content: "„" !important;
    display: inline !important;
    margin-right: calc(3/12*1vw) !important;
    color: #c9909f !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 0 !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating p::after {
    content: "“" !important;
    display: inline !important;
    margin-left: calc(3/12*1vw) !important;
    color: #c9909f !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 0 !important;
}

/* Ursprünglichen Textknoten ausblenden */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
    width: 100% !important;
    max-width: none !important;
    margin: calc(22/12*1vw) 0 0 !important;
    padding: calc(24/12*1vw) calc(28/12*1vw) calc(26/12*1vw) !important;
    text-align: center !important;
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    border: 0 !important;
    border-top: 2px solid #e7c4cf !important;
    border-radius: 0 !important;
    background: #fffafb !important;
    box-shadow: none !important;
    font-size: 0 !important;
}

/* Nur Sterne anzeigen */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating::before {
    display: block !important;
    content: "★★★★★" !important;
    margin-bottom: calc(10/12*1vw) !important;
    color: #c9909f !important;
    font-size: calc(38/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    width: 100% !important;
    margin: 0 0 calc(14/12*1vw) !important;
    letter-spacing: 3px !important;
    text-align: center !important;
    padding: 0 !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile:has(.rating .stars.s0) .last_rating::before {
    content: "☆☆☆☆☆" !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile:has(.rating .stars.s1) .last_rating::before {
    content: "★☆☆☆☆" !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile:has(.rating .stars.s2) .last_rating::before {
    content: "★★☆☆☆" !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile:has(.rating .stars.s3) .last_rating::before {
    content: "★★★☆☆" !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile:has(.rating .stars.s4) .last_rating::before {
    content: "★★★★☆" !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile:has(.rating .stars.s5) .last_rating::before {
    content: "★★★★★" !important;
}

/* Bewertungstext wieder in normaler Größe */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating p::before, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating p::after {
    font-size: calc(38/12*1vw) !important;
    font-style: normal !important;
}

/* Aktueller Hinweis nicht kursiv */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .notice {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    padding: calc(22/12*1vw) calc(24/12*1vw) !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
    font-style: normal !important;
}

/* Bewertung kursiv, aber nicht fett */
#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating p {
    width: 100% !important;
    margin: 0 !important;
    color: #68424f !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 300 !important;
    line-height: 1.55 !important;
    text-align: center !important;
    display: block !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 calc(20/12*1vw) !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
    padding-left: calc(45/12*1vw) !important;
    padding-right: calc(20/12*1vw) !important;
    box-sizing: border-box !important;
    font-style: italic !important;
}

#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating p strong, #main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .last_rating p b {
    font-weight: 300 !important;
}

/* Aktueller Hinweis: normale Schrift */
html body #main#main#main#main div.profile[id^="ddi"] > .notice, html body #main#main#main#main div.profile[id^="ddi"] > .notice * {
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(34/12*1vw) !important;
    font-style: normal !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
}

/* Bewertung: normale Schriftstärke, nur kursiv */
html body #main#main#main#main div.profile[id^="ddi"] .last_rating p, html body #main#main#main#main div.profile[id^="ddi"] .last_rating p * {
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(36/12*1vw) !important;
    font-style: italic !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
}

/* Anführungszeichen weiterhin kräftiger */
html body #main#main#main#main div.profile[id^="ddi"] .last_rating p::before, html body #main#main#main#main div.profile[id^="ddi"] .last_rating p::after {
    font-family: Arial, sans-serif !important;
    font-size: calc(38/12*1vw) !important;
    font-style: normal !important;
    font-weight: 700 !important;
}

/* Loginbereich */
/* Überschrift */
/* Formular */
/* Benutzername und Passwort */
html body .mod_login form[action^="/login"] input.text::placeholder {
    color: #8a6871 !important;
    opacity: 1 !important;
}

html body .mod_login form[action^="/login"] input.text:focus {
    border-color: #c9909f !important;
    outline: 3px solid rgba(201, 144, 159, 0.18) !important;
}

/* Loginbutton */
html body .mod_login form[action^="/login"] input.submit:hover, html body .mod_login form[action^="/login"] input.submit:focus {
    background: #b33a63 !important;
}

/* Passwort vergessen */
/* Schloss im Header auf der Loginseite sichtbar halten */
html body .mobile_login, html body .mobile_login .fas {
    visibility: visible !important;
    opacity: 1 !important;
}

html body .mobile_login .fas {
    display: block !important;
    color: #a64c70 !important;
    font-size: calc(34/12*1vw) !important;
    line-height: 1 !important;
}

/* Registrierungsbereich direkt nach dem Login */
html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) {
    display: block !important;
    width: 100% !important;
    max-width: calc(760/12*1vw) !important;
    margin: calc(26/12*1vw) auto calc(42/12*1vw) !important;
    padding: 0 calc(32/12*1vw) calc(34/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    box-shadow: 0 4px 14px rgba(134, 22, 62, 0.08) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Überschrift */
html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(64/12*1vw)) !important;
    min-height: calc(64/12*1vw) !important;
    margin: 0 -calc(32/12*1vw) calc(26/12*1vw) !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(31/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Leeren Abstand entfernen */
html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) > p:first-of-type {
    display: none !important;
}

/* Absatz mit Registrierungsbutton */
html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) > p {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

/* Alte verschachtelte Spans neutralisieren */
html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) p > span.button {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    color: inherit !important;
    font-size: inherit !important;
    box-sizing: border-box !important;
}

/* Registrierungslink als großer Button */
html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) p a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(68/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #b33a638c !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) p a strong, html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) p a span {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) p a:hover, html body #main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) p a:focus {
    background: #b33a63 !important;
}

/* „Heute besonders beliebt“ */
html body #main#main#main#main .busylist .bh {
    background: #bc5377 !important;
    background-color: #bc5377 !important;
    color: #ffffff !important;
}

/* „Neu bei Sonalea?“ auf der Loginseite */
html body #main#main#main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) > h2.bh {
    background: #bc5377 !important;
    background-color: #bc5377 !important;
    color: #ffffff !important;
}

/* Größere Loginbox */
html body .mod_login:has(form[action^="/login"]) {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(900/12*1vw) !important;
    margin: calc(36/12*1vw) auto calc(46/12*1vw) !important;
    padding: calc(42/12*1vw) calc(44/12*1vw) calc(46/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    box-shadow: 0 4px 14px rgba(134, 22, 62, 0.08) !important;
    box-sizing: border-box !important;
}

/* Überschrift größer */
html body .mod_login:has(form[action^="/login"])::before {
    content: "Willkommen zurück!" !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(24/12*1vw) !important;
    padding: 0 !important;
    color: #86163e !important;
    font-family: inherit !important;
    font-size: calc(36/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    margin-bottom: calc(30/12*1vw) !important;
}

/* Mehr Abstand zwischen den Elementen */
html body .mod_login form[action^="/login"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: calc(20/12*1vw) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Größere Eingabefelder */
html body .mod_login form[action^="/login"] input.text {
    display: block !important;
    width: 100% !important;
    height: calc(80/12*1vw) !important;
    min-height: calc(80/12*1vw) !important;
    margin: 0 !important;
    padding: calc(14/12*1vw) calc(24/12*1vw) !important;
    border: 2px solid #dfbdc8 !important;
    border-radius: calc(8/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    border-width: 2px !important;
}

/* Größerer Loginbutton */
html body .mod_login form[action^="/login"] input.submit {
    display: block !important;
    width: 100% !important;
    height: calc(80/12*1vw) !important;
    min-height: calc(80/12*1vw) !important;
    margin: calc(4/12*1vw) 0 0 !important;
    padding: calc(14/12*1vw) calc(24/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(8/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(38/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

/* Passwortlink größer */
html body .mod_login form[action^="/login"] a.pwlink {
    display: block !important;
    align-self: center !important;
    margin: calc(4/12*1vw) 0 0 !important;
    padding: calc(10/12*1vw) calc(14/12*1vw) !important;
    color: #86163e !important;
    font-family: inherit !important;
    font-size: calc(29/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    text-decoration: underline !important;
    margin-top: calc(8/12*1vw) !important;
}

/* Bereich ohne zusätzliche Box */
html body #main#main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) {
    max-width: calc(900/12*1vw) !important;
    margin: calc(34/12*1vw) auto calc(46/12*1vw) !important;
    padding: calc(12/12*1vw) calc(44/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Nur fettgedruckter Text, kein Balken */
html body #main#main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) > h2.bh {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 0 calc(24/12*1vw) !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    color: #86163e !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Registrierungsbutton größer */
html body #main#main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) p a {
    width: 100% !important;
    min-height: calc(80/12*1vw) !important;
    padding: calc(15/12*1vw) calc(24/12*1vw) !important;
    border-radius: calc(8/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

html body #main#main#main#main#main .mod_login:has(form[action^="/login"]) ~ .cte_text:has(> h2.bh) > h2.bh {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 0 calc(24/12*1vw) !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #bc5377 !important;
    font-size: calc(36/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Überschrift „Neukunde werden“ */
html body #main#main:has(form#reg) h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(68/12*1vw) !important;
    margin: 0 0 calc(26/12*1vw) !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Gesamtes Registrierungsformular */
html body #main#main form#reg {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(900/12*1vw) !important;
    margin: 0 auto calc(40/12*1vw) !important;
    padding: calc(34/12*1vw) calc(40/12*1vw) calc(42/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    box-shadow: 0 4px 14px rgba(134, 22, 62, 0.08) !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

/* Jede Formularzeile */
html body #main#main form#reg > .row:not(.check) {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 calc(24/12*1vw) !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* Feldbeschriftungen */
html body #main#main form#reg > .row:not(.check) > label {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(9/12*1vw) !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    text-align: left !important;
}

/* Pflichtfeldstern */
html body #main#main form#reg .asterisk {
    color: #bc5377 !important;
    font-size: inherit !important;
    font-weight: 700 !important;
}

/* Texteingaben, Passwörter und Auswahlfelder */
html body #main#main form#reg input.text, html body #main#main form#reg select.select {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: calc(70/12*1vw) !important;
    min-height: calc(70/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(18/12*1vw) !important;
    border: 2px solid #dfbdc8 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

html body #main#main form#reg input.text:focus, html body #main#main form#reg select.select:focus {
    border-color: #c9909f !important;
    outline: 3px solid rgba(201, 144, 159, 0.18) !important;
}

/* Passwortcontainer */
html body #main#main form#reg .pw_input {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
}

html body #main#main form#reg .pw_input input.text {
    padding-right: calc(70/12*1vw) !important;
}

/* Auge zum Ein-/Ausblenden des Passworts */
html body #main#main form#reg .pw_toggle {
    position: absolute !important;
    z-index: 5 !important;
    top: 50% !important;
    right: calc(20/12*1vw) !important;
    display: block !important;
    width: calc(34/12*1vw) !important;
    height: calc(34/12*1vw) !important;
    transform: translateY(-50%) !important;
    cursor: pointer !important;
}

/* Telefonnummer: Landesvorwahl und Rufnummer */
html body #main#main form#reg .ctrl_phone > .phone {
    display: grid !important;
    grid-template-columns: calc(210/12*1vw) minmax(0, 1fr) !important;
    gap: calc(14/12*1vw) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body #main#main form#reg .ctrl_phone select, html body #main#main form#reg .ctrl_phone input {
    width: 100% !important;
    height: calc(70/12*1vw) !important;
    min-height: calc(70/12*1vw) !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Hilfetexte */
html body #main#main form#reg .help {
    display: block !important;
    width: 100% !important;
    margin: calc(8/12*1vw) 0 0 !important;
    padding: 0 !important;
}

html body #main#main form#reg .help p {
    margin: 0 !important;
    padding: 0 !important;
    color: #8a6871 !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(20/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

/* Checkboxzeilen */
html body #main#main form#reg > .row.check {
    display: grid !important;
    grid-template-columns: calc(38/12*1vw) minmax(0, 1fr) !important;
    align-items: start !important;
    gap: calc(14/12*1vw) !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 calc(20/12*1vw) !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* Große Checkboxen */
html body #main#main form#reg > .row.check > input[type="checkbox"] {
    display: block !important;
    width: calc(30/12*1vw) !important;
    height: calc(30/12*1vw) !important;
    margin: calc(3/12*1vw) 0 0 !important;
    padding: 0 !important;
    accent-color: #bc5377 !important;
    cursor: pointer !important;
}

/* Checkboxtexte */
html body #main#main form#reg > .row.check > label {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

html body #main#main form#reg > .row.check > label a {
    color: #bc5377 !important;
    font-size: inherit !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
}

/* Widerrufsformular */
html body #main#main form#reg .retraction {
    display: block !important;
    width: 100% !important;
    margin: calc(24/12*1vw) 0 !important;
    padding: calc(18/12*1vw) calc(20/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
    background: #efdbe1 !important;
    color: #68424f !important;
    font-size: calc(22/12*1vw) !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

html body #main#main form#reg .retraction br {
    display: none !important;
}

html body #main#main form#reg .retraction a {
    color: #86163e !important;
    font-size: inherit !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
}

/* Pflichtfelderhinweis */
html body #main#main form#reg > p {
    color: #68424f !important;
    font-size: calc(21/12*1vw) !important;
    line-height: 1.4 !important;
}

/* Registrierungsbutton */
html body #main#main form#reg > input.submit {
    display: block !important;
    width: 100% !important;
    height: calc(80/12*1vw) !important;
    min-height: calc(80/12*1vw) !important;
    margin: calc(30/12*1vw) 0 0 !important;
    padding: calc(14/12*1vw) calc(24/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(8/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(36/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

html body #main#main form#reg > input.submit:hover, html body #main#main form#reg > input.submit:focus {
    background: #a63f63 !important;
}

/* Bild unter dem Formular responsiv */
html body #main#main:has(form#reg) .cte_text img {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(900/12*1vw) !important;
    height: auto !important;
    margin: calc(30/12*1vw) auto !important;
}

html body #main#main#main form#reg .help {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: calc(8/12*1vw) 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    overflow: visible !important;
    transform: none !important;
}

/* Alte Fragezeichen und Hilfesymbole entfernen */
html body #main#main#main form#reg .help::before, html body #main#main#main form#reg .help::after {
    content: none !important;
    display: none !important;
    background: none !important;
}

/* Hilfetext normal anzeigen */
html body #main#main#main form#reg .help p {
    position: static !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #8a6871 !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    transform: none !important;
}

/* Inhaltsbereich der Registrierungsseite sortierbar machen */
html body #main#main > .inside:has(form#reg) {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
}

/* Eventuelle Modulhülle des Formulars auflösen */
html body #main#main > .inside:has(form#reg) > *:has(> form#reg) {
    display: contents !important;
}

/* Überschrift zuerst */
html body #main#main > .inside:has(form#reg) h2.bh {
    order: 1 !important;
}

/* Neukundenbild an zweiter Stelle */
/* Absatz um das Bild zurücksetzen */
html body #main#main > .inside:has(form#reg) .cte_text:has(img[src*="Neukunde-PopUp"]) > p {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

/* Bild groß und vollständig anzeigen */
html body #main#main > .inside:has(form#reg) img[src*="Neukunde-PopUp"] {
    display: block !important;
    width: 100% !important;
    max-width: calc(900/12*1vw) !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-radius: calc(9/12*1vw) !important;
    box-sizing: border-box !important;
}

/* Formular nach dem Bild */
/* Weitere Inhalte anschließend */
html body #main#main > .inside:has(form#reg) > * {
    order: 10;
}

/* Reihenfolge für Bild und Formular erneut absichern */
html body #main#main > .inside:has(form#reg) .cte_text:has(img[src*="Neukunde-PopUp"]) {
    order: 2 !important;
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(900/12*1vw) !important;
    margin: 0 auto calc(30/12*1vw) !important;
    padding: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

html body #main#main > .inside:has(form#reg) form#reg {
    order: 3 !important;
}

html body #main#main#main#main > .inside:has(form#reg) h2.bh {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    margin-top: calc(45/12*1vw) !important;
    margin-bottom: calc(22/12*1vw) !important;
}

html body:has(form#reg) #main#main#main .bh {
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(68/12*1vw) !important;
    margin-top: calc(38/12*1vw) !important;
    margin-bottom: calc(24/12*1vw) !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    font-size: calc(34/12*1vw) !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

html body #main#main#main form#reg select.select, html body #main#main#main form#reg select.select option {
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

/* Falls das System „Chosen“ für Dropdowns verwendet */
html body #main#main#main form#reg .chosen-container, html body #main#main#main form#reg .chosen-container *, html body #main#main#main form#reg .chosen-results li {
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
}

/* Seite über das eindeutige Artikelbanner erkennen */
html body:has(img[src*="BCB37D36"]) #main#main {
    width: 100% !important;
    max-width: none !important;
}

/* Leere rosa Punktbalken entfernen */
html body:has(img[src*="BCB37D36"]) #main#main h5.bh {
    display: none !important;
}

/* Oberer Bannerbereich */
html body:has(img[src*="BCB37D36"]) #main#main .cte_text:has(img[src*="BCB37D36"]) {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(920/12*1vw) !important;
    margin: calc(200/12*1vw) auto calc(34/12*1vw) !important;
    padding: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

html body:has(img[src*="BCB37D36"]) #main#main .cte_text:has(img[src*="BCB37D36"]) p {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Artikelbanner groß anzeigen */
html body:has(img[src*="BCB37D36"]) #main#main img[src*="BCB37D36"] {
    display: block !important;
    width: 100% !important;
    max-width: calc(920/12*1vw) !important;
    height: auto !important;
    margin: 0 auto !important;
    border-radius: calc(8/12*1vw) !important;
}

/* Tabellen der Artikelübersicht */
html body:has(img[src*="BCB37D36"]) #main#main table {
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(920/12*1vw) !important;
    height: auto !important;
    margin: 0 auto calc(28/12*1vw) !important;
    border-collapse: separate !important;
    border-spacing: 1px !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
}

html body:has(img[src*="BCB37D36"]) #main#main tbody, html body:has(img[src*="BCB37D36"]) #main#main tr {
    width: 100% !important;
    height: auto !important;
}

/* Einzelne Tabellenzellen */
html body:has(img[src*="BCB37D36"]) #main#main td {
    width: 50% !important;
    height: auto !important;
    padding: calc(20/12*1vw) calc(18/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #fffafb !important;
    text-align: center !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
}

/* Artikelüberschriften */
html body:has(img[src*="BCB37D36"]) #main#main td h2 {
    margin: calc(8/12*1vw) 0 calc(14/12*1vw) !important;
    padding: 0 !important;
    color: #86163e !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Vorschautexte und Autoren */
html body:has(img[src*="BCB37D36"]) #main#main td p, html body:has(img[src*="BCB37D36"]) #main#main td span:not(.frame), html body:has(img[src*="BCB37D36"]) #main#main td em {
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(29/12*1vw) !important;
    line-height: 1.45 !important;
    text-align: center !important;
    white-space: normal !important;
}

html body:has(img[src*="BCB37D36"]) #main#main td em {
    display: block !important;
    margin-top: calc(12/12*1vw) !important;
    color: #8a6871 !important;
    font-size: calc(21/12*1vw) !important;
}

/* Artikelbilder */
html body:has(img[src*="BCB37D36"]) #main#main td img {
    display: block !important;
    width: 100% !important;
    max-width: calc(270/12*1vw) !important;
    height: auto !important;
    margin: calc(12/12*1vw) auto !important;
    border-radius: calc(8/12*1vw) !important;
}

/* „Neu!“-Kennzeichnung */
html body:has(img[src*="BCB37D36"]) #main#main .frame {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: calc(48/12*1vw) !important;
    padding: calc(8/12*1vw) calc(22/12*1vw) !important;
    border-radius: calc(6/12*1vw) !important;
    background: #73a241 !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* Verlinkte Artikel */
html body:has(img[src*="BCB37D36"]) #main#main td a {
    color: #86163e !important;
    text-decoration: none !important;
}

html body:has(img[src*="BCB37D36"]) #main#main td a:has(> img) {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Automatischer Button unter jedem verlinkten Bild */
html body:has(img[src*="BCB37D36"]) #main#main td a:has(> img)::after {
    content: "Artikel lesen" !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: calc(270/12*1vw) !important;
    min-height: calc(58/12*1vw) !important;
    margin: calc(10/12*1vw) auto 0 !important;
    padding: calc(10/12*1vw) calc(16/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Gesamte Box */
html body #main#main .mod_passreset {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(900/12*1vw) !important;
    margin: calc(40/12*1vw) auto calc(50/12*1vw) !important;
    padding: calc(42/12*1vw) calc(44/12*1vw) calc(46/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    box-shadow: 0 4px 14px rgba(134, 22, 62, 0.09) !important;
    box-sizing: border-box !important;
}

/* Überschrift */
html body #main#main .mod_passreset > h1.bh {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 0 calc(22/12*1vw) !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #bc5377 !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(36/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Erklärung */
html body #main#main .mod_passreset .formbody::before {
    content: "Bitte wählen Sie Ihren Zugang und geben Sie Ihre E-Mail-Adresse ein." !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(28/12*1vw) !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

/* Formular */
html body #main#main .mod_passreset form, html body #main#main .mod_passreset .formbody {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body #main#main .mod_passreset .row {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 calc(20/12*1vw) !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
}

html body #main#main .mod_passreset .row br {
    display: none !important;
}

/* Auswahlfeld und E-Mail */
html body #main#main .mod_passreset select.select, html body #main#main .mod_passreset input.text {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: calc(78/12*1vw) !important;
    min-height: calc(78/12*1vw) !important;
    margin: 0 !important;
    padding: calc(14/12*1vw) calc(22/12*1vw) !important;
    border: 2px solid #dfbdc8 !important;
    border-radius: calc(8/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* Dropdown-Auswahl nicht übergroß */
html body #main#main .mod_passreset select.select option {
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 400 !important;
}

html body #main#main .mod_passreset select.select:focus, html body #main#main .mod_passreset input.text:focus {
    border-color: #c9909f !important;
    outline: 3px solid rgba(201, 144, 159, 0.18) !important;
}

/* Unsichtbare Sicherheitszeile erzeugt keinen Abstand */
html body #main#main .mod_passreset .row:has(input[name="website"]) {
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

/* Buttoncontainer */
html body #main#main .mod_passreset .submit_container {
    display: block !important;
    width: 100% !important;
    margin: calc(8/12*1vw) 0 0 !important;
    padding: 0 !important;
}

/* Button */
html body #main#main .mod_passreset input.submit {
    display: block !important;
    width: 100% !important;
    height: calc(82/12*1vw) !important;
    min-height: calc(82/12*1vw) !important;
    margin: 0 !important;
    padding: calc(15/12*1vw) calc(22/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(8/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(29/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

html body #main#main .mod_passreset input.submit:hover, html body #main#main .mod_passreset input.submit:focus {
    background: #a63f63 !important;
}

/* ==================================================
        1. KUNDENSTIMMEN UND ERFAHRUNGEN
        ================================================== */
html body #main#main .cte_text:has(> h2.bh):has(> p span u) {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(920/12*1vw) !important;
    height: auto !important;
    margin: calc(30/12*1vw) auto calc(44/12*1vw) !important;
    padding: 0 calc(32/12*1vw) calc(40/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Überschrift */
html body #main#main .cte_text:has(> h2.bh):has(> p span u) > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(64/12*1vw)) !important;
    min-height: calc(70/12*1vw) !important;
    margin: 0 -calc(32/12*1vw) calc(30/12*1vw) !important;
    padding: calc(13/12*1vw) calc(22/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Texte */
html body #main#main .cte_text:has(> h2.bh):has(> p span u) > p, html body #main#main .cte_text:has(> h2.bh):has(> p span u) > p span, html body #main#main .cte_text:has(> h2.bh):has(> p span u) > p strong, html body #main#main .cte_text:has(> h2.bh):has(> p span u) > p em {
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
}

html body #main#main .cte_text:has(> h2.bh):has(> p span u) > p {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(18/12*1vw) !important;
    padding: 0 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
}

/* Kundin/Kunde schrieb */
html body #main#main .cte_text:has(> h2.bh):has(> p span u) > p:has(u) {
    margin: calc(32/12*1vw) 0 calc(18/12*1vw) !important;
    padding: calc(16/12*1vw) calc(20/12*1vw) !important;
    border-left: 6px solid #bc5377 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_text:has(> h2.bh):has(> p span u) > p:has(u) * {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-decoration: none !important;
}

/* Erster Eintrag ohne großen oberen Abstand */
html body #main#main .cte_text:has(> h2.bh):has(> p span u) > h2.bh + p {
    margin-top: 0 !important;
}

html body #main#main .cte_text:has(> h2.bh):has(> p span u) > .clear {
    display: none !important;
}

/* ==================================================
        2. WEITERE FEEDBACKS UNSERER KUNDEN
        ================================================== */
html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(920/12*1vw) !important;
    height: auto !important;
    margin: calc(32/12*1vw) auto calc(46/12*1vw) !important;
    padding: 0 calc(32/12*1vw) calc(40/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Überschrift */
html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(64/12*1vw)) !important;
    min-height: calc(72/12*1vw) !important;
    margin: 0 -calc(32/12*1vw) calc(30/12*1vw) !important;
    padding: calc(13/12*1vw) calc(22/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Gesamter Feedbacktext */
html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > p, html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > p span, html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > p strong, html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > p em {
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
}

html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > p {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(20/12*1vw) !important;
    padding: 0 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
}

/* Kundin/Kunde schrieb */
html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > p:has( span[style*="text-decoration: underline"] ) {
    margin: calc(34/12*1vw) 0 calc(18/12*1vw) !important;
    padding: calc(16/12*1vw) calc(20/12*1vw) !important;
    border-left: 6px solid #bc5377 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > p:has( span[style*="text-decoration: underline"] ) * {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-decoration: none !important;
}

/* Erster Eintrag */
html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > h2.bh + p {
    margin-top: 0 !important;
}

html body #main#main .cte_text:has( > h2.bh + p > span[style*="text-decoration: underline"] ) > .clear {
    display: none !important;
}

/* ==================================================
        3. FEEDBACK SCHREIBEN
        ================================================== */
html body #main#main .cte_text:has(> h2.bh):has(a[href="gaestebuch"]) {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(920/12*1vw) !important;
    margin: calc(34/12*1vw) auto calc(46/12*1vw) !important;
    padding: 0 calc(34/12*1vw) calc(36/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #fffafb !important;
    box-shadow: 0 4px 14px rgba(134, 22, 62, 0.08) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_text:has(> h2.bh):has(a[href="gaestebuch"]) > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(68/12*1vw)) !important;
    min-height: calc(68/12*1vw) !important;
    margin: 0 -calc(34/12*1vw) calc(28/12*1vw) !important;
    padding: calc(12/12*1vw) calc(22/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(33/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_text:has(> h2.bh):has(a[href="gaestebuch"]) > p {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: calc(22/12*1vw) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

html body #main#main .cte_text:has(> h2.bh):has(a[href="gaestebuch"]) > p > span {
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

/* Mein-Feedback-Button */
html body #main#main .cte_text:has(> h2.bh):has(a[href="gaestebuch"]) a[href="gaestebuch"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(76/12*1vw) !important;
    margin: 0 !important;
    padding: calc(14/12*1vw) calc(22/12*1vw) !important;
    border-radius: calc(8/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(29/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_text:has(> h2.bh):has(a[href="gaestebuch"]) a[href="gaestebuch"] span, html body #main#main .cte_text:has(> h2.bh):has(a[href="gaestebuch"]) a[href="gaestebuch"] strong {
    color: inherit !important;
    background: transparent !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

html body #main#main .cte_text:has(> h2.bh):has(a[href="gaestebuch"]) > .clear {
    display: none !important;
}

/* ==================================================
        4. OBERES GÄSTEBUCHBILD
        ================================================== */
html body #main#main .cte_text img {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(920/12*1vw) !important;
    height: auto !important;
    margin: calc(24/12*1vw) auto calc(32/12*1vw) !important;
    border-radius: calc(8/12*1vw) !important;
}

/* Gesamten Berater-Feedbackblock erkennen */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(920/12*1vw) !important;
    height: auto !important;
    margin: calc(32/12*1vw) auto calc(46/12*1vw) !important;
    padding: 0 calc(32/12*1vw) calc(42/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #ffffff !important;
    box-shadow: 0 4px 14px rgba(134, 22, 62, 0.07) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Hauptüberschrift */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(64/12*1vw)) !important;
    min-height: calc(76/12*1vw) !important;
    margin: 0 -calc(32/12*1vw) calc(28/12*1vw) !important;
    padding: calc(14/12*1vw) calc(22/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Alle normalen Absätze */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 calc(20/12*1vw) !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
}

/* Sämtliche fest eingetragenen 16px überschreiben */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p span, html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p strong, html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p em {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

/* Überschrift eines neuen Berater-Feedbacks */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p:has( span[style*="text-decoration: underline"] ) {
    margin: calc(38/12*1vw) 0 calc(20/12*1vw) !important;
    padding: calc(17/12*1vw) calc(20/12*1vw) !important;
    border-left: 6px solid #bc5377 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    box-sizing: border-box !important;
}

/* Inhalt der Zwischenüberschrift */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p:has( span[style*="text-decoration: underline"] ) span, html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p:has( span[style*="text-decoration: underline"] ) strong {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-decoration: none !important;
}

/* Unterstreichungen grundsätzlich entfernen */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) span[style*="text-decoration: underline"] {
    text-decoration: none !important;
}

/* Antworten von Sonalea hervorheben */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p:has(em strong) {
    margin: calc(22/12*1vw) 0 calc(34/12*1vw) !important;
    padding: calc(18/12*1vw) calc(20/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
    background: #fff4f7 !important;
    color: #86163e !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > p:has(em strong) * {
    font-size: inherit !important;
    line-height: inherit !important;
}

/* Technisches Clear-Element entfernen */
html body #main#main .cte_text:has( > h2.bh + p + p span strong span[style*="text-decoration: underline"] ) > .clear {
    display: none !important;
}

/* Gesamter Glücksbotenblock */
html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) {
    display: block !important;
    width: calc(100% - calc(40/12*1vw)) !important;
    max-width: calc(920/12*1vw) !important;
    height: auto !important;
    margin: calc(32/12*1vw) auto calc(46/12*1vw) !important;
    padding: 0 calc(30/12*1vw) calc(38/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #ffffff !important;
    box-shadow: 0 4px 14px rgba(134, 22, 62, 0.07) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Überschrift */
html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) > h3.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(60/12*1vw)) !important;
    min-height: calc(78/12*1vw) !important;
    margin: 0 -calc(30/12*1vw) calc(28/12*1vw) !important;
    padding: calc(14/12*1vw) calc(20/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(32/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Jede einzelne Kundenstimme */
html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) > p {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 calc(18/12*1vw) !important;
    padding: calc(18/12*1vw) calc(20/12*1vw) !important;
    border-left: 5px solid #d895aa !important;
    border-radius: calc(7/12*1vw) !important;
    background: #fff7f9 !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
}

/* Fest eingetragene 16px überschreiben */
html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) > p span, html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) > p strong, html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) > p em {
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

/* Abwechselnd leicht unterschiedliche Hintergründe */
html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) > p:nth-of-type(even) {
    background: #fdf1f4 !important;
}

/* Leere Absätze ohne Rahmen */
html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) > p:not(:has(span)) {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

/* Technisches Clear-Element entfernen */
html body #main#main .cte_text:has(> h3.bh):has( > p span[style*="font-size: 16px"] ) > .clear {
    display: none !important;
}

/* Hauptüberschrift der Artikel */
html body #main#main .cte_text.block > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(76/12*1vw) !important;
    margin: 0 0 calc(30/12*1vw) !important;
    padding: calc(14/12*1vw) calc(22/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Alle Absätze nach der Artikelüberschrift */
html body #main#main .cte_text.block > h2.bh ~ p {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 calc(22/12*1vw) !important;
    padding: 0 calc(28/12*1vw) !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
}

/* Fest im HTML eingetragene 16px überschreiben */
html body #main#main .cte_text.block > h2.bh ~ p span, html body #main#main .cte_text.block > h2.bh ~ p strong, html body #main#main .cte_text.block > h2.bh ~ p em {
    color: inherit !important;
    font-family: inherit !important;
    font-size: calc(35/12*1vw) !important;
    line-height: inherit !important;
}

/* Die ersten beiden Einleitungszeilen */
html body #main#main .cte_text.block > h2.bh + p, html body #main#main .cte_text.block > h2.bh + p + p {
    color: #86163e !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    text-align: center !important;
}

html body #main#main .cte_text.block > h2.bh + p *, html body #main#main .cte_text.block > h2.bh + p + p * {
    color: inherit !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

/* Bilder in Artikeln */
html body #main#main .cte_text.block > h2.bh ~ p img {
    display: block !important;
    width: 100% !important;
    max-width: calc(760/12*1vw) !important;
    height: auto !important;
    margin: calc(26/12*1vw) auto calc(32/12*1vw) !important;
    border-radius: calc(8/12*1vw) !important;
}

html body #main#main .cte_text.block > .clear {
    display: none !important;
}

#main #tabnav ul.tabnav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: calc(10/12*1vw) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) !important;
    box-sizing: border-box !important;
}

#main #tabnav ul.tabnav > li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

/* Alle Berater – volle Breite oben */
#main #tabnav ul.tabnav > li:first-child {
    grid-column: 1 / -1 !important;
}

/* Beratersuche – volle Breite unten */
#main #tabnav ul.tabnav > li.last {
    grid-column: 1 / -1 !important;
    order: 10 !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
}

/* Filterbuttons */
#main #tabnav ul.tabnav > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(62/12*1vw) !important;
    padding: calc(10/12*1vw) calc(12/12*1vw) !important;
    box-sizing: border-box !important;
}

/* Suchfeld */
#main #tabnav li.last input.search {
    display: block !important;
    width: 100% !important;
    height: calc(66/12*1vw) !important;
    margin: 0 !important;
    padding: calc(10/12*1vw) calc(70/12*1vw) calc(10/12*1vw) calc(18/12*1vw) !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 400 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Suchbutton/Lupe */
#main #tabnav li.last input.go {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    display: block !important;
    width: calc(66/12*1vw) !important;
    height: calc(66/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    z-index: 3 !important;
}

html body #main#main#main a.button.click2call.busy, html body #main#main#main a.button.busy {
    background: #d65c8f !important;
    background-color: #d65c8f !important;
    background-image: none !important;
    border-color: #d65c8f !important;
    color: #ffffff !important;
}

#main .pagination.mod_paginator {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: calc(14/12*1vw) !important;
    width: 100% !important;
    margin: calc(28/12*1vw) 0 !important;
    padding: calc(16/12*1vw) calc(12/12*1vw) !important;
    box-sizing: border-box !important;
}

#main .pagination.mod_paginator ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: calc(10/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
}

#main .pagination.mod_paginator li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Seitenzahlen und Pfeile */
#main .pagination.mod_paginator li a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: calc(62/12*1vw) !important;
    height: calc(62/12*1vw) !important;
    padding: calc(8/12*1vw) calc(12/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(33/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Aktive Seite */
#main .pagination.mod_paginator li.active a {
    background: #bc5377 !important;
    color: #ffffff !important;
}

/* Chat-Inhalte bleiben Teil des Buttonrasters */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat {
    display: contents !important;
}

/* ==================================================
        NORMALE PREISE OHNE AKTION
        ================================================== */
/* Normaler Telefonpreis */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > small.tariff:not(.disable):not(.campaign) {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    display: flex !important;
    width: 100% !important;
    color: #a62958 !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 700 !important;
    text-align: center !important;
}

/* Normaler Chatpreis */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat > small.tariff:not(.disable):not(.campaign) {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    display: flex !important;
    width: 100% !important;
    color: #a62958 !important;
    font-size: calc(29/12*1vw) !important;
    font-weight: 700 !important;
    text-align: center !important;
}

/* ==================================================
        TELEFON-AKTIONSPREIS
        ================================================== */
/* Alter Telefonpreis links innerhalb der Preiszelle */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > small.tariff.disable {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    display: block !important;
    width: auto !important;
    margin: 0 calc(4/12*1vw) !important;
    padding: 0 !important;
    color: #9b858c !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    text-align: left !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
    white-space: nowrap !important;
}

/* Neuer Telefon-Aktionspreis rechts daneben */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > small.tariff.campaign {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: center !important;
    display: block !important;
    width: auto !important;
    margin: 0 calc(4/12*1vw) !important;
    padding: 0 !important;
    color: #ff5597 !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    text-align: right !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* ==================================================
        CHAT-AKTIONSPREIS – WIE BEI MILA
        ================================================== */
/* Regulärer Chatpreis links, durchgestrichen */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat > small.tariff.disable {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    display: block !important;
    width: auto !important;
    margin: 0 calc(4/12*1vw) !important;
    padding: 0 !important;
    color: #9b858c !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    text-align: left !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
    white-space: nowrap !important;
}

/* Chat-Aktionspreis rechts daneben, kräftig pink */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile > .right > div.chat > small.tariff.campaign {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: center !important;
    display: block !important;
    width: auto !important;
    margin: 0 calc(4/12*1vw) !important;
    padding: 0 !important;
    color: #ff5597 !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    text-align: right !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* Sternchen übernehmen die jeweilige Farbe */
html body #main#main :is(#agents580#agents580, #agents271#agents271, #agents2#agents2) > div.profile .right small.tariff .asterisk {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

/* Ausgeblendeten regulären Preis wieder sichtbar machen */
/* Aktionspreis kräftig pink */
/* Telefonaktion: beide Preise über dem Anrufbutton */
/* Chataktion: beide Preise über dem Chatbutton */
html body #main#main#main div.profile > div.right > div.chat {
    display: contents !important;
}

/* Sternchen */
html body #main#main#main div.profile > div.right small.tariff .asterisk {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

/* ==================================================
        STARTSEITE / BERATERKACHELN
        ================================================== */
/* Regulärer, durchgestrichener Preis */
html body #main#main#main div.profile > div.right small.tariff.disable {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    margin: 0 calc(5/12*1vw) !important;
    padding: 0 !important;
    color: #806b72 !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
    white-space: nowrap !important;
}

/* Aktionspreis */
html body #main#main#main div.profile > div.right small.tariff.campaign {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    margin: 0 calc(5/12*1vw) !important;
    padding: 0 !important;
    color: #d65c8f !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* Telefonpreise näher zusammen */
/* Chatpreise näher zusammen */
/* ==================================================
        BERATERDETAILSEITE
        ================================================== */
html body #main#main#main .article[id^="ddi"] > .panel > .right > div.chat {
    display: contents !important;
}

/* Regulärer Preis auf der Detailseite */
html body #main#main#main .article[id^="ddi"] > .panel > .right small.tariff.disable {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #806b72 !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
    white-space: nowrap !important;
}

/* Aktionspreis auf der Detailseite */
html body #main#main#main .article[id^="ddi"] > .panel > .right small.tariff.campaign {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #d65c8f !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* Telefonaktion auf der Detailseite */
/* Chataktion auf der Detailseite */
/* Sternchen */
html body #main#main small.tariff .asterisk {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

/* Regulärer Preis deutlicher */
html body #main#main#main small.tariff.disable {
    color: #765f67 !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 600 !important;
    text-decoration-thickness: 2px !important;
}

/* Aktionspreis größer und kräftiger */
html body #main#main#main small.tariff.campaign {
    color: #e0447d !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 800 !important;
}

/* Telefonpreise enger zusammen */
html body #main#main#main div.profile > div.right > small.tariff.disable, html body #main#main#main .article[id^="ddi"] > .panel > .right > small.tariff.disable {
    transform: translateX(-45%) !important;
}

html body #main#main#main div.profile > div.right > small.tariff.campaign, html body #main#main#main .article[id^="ddi"] > .panel > .right > small.tariff.campaign {
    transform: translateX(45%) !important;
}

/* Chatpreise enger zusammen */
html body #main#main#main div.profile > div.right > div.chat > small.tariff.disable, html body #main#main#main .article[id^="ddi"] > .panel > .right > div.chat > small.tariff.disable {
    transform: translateX(-45%) !important;
}

html body #main#main#main div.profile > div.right > div.chat > small.tariff.campaign, html body #main#main#main .article[id^="ddi"] > .panel > .right > div.chat > small.tariff.campaign {
    transform: translateX(45%) !important;
}

/* Regulärer Chatpreis links */
html body #main#main#main .article[id^="ddi"] > .panel > .right > div.chat > small.tariff.disable {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    transform: none !important;
    margin-left: calc(4/12*1vw) !important;
    margin-right: 0 !important;
    font-size: calc(28/12*1vw) !important;
}

/* Aktionspreis rechts */
html body #main#main#main .article[id^="ddi"] > .panel > .right > div.chat > small.tariff.campaign {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    transform: none !important;
    margin-left: 0 !important;
    margin-right: calc(4/12*1vw) !important;
    font-size: calc(28/12*1vw) !important;
}

/* Dasselbe bei Telefonaktionen */
html body #main#main#main .article[id^="ddi"] > .panel > .right > small.tariff.disable {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    transform: none !important;
    margin-left: calc(4/12*1vw) !important;
    margin-right: 0 !important;
    font-size: calc(28/12*1vw) !important;
}

html body #main#main#main .article[id^="ddi"] > .panel > .right > small.tariff.campaign {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    transform: none !important;
    margin-left: 0 !important;
    margin-right: calc(4/12*1vw) !important;
    font-size: calc(28/12*1vw) !important;
}

/* Regulärer Chatpreis links */
html body #main#main#main div.profile > div.right > div.chat > small.tariff.disable {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    width: auto !important;
    margin: 0 !important;
    transform: none !important;
    margin-left: calc(10/12*1vw) !important;
    margin-right: 0 !important;
    font-size: calc(28/12*1vw) !important;
}

/* Aktionspreis rechts, aber innerhalb der Kachel */
html body #main#main#main div.profile > div.right > div.chat > small.tariff.campaign {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: center !important;
    width: auto !important;
    margin: 0 !important;
    transform: none !important;
    margin-left: 0 !important;
    margin-right: calc(10/12*1vw) !important;
    font-size: calc(25/12*1vw) !important;
}

/* Telefonaktionen ebenfalls innerhalb der linken Spalte */
html body #main#main#main div.profile > div.right > small.tariff.disable {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    width: auto !important;
    margin: 0 !important;
    transform: none !important;
    margin-left: calc(10/12*1vw) !important;
    margin-right: 0 !important;
    font-size: calc(24/12*1vw) !important;
}

html body #main#main#main div.profile > div.right > small.tariff.campaign {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: center !important;
    width: auto !important;
    margin: 0 !important;
    transform: none !important;
    margin-left: 0 !important;
    margin-right: calc(10/12*1vw) !important;
    font-size: calc(25/12*1vw) !important;
}

html body #main#main#main#main a.button.button.busy {
    background: #b33a63 !important;
    background-color: #b33a63 !important;
    background-image: none !important;
    border-color: #b33a63 !important;
    color: #ffffff !important;
}

html body #main#main#main#main a.button.button.busy span {
    color: #ffffff !important;
}

/* Gesamter Profiltextbereich */
html body #main#main#main .longtext {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    padding: calc(24/12*1vw) calc(30/12*1vw) calc(36/12*1vw) !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
    box-sizing: border-box !important;
}

/* Alle unterschiedlichen HTML-Formatierungen überschreiben */
html body #main#main#main .longtext p, html body #main#main#main .longtext span, html body #main#main#main .longtext strong, html body #main#main#main .longtext em, html body #main#main#main .longtext li, html body #main#main#main .longtext a {
    color: inherit !important;
    font-family: inherit !important;
    font-size: calc(27/12*1vw) !important;
    line-height: 1.65 !important;
}

/* Absätze mit gleichmäßigen Abständen */
html body #main#main#main .longtext p {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(20/12*1vw) !important;
    padding: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
}

/* Fett und kursiv bleiben erhalten */
html body #main#main#main .longtext strong {
    font-weight: 700 !important;
}

html body #main#main#main .longtext em {
    font-style: italic !important;
}

/* Bilder im Profiltext */
html body #main#main#main .longtext img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    margin: calc(24/12*1vw) auto !important;
}

/* Kontaktformular als übersichtliche Box */
html body #main#main .cte_form.form_1 {
    display: block !important;
    width: calc(100% - calc(32/12*1vw)) !important;
    max-width: calc(900/12*1vw) !important;
    margin: calc(70/12*1vw) auto calc(36/12*1vw) !important;
    padding: 0 calc(28/12*1vw) calc(34/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    box-sizing: border-box !important;
}

/* Rosa Kontakt-Balken schmaler und Schrift kleiner */
html body #main#main .cte_form.form_1 > h1.bh {
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    display: block !important;
    width: 107% !important;
    max-width: none !important;
    margin: 0 0 calc(24 / 12 * 1vw) !important;
    padding: 7px 10px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
}

html body #main#main .cte_form.form_1 form {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Einzelne Formularzeilen */
html body #main#main .cte_form.form_1 form > .row {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(22/12*1vw) !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Beschriftungen */
html body #main#main .cte_form.form_1 .row > label {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(8/12*1vw) !important;
    padding: 0 !important;
    color: #68424f !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-align: left !important;
}

html body #main#main .cte_form.form_1 .asterisk {
    color: #bc5377 !important;
    font-size: inherit !important;
}

/* Eingabefelder */
html body #main#main .cte_form.form_1 input.text {
    display: block !important;
    width: 100% !important;
    height: calc(62/12*1vw) !important;
    margin: 0 !important;
    padding: calc(10/12*1vw) calc(16/12*1vw) !important;
    border: 1px solid #d9aeba !important;
    border-radius: calc(7/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(24/12*1vw) !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
}

/* Nachrichtenfeld */
html body #main#main .cte_form.form_1 .textdiv {
    display: block !important;
    width: 100% !important;
}

html body #main#main .cte_form.form_1 textarea.textarea {
    display: block !important;
    width: 100% !important;
    min-height: calc(300/12*1vw) !important;
    height: calc(300/12*1vw) !important;
    margin: 0 !important;
    padding: calc(16/12*1vw) !important;
    border: 1px solid #d9aeba !important;
    border-radius: calc(7/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(24/12*1vw) !important;
    line-height: 1.5 !important;
    resize: vertical !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
}

/* Fokus bei Eingabe */
html body #main#main .cte_form.form_1 input.text:focus, html body #main#main .cte_form.form_1 textarea.textarea:focus {
    border-color: #bc5377 !important;
    outline: 3px solid rgba(188, 83, 119, 0.14) !important;
}

/* Datenschutzzeile */
html body #main#main .cte_form.form_1 .row.check {
    display: grid !important;
    grid-template-columns: calc(34/12*1vw) minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: calc(13/12*1vw) !important;
    width: 100% !important;
    margin: calc(8/12*1vw) 0 calc(26/12*1vw) !important;
}

html body #main#main .cte_form.form_1 .row.check input.check {
    display: block !important;
    width: calc(30/12*1vw) !important;
    height: calc(30/12*1vw) !important;
    margin: calc(3/12*1vw) 0 0 !important;
    accent-color: #bc5377 !important;
}

html body #main#main .cte_form.form_1 .row.check label {
    display: block !important;
    margin: 0 !important;
    color: #68424f !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

html body #main#main .cte_form.form_1 .row.check a {
    color: #bc5377 !important;
    font-size: inherit !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
}

/* Abschicken */
html body #main#main .cte_form.form_1 .submit_div {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

html body #main#main .cte_form.form_1 input.submit {
    display: block !important;
    width: 100% !important;
    min-height: calc(68/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

/* Kontakt-Informationsbanner */
html body #main#main .cte_text:has(+ .cte_form.form_1) {
    width: calc(100% - calc(32/12*1vw)) !important;
    min-height: calc(250/12*1vw) !important;
    margin: calc(28/12*1vw) auto !important;
    padding: calc(28/12*1vw) calc(24/12*1vw) !important;
    border-radius: calc(9/12*1vw) !important;
    background-size: cover !important;
    background-position: center !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_text:has(+ .cte_form.form_1) p, html body #main#main .cte_text:has(+ .cte_form.form_1) p span, html body #main#main .cte_text:has(+ .cte_form.form_1) p strong, html body #main#main .cte_text:has(+ .cte_form.form_1) p a {
    color: #68424f !important;
    font-size: calc(23/12*1vw) !important;
    line-height: 1.55 !important;
}

/* Bereich „Berater werden“ */
html body #main#main .cte_form.form_1 + .cte_text {
    width: calc(100% - calc(32/12*1vw)) !important;
    margin: 0 auto calc(40/12*1vw) !important;
    padding: calc(26/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #fffafb !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_form.form_1 + .cte_text > h2.bh {
    margin: 0 0 calc(24/12*1vw) !important;
    padding: 0 !important;
    background: transparent !important;
    color: #bc5377 !important;
    font-size: calc(29/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-align: center !important;
}

html body #main#main .cte_form.form_1 + .cte_text .button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(64/12*1vw) !important;
    padding: calc(10/12*1vw) calc(18/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Menübox – reicht fast bis zur Seitenmitte */
html body #header#header .nav {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    width: 48vw !important;
    min-width: calc(700/12*1vw) !important;
    max-width: calc(520/12*1vw) !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(239, 219, 225, 0.96) !important;
    border: 0 !important;
    border-radius: 0 0 calc(9/12*1vw) 0 !important;
    box-shadow: 0 8px 20px rgba(104, 66, 79, 0.22) !important;
    overflow: visible !important;
    z-index: 99999 !important;
    box-sizing: border-box !important;
}

html body #header#header .nav nav, html body #header#header .nav ul.level_1 {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Große Menüzeilen */
html body #header#header .nav ul.level_1 > li {
    display: block !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    min-height: calc(82/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 2px solid rgba(188, 83, 119, 0.14) !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

html body #header#header .nav ul.level_1 > li:last-child {
    border-bottom: 0 !important;
}

/* Große, gut lesbare Schrift */
html body #header#header .nav ul.level_1 > li > a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: calc(82/12*1vw) !important;
    margin: 0 !important;
    padding: calc(35/12*1vw) calc(60/12*1vw) !important;
    background: transparent !important;
    color: #7e3650 !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(50/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

/* Aktiver Menüpunkt */
html body #header#header .nav ul.level_1 > li.active > a, html body #header#header .nav ul.level_1 > li > a:hover, html body #header#header .nav ul.level_1 > li > a:focus {
    background: rgba(188, 83, 119, 0.16) !important;
    color: #86163e !important;
}

/* Alten linken VIP-Eckbanner sicher entfernen */
html body #main#main #agents580#agents580 > div.profile.vip::before, html body #main#main #agents271#agents271 > div.profile.vip::before {
    content: none !important;
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Falsch positionierten VIP-Balken am Bild entfernen */
html body #main#main #agents580#agents580 > div.profile.vip > .left > a:has(img.pic)::after, html body #main#main #agents271#agents271 > div.profile.vip > .left > a:has(img.pic)::after {
    content: none !important;
    display: none !important;
}

/* Linke Bildspalte */
html body #main#main #agents580#agents580 > div.profile.vip > .left, html body #main#main #agents271#agents271 > div.profile.vip > .left {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    overflow: visible !important;
}

/* Bildlink normal darstellen */
html body #main#main #agents580#agents580 > div.profile.vip > .left > a:has(img.pic), html body #main#main #agents271#agents271 > div.profile.vip > .left > a:has(img.pic) {
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    position: static !important;
    overflow: visible !important;
}

/* Informationsbereich direkt unter dem Foto */
html body #main#main #agents580#agents580 > div.profile.vip > .left > ul.infos, html body #main#main #agents271#agents271 > div.profile.vip > .left > ul.infos {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    height: auto !important;
    margin: calc(10/12*1vw) 0 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    transform: none !important;
    box-sizing: border-box !important;
}

/* Neuer VIP-Balken innerhalb der Informationen */
html body #main#main #agents580#agents580 > div.profile.vip > .left > ul.infos::before, html body #main#main #agents271#agents271 > div.profile.vip > .left > ul.infos::before {
    content: "VIP" !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: static !important;
    width: calc(230/12*1vw) !important;
    min-height: calc(38/12*1vw) !important;
    margin: 0 auto calc(16/12*1vw) !important;
    padding: calc(5/12*1vw) calc(12/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(5/12*1vw) !important;
    background: #b33a638c !important;
    box-shadow: none !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(29/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    transform: none !important;
    box-sizing: border-box !important;
}

/* Gesprächsanzahl unter dem VIP-Balken */
html body #main#main #agents580#agents580 > div.profile.vip > .left > ul.infos > li.calls, html body #main#main #agents271#agents271 > div.profile.vip > .left > ul.infos > li.calls {
    display: block !important;
    position: static !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    color: #68424f !important;
    font-size: calc(30/12*1vw) !important;
    line-height: 1.35 !important;
    text-align: center !important;
    transform: none !important;
}

html body #main#main .busylist span.status {
    display: block !important;
    margin-top: calc(6/12*1vw) !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    white-space: normal !important;
}

/* Jetzt verfügbar */
html body #main#main .busylist span.status.online {
    color: #4f8f5b !important;
}

/* Im Gespräch */
html body #main#main .busylist span.status.busy {
    color: #bc5377 !important;
}

/* Offline beziehungsweise kürzlich aktiv */
html body #main#main .busylist span.status.offline {
    color: #8c8c8c !important;
}

/* Alle Filterbuttons */
html body #main#main #tabnav ul.tabnav > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: calc(66/12*1vw) !important;
    padding: calc(12/12*1vw) calc(18/12*1vw) !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(33/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

/* Suchfeld */
html body #main#main #tabnav ul.tabnav > li.last input.search {
    display: block !important;
    width: 100% !important;
    height: calc(66/12*1vw) !important;
    min-height: calc(66/12*1vw) !important;
    padding: calc(10/12*1vw) calc(65/12*1vw) calc(10/12*1vw) calc(20/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(7/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Platzhalter „Beratersuche“ */
html body #main#main #tabnav ul.tabnav > li.last input.search::placeholder {
    color: #8a6871 !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 400 !important;
    opacity: 1 !important;
}

/* Lupe */
html body #main#main #tabnav ul.tabnav > li.last .fas.fa-search {
    position: absolute !important;
    top: 50% !important;
    right: calc(20/12*1vw) !important;
    color: #bc5377 !important;
    font-size: calc(29/12*1vw) !important;
    line-height: 1 !important;
    transform: translateY(-50%) !important;
    pointer-events: none !important;
}

html body #main#main #tabnav ul.tabnav > li.last {
    position: relative !important;
}

/* Gesamter Hinweisblock */
html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) {
    display: block !important;
    width: calc(100% - calc(32/12*1vw)) !important;
    max-width: calc(900/12*1vw) !important;
    margin: calc(28/12*1vw) auto calc(42/12*1vw) !important;
    padding: 0 calc(30/12*1vw) calc(38/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Überschrift */
html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(60/12*1vw)) !important;
    min-height: calc(72/12*1vw) !important;
    margin: 0 -calc(30/12*1vw) calc(30/12*1vw) !important;
    padding: calc(12/12*1vw) calc(22/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(32/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Leeren ersten Absatz ausblenden */
html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > h2.bh + p {
    display: none !important;
}

/* Textbereich */
html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > p {
    width: 100% !important;
    margin: 0 0 calc(26/12*1vw) !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(28/12*1vw) !important;
    line-height: 1.55 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Sämtliche fest eingetragenen 16/17/18 px überschreiben */
html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > p span, html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > p strong, html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > p em {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

/* Erster Hinweistext */
html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > p:nth-of-type(2) > span:first-child {
    color: #86163e !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 700 !important;
}

/* „Melde Dich an …“ */
html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > p:nth-of-type(2) span[style*="color"] {
    display: block !important;
    margin-top: calc(24/12*1vw) !important;
    padding: calc(16/12*1vw) calc(22/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
    background: #fcf3f6 !important;
    color: #bc5377 !important;
    font-size: calc(29/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-align: center !important;
}

/* Herzbild */
html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) img {
    display: block !important;
    width: calc(240/12*1vw) !important;
    max-width: 65% !important;
    height: auto !important;
    margin: calc(24/12*1vw) auto 0 !important;
    padding: 0 !important;
}

html body #main#main .cte_text:has(img[src*="st-valentin-mini.png"]) > .clear {
    display: none !important;
}

/* Header als Bezugspunkt */
html body #wrapper#wrapper #header#header > .inside {
    position: relative !important;
}

/* Runder Loginbutton oben rechts */
html body #wrapper#wrapper #header#header > .inside > a.mobile_btn.mobile_login {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    top: calc(50/12*1vw) !important;
    right: calc(20/12*1vw) !important;
    left: auto !important;
    bottom: auto !important;
    width: calc(96/12*1vw) !important;
    height: calc(96/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid #e6b8c5 !important;
    border-radius: 50% !important;
    background: #fffafb !important;
    transform: none !important;
    overflow: hidden !important;
    z-index: 99999 !important;
    box-sizing: border-box !important;
}

/* Altes Font-Awesome-Symbol entfernen */
html body #wrapper#wrapper #header#header > .inside > a.mobile_btn.mobile_login > i {
    display: none !important;
    visibility: hidden !important;
}

/* Kopf der Person */
html body #wrapper#wrapper #header#header > .inside > a.mobile_btn.mobile_login::before {
    content: "" !important;
    display: block !important;
    visibility: visible !important;
    position: absolute !important;
    top: calc(17/12*1vw) !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: calc(32/12*1vw) !important;
    height: calc(32/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #a74868 !important;
    transform: translateX(-50%) !important;
    box-sizing: border-box !important;
}

/* Schultern der Person */
html body #wrapper#wrapper #header#header > .inside > a.mobile_btn.mobile_login::after {
    content: "" !important;
    display: block !important;
    visibility: visible !important;
    position: absolute !important;
    top: calc(52/12*1vw) !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: calc(58/12*1vw) !important;
    height: calc(31/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: calc(30/12*1vw) calc(30/12*1vw) calc(8/12*1vw) calc(8/12*1vw) !important;
    background: #a74868 !important;
    transform: translateX(-50%) !important;
    box-sizing: border-box !important;
}

/* Kundenbereich erkennen und linke Spalte wieder zeigen */
/* ------------------------------
        Mein Konto
        ------------------------------ */
/* Kontoinformationen */
html body #left#left .mod_logout ul.infos > li i {
    flex: 0 0 auto !important;
    width: calc(31/12*1vw) !important;
    margin: 0 !important;
    color: #bc5377 !important;
    font-size: calc(27/12*1vw) !important;
    text-align: center !important;
}

/* Kundenbereich-Button */
/* Logout */
html body #left#left .mod_logout form {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

/* ------------------------------
        Kundenmenü
        ------------------------------ */
/* Schließen-Symbol hier nicht erforderlich */
html body #left#left .nav.mod_simplenav > .menu_close {
    display: none !important;
}

html body #left#left .nav.mod_simplenav nav, html body #left#left .nav.mod_simplenav ul.level_1 {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body #left#left .nav.mod_simplenav ul.level_1 > li.active > a {
    background: #efdbe1 !important;
    color: #86163e !important;
}

/* Guthaben aufladen besonders hervorheben */
html body #left#left .nav.mod_simplenav ul.level_1 > li.last {
    grid-column: 1 / -1 !important;
}

html body #left#left .nav.mod_simplenav ul.level_1 > li.last > a {
    min-height: calc(70/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(27/12*1vw) !important;
}

/* Gesamter Seitenbereich */
/* Linke Desktopspalte wird oberer Kundenbereich */
/* Hauptbereich folgt darunter */
/* ==================================================
        MEIN KONTO
        ================================================== */
html body #left#left .mod_logout {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(18/12*1vw) !important;
    padding: 0 calc(26/12*1vw) calc(26/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    box-shadow: 0 5px 15px rgba(104, 66, 79, 0.11) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    height: auto !important;
}

html body #left#left .mod_logout > h3.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(52/12*1vw)) !important;
    min-height: calc(68/12*1vw) !important;
    margin: 0 -calc(26/12*1vw) calc(22/12*1vw) !important;
    padding: calc(11/12*1vw) calc(20/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(31/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    font-style: normal !important;
}

/* Kontodaten als vier übersichtliche Felder */
html body #left#left .mod_logout ul.infos {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: calc(12/12*1vw) !important;
    width: 100% !important;
    margin: 0 0 calc(20/12*1vw) !important;
    padding: 0 !important;
}

html body #left#left .mod_logout ul.infos > li {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: calc(10/12*1vw) !important;
    min-height: calc(70/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(15/12*1vw) !important;
    border: 1px solid #efd7de !important;
    border-radius: calc(7/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    list-style: none !important;
    box-sizing: border-box !important;
    font-style: normal !important;
}

html body #left#left .mod_logout ul.infos i {
    flex: 0 0 31px !important;
    width: calc(31/12*1vw) !important;
    margin: 0 !important;
    color: #bc5377 !important;
    font-size: calc(27/12*1vw) !important;
    text-align: center !important;
}

html body #left#left .mod_logout ul.infos a {
    color: #86163e !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    text-decoration: none !important;
    font-style: normal !important;
}

/* Mein Kundenbereich und Logout nebeneinander */
html body #left#left .mod_logout > a.button, html body #left#left .mod_logout form {
    display: inline-block !important;
    vertical-align: top !important;
    width: calc(50% - calc(7/12*1vw)) !important;
    margin: 0 !important;
}

html body #left#left .mod_logout > a.button, html body #left#left .mod_logout input.submit {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(64/12*1vw) !important;
    padding: calc(11/12*1vw) calc(15/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    color: #ffffff !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

html body #left#left .mod_logout > a.button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(66/12*1vw) !important;
    margin: 0 0 calc(13/12*1vw) !important;
    padding: calc(12/12*1vw) calc(18/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    margin-right: calc(10/12*1vw) !important;
}

html body #left#left .mod_logout input.submit {
    display: block !important;
    width: 100% !important;
    min-height: calc(62/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(18/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #a0838b !important;
    color: #ffffff !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

/* ==================================================
        REDUZIERTES KUNDENMENÜ
        ================================================== */
html body #left#left .nav.mod_simplenav {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 calc(24/12*1vw) calc(24/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    box-shadow: 0 5px 14px rgba(104, 66, 79, 0.10) !important;
    transform: none !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

html body #left#left .nav.mod_simplenav > h3.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(48/12*1vw)) !important;
    min-height: calc(62/12*1vw) !important;
    margin: 0 -calc(24/12*1vw) calc(18/12*1vw) !important;
    padding: calc(11/12*1vw) calc(18/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-size: calc(29/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    font-style: normal !important;
}

html body #left#left .nav.mod_simplenav .menu_close {
    display: none !important;
}

/* Zuerst alle Punkte ausblenden */
html body #left#left .nav.mod_simplenav ul.level_1 > li {
    display: none !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

/* Nur drei Punkte anzeigen */
html body #left#left .nav.mod_simplenav li:has(> a[href="kunden-home"]), html body #left#left .nav.mod_simplenav li:has(> a[href="dein-treuebonus"]), html body #left#left .nav.mod_simplenav li:has(> a[href="Infos"]) {
    display: block !important;
}

html body #left#left .nav.mod_simplenav ul.level_1 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: calc(10/12*1vw) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body #left#left .nav.mod_simplenav ul.level_1 > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(72/12*1vw) !important;
    margin: 0 !important;
    padding: calc(11/12*1vw) calc(12/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(7/12*1vw) !important;
    background: #ffffff !important;
    color: #7e3650 !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;
    box-sizing: border-box !important;
    font-style: normal !important;
}

/* ==================================================
        HAUPTINHALTE IN DESKTOP-REIHENFOLGE
        ================================================== */
html body:has(#left .mod_logout) #main#main > .inside {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

/* Tagesbotschaft */
/* Willkommen und letzte Beratungen */
/* Zu allen Beratern */
html body:has(#left .mod_logout) #main#main .cte_text:has(.all-agents-button) {
    order: 3 !important;
    margin: 0 0 calc(26/12*1vw) !important;
}

/* Zusatzminuten */
html body:has(#left .mod_logout) #main#main .freemin {
    order: 4 !important;
    margin: 0 0 calc(26/12*1vw) !important;
}

/* Offene Bewertungen */
html body:has(#left .mod_logout) #main#main .unrated {
    order: 5 !important;
    margin: 0 0 calc(26/12*1vw) !important;
}

/* Freundschaftswerbungsbanner */
html body:has(#left .mod_logout) #main#main .cte_text:has(img[src*="Kundenwerbung-Small"]) {
    display: block !important;
    order: 6 !important;
    margin: 0 0 calc(28/12*1vw) !important;
}

/* ==================================================
        LETZTE BERATUNGEN ALS FINGER-CAROUSEL
        ================================================== */
html body:has(#left .mod_logout) #main#main .cte_recent > h3 {
    margin: calc(22/12*1vw) 0 calc(18/12*1vw) !important;
    color: #68424f !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 700 !important;
    text-align: center !important;
}

html body:has(#left .mod_logout) #main#main .cte_recent > ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: calc(16/12*1vw) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(18/12*1vw) calc(20/12*1vw) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    box-sizing: border-box !important;
}

html body:has(#left .mod_logout) #main#main .cte_recent > ul::-webkit-scrollbar {
    display: none !important;
}

html body:has(#left .mod_logout) #main#main .cte_recent > ul > li {
    flex: 0 0 220px !important;
    scroll-snap-align: start !important;
    margin: 0 !important;
    padding: calc(18/12*1vw) calc(12/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(9/12*1vw) !important;
    background: #fffafb !important;
    text-align: center !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

html body:has(#left .mod_logout) #main#main .cte_recent > ul > li img {
    display: block !important;
    width: calc(125/12*1vw) !important;
    height: calc(145/12*1vw) !important;
    object-fit: cover !important;
    margin: 0 auto calc(11/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
}

html body:has(#left .mod_logout) #main#main .cte_recent > ul > li h4, html body:has(#left .mod_logout) #main#main .cte_recent > ul > li h4 a {
    margin: 0 0 calc(7/12*1vw) !important;
    color: #86163e !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span, html body:has(#left .mod_logout) #main#main .cte_recent > ul > li > a {
    font-size: calc(24/12*1vw) !important;
    line-height: 1.4 !important;
}

/* Konto unter dem Sticky-Header nach unten schieben */
/* Überschrift und sämtliche Kontodaten sichtbar */
html body:has(#left .mod_logout) #left .mod_logout > h3.bh, html body:has(#left .mod_logout) #left .mod_logout > ul.infos {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

html body:has(#left .mod_logout) #left .mod_logout > h3.bh {
    display: flex !important;
}

/* Button „Mein Kundenbereich“ entfernen */
/* Logout danach über die gesamte Breite */
/* Guthaben-Menüpunkt wieder einblenden */
html body:has(#left .mod_logout) #left .nav.mod_simplenav ul.level_1 > li:has(> a[href="guthaben-aufladen"]) {
    display: block !important;
    order: -1 !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 0 0 calc(8/12*1vw) !important;
}

/* Guthaben aufladen als großer pinker Button */
/* Die drei übrigen Menüpunkte nicht kursiv */
html body:has(#left .mod_logout) #left .nav.mod_simplenav ul.level_1 > li > a {
    font-style: normal !important;
}

/* Alte Überschrift „Kundenbereich“ entfernen */
html body:has(#left .mod_logout) #left .nav.mod_simplenav > h3.bh {
    display: none !important;
}

/* Menübox ohne eigene Überschrift */
html body:has(#left .mod_logout) #left .nav.mod_simplenav nav {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Menü als zweispaltiges Raster */
html body:has(#left .mod_logout) #left .nav.mod_simplenav ul.level_1 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: calc(11/12*1vw) !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

/* Alle Menüpunkte zunächst ausblenden */
/* Guthaben aufladen */
html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="guthaben-aufladen"]), /* Home */ html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="kunden-home"]), /* Meine Rückrufe */ html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="Meine Rückrufe"]), /* Meine Rufnummern */ html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="meine-rufnummern"]), /* Alle Beratungen */ html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="kunden-beratungen"]), /* E-Mail-Beratung */ html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="Email-Beratungen"]), /* Treuebonus */ html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="dein-treuebonus"]), /* Infos */ html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="Infos"]) {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 1. Guthaben aufladen direkt unter Mein Konto */
/* 2. Willkommen zwischen Guthabenbutton und Menü */
/* Reihenfolge der sieben Menüpunkte */
html body:has(#left .mod_logout) #left .nav li:has(> a[href="kunden-home"]) {
    order: 1 !important;
}

html body:has(#left .mod_logout) #left .nav li:has(> a[href="Meine Rückrufe"]) {
    order: 2 !important;
}

html body:has(#left .mod_logout) #left .nav li:has(> a[href="meine-rufnummern"]) {
    order: 3 !important;
}

html body:has(#left .mod_logout) #left .nav li:has(> a[href="kunden-beratungen"]) {
    order: 4 !important;
}

html body:has(#left .mod_logout) #left .nav li:has(> a[href="Email-Beratungen"]) {
    order: 5 !important;
}

html body:has(#left .mod_logout) #left .nav li:has(> a[href="dein-treuebonus"]) {
    order: 6 !important;
}

html body:has(#left .mod_logout) #left .nav li:has(> a[href="Infos"]) {
    order: 7 !important;
    grid-column: 1 / -1 !important;
}

/* Gestaltung der normalen Menüpunkte */
html body:has(#left .mod_logout) #left .nav.mod_simplenav ul.level_1 > li:not(:has(> a[href="guthaben-aufladen"])) > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(68/12*1vw) !important;
    padding: calc(11/12*1vw) calc(14/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(7/12*1vw) !important;
    background: #ffffff !important;
    color: #7e3650 !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;
    box-sizing: border-box !important;
}

/* Aktiver Menüpunkt */
html body:has(#left .mod_logout) #left .nav.mod_simplenav li.active > a {
    background: #efdbe1 !important;
    color: #86163e !important;
}

/* Ursprünglichen Willkommensbalken im Hauptbereich entfernen */
/* „Mein Kundenbereich“ entfernen */
html body:has(#left .mod_logout) #left .mod_logout > a.button {
    display: none !important;
}

/* Logoutbereich rechtsbündig */
html body:has(#left .mod_logout) #left .mod_logout > form {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: calc(8/12*1vw) 0 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: flex-end !important;
    height: auto !important;
    text-align: right !important;
}

/* Kleiner Logoutbutton */
html body:has(#left .mod_logout) #left .mod_logout > form input.submit {
    display: flex !important;
    width: calc(190/12*1vw) !important;
    min-height: calc(52/12*1vw) !important;
    margin: 0 !important;
    padding: calc(8/12*1vw) calc(16/12*1vw) !important;
    font-style: normal !important;
    box-sizing: border-box !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: calc(190/12*1vw) !important;
    max-width: calc(190/12*1vw) !important;
    height: calc(52/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #a0838b !important;
    color: #ffffff !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    cursor: pointer !important;
}

/* Kundenmenübox direkt unter dem Kontobereich */
/* Guthabenbutton an die erste Stelle */
/* Großer Guthabenbutton */
html body:has(#left .mod_logout) #left .nav.mod_simplenav a[href="guthaben-aufladen"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(72/12*1vw) !important;
    margin: 0 !important;
    padding: calc(13/12*1vw) calc(22/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Falschen Willkommensbalken im Menü entfernen */
html body:has(#left .mod_logout) #left .nav.mod_simplenav ul.level_1::before {
    content: none !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    order: -1 !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-height: calc(66/12*1vw) !important;
    margin: calc(3/12*1vw) 0 calc(1/12*1vw) !important;
    padding: calc(11/12*1vw) calc(20/12*1vw) !important;
    border-radius: calc(6/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(30/12*1vw) !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Im oberen Originalmenü nur Guthaben anzeigen */
html body:has(#left .mod_logout) #left .nav.mod_simplenav ul.level_1 > li {
    display: none !important;
}

html body:has(#left .mod_logout) #left .nav.mod_simplenav li:has(> a[href="guthaben-aufladen"]) {
    order: -10 !important;
    grid-column: 1 / -1 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Box um den einzelnen Guthabenbutton kompakt machen */
/* Originalen Willkommensbalken wieder anzeigen */
html body:has(#left .mod_logout) #main#main .cte_recent > h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(68/12*1vw) !important;
    margin: 0 0 calc(24/12*1vw) !important;
    padding: calc(11/12*1vw) calc(20/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(34/12*1vw) !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Willkommen und Beratungsfotos direkt nach Guthaben */
html body:has(#left .mod_logout) #main#main .cte_recent {
    order: 1 !important;
    margin: 0 0 calc(26/12*1vw) !important;
    width: 100% !important;
}

/* Tagesbotschaft folgt später */
html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) {
    order: 5 !important;
    margin: 0 0 calc(26/12*1vw) !important;
}

/* Originales Kundenmenü anzeigen */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav {
    display: block !important;
    width: calc(100% - calc(28/12*1vw)) !important;
    max-width: none !important;
    margin: calc(16/12*1vw) auto calc(24/12*1vw) !important;
    padding: calc(12/12*1vw) !important;
    border: 1px solid #efd7df !important;
    border-radius: calc(8/12*1vw) !important;
    background: #fffafb !important;
    box-sizing: border-box !important;
}

/* Überschrift „Kundenbereich“ ausblenden */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav > h3.bh {
    display: none !important;
}

/* Menüliste als zwei Spalten */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: calc(10/12*1vw) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Zunächst alle alten Menüpunkte ausblenden */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li {
    display: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Nur gewünschte Menüpunkte anzeigen */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(a[href="kunden-home"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(a[href="Meine Rückrufe"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(a[href="meine-rufnummern"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(a[href="kunden-beratungen"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(a[href="Email-Beratungen"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(a[href="dein-treuebonus"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(a[href="Infos"]) {
    display: block !important;
}

/* Gestaltung der Menübuttons */
/* Aktiver Menüpunkt */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li.active > a {
    background: #efdbe1 !important;
    color: #86163e !important;
    font-weight: 700 !important;
}

/* „Infos rund um Sonalea“ über die gesamte Breite */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(a[href="Infos"]) {
    grid-column: 1 / -1 !important;
}

/* Menüpunkt wieder einblenden und über beide Spalten setzen */
/* Großer Guthaben-Button */
/* Gesamten Kontobereich etwas tiefer setzen */
/* Balken „Mein Konto“ */
/* Balken „Willkommen in Deinem Kundenbereich“ */
html body #wrapper#wrapper #container#container #main#main .cte_recent > h2.bh {
    background: #c9909f !important;
    color: #ffffff !important;
}

/* Schrift innerhalb „Mein Konto“ */
/* Kontofelder etwas höher */
/* Logout größer und gut lesbar */
html body #wrapper#wrapper #container#container #left#left .mod_logout form .submit {
    font-size: calc(20/12*1vw) !important;
    min-height: calc(48/12*1vw) !important;
    padding: calc(9/12*1vw) calc(20/12*1vw) !important;
}

/* Gewünschte Menüpunkte einblenden */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="kunden-beratungen"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="Meine Rückrufe"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="Email-Beratungen"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="meine-rufnummern"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="♡-aktionen-treuebonus-♡"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="dein-treuebonus"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="Infos"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="kunden-home"]) {
    display: block !important;
    grid-column: auto !important;
}

/* 1. Alle Beratungen */
/* 2. Meine Rückrufe */
/* 3. E-Mail-Beratung */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="Email-Beratungen"]) {
    order: 3 !important;
}

/* 4. Meine Rufnummern */
/* 5. Newsletter-Einstellungen */
/* 6. Treuebonus */
/* 7. Infos */
/* 8. Home */
/* Guthaben bleibt immer ganz oben */
/* Größere Schrift in allen Menübuttons */
/* Guthaben-Schrift noch deutlicher */
/* Bezugspunkt für den Logout-Button */
/* Platz im Balken für den Button lassen */
/* Logout-Formular oben rechts positionieren */
/* Kompakter Logout-Button */
html body #wrapper#wrapper #container#container #left#left .mod_logout > form .submit {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(108/12*1vw) !important;
    min-height: calc(40/12*1vw) !important;
    margin: 0 !important;
    padding: calc(6/12*1vw) calc(12/12*1vw) !important;
    border: 1px solid rgba(255,255,255,0.65) !important;
    border-radius: calc(5/12*1vw) !important;
    background: #a0838b !important;
    color: #ffffff !important;
    font-size: calc(17/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    cursor: pointer !important;
}

/* „Mein Konto“ trotz Logout exakt mittig */
/* Kontofelder größer */
/* Auch Links und dynamische Werte vergrößern */
html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos > li *, html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos > li a, html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos > li span {
    font-size: calc(25/12*1vw) !important;
    line-height: 1.25 !important;
}

/* Symbole im Konto größer */
/* Menütexte deutlich größer */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(74/12*1vw) !important;
    padding: calc(14/12*1vw) calc(12/12*1vw) !important;
    border: 1px solid #efd7df !important;
    border-radius: calc(6/12*1vw) !important;
    background: #fffafb !important;
    color: #86163e !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 600 !important;
    font-style: normal !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Infos und Home jeweils eine halbe Spalte */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="Infos"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="kunden-home"]) {
    display: block !important;
    grid-column: auto !important;
    width: auto !important;
}

/* Reihenfolge der letzten beiden Buttons */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="Infos"]) {
    order: 7 !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="kunden-home"]) {
    order: 8 !important;
}

/* Guthaben-Button ebenfalls größer */
/* Balken */
/* Logout-Formular rechts im Balken */
/* Logout-Button */
/* Logout kleiner und weiter nach links */
html body #wrapper#wrapper #container#container #left#left .mod_logout > form input.submit[name="logout"] {
    display: block !important;
    width: calc(76/12*1vw) !important;
    height: calc(30/12*1vw) !important;
    min-height: calc(30/12*1vw) !important;
    margin: 0 !important;
    padding: 0 calc(5/12*1vw) !important;
    border: 1px solid rgba(255,255,255,0.75) !important;
    border-radius: calc(4/12*1vw) !important;
    background: #a0838b !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(14/12*1vw) !important;
    font-weight: 700 !important;
    line-height: calc(30/12*1vw) !important;
    text-align: center !important;
    appearance: none !important;
}

/* Luft zwischen „Mein Konto“ und den Kontodaten */
html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos {
    gap: calc(10/12*1vw) !important;
    margin-top: calc(16/12*1vw) !important;
}

/* Mehr Abstand nach dem Guthaben-Button */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="guthaben-aufladen"]) {
    display: block !important;
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    order: -10 !important;
    margin: 0 0 calc(6/12*1vw) !important;
    margin-bottom: calc(14/12*1vw) !important;
}

html body #wrapper#wrapper #container#container #left#left .mod_logout {
    margin-top: calc(30/12*1vw) !important;
    position: relative !important;
}

/* Mein Konto bleibt exakt mittig */
html body #wrapper#wrapper #container#container #left#left .mod_logout > h3.bh {
    background: #c9909f !important;
    color: #ffffff !important;
    min-height: calc(54/12*1vw) !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    font-size: calc(34/12*1vw) !important;
    line-height: calc(62/12*1vw) !important;
    text-align: center !important;
    height: calc(62/12*1vw) !important;
    margin: 0 !important;
    font-weight: 700 !important;
}

/* Formular vollständig innerhalb des Balkens */
html body #wrapper#wrapper #container#container #left#left .mod_logout > form {
    position: absolute !important;
    top: calc(7/12*1vw) !important;
    right: calc(30/12*1vw) !important;
    z-index: 20 !important;
    width: calc(92/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    height: calc(40/12*1vw) !important;
    min-width: calc(92/12*1vw) !important;
    max-width: calc(92/12*1vw) !important;
    min-height: calc(40/12*1vw) !important;
    max-height: calc(40/12*1vw) !important;
    transform: none !important;
    box-sizing: border-box !important;
}

/* Logout-Button: weder zu schmal noch zu lang */
html body #wrapper#wrapper #container#container #left#left .mod_logout > form input[type="submit"].submit[name="logout"] {
    display: block !important;
    width: calc(92/12*1vw) !important;
    min-width: calc(92/12*1vw) !important;
    max-width: calc(92/12*1vw) !important;
    height: calc(40/12*1vw) !important;
    min-height: calc(40/12*1vw) !important;
    max-height: calc(40/12*1vw) !important;
    margin: 0 !important;
    padding: 0 calc(8/12*1vw) !important;
    border: 1px solid rgba(255,255,255,0.7) !important;
    border-radius: calc(4/12*1vw) !important;
    background: #a0838b !important;
    color: #ffffff !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 700 !important;
    line-height: calc(38/12*1vw) !important;
    text-align: center !important;
    transform: none !important;
    box-sizing: border-box !important;
    appearance: none !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:not(:has(> a[href="guthaben-aufladen"])) > a {
    background: #efdbe1 !important;
    color: #86163e !important;
    border-color: #e7c4cf !important;
}

html body #main#main .cte_recent > ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: calc(16/12*1vw) !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(18/12*1vw) calc(22/12*1vw) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scroll-padding-left: 18px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    box-sizing: border-box !important;
}

html body #main#main .cte_recent > ul::-webkit-scrollbar {
    display: none !important;
}

/* Einzelne Beratungskarten */
html body #main#main .cte_recent > ul > li {
    display: block !important;
    flex: 0 0 42% !important;
    width: 42% !important;
    min-width: calc(210/12*1vw) !important;
    max-width: calc(260/12*1vw) !important;
    margin: 0 !important;
    padding: calc(16/12*1vw) calc(12/12*1vw) !important;
    border: 1px solid #efd7df !important;
    border-radius: calc(8/12*1vw) !important;
    background: #fffafb !important;
    text-align: center !important;
    scroll-snap-align: start !important;
    box-sizing: border-box !important;
}

/* Beraterfoto */
html body #main#main .cte_recent > ul > li > img {
    display: block !important;
    width: calc(120/12*1vw) !important;
    height: calc(145/12*1vw) !important;
    margin: 0 auto calc(10/12*1vw) !important;
    border-radius: calc(7/12*1vw) !important;
    object-fit: cover !important;
}

/* Sämtliche Texte besser lesbar */
html body #main#main .cte_recent > ul > li, html body #main#main .cte_recent > ul > li a, html body #main#main .cte_recent > ul > li span {
    font-size: calc(20/12*1vw) !important;
    line-height: 1.35 !important;
}

html body #main#main .cte_recent > ul > li h4, html body #main#main .cte_recent > ul > li h4 a {
    margin: calc(5/12*1vw) 0 !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
}

/* Gesamte Bereiche */
html body #main#main .freemin, html body #main#main .unrated {
    width: calc(100% - calc(30/12*1vw)) !important;
    margin: calc(28/12*1vw) auto !important;
    box-sizing: border-box !important;
}

/* Tabellenbereich mit Finger scrollbar */
html body #main#main .freemin .table, html body #main#main .unrated .table {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: calc(6/12*1vw) 0 calc(14/12*1vw) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
    box-sizing: border-box !important;
}

/* Genügend Tabellenbreite für lesbare Inhalte */
html body #main#main .freemin table, html body #main#main .unrated table {
    width: calc(920/12*1vw) !important;
    min-width: calc(920/12*1vw) !important;
    table-layout: auto !important;
    border-collapse: separate !important;
    border-spacing: 0 4px !important;
}

/* Tabellenüberschriften */
html body #main#main .freemin table th, html body #main#main .unrated table th {
    padding: calc(12/12*1vw) calc(14/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(20/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

/* Tabelleninhalte */
html body #main#main .freemin table td, html body #main#main .unrated table td {
    padding: calc(12/12*1vw) calc(14/12*1vw) !important;
    color: #68424f !important;
    font-size: calc(20/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-align: left !important;
    white-space: nowrap !important;
    border-bottom: 1px solid #f0dce2 !important;
    background: #fffafb !important;
}

/* Links deutlich anzeigen */
html body #main#main .freemin table td a, html body #main#main .unrated table td a {
    color: #86163e !important;
    font-size: calc(20/12*1vw) !important;
    font-weight: 500 !important;
    text-decoration: underline !important;
}

/* Status „Jetzt verfügbar“ */
html body #main#main .freemin table .green {
    color: #638a68 !important;
    font-size: calc(20/12*1vw) !important;
    font-weight: 500 !important;
}

/* Überschriftenbalken */
html body #main#main .freemin > h2.bh, html body #main#main .unrated > h2.bh {
    min-height: calc(58/12*1vw) !important;
    padding: calc(11/12*1vw) calc(16/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

html body #main#main .unrated table td:last-child > a {
    font-size: 0 !important;
}

html body #main#main .unrated table td:last-child > a::after {
    content: "Bewerten" !important;
    font-size: calc(20/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
}

html body #main#main .freemin table td:last-child > a {
    font-size: 0 !important;
}

html body #main#main .freemin table td:last-child > a::after {
    content: "Anrufen" !important;
    font-size: calc(20/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
}

/* Kontofelder höher */
html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos > li {
    min-height: calc(78/12*1vw) !important;
    padding: calc(16/12*1vw) calc(18/12*1vw) !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    font-size: calc(25/12*1vw) !important;
    line-height: 1.25 !important;
}

/* Sämtliche Texte innerhalb der Kontofelder */
html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos > li, html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos > li a, html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos > li span {
    font-size: calc(32/12*1vw) !important;
    line-height: 1.3 !important;
    font-weight: 500 !important;
}

/* Konto-Icons größer */
html body #wrapper#wrapper #container#container #left#left .mod_logout ul.infos > li i {
    width: calc(36/12*1vw) !important;
    margin-right: calc(11/12*1vw) !important;
    font-size: calc(30/12*1vw) !important;
    text-align: center !important;
    min-width: calc(36/12*1vw) !important;
    line-height: 1 !important;
}

/* Guthaben-aufladen-Button */
/* Überschriftenbalken */
html body #main#main .unrated ~ .cte_text > h2.bh {
    min-height: calc(48/12*1vw) !important;
    padding: calc(9/12*1vw) calc(14/12*1vw) !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}

/* Gesamter Text */
html body #main#main .unrated ~ .cte_text > p {
    margin: 0 0 calc(14/12*1vw) !important;
    font-size: calc(18/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

/* Fest eingetragene Schriftgrößen überschreiben */
html body #main#main .unrated ~ .cte_text > p span, html body #main#main .unrated ~ .cte_text > p strong {
    font-size: calc(18/12*1vw) !important;
    line-height: 1.5 !important;
}

/* Beide betroffenen Blöcke */
html body #wrapper#wrapper #container#container #main#main .cte_text:has(> p span[style*="font-size: 14px"]), html body #wrapper#wrapper #container#container #main#main .cte_text:has(> p span[style*="font-size: 14px"]) + .cte_text {
    font-size: calc(18/12*1vw) !important;
    line-height: 1.5 !important;
}

/* Überschriften */
html body #wrapper#wrapper #container#container #main#main .cte_text:has(> p span[style*="font-size: 14px"]) > h2.bh, html body #wrapper#wrapper #container#container #main#main .cte_text:has(> p span[style*="font-size: 14px"]) + .cte_text > h2.bh {
    min-height: calc(46/12*1vw) !important;
    padding: calc(8/12*1vw) calc(12/12*1vw) !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
}

/* Absätze */
html body #wrapper#wrapper #container#container #main#main .cte_text:has(> p span[style*="font-size: 14px"]) > p, html body #wrapper#wrapper #container#container #main#main .cte_text:has(> p span[style*="font-size: 14px"]) + .cte_text > p {
    margin: 0 0 calc(12/12*1vw) !important;
    font-size: calc(18/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

/* Alle Formatierungen innerhalb der Absätze */
html body #wrapper#wrapper #container#container #main#main .cte_text:has(> p span[style*="font-size: 14px"]) > p *, html body #wrapper#wrapper #container#container #main#main .cte_text:has(> p span[style*="font-size: 14px"]) + .cte_text > p * {
    font-size: calc(36/12*1vw) !important;
    line-height: 1.5 !important;
}

/* Gesamter Hinweisbereich */
html body #wrapper#wrapper #container#container #main#main .block:has(input[value="Rufnummer jetzt bestätigen"]) {
    width: calc(100% - calc(30/12*1vw)) !important;
    margin: calc(24/12*1vw) auto calc(34/12*1vw) !important;
    padding: 0 calc(22/12*1vw) calc(26/12*1vw) !important;
    border: 1px solid #efd7df !important;
    border-radius: calc(8/12*1vw) !important;
    background: #fffafb !important;
    box-sizing: border-box !important;
}

/* Überschrift */
html body #wrapper#wrapper #container#container #main#main .block:has(input[value="Rufnummer jetzt bestätigen"]) :is(h1, h2, h3).bh {
    min-height: calc(58/12*1vw) !important;
    margin: 0 -calc(22/12*1vw) calc(22/12*1vw) !important;
    padding: calc(11/12*1vw) calc(18/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Erklärungstext */
html body #wrapper#wrapper #container#container #main#main .block:has(input[value="Rufnummer jetzt bestätigen"]) p {
    margin: 0 0 calc(16/12*1vw) !important;
    color: #68424f !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
}

/* Formular */
html body #wrapper#wrapper #container#container #main#main .block:has(input[value="Rufnummer jetzt bestätigen"]) form {
    width: 100% !important;
    margin: calc(20/12*1vw) 0 calc(12/12*1vw) !important;
}

/* Hauptbutton */
html body #wrapper#wrapper #container#container #main#main input.submit[value="Rufnummer jetzt bestätigen"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(62/12*1vw) !important;
    margin: 0 0 calc(12/12*1vw) !important;
    padding: calc(12/12*1vw) calc(18/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    appearance: none !important;
}

/* Zweiter Button */
html body #wrapper#wrapper #container#container #main#main a.button[href="meine-rufnummern"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(58/12*1vw) !important;
    margin: calc(12/12*1vw) 0 0 !important;
    padding: calc(11/12*1vw) calc(18/12*1vw) !important;
    border: 1px solid #d9b7c1 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Gesamter Guthaben-Hinweis */
html body #wrapper#wrapper #container#container #main#main .block:has(a.button[href="7"]) {
    width: calc(100% - calc(30/12*1vw)) !important;
    margin: calc(26/12*1vw) auto calc(34/12*1vw) !important;
    padding: 0 calc(22/12*1vw) calc(26/12*1vw) !important;
    border: 1px solid #efd7df !important;
    border-radius: calc(8/12*1vw) !important;
    background: #fffafb !important;
    box-sizing: border-box !important;
}

/* Überschrift „Guthaben“ */
html body #wrapper#wrapper #container#container #main#main .block:has(a.button[href="7"]) :is(h1, h2, h3).bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% + calc(44/12*1vw)) !important;
    min-height: calc(58/12*1vw) !important;
    margin: 0 -calc(22/12*1vw) calc(22/12*1vw) !important;
    padding: calc(10/12*1vw) calc(16/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Guthaben-Text */
html body #wrapper#wrapper #container#container #main#main .block:has(a.button[href="7"]) p {
    margin: 0 0 calc(20/12*1vw) !important;
    color: #68424f !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

/* Button „Jetzt Guthaben aufladen“ */
html body #wrapper#wrapper #container#container #main#main a.button[href="7"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(64/12*1vw) !important;
    margin: 0 auto !important;
    padding: calc(13/12*1vw) calc(18/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Einheitliche Berechnung */
html body:has(#left .mod_logout) #main *, html body:has(#left .mod_logout) #main *::before, html body:has(#left .mod_logout) #main *::after {
    box-sizing: border-box;
}

/* Normale Inhaltsblöcke */
html body:has(#left .mod_logout) #main > .inside > .block:not(.cte_recent):not(.freemin):not(.unrated) {
    width: calc(100% - calc(30/12*1vw)) !important;
    max-width: none !important;
    margin: calc(24/12*1vw) auto calc(32/12*1vw) !important;
}

/* Überschriftenbalken */
html body:has(#left .mod_logout) #main > .inside > .block > :is(h1, h2, h3).bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(56/12*1vw) !important;
    margin: 0 0 calc(22/12*1vw) !important;
    padding: calc(10/12*1vw) calc(16/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-size: calc(33/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Allgemeine Texte */
html body:has(#left .mod_logout) #main > .inside > .block:not(.cte_recent):not(.freemin):not(.unrated) > p {
    font-size: calc(21/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
}

/* Fest eingetragene kleine Schriftgrößen überschreiben */
html body:has(#left .mod_logout) #main > .inside > .block:not(.cte_recent):not(.freemin):not(.unrated) > p span, html body:has(#left .mod_logout) #main > .inside > .block:not(.cte_recent):not(.freemin):not(.unrated) > p strong, html body:has(#left .mod_logout) #main > .inside > .block:not(.cte_recent):not(.freemin):not(.unrated) > p em {
    font-size: inherit !important;
    line-height: inherit !important;
}

/* Formularzeilen */
html body:has(#left .mod_logout) #main form .row {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(20/12*1vw) !important;
}

/* Beschriftungen */
html body:has(#left .mod_logout) #main form label {
    display: block !important;
    margin: 0 0 calc(8/12*1vw) !important;
    color: #68424f !important;
    font-size: calc(21/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

/* Textfelder, Passwortfelder und Auswahlfelder */
html body:has(#left .mod_logout) #main form input:is( [type="text"], [type="email"], [type="password"], [type="tel"], [type="number"] ), html body:has(#left .mod_logout) #main form select, html body:has(#left .mod_logout) #main form textarea {
    display: block !important;
    width: 100% !important;
    min-height: calc(58/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(14/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(6/12*1vw) !important;
    background: #ffffff !important;
    color: #68424f !important;
    font-family: inherit !important;
    font-size: calc(33/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

html body:has(#left .mod_logout) #main form textarea {
    min-height: calc(180/12*1vw) !important;
    resize: vertical !important;
}

/* Checkboxen und Radiobuttons */
html body:has(#left .mod_logout) #main form input:is([type="checkbox"], [type="radio"]) {
    width: calc(25/12*1vw) !important;
    height: calc(25/12*1vw) !important;
    margin: calc(3/12*1vw) calc(10/12*1vw) 0 0 !important;
    vertical-align: top !important;
}

html body:has(#left .mod_logout) #main form .row.check {
    display: flex !important;
    align-items: flex-start !important;
    gap: calc(8/12*1vw) !important;
}

html body:has(#left .mod_logout) #main form .row.check label {
    flex: 1 1 auto !important;
    margin: 0 !important;
}

/* Normale Formularbuttons */
html body:has(#left .mod_logout) #main form input.submit:not([name="logout"]) {
    min-height: calc(60/12*1vw) !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: calc(32/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    appearance: none !important;
}

/* Hilfetexte */
html body:has(#left .mod_logout) #main form .help, html body:has(#left .mod_logout) #main form .help p {
    font-size: calc(18/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
}

/* Rufnummern-Bereich */
html body #wrapper#wrapper #container#container #main#main .block:has( a.button.create[href="meine-rufnummern/action/create"] ) {
    width: calc(100% - calc(30/12*1vw)) !important;
    margin: calc(26/12*1vw) auto calc(34/12*1vw) !important;
    box-sizing: border-box !important;
}

/* Überschrift „Rufnummern“ */
html body #wrapper#wrapper #container#container #main#main .block:has( a.button.create[href="meine-rufnummern/action/create"] ) > :is(h1, h2, h3).bh {
    min-height: calc(58/12*1vw) !important;
    padding: calc(10/12*1vw) calc(16/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-size: calc(27/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Button „Rufnummer hinzufügen“ */
html body #wrapper#wrapper #container#container #main#main a.button.create[href="meine-rufnummern/action/create"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: calc(54/12*1vw) !important;
    margin: calc(8/12*1vw) 0 calc(18/12*1vw) !important;
    padding: calc(10/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(5/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-size: calc(32/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
}

/* Tabellencontainer bei Bedarf mit dem Finger scrollbar */
html body #wrapper#wrapper #container#container #main#main .block:has( a.button.create[href="meine-rufnummern/action/create"] ) .table {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-bottom: calc(12/12*1vw) !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
}

/* Tabelle */
html body #wrapper#wrapper #container#container #main#main .block:has( a.button.create[href="meine-rufnummern/action/create"] ) table {
    width: 100% !important;
    min-width: calc(760/12*1vw) !important;
    border-collapse: separate !important;
    border-spacing: 0 4px !important;
}

/* Tabellenüberschriften */
html body #wrapper#wrapper #container#container #main#main .block:has( a.button.create[href="meine-rufnummern/action/create"] ) th {
    padding: calc(11/12*1vw) calc(13/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(26/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

/* Rufnummern und übrige Tabelleninhalte */
html body #wrapper#wrapper #container#container #main#main .block:has( a.button.create[href="meine-rufnummern/action/create"] ) td, html body #wrapper#wrapper #container#container #main#main .block:has( a.button.create[href="meine-rufnummern/action/create"] ) td a, html body #wrapper#wrapper #container#container #main#main .block:has( a.button.create[href="meine-rufnummern/action/create"] ) td span {
    padding: calc(11/12*1vw) calc(13/12*1vw) !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
}



/* Benötigte Menüpunkte anzeigen */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="kunden-home"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="guthaben-aufladen"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="kunden-beratungen"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="Meine Rückrufe"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="♡-aktionen-treuebonus-♡"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="meine-rufnummern"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="dein-treuebonus"]), html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="Infos"]) {
    display: block !important;
    grid-column: auto !important;
    width: auto !important;
    margin: 0 !important;
}

/* 1. Home */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="kunden-home"]) {
    order: 1 !important;
}

/* 2. Guthaben aufladen */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="guthaben-aufladen"]) {
    order: 2 !important;
    grid-column: auto !important;
    margin: 0 !important;
}

/* 3. Alle Beratungen */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="kunden-beratungen"]) {
    order: 3 !important;
}

/* 4. Meine Rückrufe */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="Meine Rückrufe"]) {
    order: 4 !important;
}

/* 5. Newsletter-Einstellungen */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="♡-aktionen-treuebonus-♡"]) {
    order: 5 !important;
}

/* 6. Meine Rufnummern */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="meine-rufnummern"]) {
    order: 6 !important;
}

/* 7. Treuebonus */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="dein-treuebonus"]) {
    order: 7 !important;
}

/* 8. Infos */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="Infos"]) {
    order: 8 !important;
    grid-column: auto !important;
}

/* Home und Guthaben gleich groß */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="kunden-home"]) > a, html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="guthaben-aufladen"]) > a {
    width: 100% !important;
    min-height: calc(74/12*1vw) !important;
    height: calc(74/12*1vw) !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(10/12*1vw) !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-transform: none !important;
    box-sizing: border-box !important;
}

/* Guthaben weiterhin farblich hervorheben */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav li:has(> a[href="guthaben-aufladen"]) > a {
    font-size: calc(29/12*1vw) !important;
    min-height: calc(78/12*1vw) !important;
    padding: calc(16/12*1vw) calc(20/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    border-color: #bc5377 !important;
    background: #bc5377 !important;
    color: #ffffff !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:nth-child(10) {
    display: block !important;
    grid-column: auto !important;
    width: auto !important;
    margin: 0 !important;
    order: 5 !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:nth-child(10) > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(74/12*1vw) !important;
    padding: calc(12/12*1vw) calc(10/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(6/12*1vw) !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

html body #wrapper#wrapper #container#container #main#main .cte_text:has(> h2.bh):has(img) > p {
    font-size: calc(28/12*1vw) !important;
    line-height: 1.55 !important;
}

/* Inline eingetragene kleinere Schrift überschreiben */
html body #wrapper#wrapper #container#container #main#main .cte_text:has(> h2.bh):has(img) > p span, html body #wrapper#wrapper #container#container #main#main .cte_text:has(> h2.bh):has(img) > p strong, html body #wrapper#wrapper #container#container #main#main .cte_text:has(> h2.bh):has(img) > p em {
    font-size: calc(35/12*1vw) !important;
    line-height: 1.55 !important;
}

/* Nur auf eingeloggten Kundenseiten */
html body:has(#left .mod_logout) #container {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: calc(22/12*1vw) !important;
    box-sizing: border-box !important;
    height: auto !important;
    margin: 0 !important;
    overflow: visible !important;
    align-items: stretch !important;
}

/* Konto und Menü oberhalb des Seiteninhalts */
html body:has(#left .mod_logout) #left {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    float: none !important;
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    padding-top: calc(135/12*1vw) !important;
    clear: both !important;
}

html body:has(#left .mod_logout) #left > .inside {
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    overflow: visible !important;
    flex-direction: column !important;
    max-width: 100% !important;
}

/* Mein Konto zuerst */
html body:has(#left .mod_logout) #left .mod_logout {
    display: block !important;
    width: calc(100% - calc(30/12*1vw)) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: calc(30/12*1vw) auto calc(14/12*1vw) !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    order: 1 !important;
}

/* Menü immer direkt unter Mein Konto */
html body:has(#left .mod_logout) #left .nav.mod_simplenav {
    display: block !important;
    width: calc(100% - calc(30/12*1vw)) !important;
    height: auto !important;
    margin: 0 auto calc(28/12*1vw) !important;
    padding: calc(10/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    margin-top: calc(12/12*1vw) !important;
    order: 2 !important;
}

/* Ausgewählter Seiteninhalt danach */
html body:has(#left .mod_logout) #main {
    display: block !important;
    float: none !important;
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    position: static !important;
    height: auto !important;
    overflow: visible !important;
    clear: both !important;
}

/* Home sichtbar in „Kundenbereich“ umbenennen */
html body:has(#left .mod_logout) #left .nav.mod_simplenav a[href="kunden-home"] {
    font-size: 0 !important;
}

html body:has(#left .mod_logout) #left .nav.mod_simplenav a[href="kunden-home"]::after {
    content: "Kundenbereich" !important;
    display: block !important;
    color: inherit !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

html body:has(#left .mod_logout) #container #left {
    padding-top: calc(36/12*1vw) !important;
    box-sizing: border-box !important;
}

/* Frühere obere Abstände zurücksetzen */
html body:has(#left .mod_logout) #container #left .mod_logout {
    margin-top: 0 !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav a[href="kunden-home"] {
    font-size: 0 !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav a[href="kunden-home"]::after {
    content: "Kundenbereich" !important;
    display: block !important;
    color: inherit !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

html body:has(#left .mod_logout) #wrapper#wrapper #container#container {
    padding-top: calc(55/12*1vw) !important;
    box-sizing: border-box !important;
}

/* Den vorherigen Abstand am #left wieder entfernen */
html body:has(#left .mod_logout) #wrapper#wrapper #container#container #left#left {
    padding-top: 0 !important;
}

html body:has(#left .mod_logout) #wrapper#wrapper #container#container #left#left .mod_logout {
    margin-top: calc(180/12*1vw) !important;
}

/* ----------------------------------------------
        Home ausschließlich als „Kundenbereich“
        ---------------------------------------------- */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="kunden-home"]) > a {
    position: relative !important;
    overflow: hidden !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="kunden-home"]) > a::after {
    content: "Kundenbereich" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #86163e !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-indent: 0 !important;
    text-align: center !important;
}

/* ----------------------------------------------
        Guthaben aufladen in Altrosa
        ---------------------------------------------- */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="guthaben-aufladen"]) > a {
    min-height: calc(64/12*1vw) !important;
    padding: calc(14/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(6/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 700 !important;
    font-style: normal !important;
    text-transform: uppercase !important;
    border-color: #c9909f !important;
}

/* ----------------------------------------------
        Seite „Meine Rufnummern“ größer
        Der eindeutige Hinzufügen-Button erkennt die Seite
        ---------------------------------------------- */
html body #main#main:has( a.button.create[href="meine-rufnummern/action/create"] ) :is(h1, h2, h3).bh {
    font-size: calc(29/12*1vw) !important;
    line-height: 1.3 !important;
}

/* Button Rufnummer hinzufügen */
html body #main#main:has( a.button.create[href="meine-rufnummern/action/create"] ) a.button.create {
    min-height: calc(58/12*1vw) !important;
    padding: calc(12/12*1vw) calc(20/12*1vw) !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

/* Tabelle mit dem Finger scrollbar */
html body #main#main:has( a.button.create[href="meine-rufnummern/action/create"] ) .table {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

html body #main#main:has( a.button.create[href="meine-rufnummern/action/create"] ) table {
    width: 100% !important;
    min-width: calc(820/12*1vw) !important;
}

/* Tabellenüberschriften */
html body #main#main:has( a.button.create[href="meine-rufnummern/action/create"] ) table th {
    padding: calc(13/12*1vw) calc(15/12*1vw) !important;
    font-size: calc(22/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
}

/* Rufnummer und sämtliche Inhalte */
html body #main#main:has( a.button.create[href="meine-rufnummern/action/create"] ) table td, html body #main#main:has( a.button.create[href="meine-rufnummern/action/create"] ) table td a, html body #main#main:has( a.button.create[href="meine-rufnummern/action/create"] ) table td span {
    padding: calc(13/12*1vw) calc(15/12*1vw) !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
}

/* Tabellencontainer */
html body #wrapper#wrapper #container#container #main#main .table:has(table thead th:nth-child(8)) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: calc(8/12*1vw) 0 calc(16/12*1vw) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
    box-sizing: border-box !important;
}

/* Tabelle erhält genügend Breite */
html body #wrapper#wrapper #container#container #main#main table:has(thead th:nth-child(8)) {
    width: calc(1200/12*1vw) !important;
    min-width: calc(1200/12*1vw) !important;
    table-layout: auto !important;
    border-collapse: separate !important;
    border-spacing: 0 4px !important;
}

/* Spaltenüberschriften */
html body #wrapper#wrapper #container#container #main#main table:has(thead th:nth-child(8)) th {
    min-height: calc(58/12*1vw) !important;
    padding: calc(13/12*1vw) calc(16/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

/* Tabelleninhalte */
html body #wrapper#wrapper #container#container #main#main table:has(thead th:nth-child(8)) td, html body #wrapper#wrapper #container#container #main#main table:has(thead th:nth-child(8)) td a, html body #wrapper#wrapper #container#container #main#main table:has(thead th:nth-child(8)) td span {
    min-height: calc(58/12*1vw) !important;
    padding: calc(13/12*1vw) calc(16/12*1vw) !important;
    color: #68424f !important;
    font-size: calc(23/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

/* Bewertungslinks */
html body #wrapper#wrapper #container#container #main#main table:has(thead th:nth-child(8)) td a {
    color: #86163e !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}

/* Vorhandenen Kundenbereich-Link nur ohne Navigation anzeigen */
html body #left:has(.mod_logout):not(:has(.nav.mod_simplenav)) .mod_logout > a.button:is( [href="/kunden-home"], [href="kunden-home"] ) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% - calc(30/12*1vw)) !important;
    min-height: calc(68/12*1vw) !important;
    margin: calc(18/12*1vw) auto calc(4/12*1vw) !important;
    padding: calc(13/12*1vw) calc(18/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(6/12*1vw) !important;
    background: #efdbe1 !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* ==================================================
   BERATERFILTER – 12PX UND SCHMALE BUTTONS
   ================================================== */
/* Schrift „2 Freiminuten“ verkleinern */
/* „2 Freiminuten“ – 10px und mittig */
li[style*="#ed679b"] {
    font-size: 10px !important;
    line-height: 1.2 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    color: #ed679b !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* ==================================================
   BERATERPROFIL – E-MAIL-BENACHRICHTIGUNG
   ================================================== */
/* ==================================================
   KONTOBOX MOBIL – SAUBERER ERSATZCODE
   KUNDENBEREICH 70% | LOGOUT 30%
   ================================================== */
@media screen and (max-width: 768px) {
/* Scrollbarer äußerer Bereich */
#main .busylist .inside {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    box-sizing: border-box !important;
}

#main .busylist .inside::-webkit-scrollbar {
    display: none !important;
}

/* Aktuelle Beraterreihe */
#main .busylist .inside > ul.first.active {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: calc(22/12*1vw) !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    /*
          * bei wenigen beratern mindestens volle breite: * dadurch stehen sie mittig.
          *
          * Bei vielen Beratern wächst die Liste nach rechts.
          */
         width: max-content !important;
    min-width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: calc(12/12*1vw) calc(16/12*1vw) calc(20/12*1vw) !important;
    opacity: 1 !important;
    z-index: 5 !important;
    box-sizing: border-box !important;
}

/* Einzelne Berater bleiben nebeneinander */
#main .busylist .inside > ul.first.active > li.box {
    flex: 0 0 auto !important;
    margin: 0 !important;
}

/*Tagesbotschft*/
html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) table {
    display: table !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    table-layout: fixed !important;
    box-sizing: border-box !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) tbody, html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) tr {
    width: 100% !important;
    height: auto !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) td {
    height: auto !important;
    padding: calc(16/12*1vw) !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) td:first-child {
    width: 60% !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) td:last-child {
    width: 40% !important;
    text-align: center !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) p {
    margin: 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(32/12*1vw) !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    text-align: center !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) p span, html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) p strong {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) p span[style*="color: #ed60a0"] {
    color: #bc5377 !important;
    font-size: calc(28/12*1vw) !important;
    font-weight: 700 !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) a {
    display: block !important;
    width: 100% !important;
    text-decoration: none !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) img {
    display: block !important;
    width: 100% !important;
    max-width: calc(310/12*1vw) !important;
    height: auto !important;
    margin: 0 auto !important;
    border-radius: calc(9/12*1vw) !important;
    box-shadow: 0 5px 13px rgba(104, 66, 79, 0.14) !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) > .clear {
    display: none !important;
}

html body:has(#left .mod_logout) #main#main h2.bh {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(66/12*1vw) !important;
    margin: 0 0 calc(24/12*1vw) !important;
    padding: calc(11/12*1vw) calc(20/12*1vw) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(36/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

html body:has(#left .mod_logout) #main#main .cte_recent > h2.bh {
    margin-bottom: calc(24/12*1vw) !important;
    background: #bc5377 !important;
}

html body:has(#left .mod_logout) #main#main .block > p, html body:has(#left .mod_logout) #main#main .block > span {
    color: #68424f !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(36/12*1vw) !important;
    line-height: 1.5 !important;
}

html body:has(#left .mod_logout) #main#main .ajax-credit, html body:has(#left .mod_logout) #main#main .ajax-credit span {
    color: #bc5377 !important;
    font-size: calc(36/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

html body:has(#left .mod_logout) #main#main a[href*="guthaben"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: calc(330/12*1vw) !important;
    min-height: calc(64/12*1vw) !important;
    margin: calc(15/12*1vw) 0 calc(25/12*1vw) !important;
    padding: calc(12/12*1vw) calc(24/12*1vw) !important;
    border: 0 !important;
    border-radius: calc(7/12*1vw) !important;
    background: #bc5377 !important;
    color: #ffffff !important;
    font-family: SourceSansPro, Arial, sans-serif !important;
    font-size: calc(25/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(a[href="tagesbotschaft"]) {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 0 calc(30/12*1vw) !important;
    padding: calc(26/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(10/12*1vw) !important;
    background: #fffafb !important;
    box-shadow: 0 5px 14px rgba(104, 66, 79, 0.10) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    margin-bottom: calc(24/12*1vw) !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(img[src*="Kundenwerbung-Small"]) {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    height: auto !important;
    margin: calc(20/12*1vw) 0 calc(28/12*1vw) !important;
    padding: 0 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(img[src*="Kundenwerbung-Small"]) > p {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(img[src*="Kundenwerbung-Small"]) br {
    display: none !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(img[src*="Kundenwerbung-Small"]) > p:not(:has(img)) {
    display: none !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(img[src*="Kundenwerbung-Small"]) img {
    display: block !important;
    width: 100% !important;
    max-width: calc(900/12*1vw) !important;
    height: auto !important;
    margin: 0 auto !important;
    border-radius: calc(9/12*1vw) !important;
    box-sizing: border-box !important;
}

html body:has(#left .mod_logout) #main#main .cte_text:has(img[src*="Kundenwerbung-Small"]) > .clear {
    display: none !important;
}

#left .mod_login, #left > .inside > .mod_login {
    display: none !important;
}

#main .busylist {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(18/12*1vw) !important;
    padding: 0 0 calc(18/12*1vw) !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: #fcf3f6 !important;
}

/* Überschrift größer */
#main .busylist .bh {
    display: block !important;
    width: 100% !important;
    margin: 0 0 calc(16/12*1vw) !important;
    padding: calc(12/12*1vw) calc(15/12*1vw) !important;
    background: #c9909f !important;
    color: #ffffff !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: clamp(calc(25/12*1vw), 3vw, calc(36/12*1vw)) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Gesamter Bereich mit dem Finger scrollbar */
#main .busylist > .inside {
    position: relative !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    width: 100% !important;
    margin: 0 !important;
    padding: calc(4/12*1vw) calc(18/12*1vw) calc(14/12*1vw) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scroll-behavior: smooth !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-inline: contain !important;
    touch-action: pan-x !important;
}

#main .busylist > .inside::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

/*
      * Alle vom System erzeugten Beratergruppen werden
      * zu einer einzigen durchgehenden Reihe verbunden.
      */
#main .busylist > .inside > ul {
    position: static !important;
    display: contents !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}

/* Einzelne Berater */
#main .busylist li {
    display: flex !important;
    flex: 0 0 clamp(160px, 20vw, 210px) !important;
    flex-direction: column !important;
    align-items: center !important;
    width: clamp(calc(160/12*1vw), 20vw, calc(210/12*1vw)) !important;
    margin: 0 calc(10/12*1vw) !important;
    padding: 0 !important;
    list-style: none !important;
    text-align: center !important;
    scroll-snap-align: start !important;
}

/* Profilbilder größer und rund */
#main .busylist li img {
    display: block !important;
    width: clamp(calc(145/12*1vw), 18vw, calc(190/12*1vw)) !important;
    min-width: clamp(calc(145/12*1vw), 18vw, calc(190/12*1vw)) !important;
    max-width: clamp(calc(145/12*1vw), 18vw, calc(190/12*1vw)) !important;
    height: clamp(calc(145/12*1vw), 18vw, calc(190/12*1vw)) !important;
    min-height: clamp(calc(145/12*1vw), 18vw, calc(190/12*1vw)) !important;
    max-height: clamp(calc(145/12*1vw), 18vw, calc(190/12*1vw)) !important;
    margin: 0 auto calc(10/12*1vw) !important;
    padding: calc(4/12*1vw) !important;
    border: 3px solid #d9a5b3 !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    object-fit: cover !important;
    object-position: center top !important;
    box-shadow: 0 5px 12px rgba(153, 72, 100, 0.2) !important;
}

/* Beratername */
#main .busylist .name {
    display: -webkit-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: calc(52/12*1vw) !important;
    margin: 0 !important;
    padding: 0 calc(3/12*1vw) !important;
    overflow: hidden !important;
    color: #68424f !important;
    font-size: clamp(calc(19/12*1vw), 2.2vw, calc(25/12*1vw)) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

/* Status gut lesbar */
#main .busylist .status {
    display: block !important;
    width: 100% !important;
    margin: calc(5/12*1vw) 0 0 !important;
    padding: 0 calc(3/12*1vw) !important;
    font-size: clamp(calc(17/12*1vw), 2vw, calc(22/12*1vw)) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    white-space: normal !important;
}

#main .busylist .online {
    color: #67936e !important;
}

#main .busylist .busy {
    color: #c84f7d !important;
}

#main .busylist .offline {
    color: #929292 !important;
}

/* Alte Cursor-Pfeile vollständig entfernen */
#main .busylist .btn, #main .busylist .prev, #main .busylist .next {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Vorhandenen Link sicher einblenden */
html body #wrapper#wrapper #container#container #left#left .mod_logout > a.button:is([href="/kunden-home"], [href="kunden-home"]) {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    clear: both !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: calc(100% - calc(30/12*1vw)) !important;
    min-height: calc(66/12*1vw) !important;
    margin: calc(18/12*1vw) auto calc(4/12*1vw) !important;
    padding: calc(12/12*1vw) calc(18/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(6/12*1vw) !important;
    background: #efdbe1 !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    box-sizing: border-box !important;
}

/* Beschriftung */
html body #wrapper#wrapper #container#container #left#left .mod_logout > a.button:is([href="/kunden-home"], [href="kunden-home"])::after {
    content: "Kundenbereich" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #86163e !important;
    font-size: calc(32/12*1vw) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-indent: 0 !important;
    text-align: center !important;
}

/* Doppelten Kundenbereich-Punkt im Menü entfernen */
html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li:has(> a[href="kunden-home"]) {
    display: none !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li.customer-start {
    display: block !important;
    grid-column: auto !important;
    order: 8 !important;
    width: auto !important;
    margin: 0 !important;
}

html body #wrapper#wrapper #container#container #left#left .nav.mod_simplenav ul.level_1 > li.customer-start > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: calc(74/12*1vw) !important;
    padding: calc(12/12*1vw) calc(10/12*1vw) !important;
    border: 1px solid #e7c4cf !important;
    border-radius: calc(6/12*1vw) !important;
    background: #efdbe1 !important;
    color: #86163e !important;
    font-size: calc(24/12*1vw) !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Nur auf der Startseite und nur bei eingeloggten Kunden */
html body.home:has(#left .mod_logout) #left {
    display: none !important;
}

html body.home:has(#left .mod_logout) #container {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-top: 0 !important;
}

html body.home:has(#left .mod_logout) #main {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

/* Gesamter Bereich */
html body #wrapper#wrapper #container#container #main#main .busylist {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

/* Scrollbarer Bereich */
html body #main#main .busylist > .inside::-webkit-scrollbar {
    display: none !important;
}

/* Inaktive alte Slidergruppen vollständig ausblenden */
html body #wrapper#wrapper #container#container #main#main .busylist > .inside > ul:not(.active) {
    display: none !important;
}

/* Aktive Beratergruppe */
html body #wrapper#wrapper #container#container #main#main .busylist > .inside > ul.active {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: calc(22/12*1vw) !important;
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: max-content !important;
    min-width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: calc(16/12*1vw) calc(20/12*1vw) calc(22/12*1vw) !important;
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 1 !important;
    transform: none !important;
    transition: none !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

/* Einzelne Berater */
html body #wrapper#wrapper #container#container #main#main .busylist > .inside > ul.active > li {
    display: block !important;
    flex: 0 0 170px !important;
    width: calc(200/12*1vw) !important;
    min-width: calc(200/12*1vw) !important;
    max-width: calc(200/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    scroll-snap-align: start !important;
    box-sizing: border-box !important;
}

/* Links dürfen nicht abgeschnitten werden */
html body #main#main .busylist ul.active > li > a {
    display: block !important;
    width: 100% !important;
    overflow: visible !important;
}

/* Beraterbilder sauber rund */
html body #main#main .busylist ul.active > li img {
    display: block !important;
    width: calc(150/12*1vw) !important;
    height: calc(150/12*1vw) !important;
    margin: 0 auto calc(10/12*1vw) !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    object-position: center !important;
    box-sizing: border-box !important;
}

/* Name und Status */
html body #main#main .busylist ul.active > li .name {
    display: block !important;
    width: 100% !important;
    margin: calc(5/12*1vw) 0 calc(2/12*1vw) !important;
    font-size: calc(21/12*1vw) !important;
    line-height: 1.25 !important;
    text-align: center !important;
    white-space: normal !important;
}

html body #main#main .busylist ul.active > li .status {
    display: block !important;
    width: 100% !important;
    font-size: calc(19/12*1vw) !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Alte Pfeile ausblenden */
html body #main#main .busylist .btn.prev, html body #main#main .busylist .btn.next {
    display: none !important;
}


/* Beraterkacheln – nicht zusammenpressen */
html body #wrapper#wrapper #container#container #main#main .busylist > .inside ul > li {
    display: block !important;
    flex: 0 0 160px !important;
    width: calc(160/12*1vw) !important;
    min-width: calc(160/12*1vw) !important;
    max-width: calc(160/12*1vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    scroll-snap-align: start !important;
    box-sizing: border-box !important;
}

/* Bilder */
html body #main#main .busylist > .inside ul > li img {
    display: block !important;
    width: calc(142/12*1vw) !important;
    height: calc(142/12*1vw) !important;
    min-width: calc(142/12*1vw) !important;
    max-width: calc(142/12*1vw) !important;
    margin: 0 auto calc(11/12*1vw) !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* Namen */
html body #main#main .busylist > .inside ul > li .name {
    display: block !important;
    width: 100% !important;
    margin: calc(4/12*1vw) 0 !important;
    font-size: calc(21/12*1vw) !important;
    line-height: 1.25 !important;
    text-align: center !important;
    white-space: normal !important;
}

/* Status */
html body #main#main .busylist > .inside ul > li .status {
    display: block !important;
    width: 100% !important;
    font-size: calc(19/12*1vw) !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Rahmen des Profilbildes als fester Kreis */
/* Foto vollständig in den Kreis einpassen */
html body #wrapper#wrapper #container#container #main#main .busylist .inside ul > li > a:first-child > img {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    object-position: center center !important;
    aspect-ratio: 1 / 1 !important;
    box-sizing: border-box !important;
}

/* Beraterkachel verbreitern */
html body #wrapper#wrapper #container#container #main#main .busylist .inside ul > li {
    flex: 0 0 188px !important;
    width: calc(200/12*1vw) !important;
    min-width: calc(200/12*1vw) !important;
    max-width: calc(200/12*1vw) !important;
}

/* Profilkreis vergrößern */
html body #wrapper#wrapper #container#container #main#main .busylist .inside ul > li > a:first-child {
    display: block !important;
    width: calc(200/12*1vw) !important;
    min-width: calc(200/12*1vw) !important;
    max-width: calc(200/12*1vw) !important;
    height: calc(200/12*1vw) !important;
    min-height: calc(200/12*1vw) !important;
    max-height: calc(200/12*1vw) !important;
    margin: 0 auto calc(11/12*1vw) !important;
    padding: 0 !important;
    border: 2px solid #d895aa !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

html body #wrapper#wrapper #container#container #main#main .busylist > .inside {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;

    padding: calc(18/12*1vw) calc(20/12*1vw) calc(24/12*1vw) !important;
    padding-left: 0 !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;

    touch-action: pan-x pan-y !important;
    overscroll-behavior-inline: contain !important;

    box-sizing: border-box !important;

    flex-direction: initial !important;
    flex-wrap: initial !important;
    align-items: initial !important;
    justify-content: initial !important;
    gap: 0 !important;
}

body #wrapper #container .inside ul li.box a.name {
    font-size: 9px !important;
    line-height: 1.3 !important;
}

body #wrapper #container .inside ul li.box span.status {
    font-size: 9px !important;
    line-height: 1.3 !important;
}

/* Alle Beraterboxen – auch in später eingeblendeten Gruppen */
.inside > ul > li.box {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 210px !important;
    min-width: 210px !important;
    max-width: 210px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 5px !important;
    text-align: center !important;
    vertical-align: top !important;
}

/* Bildlink überall gleich groß */
.inside > ul > li.box > a:first-child {
    display: block !important;
    width: 152px !important;
    height: 152px !important;
    min-height: 152px !important;
    margin: 0 auto !important;
}

/* Alle Bilder einheitlich */
.inside > ul > li.box > a:first-child > img {
    display: block !important;
    width: 152px !important;
    height: 152px !important;
    max-width: none !important;
    margin: 0 auto !important;
    object-fit: cover !important;
    object-position: center top !important;
    border-radius: 50% !important;
}

/* Alle Namen auf derselben Höhe */
.inside > ul > li.box > a.name {
    display: block !important;
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
    color: #68424f !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 30px !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: visible !important;
}

/* Status steht bei allen exakt auf derselben Höhe */
.inside > ul > li.box > span.status {
    display: block !important;
    width: 100% !important;
    height: 27px !important;
    min-height: 27px !important;
    margin: 2px 0 0 !important;
    padding: 0 !important;
    font-size: 18px !important;
    line-height: 27px !important;
    text-align: center !important;
    white-space: nowrap !important;
}

/* Gesamter Bereich */
html body #main .mod_recharge {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    /* überschrift 36px, kachelreihen jeweils 137px */
        grid-template-rows: 36px !important;
    grid-auto-rows: 137px !important;
    align-items: stretch !important;
    gap: 6px !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 6px !important;
    background: #fffafb !important;
    border: 1px solid #e7c4cf !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
}

/* Überschrift */
html body #main .mod_recharge > h1.bh {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    margin: 0 !important;
    padding: 3px 6px !important;
    color: #ffffff !important;
    background: #c9909f !important;
    border: 0 !important;
    border-radius: 3px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Alle vier Kacheln gleich groß */
html body #main .mod_recharge > form.formbox.payment {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 137px !important;
    min-height: 137px !important;
    max-height: 137px !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 5px !important;
    color: #68424f !important;
    background: #ffffff !important;
    border: 1px solid #e7c4cf !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Anbieternamen und Beschreibungstexte ausblenden */
html body #main .mod_recharge form.payment > h3, html body #main .mod_recharge form.payment > p {
    display: none !important;
}

/* Einheitlicher Logobereich */
html body #main .mod_recharge form.payment > a:first-of-type, html body #main .mod_recharge form.payment > img.img, html body #main .mod_recharge form.payment > div.img {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 55px !important;
    width: 100% !important;
    height: 55px !important;
    min-height: 55px !important;
    max-height: 55px !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    line-height: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* PayPal und Paysafecard */
html body #main .mod_recharge form.payment > a:first-of-type > img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-height: 28px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
}

/* Klarna */
html body #main .mod_recharge form.payment > img.img {
    display: block !important;
    width: 80% !important;
    height: 55px !important;
    min-height: 55px !important;
    max-height: 55px !important;
    margin: 0 0 4px !important;
    padding: 12px 28px !important;
    object-fit: contain !important;
    box-sizing: border-box !important;
}

/* Dritte Kachel: zwei Logos pro Reihe */
html body #main .mod_recharge form.payment > div.img {
    display: grid !important;
    grid-template-columns: repeat(2, 46px) !important;
    grid-template-rows: repeat(2, 23px) !important;
    grid-auto-rows: 0 !important;
    align-content: center !important;
    justify-content: center !important;
    align-items: center !important;
    column-gap: 5px !important;
    row-gap: 2px !important;
    font-size: 0 !important;
}

html body #main .mod_recharge form.payment > div.img > span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    height: 23px !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body #main .mod_recharge form.payment > div.img > span:nth-of-type(1) {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

html body #main .mod_recharge form.payment > div.img > span:nth-of-type(2) {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

html body #main .mod_recharge form.payment > div.img > span:nth-of-type(3) {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

html body #main .mod_recharge form.payment > div.img > span:nth-of-type(4) {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

html body #main .mod_recharge form.payment > div.img > span > img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 42px !important;
    max-height: 18px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
}

/* Betragsauswahl */
html body #main .mod_recharge form.payment select.amount {
    display: block !important;
    flex: 0 0 31px !important;
    width: 100% !important;
    height: 31px !important;
    min-height: 31px !important;
    max-height: 31px !important;
    margin: 0 0 4px !important;
    padding: 2px 22px 2px 6px !important;
    color: #68424f !important;
    background: #ffffff !important;
    border: 1px solid #e7c4cf !important;
    border-radius: 2px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: normal !important;
    box-sizing: border-box !important;
}

html body #main .mod_recharge form.payment select.amount option {
    color: #68424f !important;
    background: #ffffff !important;
    font-size: 11px !important;
    font-weight: 400 !important;
}

/* Aufladebutton */
html body #main .mod_recharge form.payment button.submit {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 31px !important;
    width: 100% !important;
    height: 31px !important;
    min-height: 31px !important;
    max-height: 31px !important;
    margin: 0 !important;
    padding: 2px 3px !important;
    color: #ffffff !important;
    background: #b65f7d !important;
    border: 1px solid #b65f7d !important;
    border-radius: 2px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

html body #wrapper#wrapper #container#container #left#left .mod_simplenav.mod_simplenav ul.level_1.level_1 > li {
    font-size: 10px !important;
    line-height: 1.15 !important;
}

html body #wrapper#wrapper #container#container #left#left .mod_simplenav.mod_simplenav ul.level_1.level_1 > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    margin: 0 !important;
    padding: 3px 5px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Normale Menüpunkte */
html body #wrapper#wrapper #container#container #left#left .mod_simplenav.mod_simplenav ul.level_1.level_1 > li.item > a {
    font-size: 10px !important;
    font-weight: 500 !important;
}

/* Aktiver Menüpunkt */
html body #wrapper#wrapper #container#container #left#left .mod_simplenav.mod_simplenav ul.level_1.level_1 > li.active > a {
    font-size: 10px !important;
    font-weight: 500 !important;
}

html body #wrapper#wrapper #container#container #main#main ul.tabnav.tabnav {
    display: flex !important;
    flex-flow: row wrap !important;
    gap: 0 !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

html body #wrapper#wrapper #container#container #main#main ul.tabnav.tabnav > li {
    display: block !important;
    position: relative !important;
    float: none !important;
    flex: 0 0 50% !important;
    width: 50% !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    grid-area: auto !important;
    inset: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Erste und letzte Zeile volle Breite */
html body #wrapper#wrapper #container#container #main#main ul.tabnav.tabnav > li:first-child, html body #wrapper#wrapper #container#container #main#main ul.tabnav.tabnav > li.last {
    flex: 0 0 100% !important;
    width: 100% !important;
}

/* Filterbuttons */
html body #wrapper#wrapper #container#container #main#main ul.tabnav.tabnav > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 26px !important;
    min-height: 26px !important;
    max-height: 26px !important;
    margin: 0 !important;
    padding: 1px 4px !important;
    color: #86163e !important;
    background: #fcf3f6 !important;
    border: 1px solid #e7c4cf !important;
    border-radius: 0 !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

/* Aktiver Button */
html body #wrapper#wrapper #container#container #main#main ul.tabnav.tabnav > li.active > a {
    color: #ffffff !important;
    background: #c9909f !important;
    border-color: #c9909f !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

html body #wrapper#wrapper #container#container #main#main ul.tabnav.tabnav > li.last > input.search {
    font-size: 12px !important;
}

html body #wrapper#wrapper #container#container #main#main ul.tabnav.tabnav > li.last > input.search::placeholder {
    font-size: 10px !important;
    color: #68424f !important;
    opacity: 1 !important;
}

/* Gesamte Benachrichtigungsbox */
html body #wrapper#wrapper #container#container #main#main .notify.block {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 12px 0 !important;
    padding: 14px !important;
    background: #fcf3f6 !important;
    border: 1px solid #e7c4cf !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
}

/* Formular */
html body #wrapper#wrapper #container#container #main#main .notify.block > form {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Hinweistext */
html body #wrapper#wrapper #container#container #main#main .notify.block > form > p {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: #68424f !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* Benachrichtigungsbutton */
html body #wrapper#wrapper #container#container #main#main .notify.block input.submit {
    width: 230px !important;
    max-width: 100% !important;
    height: 29px !important;
    min-height: 29px !important;
    max-height: 29px !important;
    margin: 0 auto !important;
    padding: 2px 7px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

/* Gesamte Kontobox */
html body #wrapper#wrapper #container#container #left#left .mod_logout.mod_logout {
    display: grid !important;
    grid-template-columns: minmax(0, 7fr) minmax(0, 3fr) !important;
    grid-template-rows: auto 28px !important;
    align-items: stretch !important;
    column-gap: 6px !important;
    row-gap: 13px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    position: relative !important;
    margin: 0 !important;
    padding: 16px 10px 10px !important;
    box-sizing: border-box !important;
}

/* „Mein Konto“-Balken entfernen */
html body #wrapper#wrapper #container#container #left#left .mod_logout.mod_logout > h3.bh {
    display: none !important;
}

/* Kontoinformationen über die gesamte Breite */
html body #wrapper#wrapper #container#container #left#left .mod_logout.mod_logout > ul.infos {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Kundenbereich – linke 70 Prozent */
html body #wrapper#wrapper #container#container #left#left .mod_logout.mod_logout > a.button.button[href="/kunden-home"] {
    grid-column: 1 !important;
    grid-row: 2 !important;
    place-self: stretch !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 2px 6px !important;
    color: transparent !important;
    background: #f1dce3 !important;
    border: 1px solid #e7c4cf !important;
    border-radius: 3px !important;
    /* falsch positionierten originaltext unsichtbar machen */
        font-size: 0 !important;
    line-height: 0 !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Eventuell vorhandenes altes Symbol entfernen */
html body #wrapper#wrapper #container#container #left#left .mod_logout.mod_logout > a.button.button[href="/kunden-home"]::before {
    display: none !important;
    content: none !important;
}

/* Text korrekt in den Button setzen */
html body #wrapper#wrapper #container#container #left#left .mod_logout.mod_logout > a.button.button[href="/kunden-home"]::after {
    content: "Kundenbereich" !important;
    display: block !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #86163e !important;
    background: transparent !important;
    border: 0 !important;
    font-family: inherit !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    white-space: nowrap !important;
}

/* Logout-Formular – rechte 30 Prozent */
html body #wrapper#wrapper #container#container #left#left .mod_logout.mod_logout > form {
    grid-column: 2 !important;
    grid-row: 2 !important;
    place-self: stretch !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    box-sizing: border-box !important;
}

/* Logout-Button */
html body #wrapper#wrapper #container#container #left#left .mod_logout.mod_logout > form > input[type="submit"].submit.submit[name="logout"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    margin: 0 !important;
    padding: 2px 5px !important;
    color: #ffffff !important;
    background: #b65f7d !important;
    border: 1px solid #b65f7d !important;
    border-radius: 3px !important;
    font-family: inherit !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}


}

/* Button „Monatsabrechnung herunterladen“ */
a.button[href*="invoiceMonth"] {
    font-size: 10px !important;
    line-height: 1.2 !important;
}

html body #wrapper#wrapper #container#container #main#main form[action^="/no-email"] li.row.check > label {
    font-size: 10px !important;
    line-height: 1.35 !important;
}

html body:not(.loggedin) #cteFader66 {
    margin-top: -70px !important;
}

html body #wrapper#wrapper #container#container .longtext.longtext, html body #wrapper#wrapper #container#container .longtext.longtext > p {
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

/* Name und Datum */
html body #wrapper#wrapper #container#container .rating.rating > span.name {
    font-size: 12px !important;
    line-height: 1.3 !important;
}

/* Bewertungstext */
html body #wrapper#wrapper #container#container .rating.rating > p {
    font-size: 12px !important;
    line-height: 1.4 !important;
}

/* Seitenzahlen und Gesamtzahl */
html body #wrapper#wrapper #container#container .pagination.mod_paginator a, html body #wrapper#wrapper #container#container .pagination.mod_paginator span.total {
    font-size: 12px !important;
    line-height: 1.3 !important;
}

/* Tabellenbereich mittig */
html body #wrapper#wrapper #container#container #main#main div.table:not(.mobile_table) {
    width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

html body #wrapper#wrapper #container#container #main#main div.table:not(.mobile_table) > table {
    width: 95% !important;
    margin: 0 auto !important;
    table-layout: auto !important;
}

/* Überschriften und Tabelleninhalte */
html body #wrapper#wrapper #container#container #main#main div.table:not(.mobile_table) th, html body #wrapper#wrapper #container#container #main#main div.table:not(.mobile_table) td, html body #wrapper#wrapper #container#container #main#main div.table:not(.mobile_table) td a, html body #wrapper#wrapper #container#container #main#main div.table:not(.mobile_table) td span {
    font-size: 10px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    vertical-align: middle !important;
}


}

/* Zusätzlich erzeugten Text „Anrufen“ entfernen */
div.table table td:last-child a[href*="fmid"]::after {
    content: none !important;
    display: none !important;
}

div.table table td:last-child a::after {
    content: none !important;
    display: none !important;
}

/*Zurückbutton kleiner*/

@media screen and (max-width: 768px) {
    a.button:not([class*="submit"]) {
        min-height: auto !important;
        height: auto !important;
        width: auto !important;
        display: inline-flex !important;
        padding: calc(8/12*1vw) calc(20/12*1vw) !important;
        font-size: calc(32/12*1vw) !important;
    }
}

/*Formular Neukunde*/

@media screen and (max-width: 768px) {

    #reg .row.check.ctrl_newsletter {
        display: flex !important;
        align-items: center !important;
        gap: calc(18/12*1vw) !important;
    }

    #reg .row.check.ctrl_newsletter input[type="checkbox"] {
        width: calc(38/12*1vw) !important;
        height: calc(38/12*1vw) !important;
        min-width: calc(38/12*1vw) !important;
        margin: 0 !important;
        accent-color: #bc5377 !important;
        cursor: pointer !important;
    }

    #reg .row.check.ctrl_newsletter label {
        font-size: calc(28/12*1vw) !important;
        font-weight: 500 !important;
        line-height: 1.4 !important;
    }
}



/*Checkboxen*/
@media screen and (max-width: 768px) {
    html body #main#main form#reg > .row.check.ctrl_newsletter
    html body #main#main form#reg > .row.check.ctrl_terms,
    html body #main#main form#reg > .row.check.ctrl_privacyPolicy,
    html body #main#main form#reg > .row.check.ctrl_cancelPolicy {
        display: flex !important;
        grid-template-columns: none !important;
        align-items: flex-start !important;
        gap: calc(18/12*1vw) !important;
    }

    html body #main#main form#reg > .row.check.ctrl_newsletter > input[type="checkbox"], 
    html body #main#main form#reg > .row.check.ctrl_terms > input[type="checkbox"],
    html body #main#main form#reg > .row.check.ctrl_privacyPolicy > input[type="checkbox"],
    html body #main#main form#reg > .row.check.ctrl_cancelPolicy > input[type="checkbox"] {
        width: calc(38/12*1vw) !important;
        height: calc(38/12*1vw) !important;
        min-width: calc(38/12*1vw) !important;
        margin-top: calc(4/12*1vw) !important;
        accent-color: #bc5377 !important;
        cursor: pointer !important;
    }

    html body #main#main form#reg > .row.check.ctrl_newsletter > label,
    html body #main#main form#reg > .row.check.ctrl_terms > label,
    html body #main#main form#reg > .row.check.ctrl_privacyPolicy > label,
    html body #main#main form#reg > .row.check.ctrl_cancelPolicy > label {
        font-size: calc(26/12*1vw) !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
    }
}

/*Letzte Beratungen größer*/
@media screen and (max-width: 768px) {

    /* Beraterbilder größer */
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li img {
        width: calc(170/12*1vw) !important;
        height: calc(200/12*1vw) !important;
        margin: 0 auto calc(10/12*1vw) !important;
    }

    /* Name größer */
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li h4,
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li h4 a {
        font-size: calc(30/12*1vw) !important;
        line-height: 1.3 !important;
    }

    /* Zusatzminuten- und Status-Text größer */
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span,
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li p {
        font-size: calc(30/12*1vw) !important;
        line-height: 1.4 !important;
    }

    /* "Jetzt bewerten"-Link größer */
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li > a {
        font-size: calc(28/12*1vw) !important;
    }

    /* Sterne kleiner */
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span.stars {
        display: inline-block !important;
        width: auto !important;
        height: auto !important;
        font-size: 0 !important;
        line-height: 0 !important;
        letter-spacing: 0 !important;
        background: none !important;
        background-image: none !important;
    }

    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span.stars::before {
        display: block !important;
        content: "☆☆☆☆☆" !important;
        color: #b65f7d !important;
        font-size: calc(34/12*1vw) !important;
        line-height: 1.2 !important;
        letter-spacing: 1px !important;
    }

    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span.stars.s1::before { content: "★☆☆☆☆" !important; }
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span.stars.s2::before { content: "★★☆☆☆" !important; }
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span.stars.s3::before { content: "★★★☆☆" !important; }
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span.stars.s4::before { content: "★★★★☆" !important; }
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span.stars.s5::before { content: "★★★★★" !important; }
    html body:has(#left .mod_logout) #main#main .cte_recent > ul > li span.stars.s0::before { content: "☆☆☆☆☆" !important; }
}

/*Profiltext größer*/
@media screen and (max-width: 768px) {
    html body #wrapper#wrapper #container#container .longtext.longtext.longtext,
    html body #wrapper#wrapper #container#container .longtext.longtext.longtext > p {
        font-size: calc(34/12*1vw) !important;
        line-height: 1.65 !important;
    }
}



    /* ==================================================
       BERATERARTIKEL – ALLGEMEINE REGEL
       Gilt unabhängig vom Login-Status
       ================================================== */
@media screen and (max-width: 768px) {

    /* Beraterartikel-Block mittig zentrieren und auf volle Breite bringen */
    html body #main#main .cte_text.block:has(table) {
        width: 100% !important;
        max-width: 100% !important;
        margin: calc(6/12*1vw) auto !important;
        text-align: center !important;
    }

    /* Tabelle selbst: feste Pixelbreite aufheben, volle Breite nutzen */
    html body #main#main .cte_text.block:has(table) table {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        table-layout: fixed !important;
    }

    /* Feste Zellbreiten (354.7px etc.) aufheben, gleichmäßig aufteilen */
    html body #main#main .cte_text.block:has(table) table td {
        width: 50% !important;
        max-width: 50% !important;
        box-sizing: border-box !important;
        padding: 0 calc(8/12*1vw) !important;
    }

    /* Bilder innerhalb der Zellen auf die neue Breite anpassen */
    html body #main#main .cte_text.block:has(table) table td img {
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
    }
}


/* ==================================================
    ZUSATZMINUTEN-AUSWAHL BEIM ANRUFEN
    ================================================== */
@media screen and (max-width: 768px) {

    .freemin_select:not(#x):not(#y):not(#z),
    .freemin_select:not(#x):not(#y):not(#z) > label,
    .freemin_select:not(#x):not(#y):not(#z) .row,
    .freemin_select:not(#x):not(#y):not(#z) .row label {
        font-size: 11px !important;
        line-height: 1.5 !important;
    }

    .freemin_select:not(#x):not(#y):not(#z) > label:first-child {
        display: inline-block !important;
        margin-bottom: 12px !important;
        font-size: 11px !important;
    }

    .freemin_select:not(#x):not(#y):not(#z) .row {
        margin: 10px 0 !important;
    }
}

 @media screen and (max-width: 768px) {

    .freemin_select:not(#x):not(#y):not(#z) .row {
        display: flex !important;
        flex-flow: row nowrap !important;
        align-items: center !important;
        gap: 0 !important;
        min-height: 24px !important;
        margin: 12px 0 !important;
    }

    .freemin_select:not(#x):not(#y):not(#z) .row input[type="radio"] {
        display: block !important;
        flex: 0 0 18px !important;
        width: 18px !important;
        height: 18px !important;
        margin: 0 !important;
        padding: 0 !important;
        accent-color: #c66f8c !important;
    }

    .freemin_select:not(#x):not(#y):not(#z) .row label {
        display: block !important;
        flex: 1 1 auto !important;
        width: auto !important;
        margin: 0 0 0 10px !important;
        padding: 0 !important;
        line-height: 24px !important;
    }

    /* Zusatzabstand aus dem HTML der zweiten Zeile ausgleichen */
    .freemin_select:not(#x):not(#y):not(#z)
    .row input[type="radio"]:not(#fmid0) + label {
        margin-left: 6px !important;
    }
}


    /* Zusatzminuten: Spalte „Anrufen/Rückruf“ vollständig entfernen */
    .table:has(a[href*="fmid="]) table tr > th:nth-child(6),
    .table:has(a[href*="fmid="]) table tr > td:nth-child(6) {
        display: none !important;
    }
}


    /* Video-Tabelle vollständig an die mobile Breite anpassen */
    html body #wrapper#wrapper #container#container
    table[style*="662px"]:not(#x):not(#y) {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 18px auto !important;
        border-collapse: separate !important;
        border-spacing: 8px !important;
        table-layout: fixed !important;
    }

    /* Vierte leere Spalte entfernen */
    html body #wrapper#wrapper #container#container
    table[style*="662px"]:not(#x):not(#y)
    tr > td:nth-child(4) {
        display: none !important;
    }

    /* Die drei Video-Spalten gleich breit */
    html body #wrapper#wrapper #container#container
    table[style*="662px"]:not(#x):not(#y)
    tr > td:nth-child(-n+3) {
        width: 33.333% !important;
        min-width: 0 !important;
        max-width: none !important;
        padding: 0 !important;
        text-align: center !important;
        vertical-align: middle !important;
        box-sizing: border-box !important;
    }

    /* Überschriften einheitlich */
    html body #wrapper#wrapper #container#container
    table[style*="662px"]:not(#x):not(#y)
    tr:first-child > td:nth-child(-n+3) {
        height: 68px !important;
        padding: 6px 3px !important;
        background: #fcf3f6 !important;
        border-radius: 5px !important;
    }

    html body #wrapper#wrapper #container#container
    table[style*="662px"]:not(#x):not(#y)
    tr:first-child span,
    html body #wrapper#wrapper #container#container
    table[style*="662px"]:not(#x):not(#y)
    tr:first-child strong {
        font-size: 14px !important;
        line-height: 1.25 !important;
        color: #b65f7d !important;
    }

    html body #wrapper#wrapper #container#container
    table[style*="662px"]:not(#x):not(#y) p {
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Alle Videobilder gleich groß */
    html body #wrapper#wrapper #container#container
    table[style*="662px"]:not(#x):not(#y)
    tr:nth-child(2) img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        object-fit: cover !important;
        margin: 0 auto !important;
        border: 3px solid #e7c4cf !important;
        border-radius: 5px !important;
        box-shadow: 0 4px 10px rgba(104, 66, 79, 0.15) !important;
        box-sizing: border-box !important;
    }
}

/* ==================================================
   BUSYLIST: WAAGERECHT WISCHEN + SEITE SENKRECHT SCROLLEN
   MUSS GANZ ANS ENDE DER NEW.CSS
   ================================================== */

@media screen and (max-width: 768px) {

    html body #wrapper#wrapper #container#container
    #main#main .busylist {
        touch-action: pan-x pan-y !important;
        overscroll-behavior-y: auto !important;
    }

    html body #wrapper#wrapper #container#container
    #main#main .busylist > .inside {
        overflow-x: auto !important;
        overflow-y: hidden !important;

        /* Beide Wischrichtungen zulassen */
        touch-action: pan-x pan-y !important;

        /* Horizontal in der Liste bleiben,
           vertikal die Seite weiterscrollen */
        overscroll-behavior-x: contain !important;
        overscroll-behavior-y: auto !important;

        -webkit-overflow-scrolling: touch !important;
    }

    html body #wrapper#wrapper #container#container
    #main#main .busylist > .inside > ul,
    html body #wrapper#wrapper #container#container
    #main#main .busylist > .inside li,
    html body #wrapper#wrapper #container#container
    #main#main .busylist > .inside a,
    html body #wrapper#wrapper #container#container
    #main#main .busylist > .inside img {
        touch-action: pan-x pan-y !important;
    }
}
/* ==================================================
BUSYLIST: WAAGERECHT WISCHEN + SEITE SENKRECHT SCROLLEN
MUSS GANZ ANS ENDE DER NEW.CSS
================================================== */
html body #wrapper#wrapper #container#container
#main#main .busylist {
touch-action: pan-x pan-y !important;
overscroll-behavior-y: auto !important;
}

html body #wrapper#wrapper #container#container
#main#main .busylist > .inside {
overflow-x: auto !important;
overflow-y: hidden !important;

/* Beide Wischrichtungen zulassen */
touch-action: pan-x pan-y !important;

/* Horizontal in der Liste bleiben,
vertikal die Seite weiterscrollen */
overscroll-behavior-x: contain !important;
overscroll-behavior-y: auto !important;

-webkit-overflow-scrolling: touch !important;
}

html body #wrapper#wrapper #container#container
#main#main .busylist > .inside > ul,
html body #wrapper#wrapper #container#container
#main#main .busylist > .inside li,
html body #wrapper#wrapper #container#container
#main#main .busylist > .inside a,
html body #wrapper#wrapper #container#container
#main#main .busylist > .inside img {
touch-action: pan-x pan-y !important;
}
}



/* ==================================================
   KUNDENMENÜ – E-MAIL-BERATUNG SICHTBAR MACHEN
   ================================================== */

    /* Menüeintrag selbst – auch auf der aktiven Seite */
    html body #wrapper#wrapper #container#container
    #left#left nav ul.level_1
    > li:has(> a[href="Email-Beratungen"]) {
        display: block !important;
        visibility: visible !important;
        position: relative !important;

        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        opacity: 1 !important;
        overflow: visible !important;
    }

    /* Link beziehungsweise Button */
    html body #wrapper#wrapper #container#container
    #left#left nav ul.level_1
    > li > a[href="Email-Beratungen"] {
        display: flex !important;
        visibility: visible !important;

        width: 100% !important;
        min-width: 0 !important;
        min-height: 50px !important;

        margin: 0 !important;
        padding: 8px 10px !important;

        align-items: center !important;
        justify-content: center !important;

        background: #fcf3f6 !important;
        color: #75354d !important;
        border: 1px solid #e7c4cf !important;
        border-radius: 5px !important;

        font-size: 12px !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
        text-align: center !important;
        text-decoration: none !important;

        opacity: 1 !important;
        box-sizing: border-box !important;
    }

    /* Aktiver Menüpunkt */
    html body #wrapper#wrapper #container#container
    #left#left nav ul.level_1
    > li.active > a[href="Email-Beratungen"] {
        background: #c9909f !important;
        color: #ffffff !important;
        border-color: #c9909f !important;
    }
}
/* ==================================================
   E-MAIL-BERATUNG – MOBILE TABELLE SCROLLBAR
   gleiche Technik wie bei „Meine Rufnummern“
   ================================================== */
@media screen and (max-width: 768px) {

    #mailconContent > .table {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-x pan-y !important;
    }

    #mailconContent > .table > table {
        width: 760px !important;
        min-width: 760px !important;
        max-width: 760px !important;
        margin: 0 !important;
    }
}

@media screen and (max-width: 768px) {
    html body #mailconContent > div.table {
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    html body #mailconContent > div.table > table {
        min-width: 760px !important;
        width: 760px !important;
        max-width: none !important;
    }
}

/* Hinweis zur Erstaufladung ausblenden */
.mod_recharge > h1 + p {
    display: none !important;
}

/* Kunden-Nachrichten – Schrift etwas kleiner */
@media screen and (max-width: 768px) {

    #formPM table {
        font-size: 12px !important;
    }

    #formPM table th,
    #formPM table td,
    #formPM table td a {
        font-size: 10px !important;
        line-height: 1.3 !important;
    }
}