/* Maskottchen Community — professioneller Hell-/Dunkelmodus 2026-09-27
   Automatisch über prefers-color-scheme, mit manueller Wahl (Auto / Hell / Dunkel).
   Diese Datei liegt bewusst nach styles.css und modern.css. */

:root{
  --theme-bg:#fbf8f3;
  --theme-surface:#ffffff;
  --theme-surface-2:#f4eee5;
  --theme-surface-3:#eee5d8;
  --theme-text:#1f2722;
  --theme-muted:#5f6962;
  --theme-heading:#073e2c;
  --theme-border:rgba(7,62,44,.12);
  --theme-border-strong:rgba(201,148,53,.30);
  --theme-shadow:0 22px 60px rgba(4,43,32,.12);
  --theme-shadow-soft:0 10px 28px rgba(4,43,32,.08);
  --theme-header:rgba(251,248,243,.90);
  --theme-header-solid:rgba(251,248,243,.97);
  --theme-menu:rgba(255,255,255,.985);
  --theme-input:#ffffff;
  --theme-input-focus:#ffffff;
  --theme-inverse:#ffffff;
  --theme-photo-filter:none;
  --theme-photo-opacity:1;
  --theme-overlay:rgba(4,24,18,.34);
  color-scheme:light;
}

html[data-theme="dark"]{
  --theme-bg:#09110e;
  --theme-surface:#101a16;
  --theme-surface-2:#131f1a;
  --theme-surface-3:#18251f;
  --theme-text:#f5f1e9;
  --theme-muted:#bac3bc;
  --theme-heading:#f0d39a;
  --theme-border:rgba(230,189,114,.17);
  --theme-border-strong:rgba(230,189,114,.34);
  --theme-shadow:0 24px 68px rgba(0,0,0,.34);
  --theme-shadow-soft:0 12px 34px rgba(0,0,0,.24);
  --theme-header:rgba(8,17,13,.88);
  --theme-header-solid:rgba(8,17,13,.97);
  --theme-menu:rgba(15,26,21,.985);
  --theme-input:#0c1612;
  --theme-input-focus:#101d17;
  --theme-inverse:#08110d;
  --theme-photo-filter:brightness(.84) saturate(.90) contrast(1.06);
  --theme-photo-opacity:.96;
  --theme-overlay:rgba(0,0,0,.56);
  --mc-cream:#111c17;
  --mc-cream-soft:#09110e;
  --mc-surface:#101a16;
  --mc-ink:#f5f1e9;
  --mc-muted:#bac3bc;
  --mc-line:rgba(230,189,114,.17);
  --mc-line-gold:rgba(230,189,114,.34);
  --mc-shadow-sm:0 12px 34px rgba(0,0,0,.24);
  --mc-shadow:0 24px 68px rgba(0,0,0,.34);
  --mc-shadow-lg:0 34px 92px rgba(0,0,0,.42);
  --cream:#111c17;
  --cream-2:#09110e;
  --white:#101a16;
  --ink:#f5f1e9;
  --muted:#bac3bc;
  --line:rgba(230,189,114,.17);
  color-scheme:dark;
}

/* Fallback if JavaScript is unavailable: respect the operating-system setting. */
@media (prefers-color-scheme:dark){
  html:not([data-theme]){
    --theme-bg:#09110e;
    --theme-surface:#101a16;
    --theme-surface-2:#131f1a;
    --theme-surface-3:#18251f;
    --theme-text:#f5f1e9;
    --theme-muted:#bac3bc;
    --theme-heading:#f0d39a;
    --theme-border:rgba(230,189,114,.17);
    --theme-border-strong:rgba(230,189,114,.34);
    --theme-input:#0c1612;
    --theme-input-focus:#101d17;
    --theme-photo-filter:brightness(.84) saturate(.90) contrast(1.06);
    color-scheme:dark;
  }
}

