/* =====================================================
   AURORA PAGES – abschließende Designschicht
   Wird nach den seiteneigenen Inline-Styles geladen.
   ===================================================== */

body:not(.page-index) main {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 5% 16%, rgba(29,214,197,.09), transparent 25rem),
    radial-gradient(circle at 96% 72%, rgba(123,108,246,.08), transparent 28rem),
    #f4f8f9;
}

body:not(.page-index) .page-hero {
  padding-top: 168px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

body:not(.page-index) .page-hero::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 390px;
  height: 390px;
  right: -85px;
  bottom: -230px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 41% 59% 63% 37% / 52% 39% 61% 48%;
  box-shadow: inset 0 0 80px rgba(29,214,197,.08);
  transform: rotate(18deg);
}

body:not(.page-index) .page-hero .container::before {
  content: '';
  position: absolute;
  width: 120px;
  height: 5px;
  left: 50%;
  bottom: -72px;
  border-radius: 999px;
  background: linear-gradient(90deg,var(--green),var(--aurora-cyan),var(--aurora-violet));
  transform: translateX(-50%);
}

body:not(.page-index) .page-hero h1 {
  text-shadow: 0 12px 35px rgba(1,15,28,.28);
}

body:not(.page-index) .section {
  background-color: transparent !important;
}

body:not(.page-index) .section-header {
  max-width: 790px;
  margin-bottom: 56px;
}

body:not(.page-index) .section-header h2 {
  font-size: clamp(2.25rem,4.5vw,4rem);
}

/* Leistungen – jede Leistung wird zu einer eigenständigen Showcard */
.page-dienstleistungen main {
  background:
    linear-gradient(90deg,rgba(29,214,197,.07) 1px,transparent 1px),
    linear-gradient(rgba(29,214,197,.07) 1px,transparent 1px),
    #eef5f7;
  background-size: 54px 54px;
}

.page-dienstleistungen main > .section {
  padding: 32px 0 !important;
}

.page-dienstleistungen main > .section:first-of-type { padding-top: 112px !important; }
.page-dienstleistungen main > .section:last-of-type { padding-bottom: 112px !important; }

.page-dienstleistungen .service-detail-grid {
  position: relative;
  overflow: hidden;
  min-height: 410px;
  padding: clamp(34px,5vw,68px);
  border: 1px solid rgba(7,29,53,.08);
  border-radius: 34px 34px 90px 34px;
  background:
    radial-gradient(circle at 94% 5%,rgba(29,214,197,.16),transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(241,247,248,.94));
  box-shadow: 0 24px 65px rgba(7,29,53,.11);
}

.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid {
  border-color: rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 8% 90%,rgba(123,108,246,.22),transparent 34%),
    radial-gradient(circle at 90% 8%,rgba(29,214,197,.2),transparent 34%),
    linear-gradient(145deg,#061c32,#0a4b70);
  box-shadow: 0 30px 75px rgba(4,31,52,.23);
}

.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid h2,
.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid h3,
.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid p,
.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid li {
  color: #fff;
}

.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid p,
.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid li { color: rgba(255,255,255,.72); }
.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-list li { border-color: rgba(255,255,255,.09); background: rgba(255,255,255,.06); }

.page-dienstleistungen .service-detail-grid::after {
  content: '';
  position: absolute;
  width: 190px;
  height: 190px;
  right: -85px;
  bottom: -95px;
  border: 1px solid rgba(11,79,134,.12);
  border-radius: 50%;
}

.page-dienstleistungen .service-detail-grid > div:first-child {
  position: relative;
  z-index: 1;
}

.page-dienstleistungen .service-detail-grid > div:last-child {
  position: relative;
  z-index: 1;
  padding: 28px;
  border: 1px solid rgba(7,29,53,.07);
  border-radius: 25px;
  background: rgba(255,255,255,.68);
  box-shadow: inset 0 1px rgba(255,255,255,.8);
  backdrop-filter: blur(16px);
}

.page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:last-child {
  border-color: rgba(255,255,255,.1);
  background: rgba(255,255,255,.06);
}

.page-dienstleistungen .service-detail-grid h2 {
  font-size: clamp(2rem,3.8vw,3.35rem);
  letter-spacing: -.05em;
}

.page-dienstleistungen .service-detail-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
.page-dienstleistungen .service-detail-list li { border-radius: 13px; }
.page-dienstleistungen .price-value { display: inline-flex; padding: 12px 16px; border-radius: 13px; background: linear-gradient(135deg,rgba(154,216,58,.18),rgba(29,214,197,.12)); }

