/* Draft dark theme for the isolated ushell_dark template only. */
:root {
    --lad-dark-bg: #0b1220;
    --lad-dark-bg-soft: #111c2e;
    --lad-dark-card: #152238;
    --lad-dark-card-2: #182a45;
    --lad-dark-text: #eef6ff;
    --lad-dark-muted: #a9bad2;
    --lad-dark-line: rgba(180, 214, 255, 0.18);
    --lad-dark-accent: #16c7e8;
    --lad-dark-warm: #ff981e;
}

html,
body {
    background: var(--lad-dark-bg);
    color: var(--lad-dark-text);
}

body,
.wrapper,
.main-content,
.content,
.bottom-content,
.top-block {
    background-color: var(--lad-dark-bg);
}

header,
nav,
.header-content,
.company-information,
.feedback-information,
.top-menu,
.mobile-menu,
.footer,
footer {
    background-color: #0f1929;
    color: var(--lad-dark-text);
}

nav.p--fixed {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
}

h1,
h2,
h3,
.modal-window__heading,
.company-information__name,
.additionally-information__phone a,
.contacts-information__phone a {
    color: var(--lad-dark-text);
}

p,
li,
span,
td,
th,
label,
.company-information__tagline,
.contacts-information__label,
.additionally-information__text,
.modal-window__content,
.feedback-block__description {
    color: var(--lad-dark-muted);
}

a {
    color: #5dd8f0;
}

input,
textarea,
select,
button {
    color-scheme: dark;
}

input,
textarea,
select,
.feedback-block__input,
.feedback-block__textarea {
    background-color: #0f1929;
    color: var(--lad-dark-text);
    border-color: var(--lad-dark-line);
}

input::placeholder,
textarea::placeholder {
    color: #7f90aa;
}

.module,
.module .container,
.intro-section,
.intro-section__shadow,
.advantages,
.price-card,
.card,
.service-card,
.modal-window__block,
.ureviewsproof,
.ureviewsproof__panel,
.ureviewsproof__card,
.feedback-block,
.questions,
.partners,
.contacts,
.calculator,
.ucalc,
.table-wrapper,
.content-block,
.lad-standard-block,
.lad-standard-block__inner,
.lad-standard-block__card,
.lad-standard-block__estimate {
    background-color: var(--lad-dark-card);
    border-color: var(--lad-dark-line);
    color: var(--lad-dark-text);
}
.lad-standard-block {
  background: var(--lad-dark-card) !important;
  border-color: var(--lad-dark-line) !important;
}
.lad-standard-block__inner {
  background: var(--lad-dark-card) !important;
  background-image: none !important;
  border-color: var(--lad-dark-line) !important;
}

.p--alternation-background:nth-child(2n),
.p--gray-background,
.p--light-background,
.p--blue-background,
.section-gray,
.section-light {
    background-color: var(--lad-dark-bg-soft);
}

.button,
.btn,
input[type="submit"] {
    box-shadow: 0 14px 28px rgba(255, 152, 30, 0.22);
}

img,
video,
iframe {
    border-color: var(--lad-dark-line);
}

hr,
table,
th,
td {
    border-color: var(--lad-dark-line);
}

.modal-window__background {
    background-color: rgba(2, 8, 18, 0.78);
}

.modal__messenger-icon.p--max {
    background-color: #fff;
}

/* Keep the cloned template from inheriting the old 1300px intro overflow. */
.intro-section,
.intro-section__shadow {
    max-width: 1300px;
    width: 100%;
}


/* Dark-template preview: keep module containers inside the viewport on tablet widths. */
@media (max-width: 800px) {
    .module.container.columns-1 {
        box-sizing: border-box;
        max-width: 100%;
        margin-right: 0;
    }
}

/* Dark-template preview: replace leftover white card islands with dark readable surfaces. */
.horizontal-item,
.horizontal-trigger,
.vertical-item,
.vertical-trigger,
.balkon-item,
.partner,
.question,
.questions__item,
.uquestions-item,
.review,
.reviews-item,
.price-item,
.ucardswithlists-item,
.uvcards-item,
.uhcards-item,
.uhtriggers-item,
.ubalkoncards-item {
    background: linear-gradient(180deg, rgba(24, 42, 69, 0.98), rgba(15, 25, 41, 0.98)) !important;
    border: 1px solid var(--lad-dark-line) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28) !important;
    color: var(--lad-dark-text) !important;
}