html,body{background-color:var(--theme-bg)}
body{color:var(--theme-text)}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 12% 0%,rgba(201,148,53,.08),transparent 28rem),
    radial-gradient(circle at 88% 28%,rgba(19,104,73,.08),transparent 30rem),
    var(--theme-bg) !important;
}
html[data-theme="dark"] main{background:transparent}
html[data-theme="dark"] ::selection{background:#d8aa4f;color:#07110d}
html[data-theme="dark"] :focus-visible{outline-color:#efc978}

/* Header and navigation */
html[data-theme="dark"] .site-header{
  background:var(--theme-header) !important;
  border-color:var(--theme-border) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.02) inset !important;
}
html[data-theme="dark"] .site-header.is-scrolled{
  background:var(--theme-header-solid) !important;
  border-color:rgba(230,189,114,.22) !important;
  box-shadow:0 14px 38px rgba(0,0,0,.28) !important;
}
html[data-theme="dark"] .logo img{
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.26)) brightness(.97) saturate(.96);
}
html[data-theme="dark"] .nav{color:#d9e0db !important}
html[data-theme="dark"] .nav .nav-link:hover,
html[data-theme="dark"] .nav .nav-link.active,
html[data-theme="dark"] .nav button.nav-link:hover,
html[data-theme="dark"] .nav button.nav-link.active,
html[data-theme="dark"] .nav .nav-link[aria-current="page"]{color:#e7bd69 !important}
html[data-theme="dark"] .dropdown-menu{
  background:var(--theme-menu) !important;
  border-color:var(--theme-border) !important;
  box-shadow:0 28px 70px rgba(0,0,0,.42) !important;
}
html[data-theme="dark"] .dropdown-menu a{color:var(--theme-text) !important}
html[data-theme="dark"] .dropdown-menu a:hover,
html[data-theme="dark"] .dropdown-menu a:focus-visible,
html[data-theme="dark"] .dropdown-menu a.active{
  background:linear-gradient(135deg,#0c5038,#11704d) !important;
  color:#fff !important;
}

/* Theme control */
.theme-control{position:relative;display:flex;align-items:center;z-index:2300}
.theme-toggle{
  width:46px;height:46px;min-width:46px;padding:0;border:1px solid var(--theme-border-strong);
  border-radius:999px;background:rgba(255,255,255,.78);color:#123d2c;display:grid;place-items:center;
  cursor:pointer;box-shadow:0 8px 24px rgba(4,43,32,.07);position:relative;overflow:visible;
  transition:transform .22s var(--mc-ease),background .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease;
}
.theme-toggle:hover{transform:translateY(-1px);border-color:var(--mc-gold);box-shadow:0 12px 28px rgba(4,43,32,.12)}
.theme-toggle-icon{display:grid;place-items:center;width:22px;height:22px;font-size:19px;line-height:1}
.theme-toggle-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.theme-menu{
  position:absolute;right:0;top:calc(100% + 12px);width:min(290px,calc(100vw - 24px));padding:10px;
  border:1px solid var(--theme-border);border-radius:20px;background:var(--theme-menu);
  box-shadow:0 24px 70px rgba(4,43,32,.18);backdrop-filter:blur(18px) saturate(1.1);
  -webkit-backdrop-filter:blur(18px) saturate(1.1);opacity:0;visibility:hidden;transform:translateY(-6px) scale(.98);
  transform-origin:top right;transition:opacity .18s ease,transform .18s var(--mc-ease),visibility .18s ease;
}
.theme-control.is-open .theme-menu{opacity:1;visibility:visible;transform:none}
.theme-menu-title{padding:8px 10px 10px;color:var(--theme-muted);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.theme-option{
  width:100%;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:11px 12px;
  border:0;border-radius:14px;background:transparent;color:var(--theme-text);text-align:left;cursor:pointer;
  transition:background .18s ease,color .18s ease,transform .18s var(--mc-ease);
}
.theme-option:hover,.theme-option:focus-visible{background:rgba(201,148,53,.10);transform:translateX(1px)}
.theme-option[aria-checked="true"]{background:rgba(201,148,53,.14);color:var(--theme-heading)}
.theme-option-icon{font-size:18px;text-align:center}
.theme-option-copy strong{display:block;font-size:13px;line-height:1.2}
.theme-option-copy small{display:block;margin-top:3px;color:var(--theme-muted);font-size:11px;line-height:1.3}
.theme-option-check{color:var(--mc-gold);font-size:15px;opacity:0}
.theme-option[aria-checked="true"] .theme-option-check{opacity:1}
html[data-theme="dark"] .theme-toggle{
  background:rgba(16,29,23,.92);color:#f0cf8b;border-color:rgba(230,189,114,.28);
  box-shadow:0 10px 28px rgba(0,0,0,.26)
}
html[data-theme="dark"] .theme-toggle:hover{background:#14241d;border-color:#d7aa51;box-shadow:0 14px 30px rgba(0,0,0,.34)}
html[data-theme="dark"] .theme-menu{box-shadow:0 28px 74px rgba(0,0,0,.48)}

/* Text colors / surfaces */
html[data-theme="dark"] .hero h1,
html[data-theme="dark"] .display,
html[data-theme="dark"] .page-title,
html[data-theme="dark"] .card h3,
html[data-theme="dark"] .process-item h3,
html[data-theme="dark"] .legal-content h2,
html[data-theme="dark"] .signature,
html[data-theme="dark"] .price,
html[data-theme="dark"] .mobile-hero-copy h1,
html[data-theme="dark"] .mobile-section-heading h2,
html[data-theme="dark"] .mobile-cta-text h2,
html[data-theme="dark"] .mobile-services-hero h1,
html[data-theme="dark"] .mobile-service-body h2,
html[data-theme="dark"] .tile .caption,
html[data-theme="dark"] .gallery figcaption{color:var(--theme-heading) !important}
html[data-theme="dark"] .lead,
html[data-theme="dark"] .section-head .lead,
html[data-theme="dark"] .card p,
html[data-theme="dark"] .legal-content p,
html[data-theme="dark"] .legal-content li,
html[data-theme="dark"] .faq-list p,
html[data-theme="dark"] .form-note,
html[data-theme="dark"] .field-help,
html[data-theme="dark"] .mobile-lead,
html[data-theme="dark"] .mobile-intro-copy,
html[data-theme="dark"] .mobile-feature-card p,
html[data-theme="dark"] .mobile-service-body p,
html[data-theme="dark"] .mobile-cta-text p{color:var(--theme-muted) !important}
html[data-theme="dark"] .breadcrumbs{color:#aab6ae !important}
html[data-theme="dark"] .breadcrumbs a{color:#d9dfda !important}
html[data-theme="dark"] .link,
html[data-theme="dark"] .card .link,
html[data-theme="dark"] .legal-toc a{color:#e5bc6b !important}

html[data-theme="dark"] .hero{
  background:
    radial-gradient(circle at 82% 12%,rgba(201,148,53,.14),transparent 22rem),
    radial-gradient(circle at 20% 70%,rgba(30,135,94,.08),transparent 30rem),
    linear-gradient(145deg,#09120e 0%,#0d1813 62%,#14231c 100%) !important;
}
html[data-theme="dark"] .page-hero{
  background:
    radial-gradient(circle at 80% 0%,rgba(201,148,53,.13),transparent 26rem),
    linear-gradient(145deg,#09120e 0%,#111e18 100%) !important;
}
html[data-theme="dark"] .hero::before,
html[data-theme="dark"] .page-hero::before{border-color:rgba(201,148,53,.07) !important}
html[data-theme="dark"] .hero::after,
html[data-theme="dark"] .page-hero::after{border-left-color:rgba(230,189,114,.34) !important}
html[data-theme="dark"] .trust-row{border-top-color:var(--theme-border) !important}
html[data-theme="dark"] .trust-item{color:#c9d1cb !important}
html[data-theme="dark"] .trust-icon{background:rgba(18,31,25,.88) !important;border-color:rgba(230,189,114,.30) !important;box-shadow:0 8px 24px rgba(0,0,0,.22)}

html[data-theme="dark"] .section:not(.section-green):not(.christmas-final-cta){background-color:transparent}
html[data-theme="dark"] .section-cream,
html[data-theme="dark"] .legal-section{
  background:linear-gradient(180deg,#0c1612 0%,#101b16 100%) !important;
}
html[data-theme="dark"] .card,
html[data-theme="dark"] .process-item,
html[data-theme="dark"] .tile,
html[data-theme="dark"] .gallery figure,
html[data-theme="dark"] .legal-content,
html[data-theme="dark"] .legal-toc,
html[data-theme="dark"] .faq-list details,
html[data-theme="dark"] .package-card,
html[data-theme="dark"] .price-card,
html[data-theme="dark"] .testimonial-card,
html[data-theme="dark"] .christmas-media-card,
html[data-theme="dark"] .gallery-text-card{
  background:linear-gradient(145deg,rgba(18,31,25,.96),rgba(13,24,19,.96)) !important;
  border-color:var(--theme-border) !important;
  box-shadow:var(--theme-shadow-soft) !important;
}
html[data-theme="dark"] .card::before{border-color:rgba(230,189,114,.06)}
html[data-theme="dark"] .tile .caption{background:#111e18 !important}
html[data-theme="dark"] .gallery figcaption{background:#111e18 !important}
html[data-theme="dark"] .gallery .contain{background:#111e18 !important}
html[data-theme="dark"] .image-frame,
html[data-theme="dark"] .hero-photo,
html[data-theme="dark"] .float-card{
  background:#101b16 !important;
  border-color:rgba(230,189,114,.14) !important;
  box-shadow:var(--theme-shadow) !important;
}
html[data-theme="dark"] .float-card strong{color:#ead09a !important}
html[data-theme="dark"] .image-frame.contain img{background:#0e1914 !important}

/* Photos and graphics: reduce glare without changing brand artwork unnaturally. */
html[data-theme="dark"] .hero-photo img,
html[data-theme="dark"] .image-frame img,
html[data-theme="dark"] .gallery img,
html[data-theme="dark"] .christmas-media-card img,
html[data-theme="dark"] .christmas-hero-visual img,
html[data-theme="dark"] .christmas-image img,
html[data-theme="dark"] .christmas-contact-image img,
html[data-theme="dark"] .mobile-story-image img,
html[data-theme="dark"] .mobile-hero-figure img,
html[data-theme="dark"] .mobile-promo-figures img{
  filter:var(--theme-photo-filter) !important;
  opacity:var(--theme-photo-opacity);
}
html[data-theme="dark"] img[data-dark-src]{filter:none !important;opacity:1 !important}
html[data-theme="dark"] .logo img{opacity:1 !important}

/* Buttons and interactive controls */
html[data-theme="dark"] .btn{
  background:linear-gradient(135deg,#0b563b,#0f7650) !important;color:#fff !important;
  border:1px solid rgba(230,189,114,.16) !important;box-shadow:0 10px 28px rgba(0,0,0,.24) !important;
}
html[data-theme="dark"] .btn:hover{background:linear-gradient(135deg,#0d6645,#13845a) !important;box-shadow:0 14px 34px rgba(0,0,0,.32) !important}
html[data-theme="dark"] .btn-secondary{
  background:linear-gradient(135deg,#e0b45f,#bf8727) !important;color:#09120e !important;
  border-color:rgba(255,231,180,.24) !important;box-shadow:0 10px 26px rgba(0,0,0,.22) !important;
}
html[data-theme="dark"] .btn-secondary:hover{background:linear-gradient(135deg,#edc878,#ce9838) !important;box-shadow:0 14px 34px rgba(0,0,0,.30) !important}
html[data-theme="dark"] .btn-light{
  background:#14231d !important;color:#f0d39a !important;border-color:rgba(230,189,114,.24) !important;
}
html[data-theme="dark"] .btn-light:hover{background:#192b23 !important;border-color:#c99435 !important;color:#f6dfad !important}
html[data-theme="dark"] .btn-outline{
  background:transparent !important;color:#f0d39a !important;border-color:rgba(230,189,114,.52) !important;
}
html[data-theme="dark"] .btn-outline:hover{background:rgba(201,148,53,.12) !important}
html[data-theme="dark"] .filter-row button,
html[data-theme="dark"] .tag{
  background:#121f19 !important;color:#e8d09f !important;border-color:var(--theme-border) !important;
}
html[data-theme="dark"] .filter-row button.active,
html[data-theme="dark"] .filter-row button:hover{
  background:linear-gradient(135deg,#0b563b,#0f7650) !important;color:#fff !important;border-color:#197d58 !important;
}

/* Forms */
html[data-theme="dark"] form:not(.christmas-request-form),
html[data-theme="dark"] .christmas-request-form{
  background:linear-gradient(145deg,rgba(18,31,25,.96),rgba(12,22,18,.98)) !important;
  border-color:var(--theme-border) !important;box-shadow:var(--theme-shadow-soft) !important;
}
html[data-theme="dark"] .field label,
html[data-theme="dark"] .calculator-card label,
html[data-theme="dark"] .consent-line label{color:#e8ece9 !important}
html[data-theme="dark"] .field input,
html[data-theme="dark"] .field select,
html[data-theme="dark"] .field textarea,
html[data-theme="dark"] .calculator-card input,
html[data-theme="dark"] .calculator-card select{
  background:var(--theme-input) !important;color:var(--theme-text) !important;
  border-color:rgba(230,189,114,.18) !important;box-shadow:0 1px 0 rgba(255,255,255,.025) inset !important;
}
html[data-theme="dark"] .field input::placeholder,
html[data-theme="dark"] .field textarea::placeholder{color:#7f8e85 !important}
html[data-theme="dark"] .field input:focus,
html[data-theme="dark"] .field select:focus,
html[data-theme="dark"] .field textarea:focus,
html[data-theme="dark"] .calculator-card input:focus,
html[data-theme="dark"] .calculator-card select:focus{
  background:var(--theme-input-focus) !important;border-color:#d6a74c !important;
  box-shadow:0 0 0 4px rgba(201,148,53,.16) !important;
}
html[data-theme="dark"] input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1) sepia(.2) saturate(.5);opacity:.8}
html[data-theme="dark"] .form-feedback.is-success{background:rgba(20,103,70,.20) !important;color:#aee2c9 !important;border-color:rgba(68,171,124,.30) !important}
html[data-theme="dark"] .form-feedback.is-error{background:rgba(132,38,38,.18) !important;color:#ffc1c1 !important;border-color:rgba(218,92,92,.28) !important}

/* Legal / cookie / calculators */
html[data-theme="dark"] .legal-content code{background:#17251f !important;border-color:var(--theme-border) !important;color:#f2d7a0 !important}
html[data-theme="dark"] .cookie-banner{
  background:rgba(14,24,19,.97) !important;border-color:var(--theme-border) !important;
  box-shadow:0 28px 84px rgba(0,0,0,.48) !important;
}
html[data-theme="dark"] .cookie-banner strong{color:#efd29a !important}
html[data-theme="dark"] .cookie-banner p{color:#bcc6bf !important}
html[data-theme="dark"] .cookie-banner a{color:#e7bd69 !important}
html[data-theme="dark"] .calc-result{background:#13221b !important;border-color:var(--theme-border) !important;color:#e8ece9 !important}

/* Dark sections remain rich green, but tuned for OLED/low-light use. */
html[data-theme="dark"] .section-green,
html[data-theme="dark"] .why-bar,
html[data-theme="dark"] .cta-band,
html[data-theme="dark"] .contact-card,
html[data-theme="dark"] .christmas-final-cta,
html[data-theme="dark"] .christmas-contact-card,
html[data-theme="dark"] .video-consent{
  background:
    radial-gradient(circle at 86% 8%,rgba(230,189,114,.12),transparent 20rem),
    linear-gradient(135deg,#07150f,#0a2a1d 58%,#0a3826) !important;
  border-color:rgba(230,189,114,.16) !important;
}
html[data-theme="dark"] .section-green .display,
html[data-theme="dark"] .section-green h2,
html[data-theme="dark"] .cta-band h2,
html[data-theme="dark"] .contact-card h2,
html[data-theme="dark"] .christmas-final-cta h2,
html[data-theme="dark"] .video-consent h3{color:#fff4df !important}
html[data-theme="dark"] .section-green .lead,
html[data-theme="dark"] .section-green p,
html[data-theme="dark"] .cta-band p,
html[data-theme="dark"] .contact-card p,
html[data-theme="dark"] .christmas-final-cta p,
html[data-theme="dark"] .video-consent p{color:rgba(244,241,232,.79) !important}

/* Footer */
html[data-theme="dark"] .site-footer{
  background:
    radial-gradient(circle at 82% 0%,rgba(230,189,114,.07),transparent 24rem),
    #050d0a !important;
  border-top:1px solid rgba(230,189,114,.12);
}
html[data-theme="dark"] .footer-logo img{background:#121e19 !important;border:1px solid rgba(230,189,114,.14);filter:none !important}
html[data-theme="dark"] .footer-links a{color:rgba(239,242,239,.72) !important}
html[data-theme="dark"] .footer-links a:hover{color:#e9bd67 !important}
html[data-theme="dark"] .footer-bottom{color:rgba(239,242,239,.56) !important;border-top-color:rgba(230,189,114,.12) !important}

/* Mobile layout and system dark mode */
@media (max-width:860px){
  .theme-toggle{width:48px;height:48px;min-width:48px;border-radius:17px}
  .theme-menu{position:fixed;right:12px;top:76px;width:min(300px,calc(100vw - 24px))}
  html[data-theme="dark"] body{background:#09110e !important}
  html[data-theme="dark"] body::before{background:var(--theme-overlay) !important}
  html[data-theme="dark"] .site-header{background:transparent !important;border:0 !important;box-shadow:none !important}
  html[data-theme="dark"] .menu-toggle{
    background:rgba(16,29,23,.94) !important;border-color:rgba(230,189,114,.30) !important;
    box-shadow:0 10px 24px rgba(0,0,0,.28) !important;
  }
  html[data-theme="dark"] .menu-toggle span,
  html[data-theme="dark"] .menu-toggle::before,
  html[data-theme="dark"] .menu-toggle::after{background:#f0cf8b !important}
  html[data-theme="dark"] body.menu-open .menu-toggle{background:#14231d !important;border-color:rgba(230,189,114,.45) !important}
  html[data-theme="dark"] .nav{
    background:rgba(13,24,19,.985) !important;border-color:rgba(230,189,114,.18) !important;
    box-shadow:0 28px 60px rgba(0,0,0,.46) !important;
  }
  html[data-theme="dark"] .nav a,
  html[data-theme="dark"] .nav button.nav-link{color:#e6ebe7 !important}
  html[data-theme="dark"] .nav a.active,
  html[data-theme="dark"] .nav a:hover,
  html[data-theme="dark"] .nav button.nav-link.active,
  html[data-theme="dark"] .nav button.nav-link:hover{
    background:linear-gradient(135deg,#0b563b,#0f7650) !important;color:#fff !important;
  }
  html[data-theme="dark"] .mobile-home-shell,
  html[data-theme="dark"] .mobile-services-shell{background:#09110e !important}
  html[data-theme="dark"] .mobile-feature-grid{border-color:rgba(230,189,114,.14) !important}
  html[data-theme="dark"] .mobile-feature-card{border-color:rgba(230,189,114,.14) !important;background:rgba(16,28,22,.38)}
  html[data-theme="dark"] .mobile-story-section,
  html[data-theme="dark"] .mobile-promo-card{
    background:linear-gradient(135deg,#07150f,#0a3826) !important;box-shadow:0 18px 44px rgba(0,0,0,.30) !important;
  }
  html[data-theme="dark"] .mobile-cta-card{
    background:linear-gradient(145deg,#121f19,#0e1914) !important;border-color:rgba(230,189,114,.34) !important;
    box-shadow:0 16px 34px rgba(0,0,0,.25) !important;
  }
  html[data-theme="dark"] .mobile-service-row{
    background:rgba(16,28,22,.96) !important;border-color:rgba(230,189,114,.15) !important;
    box-shadow:0 12px 30px rgba(0,0,0,.23) !important;
  }
  html[data-theme="dark"] .mobile-service-thumb{background:#111e18 !important;border-color:rgba(230,189,114,.13) !important}
  html[data-theme="dark"] .mobile-values-bar,
  html[data-theme="dark"] .mobile-sticky{
    background:linear-gradient(135deg,#06110d,#0a3324) !important;border-color:rgba(230,189,114,.13) !important;
  }
  html[data-theme="dark"] .mobile-sticky{box-shadow:0 -10px 28px rgba(0,0,0,.30) !important}
  html[data-theme="dark"] .mobile-sticky a{color:rgba(239,242,239,.76) !important}
  html[data-theme="dark"] .mobile-sticky a:hover,
  html[data-theme="dark"] .mobile-sticky a.active{color:#fff !important}
}

@media (max-width:520px){
  .theme-toggle{width:46px;height:46px;min-width:46px;border-radius:16px}
  .header-actions{gap:7px !important}
}
@media (max-width:390px){
  .theme-toggle{width:42px;height:42px;min-width:42px;border-radius:15px;margin-top:6px}
  .theme-menu{top:70px;right:10px;width:calc(100vw - 20px)}
}

/* Desktop header gained one compact theme control; reserve only the width actually required. */
@media (min-width:1181px){
  .site-header .header-inner{grid-template-columns:178px minmax(0,1fr) auto !important}
  .site-header .header-actions{min-width:188px !important}
  .site-header .nav a:last-child{margin-right:22px !important}
}

/* Color changes remain calm; motion preferences continue to win. */
@media (prefers-reduced-motion:no-preference){
  html.theme-ready body,
  html.theme-ready .site-header,
  html.theme-ready .card,
  html.theme-ready .tile,
  html.theme-ready .gallery figure,
  html.theme-ready form,
  html.theme-ready .legal-content,
  html.theme-ready .legal-toc,
  html.theme-ready .faq-list details,
  html.theme-ready .mobile-service-row,
  html.theme-ready .mobile-cta-card,
  html.theme-ready .theme-toggle{
    transition-property:background-color,background,border-color,color,box-shadow,filter;
    transition-duration:.28s;
    transition-timing-function:ease;
  }
}
@media (prefers-reduced-motion:reduce){
  .theme-menu{transition:none !important}
}


/* Christmas offer optimisation dark mode 2026-09-27 */
html[data-theme="dark"] .package-card-head,
html[data-theme="dark"] .price-card-top{border-bottom-color:rgba(230,189,114,.16) !important}
html[data-theme="dark"] .package-badge,
html[data-theme="dark"] .price-label,
html[data-theme="dark"] .value-kicker{background:rgba(230,189,114,.10) !important;color:#efd29a !important;border:1px solid rgba(230,189,114,.14)}
html[data-theme="dark"] .package-price,
html[data-theme="dark"] .price-card .price{color:#fff1cf !important}
html[data-theme="dark"] .package-intro,
html[data-theme="dark"] .price-sub,
html[data-theme="dark"] .package-meta,
html[data-theme="dark"] .prefill-banner p{color:#c3ccc6 !important}
html[data-theme="dark"] .prefill-banner{background:linear-gradient(145deg,rgba(18,31,25,.96),rgba(12,22,18,.98)) !important;border-color:rgba(230,189,114,.16) !important;box-shadow:var(--theme-shadow-soft) !important}
html[data-theme="dark"] .prefill-banner strong,
html[data-theme="dark"] .prefill-banner span{color:#fff1cf !important}


/* Christmas refinement dark mode 2026-09-27 */
html[data-theme="dark"] .field-helper-link,
html[data-theme="dark"] .consent-line a{color:#efd29a !important}
html[data-theme="dark"] .field-helper-link:hover,
html[data-theme="dark"] .consent-line a:hover{color:#fff1cf !important}
html[data-theme="dark"] .christmas-request-form .field-help{color:#9eaaa2 !important}


/* Final Christmas value stack dark mode 2026-09-27 */
html[data-theme="dark"] .christmas-value-stack .value-number{
  background:rgba(230,189,114,.10) !important;
  border-color:rgba(230,189,114,.24) !important;
  color:#fff1cf !important;
}
html[data-theme="dark"] .field input[type="file"]::file-selector-button{
  background:linear-gradient(135deg,#0b563b,#0f7650) !important;
  color:#fff !important;
}


/* Final contact consent dark-mode polish 2026-09-27 */
html[data-theme="dark"] .privacy-consent > label{
  background:rgba(18,31,25,.82) !important;
  border-color:rgba(230,189,114,.18) !important;
}
html[data-theme="dark"] .privacy-consent > label > span{color:#e8ece9 !important}
html[data-theme="dark"] .privacy-consent input[type="checkbox"]{
  background:#0e1914 !important;
  border-color:#819088 !important;
}
html[data-theme="dark"] .privacy-consent input[type="checkbox"]:checked{
  background-color:#c99435 !important;
  border-color:#e1b761 !important;
}


/* =========================================================
   Mobile polish + dark-mode contrast pass 2026-09-27
   Final override layer. Intentionally loaded after all prior
   website styles so mobile contrast/layout remains predictable.
   ========================================================= */
@media (max-width:860px){
  body{padding-bottom:calc(108px + env(safe-area-inset-bottom)) !important}

  /* Bottom navigation: readable labels, no awkward word splitting, and enough
     page clearance so content cannot disappear behind the navigation. */
  .mobile-sticky{
    left:10px !important;
    right:10px !important;
    bottom:max(10px,env(safe-area-inset-bottom)) !important;
    min-height:78px !important;
    padding:7px 5px !important;
    border-radius:24px !important;
  }
  .mobile-sticky a{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:0 !important;
    min-height:62px !important;
    padding:6px 1px !important;
    font-size:clamp(7.5px,2.2vw,9px) !important;
    line-height:1.05 !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
  }
  .mobile-sticky a b{font-size:20px !important;line-height:1 !important;margin-bottom:5px !important}

  /* Christmas hero: keep both brand words intact and make primary actions
     full-width, thumb-friendly and visually equal. */
  .christmas-hero .page-title{
    max-width:100% !important;
    font-size:clamp(36px,9.6vw,46px) !important;
    line-height:.98 !important;
    letter-spacing:-.035em !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
    text-wrap:initial !important;
  }
  .christmas-hero .page-title .gold{display:block !important;margin-top:4px !important}
  .christmas-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
    margin:28px 0 0 !important;
  }
  .christmas-actions > .btn-secondary,
  .christmas-actions > .btn-light{
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    min-height:58px !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:15px 18px !important;
    box-sizing:border-box !important;
    font-size:12px !important;
    line-height:1.2 !important;
    text-align:center !important;
  }

  /* Cards and offer rows breathe more on phones without losing hierarchy. */
  .christmas-offer-grid .package-card,
  .christmas-price-grid .price-card,
  .christmas-values-section .christmas-value-card{
    border-radius:26px !important;
  }
  .christmas-offer-grid .package-card h3,
  .christmas-price-grid .price-card h3{
    font-size:clamp(28px,8.2vw,38px) !important;
    line-height:1.02 !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
    text-wrap:balance !important;
  }
  .christmas-offer-grid .package-price,
  .christmas-price-grid .price-card .price{font-size:clamp(42px,13vw,56px) !important}
  .christmas-offer-grid .package-card-actions,
  .christmas-price-grid .price-card-actions{gap:12px !important}
  .christmas-offer-grid .package-card-actions .btn-light,
  .christmas-offer-grid .package-card-actions .btn-secondary,
  .christmas-price-grid .price-card-actions .btn-light,
  .christmas-price-grid .price-card-actions .btn-secondary{
    min-height:56px !important;
    padding:14px 16px !important;
    font-size:12px !important;
  }
  .christmas-offer-grid .package-meta,
  .christmas-price-grid .package-meta{font-size:12px !important;line-height:1.45 !important}

  .christmas-anchorbar .big-tags{
    justify-content:flex-start !important;
    gap:10px !important;
  }
  .christmas-anchorbar .tag{min-height:44px !important;padding:11px 15px !important}

  .christmas-gallery .gallery-text-card > div{padding:24px !important}
  .christmas-gallery .gallery-text-card h3{font-size:clamp(26px,7.3vw,34px) !important;line-height:1.08 !important}

  .christmas-request-redirect .christmas-final-cta{padding:26px !important}
  .christmas-request-redirect .christmas-final-cta .btn-secondary{min-height:56px !important}

  /* General mobile typography: do not allow long headings to be broken in the
     middle of words. */
  .page-title,.display,.card h3,.process-item h3{
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }
}

/* High-contrast mobile dark mode. This explicitly covers components whose
   legacy light-mode rules used literal dark green/gray values. */
@media (max-width:860px){
  html[data-theme="dark"] body{
    background:#07100c !important;
    color:#f4f2eb !important;
  }
  html[data-theme="dark"] main{background:#07100c !important}

  html[data-theme="dark"] .section:not(.section-green),
  html[data-theme="dark"] .section-cream,
  html[data-theme="dark"] .christmas-anchorbar{
    color:#f4f2eb !important;
  }
  html[data-theme="dark"] .section-cream,
  html[data-theme="dark"] .christmas-anchorbar{
    background:linear-gradient(180deg,#0a1410 0%,#0c1813 100%) !important;
  }

  html[data-theme="dark"] .section p,
  html[data-theme="dark"] .section li,
  html[data-theme="dark"] .section .lead,
  html[data-theme="dark"] .package-intro,
  html[data-theme="dark"] .price-sub,
  html[data-theme="dark"] .package-meta,
  html[data-theme="dark"] .process-item p,
  html[data-theme="dark"] .gallery-text-card p,
  html[data-theme="dark"] .testimonial-card p{
    color:#cbd3cd !important;
  }

  html[data-theme="dark"] .check-list li,
  html[data-theme="dark"] .section-green .check-list li,
  html[data-theme="dark"] .card .check-list li,
  html[data-theme="dark"] .gallery-text-card .check-list li,
  html[data-theme="dark"] #weihnachten-bedingungen .check-list li{
    color:#dce2de !important;
  }
  html[data-theme="dark"] .check-list li::before{
    background:#0a6848 !important;
    color:#fff !important;
    box-shadow:0 0 0 1px rgba(230,189,114,.08) inset !important;
  }

  html[data-theme="dark"] .card,
  html[data-theme="dark"] .package-card,
  html[data-theme="dark"] .price-card,
  html[data-theme="dark"] .testimonial-card,
  html[data-theme="dark"] .gallery-text-card,
  html[data-theme="dark"] .process-item,
  html[data-theme="dark"] .faq-list details{
    background:linear-gradient(145deg,#101d17 0%,#0c1712 100%) !important;
    border-color:rgba(230,189,114,.20) !important;
    box-shadow:0 14px 36px rgba(0,0,0,.28) !important;
  }

  html[data-theme="dark"] .card h3,
  html[data-theme="dark"] .package-card h3,
  html[data-theme="dark"] .price-card h3,
  html[data-theme="dark"] .testimonial-card h3,
  html[data-theme="dark"] .gallery-text-card h3,
  html[data-theme="dark"] .process-item h3,
  html[data-theme="dark"] .faq-list summary{
    color:#f1d291 !important;
  }
  html[data-theme="dark"] .price,
  html[data-theme="dark"] .package-price{color:#f5ddb0 !important}

  html[data-theme="dark"] .note-card{
    background:linear-gradient(145deg,#111f18,#0d1813) !important;
    color:#f0eee7 !important;
    border:1px solid rgba(230,189,114,.24) !important;
    border-left:5px solid #d6a445 !important;
    box-shadow:0 14px 34px rgba(0,0,0,.27) !important;
  }

  html[data-theme="dark"] .tag,
  html[data-theme="dark"] .big-tags .tag{
    background:#101d17 !important;
    color:#f0cf8d !important;
    border-color:rgba(230,189,114,.25) !important;
  }
  html[data-theme="dark"] .tag:hover,
  html[data-theme="dark"] .tag:focus-visible{
    background:#173025 !important;
    color:#ffe2a6 !important;
    border-color:#c99435 !important;
  }

  html[data-theme="dark"] .package-badge,
  html[data-theme="dark"] .price-label,
  html[data-theme="dark"] .value-kicker{
    background:rgba(230,189,114,.10) !important;
    color:#f2d49a !important;
    border-color:rgba(230,189,114,.22) !important;
  }

  html[data-theme="dark"] .christmas-values-section{
    background:linear-gradient(180deg,#06110d 0%,#082219 100%) !important;
  }
  html[data-theme="dark"] .christmas-values-section > .container > div > p{color:#d2dad4 !important}
  html[data-theme="dark"] .christmas-values-section .christmas-value-card p{color:#d2dad4 !important}

  html[data-theme="dark"] .video-consent,
  html[data-theme="dark"] .calculator-card,
  html[data-theme="dark"] .christmas-final-cta{
    color:#f4f2eb !important;
  }

  html[data-theme="dark"] .calc-result{
    background:#13231b !important;
    color:#eef2ef !important;
    border-color:rgba(230,189,114,.20) !important;
  }

  html[data-theme="dark"] .christmas-actions .btn-secondary{
    background:linear-gradient(135deg,#e2b75f,#c78d28) !important;
    color:#07110d !important;
    border-color:rgba(255,235,192,.35) !important;
    box-shadow:0 12px 30px rgba(0,0,0,.28) !important;
  }
  html[data-theme="dark"] .christmas-actions .btn-light{
    background:#13241c !important;
    color:#f2d397 !important;
    border:1px solid rgba(230,189,114,.36) !important;
    box-shadow:0 10px 26px rgba(0,0,0,.22) !important;
  }

  html[data-theme="dark"] .mobile-sticky{
    background:linear-gradient(135deg,rgba(4,27,19,.985),rgba(5,55,38,.985)) !important;
    border-color:rgba(230,189,114,.24) !important;
    box-shadow:0 14px 38px rgba(0,0,0,.48) !important;
  }
  html[data-theme="dark"] .mobile-sticky a{color:#d7ded9 !important}
  html[data-theme="dark"] .mobile-sticky a b{color:#efc978 !important}
  html[data-theme="dark"] .mobile-sticky a.active,
  html[data-theme="dark"] .mobile-sticky a[aria-current="page"]{
    background:rgba(230,189,114,.10) !important;
    color:#fff3d7 !important;
  }

  html[data-theme="dark"] .christmas-contact-card .contact-list a,
  html[data-theme="dark"] .contact-card .contact-list a,
  html[data-theme="dark"] .field-helper-link,
  html[data-theme="dark"] .privacy-consent a{color:#f0cc83 !important}

  html[data-theme="dark"] .form-note,
  html[data-theme="dark"] .field-help{color:#b8c2bb !important}
  html[data-theme="dark"] .privacy-consent > label{
    background:#101d17 !important;
    border-color:rgba(230,189,114,.22) !important;
  }
  html[data-theme="dark"] .privacy-consent > label > span{color:#e5eae6 !important}
}

@media (max-width:420px){
  .christmas-hero .page-title{font-size:clamp(34px,9vw,39px) !important}
  .christmas-actions > .btn-secondary,
  .christmas-actions > .btn-light{min-height:56px !important}
  .christmas-offer-grid .package-card,
  .christmas-price-grid .price-card{padding:22px !important}
  .christmas-values-section .christmas-value-card{padding:22px !important}
  .christmas-gallery .gallery-text-card > div{padding:22px !important}
}

/* Dedicated mobile home/services dark surfaces */
@media (max-width:860px){
  html[data-theme="dark"] .mobile-home-shell,
  html[data-theme="dark"] .mobile-services-shell{background:#07100c !important;color:#f4f2eb !important}
  html[data-theme="dark"] .mobile-section-heading h2,
  html[data-theme="dark"] .mobile-feature-card h3,
  html[data-theme="dark"] .mobile-service-body h2,
  html[data-theme="dark"] .mobile-services-hero h1,
  html[data-theme="dark"] .mobile-cta-text h2{color:#f0d39a !important}
  html[data-theme="dark"] .mobile-intro-copy,
  html[data-theme="dark"] .mobile-services-hero p,
  html[data-theme="dark"] .mobile-feature-card p,
  html[data-theme="dark"] .mobile-service-body p,
  html[data-theme="dark"] .mobile-cta-text p{color:#cbd3cd !important}
  html[data-theme="dark"] .mobile-feature-card,
  html[data-theme="dark"] .mobile-service-row,
  html[data-theme="dark"] .mobile-cta-card{
    background:linear-gradient(145deg,#101d17,#0c1712) !important;
    border-color:rgba(230,189,114,.20) !important;
  }
  html[data-theme="dark"] .mobile-service-thumb{background:#111f19 !important;border-color:rgba(230,189,114,.18) !important}
  html[data-theme="dark"] .mobile-pretitle,
  html[data-theme="dark"] .mobile-kicker{color:#dfb35e !important}
}
