/* ==========================================================================
   Оформление русской и украинской версий: тёмный петроль + лайм.
   Цвета сняты пипеткой из присланных снимков.
   Подключается после site.css, меняет только цвета и формы.
   Разметку, тексты, цены и ссылки не трогает.
   ========================================================================== */
:root{
  --n-deep:#05131C;
  --n-night:#081E2B;
  --n-bg:#082432;
  --n-card:#153645;
  --n-card-2:#0E2B38;
  --n-line-soft:rgba(255,255,255,.10);
  --n-on:#FFFFFF;
  --n-on-2:#9FB6C0;
  --n-lime:#D6FF3F;
  --n-lime-h:#C4F024;
  --n-wa:#157F59;
  --n-radius:14px;
}
body{background:var(--n-bg);color:var(--n-on);
  font-family:"Source Sans 3","Source Sans Pro",system-ui,-apple-system,sans-serif;
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,.logo b{font-family:Onest,Manrope,system-ui,sans-serif;letter-spacing:-.025em;color:var(--n-on)}
h1{font-size:clamp(32px,7vw,56px);font-weight:800;line-height:1.06;margin:0 0 16px}
h2{font-size:clamp(24px,4.4vw,38px);font-weight:800;line-height:1.15;margin:0 0 14px}
h3{font-size:clamp(17px,2.6vw,21px);font-weight:700;margin:0 0 8px}
p{color:var(--n-on-2)}
strong{color:var(--n-on)}
a{color:var(--n-lime)}
.wrap{max-width:1160px;padding-left:20px;padding-right:20px}

.hdr{position:sticky;top:0;z-index:60;background:var(--n-night);border:0;
  box-shadow:0 1px 0 var(--n-line-soft)}
.hdr-inner{min-height:64px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.logo{color:var(--n-on);text-decoration:none;line-height:1.15}
.logo b{display:block;font-size:19px;font-weight:800}
.logo .rd{color:var(--n-lime)}
.logo span{font-size:12px;color:var(--n-on-2);letter-spacing:.08em;text-transform:uppercase}
.hdr-cta{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
@media (min-width:880px){.hdr-inner{min-height:72px}}
.langbar{display:flex;gap:2px;align-items:center;font-size:13px}
.langbar a,.langbar span{padding:5px 9px;border-radius:6px;text-decoration:none;
  color:var(--n-on-2);font-weight:700;letter-spacing:.04em}
.langbar a:hover{color:var(--n-lime);background:rgba(214,255,63,.10)}
.langbar .cur{color:var(--n-deep);background:var(--n-lime)}
.hdr-hours{color:var(--n-on-2);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;display:none}
@media (min-width:780px){.hdr-hours{display:inline}}

.btn{border-radius:10px;font-weight:800;font-size:16px;border:0;
  transition:background .15s ease,border-color .15s ease,color .15s ease}
.btn--call{background:var(--n-lime);color:var(--n-deep)}
.btn--call:hover{background:var(--n-lime-h);color:var(--n-deep)}
.btn--wa{background:var(--n-wa);color:#fff}
.btn--wa:hover{background:#0F6847}
.btn--ghost{background:var(--n-card);color:var(--n-on);border:1px solid var(--n-line-soft)}
.btn--ghost:hover{border-color:var(--n-lime);color:var(--n-lime)}
.btn--lg{min-height:54px;padding:15px 22px}
.btn--sm{min-height:40px;padding:8px 14px;font-size:14.5px}
.hdr .btn--wa{background:transparent;color:var(--n-on);border:1px solid var(--n-line-soft)}
.hdr .btn--wa:hover{border-color:var(--n-lime);color:var(--n-lime)}
.btnrow{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 0}

.section{padding:34px 0;background:var(--n-bg)}
.section--alt{background:var(--n-card-2)}
.section--tight{padding:22px 0}
.crumbs{padding:16px 20px 0;color:var(--n-on-2);font-size:14px;background:var(--n-bg)}
.crumbs a{color:var(--n-on-2);text-decoration:none}
.crumbs a:hover{color:var(--n-lime)}
.section h1::before{content:"";display:block;width:44px;height:3px;background:var(--n-lime);
  border-radius:2px;margin:0 0 18px}

.local,.ortstext,.intents,.nachbarn,.ot-zone{max-width:74ch}
.price-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:6px 0 0}
.price{background:var(--n-card);border:1px solid var(--n-line-soft);border-radius:var(--n-radius);padding:18px}
.price--hot{border-color:var(--n-lime);box-shadow:0 0 0 1px rgba(214,255,63,.25)}
.price h3{color:var(--n-on)}
.slots{display:grid;gap:10px;margin:10px 0}
.slot{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;
  border-top:1px solid var(--n-line-soft);padding-top:10px}
.slot .t{font-size:13.5px;color:var(--n-on-2);min-width:118px;letter-spacing:.03em}
.slot .v{font-size:26px;font-weight:800;color:var(--n-lime);font-family:Onest,Manrope,sans-serif}
.slot .n{font-size:13px;color:var(--n-on-2);flex-basis:100%}
.ticks{list-style:none;padding:0;margin:12px 0 0}
.ticks li{position:relative;padding-left:22px;font-size:14.5px;color:var(--n-on-2);margin:5px 0}
.ticks li::before{content:"";position:absolute;left:2px;top:.55em;width:9px;height:5px;
  border-left:2px solid var(--n-lime);border-bottom:2px solid var(--n-lime);transform:rotate(-45deg)}
.price-note p{color:var(--n-on-2);font-size:14.5px;margin:14px 0 0}
.ust-hinweis{color:var(--n-on-2);font-size:13px;margin-top:10px;opacity:.85}

.ot-liste{columns:2;column-gap:26px;list-style:none;padding:0;margin:10px 0 0}
.ot-liste li{padding:5px 0;font-size:15px;break-inside:avoid;color:var(--n-on-2)}
.stadt-liste li{border-bottom:1px solid var(--n-line-soft);padding:11px 0}
.stadt-liste a{color:var(--n-on);text-decoration:none;font-weight:600}
.stadt-liste a:hover{color:var(--n-lime)}
.stadt-liste .de{color:var(--n-on-2)}
.stadt-liste .pz{color:var(--n-lime);font-weight:800}
@media (max-width:560px){.ot-liste{columns:1}}

.faq-lang details{background:var(--n-card);border:1px solid var(--n-line-soft);border-radius:var(--n-radius)}
.faq-lang summary{font-family:Onest,Manrope,sans-serif;font-weight:700;color:var(--n-on)}
.faq-lang summary::after{color:var(--n-lime)}
.faq-lang p{color:var(--n-on-2)}

.videoblock{background:var(--n-card);border:1px solid var(--n-line-soft);
  border-radius:var(--n-radius);padding:18px}
.videoblock .vid{border-radius:10px;border:1px solid var(--n-line-soft)}
.videoblock .vid-note{color:var(--n-on-2)}

.callbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;gap:10px;
  padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
  background:var(--n-deep);box-shadow:0 -2px 16px rgba(0,0,0,.45)}
.callbar a{flex:1;text-align:center;min-height:50px;display:flex;align-items:center;
  justify-content:center;border-radius:10px;font-weight:800;text-decoration:none;font-size:16px}
.callbar .c{background:var(--n-lime);color:var(--n-deep)}
.callbar .w{background:var(--n-wa);color:#fff}
@media (max-width:780px){.callbar{display:flex} body{padding-bottom:80px}}

.foot{background:var(--n-deep);color:var(--n-on-2);padding:28px 0 32px;margin-top:0}
.foot a{color:var(--n-on)}
.foot a:hover{color:var(--n-lime)}
.foot p{color:var(--n-on-2);margin:0 0 8px}
.foot-head{font-family:Onest,Manrope,sans-serif;font-weight:800;color:var(--n-on);font-size:19px;margin-bottom:8px}
.foot-hours{color:var(--n-lime);font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:14px}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Ortsteil-Blöcke in der Sprachversion */
.ob-lead{color:var(--n-on-2)}
.ortsblock{border:1px solid var(--n-line-soft);border-radius:var(--n-radius);background:var(--n-card)}
.ortsblock > summary::after{color:var(--n-lime)}
.ortsblock .ob-name{color:var(--n-on)}
.ortsblock .ob-meta{color:var(--n-on-2)}
.ortsblock .ob-body{border-top-color:var(--n-line-soft)}
.ortsblock h3{color:var(--n-on)}
.ortsblock p{color:var(--n-on-2)}

/* стационарный номер */
.btn--fix{background:var(--n-card);color:var(--n-on);border:1px solid var(--n-line-soft)}
.btn--fix:hover{border-color:var(--n-lime);color:var(--n-lime)}
.hdr .btn--fix{background:transparent;color:var(--n-on);border:1px solid var(--n-line-soft)}

/* стационарный в языковой версии: лаймовая кнопка, как у мобильного */
.btn--fix{background:var(--n-lime);color:var(--n-deep);border:0}
.btn--fix:hover{background:var(--n-lime-h);color:var(--n-deep)}
.hdr .btn--fix{background:var(--n-lime);color:var(--n-deep);border:0}
.callbar .f{background:var(--n-lime);color:var(--n-deep)}
.callbar a{flex-direction:column;gap:1px;line-height:1.15;font-size:14px;padding:6px 4px}
.btn-num{display:block;font-size:.82em;font-weight:700;opacity:.95}

/* блоки со светлым фоном из site.css — делаем тёмными под общую гамму */
.local{background:var(--n-card);border-left:4px solid var(--n-lime);
  border-radius:0 var(--n-radius) var(--n-radius) 0;box-shadow:none}
.local p,.local li{color:var(--n-on)}
.local h2,.local h3,.local strong{color:var(--n-on)}
.hubnote{background:var(--n-card-2);border:1px solid var(--n-line-soft);color:var(--n-on)}
.hubnote p{color:var(--n-on)}
.price-note{background:var(--n-card-2);border:1px solid var(--n-line-soft)}
.price-note p{color:var(--n-on-2)}
/* основной текст читаемее: белый вместо приглушённого */
.ortstext p,.nachbarn p,.intents p,.ot-zone p,.ob-body p,.faq-lang p,.anfahrt{color:var(--n-on)}
.ortstext h2,.nachbarn h2,.intents h2,.ot-zone h2{color:var(--n-on)}
.lang-note,.vid-note,.ust-hinweis,.ob-lead,.ob-meta{color:var(--n-on-2)}

/* таблица цен в языковой версии: карточка светлая, цифры тёмные и крупные */
.preistabelle{background:#FFFFFF;border:1px solid var(--n-line-soft);border-radius:var(--n-radius);padding:18px}
.preistabelle .pt-head h3{color:#111C33}
.preistabelle .pt-ab{color:#B3122B;font-weight:800}
.preistabelle .pt-orte{color:#3B4658}
.preistabelle .pt-orte a{color:#0B5A8A}
.preistabelle .price{background:#F7F9FC;border:1px solid #DFE5EE}
.preistabelle .price--hot{border-color:#B3122B}
.preistabelle .price h3{color:#111C33}
.preistabelle .slot{border-top-color:#DFE5EE}
.preistabelle .slot .t{color:#5A6472}
.preistabelle .slot .v{color:#111C33;font-size:28px}
.preistabelle .slot .n{color:#5A6472}
.preistabelle .ticks li{color:#3B4658}
.preistabelle .ticks li::before{border-color:#0F7B4F}
.preistabelle .price-note p{color:#5A6472}
#preise .ust-hinweis{color:var(--n-on-2)}

/* интерфейс языковых версий ближе к немецкому */
.section:first-of-type{background:linear-gradient(160deg,#0B2E3C 0%,#082432 60%)}
.hdr{background:var(--n-night);border-bottom:1px solid var(--n-line-soft)}
.crumbs{padding:14px 20px 0}
.btnrow{gap:10px}
.btn{border-radius:10px}
.btn--lg{min-height:56px}
.local{padding:16px 18px;margin:16px 0}
.ortsblock > summary{padding:15px 18px}
.ortsblock .ob-name{font-size:17px}
.section{padding:36px 0}
h1{margin-bottom:14px}
h2{margin-bottom:12px}
.lead{font-size:18px;color:var(--n-on);max-width:70ch}

/* плашки оплаты в языковой версии */
.zahlfakten li{background:var(--n-card);border:1px solid var(--n-line-soft);color:var(--n-on-2)}

/* то же в языковой версии */
.btnrow > .btn{min-width:186px}

/* меню в языковой версии */
.nav{background:var(--n-night);border-top:1px solid var(--n-line-soft);padding:0 20px}
.nav{display:flex;flex-wrap:wrap;gap:4px;max-width:1160px;margin:0 auto}
.nav a{color:var(--n-on-2);text-decoration:none;padding:11px 13px;font-size:15px;font-weight:600;
  border-radius:8px}
.nav a:hover{color:var(--n-lime);background:rgba(214,255,63,.08)}
@media (max-width:560px){.nav a{font-size:14px;padding:9px 10px}}

.zone-h{color:var(--n-lime);margin:24px 0 10px}

/* карточки и плашки зоны обслуживания на тёмном фоне */
.eg-card{background:var(--n-card);border:1px solid var(--n-line-soft);border-radius:var(--n-radius)}
.eg-card h3{color:var(--n-on)}
.eg-card h3 a{color:var(--n-on);text-decoration:none}
.eg-card h3 a:hover{color:var(--n-lime)}
.eg-sub{color:var(--n-on-2)}
.eg-note{color:var(--n-on-2)}
.eg-orte a,.eg-orte .ot-x,.ot-x{background:rgba(255,255,255,.07);border:1px solid var(--n-line-soft);
  color:var(--n-on);text-decoration:none}
.eg-orte a:hover{border-color:var(--n-lime);color:var(--n-lime)}
.eg-orte .ot-n,.ot-x .ot-n{color:var(--n-on);font-weight:600}
.eg-orte .ot-t,.ot-x .ot-t{color:var(--n-lime);font-weight:600}
.bez{background:var(--n-card);border:1px solid var(--n-line-soft)}
.bez-n{color:var(--n-on)}
.bez-s{color:var(--n-on-2)}
.bez > summary::after{color:var(--n-lime)}

/* ==========================================================================
   Читаемость текста (v121): немецкие блоки на тёмном фоне RU/UK.
   Проверка: tools/contrast_audit.py — каждый видимый текст на всех RU/UK
   страницах, 1280 и 390 px, WCAG AA (4.5:1, крупный текст 3:1).
   Немецкие страницы lang.css не подключают. «Стационарный» (.btn--fix,
   .callbar .f) здесь не трогаем.
   ========================================================================== */
:root{--muted:var(--n-on-2);--line:rgba(255,255,255,.12)}

/* кнопка мобильного: тёмный текст на лайме (в site.css стоит color:#fff !important) */
.btn--call,.btn--call:visited{background:var(--n-lime)!important;color:var(--n-deep)!important;
  border-color:var(--n-lime)!important;box-shadow:none}
.btn--call:hover,.btn--call:focus{background:var(--n-lime-h)!important;color:var(--n-deep)!important;border-color:var(--n-lime-h)!important}
.btn--call .btn-num{color:var(--n-deep)}
/* WhatsApp: на телефоне site.css красит в светло-зелёный #25d366 — белый текст на нём не читается */
@media (max-width:900px){
  .btn--wa,.mobile-cta .btn--wa{background:var(--n-wa)!important;color:#fff!important;border-color:var(--n-wa)!important;box-shadow:none}
  .mobile-cta .btn--call{background:var(--n-lime)!important;color:var(--n-deep)!important}
}
.btn--wa .btn-num{color:#fff}

/* светлые карточки из site.css — тёмные, текст светлый */
.card,.steps li,.ort,.region,.faq details,.prose,.wait-places,.preiszonen details{
  background:var(--n-card);border:1px solid var(--n-line-soft);box-shadow:none}
.card h2,.card h3,.card h4,.steps li h3,.ort h3,.region h3,.region h3 a,.prose h1,.prose h2,.prose h3,.prose h4,
.wait-places h3,.faq summary{color:var(--n-on)}
.card p,.card li,.steps li p,.ort p,.region p,.prose p,.prose li,.prose td,.prose th,.wait-places p,
.faq .a,.faq .a p,.preiszonen p{color:var(--n-on)}
.region h3 a:hover{color:var(--n-lime)}
.region .meta{color:var(--n-on-2)}
.region ul a{background:rgba(255,255,255,.07);border:1px solid var(--n-line-soft);color:var(--n-on)}
.region ul a:hover{background:rgba(255,255,255,.07);border-color:var(--n-lime);color:var(--n-lime)}
.faq summary::after{color:var(--n-lime)}
.wait-places li{background:rgba(255,255,255,.06);border:1px solid var(--n-line-soft);color:var(--n-on)}
.wait-places li strong{color:var(--n-on)}

/* список доп. услуг с ценами */
.svc-list li{border-bottom-color:var(--n-line-soft);color:var(--n-on)}
.svc-list li span{color:var(--n-on)}
.svc-list b{color:var(--n-lime)}
.svc-list .n{color:var(--n-on-2)}

/* ячейки цен в карточках: были светлые с лаймовыми цифрами */
.slot{background:var(--n-card-2);border:1px solid var(--n-line-soft)}
.slot .t,.slot .n{color:var(--n-on-2)}
.slot .v{color:var(--n-lime)}
.ticks{border-top-color:var(--n-line-soft)}
/* внутри светлой таблицы цен ячейки остаются светлыми, цифры тёмные */
.preistabelle .slot{background:#F4F7FB;border:1px solid #DFE5EE}

/* ссылки в тексте: были тёмно-синие на тёмном фоне */
/* (кнопки .btn не трогаем — в т.ч. «Стационарный») */
.nachbarn a:not(.btn),.preis-umland a:not(.btn),.preiszonen a:not(.btn),.langsw a:not(.btn),.ortstext a:not(.btn),
.local a:not(.btn),.hubnote a:not(.btn),.price-note a:not(.btn),.faq .a a:not(.btn),.prose a:not(.btn),
.card p a:not(.btn),.ort p a:not(.btn),.ob-body p a:not(.btn),.lead a:not(.btn){color:var(--n-lime)}
.nachbarn a:not(.btn):hover,.prose a:not(.btn):hover,.ortstext a:not(.btn):hover{color:#fff}

/* серые подписи (#707070 и #555 на тёмном) */
.lagekarte figcaption,.ort-leistungen .ort-preis,.preis-umland,.langsw,.de-name,.lang-note{color:var(--n-on-2)}
p[style*="color:#555"],div[style*="color:#555"],span[style*="color:#555"]{color:var(--n-on-2)!important}

/* полоса WhatsApp: светло-зелёный текст на зелёном */
.wa-band p{color:#fff}

/* шапка главной: синий градиент из site.css → тёмный петроль, плашки читаются */
.hero{background:linear-gradient(160deg,#0B2E3C 0%,#082432 60%,#0A2A38 100%)}
.hero p{color:var(--n-on)}

/* карта района: бледные подписи */
.lagekarte svg g[opacity=".5"]{opacity:1}
.lagekarte svg text[fill="#707070" i]{fill:#4F5866}
.lagekarte svg text[fill="#5A6678" i]{fill:#3E4859}
.lagekarte svg text{paint-order:stroke;stroke:#FFFFFF;stroke-width:2.6px;stroke-linejoin:round}

/* ===== v122: меню на телефоне ===== */
/* В меню теперь 7 пунктов. Столбиком они занимали весь первый экран, */
/* поэтому на узких экранах пункты идут плашками в несколько строк. */
@media (max-width:900px){
  .nav{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 16px 12px}
  .nav a{border:1px solid var(--n-line-soft);border-bottom:1px solid var(--n-line-soft);border-radius:999px;
    padding:8px 13px;font-size:14px;line-height:1.2;background:rgba(255,255,255,.04)}
}

/* ===== v123: меню цен на главной ===== */
/* Три зоны — крупные кнопки; таблица цен раскрывается по нажатию (разметка и базовый стиль — в site.css). */
details.pz{background:var(--n-card);border:2px solid rgba(214,255,63,.55);box-shadow:0 10px 30px rgba(0,0,0,.25)}
details.pz > summary{background:var(--n-card);color:var(--n-on)}
details.pz > summary:hover,details.pz[open] > summary{background:#1B4153}
details.pz > summary:focus-visible{outline:3px solid var(--n-lime);outline-offset:-3px}
details.pz .pz-name{color:var(--n-on)}
details.pz .pz-ab{background:var(--n-lime);color:var(--n-deep)}
details.pz .pz-orte{color:#E3EEF2}
details.pz .pz-more{border-color:var(--n-lime);color:var(--n-lime)}
details.pz .pz-body{border:0;border-radius:0;border-top:1px solid rgba(214,255,63,.35)}

/* ==========================================================================
   v126 (02.10.2026), по просьбе заказчика:
   1) «Зона обслуживания» на телефоне — кнопкой прямо в шапке, рядом с DE/RU/UK
      (на компьютере пункт стоит в меню под шапкой);
   2) тёмные и зелёные фоны — плавный переход от тёмного к чуть более светлому;
   3) белые плашки с бледным текстом — бежевый фон, чёрный текст
      (таблицы цен в меню на главной, карты районов, плашки районов);
   4) приглушённый текст на тёмном фоне светлее: #9FB6C0 → #D6E2E7.
   Кнопки «Стационарный» (.btn--fix, .callbar .f) не трогаем.
   ========================================================================== */
:root{
  --n-on-2:#D6E2E7;
  --g-sec:linear-gradient(180deg,#082432 0%,#0D3243 50%,#082432 100%);
  --g-alt:linear-gradient(180deg,#0E2B38 0%,#143B4C 50%,#0E2B38 100%);
  --g-card:linear-gradient(160deg,#12313F 0%,#1B4456 100%);
  --g-card-h:linear-gradient(160deg,#16394A 0%,#1F4B5E 100%);
  --g-box:linear-gradient(160deg,#0E2B38 0%,#143B4C 100%);
  --g-slot:linear-gradient(160deg,#0D2A37 0%,#123747 100%);
  --g-green:linear-gradient(135deg,#093225 0%,#12553D 100%);
  --g-wa:linear-gradient(180deg,#0C6445 0%,#0A5239 100%);
  --g-wa-h:linear-gradient(180deg,#0A5A3D 0%,#084831 100%);
  --g-hdr:linear-gradient(180deg,#071B27 0%,#0A2532 100%);
  --g-nav:linear-gradient(180deg,#0A2532 0%,#0C2A38 100%);
  --g-foot:linear-gradient(180deg,#0B2735 0%,#05131C 100%);
  --beige:#F5ECDD;--beige-2:#FBF6EC;--beige-3:#F1E5D1;--beige-line:#E2D3BA;
  --ink:#111111;--ink-2:#2B2B2B;
}

/* 1) «Зона обслуживания» в шапке на телефоне */
.hdr-zone{display:none}
@media (max-width:900px){
  .hdr-zone{display:inline-flex;align-items:center;gap:5px;margin-left:auto;min-height:36px;padding:6px 11px;
    border:2px solid var(--n-lime);border-radius:999px;color:var(--n-lime);background:rgba(214,255,63,.08);
    font-weight:800;font-size:13.5px;line-height:1.15;text-decoration:none;white-space:nowrap}
  .hdr-cta{column-gap:8px}
  .hdr-zone:hover,.hdr-zone:focus-visible,.hdr-zone[aria-current="page"]{background:var(--n-lime);color:var(--n-deep)}
}
@media (max-width:389px){
  .langbar a,.langbar span{padding:5px 7px}
  .hdr-zone{padding:6px 8px;font-size:13px;gap:4px}
}

/* 2) тёмные и зелёные фоны — плавный переход */
.hdr{background:var(--g-hdr)}
.nav{background:var(--g-nav)}
.section{background:var(--g-sec)}
.section--alt{background:var(--g-alt)}
.price,.faq-lang details,.videoblock,.ortsblock,.local,.eg-card,.bez,.card,.steps li,.ort,.region,
.faq details,.prose,.wait-places,.preiszonen details,.zahlfakten li{background:var(--g-card)}
.hubnote,.price-note{background:var(--g-box)}
.slot{background:var(--g-slot)}
details.pz,details.pz > summary{background:var(--g-card)}
details.pz > summary:hover,details.pz[open] > summary{background:var(--g-card-h)}
.wa-band{background:var(--g-green)}
.btn--wa,.callbar .w{background:var(--g-wa)}
.btn--wa:hover{background:var(--g-wa-h)}
@media (max-width:900px){
  .btn--wa,.mobile-cta .btn--wa{background:var(--g-wa)!important;border-color:#0A5239!important}
}
.hdr .btn--wa{background:transparent}
.foot{background:var(--g-foot)}
.callbar{background:var(--g-foot)}
/* «Мои работы»: карточки и блок внизу */
.lang-ru .ma .work-card,.lang-uk .ma .work-card{background:var(--g-card)}
.lang-ru .ma .work-card:hover,.lang-uk .ma .work-card:hover{background:var(--g-card-h)}
.lang-ru .ma .cta,.lang-uk .ma .cta{background:linear-gradient(135deg,#123A3A 0%,#1A4A45 100%)}

/* 3) белые плашки — бежевый фон, чёрный текст */
.preistabelle{background:var(--beige);border-color:var(--beige-line)}
.preistabelle .price{background:var(--beige-2);border:1px solid var(--beige-line)}
.preistabelle .price--hot{border-color:#B3122B}
.preistabelle .slot{background:var(--beige-3);border:1px solid var(--beige-line)}
.preistabelle h3,.preistabelle .price h3,.preistabelle .slot .v{color:var(--ink)}
.preistabelle .slot .t,.preistabelle .slot .n,.preistabelle .price-note p{color:var(--ink-2)}
.preistabelle .ticks{border-top-color:var(--beige-line)}
.preistabelle .ticks li{color:var(--ink)}
/* карты районов (SVG) */
.lagekarte svg > rect:first-of-type{fill:var(--beige)}
.lagekarte svg > rect:nth-of-type(2){stroke:var(--beige-line)}
.lagekarte svg path[fill="#D7DDE7" i]{fill:#E3D6C0}
.lagekarte svg rect[fill="#fff" i],.lagekarte svg rect[fill="#ffffff" i]{fill:var(--beige-2);stroke:var(--beige-line)}
.lagekarte svg text,.lagekarte svg tspan{fill:var(--ink)}
.lagekarte svg text{stroke:var(--beige-2)}
.lagekarte svg text[font-size="9"],.lagekarte svg tspan[font-size="10"],.lagekarte svg tspan[fill="#5A6678" i]{fill:var(--ink-2)}
/* плашки районов (chips) */
.chips a{background:var(--beige);border:1px solid var(--beige-line);color:var(--ink)}
.chips a:hover{background:var(--beige-2);border-color:#C9B48F;color:#000}

/* 4) мелкий текст под ценами */
.ust-hinweis,#preise .ust-hinweis{color:var(--n-on-2);opacity:1}
.ust-hinweis small{font-size:13px}
.lagekarte svg text[fill="#5A6678" i],.lagekarte svg text[fill="#707070" i]{fill:var(--ink-2)}
.btn--wa .btn-num{opacity:1;color:#fff}