.horizontal-item h2,
.horizontal-item h3,
.horizontal-trigger h2,
.horizontal-trigger h3,
.vertical-item h2,
.vertical-item h3,
.vertical-trigger h2,
.vertical-trigger h3,
.balkon-item h2,
.balkon-item h3,
.partner h2,
.partner h3,
.question h2,
.question h3,
.questions__item h2,
.questions__item h3,
.uquestions-item h2,
.uquestions-item h3,
.price-item h2,
.price-item h3,
.ucardswithlists-item h2,
.ucardswithlists-item h3,
.uvcards-item h2,
.uvcards-item h3,
.uhcards-item h2,
.uhcards-item h3,
.uhtriggers-item h2,
.uhtriggers-item h3,
.ubalkoncards-item h2,
.ubalkoncards-item h3,
.horizontal-item .heading,
.horizontal-trigger .heading,
.vertical-item .heading,
.vertical-trigger .heading,
.balkon-item .heading,
.partner .heading {
    color: #f8fbff !important;
}

.horizontal-item p,
.horizontal-item li,
.horizontal-item span,
.horizontal-trigger p,
.horizontal-trigger li,
.horizontal-trigger span,
.vertical-item p,
.vertical-item li,
.vertical-item span,
.vertical-trigger p,
.vertical-trigger li,
.vertical-trigger span,
.balkon-item p,
.balkon-item li,
.balkon-item span,
.partner p,
.partner li,
.partner span,
.question p,
.question li,
.question span,
.questions__item p,
.questions__item li,
.questions__item span,
.uquestions-item p,
.uquestions-item li,
.uquestions-item span,
.price-item p,
.price-item li,
.price-item span,
.ucardswithlists-item p,
.ucardswithlists-item li,
.ucardswithlists-item span,
.uvcards-item p,
.uvcards-item li,
.uvcards-item span,
.uhcards-item p,
.uhcards-item li,
.uhcards-item span,
.uhtriggers-item p,
.uhtriggers-item li,
.uhtriggers-item span,
.ubalkoncards-item p,
.ubalkoncards-item li,
.ubalkoncards-item span {
    color: #c9d7ea !important;
}

.balkon-item .price,
.balkon-item [class*="price"],
.price-item .price,
.price-item [class*="price"],
.ubalkoncards-item .price,
.ubalkoncards-item [class*="price"] {
    color: var(--lad-dark-accent) !important;
}

.horizontal-item img,
.vertical-item img,
.balkon-item img,
.partner img,
.ucardswithlists-item img,
.uvcards-item img,
.uhcards-item img,
.ubalkoncards-item img {
    background-color: rgba(255, 255, 255, 0.92);
}

/* MAX icon must sit on a visible white circle, not a transparent one. */
.modal__messenger-icon.p--max,
.messenger-icon.p--max,
.social-icon.p--max,
a[href*="max.ru"] .modal__messenger-icon,
a[href*="max.ru"] .messenger-icon,
a[href*="max.ru"] .social-icon {
    background: #fff !important;
    border: 1px solid rgba(0, 0, 0, 0.28) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.28) !important;
}

/* Dark-template preview: rating cards should not remain white islands on dark pages. */
.ureviewsproof-card,
.ureviewsproof-card--yandex,
.ureviewsproof-card--twogis {
    background: linear-gradient(180deg, rgba(24, 42, 69, 0.98), rgba(15, 25, 41, 0.98)) !important;
    border: 1px solid rgba(93, 216, 240, 0.28) !important;
    color: var(--lad-dark-text) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.25) !important;
}

.ureviewsproof-card *,
.ureviewsproof-card span,
.ureviewsproof-card strong,
.ureviewsproof-card b,
.ureviewsproof-card p {
    color: inherit;
}

.ureviewsproof-card__name,
.ureviewsproof-card__title,
.ureviewsproof-card [class*="name"],
.ureviewsproof-card [class*="title"] {
    color: #f8fbff !important;
}

.ureviewsproof-card__meta,
.ureviewsproof-card__text,
.ureviewsproof-card [class*="meta"],
.ureviewsproof-card [class*="subtitle"] {
    color: #c9d7ea !important;
}

.ureviewsproof-card [class*="rating"],
.ureviewsproof-card [class*="star"] {
    color: #ffb800 !important;
}

/* MAX icon variants across header, messenger block, footer and modal. */
a[href*="max.ru"].contacts-information__messenger-icon,
a[href*="max.ru"].messengers__icon,
a[href*="max.ru"].footer-socials__item,
a[href*="max.ru"].modal__messenger-icon,
a[href*="max.ru"] .contacts-information__messenger-icon,
a[href*="max.ru"] .messengers__icon,
a[href*="max.ru"] .footer-socials__item,
a[href*="max.ru"] .modal__messenger-icon {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: #fff !important;
    border: 1px solid rgba(0, 0, 0, 0.32) !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.32) !important;
}

.contacts-information a[href*="max.ru"].contacts-information__messenger-icon {
    width: 28px;
    height: 28px;
    padding: 3px;
}

