* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    color: #1b1b1b;
    background: #ffffff;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.58;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
body.is-locked { overflow: hidden; }
img { max-width: 100%; height: auto; vertical-align: middle; }
a { color: #32792e; text-decoration: none; transition: color .2s ease, opacity .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease; }
a:hover { color: #245e21; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
svg { pointer-events: none; }
.container { width: min(100% - 40px, 1220px); margin-left: auto; margin-right: auto; }
.container--wide { width: min(100% - 40px, 1380px); margin-left: auto; margin-right: auto; }
.row { display: flex; flex-wrap: wrap; margin-left: -10px; margin-right: -10px; }
.row > [class*="col-"] { padding-left: 10px; padding-right: 10px; width: 100%; }
.col-lg-12 { width: 100%; }
.col-lg-7 { width: 58.333%; }
.col-lg-5 { width: 41.667%; }
.col-lg-4 { width: 33.333%; }
.col-lg-8 { width: 66.667%; }
.col-md-6 { width: 50%; }
.pl-0 { padding-left: 0 !important; }
.mt-5 { margin-top: 40px !important; }

h1, h2, h3, h4, h5, h6 { margin: 0 0 18px; color: #181818; font-weight: 750; line-height: 1.16; letter-spacing: -.025em; }
h1 { font-size: clamp(34px, 4vw, 52px); }
h2 { font-size: clamp(28px, 3vw, 40px); }
h3 { font-size: clamp(20px, 2vw, 26px); }
h4 { font-size: 20px; }
p { margin: 0 0 18px; }
ul, ol { margin-top: 0; }
::selection { background: rgba(61,138,54,.18); }

.dcs-icon { display: inline-block; flex: 0 0 auto; }
.dcs-button {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 11px 20px;
    border: 1px solid transparent;
    border-radius: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, border-color .2s ease, color .2s ease;
}
.dcs-button:hover { transform: translateY(-1px); }
.dcs-button--primary { background: #3d8a36; color: #fff; box-shadow: 0 10px 22px rgba(61,138,54,.18); }
.dcs-button--primary:hover { color: #fff; background: #31752b; box-shadow: 0 12px 28px rgba(61,138,54,.24); }
.dcs-button--dark { color: #fff; background: #1b1b1b; }
.dcs-button--dark:hover { color: #fff; background: #000; }
.dcs-button--outline { color: #245e21; border-color: rgba(61,138,54,.34); background: #fff; }
.dcs-button--outline:hover { border-color: #3d8a36; background: #f5faf4; color: #245e21; }
.dcs-button--white { background: #fff; color: #1b1b1b; }
.dcs-button--white:hover { color: #1b1b1b; box-shadow: 0 12px 30px rgba(0,0,0,.15); }
.dcs-button--small { min-height: 40px; padding: 8px 14px; border-radius: 8px; font-size: 14px; }

/* Header */
.site-header { position: relative; z-index: 800; background: rgba(255,255,255,.98); border-bottom: 1px solid #edf0ed; }
.site-header__top { border-bottom: 1px solid #edf0ed;padding-top: 30px;}
.site-header__top-inner { min-height: 86px; display: grid; grid-template-columns: minmax(220px, 1fr) auto auto; align-items: center; gap: 28px; }
.site-brand { display: flex; align-items: center; gap: 20px; min-width: 0; }
.site-brand__logo { display: block; flex: 0 0 auto; }
.site-brand__logo img { width: 215px; max-height: 62px; object-fit: contain; object-position: left center; }
.site-brand__tagline { max-width: 165px; color: #646b64; font-size: 13px; line-height: 1.28; }
.header-quick { display: flex; align-items: center; gap: 10px; }
.header-quick__item { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid #e1e7e1; border-radius: 10px; color: #3d8a36; background: #fff; }
.header-quick__item:hover { color: #fff; background: #3d8a36; border-color: #3d8a36; }

.header-quick__item .max_icon,.footer-socials a .max_icon,.mobile-contact-bar .max_icon{
    background: url(/wp-content/uploads/2026/09/max-icon-green.webp) no-repeat;
    display: block;
    width: 18px;
    height: 18px;
    background-size: contain;
}

.header-quick__item:hover .max_icon,.footer-socials a:hover .max_icon{
background: url(/wp-content/uploads/2026/09/max-icon.webp) no-repeat;a
    display: block;
    width: 18px;
    height: 18px;
    background-size: contain;
}


.header-contact { display: flex; align-items: center; gap: 18px; }
.header-contact__text { display: flex; flex-direction: column; gap: 2px; }
.header-contact__phone { color: #1b1b1b; font-size: 17px; font-weight: 800; white-space: nowrap; }
.header-contact__phone:hover { color: #3d8a36; }
.header-contact__email { color: #626862; font-size: 13px; }
.header-callback { white-space: nowrap; }
.site-header__nav { background: #fff; }
.site-header__nav-inner { min-height: 61px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.primary-nav { min-width: 0; flex: 1; }
.primary-nav .menu { display: flex; align-items: stretch; gap: 4px; margin: 0; padding: 0; list-style: none;justify-content: space-between;}
.primary-nav .menu > li { position: relative; display: flex; align-items: stretch;}
.primary-nav .menu-item-row { display: flex; align-items: stretch; min-width: 0; }
.primary-nav .menu > li > .menu-item-row { min-height: 60px; }
.primary-nav .menu-link { min-width: 0; border: 0; margin: 0; font: inherit; text-align: left; background: transparent; color: #303430; }
.primary-nav .menu > li > .menu-item-row > .menu-link { min-height: 60px; display: flex; align-items: center; padding: 0 11px; color: #222; font-size: 14px; font-weight: 700; border-bottom: 2px solid transparent; }
.primary-nav .menu > li.current-menu-item > .menu-item-row > .menu-link,
.primary-nav .menu > li.current-menu-ancestor > .menu-item-row > .menu-link,
.primary-nav .menu > li.is-submenu-open > .menu-item-row > .menu-link { color: #32792e; border-bottom-color: #3d8a36; }
.primary-nav .menu-parent-trigger { cursor: pointer; }
.primary-nav .menu-parent-trigger .menu-link__text { min-width: 0; }
.primary-nav .menu-submenu-toggle { width: 34px; min-width: 34px; display: grid; place-items: center; align-self: center; padding: 0; margin-left: -5px; border: 0; border-radius: 7px; background: transparent; color: #565d56; }
.primary-nav .menu-submenu-toggle:hover { color: #2f762a; background: #f1f6f0; }
.primary-nav .menu-chevron { width: 7px; height: 7px; display: inline-block; flex: 0 0 auto; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .18s ease; }
.primary-nav .menu-parent-trigger .menu-chevron { margin-left: 9px; }
.primary-nav .is-submenu-open > .menu-item-row .menu-chevron { transform: rotate(225deg) translate(-1px,-1px); }
.primary-nav .sub-menu { position: absolute; z-index: 30; left: 0; top: calc(100% - 1px); width: 280px; margin: 0; padding: 12px; list-style: none; background: #fff; border: 1px solid #e7ebe7; border-radius: 0 0 12px 12px; box-shadow: 0 20px 46px rgba(20,35,20,.12); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(8px); transition: opacity .18s ease, visibility .18s ease, transform .18s ease; }
.primary-nav li.is-submenu-open > .sub-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.primary-nav .sub-menu li { position: relative; }
.primary-nav .sub-menu .menu-item-row { min-height: 40px; align-items: center; border-radius: 8px; }
.primary-nav .sub-menu .menu-item-row:hover { background: #f3f8f2; }
.primary-nav .sub-menu .menu-link { min-height: 40px; flex: 1; display: flex; align-items: center; padding: 7px 9px; border-radius: 8px; color: #303430; font-size: 13px; font-weight: 600; }
.primary-nav .sub-menu .menu-link:hover { color: #2f762a; }
.primary-nav .sub-menu .menu-submenu-toggle { margin: 0 5px 0 0; }
.primary-nav .sub-menu .sub-menu { left: calc(100% + 8px); top: -12px; border-radius: 12px; }
.primary-nav .menu > .menu-item-mega { position: static; }
.primary-nav .menu > .menu-item-mega > .sub-menu { left: 20px; right: 20px; width: auto; max-height: calc(100vh - 155px); overflow-y: auto; display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); align-items: start; gap: 8px 14px; padding: 20px; border-radius: 0 0 14px 14px; }
.primary-nav .menu > .menu-item-mega > .sub-menu > li { min-width: 0; }
.primary-nav .menu > .menu-item-mega > .sub-menu > li > .menu-item-row .menu-link { min-height: 44px; font-weight: 750; }
.primary-nav .menu > .menu-item-mega > .sub-menu .sub-menu { position: static; grid-column: 1 / -1; width: auto; margin: 0; opacity: 1; visibility: visible; pointer-events: auto; transform: none; border: 0; box-shadow: none; padding: 0 0 8px 8px; display: none; background: transparent; }
.primary-nav .menu > .menu-item-mega > .sub-menu li.is-submenu-open > .sub-menu { display: block; }
.primary-nav .menu > .menu-item-mega > .sub-menu .sub-menu .menu-item-row { min-height: 34px; }
.primary-nav .menu > .menu-item-mega > .sub-menu .sub-menu .menu-link { min-height: 34px; padding-top: 5px; padding-bottom: 5px; color: #606660; font-weight: 500; }
.header-actions { display: flex; align-items: center; flex: 0 0 auto; }
.header-menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid #dde4dd; border-radius: 10px; background: #fff; color: #1b1b1b; }

/* Hero */
.home-hero { position: relative; overflow: hidden; background: #f4f8f4; border-bottom: 1px solid #e8eee8; }
.home-hero::before { content: ""; position: absolute; width: 620px; height: 620px; right: -120px; top: -250px; border-radius: 50%; background: radial-gradient(circle, rgba(61,138,54,.13), rgba(61,138,54,0) 68%); }
.home-hero::after { content: ""; position: absolute; left: 0; bottom: 0; width: 46%; height: 1px; background: #3d8a36; opacity: .45; }
.home-hero__grid { min-height: 540px; display: grid; grid-template-columns: minmax(0,1.05fr) minmax(380px,.95fr); align-items: center; gap: 46px; padding-top: 64px; padding-bottom: 64px; position: relative; z-index: 1; }
.home-hero__eyebrow, .section-heading__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; color: #337b2e; font-size: 13px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.home-hero__eyebrow::before, .section-heading__eyebrow::before { content: ""; width: 24px; height: 2px; border-radius: 2px; background: #3d8a36; }
.home-hero h1 { max-width: 790px; margin-bottom: 22px; font-size: clamp(36px, 4vw, 52px); }
.home-hero__text { max-width: 700px; color: #5d645d; font-size: 17px; line-height: 1.62; }
.home-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.home-hero__trust { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-top: 34px; max-width: 680px; }
.hero-trust { padding: 14px 14px 13px; background: rgba(255,255,255,.75); border: 1px solid rgba(61,138,54,.13); border-radius: 10px; backdrop-filter: blur(4px); }
.hero-trust strong { display: block; margin-bottom: 2px; color: #1b1b1b; font-size: 15px; }
.hero-trust span { display: block; color: #6a716a; font-size: 12px; line-height: 1.35; }
.home-hero__visual { position: relative; min-height: 420px; display: flex; align-items: center; justify-content: center; }
.home-hero__visual::before { content: ""; position: absolute; width: 365px; height: 365px; border: 1px solid rgba(61,138,54,.18); border-radius: 50%; }
.home-hero__visual::after { content: ""; position: absolute; width: 275px; height: 275px; border: 1px dashed rgba(61,138,54,.2); border-radius: 50%; }
.home-hero__image { position: relative; z-index: 2; width: min(100%, 520px); max-height: 390px; object-fit: contain; filter: drop-shadow(0 24px 24px rgba(0,0,0,.12)); }
.home-hero__badge { position: absolute; z-index: 3; left: 4px; bottom: 48px; display: flex; align-items: center; gap: 10px; max-width: 230px; padding: 12px 14px; background: #fff; border: 1px solid #e3e9e3; border-radius: 10px; box-shadow: 0 14px 32px rgba(35,60,35,.12); font-size: 13px; line-height: 1.35; }
.home-hero__badge .dcs-icon { color: #3d8a36; }

/* General sections */
.home-section { padding: 84px 0; }
.home-section--soft { background: #f6f8f6; }
.home-section--dark { background: #202220; color: #fff; }
.section-heading { max-width: 760px; margin-bottom: 38px; }
.section-heading h2 { margin-bottom: 12px; }
.section-heading p { max-width: 680px; color: #687068; margin-bottom: 0; }
.section-heading--light h2 { color: #fff; }
.section-heading--light p { color: #c7cec7; }

/* Quiz */
.quiz-section { position: relative; z-index: 4; margin-top: -1px; padding: 54px 0 78px; background: #fff; }
.quiz-card { display: grid; grid-template-columns: 320px minmax(0,1fr); overflow: hidden; border: 1px solid #e5eae5; border-radius: 16px; background: #fff; box-shadow: 0 22px 55px rgba(31,48,31,.09); }
.quiz-card__aside { padding: 34px; color: #fff; background: #202320; }
.quiz-card__aside h2 { color: #fff; font-size: 30px; margin-bottom: 14px; }
.quiz-card__aside p { color: #cbd2cb; font-size: 14px; }
.quiz-card__aside-list { display: grid; gap: 12px; margin-top: 28px; }
.quiz-card__aside-item { display: flex; gap: 10px; align-items: flex-start; color: #eaf0ea; font-size: 13px; }
.quiz-card__aside-item .dcs-icon { color: #6fc267; margin-top: 1px; }
.quiz-card__main { padding: 34px 38px 32px; min-width: 0; }
.quiz-progress { display: flex; align-items: center; gap: 14px; margin-bottom: 26px; }
.quiz-progress__bar { flex: 1; height: 5px; overflow: hidden; background: #edf1ed; border-radius: 999px; }
.quiz-progress__bar span { display: block; height: 100%; width: 20%; background: #3d8a36; border-radius: inherit; transition: width .25s ease; }
.quiz-progress__text { color: #6a716a; font-size: 12px; white-space: nowrap; }
.quiz-step { display: none; }
.quiz-step.is-active { display: block; animation: dcsFade .22s ease; }
@keyframes dcsFade { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.quiz-step h3 { margin-bottom: 10px; font-size: 25px; }
.quiz-step__help { color: #697069; font-size: 14px; margin-bottom: 22px; }
.quiz-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }
.quiz-option { position: relative; display: flex; align-items: center; gap: 13px; min-height: 66px; padding: 13px 15px; border: 1px solid #dfe6df; border-radius: 10px; background: #fff; color: #252825; font-weight: 650; cursor: pointer; transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease; }
.quiz-option:hover { border-color: #9fc49b; background: #f8fbf8; }
.quiz-option input { position: absolute; opacity: 0; pointer-events: none; }
.quiz-option__icon { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 9px; background: #f0f6ef; color: #3d8a36; }
.quiz-option.is-selected { border-color: #3d8a36; background: #f4faf3; box-shadow: 0 0 0 2px rgba(61,138,54,.07); }
.quiz-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 26px; }
.quiz-back { border: 0; background: transparent; color: #697069; font-weight: 650; padding: 10px 0; }
.quiz-back:hover { color: #1b1b1b; }
.quiz-result { display: none; }
.quiz-result.is-active { display: block; }
.quiz-result__summary { padding: 15px 17px; margin: 16px 0 20px; border: 1px solid #dfe8de; border-radius: 10px; background: #f7faf7; color: #4f574f; font-size: 13px; white-space: pre-line; }

/* Avito */
.avito-card { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(300px,.9fr); align-items: center; gap: 50px; padding: 44px 48px; border: 1px solid #e5eae5; border-radius: 16px; background: linear-gradient(105deg,#fff 0%,#fff 58%,#f1f7f0 100%); overflow: hidden; }
.avito-card__brand { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 18px; color: #3d8a36; font-weight: 800; font-size: 13px; text-transform: uppercase; letter-spacing: .08em; }
.avito-card__brand::before { content: "A"; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: #fff; background: #3d8a36; font-size: 14px; }
.avito-card h2 { max-width: 650px; }
.avito-card p { color: #626962; max-width: 680px; }
.avito-card__visual { position: relative; min-height: 245px; display: flex; align-items: center; justify-content: center; }
.avito-review-card { width: min(100%, 330px); padding: 24px; border-radius: 14px; background: #fff; border: 1px solid #e1e7e1; box-shadow: 0 18px 42px rgba(28,50,28,.1); transform: rotate(1.4deg); }
.avito-review-card__stars { display: flex; gap: 3px; color: #e8a318; margin-bottom: 12px; }
.avito-review-card strong { display: block; font-size: 19px; margin-bottom: 6px; }
.avito-review-card p { margin: 0; font-size: 13px; line-height: 1.5; }

/* Advantages */
.advantages-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.advantage-card { position: relative; min-height: 220px; padding: 25px 23px; border: 1px solid #e4e9e4; border-radius: 13px; background: #fff; overflow: hidden; }
.advantage-card::after { content: ""; position: absolute; width: 110px; height: 110px; right: -62px; bottom: -62px; border-radius: 50%; background: rgba(61,138,54,.07); }
.advantage-card__icon { width: 46px; height: 46px; display: grid; place-items: center; margin-bottom: 23px; border-radius: 10px; color: #3d8a36; background: #eff6ee; }
.advantage-card h3 { margin-bottom: 9px; font-size: 20px; }
.advantage-card p { color: #687068; font-size: 14px; line-height: 1.55; margin: 0; }

/* Equipment / service catalog */
.equipment-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 14px; }
.equipment-card { position: relative; min-height: 290px; grid-column: span 4; display: flex; flex-direction: column; justify-content: flex-end; padding: 24px; overflow: hidden; border: 1px solid #e3e8e3; border-radius: 14px; background: #f6f8f6; color: #1b1b1b; }
.equipment-card:nth-child(1), .equipment-card:nth-child(2) { grid-column: span 6; min-height: 330px; }
.equipment-card:hover { color: #1b1b1b; border-color: #bdd2ba; transform: translateY(-2px); box-shadow: 0 16px 30px rgba(31,48,31,.08); }
.equipment-card__image { position: absolute; right: 0; top: 0; width: 58%; height: 67%; object-fit: contain; object-position: right top; opacity: .92; transition: transform .3s ease; }
.equipment-card:hover .equipment-card__image { transform: scale(1.025); }
.equipment-card::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(246,248,246,0) 30%,rgba(246,248,246,.84) 66%,#f6f8f6 82%); z-index: 1; }
.equipment-card__content { position: relative; z-index: 2; max-width: 90%; }
.equipment-card h3 { margin-bottom: 7px; font-size: 21px; }
.equipment-card p { margin: 0 0 14px; color: #626962; font-size: 13px; line-height: 1.48; }
.equipment-card__link { display: inline-flex; align-items: center; gap: 7px; color: #347c2f; font-size: 13px; font-weight: 800; }
.catalog-toolbar { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; margin-bottom: 28px; }
.catalog-toolbar .section-heading { margin-bottom: 0; }

/* Unified slider */
.dcs-slider { position: relative; min-width: 0; }
.dcs-slider__viewport { overflow: hidden; }
.dcs-slider__track { display: flex; gap: 16px; will-change: transform; transition: transform .36s cubic-bezier(.2,.75,.25,1); touch-action: pan-y; }
.dcs-slider__slide { flex: 0 0 calc((100% - 32px) / 3); min-width: 0; }
.dcs-slider__controls { display: flex; align-items: center; gap: 8px; }
.dcs-slider__button { width: 43px; height: 43px; display: grid; place-items: center; border: 1px solid #dce4dc; border-radius: 10px; color: #2f762a; background: #fff; }
.dcs-slider__button:hover:not(:disabled) { color: #fff; background: #3d8a36; border-color: #3d8a36; }
.dcs-slider__button:disabled { opacity: .35; cursor: default; }
.dcs-slider__button--prev .dcs-icon { transform: rotate(180deg); }
.dcs-slider__dots { display: flex; align-items: center; gap: 7px; margin-top: 20px; }
.dcs-slider__dot { width: 7px; height: 7px; border: 0; padding: 0; border-radius: 50%; background: #cfd6cf; }
.dcs-slider__dot.is-active { width: 22px; border-radius: 99px; background: #3d8a36; }

/* Work cases */
.cases-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 30px; }
.cases-head .section-heading { margin-bottom: 0; }
.case-card { height: 100%; display: flex; flex-direction: column; overflow: hidden; border: 1px solid #e2e7e2; border-radius: 13px; background: #fff; }
.case-card__image { display: block; aspect-ratio: 16/10; overflow: hidden; background: #edf1ed; }
.case-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.case-card:hover .case-card__image img { transform: scale(1.035); }
.case-card__body { display: flex; flex: 1; flex-direction: column; padding: 20px; }
.case-card__meta { color: #798079; font-size: 12px; margin-bottom: 10px; }
.case-card h3 { margin-bottom: 14px; font-size: 19px; line-height: 1.32; }
.case-card h3 a { color: #1b1b1b; }
.case-card h3 a:hover { color: #32792e; }
.case-card__more { margin-top: auto; display: inline-flex; align-items: center; gap: 7px; color: #347c2f; font-size: 13px; font-weight: 800; }
.case-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; }
.case-filter { padding: 8px 13px; border: 1px solid #dfe5df; border-radius: 8px; color: #535a53; background: #fff; font-size: 13px; font-weight: 650; }
.case-filter:hover, .case-filter.is-active { color: #fff; border-color: #3d8a36; background: #3d8a36; }
.case-filters--menu { margin: 0 0 30px; padding: 0; list-style: none; }
.case-filters--menu li { margin: 0; }
.case-filters--menu a { display: block; padding: 8px 13px; border: 1px solid #dfe5df; border-radius: 8px; color: #535a53; background: #fff; font-size: 13px; font-weight: 650; }
.case-filters--menu a:hover, .case-filters--menu .current-menu-item > a { color: #fff; border-color: #3d8a36; background: #3d8a36; }

/* About */
.about-grid { display: grid; grid-template-columns: minmax(360px,.85fr) minmax(0,1.15fr); gap: 58px; align-items: center; }
.about-media { position: relative; }
.about-media__frame { overflow: hidden; border-radius: 15px; background: #eef1ee; }
.about-media__frame img { display: block; width: 100%; aspect-ratio: 4/4.3; object-fit: cover; }
.about-media__stat { position: absolute; right: -18px; bottom: 28px; width: 180px; padding: 16px; border-radius: 11px; background: #3d8a36; color: #fff; box-shadow: 0 16px 32px rgba(61,138,54,.22); }
.about-media__stat strong { display: block; font-size: 28px; line-height: 1; margin-bottom: 6px; }
.about-media__stat span { font-size: 12px; line-height: 1.35; opacity: .9; }
.about-content .section-heading { margin-bottom: 24px; }
.about-content__text { color: #555d55; }
.about-points { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; margin: 25px 0 29px; }
.about-point { display: flex; align-items: flex-start; gap: 10px; padding: 13px 14px; border: 1px solid #e5eae5; border-radius: 9px; background: #fff; color: #3f453f; font-size: 13px; }
.about-point .dcs-icon { color: #3d8a36; margin-top: 1px; }

/* SEO expandable text / content */
.seo-section { padding: 78px 0; border-top: 1px solid #edf0ed; }
.seo-shell { display: grid; grid-template-columns: 260px minmax(0,1fr); gap: 44px; align-items: start; }
.seo-shell__label { position: sticky; top: 90px; }
.seo-shell__label h2 { font-size: 27px; }
.seo-content { position: relative; max-width: 900px; color: #555d55; }
.seo-content h2 { margin-top: 34px; font-size: 27px; }
.seo-content h3 { margin-top: 28px; font-size: 21px; }
.seo-content a { text-decoration: underline; text-decoration-color: rgba(61,138,54,.28); text-underline-offset: 3px; }
.seo-content ul, .seo-content ol { padding-left: 22px; }
.seo-content[data-collapsible] { max-height: 320px; overflow: hidden; }
.seo-content[data-collapsible]::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 120px; pointer-events: none; background: linear-gradient(rgba(255,255,255,0),#fff 78%); }
.seo-content.is-expanded { max-height: none; }
.seo-content.is-expanded::after { display: none; }
.seo-toggle { margin-top: 22px; }

/* CTA */
.cta-section { padding: 78px 0; background: #f4f7f4; }
.cta-card { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 410px; gap: 48px; overflow: hidden; padding: 48px; border-radius: 17px; color: #fff; background: #202320; }
.cta-card::after { content: ""; position: absolute; width: 420px; height: 420px; left: -160px; bottom: -320px; border: 70px solid rgba(61,138,54,.18); border-radius: 50%; }
.cta-card__content { position: relative; z-index: 1; }
.cta-card__content h2 { color: #fff; max-width: 660px; }
.cta-card__content > p { color: #cad0ca; max-width: 650px; }
.cta-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 20px; margin-top: 28px; }
.cta-list__item { display: flex; align-items: center; gap: 9px; color: #e7ebe7; font-size: 13px; }
.cta-list__item .dcs-icon { color: #72c36a; }
.cta-card__form { position: relative; z-index: 1; padding: 25px; border-radius: 13px; background: #fff; color: #1b1b1b; }

/* Forms */
.dcs-form__title { margin-bottom: 7px; font-size: 22px; }
.dcs-form__subtitle { margin-bottom: 20px; color: #6a716a; font-size: 13px; }
.dcs-form__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.dcs-field { display: block; margin-bottom: 12px; }
.dcs-field > span { display: block; margin-bottom: 6px; color: #525952; font-size: 12px; font-weight: 700; }
.dcs-field > span b { color: #3d8a36; }
.dcs-field input, .dcs-field textarea, .dcs-field select,
.calc-form input, .calculator-container input, .calculator-container select { width: 100%; min-height: 47px; padding: 11px 13px; border: 1px solid #dfe5df; border-radius: 9px; outline: 0; color: #1b1b1b; background: #fff; transition: border-color .2s ease, box-shadow .2s ease; }
.dcs-field textarea { min-height: 90px; resize: vertical; }
.dcs-field input:focus, .dcs-field textarea:focus, .dcs-field select:focus,
.calc-form input:focus, .calculator-container input:focus, .calculator-container select:focus { border-color: #7faf7a; box-shadow: 0 0 0 3px rgba(61,138,54,.08); }
.dcs-field input.is-error, .dcs-policy.is-error { border-color: #b93c3c; }
.dcs-policy { display: flex; gap: 9px; align-items: flex-start; margin: 4px 0 15px; color: #747b74; font-size: 11px; line-height: 1.45; }
.dcs-policy input { width: 16px; height: 16px; flex: 0 0 auto; margin: 1px 0 0; accent-color: #3d8a36; }
.dcs-policy a { text-decoration: underline; }
.dcs-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.dcs-form__submit { width: 100%; }
.dcs-form__status { min-height: 0; margin-top: 10px; font-size: 12px; font-weight: 650; }
.dcs-form__status.is-success { color: #2f762a; }
.dcs-form__status.is-error { color: #a72f2f; }
.dcs-form.is-loading .dcs-form__submit { opacity: .7; pointer-events: none; }
.dcs-form--compact .dcs-form__grid { grid-template-columns: 1fr; }

/* Modal */
.dcs-modal { position: fixed; inset: 0; z-index: 2000; display: none; padding: 24px; align-items: center; justify-content: center; }
.dcs-modal.is-open { display: flex; }
.dcs-modal__backdrop { position: absolute; inset: 0; background: rgba(14,17,14,.72); backdrop-filter: blur(4px); }
.dcs-modal__dialog { position: relative; z-index: 1; width: min(100%, 520px); max-height: calc(100vh - 48px); overflow: auto; padding: 29px; border-radius: 15px; background: #fff; box-shadow: 0 30px 75px rgba(0,0,0,.24); }
.dcs-modal__close { position: absolute; right: 13px; top: 13px; width: 38px; height: 38px; display: grid; place-items: center; border: 0; border-radius: 9px; color: #545a54; background: #f0f3f0; }
.dcs-modal__close:hover { color: #1b1b1b; background: #e7ece7; }

/* Footer */
.site-footer { color: #d5dbd5; background: #1f211f; }
.site-footer__main { padding: 58px 0 46px; }
.site-footer__grid { display: grid; grid-template-columns: 1.15fr .9fr .9fr 1.2fr; gap: 42px; }
.footer-brand img { width: 188px; max-height: 64px; object-fit: contain; object-position: left center; }
.footer-brand p { margin: 18px 0 20px; max-width: 250px; color: #aeb6ae; font-size: 13px; }
.footer-socials { display: flex; gap: 8px; }
.footer-socials a { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid #3d443d; border-radius: 9px; color: #77c76f; }
.footer-socials a:hover { color: #fff; background: #3d8a36; border-color: #3d8a36; }
.footer-title { margin-bottom: 17px; color: #fff; font-size: 15px; font-weight: 800; }
.footer-menu, .footer-contacts { margin: 0; padding: 0; list-style: none; }
.footer-menu li + li, .footer-contacts li + li { margin-top: 10px; }
.footer-menu a { color: #bac2ba; font-size: 13px; }
.footer-menu a:hover { color: #fff; }
.footer-contacts li { display: flex; align-items: flex-start; gap: 10px; color: #bdc5bd; font-size: 13px; }
.footer-contacts .dcs-icon { color: #67b860; margin-top: 1px; }
.footer-contacts a { color: #dce1dc; }
.site-footer__bottom { border-top: 1px solid #343834; }
.site-footer__bottom-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 24px; color: #929a92; font-size: 11px; }
.site-footer__bottom a { color: #bec5be; }
.site-footer__legal { padding-bottom: 24px; color: #838b83; font-size: 10px; line-height: 1.55; }
.site-footer__legal p { margin: 0 0 7px; }

/* Mobile contact bar */
.mobile-contact-bar { display: none; }

/* Chat */
.dcs-chat-launcher { position: fixed; z-index: 1180; right: 22px; bottom: 24px; width: 58px; height: 58px; display: grid; place-items: center; border: 0; border-radius: 50%; color: #fff; background: #3d8a36; box-shadow: 0 12px 30px rgba(30,80,28,.27); }
.dcs-chat-launcher:hover { transform: translateY(-2px); background: #31762c; }
.dcs-chat-launcher__dot { position: absolute; right: 2px; top: 2px; width: 12px; height: 12px; border: 2px solid #fff; border-radius: 50%; background: #7ed576; }
.dcs-chat { position: fixed; z-index: 1185; right: 22px; bottom: 94px; width: min(390px, calc(100vw - 30px)); height: min(590px, calc(100vh - 130px)); display: none; flex-direction: column; overflow: hidden; border: 1px solid #dfe5df; border-radius: 16px; background: #fff; box-shadow: 0 26px 70px rgba(16,28,16,.22); }
.dcs-chat.is-open { display: flex; animation: dcsChatIn .2s ease; }
@keyframes dcsChatIn { from { opacity: 0; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: none; } }
.dcs-chat__header { display: flex; align-items: center; gap: 11px; padding: 14px 15px; color: #fff; background: #202320; }
.dcs-chat__avatar { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 10px; color: #fff; background: #3d8a36; }
.dcs-chat__header-text { min-width: 0; flex: 1; }
.dcs-chat__header-text strong { display: block; font-size: 13px; }
.dcs-chat__header-text span { display: block; color: #bfc7bf; font-size: 10px; }
.dcs-chat__close { width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 8px; color: #d7ddd7; background: rgba(255,255,255,.06); }
.dcs-chat__body { flex: 1; overflow: auto; padding: 15px; background: #f6f8f6; }
.chat-message { max-width: 88%; margin-bottom: 10px; padding: 10px 12px; border-radius: 11px; background: #fff; color: #3d433d; box-shadow: 0 2px 7px rgba(0,0,0,.04); font-size: 12px; line-height: 1.48; }
.chat-message--user { margin-left: auto; color: #fff; background: #3d8a36; }
.chat-choices { display: flex; flex-wrap: wrap; gap: 7px; margin: 10px 0 15px; }
.chat-choice { border: 1px solid #cedace; border-radius: 8px; padding: 7px 9px; color: #2f762a; background: #fff; font-size: 11px; font-weight: 700; }
.chat-choice:hover { background: #edf6ec; }
.dcs-chat__lead { padding: 12px 14px; border-top: 1px solid #e3e8e3; background: #fff; }
.dcs-chat__lead .dcs-field { margin-bottom: 8px; }
.dcs-chat__lead .dcs-field > span { display: none; }
.dcs-chat__lead .dcs-field input { min-height: 41px; font-size: 12px; }
.dcs-chat__lead .dcs-policy { font-size: 9px; margin-bottom: 9px; }
.dcs-chat__lead .dcs-button { min-height: 41px; font-size: 12px; }

/* Inner pages */
.page-hero { padding: 36px 0 42px; background: #f5f8f5; border-bottom: 1px solid #e6ebe6; }
.page-hero__grid { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 34px; }
.page-hero h1 { max-width: 950px; margin: 10px 0 0; font-size: clamp(32px,3.7vw,48px); }
.page-hero__lead { max-width: 760px; margin-top: 15px; color: #606860; font-size: 16px; }
.breadcrumbs { color: #858b85; font-size: 11px; }
.breadcrumbs__inner, .breadcrumbs > div { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.breadcrumbs a { color: #6c746c; }
.breadcrumbs .breadcrumb_last { color: #313631; }
.content-section { padding: 62px 0 80px; }
.content-layout { display: grid; grid-template-columns: minmax(0,1fr) 280px; gap: 42px; align-items: start; }
.entry-content { min-width: 0; color: #4e554e; }
.entry-content > :first-child { margin-top: 0; }
.entry-content h2 { margin-top: 34px; font-size: 29px; }
.entry-content h3 { margin-top: 28px; font-size: 22px; }
.entry-content img { border-radius: 10px; }
.entry-content table { width: 100%; border-collapse: collapse; margin: 24px 0; }
.entry-content th, .entry-content td { padding: 11px 12px; border: 1px solid #e1e6e1; text-align: left; }
.entry-content th { background: #f5f7f5; }
.entry-content blockquote { margin: 28px 0; padding: 18px 22px; border-left: 3px solid #3d8a36; background: #f5f8f5; color: #3f463f; }
.sidebar { display: grid; gap: 14px; position: sticky; top: 24px; }
.sidebar-card, .sidebar-widget { padding: 20px; border: 1px solid #e3e8e3; border-radius: 12px; background: #fff; }
.sidebar-card__icon { width: 42px; height: 42px; display: grid; place-items: center; margin-bottom: 14px; border-radius: 9px; color: #3d8a36; background: #eff5ee; }
.sidebar-card h3, .sidebar-widget__title { font-size: 18px; }
.sidebar-card p { color: #697069; font-size: 13px; }
.sidebar-card .dcs-button { width: 100%; }
.sidebar-catalog-menu { max-height: calc(100vh - 50px); overflow: auto; }
.sidebar-catalog-menu > h3 { margin-bottom: 12px; }
.sidebar-catalog-menu__list, .sidebar-catalog-menu__list ul { margin: 0; padding: 0; list-style: none; }
.sidebar-catalog-menu__list li { position: relative; border-top: 1px solid #edf0ed; }
.sidebar-catalog-menu__list > li:first-child { border-top: 0; }
.sidebar-catalog-menu__list a { display: block; padding: 9px 32px 9px 4px; color: #424942; font-size: 12px; line-height: 1.35; font-weight: 650; }
.sidebar-catalog-menu__list a:hover, .sidebar-catalog-menu__list .current-menu-item > a, .sidebar-catalog-menu__list .current-menu-ancestor > a { color: #2f762a; }
.sidebar-catalog-menu__list .sub-menu { display: none; padding-left: 12px; }
.sidebar-catalog-menu__list li.is-open > .sub-menu, .sidebar-catalog-menu__list .current-menu-ancestor > .sub-menu { display: block; }
.sidebar-menu-toggle { position: absolute; right: 0; top: 5px; width: 28px; height: 28px; border: 0; border-radius: 6px; color: #3d8a36; background: #f0f6ef; font-size: 18px; line-height: 1; }
.sidebar-menu-toggle::before { content: "+"; }
.sidebar-catalog-menu__list li.is-open > .sidebar-menu-toggle::before, .sidebar-catalog-menu__list .current-menu-ancestor > .sidebar-menu-toggle::before { content: "−"; }

/* Archive */
.archive-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.article-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid #e2e7e2; border-radius: 13px; background: #fff; }
.article-card__media { display: block; aspect-ratio: 16/10; overflow: hidden; background: #edf1ed; }
.article-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.article-card:hover .article-card__media img { transform: scale(1.03); }
.article-card__body { padding: 20px; display: flex; flex: 1; flex-direction: column; }
.article-card__meta { color: #7c837c; font-size: 11px; margin-bottom: 10px; }
.article-card h2, .article-card h3 { margin-bottom: 12px; font-size: 20px; line-height: 1.32; }
.article-card h2 a, .article-card h3 a { color: #1b1b1b; }
.article-card__excerpt { color: #626962; font-size: 13px; }
.article-card__more { margin-top: auto; padding-top: 10px; display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 800; }
.dcs-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin-top: 36px; }
.dcs-pagination .page-numbers { min-width: 39px; height: 39px; display: grid; place-items: center; padding: 0 9px; border: 1px solid #dfe5df; border-radius: 8px; color: #4d554d; background: #fff; font-size: 13px; font-weight: 700; }
.dcs-pagination .page-numbers.current, .dcs-pagination .page-numbers:hover { color: #fff; border-color: #3d8a36; background: #3d8a36; }

/* Category landing */
.category-intro { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 42px; align-items: start; margin-bottom: 42px; }
.category-intro__text { color: #5b635b; }
.category-intro__aside { padding: 23px; border-radius: 13px; color: #fff; background: #202320; }
.category-intro__aside h3 { color: #fff; }
.category-intro__aside p { color: #c2cac2; font-size: 13px; }
.category-child-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 28px 0 50px; }
.category-child-card { min-height: 150px; padding: 21px; border: 1px solid #e2e7e2; border-radius: 12px; background: #fff; color: #1b1b1b; }
.category-child-card:hover { color: #1b1b1b; border-color: #b7d1b4; box-shadow: 0 12px 24px rgba(29,45,29,.07); }
.category-child-card h3 { font-size: 19px; }
.category-child-card p { color: #687068; font-size: 12px; }
.solution-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.solution-card { overflow: hidden; border: 1px solid #e1e7e1; border-radius: 13px; background: #fff; }
.solution-card__media { height: 220px; display: flex; align-items: center; justify-content: center; padding: 18px; background: #f5f7f5; }
.solution-card__media img { max-width: 100%; max-height: 100%; object-fit: contain; }
.solution-card__body { padding: 19px; }
.solution-card h3 { font-size: 19px; }
.solution-card__price { color: #3d8a36; font-size: 18px; font-weight: 800; }

/* Products */
.product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.product-card { min-width: 0; overflow: hidden; border: 1px solid #e1e7e1; border-radius: 13px; background: #fff; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.product-card:hover { border-color: #c0d5bd; transform: translateY(-2px); box-shadow: 0 14px 28px rgba(26,42,26,.07); }
.product-card__media { position: relative; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; padding: 18px; overflow: hidden; background: #f8f9f8; }
.product-card__media img { width: 100%; height: 100%; object-fit: contain; }
.product-card__placeholder { color: #9aab98; }
.product-card__badge { position: absolute; z-index: 2; left: 12px; top: 12px; padding: 5px 8px; border-radius: 6px; color: #fff; background: #3d8a36; font-size: 10px; font-weight: 800; }
.product-card__body { padding: 17px; }
.product-card__brand { margin-bottom: 5px; color: #8a908a; font-size: 10px; text-transform: uppercase; letter-spacing: .07em; }
.product-card h3 { min-height: 50px; margin-bottom: 14px; font-size: 17px; line-height: 1.4; }
.product-card h3 a { color: #202320; }
.product-card__footer { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.product-card__price { display: flex; flex-direction: column; }
.product-card__price del { color: #9b9f9b; font-size: 11px; }
.product-card__price strong { font-size: 18px; }
.product-page { padding: 48px 0 72px; }
.product-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.8fr); gap: 54px; align-items: start; }
.product-gallery { min-width: 0; }
.product-gallery__main { position: relative; aspect-ratio: 1.12/1; display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 30px; border: 1px solid #e2e7e2; border-radius: 14px; background: #f8f9f8; }
.product-gallery__main img { width: 100%; height: 100%; object-fit: contain; }
.product-gallery__main a { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 30px; }
.product-gallery__thumbs { display: flex; gap: 9px; margin-top: 10px; overflow-x: auto; padding-bottom: 4px; }
.product-gallery__thumb { flex: 0 0 72px; width: 72px; height: 72px; padding: 5px; border: 1px solid #e0e6e0; border-radius: 8px; background: #fff; }
.product-gallery__thumb.is-active { border-color: #3d8a36; box-shadow: 0 0 0 2px rgba(61,138,54,.08); }
.product-gallery__thumb img { width: 100%; height: 100%; object-fit: contain; }
.product-summary { position: sticky; top: 20px; }
.product-summary__brand { margin-bottom: 8px; color: #6e766e; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
.product-summary h1 { font-size: clamp(30px,3.3vw,44px); }
.product-summary__meta { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-bottom: 22px; color: #737a73; font-size: 12px; }
.product-summary__price { display: flex; align-items: baseline; gap: 12px; margin: 20px 0 22px; }
.product-summary__price strong { font-size: 30px; line-height: 1; }
.product-summary__price del { color: #9ca19c; }
.product-summary__description { color: #596159; }
.product-summary__actions { display: flex; gap: 10px; margin-top: 22px; }
.product-summary__actions .dcs-button { flex: 1; }
.product-details { margin-top: 58px; }

/* Core gallery / local lightbox */
.dcs-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 24px 0; }
.dcs-gallery__item { position: relative; aspect-ratio: 4/3; display: block; overflow: hidden; border-radius: 9px; background: #edf1ed; }
.dcs-gallery__item img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.dcs-gallery__zoom { position: absolute; right: 9px; bottom: 9px; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: #fff; background: rgba(20,24,20,.74); font-size: 20px; line-height: 1; opacity: 0; transition: opacity .2s ease; }
.dcs-gallery__item:hover .dcs-gallery__zoom { opacity: 1; }
.dcs-lightbox { position: fixed; inset: 0; z-index: 4000; display: none; align-items: center; justify-content: center; padding: 30px; background: rgba(8,10,8,.94); }
.dcs-lightbox.is-open { display: flex; }
.dcs-lightbox__media { max-width: min(1400px, calc(100vw - 100px)); max-height: calc(100vh - 100px); object-fit: contain; }
.dcs-lightbox__close, .dcs-lightbox__prev, .dcs-lightbox__next { position: absolute; border: 0; display: grid; place-items: center; color: #fff; background: rgba(255,255,255,.1); border-radius: 9px; }
.dcs-lightbox__close { right: 22px; top: 22px; width: 44px; height: 44px; }
.dcs-lightbox__prev, .dcs-lightbox__next { top: 50%; width: 46px; height: 54px; transform: translateY(-50%); }
.dcs-lightbox__prev { left: 22px; }
.dcs-lightbox__next { right: 22px; }
.dcs-lightbox__caption { position: absolute; left: 50%; bottom: 18px; transform: translateX(-50%); max-width: min(800px, 80vw); color: #e9ece9; font-size: 12px; text-align: center; }

/* Contacts */
.contact-grid { display: grid; grid-template-columns: minmax(0,1fr) 410px; gap: 38px; }
.contact-panel { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.contact-item { padding: 21px; border: 1px solid #e2e7e2; border-radius: 12px; background: #fff; }
.contact-item__icon { width: 40px; height: 40px; display: grid; place-items: center; margin-bottom: 15px; color: #3d8a36; border-radius: 9px; background: #eff6ee; }
.contact-item span { display: block; margin-bottom: 4px; color: #7a817a; font-size: 11px; }
.contact-item strong, .contact-item a { color: #202320; font-size: 15px; font-weight: 750; }
.contact-form-card { padding: 25px; border-radius: 13px; background: #f5f8f5; }
.contact-map { margin-top: 35px; overflow: hidden; border-radius: 13px; min-height: 380px; background: #eef1ee; }
.contact-map iframe { display: block; width: 100%; height: 430px; border: 0; }

/* Company */
.company-intro { display: grid; grid-template-columns: .9fr 1.1fr; gap: 48px; align-items: center; margin-bottom: 62px; }
.company-intro__media { overflow: hidden; border-radius: 14px; background: #eef1ee; }
.company-intro__media img { width: 100%; aspect-ratio: 4/4.1; object-fit: cover; }
.team-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.team-card { overflow: hidden; border: 1px solid #e2e7e2; border-radius: 13px; background: #fff; }
.team-card__photo { aspect-ratio: 4/3; background: #eef1ee; }
.team-card__photo img { width: 100%; height: 100%; object-fit: cover; }
.team-card__body { padding: 19px; }
.team-card__body h3 { margin-bottom: 4px; font-size: 19px; }
.team-card__role { color: #3d8a36; font-size: 12px; font-weight: 700; }
.team-card__text { margin-top: 11px; color: #636a63; font-size: 12px; }

/* Calculator legacy compatibility */
.calculator-container { padding: 24px; border: 1px solid #e1e7e1; border-radius: 14px; background: #fff; box-shadow: 0 10px 30px rgba(31,47,31,.05); }
.calculator-container .table-responsive { width: 100%; overflow-x: auto; }
.calculator-container table { width: 100%; border-collapse: collapse; }
.calculator-container th, .calculator-container td { border-color: #e7ebe7 !important; }
.calculator-container th { color: #2a302a; background: #f2f6f2 !important; }
.calculator-container button, #download-results, .whatsapp_img_new { min-height: 43px; display: inline-flex; align-items: center; justify-content: center; margin: 10px 8px 10px 0; padding: 9px 15px; border: 1px solid #3d8a36; border-radius: 8px; color: #fff; background: #3d8a36; font-weight: 700; }
.calculator-container button:hover, #download-results:hover { background: #31752b; }
.whatsapp_img_new { background: #fff; color: #32792e; }
.calc-form { margin-top: 25px; padding: 22px; border-radius: 12px; background: #f5f8f5; }
.calc-form .form-group { margin-bottom: 12px; }
.calc-form label { display: block; margin-bottom: 6px; color: #535a53; font-size: 12px; font-weight: 700; }
.calc-form .dcs-policy { display: flex; }
.calc-form .dcs-policy input { width: 16px; min-height: 16px; padding: 0; }
.section_top { padding: 30px 0 24px; background: #f5f8f5; }
.section_top h1 { margin: 12px 0 0; }
.section_page { padding: 42px 0 70px; }
.green_dot { display: inline-block; width: 7px; height: 7px; margin-left: 8px; border-radius: 50%; background: #3d8a36; vertical-align: middle; }

/* 404 */
.error-page { min-height: 60vh; display: grid; place-items: center; padding: 70px 0; text-align: center; }
.error-page__code { color: #3d8a36; font-size: clamp(76px,13vw,150px); font-weight: 900; line-height: 1; letter-spacing: -.07em; }
.error-page p { max-width: 560px; margin-left: auto; margin-right: auto; color: #666d66; }

@media (max-width: 1199.98px) {
    .site-header__top-inner { gap: 18px; }
    .site-brand__tagline { display: none; }
    .primary-nav .menu > li > .menu-item-row > .menu-link { padding-left: 8px; padding-right: 8px; font-size: 13px; }
    .header-contact__email { display: none; }
    .advantages-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .equipment-card { grid-column: span 6; }
    .site-footer__grid { grid-template-columns: 1.1fr 1fr 1fr; }
    .site-footer__grid > :last-child { grid-column: span 3; }
    .footer-contacts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 991.98px) {
    body { padding-bottom: 68px; }
    .container, .container--wide { width: min(100% - 30px, 960px); }
    .col-lg-7, .col-lg-5, .col-lg-4, .col-lg-8, .col-md-6 { width: 100%; }
    .site-header__top-inner { min-height: 68px; grid-template-columns: 1fr auto; }
    .site-brand__logo img { width: 150px; max-height: 52px; }
    .header-quick, .header-contact { display: none; }
    .header-callback { display: none; }
    .site-header__nav-inner { min-height: 0; display: block; }
    .header-actions { position: absolute; right: 15px; top: 12px; }
    .header-menu-toggle { display: grid; place-items: center; }
    .primary-nav { position: fixed; z-index: 980; inset: 68px 0 68px; padding: 10px 15px 30px; overflow-y: auto; visibility: hidden; opacity: 0; transform: translateY(-8px); background: #fff; transition: opacity .18s ease, visibility .18s ease, transform .18s ease; }
    .site-header.is-menu-open .primary-nav { visibility: visible; opacity: 1; transform: none; }
    .primary-nav .menu { display: block; }
    .primary-nav .menu > li { display: block; border-bottom: 1px solid #edf0ed; }
    .primary-nav .menu > li > .menu-item-row { min-height: 52px; }
    .primary-nav .menu-item-row { width: 100%; align-items: center; }
    .primary-nav .menu > li > .menu-item-row > .menu-link { min-height: 52px; flex: 1; padding: 0 2px; border: 0; font-size: 15px; }
    .primary-nav .menu-parent-trigger { width: 100%; justify-content: space-between; padding-right: 15px !important; }
    .primary-nav .menu-submenu-toggle { width: 44px; min-width: 44px; height: 44px; margin: 0; border: 1px solid #e5eae5; background: #f7f9f7; }
    .primary-nav .sub-menu,
    .primary-nav .menu > .menu-item-mega > .sub-menu,
    .primary-nav .menu > .menu-item-mega > .sub-menu .sub-menu { position: static; width: auto; display: none; max-height: none; overflow: visible; margin: 0; padding: 0 0 10px 14px; border: 0; border-radius: 0; box-shadow: none; opacity: 1; visibility: visible; pointer-events: auto; transform: none; background: transparent; }
    .primary-nav li.is-submenu-open > .sub-menu,
    .primary-nav .menu > .menu-item-mega.is-submenu-open > .sub-menu,
    .primary-nav .menu > .menu-item-mega > .sub-menu li.is-submenu-open > .sub-menu { display: block; }
    .primary-nav .sub-menu .menu-item-row { min-height: 42px; }
    .primary-nav .sub-menu .menu-link { min-height: 42px; padding: 6px 8px; font-size: 13px; }
    .primary-nav .sub-menu .menu-submenu-toggle { width: 40px; min-width: 40px; height: 38px; margin: 0; }
    .primary-nav .menu > .menu-item-mega > .sub-menu { grid-template-columns: 1fr; }
    .home-hero__grid { min-height: 0; grid-template-columns: 1fr; gap: 24px; padding-top: 42px; padding-bottom: 42px; }
    .home-hero h1 { font-size: clamp(34px,7.2vw,46px); }
    .home-hero__visual { min-height: 300px; }
    .home-hero__image { max-height: 290px; }
    .home-hero__visual::before { width: 270px; height: 270px; }
    .home-hero__visual::after { width: 205px; height: 205px; }
    .home-hero__badge { left: 0; bottom: 18px; }
    .quiz-section { padding-top: 42px; }
    .quiz-card { grid-template-columns: 1fr; }
    .quiz-card__aside { padding: 28px; }
    .quiz-card__aside-list { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .quiz-card__main { padding: 28px; }
    .home-section { padding: 66px 0; }
    .avito-card {gap: 28px; padding: 32px; }
    .avito-card__visual { min-height: 180px; }
    .about-grid { grid-template-columns: 1fr; gap: 36px; }
    .about-media { width: min(100%, 520px); }
    .about-media__frame img { aspect-ratio: 4/3.4; }
    .seo-shell { grid-template-columns: 1fr; gap: 12px; }
    .seo-shell__label { position: static; }
    .cta-card { grid-template-columns: 1fr; padding: 35px; }
    .site-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .site-footer__grid > :last-child { grid-column: span 2; }
    .mobile-contact-bar { position: fixed; z-index: 1200; left: 0; right: 0; bottom: 0; height: 68px; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid #dce3dc; background: rgba(255,255,255,.98); box-shadow: 0 -8px 24px rgba(20,35,20,.08); }
    .mobile-contact-bar a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; color: #394039; font-size: 10px; font-weight: 750; }
    .mobile-contact-bar a + a { border-left: 1px solid #e7ebe7; }
    .mobile-contact-bar .dcs-icon { color: #3d8a36; }
    .dcs-chat-launcher { right: 15px; bottom: 82px; width: 52px; height: 52px; }
    .dcs-chat { right: 15px; bottom: 142px; height: min(560px, calc(100vh - 165px)); }
    .content-layout { grid-template-columns: 1fr; }
    .sidebar { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .archive-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .category-intro { grid-template-columns: 1fr; }
    .category-child-grid, .solution-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .product-layout { grid-template-columns: 1fr; gap: 32px; }
    .product-summary { position: static; }
    .contact-grid { grid-template-columns: 1fr; }
    .company-intro { grid-template-columns: 1fr; }
    .team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dcs-slider__slide { flex-basis: calc((100% - 16px) / 2); }
    .site-header__top{padding-top: 0;}
	.home-hero h1{max-width: 100%;}
	.home-hero__visual{display: none;}
}

@media (max-width: 767.98px) {
    .service-info-row { grid-template-columns: 1fr; gap: 16px; }
    body { font-size: 15px; }
    .container, .container--wide { width: min(100% - 24px, 730px); }
    h1 { font-size: 33px; }
    h2 { font-size: 28px; }
    .home-hero h1 { font-size: 34px; }
    .home-hero__text { font-size: 15px; }
    .home-hero__trust { grid-template-columns: 1fr; }
    .hero-trust { padding: 11px 13px; }
    .home-hero__visual { min-height: 245px; }
    .home-hero__image { max-height: 240px; }
    .home-hero__badge { position: relative; bottom: auto; left: auto; margin-top: -6px; }
    .quiz-card__aside-list { grid-template-columns: 1fr; }
    .quiz-options { grid-template-columns: 1fr; }
    .quiz-card__main { padding: 24px 20px; }
    .quiz-card__aside { padding: 24px 20px; }
    .advantages-grid { grid-template-columns: 1fr; }
    .advantage-card { min-height: 0; }
    .equipment-grid { display: grid; grid-template-columns: 1fr; }
    .equipment-card, .equipment-card:nth-child(1), .equipment-card:nth-child(2) { grid-column: auto; min-height: 260px; }
    .catalog-toolbar, .cases-head { align-items: flex-start; flex-direction: column; }
    .dcs-slider__slide { flex-basis: 84%; }
    .about-media__stat { right: 10px; }
    .about-points { grid-template-columns: 1fr; }
    .cta-card { padding: 25px 20px; gap: 30px; }
    .cta-list { grid-template-columns: 1fr; }
    .dcs-form__grid { grid-template-columns: 1fr; }
    .site-footer__grid { grid-template-columns: 1fr; gap: 30px; }
    .site-footer__grid > :last-child { grid-column: auto; }
    .footer-contacts { grid-template-columns: 1fr; }
    .site-footer__bottom-inner { min-height: 0; padding: 22px 0; flex-direction: column; align-items: flex-start; }
    .page-hero { padding: 28px 0 32px; }
    .page-hero__grid { grid-template-columns: 1fr; }
    .page-hero h1 { font-size: 32px; }
    .content-section { padding: 44px 0 60px; }
    .sidebar { grid-template-columns: 1fr; }
    .archive-grid { grid-template-columns: 1fr; }
    .category-child-grid, .solution-grid, .product-grid { grid-template-columns: 1fr; }
    .contact-panel { grid-template-columns: 1fr; }
    .team-grid { grid-template-columns: 1fr; }
    .dcs-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .product-gallery__main { padding: 18px; }
    .product-summary__actions { flex-direction: column; }
    .calculator-container { padding: 14px; border-radius: 10px; }
    .calculator-container th, .calculator-container td { font-size: 12px !important; padding: 8px !important; }
    .dcs-modal { padding: 12px; }
    .dcs-modal__dialog { padding: 23px 18px; }
    .dcs-lightbox { padding: 10px; }
    .dcs-lightbox__media { max-width: calc(100vw - 20px); max-height: calc(100vh - 100px); }
    .dcs-lightbox__prev { left: 8px; }
    .dcs-lightbox__next { right: 8px; }
    .dcs-lightbox__close { right: 8px; top: 8px; }
.avito-card {grid-template-columns: 1fr;}
.avito-review-card{width:100%}
}

@media (max-width: 479.98px) {
    .site-brand__logo img { width: 135px; }
    .home-hero__actions .dcs-button { width: 100%; }
    .quiz-actions .dcs-button { flex: 1; }
    .avito-card { padding: 25px 20px; }
    .dcs-slider__slide { flex-basis: 90%; }
    .dcs-gallery { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

.service-info-row { display: grid; grid-template-columns: minmax(180px,.35fr) minmax(0,.65fr); gap: 26px; align-items: center; margin: 34px 0; }
.service-info-row img { width: 100%; max-height: 360px; object-fit: cover; border-radius: 12px; }

@media (max-width: 767.98px) {
    .service-info-row { grid-template-columns: 1fr; gap: 16px; }
}

@media (max-width: 991.98px) {
    body.dcs-no-mobile-contact { padding-bottom: 0; }
}

/* 3.1 catalog interaction fixes */
.product-card__price { margin-bottom: 14px; }
.product-card__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.product-card__actions .dcs-button { width: 100%; min-width: 0; }
.related-products { margin-top: 58px; }
.dcs-slider__track a, .dcs-slider__track button { position: relative; z-index: 2; }
@media (max-width: 479.98px) {
    .product-card__actions { grid-template-columns: 1fr; }
}

/* Company page 3.1 */
.company-benefits-section { padding: 44px 0 20px; background: #fff; }
.company-benefits-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.company-benefit-card { min-height: 190px; padding: 23px; border: 1px solid #e3e8e3; border-radius: 13px; background: #fff; box-shadow: 0 10px 28px rgba(25,45,25,.035); }
.company-benefit-card__icon { width: 50px; height: 50px; display: grid; place-items: center; margin-bottom: 19px; border-radius: 12px; color: #3d8a36; background: #eef7ed; }
.company-benefit-card__icon img { width: 32px; height: 32px; object-fit: contain; }
.company-benefit-card h3 { margin-bottom: 9px; font-size: 18px; }
.company-benefit-card p { margin: 0; color: #687068; font-size: 13px; line-height: 1.5; }
.company-story-section { padding-top: 62px; }
.company-story { display: grid; grid-template-columns: minmax(350px,.88fr) minmax(0,1.12fr); gap: 60px; align-items: center; }
.company-story__media { position: relative; max-width: 510px; }
.company-story__photo { overflow: hidden; border-radius: 17px; background: linear-gradient(145deg,#eef3ee,#dfe8df); box-shadow: 0 24px 55px rgba(25,42,25,.09); }
.company-story__photo img { display: block; width: 100%; aspect-ratio: 4/4.45; object-fit: cover; object-position: 50% 30%; }
.company-story__badge { position: absolute; right: -22px; bottom: 28px; width: 210px; padding: 17px 18px; border-radius: 12px; color: #fff; background: #202320; box-shadow: 0 18px 36px rgba(15,25,15,.2); }
.company-story__badge::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; border-radius: 12px 0 0 12px; background: #4ea446; }
.company-story__badge strong { display: block; margin-bottom: 5px; font-size: 18px; }
.company-story__badge span { display: block; color: #cbd2cb; font-size: 11px; line-height: 1.4; }
.company-story__content > h2 { max-width: 720px; }
.company-story__content > p, .company-story__content li { color: #596159; }
.company-story__facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 27px; }
.company-story__facts > div { display: flex; align-items: flex-start; gap: 10px; padding: 13px; border: 1px solid #e4e9e4; border-radius: 10px; background: #fafbfa; color: #414741; font-size: 12px; line-height: 1.45; }
.company-story__facts .dcs-icon { color: #3d8a36; margin-top: 1px; }
.company-team-section { background: #f6f8f6; }
.team-card--no-photo { min-height: 100%; }
.team-card--no-photo .team-card__body { padding: 25px; }
.team-card__text.entry-content p:last-child { margin-bottom: 0; }
.company-details-section { padding: 78px 0; background: #202320; color: #fff; }
.company-details-section .section-heading h2 { color: #fff; }
.company-details-section .section-heading p { color: #bfc7bf; }
.company-details-note { max-width: 880px; margin: -18px 0 28px; color: #cbd2cb; }
.company-details-note p:last-child { margin-bottom: 0; }
.company-details-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.company-detail-card { display: grid; grid-template-columns: 54px minmax(0,1fr); gap: 15px; padding: 24px; border: 1px solid #353b35; border-radius: 13px; background: #272a27; }
.company-detail-card__number { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 11px; color: #88cf81; background: #303830; font-size: 13px; font-weight: 850; letter-spacing: .05em; }
.company-detail-card__content, .company-detail-card__content p, .company-detail-card__content li { color: #d2d8d2; font-size: 13px; }
.company-detail-card__content h2, .company-detail-card__content h3, .company-detail-card__content h4 { color: #fff; font-size: 18px; }
.company-detail-card__content p:last-child { margin-bottom: 0; }
@media (max-width: 991.98px) {
    .company-benefits-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .company-story { grid-template-columns: 1fr; gap: 38px; }
    .company-story__media { width: min(100%,520px); }
    .company-story__badge { right: 14px; }
    .company-details-grid { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
    .company-benefits-grid { grid-template-columns: 1fr; }
    .company-story__facts { grid-template-columns: 1fr; }
    .company-story__badge { position: relative; right: auto; bottom: auto; width: auto; margin: -14px 14px 0; }
    .company-detail-card { grid-template-columns: 44px minmax(0,1fr); padding: 18px; }
    .company-detail-card__number { width: 40px; height: 40px; }
}
