/* ========================================================================== 
   wellcare Abendmodus
   Ein zentraler, bewusst navy-/petrolfarbener Modus für alle fünf Seiten.
   Der helle Markenauftritt bleibt der Standard und wird nicht verändert.
   ========================================================================== */

:root {
    --theme-night-page: #0b1924;
    --theme-night-page-soft: #0e202b;
    --theme-night-surface: #122733;
    --theme-night-surface-raised: #172f3c;
    --theme-night-card: #193440;
    --theme-night-text: #edf7f6;
    --theme-night-muted: #b8c9cf;
    --theme-night-subtle: #94aab2;
    --theme-night-line: rgba(114, 221, 209, 0.18);
    --theme-night-line-strong: rgba(114, 221, 209, 0.3);
    --theme-night-shadow: 0 22px 55px rgba(1, 10, 16, 0.28);
}

/* Theme-Schalter: kompakt im Desktop-Header, beschriftet im Mobile-Menü. */
.theme-toggle {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    color: #126f69;
    background: rgba(0, 188, 170, 0.075);
    border: 1px solid rgba(0, 159, 144, 0.2);
    cursor: pointer;
    font: inherit;
    font-weight: 650;
    transition: color var(--transition-base), background var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);
}

.theme-toggle:hover,
.theme-toggle:focus-visible {
    color: #006f66;
    background: rgba(0, 188, 170, 0.13);
    border-color: rgba(0, 159, 144, 0.32);
    box-shadow: 0 7px 18px rgba(45, 49, 66, 0.08);
}

.theme-toggle-header {
    width: 40px;
    height: 40px;
    margin-left: -0.35rem;
    border-radius: 50%;
}