.messengers a[href*="max.ru"].messengers__icon,
.footer-socials a[href*="max.ru"].footer-socials__item {
    width: 60px;
    height: 60px;
}

.modal-window a[href*="max.ru"].modal__messenger-icon {
    width: 44px;
    height: 44px;
}

 a[href*="max.ru"] img {
    display: block;
}

/* Dark-template preview: keep the hero photo visible and readable. */
.intro-section .wrapper,
.intro-section .container,
.intro-section .intro-content {
    background: transparent !important;
    background-color: transparent !important;
}

.intro-section__shadow {
    background: linear-gradient(90deg, rgba(5, 14, 28, 0.78) 0%, rgba(5, 14, 28, 0.48) 50%, rgba(5, 14, 28, 0.12) 100%) !important;
}

.intro-section .intro-content__heading,
.intro-section .intro-content__triggers,
.intro-section .intro-content__trigger,
.intro-section .intro-content__button {
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.52);
}

/* Dark-template preview: restore the original cyan menu strip instead of dark center + cyan edges. */
nav.p--fixed,
nav .module.container.columns-1,
nav .umenu.top-menu,
nav .top-menu {
    background: #0cb4d5 !important;
    background-color: #0cb4d5 !important;
}

nav .top-menu a,
nav .top-menu__item,
nav .top-menu li,
nav .umenu a {
    color: #fff !important;
    text-shadow: none;
}

nav .top-menu a:hover,
nav .top-menu .active > a,
nav .top-menu__item:hover > a {
    background: rgba(255, 255, 255, 0.16) !important;
    color: #fff !important;
}

/* Dark-template preview: reviews panels must not keep white gradient slabs. */
.ureviewsproof__panel,
.ureviewsproof__panel--ratings,
.ureviewsproof__panel--reviews,
.ureviewsproof__content,
.ureviewsproof__inner,
.ureviewsproof__viewport,
.ureviewsproof__carousel {
    background: linear-gradient(145deg, rgba(24, 42, 69, 0.98), rgba(15, 25, 41, 0.98)) !important;
    color: var(--lad-dark-text) !important;
}

.ureviewsproof__panel h2,
.ureviewsproof__panel h3,
.ureviewsproof__title,
.ureviewsproof__heading {
    color: #f8fbff !important;
}

.ureviewsproof__panel p,
.ureviewsproof__panel span,
.ureviewsproof__panel li,
.ureviewsproof__text,
.ureviewsproof__lead {
    color: #c9d7ea !important;
}

/* Dark-template preview: form fields should be dark, not white islands. */
form input[type="text"],
form input[type="tel"],
form input[type="email"],
form input[type="number"],
form input[type="search"],
form input[type="url"],
form textarea,
form select,
.modal-window input[type="text"],
.modal-window input[type="tel"],
.modal-window input[type="email"],
.modal-window textarea,
.feedback-block input,
.feedback-block textarea,
.ucalc input,
.ucalc select,
.ucalc textarea,
input.feedback-block__input,
textarea.feedback-block__textarea {
    background: #0f1929 !important;
    background-color: #0f1929 !important;
    border: 1px solid rgba(180, 214, 255, 0.28) !important;
    color: #f8fbff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 10px 24px rgba(0, 0, 0, 0.18) !important;
}

form input::placeholder,
form textarea::placeholder,
.modal-window input::placeholder,
.modal-window textarea::placeholder,
.feedback-block input::placeholder,
.feedback-block textarea::placeholder {
    color: #95a8c3 !important;
    opacity: 1;
}

form input:focus,
form textarea:focus,
form select:focus,
.modal-window input:focus,
.modal-window textarea:focus,
.feedback-block input:focus,
.feedback-block textarea:focus {
    border-color: var(--lad-dark-accent) !important;
    outline: none;
    box-shadow: 0 0 0 3px rgba(22, 199, 232, 0.18), 0 10px 24px rgba(0, 0, 0, 0.2) !important;
}

/* Codex dark preview: final contrast pass for review thumbs and forms. */
.ureviewsproof-review__button,
.sigFreeThumb {
    background: rgba(12, 24, 43, 0.96) !important;
    border: 1px solid rgba(134, 190, 255, 0.28) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28) !important;
}

.ureviewsproof-review__button img {
    background: transparent !important;
}