/* Über uns – Editorial/Bento */
.page-ueber-uns main > .section:nth-of-type(odd) { background: linear-gradient(145deg,#fff,#eef5f7) !important; }
.page-ueber-uns main > .section:nth-of-type(even) {
  background:
    radial-gradient(circle at 8% 15%,rgba(154,216,58,.16),transparent 25rem),
    radial-gradient(circle at 90% 90%,rgba(123,108,246,.17),transparent 28rem),
    #061b30 !important;
}
.page-ueber-uns main > .section:nth-of-type(even) h2,
.page-ueber-uns main > .section:nth-of-type(even) h3,
.page-ueber-uns main > .section:nth-of-type(even) h4 { color:#fff; }
.page-ueber-uns main > .section:nth-of-type(even) p { color:rgba(255,255,255,.68); }
.page-ueber-uns .about-inner,
.page-ueber-uns .why-us-inner {
  gap: clamp(45px,7vw,92px);
}
.page-ueber-uns .about-text {
  position: relative;
  padding: clamp(32px,5vw,62px);
  border: 1px solid rgba(7,29,53,.08);
  border-radius: 30px 30px 80px 30px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 24px 62px rgba(7,29,53,.1);
  backdrop-filter: blur(16px);
}
.page-ueber-uns .why-us-card { border-radius: 34px 34px 90px 34px !important; }
.page-ueber-uns .service-card:nth-child(1),
.page-ueber-uns .service-card:nth-child(6) { grid-column:auto; }
.page-ueber-uns .services-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }

/* Preise – modernes Datenstudio */
.page-preise main > .section { padding-block: 92px !important; }
.page-preise main > .section:nth-of-type(odd) { background: linear-gradient(145deg,#f7fbfc,#eaf2f4) !important; }
.page-preise main > .section:nth-of-type(even) { background:#fff !important; }
.page-preise .price-table-wrap {
  overflow: hidden;
  border: 1px solid rgba(7,29,53,.08) !important;
  border-radius: 28px 28px 62px 28px !important;
  background:#fff;
  box-shadow:0 24px 65px rgba(7,29,53,.11) !important;
}
.page-preise .price-table thead th {
  padding-block:18px;
  background:linear-gradient(90deg,#061b30,#0a5578) !important;
  color:#fff;
}
.page-preise .price-table tbody tr:nth-child(even) { background:rgba(29,214,197,.035); }
.page-preise .price-table tbody tr:hover { background:rgba(154,216,58,.09) !important; }
.page-preise .price-note {
  border:1px solid rgba(29,214,197,.18);
  border-radius:18px !important;
  background:linear-gradient(135deg,rgba(29,214,197,.09),rgba(154,216,58,.08)) !important;
}
.page-preise .service-card { min-height:220px; }

/* Galerie – visuelles Mosaik */
.page-galerie .gallery-filter-bar { border-block:1px solid rgba(7,29,53,.06); }
.page-galerie .section { background:linear-gradient(160deg,#edf5f6,#f9fbfc) !important; }
.page-galerie .gallery-grid {
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-flow:dense;
  gap:18px;
}
.page-galerie .gallery-item { grid-column:span 4; min-height:280px; border-radius:24px 24px 52px 24px !important; }
.page-galerie .gallery-item:nth-child(1),
.page-galerie .gallery-item:nth-child(7) { grid-column:span 8; }
.page-galerie .gallery-item:nth-child(4),
.page-galerie .gallery-item:nth-child(9) { grid-row:span 2; }
.page-galerie .gallery-item-placeholder { background:radial-gradient(circle at 75% 20%,rgba(29,214,197,.18),transparent 40%),linear-gradient(145deg,#fff,#e3edf0) !important; }
.page-galerie .gallery-item-overlay { background:linear-gradient(180deg,transparent 20%,rgba(3,20,35,.9)); }
.page-galerie .gallery-item-tag { border-radius:999px; background:rgba(154,216,58,.9); color:#071d35; }
.page-galerie .gallery-empty { padding:70px 28px; border:1px dashed rgba(11,79,134,.18); border-radius:28px; background:rgba(255,255,255,.72); }

/* Shop – Produkt-Bento */
.page-shop main > .section { background:linear-gradient(145deg,#edf4f6,#fafcfc) !important; }
.page-shop .shop-category-section {
  margin-bottom:58px;
  padding:clamp(24px,4vw,42px);
  border:1px solid rgba(7,29,53,.07);
  border-radius:30px;
  background:rgba(255,255,255,.72);
  box-shadow:0 20px 55px rgba(7,29,53,.08);
  backdrop-filter:blur(14px);
}
.page-shop .shop-section-title { font-size:clamp(1.7rem,3vw,2.5rem); letter-spacing:-.045em; }
.page-shop .product-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); grid-auto-flow:dense; gap:20px; }
.page-shop .product-card { grid-column:span 4; border-radius:25px 25px 58px 25px !important; }
.page-shop .product-card:nth-child(1),
.page-shop .product-card:nth-child(5) { grid-column:span 6; }
.page-shop .product-image { min-height:230px; }
.page-shop .product-badge { border-radius:999px; box-shadow:0 6px 18px rgba(7,29,53,.12); }
.page-shop .product-footer { border-top:1px solid rgba(7,29,53,.06); }
.page-shop .btn-book { border-radius:12px; background:linear-gradient(135deg,var(--green),var(--aurora-cyan)); color:#071d35; }
.page-shop .cart-hint { border-radius:20px !important; }

/* Kontakt – dunkle Visitenkarte plus helle Formularfläche */
.page-kontakt .contact-section { background:linear-gradient(145deg,#eaf3f5,#fbfcfc) !important; }
.page-kontakt .contact-inner { gap:24px; align-items:stretch; }
.page-kontakt .contact-info {
  position:relative;
  overflow:hidden;
  padding:clamp(32px,5vw,54px);
  border-radius:32px 32px 85px 32px;
  background:radial-gradient(circle at 85% 5%,rgba(29,214,197,.22),transparent 42%),linear-gradient(145deg,#061b30,#0a4d70);
  box-shadow:0 30px 75px rgba(4,31,52,.24);
}
.page-kontakt .contact-info h2,
.page-kontakt .contact-info h3,
.page-kontakt .contact-info h4,
.page-kontakt .contact-info strong { color:#fff; }
.page-kontakt .contact-info p,
.page-kontakt .contact-detail-text span,
.page-kontakt .contact-detail-text a { color:rgba(255,255,255,.7); }
.page-kontakt .contact-detail-item { padding:15px; border:1px solid rgba(255,255,255,.08); border-radius:15px; background:rgba(255,255,255,.05); }
.page-kontakt .contact-detail-icon { background:linear-gradient(135deg,var(--green),var(--aurora-cyan)); color:#071d35; }
.page-kontakt .contact-form-card { padding:clamp(32px,5vw,56px) !important; border-radius:32px 32px 85px 32px !important; }

/* Anfrage- und Buchungsstrecken */
body:is(.page-buchung,.page-anfrage-reinigung,.page-anfrage-vermietung) main > .section {
  background:
    linear-gradient(rgba(29,214,197,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(29,214,197,.045) 1px,transparent 1px),
    #edf4f6 !important;
  background-size:48px 48px !important;
}
.anfrage-layout,.booking-layout { gap:26px !important; align-items:start; }
.anfrage-card,.booking-card {
  padding:clamp(30px,5vw,56px) !important;
  border-radius:32px 32px 88px 32px !important;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(241,248,248,.94)) !important;
  box-shadow:0 28px 75px rgba(7,29,53,.14) !important;
}
.info-sidebar,.booking-summary { position:sticky; top:135px; }
.info-box,.booking-summary {
  overflow:hidden;
  border-radius:28px 28px 70px 28px !important;
  background:radial-gradient(circle at 85% 0,rgba(29,214,197,.2),transparent 42%),linear-gradient(145deg,#061b30,#0a4d70) !important;
}
.info-box-item { padding:15px; border:1px solid rgba(255,255,255,.08); border-radius:14px; background:rgba(255,255,255,.05); }
.stepper { padding:22px; border:1px solid rgba(7,29,53,.07); border-radius:20px; background:rgba(255,255,255,.68); }
.step-circle { background:#fff; }
.step.active .step-circle { background:linear-gradient(135deg,var(--green),var(--aurora-cyan)); color:#071d35; }
.service-selector { gap:12px; }
.service-option,.radio-option,.freq-option { border-radius:17px !important; background:rgba(255,255,255,.8) !important; }
.service-option-icon { border-radius:14px; background:linear-gradient(145deg,rgba(29,214,197,.13),rgba(123,108,246,.09)); }
.submit-btn,.btn-next { border-radius:15px !important; background:linear-gradient(135deg,#a8e94a,#4fd3a2) !important; color:#071d35 !important; box-shadow:0 14px 30px rgba(73,180,107,.25); }

/* Rechtliches – magazinartige Leseflächen */
body:is(.page-impressum,.page-datenschutz) main > .section { background:linear-gradient(145deg,#eaf2f4,#f9fbfc) !important; }
.page-impressum .impressum-box,
.page-datenschutz main > .section > .container > div:first-child {
  position:relative;
  max-width:920px;
  margin:auto;
  padding:clamp(34px,6vw,72px) !important;
  border:1px solid rgba(7,29,53,.08) !important;
  border-radius:34px 34px 95px 34px !important;
  background:linear-gradient(145deg,#fff,#f2f7f8) !important;
  box-shadow:0 28px 75px rgba(7,29,53,.12) !important;
}
.page-impressum .impressum-box::before,
.page-datenschutz main > .section > .container > div:first-child::before {
  content:'';
  position:absolute;
  width:135px;
  height:135px;
  right:-40px;
  top:-40px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(29,214,197,.18),rgba(123,108,246,.14));
}
.page-impressum .impressum-grid > div,
.page-datenschutz main > .section h3 { position:relative; }
.page-impressum .impressum-grid > div { padding:20px; border:1px solid rgba(7,29,53,.06); border-radius:17px; background:rgba(245,249,250,.78); }

/* FAQ und 404 finalisieren */
.page-faq .faq-category { padding:26px; border:1px solid rgba(7,29,53,.07); border-radius:25px; background:rgba(255,255,255,.55); }
.page-faq .faq-category:nth-child(even) { background:rgba(29,214,197,.045); }
.page-404 main { min-height:70vh; background:radial-gradient(circle at 50% 20%,rgba(29,214,197,.12),transparent 28rem),#eef5f7; }

@media (max-width:1100px) {
  .page-shop .product-card { grid-column:span 6; }
  .page-shop .product-card:nth-child(1),.page-shop .product-card:nth-child(5) { grid-column:span 6; }
  .page-galerie .gallery-item,.page-galerie .gallery-item:nth-child(1),.page-galerie .gallery-item:nth-child(7) { grid-column:span 6; }
  .page-ueber-uns .services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:768px) {
  body:not(.page-index) .page-hero { padding-top:145px; }
  body:not(.page-index) .page-hero .container::before { bottom:-58px; }
  .page-dienstleistungen main > .section { padding:16px 0 !important; }
  .page-dienstleistungen main > .section:first-of-type { padding-top:76px !important; }
  .page-dienstleistungen main > .section:last-of-type { padding-bottom:76px !important; }
  .page-dienstleistungen .service-detail-grid { min-height:0; padding:30px 22px; border-radius:25px 25px 58px 25px; }
  .page-dienstleistungen .service-detail-list { grid-template-columns:1fr; }
  .page-dienstleistungen .service-detail-grid > div:last-child { padding:20px; }
  .page-ueber-uns .services-grid { grid-template-columns:1fr; }
  .page-preise main > .section { padding-block:72px !important; }
  .page-galerie .gallery-grid,.page-shop .product-grid { grid-template-columns:1fr; }
  .page-galerie .gallery-item,.page-galerie .gallery-item:nth-child(1),.page-galerie .gallery-item:nth-child(7),
  .page-shop .product-card,.page-shop .product-card:nth-child(1),.page-shop .product-card:nth-child(5) { grid-column:span 1; }
  .page-galerie .gallery-item:nth-child(4),.page-galerie .gallery-item:nth-child(9) { grid-row:span 1; }
  .page-shop .shop-category-section { padding:20px; border-radius:23px; }
  .page-kontakt .contact-info,.page-kontakt .contact-form-card { border-radius:25px 25px 60px 25px !important; }
  .info-sidebar,.booking-summary { position:static; }
  .booking-layout { grid-template-columns:minmax(0,1fr) !important; }
  .booking-layout > *, .booking-card, .booking-summary, .stepper { width:100%; max-width:100%; min-width:0; }
  .anfrage-card,.booking-card { border-radius:25px 25px 62px 25px !important; }
  .stepper { overflow-x:auto; }
  .page-faq .faq-category { padding:18px; }
}

@media (max-width:480px) {
  body:not(.page-index) .page-hero h1 { overflow-wrap:anywhere; hyphens:auto; }
  body:is(.page-buchung,.page-anfrage-reinigung,.page-anfrage-vermietung) .page-hero h1 { font-size:clamp(2.25rem,10.7vw,3rem) !important; hyphens:none; }
  .page-dienstleistungen .service-detail-grid h2 { font-size:2rem; }
  .page-preise .price-table-wrap { border-radius:20px 20px 42px 20px !important; }
  .page-impressum .impressum-box,
  .page-datenschutz main > .section > .container > div:first-child { padding:28px 20px !important; border-radius:25px 25px 58px 25px !important; }
}

/* V3 – CHROMATIC DEPTH für alle Inhaltsseiten */
@media screen {
  body:not(.page-index) main {
    background:
      radial-gradient(circle at 4% 18%,rgba(29,214,197,.2),transparent 27rem),
      radial-gradient(circle at 96% 78%,rgba(123,108,246,.2),transparent 30rem),
      #bcd9df;
  }
  body:not(.page-index) main > .section:nth-of-type(odd) {
    background:
      radial-gradient(circle at 8% 15%,rgba(29,214,197,.2),transparent 24rem),
      linear-gradient(145deg,#c9e8e4,#d8e3f1 58%,#ded3f4) !important;
  }
  body:not(.page-index) main > .section:nth-of-type(even) {
    background:
      radial-gradient(circle at 92% 12%,rgba(154,216,58,.14),transparent 25rem),
      linear-gradient(140deg,#b9dbe1,#c7d2ef 55%,#c8e5da) !important;
  }

  .page-dienstleistungen main > .section:nth-of-type(odd) .service-detail-grid {
    background:linear-gradient(145deg,#d8f3ec,#d2d9f1) !important;
    box-shadow:0 27px 68px rgba(7,36,58,.17);
  }
  .page-dienstleistungen .service-overview-nav {
    border-color:rgba(7,29,53,.1) !important;
    background:linear-gradient(90deg,rgba(180,225,222,.96),rgba(204,210,239,.96),rgba(190,228,216,.96)) !important;
    box-shadow:0 12px 32px rgba(7,29,53,.11);
    backdrop-filter:blur(18px);
  }
  .page-dienstleistungen .service-overview-nav a { border:1px solid rgba(7,29,53,.08); background:rgba(222,242,239,.72) !important; }
  .page-dienstleistungen main > .section:nth-of-type(even) {
    background:radial-gradient(circle at 90% 8%,rgba(123,108,246,.22),transparent 28rem),linear-gradient(145deg,#061b30,#0b5368) !important;
  }
  .page-dienstleistungen main > .section:nth-of-type(odd) .service-detail-list li { background:rgba(255,255,255,.38); }

  .page-ueber-uns main > .section:nth-of-type(odd) { background:linear-gradient(145deg,#c9e9e2,#d8dbf2) !important; }
  .page-ueber-uns .about-text { background:linear-gradient(145deg,rgba(219,245,239,.92),rgba(213,220,244,.9)); }

  .page-preise main > .section:nth-of-type(odd) { background:linear-gradient(145deg,#bfdedc,#d7d2f0) !important; }
  .page-preise main > .section:nth-of-type(even) { background:linear-gradient(145deg,#cee5ec,#d6e3d0) !important; }
  .page-preise .price-table-wrap { background:linear-gradient(145deg,#dff3ef,#dde1f4); box-shadow:0 28px 72px rgba(7,32,54,.18) !important; }
  .page-preise .price-table tbody tr:nth-child(even) { background:rgba(29,214,197,.1); }

  .page-galerie .section { background:radial-gradient(circle at 8% 8%,rgba(29,214,197,.22),transparent 25rem),linear-gradient(150deg,#badde1,#d8d1f0) !important; }
  .page-galerie .gallery-item-placeholder { background:radial-gradient(circle at 75% 20%,rgba(29,214,197,.3),transparent 40%),linear-gradient(145deg,#c9ece4,#c8d1ed) !important; }
  .page-galerie .gallery-empty { background:rgba(210,238,234,.75); }

  .page-shop main > .section { background:radial-gradient(circle at 94% 10%,rgba(123,108,246,.2),transparent 28rem),linear-gradient(145deg,#badde1,#d8e1d2) !important; }
  .page-shop .shop-category-section { border-color:rgba(7,29,53,.1); background:linear-gradient(145deg,rgba(207,239,232,.9),rgba(211,216,241,.88)); box-shadow:0 25px 65px rgba(7,32,53,.15); }
  .page-shop .product-card { background:linear-gradient(145deg,#ddf1eb,#d9dcf2) !important; }
.page-shop .product-card:nth-child(even) { background:linear-gradient(145deg,#eadcf2,#d0e7e4) !important; }
.page-shop .product-footer { background:rgba(201,225,226,.72); }

  .page-kontakt .contact-section { background:radial-gradient(circle at 90% 12%,rgba(123,108,246,.23),transparent 27rem),linear-gradient(145deg,#b9dfe0,#d7d2ef) !important; }
  .page-kontakt .contact-form-card { background:linear-gradient(145deg,#dff4ee,#d9def2) !important; }

  body:is(.page-buchung,.page-anfrage-reinigung,.page-anfrage-vermietung) main > .section {
    background:
      linear-gradient(rgba(7,77,98,.07) 1px,transparent 1px),
      linear-gradient(90deg,rgba(7,77,98,.07) 1px,transparent 1px),
      linear-gradient(145deg,#b9dcdf,#d2d5ef) !important;
    background-size:48px 48px !important;
  }
  .anfrage-card,.booking-card { background:linear-gradient(145deg,#dcf2ec,#d9def2) !important; }
  .stepper { background:linear-gradient(145deg,rgba(209,239,234,.9),rgba(207,216,241,.88)); }
  .service-option,.radio-option,.freq-option { background:rgba(221,241,238,.86) !important; }

  body:is(.page-impressum,.page-datenschutz) main > .section { background:linear-gradient(145deg,#b9dcdf,#d4d1ed) !important; }
  .page-impressum .impressum-box,
  .page-datenschutz main > .section > .container > div:first-child { background:linear-gradient(145deg,#dff3ee,#d9def1) !important; }
  .page-impressum .impressum-grid > div { background:rgba(194,227,224,.65); }

  .page-faq .faq-category { background:linear-gradient(145deg,rgba(209,239,233,.82),rgba(207,214,239,.78)); }
  .page-faq .faq-category:nth-child(even) { background:linear-gradient(145deg,rgba(225,211,242,.84),rgba(193,229,224,.8)); }
  .page-404 main { background:radial-gradient(circle at 50% 18%,rgba(29,214,197,.28),transparent 28rem),linear-gradient(145deg,#b9dcdf,#d3d0ee); }

  .contact-form-card,
  .anfrage-card,
  .booking-card,
  .legal-content { border-color:rgba(7,29,53,.1) !important; box-shadow:0 28px 72px rgba(7,29,53,.17) !important; }
  .form-group input,.form-group select,.form-group textarea { border-color:rgba(7,64,80,.14); background:rgba(234,246,244,.84); }
}

/* V9 – kompakte, gleichmäßig lesbare Shopkarten */
.page-shop .product-grid {
  gap:18px;
  align-items:start;
}
.page-shop .product-card,
.page-shop .product-card:nth-child(1),
.page-shop .product-card:nth-child(5) {
  grid-column:span 4;
  align-self:start;
  width:100%;
  border-radius:22px 22px 42px 22px !important;
}
.page-shop .product-image {
  height:168px !important;
  min-height:168px !important;
}
.page-shop .product-body {
  flex:0 0 auto;
  padding:18px 18px 14px;
}
.page-shop .product-category {
  margin-bottom:5px;
}
.page-shop .product-name {
  display:-webkit-box;
  overflow:hidden;
  margin-bottom:7px;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.page-shop .product-desc {
  display:-webkit-box;
  overflow:hidden;
  flex:0 0 auto;
  margin-bottom:11px;
  line-height:1.5;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}
.page-shop .product-card.is-desc-expanded .product-desc {
  display:block;
  overflow:visible;
  -webkit-line-clamp:unset;
}
.page-shop .product-desc-toggle {
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  gap:6px;
  margin:-3px 0 10px;
  padding:3px 0;
  border:0;
  background:transparent;
  color:#075579;
  font:inherit;
  font-size:.78rem;
  font-weight:800;
  line-height:1.35;
  text-decoration:underline;
  text-decoration-thickness:1.5px;
  text-underline-offset:3px;
  cursor:pointer;
}
.page-shop .product-desc-toggle:hover { color:#06335a; }
.page-shop .product-desc-toggle:focus-visible {
  border-radius:5px;
  outline:3px solid rgba(29,214,197,.42);
  outline-offset:3px;
}
.page-shop .product-desc-toggle[hidden] { display:none !important; }
.page-shop .product-specs {
  gap:5px;
  margin-bottom:8px;
}
.page-shop .product-spec {
  padding:4px 8px;
  line-height:1.25;
}
.page-shop .product-spec-more {
  color:#064a58;
  background:rgba(29,214,197,.2);
  font-weight:800;
}
.page-shop .product-footer {
  padding:13px 18px;
}

@media (max-width:1100px) {
  .page-shop .product-card,
  .page-shop .product-card:nth-child(1),
  .page-shop .product-card:nth-child(5) { grid-column:span 6; }
}

@media (max-width:768px) {
  .page-shop .product-card,
  .page-shop .product-card:nth-child(1),
  .page-shop .product-card:nth-child(5) { grid-column:span 1; }
  .page-shop .product-image { height:150px !important; min-height:150px !important; }
  .page-shop .product-body { padding:16px 16px 12px; }
  .page-shop .product-footer { padding:12px 16px; }
}

/* V4 – Lesbarkeit und neues Preissystem */
@media screen {
  body:not(.page-index) main > .section p,
  body:not(.page-index) main > .section li { color:#344f60; }
  body:not(.page-index) main > .section small { color:#456173; }
  body:not(.page-index) main > .section h2,
  body:not(.page-index) main > .section h3,
  body:not(.page-index) main > .section h4 { color:#09243a; }

  .page-dienstleistungen main > .section:nth-of-type(even) h2,
  .page-dienstleistungen main > .section:nth-of-type(even) h3,
  .page-dienstleistungen main > .section:nth-of-type(even) h4,
  .info-box h2,.info-box h3,.info-box h4,
  .booking-summary h2,.booking-summary h3,.booking-summary h4 { color:#fff !important; }
  .page-dienstleistungen main > .section:nth-of-type(even) p,
  .page-dienstleistungen main > .section:nth-of-type(even) li,
  .info-box p,.info-box li,
  .booking-summary p,.booking-summary li { color:rgba(255,255,255,.82) !important; }
  body.page-kontakt .contact-info p,
  body.page-kontakt .contact-info a,
  body.page-kontakt .contact-info span { color:rgba(255,255,255,.84) !important; }
  .form-group label { color:#17384b; font-weight:750; }

  .page-ueber-uns .about-text h2,
  .page-ueber-uns .about-text h3,
  .page-ueber-uns .about-text h4,
  .page-ueber-uns .about-text strong { color:#09243a !important; }
  .page-ueber-uns .about-text p { color:#294757 !important; font-weight:500; }
  .page-ueber-uns .about-badge { color:#17384b; background:rgba(235,247,244,.86); }
  .page-ueber-uns #geschichte .about-inner > div:last-child p { color:rgba(255,255,255,.88) !important; }
  .page-ueber-uns #qualifikationen .service-card { background:linear-gradient(145deg,#dff2ed,#d9e0f2); }
  .page-ueber-uns #qualifikationen .service-card:nth-child(2),
  .page-ueber-uns #qualifikationen .service-card:nth-child(5) { background:linear-gradient(145deg,#eadff4,#d3e8e4); }
  .page-ueber-uns #qualifikationen .service-card:nth-child(3) { background:linear-gradient(145deg,#dcefd7,#d4e6ec); }
  .page-ueber-uns #qualifikationen .service-card:nth-child(4) { background:linear-gradient(145deg,#f0e1d9,#dddff2); }
  .page-ueber-uns #qualifikationen .service-card:nth-child(1),
  .page-ueber-uns #qualifikationen .service-card:nth-child(6) {
    background:radial-gradient(circle at 88% 10%,rgba(29,214,197,.25),transparent 45%),linear-gradient(145deg,#06243d,#0a5972);
  }
  .page-ueber-uns #qualifikationen .service-card:nth-child(1) h3,
  .page-ueber-uns #qualifikationen .service-card:nth-child(6) h3 { color:#fff !important; }
  .page-ueber-uns #qualifikationen .service-card:nth-child(1) p,
  .page-ueber-uns #qualifikationen .service-card:nth-child(6) p { color:rgba(255,255,255,.84) !important; }
  .page-ueber-uns #qualifikationen .service-card:not(:nth-child(1)):not(:nth-child(6)) p { color:#294757 !important; font-weight:500; }
  .page-ueber-uns #werte h2,
  .page-ueber-uns #werte .feature-item h4 { color:#09243a !important; }
  .page-ueber-uns #werte > .container > .why-us-inner > div:first-child > p,
  .page-ueber-uns #werte .feature-item p { color:#294757 !important; font-weight:500; }
  .page-ueber-uns #werte .feature-item {
    border-color:rgba(7,29,53,.09);
    background:linear-gradient(145deg,rgba(224,244,239,.86),rgba(213,222,242,.82));
    box-shadow:0 12px 30px rgba(7,29,53,.08);
  }
  .page-ueber-uns #werte .why-us-card {
    border-color:rgba(255,255,255,.12);
    background:radial-gradient(circle at 92% 5%,rgba(123,108,246,.25),transparent 44%),linear-gradient(145deg,#071f37,#0b596b) !important;
    box-shadow:0 30px 75px rgba(7,29,53,.25);
  }
  .page-ueber-uns #werte .why-us-card h3 { color:#fff !important; }
  .page-ueber-uns #werte .why-us-card .qualification-item { color:rgba(255,255,255,.86) !important; }
  .page-ueber-uns #werte .why-us-card .stat-box { border-color:rgba(255,255,255,.1); background:rgba(255,255,255,.07); }
  .page-ueber-uns #werte .why-us-card .stat-box .label { color:rgba(255,255,255,.74); }

  .page-preise .section-header { max-width:820px; margin-inline:auto; }
  .page-preise .section-header > p { color:#344f60; font-size:1rem; }
  .page-preise .page-hero-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:24px; }
  .page-preise .page-hero-actions .btn-white { border-color:rgba(255,255,255,.26); background:rgba(255,255,255,.1); color:#fff; backdrop-filter:blur(12px); }
  .page-preise .page-hero-actions .btn-white:hover { border-color:#fff; background:rgba(255,255,255,.18); }
  .page-preise .price-overview-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin:0 0 34px;
  }
  .page-preise .price-overview-card {
    display:flex;
    align-items:center;
    gap:15px;
    min-height:112px;
    padding:20px;
    border:1px solid rgba(7,29,53,.1);
    border-radius:20px 20px 42px 20px;
    background:linear-gradient(145deg,rgba(220,244,238,.94),rgba(207,216,241,.92));
    box-shadow:0 14px 36px rgba(7,32,53,.12);
  }
  .page-preise .price-overview-card:nth-child(2) { background:linear-gradient(145deg,#eadcf4,#cce6e3); }
  .page-preise .price-overview-card:nth-child(3) { background:linear-gradient(145deg,#d9ecd0,#cce8e5); }
  .page-preise .price-overview-icon {
    flex:0 0 46px;
    display:grid;
    place-items:center;
    width:46px;
    height:46px;
    border-radius:15px;
    background:linear-gradient(135deg,#9ad83a,#1dd6c5);
    box-shadow:0 10px 24px rgba(41,157,122,.22);
    color:#072036;
    font-size:1.25rem;
    font-weight:900;
  }
  .page-preise .price-overview-card strong { display:block; margin-bottom:5px; color:#09243a; font-size:.98rem; }
  .page-preise .price-overview-card small { display:block; color:#405d6e; font-size:.8rem; line-height:1.5; }

  .page-preise .price-table-wrap {
    padding:10px 14px 14px;
    border-color:rgba(7,29,53,.12) !important;
    background:linear-gradient(145deg,rgba(215,239,234,.96),rgba(211,217,240,.94));
  }
  .page-preise .price-table { margin-top:0; border-collapse:separate; border-spacing:0 9px; }
  .page-preise .price-table thead th {
    border:0;
    background:transparent !important;
    color:#294a5b;
    font-size:.72rem;
    letter-spacing:.1em;
  }
  .page-preise .price-table tbody tr { filter:drop-shadow(0 8px 13px rgba(7,29,53,.07)); }
  .page-preise .price-table tbody td {
    border:0;
    background:rgba(240,248,246,.9);
    color:#2f4b5c;
    line-height:1.55;
  }
  .page-preise .price-table tbody tr:nth-child(even) td { background:rgba(225,234,246,.94); }
  .page-preise .price-table tbody td:first-child {
    width:29%;
    border-radius:15px 0 0 15px;
    color:#09243a;
  }
  .page-preise .price-table tbody td:first-child strong { color:#09243a; font-size:.94rem; }
  .page-preise .price-table tbody td:last-child {
    width:24%;
    border-left:1px solid rgba(7,29,53,.07);
    border-radius:0 15px 15px 0;
    background:linear-gradient(135deg,rgba(154,216,58,.26),rgba(29,214,197,.2));
    color:#244f19;
    font-size:.95rem;
    line-height:1.45;
  }
  .page-preise .price-table tbody tr:nth-child(even) td:last-child { background:linear-gradient(135deg,rgba(123,108,246,.14),rgba(29,214,197,.19)); }
  .page-preise .price-table td small { color:#4a6574; }

  .page-preise .price-note {
    padding:20px 22px;
    border:1px solid rgba(117,237,216,.2);
    border-left:5px solid var(--aurora-cyan);
    background:radial-gradient(circle at 95% 0,rgba(123,108,246,.2),transparent 45%),linear-gradient(135deg,#082a43,#0c5966) !important;
    box-shadow:0 16px 42px rgba(7,29,53,.18);
    color:rgba(255,255,255,.82);
    line-height:1.65;
  }
  .page-preise .price-note strong { color:#fff; }
  .page-preise .rental-price-grid .price-table tbody td:first-child { width:auto; }
  .page-preise .rental-price-grid .price-table tbody td:last-child { width:34%; color:#21511b; }
  .page-preise .rental-price-grid .price-table thead th { text-align:left !important; }

  .page-preise .price-benefits-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:18px !important; }
  .page-preise .price-benefit-card {
    grid-column:span 1 !important;
    min-height:270px;
    border-color:rgba(255,255,255,.12) !important;
    background:linear-gradient(145deg,#073149,#0b6070) !important;
    box-shadow:0 22px 55px rgba(7,29,53,.22) !important;
  }
  .page-preise .price-benefit-card:nth-child(2) { background:linear-gradient(145deg,#26385f,#315a75) !important; }
  .page-preise .price-benefit-card:nth-child(3) { background:linear-gradient(145deg,#153e55,#30507b) !important; }
  .page-preise .price-benefit-card:nth-child(4) { background:linear-gradient(145deg,#342f5d,#17616a) !important; }
  .page-preise .price-benefit-card h3 { color:#fff !important; }
  .page-preise .price-benefit-card p { color:rgba(255,255,255,.8) !important; }
}

@media screen and (max-width:980px) {
  .page-preise .price-benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}

@media screen and (max-width:700px) {
  body.page-preise .page-hero h1 { hyphens:none !important; overflow-wrap:normal !important; font-size:clamp(2.25rem,9.7vw,3.1rem) !important; }
  .page-preise .page-hero-actions { display:grid; grid-template-columns:1fr; width:100%; max-width:310px; margin-inline:auto; }
  .page-preise .price-overview-grid { grid-template-columns:1fr; gap:12px; }
  .page-preise .price-overview-card { min-height:0; padding:16px; border-radius:17px 17px 32px 17px; }
  .page-preise .price-table-wrap { padding:10px; }
  .page-preise .price-table { border-spacing:0; }
  .page-preise .price-table tbody tr {
    overflow:hidden;
    margin-bottom:13px;
    padding:15px;
    border:1px solid rgba(7,29,53,.09);
    border-radius:18px 18px 36px 18px;
    background:linear-gradient(145deg,rgba(239,248,246,.96),rgba(220,229,244,.95));
    box-shadow:0 10px 26px rgba(7,29,53,.1);
    filter:none;
  }
  .page-preise .price-table tbody tr:nth-child(even) { background:linear-gradient(145deg,#eadff4,#d4e9e5); }
  .page-preise .price-table tbody td,
  .page-preise .price-table tbody tr:nth-child(even) td { width:100%; padding:5px 3px; background:transparent; }
  .page-preise .price-table tbody td:first-child { width:100%; border-radius:0; padding-top:1px; }
  .page-preise .price-table tbody td:nth-child(2) { color:#3d5969; font-size:.84rem; }
  .page-preise .price-table tbody td:last-child,
  .page-preise .price-table tbody tr:nth-child(even) td:last-child {
    width:max-content;
    max-width:100%;
    margin-top:8px;
    padding:9px 12px;
    border:0;
    border-radius:11px;
    background:linear-gradient(135deg,rgba(154,216,58,.25),rgba(29,214,197,.2));
    color:#244f19;
    font-size:.92rem;
  }
  .page-preise .rental-price-grid { grid-template-columns:1fr !important; gap:20px !important; }
  .page-preise .rental-price-grid .price-table tbody td:last-child { width:max-content; }
  .page-preise .price-benefits-grid { grid-template-columns:1fr !important; }
  .page-preise .price-benefit-card { min-height:220px; }
}

/* V6 – abschließender Lesbarkeits-Pass */
@media screen {
  .page-shop .cart-hint h3 { color:#fff !important; }
  .page-shop .cart-hint p { color:rgba(255,255,255,.9) !important; }
  body.page-kontakt .contact-info strong { color:#fff !important; }
  body.page-kontakt .contact-quickbar strong { color:rgba(255,255,255,.82) !important; }
  .booking-summary .summary-item .label,
  .booking-summary .summary-total .label { color:rgba(255,255,255,.88) !important; }
  body:is(.page-impressum,.page-datenschutz) main > .section a {
    color:#075579 !important;
    font-weight:650;
    text-decoration-thickness:1.5px;
    text-underline-offset:2px;
  }
}

/* V8 – durchgängig lesbare Dienstleistungsbereiche */
@media screen {
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:last-child {
    border-color:rgba(7,29,53,.09) !important;
    background:linear-gradient(145deg,#eef8f5,#e5edf6) !important;
    box-shadow:inset 0 1px rgba(255,255,255,.85),0 16px 38px rgba(0,14,28,.16);
  }
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:last-child h2,
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:last-child h3,
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:last-child h4,
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:last-child strong { color:#09243a !important; }
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:last-child p,
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:last-child small { color:#344f60 !important; }
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-list li { color:rgba(255,255,255,.9) !important; }
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid > div:first-child > p { color:rgba(255,255,255,.9) !important; }
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid .btn-outline {
    border-color:rgba(255,255,255,.72) !important;
    background:rgba(255,255,255,.08) !important;
    color:#fff !important;
  }
  .page-dienstleistungen main > .section:nth-of-type(even) .service-detail-grid .btn-outline:hover {
    border-color:var(--aurora-cyan) !important;
    background:rgba(29,214,197,.16) !important;
  }

  .page-dienstleistungen #vermietung .service-card:nth-child(2) h3 { color:#09243a !important; }
  .page-dienstleistungen #vermietung .service-card:nth-child(2) p { color:#344f60 !important; }
  .page-dienstleistungen #vermietung .service-card:nth-child(2) a { color:#075579 !important; font-weight:800; }

  .page-dienstleistungen #staubsaugerroboter .robot-service-intro p { color:#304b5b !important; }
  .page-dienstleistungen #staubsaugerroboter .robot-service-grid {
    background:linear-gradient(145deg,#d8f2ec,#d5dbf0) !important;
  }
  .page-dienstleistungen #staubsaugerroboter .robot-service-card {
    border:1px solid rgba(7,29,53,.09);
    background:linear-gradient(145deg,#f5fbf9,#eaf1f7) !important;
    box-shadow:0 18px 46px rgba(7,29,53,.12) !important;
  }
  .page-dienstleistungen #staubsaugerroboter .robot-service-badge {
    color:#071d35 !important;
    font-weight:800 !important;
    box-shadow:0 8px 20px rgba(7,29,53,.12);
  }
  .page-dienstleistungen #staubsaugerroboter .robot-service-card--onsite .robot-service-price { color:#3d680d !important; }
  .page-dienstleistungen #staubsaugerroboter .robot-service-card--complete .robot-service-price { color:#075579 !important; }
  .page-dienstleistungen #staubsaugerroboter .robot-service-card p,
  .page-dienstleistungen #staubsaugerroboter .robot-service-card li { color:#304b5b !important; }
  .page-dienstleistungen #staubsaugerroboter .robot-service-card .service-detail-list li { background:rgba(255,255,255,.58); }
  .page-dienstleistungen #staubsaugerroboter .robot-benefits-grid { grid-template-columns:repeat(3,minmax(0,1fr)); min-height:0; padding:22px; }
  .page-dienstleistungen #staubsaugerroboter .robot-benefit-card {
    border:1px solid rgba(7,29,53,.08);
    background:linear-gradient(145deg,#f2faf7,#e8eef7) !important;
    box-shadow:0 12px 30px rgba(7,29,53,.09);
  }
  .page-dienstleistungen #staubsaugerroboter .robot-benefit-card h4 { color:#09243a !important; }
  .page-dienstleistungen #staubsaugerroboter .robot-benefit-card p { color:#344f60 !important; }
  .page-dienstleistungen #staubsaugerroboter .robot-service-note {
    border:1px solid rgba(7,29,53,.09);
    border-left:5px solid var(--aurora-cyan);
    background:linear-gradient(145deg,#edf8f5,#e5edf6) !important;
    color:#304b5b;
    line-height:1.68;
  }
  .page-dienstleistungen #staubsaugerroboter .robot-service-note strong { color:#09243a !important; }
}

@media screen and (max-width:800px) {
  .page-dienstleistungen #staubsaugerroboter .robot-benefits-grid { grid-template-columns:1fr; }
}
