* {margin: 0; padding: 0; box-sizing: border-box;}

@font-face {font-family: 'Poppins'; src: url('../fonts/poppins-latin-400-normal.woff2') format('woff2'); font-weight: 400; font-style: normal;}
@font-face {font-family: 'Poppins'; src: url('../fonts/poppins-latin-400-italic.woff2') format('woff2'); font-weight: 400; font-style: italic;}
@font-face {font-family: 'Poppins'; src: url('../fonts/poppins-latin-500-normal.woff2') format('woff2'); font-weight: 500; font-style: normal;}
@font-face {font-family: 'Poppins'; src: url('../fonts/poppins-latin-600-normal.woff2') format('woff2'); font-weight: 600; font-style: normal;}
@font-face {font-family: 'Poppins'; src: url('../fonts/poppins-latin-700-normal.woff2') format('woff2'); font-weight: 700; font-style: normal;}

body {font-family: 'Poppins', sans-serif; background-color: #fff;}
h1, h2, h3, h4 {color: #303030; letter-spacing: 0.063rem;}
h1 {font-size: 1.5rem; line-height: 2.25rem; margin-bottom: 1.1rem; font-weight: 700;}
h2 {font-size: 1.23rem; line-height: 2rem; padding-top: 1.5rem; margin-bottom: 1.1rem; font-weight: 700;}
h3 {font-size: 1.125rem; line-height: 1.85rem; padding-top: 1.5rem; margin-bottom: 1.1rem; font-weight: 700;}
h4 {font-size: 1.125rem; line-height: 1.85rem; padding-top: 1.45rem; margin-bottom: 1rem; font-weight: 600;}
p {margin:0 0 1rem 0; line-height: 1.625rem; font-size: 1rem; font-weight: 400; letter-spacing: 0.05rem;}
a {text-decoration:none;}
ul {list-style: none;}
q {font-style: italic; font-weight: normal; color: #595656;}
hr {display: block; border: none; border-top: 2px solid #aab4cc; box-shadow: none; border-bottom: none; margin: 2.5rem 0rem 0.7rem 0rem;}

.full-height {min-height: 100vh; display: flex; flex-direction: column;}

.weitere-artikel {font-size:1.3rem; text-align: center; margin-bottom: 1.3rem;}
.category-title {text-align: center; margin-bottom:1.8rem;}
.category-title-with-note {text-align: center; margin-bottom:0.2rem;}
.autor-seite {margin-bottom:1.5rem;}
.category-note {display: block; font-size: 1rem; color: #666; font-weight:500; text-align: center; margin-bottom:1.95rem;}
.klein-zentriert {text-align: center; font-size: 1.125rem; line-height: 1.75rem; padding-top: 0.1rem; margin-bottom: 0.9rem;}
.h3-small {font-size: 1.05rem; line-height: 1.75rem; font-weight: 600; padding-top: 1rem; margin-bottom: 0.9rem;}
.heading-smaller {font-size: 1.02rem; line-height: 1.675rem; color: #000; font-weight: 600; padding-top: 0.5rem; margin-bottom: 0.4rem;}
.clear {clear: both;}

.nav-container {display: flex; justify-content: space-between; align-items: center; background-color:#fff; padding: 15px 20px; position: fixed; width: 100%; top: 0; left: 0; z-index: 1000; border-bottom:2px solid #e1326b;}
.brand {display: flex; align-items: center;}
.nav-logo {height: 40px; padding-right: 15px;}
.nav-toggle {font-size: 1.5em; background: none; border: none; color:#4f4f4f; cursor: pointer; display: none;}
.nav-menu {list-style: none; display: flex; gap: 20px;}
.nav-menu li a {text-decoration: none; color:#4f4f4f; font-size: 1em; transition: color 0.3s; font-weight:500;}
.nav-menu li a:hover {color: #f48840;}

.search-icon {cursor: pointer; font-size: 20px; color: black; transition: color 0.3s; margin-right: 10px;}
.search-icon:hover {color: #f48840;}
#search-overlay {display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.9); align-items: center; justify-content: center; z-index: 1000;}
.search-box {background: white; padding: 0; border-radius: 10px; width: 80%; max-width: 600px; text-align: center; position: relative; display: flex; flex-direction: column; align-items: stretch;}
.search-content {padding: 28px 20px 10px 20px;}
.close-btn {position: absolute; top: -45px; left: 50%; transform: translateX(-50%); background: none; border: none; cursor: pointer; color: white; background-color: #383838; border-radius: 50%; width: 35px; height: 35px; display: flex; align-items: center; justify-content: center; padding: 0;}
.close-btn::before, .close-btn::after {content: ""; position: absolute; width: 3px; height: 19px; background-color: white;}
.close-btn::before {transform: rotate(45deg);}
.close-btn::after {transform: rotate(-45deg);}
.close-btn:hover {background-color: #555; color: black;}
#search {width: 100%; padding: 12px; font-size: 18px; border: 1px solid #ccc; border-radius: 5px; outline: none; margin-bottom: 18px;}
#results {text-align: left; max-height: 300px; overflow-y: scroll !important; scrollbar-width: thin; scrollbar-color: #888 #f1f1f1; padding-right: 10px;}
#results::-webkit-scrollbar {width: 8px;}
#results::-webkit-scrollbar-thumb {background: #bbb; border-radius: 4px;}
#results::-webkit-scrollbar-track {background: #f1f1f1;}
.result-item {padding: 10px; border-bottom: 1px solid #e4e4e4; margin-bottom:0;}
.result-item:last-of-type {border-bottom: 0;}
.result-item a {text-decoration: none; color: black;}
.result-item a:hover {color: #f48840;}
#scroll-arrow-container {position: relative; width: 100%; text-align: center; padding: 0 0 10px 0;}
#scroll-arrow {font-size: 26px; cursor: pointer; color: #888; transition: color 0.3s, background 0.3s; background: rgba(0, 0, 0, 0.1); padding: 3px 20px; display: inline-block; border-radius: 5px; text-align: center; line-height: 1; -webkit-tap-highlight-color: rgba(0, 0, 0, 0.2);}
#scroll-arrow:hover {background: rgba(0, 0, 0, 0.2); color: black;}

.content-container {max-width: 1100px; margin: 7.5rem auto 2.5rem; padding: 0rem 2rem 0 2rem;}
.legal-page a {text-decoration: none; color: #0066cc; font-weight:400;}
.legal-page a:hover {font-weight:600;}

main {max-width: 860px; margin: 0 auto;}
.overview {max-width: 1000px;}

.breadcrumb {margin-bottom: 1rem;}
.breadcrumb ol {list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; font-size: 14px; font-weight:400;}
.breadcrumb li:first-child a::before {content: "\f015"; font-family: "Font Awesome 6 Free"; font-weight: 900; opacity: 0.7; color: #007bff; margin-right: 5px;}
.breadcrumb li:not(:last-child)::after {content: "»"; margin-left: 6px;}
.breadcrumb a {text-decoration: none; color: #007bff;}
.breadcrumb a:hover {text-decoration: underline;}

.article-hint {background: #f8f9fa; border-left: 4px solid #ffcc00; padding: 14px 16px; margin: 5px 0 20px 0; border-radius: 6px; display: flex; align-items: center; gap: 8px;}
.article-hint span {display: block; font-size: 0.95rem;}
.article-hint a {color: #d68b00; font-weight:600;}
.article-hint a:hover {color: #b37400;}

.author-container {display: flex; align-items: center; gap: 0.75rem; font-size: 0.875rem; color: #444; margin-bottom:1.8rem;}
.author-pic img {margin-bottom:0 !important;width: 75px !important; height: 75px !important; border-radius: 50% !important; object-fit: cover; border: 1px solid #7b7b7b;}
.author-pic img.updated-only {width: 55px !important; height: 55px !important;}
.author-info {display: flex; flex-direction: column; line-height: 1.4rem;}
.author-name span {color: #222;}
.article-meta {display: flex; align-items: center; gap: 0.45rem; font-size: 0.813rem; color: #666;}
.article-meta.date::before {content: "\f073"; font-family: "Font Awesome 6 Free"; font-size: 0.875rem; font-weight: 900; color: #999;}
.article-meta.edit::before {content: "\f044"; font-family: "Font Awesome 6 Free"; font-size: 0.875rem; color: #999;}
.vor-inhaltsverzeichnis {margin-bottom:2.4rem;}

.author-container-mini {display: flex; align-items: center; align-items: center; margin-bottom: 1.5rem;}
.author-container-mini img {width: 40px; height: 40px; border-radius: 50%; margin-bottom: 0;}
.author-container-mini span {margin-left: 0.5rem; font-style: italic; color: #666;}
.vor-inhaltsverzeichnis-mini {margin-bottom:2.1rem;}

.autoren-box {padding: 0 0 1.65rem 0;}
.autoren-einleitung {font-size: 1rem; color: #444; line-height: 1.6; color:#000;}
.autoren-container {display: flex; flex-wrap: wrap; gap: 2rem; margin-top: 1.5rem;}
.autor-card {background-color: #fff; border: 1px solid #ddd; border-radius: 10px; padding: 1.5rem; max-width: 280px; text-align: center; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);}
.autor-card img {width: 100%; height: auto; border-radius: 8px; margin-bottom: 0;}
.autor-card h3 {margin-bottom: 0.5rem; font-weight:600; color: #e1326b; padding-top:1.3rem;}
.autor-card p {font-size: 0.95rem; color: #444; line-height: 1.5; margin-bottom: 0;}

.autor-bereich {overflow: hidden;}
.autor-bild {float: left; width: 150px; margin-right: 1.4rem; padding-bottom: 0.2rem; border-radius: 8px; margin-bottom: 0;}

.inhaltsverzeichnis {margin: 0rem auto 1.4rem; padding: 10px; border: 1px solid #ccc; border-radius: 8px; background-color: #f9f9f9;}
.inhaltsverzeichnis i {margin-right: 9px;}
.toggle-toc {display: inline-flex; width: 100%; position: relative; padding: 9px 25px 9px 9px; font-size: 16px; background-color: #007bff; color: white; border: none; border-radius: 5px; cursor: pointer; display: block;}
.toggle-toc::after {content: "\f078"; font-family: "Font Awesome 6 Free"; font-weight: 900; position: absolute; right: 10px; top: 50%; transform: translateY(-50%) rotate(0deg); transition: transform 0.3s ease;}
.toggle-toc.open::after {transform: translateY(-50%) rotate(180deg);}
.toggle-toc:hover {background-color: #0056b3;}
.toc-content {display: none; margin-top: 15px;}
.toc-title {padding-left: 1rem; font-size: 1.25rem; font-weight: 600; margin-bottom: 0.5rem; color: #333;}
.toc-content ul {list-style: none; padding:0rem 1rem 0.6rem 1rem;}
.toc-content li {margin: 6px 0;}
.toc-content li:last-child {margin-bottom: 0;}
.toc-content li a {text-decoration: none; color: #007bff; font-size: 15px; font-weight: 500;}
.toc-content li a:hover {text-decoration: underline;}
.toc-section {font-size: 16px; font-weight: 500; padding-top: 0.5rem; color: #444;}
.toc-content ul ul {margin-left: 20px; padding:0 0 0.4rem 0.75rem; margin-bottom: 0.5rem; border-left: 2px dotted #ccc;}
.toc-content ul:last-of-type {margin-bottom: 0;}
.toc-content > ul > li:last-child > ul {padding-bottom: 0 !important;}
.toc-content ul ul li a {font-size: 14px; font-weight: 400;}
.toc-content ul ul li a::before {content: "↳ "; font-size: 16px; color: #888;}
.toc-content ul ul ul {margin-left: 20px; padding:0 0 0 0.75rem; margin-bottom: 0; border-left: 2px dotted #ddd;}
.toc-content ul ul ul li a {font-size: 14px; font-weight: 400;}
.toc-content ul ul ul li a::before {content: "⤷ "; color: #aaa;}

article {background-color: #fff;}
article img {display: block; width: 100%; height: auto; margin-bottom: 1.1rem;}
.intro-image {padding-top: 0.5rem;}
article a {text-decoration: underline; text-decoration-color: #aac3f3; text-decoration-thickness: 1px; text-underline-offset: 4px; font-weight: 500; color: #3366cc;}
article a:hover{color: #1a53b0; text-decoration-color: #3366cc; transition: 0.4s;}
article b {font-weight: 500;}
article strong {font-weight: 500;}
.inline-title {font-weight: 600; padding-left: 0;}
.inline-title::before {content: "\2022"; padding-right:0.45rem; font-weight:700;}
article code {background-color: #e8f7e8; color: #0F990F; padding: 2px 4px; border-radius: 4px; font-weight: 600;}
article > ul, .legal-page ul {margin: 0 0 1.25rem 0; line-height: 1.625;}
article > ul > li, .legal-page ul li {display: table; font-size: 1rem; letter-spacing: 0.05rem !important;}
article > ul > li:before, .legal-page ul li:before {content: "\2022"; padding-right:0.5rem; display: table-cell; text-align: right; font-weight:700;}
article > ol {display: block; list-style-type: decimal; margin:0 0 1.25rem 0; padding-left: 1.6rem; line-height:1.625;}
article > ol > li {font-size: 1rem; letter-spacing: 0.05rem;}
article > ul.before-heading, .legal-page ul.before-heading {margin-bottom: 0.94rem;}
article > ol.before-heading {margin-bottom: 0.94rem;}

aside {background-color:#fff; padding-top: 2.4rem; margin-bottom:0; margin-top:2.45rem; border-top: 2px dashed #c6c6c6;}
aside a {text-decoration: none;}
.latest-posts {margin-top: 0; padding-top: 0; border-top: 0;}
.blog-list {padding: 0;}

figure img {margin-bottom:0.4rem !important;}
figcaption {display: inline-block; text-align: left; font-size:0.91rem; color:#646464; margin-bottom:1.1rem;}
.vor-tabelle {margin-bottom:1.5rem !important;} /* Noch anzupassen */

.image-container {display: flex; justify-content: space-between; gap: 4%; margin-bottom: 1.1rem;}
.responsive-image {width: 48%; height: auto; margin-bottom: 0;}

blockquote {font-style: italic; font-weight: normal; background-color:#eeeeee; padding: 10px; border: 1px solid #EAEAEA; margin-bottom: 18px;}
blockquote p {padding-left:1rem; margin-bottom:0rem;}

.alert-box {background: #fff3cd; border-left: 4px solid #ff9900; padding: 12px 16px; margin: 20px 0; border-radius: 6px; color: #856404;}
.alert-box strong {color: #cc5500;}
.alert-box p {margin: 0; font-size: 0.95rem;}

.info-box {background: #e7f3ff; border-left: 4px solid #2196f3; padding: 12px 16px; margin: 20px 0; border-radius: 6px; color: #0d47a1;}
.info-box strong {color: #1565c0;}
.info-box p {margin: 0; font-size: 0.95rem;}

.table-scroll-wrapper {position: relative; margin: 1.5rem 0;}
.table-scroll-viewport {position: relative; border: 1px solid #c3c3c3;}
.table-scroll-container {overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: thin; scrollbar-color: #e4326c #f8f9fa;}
.table-scroll-container::-webkit-scrollbar {height: 6px;}
.table-scroll-container::-webkit-scrollbar-thumb {background: #e4326c; border-radius: 3px;}
.responsive-table {width: 100%; min-width: 600px; border-collapse: collapse;}
.responsive-table th, .responsive-table td {padding: 10px 14px; text-align: left;}
.responsive-table th {font-weight: 600;}
.responsive-table caption {padding: 12px 8px; text-align: left; background-color: #83aed9; color: white; font-size:1.05rem; font-weight:700;}
.vergleich {padding-top: 12px; padding-bottom: 12px; background-color: #83aed9; color: white; font-size:1.05rem; font-weight: 700;}
.responsive-table tbody tr:nth-child(even) {background-color: #eeeeee;}
.scroll-shadow-right, .scroll-shadow-left {position: absolute; top: 0; bottom: 0; width: 30px; pointer-events: none; opacity: 0; transition: opacity 0.3s; z-index: 2;}
.scroll-shadow-right {right: 0; background: linear-gradient(to left, rgba(0,0,0,0.18) 0%, transparent 100%);}
.scroll-shadow-left {left: 0; background: linear-gradient(to right, rgba(0,0,0,0.18) 0%, transparent 100%);}
.scroll-hint {text-align: center; font-size: 0.9rem; color: #666; padding-bottom: 0.5rem; opacity: 0; transition: opacity 0.3s ease; pointer-events: none; font-style: italic;}
.table-scroll-wrapper.is-scrollable .scroll-hint {opacity: 1;}

.preisvergleich {border-collapse: collapse; width: 100%; margin: 1.5rem 0; border: 1px solid #c3c3c3;}
.preisvergleich th {padding: 10px 8px 10px 12px; background-color: #83aed9; color: white; font-size: 1.05rem; font-weight:700; text-align: left;}
.preisvergleich tbody tr:nth-child(even) {background-color: #eeeeee;}
.preisvergleich td {padding: 9px 8px 9px 12px; text-align: left; hyphens: auto;}

.pro-contra-box {display: flex; gap: 3%; margin: 0 0 1.5rem 0; flex-wrap: wrap; padding-top: 1rem;}
.vorteile, .nachteile {flex: 1 1 48.5%;}
.pro-contra-heading {font-size: 1.2rem; margin-bottom: 1rem; padding: 0.7rem 1rem; border-radius: 6px; color: #fff; text-align: center;}
.gruen {background-color: #2e7d32;}
.rot {background-color: #c62828;}
.vorteile ul, .nachteile ul {list-style: none; padding: 0 1rem; margin: 0;}
.vorteile li, .nachteile li {margin-bottom: 0.6rem; line-height: 1.4rem; display: table;}
.vorteile li::before, .nachteile li::before {font-family: "Font Awesome 6 Free"; font-weight: 900; padding-right: 0.6rem; display: table-cell;}
.vorteile li::before {content: "\f164"; color: #2e7d32;}
.nachteile li::before {content: "\f165"; color: #c62828;}

h2, h3, h4, p, ul, ol, .table-scroll-wrapper, .pro-contra-box {scroll-margin-top: 72px;}

.slideshow-container {width: 100%; position: relative; margin: auto; padding-top: 0.6rem; margin-bottom: 1.5rem;}
.slideshow-container img {display: inline; width: 100%; margin-bottom: 0; vertical-align: middle;}
.slideshow-container a {text-decoration: none;}
.slideshow-container a:hover {color: #fff; transition:0.4s;}
.mySlides {display: none}
.prev, .next {background-color: rgba(0,0,0,0.4); color: #fff; cursor: pointer; position: absolute; top: 50%; width: auto; padding: 16px; margin-top: -22px; font-weight: bold; font-size: 18px; transition: 0.6s ease; border-radius: 0 3px 3px 0; user-select: none;}
.next {right: 0; border-radius: 3px 0 0 3px;}
.prev:hover, .next:hover {background-color: rgba(0,0,0,0.6);}
.bild-caption {color: #280c1b; background-color: rgba(192,192,192,0.6); font-size: 1.1rem; font-weight:600; padding: 9px 12px; position: absolute; bottom: 0px; width: 100%; text-align: center;}
.dots {margin-bottom:1.2rem; text-align: center;}
.dot {cursor: pointer; height: 15px; width: 15px; margin: 0 2px; background-color: #bbb; border-radius: 50%; display: inline-block; transition: background-color 0.6s ease;}
.aktiv, .dot:hover {background-color: #717171;}
.fade {-webkit-animation-name: fade; -webkit-animation-duration: 1.5s; animation-name: fade; animation-duration: 1.5s;}
@-webkit-keyframes fade {from {opacity: .4} to {opacity: 1}}
@keyframes fade {from {opacity: .4} to {opacity: 1}}

.slideshow-gallery {width: 100%; position: relative; margin-bottom: 1.6rem; box-shadow: 0 5px 13px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);}
.slideshow-gallery img {display:inline; width: 100%; margin-bottom: 0; vertical-align: middle;}
.slideshow-gallery a {text-decoration: none;}
.slideshow-gallery a:hover{color: #fff; transition:0.4s;}
.imageSlide {display: none;}
.cursor {cursor: pointer;}
.previous-image, .next-image {cursor: pointer; position: absolute; top: 40%; width: auto; padding: 16px; margin-top: -50px; background-color: rgba(0,0,0,0.4); color: #fff; font-weight: bold; font-size: 20px; border-radius: 0 3px 3px 0; user-select: none; -webkit-user-select: none;}
.next-image {right: 0; border-radius: 3px 0 0 3px;}
.previous-image:hover, .next-image:hover {background-color: rgba(0,0,0,0.6);}
.numbertext {color: #f2f2f2; font-size: 12px; padding: 8px 12px; position: absolute; top: 0;}
.caption-container {text-align: center; background-color: #222; padding: 16px 16px; color: white;}
.caption-container p {margin-bottom: 0rem;}
.row {padding: 0.3rem 0rem;}
.row:after {content: ""; display: table; clear: both;}
.column {float: left; width: 16.66%; border-right: 2px solid #999999;}
.column:last-of-type {border-right: 0px;}
.demo {opacity: 0.6;}
.active, .demo:hover {opacity: 1;}

.flex-wrapper {display: flex; flex-wrap: wrap; gap: 2%;}
.card {display: flex; width: 32%; margin-bottom: 1.25rem;}
.card-content {background-color: #fff; display: flex; flex-direction: column; width: 100%; border: 1px solid #ddd; border-radius: 8px;}
.card-content img {width: 100%; border-radius: 8px 8px 0 0; border-bottom:1px solid #eeeeee;}
.category {margin-bottom: 0.625rem;font-size:0.93rem;font-weight:400;color:#e4326c;}
.title {font-size: 1.1rem; font-weight: 600; line-height:1.625rem; margin-bottom: 0.625rem;}
.card-text {display: flex; flex-direction: column; flex: 1; padding: 1.125rem 1.4rem;}
.description {flex: 1;font-size: 1rem; color: #333;margin-bottom: 0.75rem;}
.read-more {display: inline-block; align-self: start; background-color:#0d6efd; text-decoration: none; color: #fff; font-weight: 400; padding:0.5rem 0.8rem; border-radius: 0.375rem;}
.read-more:hover{color:#fff;background-color:#0b5ed7;transition:0.4s;}
.read-more::after {font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f061"; margin-left:0.45rem;}
.pagination {display: flex; justify-content: center; margin-top: 0.375rem; margin-bottom: 0.8rem;}
.page-btn {padding: 10px 15px; margin: 5px; border: 1px solid #ddd; background: white; cursor: pointer; border-radius: 5px;}
.page-btn.selected {background: #007bff; color: white;}

.product-box {display: flex; flex-wrap: wrap; flex-direction: row; align-items: center; text-align: left; padding: 1.25rem; background: white; border: 2px solid #ddd; border-radius: 12px; margin-top: 1.875rem; margin-bottom:1.4rem; box-shadow: 0 4px 12px rgba(0,0,0,0.15);}
.product-box-early {margin-bottom: 2rem;}
.product-box-label {font-size: 1rem; font-weight: 600; background: #222; color: #fff; padding: 5px 8px; border-radius: 6px; margin-bottom: 1.25rem;}
.product-box-label i {color: #f5b301; margin-right: 9px;}
.product-box-label.mobile {display: none;}
.product-box-label.desktop {display: inline-block;}
.product-box img {width: 22%; margin-right: 1.25rem; border-radius: 12px;}
.product-content {margin-top: 0; width: 100%; flex: 1;}
.product-title {font-size: 1.3rem; font-weight: 600; margin-bottom: 0.75rem; color: #303030; line-height: 1.4;}
.product-features {padding: 0; color:#646464; text-align:left; margin-bottom: 1.2rem}
.product-features li {display: table; font-size: 0.95rem; padding: 2px 0;}
.product-features li::before{display: table-cell; content: "\2022";font-size:1rem; color:#646464; padding-right:0.3rem;}
.discount-box {border: 1px dashed #e1326b; padding: 10px; font-size: 1rem; font-weight: 500; background:#fbcc60; text-align: center; margin-bottom: 0.75rem;}
.discount-box code {font-size: 1.1rem; font-weight:600; color: #df1523; background: none; padding: 0; border-radius: 0;}
.buttons {display: flex; flex-direction: row; gap: 12px;}
.buttons a {width: 100%; padding:0.65rem 0.5rem; flex: 1; margin-top: 0; text-align:center; font-weight:600; font-size:1rem; border-radius: 5px; text-decoration: none;}
.buttons a.shop-btn {background-color: #e4326c; color:#fff;}
.buttons a.shop-btn::before {font-family: "Font Awesome 6 Free"; content: "\f07a"; font-weight: 900; margin-right: 9px; font-size:1.01rem;}
.buttons a.shop-btn:hover {background-color: #c12357; color: #fff;}
.buttons a.test-btn {background-color: #0d6efd; color: #fff;}
.buttons a.test-btn::before {font-family: "Font Awesome 6 Free"; content: "\f15c"; font-weight: 900; margin-right: 9px; font-size:1.01rem;}
.buttons a.test-btn:hover {background-color: #0b5ed7; color: #fff;}

.promo-box {background: #f7f7f7; border: 1px solid #e5e5e5; border-radius: 12px; padding: 20px; margin-top: 1.875rem; margin-bottom:1.4rem; box-shadow: 0 4px 12px rgba(0,0,0,0.08);}
.promo-title {font-size: 1.25rem; font-weight: 600; color: #303030; margin-bottom: 0.6rem;}
.promo-title i {color: #e53935; margin-right: 6px;}
.promo-content p {color: #222; margin-bottom: 0.8rem;}
.promo-content small {font-weight: 400; color: #777; font-size: 0.85em; display: block; margin-bottom: 1.1rem;}
.promo-content a {display: block; text-align: center; background: #e4326c; color: #fff; padding: 0.7rem; border-radius: 6px; text-decoration: none; font-weight: 600; font-size: 1rem;}
.promo-content a::after {font-family: 'Font Awesome 6 Free'; content: '\f061'; font-size:0.9rem; font-weight: 900; margin-left: 0.438rem; text-decoration: none; display: inline-block;}
.promo-content a:hover {background: #c12357; color: #fff;}
.promo-code {border: 1px dashed #e1326b; background: #fff3f7; padding: 10px; text-align: center; font-weight: 500; margin-bottom: 1rem; border-radius: 6px;}
.promo-code code {font-size: 1.1rem; font-weight: 600; color: #df1523; background: none;}

.compare-box {display: flex; gap: 16px; margin-top: 1.875rem; margin-bottom:1.4rem;}
.compare-item {flex: 1; display: flex; flex-direction: column; background: #f7f7f7; border: 1px solid #e5e5e5; border-radius: 12px; padding: 1rem; text-align: center;}
.compare-label {font-size: 1rem; font-weight: 600; color: #c94a72; margin-bottom: 0.9rem;}
.compare-item img {width: 40%; height: auto; margin: 0 auto 0.9rem; display: block;}
.compare-title {font-size: 1.1rem; font-weight: 600; color: #222; margin-bottom: 8px;}
.compare-features {text-align: left; margin-bottom: 0.9rem; padding: 0 1rem; color:#444;}
.compare-features li {display: table; font-size: 0.95rem; padding: 1px 0; line-height: 1.5;}
.compare-features li::before{display: table-cell; content: "\2022";font-size:1rem; color:#646464; padding-right:0.3rem;}
.compare-features {flex-grow: 1;}
.links-group {display: flex; flex-direction: column; gap: 12px;}
.links-group a {width: 100%; padding:0.6rem; flex: 1; margin-top: 0; text-align:center; font-weight:600; font-size:1rem; border-radius: 6px; text-decoration: none;}
.links-group a.store-btn {background-color: #e4326c; color:#fff;}
.links-group a.store-btn::before {font-family: "Font Awesome 6 Free"; content: "\f07a"; font-weight: 900; margin-right: 9px; font-size:1.01rem;}
.links-group a.store-btn:hover {background-color: #c12357; color: #fff;}
.links-group a.review-btn {background-color: #0d6efd; color: #fff;}
.links-group a.review-btn::before {font-family: "Font Awesome 6 Free"; content: "\f15c"; font-weight: 900; margin-right: 9px; font-size:1.01rem;}
.links-group a.review-btn:hover {background-color: #0b5ed7; color: #fff;}

.rabattcode {background: #f5faff; padding: 15px; border: dotted 3px #444; border-radius: 6px; font-size: 0.95rem;}
.rabattcode h2 {padding-top: 0; font-size: 1.02rem; line-height: 1.688rem; color: #0071e3; margin-bottom: 0.65rem;}
.rabattcode span {display: block; font-size: 1.02rem; font-weight: 700; line-height: 1.688rem; color: #0071e3; margin-bottom: 0.65rem; letter-spacing: 0.063rem;}
.rabattcode p {margin-bottom: 0.9rem;}
.rabattcode b {font-weight: 500;}
.rabattcode small {font-weight: 400; color: gray; font-size: 0.85em; display: block; margin-bottom: 0.9rem;}
.rabattcode a {color: #0071e3;}
.rabattcode a::after {font-family: 'Font Awesome 6 Free'; content: '\f061'; font-size:0.9rem; font-weight: 900; margin-left: 0.5rem; text-decoration: none; display: inline-block;}
.rabattcode a:hover {text-decoration: underline;}
.rabattcode code {font-weight:600; background:#fbcc60; color: #df1523; padding: 0.2rem 0.4rem;}

.ranking-box {border: 2px solid #d9d9d9; border-radius: 8px; padding:1rem; margin:2rem 0; overflow: hidden;}
.ranking-box h3 {display:block; width: 100%; text-align: center; font-size:1.125rem; font-weight:700; border: 1px solid #d9d9d9; border-radius: 6px; padding: 1rem 0; margin-bottom:0.8rem; color: #222;}
.product-image {display: inline-block; width: 30%; height: auto; float: left; margin:0.3rem 0.8rem 0.20rem 0rem; border-radius: 6px;}
.ranking-box p {font-size: 0.9rem; line-height: 1.6;}
.colors {clear: both;}
.product-links {margin-top: 10px; clear: both; display: flex; gap: 2.2%;}
.product-links a {flex: 1; text-decoration: none; text-align: center; padding:0.7rem 0.5rem; border-radius: 5px; font-weight: 600;}
.shop-link {background-color: #e4326c; color: white;}
.shop-link::before {font-family: "Font Awesome 6 Free"; content: "\f07a"; font-weight: 900; margin-right: 9px;}
.shop-link:hover {background-color: #c12357; color: #fff;}
.review-link {background-color: #0d6efd; color: white;}
.review-link::before {font-family: "Font Awesome 6 Free"; content: "\f15c"; font-weight: 900; margin-right: 9px;}
.review-link:hover {background-color: #0b5ed7; color: #fff;}
.top-1 {border: 3px solid #e0af45;}
.top-2 {border: 3px solid #c4c0bf;}
.top-3 {border: 3px solid #ce783d;}
.top-1 h3, .top-2 h3, .top-3 h3 {border: 0;}
.top-1 h3 {background-color: #e0af45; color: #222;}
.top-2 h3 {background-color: #cac7c6; color: #222;}
.top-3 h3 {background-color: #ce783d; color: #000000;}

.produktbild-float {float: left; width: 25%; height: auto; margin: 0.3rem 1rem 0.5rem 0; border-radius: 4px;}
.bild-float {float: left; width: 25%; height: auto; margin: 0.3rem 1rem 0.5rem 0; border-radius: 4px;}
.bild-float-30 {float: left; width: 30%; height: auto; margin: 0.3rem 1rem 0.5rem 0; border-radius: 4px;}

.image-text-box {border-top: 2px dashed #ccc; padding: 0; margin-bottom: 1.6rem;}
.image-text-box h3 {margin-bottom: 0.8rem; width: 100%; text-align: center;}
.content-wrapper {display: flex; align-items: center;}
.content-wrapper img {width: 18%; margin-right: 15px; margin-bottom: 0;}
.box-text {flex: 1;}
.box-text p:last-child {margin-bottom: 0;}
.no-border-top {border-top: none !important;}

.product-hint {background-color: #f5faff; padding: 0.8rem 1rem; border: 1px solid #e5e9ee; border-left: 4px solid #ccc; margin: 1.4rem 0 1.5rem 0; font-size: 1rem; border-radius: 6px;}
.product-hint a {text-decoration: none; color: #0071e3; font-weight: 500;}
.product-hint a::before {font-family: "Font Awesome 6 Free"; content: "\f07a"; font-weight: 900; margin-right: 9px; font-size:1.01rem; opacity: 0.9; text-decoration: none; display: inline-block;}
.product-hint a::after {font-family: 'Font Awesome 6 Free'; content: '\f061'; font-size:0.9rem; font-weight: 900; margin-left: 0.5rem; text-decoration: none; display: inline-block;}
.product-hint a:hover {text-decoration: underline;}

.affiliate-hinweistext {font-size: 0.95rem; color: #555; font-style: italic; line-height: 1.5; margin-bottom: 1.35rem; clear: both;}

.overlay {display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(5px); z-index: 1000; display: flex; align-items: center; justify-content: center;}
.share-popup {background: white; padding: 20px; border-radius: 10px; width: 300px; text-align: center; box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.3); position: relative;}
.close-popup {position: absolute; top: -50px; left: 50%; transform: translateX(-50%); background: none; border: none; font-size: 22px; font-weight: bold; cursor: pointer; color: white; background-color: #333; border-radius: 50%; width: 35px; height: 35px; display: flex; align-items: center; justify-content: center; line-height: 35px; text-align: center; padding: 0;}
.close-popup:hover {background-color: #555;}
.share-popup span {font-size:1.2rem; font-weight:600; color:#303030;}
.share-btn {display: flex; align-items: center; justify-content: center; width: 40%; margin: 0 auto; text-align: center; background: #007bff; color: white; font-size: 16px; font-weight: bold; padding: 12px 20px; border: none; border-radius: 8px; cursor: pointer; transition: background 0.3s ease; position: relative;}
.share-btn::after {font-family: "Font Awesome 6 Free"; content: "\f1e0"; font-weight: 900; font-size: 1rem; margin-left: 0.5rem;}
.share-btn:hover {background: #0056b3;}
.share-buttons {display: flex; flex-direction: column; gap: 10px; margin-top: 14px;}
.share-buttons a {display: flex; align-items: center; justify-content: center; width: 100%; padding: 10px; font-size: 16px; font-weight: bold; border-radius: 8px; text-decoration: none; color: white; transition: background 0.3s;}
.facebook {background: #3b5998; }
.facebook:hover {background: #2d4373;}
.twitter {background: #000000;}
.twitter:hover {background: #333333;}
.whatsapp {background: #25d366;}
.whatsapp:hover { background: #1ebe57;}
.email {background: #6c757d;}
.email:hover {background: #5a6268;}
.icon {margin-right: 10px; font-size: 18px;}

footer {padding:1.5rem 0.7rem; text-align: center; background-color: #d9bebe; font-size: 0.875rem;}
.footer-links {display: flex; justify-content: center; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 0.5rem;}
.footer-links a {position: relative; text-decoration: underline; text-decoration-color: #303030; text-decoration-thickness: 1px; text-underline-offset: 4px; color: #000; font-weight: 500; letter-spacing: 0.02rem;}
.footer-links a:not(:last-child)::after {content: "|"; color: #827b7b; text-decoration: none; display: inline-block; margin-left: 0.5rem;}
.copyright {color: #000; font-weight: 600; letter-spacing: 0.125rem; padding-top: 0.4rem;}
.footer-auto {margin-top: auto;}

.kontakt-formular {max-width: 500px; margin: 20px 0; padding: 20px; border: 1px solid #ddd; border-radius: 5px; background-color: #f9f9f9;}
.kontakt-formular label {font-weight: 500; display: block; margin-top: 10px;}
.kontakt-formular input, .kontakt-formular textarea {width: 100%; padding: 8px; margin-top: 5px; border: 1px solid #ccc; border-radius: 4px;}
.kontakt-formular button {margin-top: 15px; padding: 10px; width: 100%; background-color: #007bff; color: white; border: none; border-radius: 4px; font-size: 16px; cursor: pointer;}
.kontakt-formular textarea {resize: none; height: 150px; font-size: 16px;}
.kontakt-formular p.hinweis {margin-bottom: 0; margin-top: 12px; font-size: 14px;}
.kontakt-formular button:hover {background-color: #0056b3;}
.honeypot {display: none;}

@media (max-width: 1190px) {
.nav-logo {padding-right: 0px;}
.nav-toggle {display: block;}
.nav-menu {display: none; flex-direction: column; position: absolute; top: 70px; left: 0; width: 100%; background: #fff; border: 1px solid #ddd; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); padding: 10px 0;}
.nav-menu.open {display: flex;}
.nav-menu li {text-align: center; padding: 8px 0;}
.nav-menu li a {letter-spacing:0.125rem; font-weight:600;}
.search-icon {margin-right: 0;}
}

@media (max-width: 991.98px) {
p {margin-bottom:1.25rem;}
h2, h3, h4, p, ul, ol, .table-scroll-wrapper, .pro-contra-box {scroll-margin-top: 63px;}
.nav-logo {height: 31px;}
.nav-menu {top: 61px;}
article {padding: 0px;}
.share-btn {width: 43%;}
.search-box {max-width: 550px;}
#results {max-height: 250px;}
}

@media (max-width: 768px) {
.content-container {padding: 0 1.5rem 0 1.5rem; margin-top: 7rem;}
.card {width: 48.5%;}
.flex-wrapper {gap: 3%;}
.bild-float-30 {width: 35%;}
.share-btn {width: 50%;}
.search-box {max-width: 500px;}
#results {max-height: 200px;}
}

@media (max-width: 600px) {
.content-container {padding: 0 1.25rem 0 1.25rem; margin-top: 6.5rem;}
.autor-card {width: 100%; max-width: none;}
.autor-card:first-of-type {width: 100%; margin-bottom: 1.9rem;}
.autor-card img {width: 80%; margin: 0 auto;}
.toc-title {padding-left: 0.8rem;}
.toc-content ul {padding-left: 0.8rem; padding-right: 0.8rem;}
.toc-content ul ul {margin-left: 1rem;}
.toc-content ul ul ul {margin-left: 1rem;}
.card {width: 100%; margin-bottom: 1.9rem;}
.card:last-of-type {margin-bottom: 1.7rem;}
.pagination {margin-top: 0.1rem;}
.flex-wrapper {gap: 0%;}
.image-container {flex-direction: column; align-items: center; gap: 0;}
.responsive-image {width: 100%;}
.responsive-image:first-child {margin-bottom: 1.5rem;}
.pro-contra-box {flex-direction: column; gap: 0; margin-bottom: 1.3rem;}
.vorteile, .nachteile {flex: 1 1 100%;}
.vorteile {margin-bottom: 1.2rem;}

.product-box {flex-direction: column; text-align: center; padding: 15px;}
.product-box-label.mobile {display: block; width: 100%; margin-top: 0.2rem;}
.product-box-label.desktop {display: none;}
.product-box img {width: 80%; margin: 0 auto;}
.buttons {flex-direction: column; gap: 12px;}
.buttons a.shop-btn {width: 100%;}
.buttons a.test-btn {width: 100%;}
.product-content {margin-top: 0.8rem;}

.compare-box {flex-direction: column; gap: 20px;}
.compare-item {padding: 15px;}

.promo-box {padding: 15px;}

.product-image {display:block; width: 80%; margin: 0 auto; float: none; padding-bottom: 0.8rem;}
.product-links {flex-direction: column; gap: 12px;}
.product-links a {width: 100%;}
.produktbild-float {float: none; display: block; width: 85%; margin: 0 auto 1rem auto;}
.bild-float {float: none; display: block; width: 85%; margin: 0 auto 1rem auto;}
.bild-float-30 {float: none; display: block; width: 85%; margin: 0 auto 1rem auto;}
.product-hint a::before {display: none !important;}
.image-text-box {border-top: none; margin-bottom: 1rem;}
.image-text-box h3 {text-align: left;}
.content-wrapper {flex-direction: column; align-items: center;}
.content-wrapper img {width: 80%; margin-right: 0; margin-bottom: 0.4rem;}
.more-margin {margin-bottom: 1.5rem;}
.share-btn {width: 100%;}
.kontakt-formular {width: 100%; padding: 15px; max-width: none;}
.autor-bild {float: none; display: block; margin: 0 auto 1.5rem auto; width: 100%;}
.footer-links {flex-direction: column; align-items: center;}
.footer-links a::after {display: none !important;}
}

@media (max-width: 480px) {
.author-pic img {width: 70px !important; height: 70px !important;}
.autor-card img {width: 100%;}
.toc-title {padding-left: 0.5rem;}
.toc-content ul {padding-left: 0.5rem; padding-right: 0.5rem;}
.toc-content ul ul {margin-left: 0.8rem;}
.toc-content ul ul ul {margin-left: 0.8rem;}
.produktbild-float {width: 100%;}
.bild-float {width: 100%;}
.bild-float-30 {width: 100%;}
.content-wrapper img {width: 100%;}
}

@media (max-width: 330px) {
.content-container {padding: 0 1.2rem 0 1.2rem; margin-top: 6rem;}
h1 {font-size:1.35rem; letter-spacing:0.04rem; hyphens: auto;}
h2, h3, h4, p, ul, ol, .table-scroll-wrapper, .pro-contra-box {scroll-margin-top: 56px;}
.nav-container {padding-top: 13px; padding-bottom: 13px;}
.nav-logo {height: 28px;}
.nav-toggle {font-size: 1.35em;}
.nav-menu {gap: 6px; top: 54px;}
.nav-menu li a {font-size: 0.9em;}
.author-pic img {width: 60px !important; height: 60px !important;}
.author-pic img.updated-only {width: 50px !important; height: 50px !important;}
.inhaltsverzeichnis i {display: none;}
}

@supports not (text-decoration: underline solid) {
article a {text-decoration: none; border-bottom: 1px solid #aac3f3;}
article a:hover {border-bottom-color: #3366cc;}
footer a {text-decoration: none; border-bottom: 1px solid #303030;}
}

@media not all and (min-resolution: 0.001dpcm) { 
@supports (-webkit-appearance: none) and (not (text-decoration-thickness: auto)) {
article a {text-decoration: none; border-bottom: 1px solid #aac3f3;}
article a:hover {border-bottom-color: #3366cc;}
footer a {text-decoration: none; border-bottom: 1px solid #303030;}
}
}

@supports not (backdrop-filter: blur(5px)) {
.overlay {background: rgba(0, 0, 0, 0.75);}
}

@media (hover: none) {
#scroll-arrow:hover {color: #888; background: rgba(0, 0, 0, 0.1);}
}

@media (hover: none) {
@-moz-document url-prefix() {
#scroll-arrow:active {background-color: #ccc; transform: scale(0.95); transition: background-color 0.1s, transform 0.1s; color: black;}
}
}