.sigFreeThumb img,
.sigFreeImg {
    background-color: transparent !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

input[type="submit"].button,
button.button,
.feedback-block__button,
.feedback-line-block__button,
.modal-window input[type="submit"].button {
    background: #ff981e !important;
    border-color: transparent !important;
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(255, 152, 30, 0.28) !important;
}

input[type="submit"].button:hover,
button.button:hover,
.feedback-block__button:hover,
.feedback-line-block__button:hover,
.modal-window input[type="submit"].button:hover {
    background: #ffad3d !important;
    color: #ffffff !important;
}

form input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
form textarea,
form select,
.modal-window input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
.modal-window textarea,
.modal-window select {
    background: #0f1929 !important;
    color: #f8fbff !important;
    border-color: rgba(180, 214, 255, 0.28) !important;
}

/* Dark preview: contextual “Коротко…” blocks match the page surface. */
.ai-inline-brief,
.ai-seo-pack {
    background: var(--lad-dark-card) !important;
    border-color: var(--lad-dark-line) !important;
    color: var(--lad-dark-text) !important;
}
.ai-inline-brief__title,
.ai-seo-pack__title {
    color: var(--lad-dark-text) !important;
}
.ai-inline-brief__lead,
.ai-inline-brief__more,
.ai-inline-brief__case,
.ai-inline-brief__updated,
.ai-seo-pack__facts,
.ai-seo-pack__table td,
.ai-seo-pack__table th {
    color: #c9d7ea !important;
}
.ai-inline-brief summary {
    color: #5dd8f0 !important;
}
.ai-seo-pack__table,
.ai-seo-pack__table th,
.ai-seo-pack__table td {
    background: var(--lad-dark-card) !important;
    border-color: var(--lad-dark-line) !important;
}

/* Codex dark preview: keep the full desktop nav strip cyan. */
nav .wrapper,
nav .wrapper.p--no-vertical-padding {
    background: #0cb4d5 !important;
    background-color: #0cb4d5 !important;
}

/* Codex dark preview: menu should be a cyan capsule, not a full-width strip. */
nav,
nav.p--fixed {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

nav .module.container.columns-1 {
    background: #0cb4d5 !important;
    background-color: #0cb4d5 !important;
    border-radius: 30px !important;
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.18) !important;
}

nav .wrapper,
nav .wrapper.p--no-vertical-padding {
    background: transparent !important;
    background-color: transparent !important;
}

nav .umenu.top-menu,
nav .top-menu {
    background: #0cb4d5 !important;
    background-color: #0cb4d5 !important;
}

/* Codex dark preview: wrappers inside lighter content sections must not create dark inner boxes. */
main .content-section > .container > .wrapper,
main .content-section .container.headline > .wrapper,
main .content-section .container.columns-1 > .wrapper,
main .content-section .container.columns-2 > .wrapper,
main .content-section .container.columns-3 > .wrapper,
main .content-section .container.columns-4 > .wrapper {
    background: transparent !important;
    background-color: transparent !important;
}

/* Codex dark preview: readable yellow price pills and open feedback master photo. */
.vertical-item__price,
.p--color-price .vertical-item__price {
    color: #102033 !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

.feedback-block__background .container.headline > .wrapper {
    background: transparent !important;
    background-color: transparent !important;
}

.feedback-block__background .container.headline .heading,
.feedback-block__background .container.headline .heading + p,
.feedback-block__background .container.headline p {
    text-shadow: 0 3px 14px rgba(0, 0, 0, 0.65) !important;
}

/* Codex dark preview: keep all nested text readable inside yellow price pills. */
.vertical-item__price,
.vertical-item__price *,
.p--color-price .vertical-item__price,
.p--color-price .vertical-item__price * {
    color: #102033 !important;
    text-shadow: none !important;
}

/* Codex dark preview: footer contacts and checklist text contrast. */
.footer-content__contacts-info,
.footer-content__contacts-info p,
.footer-content__contacts-info a,
.footer-content__contacts-info a:visited,
.footer-content__contacts-info a:hover,
.footer-content__contacts-info a:focus {
    color: #eaf4ff !important;
    opacity: 1 !important;
}

.footer-content__contacts-info a[href^="tel:"] {
    color: #ffffff !important;
    font-weight: 700 !important;
    text-decoration-color: rgba(12, 180, 213, 0.55) !important;
}

.vertical-item__plus span,
.vertical-item__minus span,
.horizontal-trigger__text p,
.ureviewsproof-proof,
.ureviewsproof-proof span {
    color: #eaf4ff !important;
    opacity: 1 !important;
}

.vertical-item__plus img,
.vertical-item__minus img {
    background: transparent !important;
    background-color: transparent !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    overflow: hidden !important;
}


/* Codex dark preview: homepage category cards keep the original white-card contrast. */
.blog .blog-item {
    background: #ffffff !important;
    color: #303030 !important;
}

.blog .blog-item__title,
.blog .blog-item__title *,
.blog .blog-item h1,
.blog .blog-item h2,
.blog .blog-item h3,
.blog .blog-item__pice,
.blog .blog-item__pice * {
    color: #303030 !important;
    text-shadow: none !important;
}

.blog .blog-item__intro-text,
.blog .blog-item__intro-text *,
.blog .blog-item p,
.blog .blog-item li {
    color: #787878 !important;
    text-shadow: none !important;
}

.blog .blog-item .button,
.blog .blog-item .button * {
    color: #ffffff !important;
}

/* Codex dark preview: old Ushell chrome can leave homepage galleries raw under <main>. Keep them at the normal container width. */
main > ul.sigFreeContainer.sigFreeClassic {
    width: 1140px !important;
    max-width: calc(100% - 30px) !important;
    margin: -15px auto 0 !important;
}

@media (max-width: 800px) {
    main > ul.sigFreeContainer.sigFreeClassic {
        max-width: calc(100% - 20px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* Codex dark preview: final homepage card/gallery refinements. */
.blog .blog-item__pice,
.blog .blog-item__pice *,
.blog .blog-item__price,
.blog .blog-item__price * {
    color: #303030 !important;
    text-shadow: none !important;
}

main > ul.sigFreeContainer.sigFreeClassic .sigFreeThumb {
    box-sizing: border-box !important;
}

/* Codex dark preview: intro shadow padding must stay inside the viewport on mobile. */
.intro-section__shadow {
    box-sizing: border-box !important;
}

.intro-section__shadow .container.columns-1 {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Codex dark preview: CTA layout wrappers should not create black inner panels. */
.feedback-block__background .container.columns-free > .wrapper,
.content-section .feedback-line-block > .wrapper,
.content-section .feedback-line-block > form.wrapper {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

.feedback-block__background .container.columns-free,
.content-section .feedback-line-block {
    align-items: center !important;
}

/* Codex dark preview: section headings on tinted dark sections should not sit on black slabs. */
main section.module.p--alternation-background > .container.headline,
main section.module.p--alternation-background > .container.headline > .wrapper,
main section.p--master > .container.headline,
main section.p--master > .container.headline > .wrapper {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

/* Codex dark preview: master CTA technical wrappers are layout only, not visual panels. */
main section.p--master > .container.columns-free > .wrapper,
main section.p--master > .container.columns-free > form.wrapper {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

/* Codex dark preview: blog/category card wrappers are spacing only; keep the white cards clean. */
.blog .columns-2 > .wrapper,
.blog .columns-3 > .wrapper,
.blog .columns-4 > .wrapper,
.blog .p--same-height > .wrapper {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

/* Dark preview: balance the balcony works gallery into three filled rows. */
#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px 30px !important;
  width: 1140px !important;
  max-width: calc(100% - 30px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 !important;
}

#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb {
  float: none !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb:nth-last-child(-n+2) {
  grid-column: span 2;
  aspect-ratio: 2.05 / 1;
}

#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb > a,
#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb > a > span,
#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb > a > span > span {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb img,
#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb a[style],
#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb span[style] {
  width: 100% !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center center !important;
}

@media (max-width: 600px) {
  #sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    max-width: calc(100% - 18px) !important;
  }
}

/* Refine: the gallery plugin appends a clear LI, so target photo 9 and 10 explicitly. */
#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb:nth-of-type(9),
#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb:nth-of-type(10) {
  grid-column: span 2 !important;
  aspect-ratio: 2.05 / 1 !important;
}

#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeClear {
  display: none !important;
}

/* Home dark preview: service cards must not stay as large white fields. */
main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item {
  background: #13243a !important;
  color: #eef6ff !important;
  border: 1px solid rgba(92, 155, 218, .38) !important;
  box-shadow: 0 20px 45px rgba(0, 0, 0, .28) !important;
}

main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item__content {
  background: linear-gradient(180deg, #13243a 0%, #0f1f34 100%) !important;
  color: #eef6ff !important;
}

main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item__title,
main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item__title *,
main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item h2,
main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item h3 {
  color: #ffffff !important;
  text-shadow: none !important;
}

main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item__intro-text,
main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item__intro-text *,
main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item p,
main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item li {
  color: #c9d9ec !important;
}

main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item__pice,
main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item__pice * {
  color: #f5fbff !important;
}

main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .blog-item__pice img {
  filter: none !important;
  opacity: 1 !important;
}

main .container.sheet.p--alternation-background .blog .columns-3.p--same-height .button-readmore .button {
  color: #ffffff !important;
  background: #ff981e !important;
  border-color: #ff981e !important;
  text-shadow: none !important;
}

/* Dark footer: keep Telegram and MAX social buttons visually equal. */
footer .footer-socials {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}

footer .footer-socials__item {
  width: 68px !important;
  height: 68px !important;
  min-width: 68px !important;
  min-height: 68px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;
}

footer .footer-socials__item img {
  display: block !important;
  width: 38px !important;
  height: 38px !important;
  object-fit: contain !important;
}

footer .footer-socials__item img[alt="max"] {
  width: 46px !important;
  height: 46px !important;
}

footer .footer-socials__item:has(img[alt="max"]) {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, .28) !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .32) !important;
}

/* Dark preview: remove technical underlay rectangles in bottom forms and footer. */
main section.p--master .feedback-block,
main section.feedback-block__background .feedback-block {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

footer .footer-content,
footer .footer-content.container,
footer .footer-content > .wrapper,
footer .footer-content.container > .wrapper {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

/* 2026-09-11: remaining light surfaces across the isolated dark previews. */
#lad-fixed-header {
  background: var(--lad-dark-bg-soft) !important;
  border-bottom: 1px solid var(--lad-dark-line);
}
#lad-problem {
  background: var(--lad-dark-bg-soft) !important;
}
#lad-problem .lp-card,
.news-item,
.horizontal-trigger-wide,
.calc__block,
.contacts-block__info {
  background: var(--lad-dark-card) !important;
  border-color: var(--lad-dark-line) !important;
  color: var(--lad-dark-text) !important;
}
#lad-problem .lp-card > div:first-child {
  background-color: var(--lad-dark-card-2) !important;
}
#lad-problem h2,
#lad-problem .lp-card > div:nth-child(2),
.news-item h2,
.horizontal-trigger-wide h2,
.horizontal-trigger-wide h3,
.calc__block h2,
.calc__block h3,
.contacts-block__info h2,
.contacts-block__info h3 {
  color: var(--lad-dark-text) !important;
}
#lad-problem p,
#lad-problem .lp-card > div:nth-child(3),
.news-item p,
.horizontal-trigger-wide p,
.calc__block p,
.calc__block label,
.contacts-block__info p {
  color: #c9d7ea !important;
}
#lad-problem .lp-card a {
  color: #5dd8f0 !important;
}
.vertical-item__image,
.horizontal-item__image,
.price-item__image,
.contacts-block__map {
  background-color: var(--lad-dark-card) !important;
}
.horizontal-item img,
.vertical-item img,
.balkon-item img,
.partner img,
.ucardswithlists-item img,
.uvcards-item img,
.uhcards-item img,
.ubalkoncards-item img {
  background-color: transparent !important;
}
main table,
main table td,
main table th {
  background-color: var(--lad-dark-card) !important;
  border-color: var(--lad-dark-line) !important;
  color: var(--lad-dark-text) !important;
}
main table tr:nth-child(even) > td {
  background-color: var(--lad-dark-bg-soft) !important;
}
main table td p,
main table td span,
main table th p,
main table th span {
  color: inherit !important;
}
.ureviewsproof .ureviewsproof__badge,
.ureviewsproof .ureviewsproof-card__expand,
.ureviewsproof .ureviewsproof-review__expand,
.ureviewsproof .ureviewsproof-slider__nav {
  background: var(--lad-dark-card-2) !important;
  color: #5dd8f0 !important;
  border-color: var(--lad-dark-line) !important;
}
.ureviewsproof .ureviewsproof-slider__nav:hover,
.ureviewsproof .ureviewsproof-slider__nav:focus-visible {
  background: #234366 !important;
}

/* Blog cards outside the homepage need the same dark surfaces. */
.blog .blog-item {
  background: var(--lad-dark-card) !important;
  color: var(--lad-dark-text) !important;
}
.blog .blog-item__title,
.blog .blog-item__title *,
.blog .blog-item h1,
.blog .blog-item h2,
.blog .blog-item h3,
.blog .blog-item__pice,
.blog .blog-item__pice * {
  color: var(--lad-dark-text) !important;
}
.blog .blog-item__intro-text,
.blog .blog-item__intro-text *,
.blog .blog-item p,
.blog .blog-item li {
  color: #c9d7ea !important;
}
/* Embedded map has its own document; tint that surface, including its loader. */
.contacts-block__map iframe[src*="yandex.ru/map-widget/"],
.contacts-block__info iframe[src*="yandex.ru/sprav/widget/"],
.contacts-block__info iframe[src*="widget.2gis.ru/"] {
  filter: invert(0.9) hue-rotate(180deg);
}

/* Keep the header on one surface; nested layout wrappers have no own fill. */
header {
  background: #0f1929 !important;
}
header .container,
header .wrapper,
header .header-content,
header .company-information,
header .feedback-information {
  background: transparent !important;
}

/* MAX's former content-box width plus padding stretched the entire flex row. */
.modal-window .modal__messengers-container {
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
.modal-window a.modal__messenger-icon {
  box-sizing: border-box !important;
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
  flex: 0 0 50px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  margin: 0 !important;
}
.modal-window .modal__messenger-image {
  width: 24px !important;
  height: 24px !important;
  object-fit: contain;
  display: block;
}
.modal-window .modal__messengers-container > .callback__button {
  box-sizing: border-box;
  height: 50px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}
@media (max-width: 600px) {
  .modal-window a.modal__messenger-icon {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    flex-basis: 46px !important;
  }
  .modal-window .modal__messengers-container > .callback__button {
    height: 46px;
    padding: 8px 15px;
  }
}

/* Override the article's later light-theme typography rules. */
main #lad-problem h2,
main #lad-problem .lp-card > div:nth-child(2) {
  color: #eef6ff !important;
}
main #lad-problem > p,
main #lad-problem .lp-card > div:nth-child(3) {
  color: #c9d7ea !important;
}
main #lad-problem .lp-card a {
  color: #5dd8f0 !important;
}

/* Restore the service-card grid on dark previews. The source content is emitted
   as sibling wrappers, so the dark template needs the grid at this boundary. */
main > .wrapper:has(> .news-item) {
  display: inline-flex !important;
  vertical-align: top !important;
  width: 380px !important;
  max-width: 380px !important;
  margin: 15px 0 !important;
  padding: 15px !important;
  box-sizing: border-box !important;
}
main > .wrapper:has(> .news-item) .news-item {
  width: 350px !important;
  max-width: 350px !important;
  margin: 0 !important;
}
main > .wrapper:has(> .news-item) .news-item__image,
main > .wrapper:has(> .news-item) .news-item__image img {
  width: 350px !important;
  max-width: 350px !important;
}
@media (max-width: 767px) {
  main > .wrapper:has(> .news-item) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 15px 20px !important;
  }
  main > .wrapper:has(> .news-item) .news-item,
  main > .wrapper:has(> .news-item) .news-item__image,
  main > .wrapper:has(> .news-item) .news-item__image img {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Article sheets inherit the alternating card color from the light template.
   On dark pages this creates large empty bars around the article heading and
   content. Keep the page sheet transparent so the article sits on the single
   dark page background; nested content cards keep their own surfaces. */
main .container.sheet.p--alternation-background {
  background: transparent !important;
}

/* Match the light mobile template: the fixed menu spans the viewport and has
   straight edges. */
@media (max-width: 767px) {
  nav.p--fixed > .module.container.columns-1 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-radius: 0 !important;
  }
  nav.p--fixed > .module.container.columns-1 > .wrapper,
  nav.p--fixed .umenu.top-menu {
    border-radius: 0 !important;
  }
}

/* Final mobile geometry override: same square, full-width bar as the light
   template. This intentionally comes after the legacy capsule rules above. */
@media (max-width: 767px) {
  nav.p--fixed > .module.container.columns-1 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }
  nav.p--fixed > .module.container.columns-1 > .wrapper,
  nav.p--fixed .umenu.top-menu {
    border-radius: 0 !important;
  }
}