.theme-toggle-icon {
    width: 17px;
    height: 17px;
    display: block;
    flex: 0 0 17px;
    border-radius: 50%;
    background: currentColor;
    -webkit-mask: radial-gradient(circle at 72% 28%, transparent 0 43%, #000 46%);
    mask: radial-gradient(circle at 72% 28%, transparent 0 43%, #000 46%);
    transition: transform var(--transition-base), box-shadow var(--transition-base);
}

.theme-toggle-mobile {
    display: none;
}

html[data-theme="dark"] .theme-toggle {
    color: #ffd59a;
    background: rgba(255, 213, 154, 0.08);
    border-color: rgba(255, 213, 154, 0.2);
}

html[data-theme="dark"] .theme-toggle:hover,
html[data-theme="dark"] .theme-toggle:focus-visible {
    background: rgba(255, 213, 154, 0.14);
    border-color: rgba(255, 213, 154, 0.34);
    box-shadow: 0 7px 20px rgba(1, 10, 16, 0.24);
}

html[data-theme="dark"] .theme-toggle-icon {
    -webkit-mask: none;
    mask: none;
    box-shadow: 0 0 0 3px rgba(255, 213, 154, 0.1), 0 0 13px rgba(255, 197, 112, 0.25);
}

/* Nur während einer bewussten Umschaltung weich überblenden. So bleiben die
   bereits abgestimmten Pfeil- und Hover-Bewegungen unangetastet. */
html.theme-transitioning body,
html.theme-transitioning .navbar,
html.theme-transitioning .mobile-menu,
html.theme-transitioning main,
html.theme-transitioning section,
html.theme-transitioning [class*="shell"],
html.theme-transitioning [class*="card"],
html.theme-transitioning [class*="panel"] {
    transition-property: color, background-color, border-color, box-shadow;
    transition-duration: 0.3s;
    transition-timing-function: ease;
}

/* Gemeinsame Flächen und Navigation */
html[data-theme="dark"] body {
    color: var(--theme-night-muted);
    background: var(--theme-night-page);
}

html[data-theme="dark"] .navbar,
html[data-theme="dark"] .navbar.scrolled {
    background: linear-gradient(90deg, rgba(11, 25, 36, 0.94), rgba(17, 39, 50, 0.92), rgba(11, 25, 36, 0.94));
    border-bottom-color: rgba(114, 221, 209, 0.12);
    box-shadow: 0 8px 28px rgba(1, 10, 16, 0.28);
}

html[data-theme="dark"] .nav-menu a {
    color: #dce9e9;
}

html[data-theme="dark"] .nav-menu a:hover,
html[data-theme="dark"] .nav-menu a[aria-current] {
    color: #72ddd1;
}

html[data-theme="dark"] .burger-menu {
    background: rgba(114, 221, 209, 0.07);
    border-color: rgba(114, 221, 209, 0.18);
}

html[data-theme="dark"] .burger-menu span {
    background: var(--theme-night-text);
}

html[data-theme="dark"] .mobile-menu {
    background: linear-gradient(155deg, rgba(12, 28, 39, 0.99), rgba(20, 47, 59, 0.99));
    border-color: var(--theme-night-line);
    box-shadow: 0 25px 55px rgba(1, 10, 16, 0.42);
}

html[data-theme="dark"] .mobile-menu a {
    color: var(--theme-night-text);
    background: rgba(255, 255, 255, 0.045);
    border-color: rgba(114, 221, 209, 0.1);
}

html[data-theme="dark"] .mobile-menu a:hover,
html[data-theme="dark"] .mobile-menu a:focus-visible,
html[data-theme="dark"] .mobile-menu a[aria-current] {
    color: #7fe5da;
    background: rgba(0, 188, 170, 0.11);
    border-color: rgba(114, 221, 209, 0.25);
}

html[data-theme="dark"] .scroll-top {
    color: #06211f;
    background: #69dcd1;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.28);
}

html[data-theme="dark"] .site-footer {
    background: linear-gradient(135deg, #081621 0%, #102b35 100%);
    border-top: 1px solid rgba(114, 221, 209, 0.11);
}

/* Startseite */
html[data-theme="dark"] .hero {
    background: #0f202c;
}

html[data-theme="dark"] .hero-visual::before {
    background: linear-gradient(90deg, #0f202c 0%, rgba(15, 32, 44, 0.9) 6%, rgba(15, 32, 44, 0.28) 18%, transparent 32%);
}

@media (max-width: 968px) {
    html[data-theme="dark"] .hero-visual::before {
        background: linear-gradient(0deg, #0f202c 0%, rgba(15, 32, 44, 0.82) 16%, rgba(15, 32, 44, 0.34) 30%, transparent 46%);
    }
}

html[data-theme="dark"] #heroPaleWash stop:nth-child(1) {
    stop-color: #0f202c;
}

html[data-theme="dark"] #heroPaleWash stop:nth-child(2) {
    stop-color: #122b37;
}

html[data-theme="dark"] #heroPaleWash stop:nth-child(3) {
    stop-color: #16434a;
}

html[data-theme="dark"] .hero-organic-overlay path:last-child {
    stroke: #55cbbf;
    stroke-opacity: 0.3;
}

html[data-theme="dark"] .hero h1,
html[data-theme="dark"] .services-title,
html[data-theme="dark"] .service-card h3,
html[data-theme="dark"] .about-home-title,
html[data-theme="dark"] .about-home-value strong,
html[data-theme="dark"] .partner-title,
html[data-theme="dark"] .partner-network-content h3,
html[data-theme="dark"] .partner-wordmark-name,
html[data-theme="dark"] .contact-title,
html[data-theme="dark"] .contact-form-heading h3,
html[data-theme="dark"] .form-group label {
    color: var(--theme-night-text);
}

html[data-theme="dark"] .hero-subtitle,
html[data-theme="dark"] .hero-feature,
html[data-theme="dark"] .services-intro,
html[data-theme="dark"] .service-card p,
html[data-theme="dark"] .about-home-copy > p,
html[data-theme="dark"] .about-home-value span,
html[data-theme="dark"] .partner-lead,
html[data-theme="dark"] .partner-network-copy,
html[data-theme="dark"] .partner-benefits li,
html[data-theme="dark"] .contact-lead,
html[data-theme="dark"] .contact-form-heading p {
    color: var(--theme-night-muted);
}

html[data-theme="dark"] .hero-eyebrow,
html[data-theme="dark"] .services-eyebrow,
html[data-theme="dark"] .service-card-link,
html[data-theme="dark"] .about-home-eyebrow,
html[data-theme="dark"] .partner-eyebrow,
html[data-theme="dark"] .reviews-eyebrow,
html[data-theme="dark"] .contact-eyebrow,
html[data-theme="dark"] .partner-network-role,
html[data-theme="dark"] .partner-brand-note,
html[data-theme="dark"] .partner-wordmark-subtitle {
    color: #72ddd1;
}

html[data-theme="dark"] .services-section,
html[data-theme="dark"] .about-home-shell,
html[data-theme="dark"] .partner-shell,
html[data-theme="dark"] .contact-shell {
    background: linear-gradient(140deg, rgba(18, 39, 51, 0.99), rgba(15, 34, 45, 0.98));
    border-color: var(--theme-night-line);
    box-shadow: var(--theme-night-shadow);
}

html[data-theme="dark"] .service-card,
html[data-theme="dark"] .service-card:hover,
html[data-theme="dark"] .partner-network-card,
html[data-theme="dark"] .contact-form-panel {
    background: linear-gradient(145deg, rgba(25, 52, 64, 0.97), rgba(20, 43, 54, 0.98));
    border-color: var(--theme-night-line);
    box-shadow: 0 14px 32px rgba(1, 10, 16, 0.22);
}

html[data-theme="dark"] .service-card:hover,
html[data-theme="dark"] .service-card:focus-visible {
    border-color: var(--theme-night-line-strong);
    box-shadow: 0 16px 34px rgba(1, 10, 16, 0.3);
}

html[data-theme="dark"] .partner-brand-panel {
    background: linear-gradient(145deg, #14313c, #102630);
    border-right-color: var(--theme-night-line);
}

html[data-theme="dark"] .partner-logo-stage {
    background: #edf7f5;
    border-color: rgba(114, 221, 209, 0.22);
    box-shadow: 0 10px 28px rgba(1, 10, 16, 0.22);
}

html[data-theme="dark"] .partner-logo-stage--wordmark {
    background: #1a3742;
}

html[data-theme="dark"] .review-card {
    color: var(--theme-night-text);
    background: linear-gradient(155deg, #193640 0%, #142a35 100%);
    border-color: var(--theme-night-line);
    box-shadow: 0 14px 30px rgba(1, 10, 16, 0.32);
}

html[data-theme="dark"] .review-card-top {
    border-bottom-color: rgba(114, 221, 209, 0.13);
}

html[data-theme="dark"] .review-author strong,
html[data-theme="dark"] .review-card blockquote {
    color: var(--theme-night-text);
}

html[data-theme="dark"] .review-author > div > span,
html[data-theme="dark"] .review-source {
    color: var(--theme-night-subtle);
}

html[data-theme="dark"] .review-avatar {
    color: #82e9df;
    background: linear-gradient(145deg, rgba(0, 188, 170, 0.2), rgba(0, 188, 170, 0.09));
}

html[data-theme="dark"] .review-source {
    background: rgba(66, 133, 244, 0.08);
    border-color: rgba(122, 166, 244, 0.14);
}

html[data-theme="dark"] .review-source-mark {
    background: #edf7f5;
}

html[data-theme="dark"] .form-group input,
html[data-theme="dark"] .form-group textarea {
    color: var(--theme-night-text);
    background: #102630;
    border-color: rgba(114, 221, 209, 0.2);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.16);
}

html[data-theme="dark"] .form-group input:focus,
html[data-theme="dark"] .form-group textarea:focus {
    background: #142d38;
    border-color: #55d0c4;
    box-shadow: 0 0 0 4px rgba(0, 188, 170, 0.13);
}

html[data-theme="dark"] .form-group input::placeholder,
html[data-theme="dark"] .form-group textarea::placeholder {
    color: #8398a0;
}

html[data-theme="dark"] .form-privacy-note,
html[data-theme="dark"] .form-privacy-note a {
    color: var(--theme-night-muted);
}

html[data-theme="dark"] .form-privacy-note a:hover {
    color: #8cebe2;
}

html[data-theme="dark"] .form-status.success,
html[data-theme="dark"] .form-status.error {
    color: var(--theme-night-text);
}

html[data-theme="dark"] .modal-body {
    background: linear-gradient(145deg, #172f3c 0%, #102631 100%);
}

html[data-theme="dark"] .modal-body h4,
html[data-theme="dark"] .modal-actions-copy strong {
    color: var(--theme-night-text);
}

html[data-theme="dark"] .modal-body > p,
html[data-theme="dark"] .modal-list li,
html[data-theme="dark"] .modal-highlight,
html[data-theme="dark"] .modal-actions-copy span {
    color: var(--theme-night-muted);
}

html[data-theme="dark"] .modal-list li,
html[data-theme="dark"] .modal-highlight {
    background: rgba(0, 188, 170, 0.065);
    border-color: rgba(114, 221, 209, 0.14);
}

/* Kosten & Abrechnung */
html[data-theme="dark"] .cost-hero,
html[data-theme="dark"] .cost-main {
    background: linear-gradient(180deg, #0d202a 0%, var(--theme-night-page) 100%);
}

html[data-theme="dark"] .cost-hero-shell,
html[data-theme="dark"] .cost-shell {
    background: linear-gradient(135deg, #132a36, #0f232e);
    border-color: var(--theme-night-line);
    box-shadow: var(--theme-night-shadow);
}

html[data-theme="dark"] .cost-hero h1,
html[data-theme="dark"] .cost-section-title,
html[data-theme="dark"] .price-overview .price-value,
html[data-theme="dark"] .path-card h3,
html[data-theme="dark"] .funding-summary-text strong,
html[data-theme="dark"] .funding-rate,
html[data-theme="dark"] .funding-content h3,
html[data-theme="dark"] .funding-content .stat-card .big-number,
html[data-theme="dark"] .funding-content .conversion-card dd,
html[data-theme="dark"] .billing-step h3,
html[data-theme="dark"] .private-premium-card h3,
html[data-theme="dark"] .insurance-step strong,
html[data-theme="dark"] .budget-note h3,
html[data-theme="dark"] .faq-summary,
html[data-theme="dark"] .compact-note strong,
html[data-theme="dark"] .benefit-list strong {
    color: var(--theme-night-text);
}

html[data-theme="dark"] .cost-hero-lead,
html[data-theme="dark"] .cost-section-intro,
html[data-theme="dark"] .price-overview .price-label,
html[data-theme="dark"] .path-card p,
html[data-theme="dark"] .funding-summary-text span,
html[data-theme="dark"] .funding-content > p,
html[data-theme="dark"] .funding-content .stat-label,
html[data-theme="dark"] .billing-step p,
html[data-theme="dark"] .private-premium-card,
html[data-theme="dark"] .insurance-step p,
html[data-theme="dark"] .budget-note p,
html[data-theme="dark"] .faq-premium-answer,
html[data-theme="dark"] .compact-note,
html[data-theme="dark"] .benefit-list {
    color: var(--theme-night-muted);
}

html[data-theme="dark"] .private-premium-card p,
html[data-theme="dark"] .private-premium-card li {
    color: var(--theme-night-muted);
}

html[data-theme="dark"] .cost-eyebrow,
html[data-theme="dark"] .cost-section-eyebrow,
html[data-theme="dark"] .path-link,
html[data-theme="dark"] .price-overview .price-law,
html[data-theme="dark"] .funding-content .conversion-card dt {
    color: #72ddd1;
}

html[data-theme="dark"] .cost-hero-trust span,
html[data-theme="dark"] .price-overview .price-card,
html[data-theme="dark"] .path-card,
html[data-theme="dark"] .funding-card,
html[data-theme="dark"] .billing-step,
html[data-theme="dark"] .private-premium-card,
html[data-theme="dark"] .insurance-step,
html[data-theme="dark"] .faq-premium-item {
    color: var(--theme-night-muted);
    background: linear-gradient(145deg, #193440, #142b36);
    border-color: var(--theme-night-line);
    box-shadow: 0 10px 28px rgba(1, 10, 16, 0.22);
}

html[data-theme="dark"] .path-card:focus-visible,
html[data-theme="dark"] .funding-card[open],
html[data-theme="dark"] .faq-premium-item[open] {
    border-color: var(--theme-night-line-strong);
}

html[data-theme="dark"] .price-assurance,
html[data-theme="dark"] .funding-content .stat-card,
html[data-theme="dark"] .funding-content .conversion-card,
html[data-theme="dark"] .funding-content .warning-note,
html[data-theme="dark"] .private-premium-card .rate-callout,
html[data-theme="dark"] .budget-note,
html[data-theme="dark"] .compact-note {
    color: var(--theme-night-muted);
    background: rgba(0, 188, 170, 0.07);
    border-color: rgba(114, 221, 209, 0.16);
}

html[data-theme="dark"] .price-assurance strong {
    color: #8cebe2;
}

html[data-theme="dark"] .funding-content .stat-card,
html[data-theme="dark"] .funding-content .conversion-card {
    background: linear-gradient(145deg, rgba(114, 221, 209, 0.09), rgba(9, 28, 38, 0.34));
    border-color: rgba(114, 221, 209, 0.18);
    box-shadow: 0 9px 24px rgba(1, 10, 16, 0.2);
}

html[data-theme="dark"] .funding-content .stat-card i {
    color: #72ddd1;
    background-color: currentColor;
    background-image: none;
}

html[data-theme="dark"] .funding-content .stat-title {
    color: #8cebe2;
}

html[data-theme="dark"] .funding-content,
html[data-theme="dark"] .faq-premium-answer {
    border-top-color: rgba(114, 221, 209, 0.13);
}

html[data-theme="dark"] .cost-secondary-action {
    color: #8cebe2;
    background: rgba(0, 188, 170, 0.1);
    border-color: rgba(114, 221, 209, 0.22);
}

html[data-theme="dark"] .cost-hero-trust span {
    color: #d9e7e7;
}

html[data-theme="dark"] .cost-hero-visual::after {
    background: radial-gradient(ellipse 50% 105% at 0 0, #132a36 0%, #132a36 35%, rgba(19, 42, 54, 0.94) 45%, rgba(19, 42, 54, 0.62) 57%, rgba(19, 42, 54, 0.2) 69%, transparent 80%);
}

html[data-theme="dark"] .cost-visual-note {
    color: var(--theme-night-text);
    text-shadow: 0 1px 14px rgba(3, 14, 21, 0.88);
}

html[data-theme="dark"] .cost-visual-note-copy strong,
html[data-theme="dark"] .cost-visual-note-icon {
    color: #72ddd1;
}

html[data-theme="dark"] .cost-visual-note-copy > span {
    color: var(--theme-night-muted);
}

/* Über uns */
html[data-theme="dark"] .about-page,
html[data-theme="dark"] .about-page-content {
    background: var(--theme-night-page);
}

html[data-theme="dark"] .about-page-hero {
    background: linear-gradient(145deg, #102630 0%, #132e39 58%, #153943 100%);
    border-color: var(--theme-night-line);
}

html[data-theme="dark"] .about-page-hero h1,
html[data-theme="dark"] .about-story h2,
html[data-theme="dark"] .about-section-heading h2,
html[data-theme="dark"] .about-process h2,
html[data-theme="dark"] .about-value-card h3,
html[data-theme="dark"] .about-process-list strong,
html[data-theme="dark"] .about-cta h2 {
    color: var(--theme-night-text);
}

html[data-theme="dark"] .about-page-lead,
html[data-theme="dark"] .about-story-copy p,
html[data-theme="dark"] .about-section-heading p,
html[data-theme="dark"] .about-value-card p,
html[data-theme="dark"] .about-process-list p,
html[data-theme="dark"] .about-cta p {
    color: var(--theme-night-muted);
}

html[data-theme="dark"] .about-page-eyebrow,
html[data-theme="dark"] .about-section-eyebrow {
    color: #72ddd1;
}

html[data-theme="dark"] .about-page-trust span,
html[data-theme="dark"] .about-story,
html[data-theme="dark"] .about-value-card,
html[data-theme="dark"] .about-process-list li,
html[data-theme="dark"] .about-cta {
    background: linear-gradient(145deg, rgba(25, 52, 64, 0.97), rgba(18, 41, 52, 0.98));
    border-color: var(--theme-night-line);
    box-shadow: 0 16px 38px rgba(1, 10, 16, 0.23);
}

html[data-theme="dark"] .about-page-trust span {
    color: #d9e7e7;
}

/* Impressum und Datenschutz */
html[data-theme="dark"] .imprint-main,
html[data-theme="dark"] .privacy-main {
    background: var(--theme-night-page);
}

html[data-theme="dark"] .legal-hero {
    background: radial-gradient(circle at 82% 20%, rgba(0, 188, 170, 0.12), transparent 30%), radial-gradient(circle at 94% 82%, rgba(255, 148, 120, 0.08), transparent 25%), linear-gradient(180deg, #102630 0%, #0d202b 100%);
    border-bottom-color: var(--theme-night-line);
}

html[data-theme="dark"] .legal-content-section {
    background: linear-gradient(180deg, #0b1924 0%, #0e202b 100%);
}

html[data-theme="dark"] .legal-hero h1,
html[data-theme="dark"] .legal-summary h2,
html[data-theme="dark"] .legal-summary-item strong,
html[data-theme="dark"] .legal-card h2,
html[data-theme="dark"] .legal-card h3,
html[data-theme="dark"] .legal-card strong {
    color: var(--theme-night-text);
}

html[data-theme="dark"] .legal-hero__lead,
html[data-theme="dark"] .legal-summary-item span,
html[data-theme="dark"] .legal-card p,
html[data-theme="dark"] .legal-card li,
html[data-theme="dark"] .legal-card address,
html[data-theme="dark"] .legal-note {
    color: var(--theme-night-muted);
}

html[data-theme="dark"] .legal-eyebrow,
html[data-theme="dark"] .legal-summary__kicker,
html[data-theme="dark"] .legal-toc h2,
html[data-theme="dark"] .legal-card a,
html[data-theme="dark"] .legal-contact-item a,
html[data-theme="dark"] .legal-status {
    color: #72ddd1;
}

html[data-theme="dark"] .legal-summary,
html[data-theme="dark"] .legal-toc,
html[data-theme="dark"] .legal-card {
    background: linear-gradient(145deg, #172f3c, #122733);
    border-color: var(--theme-night-line);
    box-shadow: 0 14px 34px rgba(1, 10, 16, 0.25);
}

html[data-theme="dark"] .legal-card--accent {
    background: linear-gradient(135deg, rgba(0, 188, 170, 0.1), rgba(255, 148, 120, 0.06));
}

html[data-theme="dark"] .legal-toc a {
    color: var(--theme-night-muted);
}

html[data-theme="dark"] .legal-toc a:hover,
html[data-theme="dark"] .legal-toc a:focus-visible,
html[data-theme="dark"] .legal-toc a[aria-current="location"] {
    color: #8cebe2;
    background: rgba(0, 188, 170, 0.1);
}

html[data-theme="dark"] .legal-contact-item {
    background: rgba(0, 188, 170, 0.065);
    border-color: rgba(114, 221, 209, 0.14);
}

html[data-theme="dark"] .legal-note {
    background: rgba(0, 188, 170, 0.07);
}

html[data-theme="dark"] .legal-note--warning {
    background: rgba(255, 148, 120, 0.08);
}

@media (max-width: 899px) {
    .theme-toggle-header {
        display: none;
    }

    .theme-toggle-mobile {
        display: inline-flex;
        width: 100%;
        min-height: 52px;
        gap: 0.75rem;
        margin-top: 0.7rem;
        padding: 0.75rem 1rem;
        border-radius: 14px;
    }

    html[data-theme="dark"] .theme-toggle-mobile {
        color: #ffd59a;
        background: rgba(255, 213, 154, 0.07);
    }
}

@media (prefers-reduced-motion: reduce) {
    html.theme-transitioning body,
    html.theme-transitioning .navbar,
    html.theme-transitioning .mobile-menu,
    html.theme-transitioning main,
    html.theme-transitioning section,
    html.theme-transitioning [class*="shell"],
    html.theme-transitioning [class*="card"],
    html.theme-transitioning [class*="panel"] {
        transition-duration: 0.01ms;
    }
}
