:root                           { --font-family: 'OpenSans', sans-serif; --font-size: 13px; --line-height: 20px; }
:root                           { --text-color: #333; }

/* ==== COMMON SETTINGS ==== */

html, body, h1, h2, h3,
h4, p, ul, ol, li               { margin:0; padding: 0; }
body                            { font-family: var(--font-family); font-size: var(--font-size); }
body                            { line-height: var(--line-height); color: var(--text-color); }
p                               { padding-bottom: 15px; }
a                               { text-decoration: none; }
ul                              { list-style-type: none; }
p a:hover                       { text-decoration: underline; }
.clear                          { clear: both; }
.hide                           { display: none; }
.sysmsg.error                   { color: red; }
.tabnav                         { border-bottom: 1px dashed #d0d0d0; }
.tabnav li a                    { margin-right: 5px; border-radius: 6px 6px 0px 0px; color: #fff; }
.tabnav li a                    { background: linear-gradient(to top, #256b8f 0%, #40a3d4 50%, #9ad7f3 100%); }
.tabnav li.active a             { background: linear-gradient(to top, #c94f00 0%, #fa8231 48%, #ffc08d 100%); font-weight: bold; }
.right                          { float: right; }

/* ==== HEADINGS ==== */

h1, h2, h3, h4, h5, h6          { font-family: DMSerifText, sans-serif; font-weight: normal; margin-bottom: 20px; }

/* ==== FORMS ==== */

label                           { display: inline-block; width: 200px; }
.text, .select                  { border: none; }
.submit, .button                { border: none; cursor: pointer; }
form .row                       { display: flex; align-items: center; margin-bottom: 15px; }

form .row label                 { width: 180px; flex-shrink: 0; font-size: 13px; color: #333; }

form .text,
form .select               { flex: 1; height: 44px; padding: 0 15px; border: 1px solid #d0d0d0; }
form .text,
form .select               { border-radius: 6px; background: #fff; font-family: var(--font-family); }
form .text,
form .select               { font-size: 13px; color: #333; outline: none; box-sizing: border-box; }

form .text:focus,
form .select:focus         { border-color: #2d98da; }

form .row .help                 { display: none; }

#main .textdiv, textarea        { width: calc(100% - 2px ); }
textarea                        { border: 1px solid #d0d0d0; color: #333; border-radius: 6px; padding: 10px; }

/* Passwort-Wrapper */

form .row .pw_input             { flex: 1; display: flex; align-items: center; border: 1px solid #d0d0d0; }
form .row .pw_input             { border-radius: 6px; background: #fff; padding: 0 15px; height: 44px; }
form .row .pw_input             { box-sizing: border-box; }

form .row .pw_input .text       { flex: 1; border: none; height: 100%; padding: 0; border-radius: 0; font-size: 13px; }
form .row .pw_input .text       { color: #333; outline: none; width: 100%; }

form .row .pw_input:focus-within { border-color: #2d98da; }

.table, table                   { width: 100%; }

/* Telefon-Wrapper */

form .row .phone                { flex: 1; display: flex; gap: 10px; }

form .row .phone .select        { width: 110px; flex-shrink: 0; }

form .row .phone .text          { flex: 1; }

/* Checkbox-Zeilen */

form .row.check                 { padding-left: 180px; align-items: flex-start; gap: 10px; margin-bottom: 10px; }
form .row.check                 { max-width: 100%; box-sizing: border-box; }

form .row.check input[type="checkbox"] { width: 16px; height: 16px; flex-shrink: 0; margin-top: 3px; }
form .row.check input[type="checkbox"] { accent-color: #2d98da; cursor: pointer; }

form .row.check label           { flex: 1; min-width: 0; white-space: normal !important; overflow-wrap: break-word; }
form .row.check label           { font-size: 13px; line-height: 20px; color: #333; cursor: pointer; }

form .row.check label a         { color: #2d98da; text-decoration: underline; }

.button, .submit                { background: #fa8231; color: #fff; font-family: var(--font-family), serif; font-weight: 600; }
.button, .submit                { font-size: 16px; padding: 10px 30px; border-radius: 6px; cursor: pointer; }

form .submit:hover              { background: #e8721f; }
.cte_form .submit,
.mod_register .submit           { margin-left: 180px; }

/* ==== PAGE POSITIONING ==== */

#footer,
#wrapper                        { max-width: 1350px; margin: 0 auto; position: relative; z-index: 1; }

/* ==== ICONS ==== */

.ico:before, .icon:before       { content: ''; font-family: "Font Awesome 7 Pro"; margin-right: 5px; }
.ico:before, .icon:before       { color: var(--color-muted); padding-left: 1px; }
.ico.home:before                { content: '\f015'; }
.ico.status:before,
.icon.status:before             { content: '\f205'; }
.ico.phone:before               { content: '\f095'; }
.icon.user:before,
.ico.user:before                { content: '\f007'; }
.ico.envelope:before,
.icon.mail:before,
.ico.mail:before                { content: '\f0e0'; }
.ico.calendar:before            { content: '\f073'; }
.ico.folder:before              { content: '\f07c'; }
.ico.list:before                { content: '\f03a'; }
.ico.hourglass:before           { content: '\f251'; }
.ico.image:before               { content: '\f1c5'; }
.icon.time:before,
.ico.time:before                { content: '\f017'; }
.ico.pdf:before                 { content: '\f1c1'; }
.icon.credit:before,
.ico.credit:before              { content: '\f0d6'; }
.ico.profile:before             { content: '\f036'; }
.ico.favorite:before            { content: '\f004'; }
.ico.book:before                { content: '\f2b9'; }
.ico.mailcon:before             { content: '\f199'; margin-right: 7px; }
.icon.note:before,
.ico.note:before                { content: '\f249'; }
.icon.medal:before,
.ico.medal:before               { content: '\f091'; }
.ico.ban:before                 { content: '\f05e'; }
.ico.globe:before               { content: '\f0ac'; }
.ico.personal:before            { content: '\f044'; }
.ico.document:before            { content: '\f1c1'; }
.stars                          { display: flex; column-gap: 4px; }
.star                           { display: inline-block; width: 16px; height: 16px; }
.star                           { background-image: url('img/star.svg'); background-size: contain; }

/* ------ Background Image ------ */

#top                            { position: relative; z-index: 1; background-image: url('img/background.png'); }
#top                            { background-size: cover; background-position: center top; }
#top                            { background-attachment: fixed; background-repeat: no-repeat; }

#top::before                    { content: ''; position: fixed; inset: 0; }
#top::before                    { background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(102, 102, 102, 0.2)); }
#top::before                    { pointer-events: none; z-index: 0; }

/* ------ Header ------ */

#header                         { margin: 10px 0 30px 0; }

#header .inside                 { background: #fff; height: 70px; border-radius: 10px; }
#header .inside                 { box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1); display: flex; align-items: center; }
#header .inside                 { padding: 0 20px; gap: 20px; }

/* Logo */

#header .logo                   { width: 222px; height: 60px; flex-shrink: 0; }

#header .logo a                 { display: block; width: 100%; height: 100%; }
#header .logo a                 { background-image: url('img/logo-icon.svg'), url('img/logo-text.svg'); }
#header .logo a                 { background-repeat: no-repeat, no-repeat; background-size: 60px 60px, 150px 47px; }
#header .logo a                 { background-position: left center, 72px center; }

/* Nav */

#header .nav                    { flex: 1; display: flex; justify-content: center; }

#header .nav ul.level_1         { display: flex; gap: 20px; align-items: center; }

#header .nav .level_1 a         { font-family: var(--font-family); font-weight: 600; font-size: 16px; }
#header .nav .level_1 a         { line-height: 30px; color: #4b6584; white-space: nowrap; }

#header .nav .level_1 li.active a { color: #2d98da; }

#header .nav .level_1 a:hover   { color: #2d98da; }

/* Login-Button */

#header span.button.login       { background: #fa8231; color: #fff; font-family: var(--font-family); font-weight: 600; }
#header span.button.login       { font-size: 16px; line-height: 30px; padding: 5px 20px; border-radius: 5px; }
#header span.button.login       { cursor: pointer; white-space: nowrap; flex-shrink: 0; }

/* ------ Slider ------ */

/* Weißes Karten-Backing */

#before .cte_slider             { position: relative; background: #fff; border-radius: 10px; overflow: hidden; }
#before .cte_slider             { margin: 0 0 30px 0; }

/* Höhe des Slider-Containers auf 400px fixieren */

.cte_slider .sliderContainer    { height: 400px !important; }
.cte_slider .mask               { height: 400px; }

/* Jede Slide */

.cte_slider .cte_text           { position: relative; width: 1350px; height: 400px; overflow: hidden; }

/* Bild-Bereich links (per Pseudo-Element, Bild je Slide überschreiben) */

.cte_slider .cte_text::before   { content: ''; position: absolute; left: 0; top: 0; width: 600px; height: 100%; }
.cte_slider .cte_text::before   { background-size: cover; background-position: center top; }

.cte_slider .slide1::before     { background-image: url('img/slider-1.jpg'); }
.cte_slider .slide2::before     { background-image: url('img/slider-2.jpg'); }
.cte_slider .slide3::before     { background-image: url('img/slider-3.jpg'); }
.cte_slider .slide4::before     { background-image: url('img/slider-4.jpg'); }

/* Überschrift – absolut auf die rechte Seite positioniert */

.cte_slider .cte_text > h2.bh   { position: absolute; left: 690px; top: 100px; font-family: 'DMSerifText', serif; }
.cte_slider .cte_text > h2.bh   { font-size: 40px; line-height: 50px; color: #333; font-weight: normal; }
.cte_slider .cte_text > h2.bh   { white-space: nowrap; }

/* Fließtext-Absatz */

.cte_slider .cte_text > p:first-of-type { position: absolute; left: 690px; top: 160px; width: 580px; }
.cte_slider .cte_text > p:first-of-type { font-family: var(--font-family); font-size: 16px; line-height: 25px; }
.cte_slider .cte_text > p:first-of-type { color: #333; padding-bottom: 0; }

/* Button-Absatz */

.cte_slider .cte_text > p:last-of-type { position: absolute; left: 690px; top: 255px; padding-bottom: 0; }

/* Button */

.cte_slider .cte_text a.button  { display: inline-block; background: #fa8231; color: #fff; }
.cte_slider .cte_text a.button  { font-family: var(--font-family); font-weight: 600; font-size: 16px; }
.cte_slider .cte_text a.button  { line-height: 30px; padding: 5px 40px; border-radius: 5px; white-space: nowrap; }

.cte_slider .cte_text a.button:hover { background: #e8721f; }

/* Navigations-Punkte (Dots) */

.cte_slider > .nav              { position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); }
.cte_slider > .nav              { display: flex !important; gap: 10px; align-items: center; z-index: 10; }

.cte_slider > .nav li           { background: #4b6584; height: 10px; border-radius: 5px; width: 30px; opacity: 0.2; }
.cte_slider > .nav li           { cursor: pointer; font-size: 0; line-height: 0; text-indent: -9999px; }

.cte_slider > .nav li.active    { width: 60px; opacity: 1; }

/* Pfeil-Buttons ausblenden */

.cte_slider .btn                { display: none !important; }

/* ------ Online / Berater im Gespräch ------ */

#busy                           { display: flex; flex-wrap: wrap; column-gap: 30px; justify-content: center; }
#busy                           { align-items: flex-start; background: #fff; border-radius: 10px; }
#busy                           { padding: 20px 40px 45px; margin: 0 0 30px 0; }

#busy h2.bh                     { width: 100%; font-family: 'DMSerifText', serif; font-size: 24px; line-height: 40px; }
#busy h2.bh                     { color: #333; font-weight: normal; text-align: center; margin-bottom: 20px; }

#busy .box                      { display: flex; flex-direction: column; align-items: center; gap: 5px; width: 100px; }

#busy .box a:first-child        { display: block; width: 100px; height: 100px; overflow: hidden; border-radius: 10px; }
#busy .box a:first-child        { flex-shrink: 0; }

#busy .box img                  { width: 100px; height: 100px; border-radius: 10px; object-fit: cover; display: block; }

#busy .box a.name               { font-family: var(--font-family); font-weight: 600; font-size: 13px; }
#busy .box a.name               { line-height: 20px; color: #4b6584; text-align: center; display: block; width: 100%; }

#busy .box a.name:hover         { color: #2d98da; }

/* ------ Agentlist (Berater-Liste) ------ */

.agentlist                      { background: #fff; border-radius: 10px; overflow: hidden; }

.profile                        { display: grid; grid-template-columns: 150px 1fr 170px; }
.profile                        { grid-template-areas: "photo info buttons" "photo foot buttons"; column-gap: 30px; }
.profile                        { padding: 30px; border-bottom: 1px dashed #f0f0f0; }

.profile:last-child             { border-bottom: none; }

/* Foto */

.profile > a.photo              { grid-area: photo; grid-row: 1 / 3; display: block; width: 150px; height: 150px; }
.profile > a.photo              { overflow: hidden; border-radius: 10px; align-self: start; }

.profile .img.pic               { width: 150px; height: 150px; border-radius: 10px; object-fit: cover; display: block; }

/* Info-Bereich (Name, Sterne, Teaser) */

.profile > .info                { grid-area: info; display: grid; grid-template-columns: 1fr auto; }
.profile > .info                { align-content: start; gap: 4px 10px; }

.profile h3                     { grid-column: 1; grid-row: 1; }

.profile h3 a                   { font-family: 'DMSerifText', serif; font-size: 24px; font-weight: normal; }
.profile h3 a                   { line-height: 30px; color: #333; }

.profile h3 a:hover             { color: #2d98da; }

/* Beratungen + Berater-ID */

.profile .info .meta            { grid-column: 1 / -1; display: flex; gap: 10px; font-size: 10px; color: #777; }
.profile .info .meta            { line-height: 20px; }

/* Bewertungssterne – rechts neben dem Namen */

.profile .info a.rating         { grid-column: 2; grid-row: 1; display: flex; align-items: center; gap: 10px; }
.profile .info a.rating         { align-self: center; }

.profile .info a.rating .amount { font-size: 14px; color: #333; }

.profile .info p.teaser         { grid-column: 1 / -1; font-size: 13px; line-height: 20px; color: #333; }
.profile .info p.teaser         { padding-bottom: 0; }

.profile .last_rating           { display: none; }

/* Buttons */

.profile > .right.buttons       { grid-area: buttons; display: flex; flex-direction: column; gap: 6px; }
.profile > .right.buttons       { align-self: start; }

.profile .right.buttons .button { display: flex; align-items: center; justify-content: center; gap: 10px; }
.profile .right.buttons .button { padding: 5px 20px; border-radius: 5px; font-size: 13px; font-weight: 600; }
.profile .right.buttons .button { color: #fff; white-space: nowrap; cursor: pointer; }

.profile .button.online         { background: #20bf6b; }
.profile .button.busy           { background: #fc5c65; }
.profile .button.break          { background: #fd9644; }
.profile .button.offline        { background: #4b6584; }

.profile .button.email          { background: #2d98da; }

/* Chat wrapper transparent in flex column */

.profile .right.buttons .chat   { display: contents; }

/* Button icons */

.profile .button span.phone,
.profile .button span.chat-icon,
.profile .button span.mail      { display: inline-block; width: 16px; height: 16px; background-repeat: no-repeat; }
.profile .button span.phone,
.profile .button span.chat-icon,
.profile .button span.mail      { background-size: contain; background-position: center; flex-shrink: 0; }

.profile .button span.phone     { background-image: url('img/btn-phone.svg'); }
.profile .button span.chat-icon { background-image: url('img/btn-chat.svg'); }
.profile .button span.mail      { background-image: url('img/btn-email.svg'); }

.profile .tariff                { font-size: 12px; color: #999; text-align: center; display: block; }

.profile .tariff.disable        { text-decoration: line-through; }

.profile .tariff.campaign       { color: #eb3b5a; font-weight: 600; }

/* Berater des Tages badge */

.profile .badge-today           { display: inline-block; background: #eb3b5a; color: #fff; font-size: 11px; }
.profile .badge-today           { font-family: var(--font-family); font-weight: 600; text-transform: uppercase; }
.profile .badge-today           { letter-spacing: 0.03em; border-radius: 3px; padding: 2px 6px; margin-left: 10px; }
.profile .badge-today           { vertical-align: middle; line-height: 1.3; }

/* Aktueller Hinweis */

.profile > .foot                { grid-area: foot; background: #4b6584; color: #fff; font-size: 13px; }
.profile > .foot                { line-height: 20px; padding: 5px 10px; border-radius: 5px; align-self: start; }
.profile > .foot                { margin-top: 8px; }

.profile > .foot strong         { font-weight: normal; }

/* ------ Layout: 2-Spalten ------ */

#container                      { display: grid; column-gap: 30px; grid-template-columns: 1fr 315px }

/* ------ Aside: Kategorien ------ */

.aside .block,
#main .agentlist,
#main .block                    { margin-bottom: 30px; }
.aside .bh                      { font-size: 24px; margin-bottom: 20px; }
.aside .block, #main .block     { background-color: #fff; border-radius: 10px; padding: 30px 20px; }

.mod_catnav                     { background: #fff; border-radius: 10px; padding: 30px 30px 40px; }

.mod_catnav h3.bh               { font-family: 'DMSerifText', serif; font-size: 0; line-height: 0; color: #333; }
.mod_catnav h3.bh               { margin-bottom: 20px; }

.mod_catnav h3.bh::after        { content: 'Beratungsmethoden'; font-family: 'DMSerifText', serif; font-size: 24px; }
.mod_catnav h3.bh::after        { line-height: 30px; display: block; }

.mod_catnav ul.level_1          { display: flex; flex-direction: column; gap: 20px; }

.mod_catnav ul.level_1 li a     { font-family: var(--font-family); font-weight: 600; font-size: 14px; }
.mod_catnav ul.level_1 li a     { line-height: 30px; color: #4b6584; display: flex; align-items: center; height: 30px; }
.mod_catnav ul.level_1 li a     { padding-left: 50px; background-repeat: no-repeat; background-size: 30px 30px; }
.mod_catnav ul.level_1 li a     { background-position: left center; }

.mod_catnav ul.level_1 li a:hover { color: #2d98da; }

/* Kategorie-Icons */

.mod_catnav a[href^="kartenlegen"] { background-image: url('img/cat-kartenlegen.svg'); }
.mod_catnav a[href^="hellsehen"] { background-image: url('img/cat-hellsehen.svg'); }
.mod_catnav a[href^="selbstfindung"] { background-image: url('img/cat-selbstfindung.svg'); }
.mod_catnav a[href^="beruf"]    { background-image: url('img/cat-beruf.svg'); }
.mod_catnav a[href^="familie"]  { background-image: url('img/cat-familie.svg'); }
.mod_catnav a[href^="liebe"]    { background-image: url('img/cat-liebe.svg'); }
.mod_catnav a[href^="traumdeutung"] { background-image: url('img/cat-traumdeutung.svg'); }
.mod_catnav a[href^="medium"]   { background-image: url('img/cat-medium.svg'); }
.mod_catnav a[href^="astrologie"] { background-image: url('img/cat-astrologie.svg'); }

/* ------ Aside: Suche ------ */

.agent_search                   { background: #fff; border-radius: 10px; padding: 18px 30px; margin-bottom: 30px; }

.agent_search form              { display: flex; align-items: center; gap: 10px; }

.agent_search .text             { flex: 1; font-family: var(--font-family); font-size: 13px; line-height: 20px; }
.agent_search .text             { color: #333; outline: none; }

.agent_search .submit           { width: 24px; height: 24px; }
.agent_search .submit           { background: url('img/search-icon.svg') center/24px no-repeat; font-size: 0; }
.agent_search .submit           { flex-shrink: 0; cursor: pointer; }

/* ------ Aside: Slider-Blöcke ------ */

.newAgents,
.newRatings                     { background: #fff; border-radius: 10px; padding: 30px; }

.newAgents h3.bh,
.newRatings h3.bh               { font-family: 'DMSerifText', serif; font-size: 24px; line-height: 30px; color: #333; }
.newAgents h3.bh,
.newRatings h3.bh               { margin-bottom: 20px; }

.css_slider .mask               { overflow: hidden; }
.css_slider .btn                { display: none; }

.css_slider .item               { display: flex; flex-wrap: wrap; gap: 0 10px; }

.css_slider .item > img         { width: 100px; height: 100px; object-fit: cover; border-radius: 10px; flex-shrink: 0; }

.css_slider .item .side         { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.css_slider .item .side         { justify-content: flex-start; gap: 4px; }

.css_slider .item .side h4 a    { font-family: var(--font-family); font-weight: 600; font-size: 16px; }
.css_slider .item .side h4 a    { line-height: 20px; color: #4b6584; }

.css_slider .item .side h4 a:hover { color: #2d98da; }

.css_slider .item .pin          { font-size: 10px; color: #777; line-height: 18px; }

.css_slider .item .ratings      { font-size: 10px; color: #777; line-height: 18px; }

.css_slider .item .stars::before { content: '★★★★★'; font-size: 13px; color: #f7b731; letter-spacing: 1px; }
.css_slider .item .stars::before { display: block; line-height: 20px; }

.css_slider .item > p           { flex-basis: 100%; font-size: 13px; line-height: 20px; color: #666; }
.css_slider .item > p           { padding-bottom: 0; margin-top: 10px; display: -webkit-box; -webkit-line-clamp: 3; }
.css_slider .item > p           { -webkit-box-orient: vertical; overflow: hidden; }

/* ------ Main ------ */

#main .bh, aside .bh            { color: #333; font-size: 24px; font-style: normal; font-weight: 400; }
#main .bh, aside .bh            { line-height: 30px; margin-bottom: 10px; }
#main .pagination               { display: block; text-align: center; margin-bottom: 60px; }
#main .pagination .total        { display: none; }
#main .pagination li            { display: inline-block }
#main .pagination a,
#main .pagination span          { display: block; width: 40px; height: 40px; background: #4b6584; color: #fff; }
#main .pagination a,
#main .pagination span          { font-size: 16px; font-weight: 600; border-radius: 5px; text-decoration: none; }
#main .pagination a,
#main .pagination span          { text-align: center; line-height: 40px; margin-right: 5px; }
#main .pagination .active a     { display: inline-block; background: #FA8231; width: 40px; height: 40px; color: #fff; }
#main .pagination .active a     { font-size: 16px; font-weight: 600; border-radius: 5px; text-decoration: none; }
#main .pagination .next a       { margin-right: 0; }

#main .card-background          { background: #D6BA6F; position: relative; min-height: 190px; padding-left: 510px; }
#main .card-background          { padding-right: 65px; background-image: url('img/Karten2.png'); }
#main .card-background          { background-repeat: no-repeat; }
#main .card-background .bh      { font-size: 18px; padding-right: 65px; }

#main .cte_tariffs              { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; padding: 20px 30px; }
#main .cte_tariffs              { background-color: #fff; border-radius: 10px; }
#main .cte_tariffs p            { text-align: left; padding: 20px 30px 60px; color:#333; font-size: 10px; }
#main .cte_tariffs p            { line-height: 20px; font-weight: 400; }

/* ------ Beraterbereich -----*/

#main .mod_status .bh           { text-align: center; padding-bottom: 10px; }
#main .bh                       { text-align: center; }
#main .create                   { padding: 10px; background-color:#40a3d4; border-radius: 6px; color: #fff; }
#main .text.search              { padding: 10px;  outline: none; border: 1px solid #d0d0d0; border-radius: 6px; }

#main .inside .href .berater-nachrichten { background-color:#919191 }
.aside .nav a                   { line-height: 30px; color: #6f839c; }

#wrapper #main div.search       { width: 300px; }
#wrapper #main div.search .submit { padding: 10px 30px; border-radius: 6px;  }

/*------ Kundenbereich ------*/

.mod_pm .tabnav                 { margin-top: 25px; }

.mod_recharge .payment          { margin-top: 30px; }
.mod_recharge .payment:first-of-type { margin-top: 0; }
.mod_recharge h3                { font-size: 1.5rem; }

/* ------ Footer ------ */

#footer .inside                 { display: grid; grid-template-columns: 148px 1fr auto; grid-template-rows: auto auto; }
#footer .inside                 { align-items: center; background: #fff; border-radius: 10px; padding: 20px 30px; }

/* Logo */

#footer .logo                   { grid-column: 1; grid-row: 1; display: block; width: 130px; height: 36px; }
#footer .logo                   { background-image: url('img/logo-icon.svg'), url('img/logo-text.svg'); }
#footer .logo                   { background-repeat: no-repeat, no-repeat; background-size: 36px 36px, 85px auto; }
#footer .logo                   { background-position: left center, 44px center; }

/* Navigationslinks */

#footer .nav                    { grid-column: 2; grid-row: 1; text-align: center; }

#footer .nav ul                 { list-style: none; margin: 0; padding: 0; }

#footer .nav li                 { display: inline-block; margin: 0 5px; }

#footer .nav a                  { color: #4b6584; font-size: 13px; line-height: 20px; text-decoration: none; }

#footer .nav a:hover            { color: #2d98da; }

/* Social Icons */

#footer .social                 { grid-column: 3; grid-row: 1; }

#footer .social a               { display: inline-block; width: 24px; height: 24px; margin-left: 10px; }
#footer .social a               { background-size: contain; background-repeat: no-repeat; background-position: center; }

#footer .social a.facebook      { background-image: url('img/social-facebook.svg'); }
#footer .social a.tiktok        { background-image: url('img/social-tiktok.svg'); }
#footer .social a.instagram     { background-image: url('img/social-instagram.svg'); }

/* Zahlungsarten – gesamte Breite, zweite Zeile */

#footer .paymeth                { grid-column: 1 / -1; grid-row: 2; padding-top: 15px; }

#footer .paymeth > div          { display: flex; justify-content: center; align-items: center; gap: 20px; }

#footer .paymeth br             { display: none; }

#footer .paymeth img            { height: 25px !important; width: auto !important; max-width: none !important; }

/* Widerrufsformular-Link ausblenden */

.mod_register p,
.mod_register .retraction       { padding-left: 210px; }

/* Copyright */

.contribute                     { text-align: center; color: #333; background-color: transparent; font-size: 12px; }
.contribute                     { line-height: 20px; padding: 10px 0; }