/* Keep the mobile menu capsule inside the header instead of exposing square
   side ears from the full-width module. */
@media (max-width: 767px) {
  nav.p--fixed {
    width: 100% !important;
    overflow: visible !important;
  }
  nav.p--fixed > .module.container.columns-1 {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
    margin: 0 10px !important;
    border-radius: 30px !important;
    overflow: hidden !important;
  }
  nav.p--fixed > .module.container.columns-1 > .wrapper,
  nav.p--fixed .umenu.top-menu {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: inherit !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }
}

/* Match the light mobile template: full-width menu with straight edges. */
@media (max-width: 767px) {
  nav.p--fixed > .module.container.columns-1 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }
  nav.p--fixed > .module.container.columns-1 > .wrapper,
  nav.p--fixed .umenu.top-menu {
    border-radius: 0 !important;
  }
}


/* Header theme lever. It stays in the header corner instead of floating over content. */
.codex-theme-toggle {
  position: absolute;
  top: 18px;
  right: 22px;
  z-index: 100000;
  display: inline-flex;
  align-items: center;
  gap: 0;\n  padding: 4px 5px;
  border: 1px solid rgba(180,214,255,.32);
  border-radius: 999px;
  background: rgba(15,25,41,.82);
  color: #eaf4ff !important;
  font-size: 12px;
  line-height: 1;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(0,0,0,.18);
}
.codex-theme-toggle__track {
  position: relative;
  width: 32px;
  height: 18px;
  border-radius: 999px;
  background: #0cb4d5;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.22);
}
.codex-theme-toggle__thumb {
  position: absolute;
  top: 2px;
  left: 16px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,.35);
}
.codex-theme-toggle:hover,
.codex-theme-toggle:focus-visible { border-color: #0cb4d5; }
@media (max-width: 767px) {
  .codex-theme-toggle {
    top: 12px;
    right: 8px;
    padding: 3px 4px;
    font-size: 10px;
  }
}

/* Dark surface for every FAQ question and expanded answer, including pages
   where the answer has its own light-template inline background. */
.faq-container,
.faq-container__answer,
.faq-container__answer-text {
  background: var(--lad-dark-card) !important;
  color: #c9d7ea !important;
  border-color: var(--lad-dark-line) !important;
}
.faq-container__question-text,
.faq-container__question-text p {
  color: var(--lad-dark-text) !important;
}
.faq-container {
  background: transparent !important;
}
/* Keep service/news cards in a centered, bounded grid on wide screens. */
.codex-news-grid {
  width: min(1140px, calc(100% - 30px));
  max-width: 1140px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
}
.codex-news-grid > .wrapper,
.codex-news-grid > .wrapper:has(> .news-item) {
  display: block !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 15px !important;
  box-sizing: border-box !important;
}
.codex-news-grid .news-item,
.codex-news-grid .news-item__image,
.codex-news-grid .news-item__image img {
  width: 100% !important;
  max-width: 100% !important;
}
@media (max-width: 767px) {
  .codex-news-grid {
    width: 100%;
    display: block;
  }
  .codex-news-grid > .wrapper,
  .codex-news-grid > .wrapper:has(> .news-item) {
    padding: 15px 20px !important;
  }
}

/* Dark treatment for the standard estimate block. */
.lad-standard-block__card,
.lad-standard-block__estimate {
  background: var(--lad-dark-card) !important;
  border-color: var(--lad-dark-line) !important;
}
.lad-standard-block__title,
.lad-standard-block__card h3,
.lad-standard-block__estimate h3,
.lad-standard-block__estimate-row,
.lad-standard-block__estimate-total,
.lad-standard-block__fixed,
.lad-standard-block__bottom-text,
.lad-standard-block__bottom-text p {
  color: var(--lad-dark-text) !important;
}
.lad-standard-block__subtitle,
.lad-standard-block__card p,
.lad-standard-block__estimate-row span,
.lad-standard-block__estimate-row strong {
  color: #c9d7ea !important;
}
.lad-standard-block__estimate-row {
  border-color: var(--lad-dark-line) !important;
}
.lad-standard-block__estimate-total,
.lad-standard-block__bottom {
  background: rgba(12,180,213,.12) !important;
  border-color: var(--lad-dark-line) !important;
}
.lad-standard-block__fixed {
  background: rgba(12,180,213,.12) !important;
  border-color: var(--lad-dark-line) !important;
  color: var(--lad-dark-text) !important;
}

/* Price tables must stay inside the content column on every wide viewport. */
main table {
  width: 100% !important;
  max-width: 1110px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

/* Question rows stay transparent; only the expanded answer carries a card surface. */
.faq-container { background: transparent !important; }
/* Closed FAQ rows should not become full-width bars. */
body main .faq-container { background: transparent !important; }
/* FAQ uses one continuous page surface in both closed and expanded states. */
body main .faq-container,
body main .faq-container__answer,
body main .faq-container__answer-text {
  background: transparent !important;
  border-color: transparent !important;
}

/* Keep the works gallery centered on every breakpoint. The gallery plugin
   injects this list inside a section container, so the old page-root rule
   left it at its intrinsic width on narrow screens. */
main ul.sigFreeContainer.sigFreeClassic {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  width: 1140px !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 auto !important;
  padding: 0 !important;
  gap: 24px 30px !important;
  float: none !important;
}

main ul.sigFreeContainer.sigFreeClassic > li.sigFreeThumb {
  display: block !important;
  float: none !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

main ul.sigFreeContainer.sigFreeClassic > li.sigFreeThumb > a,
main ul.sigFreeContainer.sigFreeClassic > li.sigFreeThumb > a > span,
main ul.sigFreeContainer.sigFreeClassic > li.sigFreeThumb > a > span > span {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

main ul.sigFreeContainer.sigFreeClassic > li.sigFreeThumb img,
main ul.sigFreeContainer.sigFreeClassic > li.sigFreeThumb a[style],
main ul.sigFreeContainer.sigFreeClassic > li.sigFreeThumb span[style] {
  width: 100% !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center center !important;
}

main ul.sigFreeContainer.sigFreeClassic > li.sigFreeClear {
  display: none !important;
}

@media (max-width: 767px) {
  main ul.sigFreeContainer.sigFreeClassic {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 14px !important;
  }

  /* The balcony gallery has its own ID rule earlier in the stylesheet. Give
     it the same mobile geometry so it cannot fall back to four tiny columns. */
  main ul#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 14px !important;
  }
  main ul#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb,
  main ul#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb:nth-last-child(-n+2),
  main ul#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb:nth-of-type(9),
  main ul#sigFreeIde7f195db5f.sigFreeContainer.sigFreeClassic > li.sigFreeThumb:nth-of-type(10) {
    grid-column: auto !important;
    aspect-ratio: 1 / 1 !important;
  }
}
