/*
  OZT56 FINAL CSS BUNDLE
  Generated: 1781777124
  Source files are moved to legacy archive outside web-root.
*/


/* ===== design-patch.css ===== */

@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --radius: 10px;
  --orange: #f5a61e;
  --orange-dark: #e99400;
  --orange-soft: #fff3dc;
  --ink: #171719;
  --graphite: #222228;
  --muted: #6c6c78;
  --line: #dedee5;
  --bg: #f7f7f8;
  --shadow: 0 14px 34px rgba(20,20,24,.10);
}

* {
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

body {
  font-family: "Manrope", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  background: var(--bg);
  color: var(--ink);
  letter-spacing: -0.015em;
}

.topline {
  display: none !important;
}

/* HEADER */
.site-header {
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  box-shadow: 0 8px 26px rgba(20,20,24,.04);
}

.header-inner {
  height: 78px !important;
  gap: 30px !important;
}

.brand {
  display: flex;
  align-items: center;
  transition: transform .25s ease, opacity .25s ease;
}

.brand:hover {
  transform: translateY(-1px);
  opacity: .88;
}

.brand img {
  width: 188px !important;
}

/* MENU */
.main-nav {
  gap: 26px !important;
  margin-left: auto;
}

.main-nav a {
  position: relative;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #292932 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 78px;
  transition: color .24s ease;
}

.main-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 20px;
  width: 100%;
  height: 2px;
  background: var(--orange);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .28s ease;
}

.main-nav a:hover,
.main-nav a.active {
  color: var(--orange-dark) !important;
}

.main-nav a:hover::after,
.main-nav a.active::after {
  transform: scaleX(1);
  transform-origin: left;
}

/* PHONE + BUTTON */
.phone {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #18181d !important;
  transition: color .2s ease;
}

.phone:hover {
  color: var(--orange-dark) !important;
}

.btn {
  border-radius: 9px !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    background .22s ease,
    border-color .22s ease,
    color .22s ease !important;
}

.btn:hover {
  transform: translateY(-2px) !important;
}

.btn-primary {
  background: var(--orange) !important;
  color: #151515 !important;
  box-shadow: 0 10px 24px rgba(245,166,30,.25) !important;
}

.btn-primary:hover {
  background: var(--orange-dark) !important;
  box-shadow: 0 14px 30px rgba(245,166,30,.34) !important;
}

.btn-small {
  padding: 12px 18px !important;
}

/* TEXT */
.hero-content h1,
.page-hero h1,
.service-hero h1,
.section-header h2,
.cta h2,
.contact-info h2 {
  font-family: "Manrope", Inter, Arial, sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.065em !important;
}

.hero-content p,
.page-hero p,
.service-hero p,
.section-header p,
.cta p {
  font-weight: 500 !important;
  letter-spacing: -0.025em;
}

/* REMOVE AI ROUNDNESS */
.quiz-card,
.form-card,
.note-card,
.photo-card,
.service-summary-card,
.map-card,
.service-card,
.equipment-card,
.project-card,
.timeline article,
.process-card,
.benefits-grid article,
.catalog-card,
.requisites-grid div,
.contact-note,
.contact-list a,
.contact-list span,
details,
.chips-large span,
.check-list span,
.tags span,
.filter-row button,
.quiz-options button,
.catalog-toolbar input,
.catalog-toolbar select,
.form-card input,
.form-card select,
.form-card textarea {
  border-radius: 10px !important;
}

/* CARDS */
.service-card,
.equipment-card,
.project-card,
.catalog-card,
.note-card,
.form-card,
.quiz-card,
.process-card,
.timeline article,
.benefits-grid article {
  box-shadow: none !important;
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease,
    background .28s ease;
}

.service-card:hover,
.equipment-card:hover,
.project-card:hover,
.catalog-card:hover,
.process-card:hover,
.timeline article:hover,
.benefits-grid article:hover {
  transform: translateY(-5px);
  border-color: rgba(245,166,30,.55) !important;
  box-shadow: 0 18px 38px rgba(20,20,24,.10) !important;
}

/* IMAGES HOVER */
.service-card,
.project-card,
.equipment-card,
.catalog-card,
.photo-card,
.image-stack {
  overflow: hidden;
}

.service-card img,
.project-card img,
.equipment-card img,
.catalog-card img,
.photo-card img,
.image-stack img {
  transition: transform .55s cubic-bezier(.2,.75,.2,1), filter .55s ease;
  will-change: transform;
}

.service-card:hover img,
.project-card:hover img,
.equipment-card:hover img,
.catalog-card:hover img,
.photo-card:hover img,
.image-stack:hover img {
  transform: scale(1.045);
  filter: saturate(1.08) contrast(1.04);
}

/* HERO */
.hero {
  min-height: 700px !important;
}

.hero::after {
  background:
    linear-gradient(90deg, rgba(13,13,16,.92) 0%, rgba(22,22,27,.76) 48%, rgba(22,22,27,.30) 100%) !important;
}

.hero-badges span {
  border-radius: 8px !important;
  background: rgba(255,255,255,.075) !important;
  border: 1px solid rgba(255,255,255,.20) !important;
  transition: transform .24s ease, background .24s ease, border-color .24s ease;
}

.hero-badges span:hover {
  transform: translateY(-2px);
  background: rgba(245,166,30,.16) !important;
  border-color: rgba(245,166,30,.55) !important;
}

/* TAGS / PILLS */
.tags span,
.filter-row button {
  border-radius: 8px !important;
}

/* ANIMATION CLASSES */
.reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity .65s ease, transform .65s cubic-bezier(.2,.75,.2,1);
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* MOBILE */
@media (max-width: 980px) {
  .main-nav {
    gap: 0 !important;
    padding: 16px !important;
  }

  .main-nav a {
    line-height: 1.2 !important;
    padding: 14px 0 !important;
  }

  .main-nav a::after {
    bottom: 7px;
  }

  .burger {
    border-radius: 8px !important;
    background: #f1f1f4 !important;
  }
}

/* ===== HARD FIX: убрать нейронские скругления и бежевые теги ===== */

:root {
  --radius: 0px !important;
  --orange-soft: transparent !important;
}

/* Карточки каталога / услуг / проектов — без скруглений */
.catalog-card,
.equipment-card,
.service-card,
.project-card,
.photo-card,
.note-card,
.form-card,
.quiz-card,
.process-card,
.timeline article,
.benefits-grid article,
.service-summary-card,
.map-card,
.contact-note,
.requisites-grid div {
  border-radius: 0 !important;
}

/* Картинки внутри карточек — без скруглений */
.catalog-card img,
.equipment-card img,
.service-card img,
.project-card img,
.photo-card img,
.map-card img,
.image-stack img {
  border-radius: 0 !important;
}

/* Убрать уебанский бежевый цвет у тегов */
.tags span,
.chips-large span,
.check-list span {
  background: #ffffff !important;
  color: #202024 !important;
  border: 1px solid #cfd2da !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Hover у тегов — строгий, без бежевого */
.tags span:hover,
.chips-large span:hover,
.check-list span:hover {
  background: #202024 !important;
  color: #ffffff !important;
  border-color: #202024 !important;
}

/* Фильтры и кнопки-категории тоже без капсул */
.filter-row button,
.quiz-options button,
.catalog-toolbar input,
.catalog-toolbar select,
.form-card input,
.form-card select,
.form-card textarea {
  border-radius: 0 !important;
}

/* Убрать мягкие pastel-подложки */
.cta,
.contact-note {
  background: #f3f4f6 !important;
}

/* Hero badges — не капсулы */
.hero-badges span {
  border-radius: 0 !important;
}

/* Header active — без овальной плашки */
.main-nav a,
.main-nav a.active {
  border-radius: 0 !important;
  background: transparent !important;
}

/* Кнопки — максимум легкая строгость */
.btn,
.btn-small,
.btn-primary,
.btn-secondary {
  border-radius: 2px !important;
}

/* Logo/card wrappers — без лишней мягкости */
.brand,
.brand img,
.header-inner,
.site-header {
  border-radius: 0 !important;
}

/* Чуть строже карточки */
.catalog-card,
.equipment-card {
  border: 1px solid #d7dae2 !important;
  background: #ffffff !important;
}

/* Картинки в каталоге: фон не бежевый */
.catalog-card img,
.equipment-card img {
  background: #f1f2f4 !important;
}

/* При наведении — не "пузырь", а индустриальный hover */
.catalog-card:hover,
.equipment-card:hover,
.service-card:hover,
.project-card:hover {
  transform: translateY(-4px) !important;
  border-color: #f5a61e !important;
  box-shadow: 0 18px 36px rgba(0,0,0,.10) !important;
}



/* ===== catalog-patch.css ===== */


body.ozt-filter-catalog {
  background: #eeeeee !important;
}

body.ozt-filter-catalog main {
  display: none !important;
}

#ozt-filter-catalog-root {
  background: #eeeeee;
  min-height: calc(100vh - 80px);
  padding: 42px 0 90px;
  color: #111;
  font-family: "Manrope", Inter, Arial, sans-serif;
}

#ozt-filter-catalog-root * {
  box-sizing: border-box;
  border-radius: 0 !important;
}

.oztf-wrap {
  width: 1120px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
}

.oztf-title {
  margin: 0 0 10px;
  font-size: 42px;
  line-height: 1.06;
  font-weight: 800;
  letter-spacing: -0.055em;
}

.oztf-lead {
  max-width: 820px;
  margin: 0 0 28px;
  color: #4d5664;
  font-size: 14px;
  line-height: 1.65;
}

.oztf-toolbar {
  position: sticky;
  top: 78px;
  z-index: 20;
  display: grid;
  grid-template-columns: 1fr 240px 240px;
  gap: 10px;
  padding: 14px;
  margin-bottom: 24px;
  background: rgba(238,238,238,.92);
  backdrop-filter: blur(14px);
  border: 1px solid #d3d7df;
}

.oztf-search,
.oztf-select {
  height: 44px;
  border: 1px solid #cfd3dc;
  background: #fff;
  padding: 0 14px;
  color: #111;
  font: inherit;
  font-size: 13px;
  outline: none;
}

.oztf-search:focus,
.oztf-select:focus {
  border-color: #f5a61e;
  box-shadow: 0 0 0 2px rgba(245,166,30,.18);
}

.oztf-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 28px;
  align-items: start;
}

.oztf-sidebar {
  position: sticky;
  top: 166px;
  display: grid;
  gap: 10px;
}

.oztf-side-title {
  margin: 0 0 6px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: #777;
  font-weight: 900;
}

.oztf-cat-btn {
  min-height: 42px;
  width: 100%;
  padding: 0 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #cfd3dc;
  border-left: 4px solid transparent;
  background: #fff;
  color: #111;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.oztf-cat-btn:hover,
.oztf-cat-btn.active {
  border-color: #111;
  border-left-color: #f5a61e;
  background: #151515;
  color: #fff;
  transform: translateX(2px);
}

.oztf-cat-count {
  color: #f5a61e;
  font-weight: 900;
}

.oztf-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.oztf-count {
  font-size: 13px;
  color: #4d5664;
  font-weight: 700;
}

.oztf-reset {
  border: 1px solid #f5a61e;
  background: #fff;
  height: 34px;
  padding: 0 14px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  transition: background .2s ease, transform .2s ease;
}

.oztf-reset:hover {
  background: #f5a61e;
  transform: translateY(-2px);
}

.oztf-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.oztf-card {
  background: #fff;
  min-height: 430px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 6px 18px rgba(0,0,0,.09);
  overflow: hidden;
  transition: transform .24s ease, box-shadow .24s ease;
}

.oztf-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 36px rgba(0,0,0,.14);
}

.oztf-img {
  height: 185px;
  background: #f7f7f7;
  overflow: hidden;
}

.oztf-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transition: transform .38s ease;
}

.oztf-card:hover .oztf-img img {
  transform: scale(1.055);
}

.oztf-body {
  padding: 14px 14px 16px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.oztf-badge {
  display: inline-flex;
  align-self: flex-start;
  margin-bottom: 10px;
  padding: 4px 7px;
  background: #fff5e1;
  border-left: 3px solid #f5a61e;
  color: #9a6500;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.oztf-body h3 {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.28;
  font-weight: 900;
}

.oztf-body p {
  margin: 0 0 16px;
  color: #4a5360;
  font-size: 12px;
  line-height: 1.52;
}

.oztf-btn {
  height: 40px;
  margin-top: auto;
  background: #f5a61e;
  color: #111 !important;
  text-decoration: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 900;
  transition: background .2s ease, transform .2s ease;
}

.oztf-btn:hover {
  background: #e99400;
  transform: translateY(-2px);
}

.oztf-empty-grid {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

.oztf-empty-card {
  background: #fff;
  border-left: 4px solid #f5a61e;
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 18px;
  padding: 18px;
  box-shadow: 0 6px 18px rgba(0,0,0,.07);
}

.oztf-empty-card img {
  width: 160px;
  height: 110px;
  object-fit: cover;
}

.oztf-empty-card h3 {
  margin: 0 0 8px;
  font-size: 17px;
  font-weight: 900;
}

.oztf-empty-card p {
  margin: 0 0 12px;
  color: #4d5664;
  font-size: 13px;
  line-height: 1.5;
}

.oztf-empty-card a {
  display: inline-flex;
  height: 34px;
  padding: 0 14px;
  align-items: center;
  background: #f5a61e;
  color: #111 !important;
  text-decoration: none !important;
  font-size: 12px;
  font-weight: 900;
}

.oztf-no-results {
  grid-column: 1 / -1;
  background: #fff;
  padding: 28px;
  border-left: 4px solid #f5a61e;
  color: #4d5664;
  font-size: 15px;
}

@media(max-width: 980px) {
  .oztf-toolbar,
  .oztf-layout {
    grid-template-columns: 1fr;
  }

  .oztf-sidebar {
    position: static;
    grid-template-columns: repeat(2, 1fr);
  }

  .oztf-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .oztf-empty-grid {
    grid-template-columns: 1fr;
  }
}

@media(max-width: 620px) {
  .oztf-grid {
    grid-template-columns: 1fr;
  }

  .oztf-sidebar {
    grid-template-columns: 1fr;
  }

  .oztf-empty-card {
    grid-template-columns: 1fr;
  }

  .oztf-empty-card img {
    width: 100%;
    height: 180px;
  }

  .oztf-title {
    font-size: 34px;
  }
}

/* ===== FIX: не прятать меню на странице каталога ===== */

body.ozt-filter-catalog main {
  display: block !important;
}

/* Прячем старый React-контент каталога, но НЕ header/menu */
body.ozt-filter-catalog main > section,
body.ozt-filter-catalog main > .page-hero,
body.ozt-filter-catalog main > .catalog-hero,
body.ozt-filter-catalog main > .hero {
  display: none !important;
}

/* Header/menu всегда показывать */
body.ozt-filter-catalog header,
body.ozt-filter-catalog .site-header,
body.ozt-filter-catalog .header,
body.ozt-filter-catalog .header-inner,
body.ozt-filter-catalog nav,
body.ozt-filter-catalog .main-nav {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Сам каталог показывать */
body.ozt-filter-catalog #ozt-filter-catalog-root {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Если root оказался внутри main — не скрывать его */
body.ozt-filter-catalog main > #ozt-filter-catalog-root {
  display: block !important;
}

/* ===== LEFT SIDEBAR BLOCK FOR EMPTY CATEGORIES ===== */

.oztf-sidebar .oztf-side-extra {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.oztf-sidebar .oztf-side-extra .oztf-side-title {
  margin: 6px 0 2px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: #777;
  font-weight: 900;
}

.oztf-sidebar .oztf-side-extra .oztf-empty-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  margin: 0 !important;
}

.oztf-sidebar .oztf-side-extra .oztf-empty-card {
  display: grid !important;
  grid-template-columns: 88px 1fr !important;
  gap: 12px !important;
  padding: 10px !important;
  background: #fff !important;
  border-left: 3px solid #f5a61e !important;
  box-shadow: 0 4px 12px rgba(0,0,0,.06) !important;
}

.oztf-sidebar .oztf-side-extra .oztf-empty-card img {
  width: 88px !important;
  height: 72px !important;
  object-fit: cover !important;
}

.oztf-sidebar .oztf-side-extra .oztf-empty-card h3 {
  margin: 0 0 6px !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

.oztf-sidebar .oztf-side-extra .oztf-empty-card p {
  margin: 0 0 8px !important;
  color: #4d5664 !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
}

.oztf-sidebar .oztf-side-extra .oztf-empty-card a {
  display: inline-flex !important;
  height: 30px !important;
  padding: 0 10px !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f5a61e !important;
  color: #111 !important;
  text-decoration: none !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

.oztf-layout.has-side-extra {
  grid-template-columns: 280px 1fr !important;
}

.oztf-layout.has-side-extra .oztf-sidebar {
  top: 150px;
}

/* скрываем старое место справа после переноса */
.oztf-empty-grid.oztf-moved-away {
  display: none !important;
}

@media(max-width: 980px) {
  .oztf-layout.has-side-extra {
    grid-template-columns: 1fr !important;
  }

  .oztf-sidebar .oztf-side-extra .oztf-empty-card {
    grid-template-columns: 100px 1fr !important;
  }

  .oztf-sidebar .oztf-side-extra .oztf-empty-card img {
    width: 100px !important;
    height: 78px !important;
  }
}

/* ===== EXTRA DIRECTIONS IN LEFT SIDEBAR v16 ===== */

.oztf-extra {
  margin-top: 28px !important;
  display: grid !important;
  gap: 10px !important;
}

.oztf-extra-title {
  margin: 0 0 4px !important;
  color: #777 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

.oztf-extra-link {
  position: relative !important;
  min-height: 78px !important;
  display: grid !important;
  grid-template-columns: 58px 1fr 16px !important;
  gap: 12px !important;
  align-items: center !important;
  padding: 10px 10px !important;
  background: #fff !important;
  border: 1px solid #d4d8e0 !important;
  border-left: 4px solid #f5a61e !important;
  color: #111 !important;
  text-decoration: none !important;
  overflow: hidden !important;
  transition:
    background .22s ease,
    border-color .22s ease,
    transform .22s ease,
    box-shadow .22s ease !important;
}

.oztf-extra-link:hover {
  background: #151515 !important;
  border-color: #151515 !important;
  border-left-color: #f5a61e !important;
  color: #fff !important;
  transform: translateX(3px) !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.14) !important;
}

.oztf-extra-icon {
  width: 58px !important;
  height: 58px !important;
  display: block !important;
  overflow: hidden !important;
  background: #f3f3f3 !important;
}

.oztf-extra-icon img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform .3s ease !important;
}

.oztf-extra-link:hover .oztf-extra-icon img {
  transform: scale(1.08) !important;
}

.oztf-extra-text {
  min-width: 0 !important;
  display: block !important;
}

.oztf-extra-text strong {
  display: block !important;
  margin: 0 0 5px !important;
  color: inherit !important;
  font-size: 13px !important;
  line-height: 1.24 !important;
  font-weight: 900 !important;
}

.oztf-extra-text em {
  display: block !important;
  color: #687180 !important;
  font-style: normal !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

.oztf-extra-link:hover .oztf-extra-text em {
  color: rgba(255,255,255,.72) !important;
}

.oztf-extra-arrow {
  color: #f5a61e !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  transition: transform .22s ease !important;
}

.oztf-extra-link:hover .oztf-extra-arrow {
  transform: translateX(4px) !important;
}

/* точно убрать старые большие карточки справа */
.oztf-empty-grid,
.oztf-empty-card {
  display: none !important;
}

@media(max-width: 980px) {
  .oztf-extra {
    margin-top: 18px !important;
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .oztf-extra-title {
    grid-column: 1 / -1 !important;
  }
}

@media(max-width: 620px) {
  .oztf-extra {
    grid-template-columns: 1fr !important;
  }
}

/* ===== v17: увеличить 2 блока "Другие направления" ===== */

.oztf-extra {
  gap: 14px !important;
}

.oztf-extra-link {
  min-height: 96px !important;
  grid-template-columns: 74px 1fr 18px !important;
  gap: 14px !important;
  padding: 12px 12px !important;
}

.oztf-extra-icon {
  width: 74px !important;
  height: 74px !important;
}

.oztf-extra-icon img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.oztf-extra-text strong {
  font-size: 16px !important;
  line-height: 1.2 !important;
  margin-bottom: 6px !important;
}

.oztf-extra-text em {
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.oztf-extra-arrow {
  font-size: 20px !important;
}

@media(max-width: 980px) {
  .oztf-extra-link {
    min-height: 88px !important;
    grid-template-columns: 68px 1fr 18px !important;
  }

  .oztf-extra-icon {
    width: 68px !important;
    height: 68px !important;
  }

  .oztf-extra-text strong {
    font-size: 15px !important;
  }

  .oztf-extra-text em {
    font-size: 12px !important;
  }
}

/* ===== v18: нормальные категории слева + активная не черная ===== */

/* Активная категория — светло-оранжевая, не черная */
.oztf-cat-btn.active,
.oztf-cat-btn:hover {
  background: #fff3dc !important;
  color: #151515 !important;
  border-color: #f5a61e !important;
  border-left-color: #f5a61e !important;
  box-shadow: inset 0 0 0 1px rgba(245,166,30,.22) !important;
  transform: none !important;
}

.oztf-cat-btn.active .oztf-cat-count,
.oztf-cat-btn:hover .oztf-cat-count {
  color: #d78900 !important;
}

/* "Другие направления" — как часть одного левого меню */
.oztf-extra {
  margin-top: 26px !important;
  display: grid !important;
  gap: 8px !important;
}

.oztf-extra-title {
  margin: 0 0 6px !important;
  color: #777 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

/* Убираем вид карточек с картинками */
.oztf-extra-link {
  min-height: 48px !important;
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 0 14px !important;
  background: #ffffff !important;
  border: 1px solid #cfd3dc !important;
  border-left: 4px solid #f5a61e !important;
  color: #151515 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transform: none !important;
  transition:
    background .2s ease,
    border-color .2s ease,
    box-shadow .2s ease !important;
}

/* прячем картинки, чтобы не выглядело странно */
.oztf-extra-icon,
.oztf-extra-icon img {
  display: none !important;
}

.oztf-extra-text {
  min-width: 0 !important;
  display: block !important;
}

.oztf-extra-text strong {
  display: block !important;
  margin: 0 !important;
  color: #151515 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

.oztf-extra-text em {
  display: block !important;
  margin-top: 3px !important;
  color: #7a8190 !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-style: normal !important;
}

/* вместо стрелки — нормальный бейдж */
.oztf-extra-arrow {
  width: auto !important;
  height: 22px !important;
  padding: 0 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff3dc !important;
  color: #d78900 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.oztf-extra-arrow {
  font-size: 0 !important;
}

.oztf-extra-arrow::before {
  content: "подбор";
  font-size: 10px !important;
}

/* Hover для дополнительных направлений */
.oztf-extra-link:hover {
  background: #fff3dc !important;
  border-color: #f5a61e !important;
  border-left-color: #f5a61e !important;
  box-shadow: inset 0 0 0 1px rgba(245,166,30,.22) !important;
  color: #151515 !important;
}

.oztf-extra-link:hover .oztf-extra-text strong {
  color: #151515 !important;
}

.oztf-extra-link:hover .oztf-extra-text em {
  color: #7a8190 !important;
}

.oztf-extra-link:hover .oztf-extra-arrow {
  transform: none !important;
}

/* Чтобы основные категории и другие направления выглядели одинаково по ширине */
.oztf-sidebar {
  gap: 10px !important;
}

.oztf-cat-btn {
  background: #fff !important;
  color: #151515 !important;
  border: 1px solid #cfd3dc !important;
  border-left: 4px solid transparent !important;
  box-shadow: none !important;
}

.oztf-cat-btn .oztf-cat-count {
  color: #d78900 !important;
}

/* Активная еще раз, чтобы перекрыть старые стили */
.oztf-cat-btn.active {
  background: #fff3dc !important;
  border-color: #f5a61e !important;
  border-left-color: #f5a61e !important;
}

/* Мобильная версия */
@media(max-width: 980px) {
  .oztf-extra {
    grid-template-columns: 1fr !important;
  }

  .oztf-extra-title {
    grid-column: auto !important;
  }
}

/* ===== v19: направления как обычные категории, без уебанского блока ===== */

/* вырубаем все старые extra-стили */
.oztf-extra,
.oztf-extra-title,
.oztf-extra-link,
.oztf-extra-icon,
.oztf-extra-text,
.oztf-extra-arrow {
  display: none !important;
}

/* единый стиль кнопок слева */
.oztf-cat-btn {
  min-height: 48px !important;
  padding: 0 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: #fff !important;
  color: #151515 !important;
  border: 1px solid #cfd3dc !important;
  border-left: 4px solid transparent !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  box-shadow: none !important;
  transform: none !important;
}

.oztf-cat-btn:hover,
.oztf-cat-btn.active {
  background: #fff3dc !important;
  color: #151515 !important;
  border-color: #f5a61e !important;
  border-left-color: #f5a61e !important;
  box-shadow: inset 0 0 0 1px rgba(245,166,30,.2) !important;
  transform: none !important;
}

/* счетчики/бейджи */
.oztf-cat-count {
  color: #d78900 !important;
  font-weight: 900 !important;
}

.oztf-direction-btn .oztf-cat-count {
  height: 22px !important;
  padding: 0 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff3dc !important;
  border: 1px solid rgba(245,166,30,.45) !important;
  color: #d78900 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.oztf-direction-btn:hover .oztf-cat-count,
.oztf-direction-btn.active .oztf-cat-count {
  background: #f5a61e !important;
  color: #111 !important;
  border-color: #f5a61e !important;
}

/* панель справа при клике по направлениям */
.oztf-direction-panel {
  grid-column: 1 / -1 !important;
  background: #fff !important;
  border-left: 4px solid #f5a61e !important;
  padding: 34px 38px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.08) !important;
}

.oztf-direction-panel h2 {
  margin: 0 0 12px !important;
  font-size: 30px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
}

.oztf-direction-panel p {
  max-width: 680px !important;
  margin: 0 0 22px !important;
  color: #4d5664 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

.oztf-direction-panel a {
  height: 44px !important;
  padding: 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f5a61e !important;
  color: #111 !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.oztf-direction-panel a:hover {
  background: #e99400 !important;
}

/* ===== v20: вернуть "Другие направления" как было, но кликом на заявку ===== */

/* Активная категория светлая, не черная */
.oztf-cat-btn.active,
.oztf-cat-btn:hover {
  background: #fff3dc !important;
  color: #151515 !important;
  border-color: #f5a61e !important;
  border-left-color: #f5a61e !important;
  box-shadow: inset 0 0 0 1px rgba(245,166,30,.2) !important;
  transform: none !important;
}

.oztf-cat-btn.active .oztf-cat-count,
.oztf-cat-btn:hover .oztf-cat-count {
  color: #d78900 !important;
}

/* Полностью гасим старые "direction buttons" и панель справа */
.oztf-direction-btn,
.oztf-direction-panel {
  display: none !important;
}

/* Возвращаем блок других направлений */
.oztf-extra {
  display: block !important;
  margin-top: 30px !important;
}

.oztf-extra-title {
  display: block !important;
  margin: 0 0 12px !important;
  color: #777 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

/* Карточки аккуратные, не мелкие */
.oztf-extra-card {
  position: relative !important;
  min-height: 92px !important;
  margin-bottom: 12px !important;
  padding: 12px 36px 12px 12px !important;
  display: grid !important;
  grid-template-columns: 76px 1fr !important;
  gap: 14px !important;
  align-items: center !important;
  background: #ffffff !important;
  border: 1px solid #d3d7df !important;
  border-left: 4px solid #f5a61e !important;
  color: #151515 !important;
  text-decoration: none !important;
  box-shadow: 0 5px 14px rgba(0,0,0,.05) !important;
  transition:
    background .22s ease,
    border-color .22s ease,
    transform .22s ease,
    box-shadow .22s ease !important;
}

.oztf-extra-card::after {
  content: "→" !important;
  position: absolute !important;
  right: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: #f5a61e !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  transition: transform .22s ease !important;
}

.oztf-extra-card:hover {
  background: #fff3dc !important;
  border-color: #f5a61e !important;
  border-left-color: #f5a61e !important;
  transform: translateX(3px) !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.10) !important;
}

.oztf-extra-card:hover::after {
  transform: translate(4px, -50%) !important;
}

/* Картинки возвращаем */
.oztf-extra-card img {
  display: block !important;
  width: 76px !important;
  height: 68px !important;
  object-fit: cover !important;
  background: #f2f2f2 !important;
}

/* Текст */
.oztf-extra-card strong {
  display: block !important;
  margin: 0 0 6px !important;
  color: #151515 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

.oztf-extra-card span {
  display: block !important;
  color: #5f6876 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* убираем правые большие карточки */
.oztf-empty-grid,
.oztf-empty-card {
  display: none !important;
}

@media(max-width: 980px) {
  .oztf-extra {
    margin-top: 18px !important;
  }

  .oztf-extra-card {
    grid-template-columns: 82px 1fr !important;
  }

  .oztf-extra-card img {
    width: 82px !important;
    height: 72px !important;
  }
}

/* ===== v21: убрать второй заголовок и картинки в "Другие направления" ===== */

/* если появился пустой/дублирующий второй заголовок — скрыть все лишние после первого */
.oztf-extra-title ~ .oztf-extra-title {
  display: none !important;
}

/* если заголовок остался пустым блоком ниже карточек */
.oztf-extra > .oztf-extra-title:not(:first-child) {
  display: none !important;
}

/* убрать картинки из двух карточек */
.oztf-extra-card img {
  display: none !important;
}

/* перестроить карточки без картинки */
.oztf-extra-card {
  min-height: 68px !important;
  grid-template-columns: 1fr 20px !important;
  padding: 12px 38px 12px 16px !important;
}

.oztf-extra-card div {
  min-width: 0 !important;
}

.oztf-extra-card strong {
  font-size: 15px !important;
  line-height: 1.22 !important;
  margin-bottom: 5px !important;
}

.oztf-extra-card span {
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* стрелка ровно справа */
.oztf-extra-card::after {
  right: 15px !important;
}

/* на всякий случай скрыть старые классы-клоны */
.oztf-side-extra,
.oztf-side-extra .oztf-side-title {
  display: none !important;
}

/* ===== v22: нормальная ширина текста + убрать дубль заголовка ===== */

/* Скрыть любые пустые/дублирующие заголовки, если JS не успел */
.oztf-extra + .oztf-extra,
.oztf-extra-title:empty {
  display: none !important;
}

/* Карточка направления шире внутри, без сжатия текста */
.oztf-extra-card {
  min-height: 72px !important;
  grid-template-columns: 1fr 24px !important;
  column-gap: 12px !important;
  align-items: center !important;
  padding: 13px 14px 13px 16px !important;
}

/* Контент занимает всю доступную ширину */
.oztf-extra-card > div {
  min-width: 0 !important;
  max-width: none !important;
  width: 100% !important;
}

/* Заголовок нормальной шириной */
.oztf-extra-card strong {
  max-width: 100% !important;
  width: 100% !important;
  display: block !important;
  font-size: 15px !important;
  line-height: 1.22 !important;
  white-space: normal !important;
}

/* Подтекст не дробить в столбик */
.oztf-extra-card span {
  max-width: 150px !important;
  width: auto !important;
  display: block !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

/* Стрелка справа, не давит текст */
.oztf-extra-card::after {
  position: static !important;
  transform: none !important;
  justify-self: end !important;
  align-self: center !important;
}

/* полностью убрать картинки, если где-то вернулись */
.oztf-extra-card img,
.oztf-extra-icon {
  display: none !important;
}

/* ===== v23: растянуть текст в карточках "Другие направления" ===== */

.oztf-extra-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 24px !important;
  column-gap: 12px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 84px !important;
  padding: 14px 14px 14px 16px !important;
}

.oztf-extra-card > div,
.oztf-extra-card .oztf-extra-text {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  grid-column: 1 !important;
}

.oztf-extra-card strong,
.oztf-extra-card .oztf-extra-text strong {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
}

.oztf-extra-card span,
.oztf-extra-card .oztf-extra-text em,
.oztf-extra-card .oztf-extra-text span {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

.oztf-extra-card::after {
  grid-column: 2 !important;
  position: static !important;
  justify-self: end !important;
  align-self: center !important;
  transform: none !important;
  margin: 0 !important;
}

.oztf-extra-card:hover::after {
  transform: translateX(4px) !important;
}

/* ===== v24: реально растянуть левую колонку и текст направлений ===== */

/* Делаем левый сайдбар шире */
.oztf-layout {
  grid-template-columns: 320px 1fr !important;
  gap: 32px !important;
}

.oztf-sidebar {
  width: 320px !important;
  min-width: 320px !important;
}

/* Все кнопки слева на всю ширину */
.oztf-cat-btn,
.oztf-extra-card {
  width: 100% !important;
}

/* Карточки других направлений — широкие, без сжатия */
.oztf-extra-card {
  min-height: 72px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 22px !important;
  column-gap: 14px !important;
  align-items: center !important;
  padding: 14px 16px !important;
}

/* Контейнер текста занимает всю доступную ширину */
.oztf-extra-card > div,
.oztf-extra-card .oztf-extra-text {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  overflow: visible !important;
}

/* Заголовок */
.oztf-extra-card strong {
  width: 100% !important;
  max-width: none !important;
  display: block !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
}

/* Подтекст — одной строкой, больше не столбиком */
.oztf-extra-card span {
  width: 100% !important;
  max-width: none !important;
  display: block !important;
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

/* Стрелка отдельно справа */
.oztf-extra-card::after {
  grid-column: 2 !important;
  position: static !important;
  justify-self: end !important;
  align-self: center !important;
  transform: none !important;
}

/* Чтобы товары не ломались от расширения сайдбара */
.oztf-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media(max-width: 1180px) {
  .oztf-layout {
    grid-template-columns: 290px 1fr !important;
  }

  .oztf-sidebar {
    width: 290px !important;
    min-width: 290px !important;
  }
}

@media(max-width: 980px) {
  .oztf-layout {
    grid-template-columns: 1fr !important;
  }

  .oztf-sidebar {
    width: 100% !important;
    min-width: 0 !important;
  }

  .oztf-extra-card span {
    white-space: normal !important;
  }
}


/* ===== global-header.css ===== */

/* ===== GLOBAL HEADER v3 — NORMAL CLEAN MENU ===== */

/* Убить все старые шапки, кроме нашей */
body > header:not(#ozt-global-header),
body .site-header:not(#ozt-global-header),
body #catalog-topbar,
body #contacts-topbar {
  display: none !important;
}

/* Единая шапка */
#ozt-global-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 100000 !important;
  background: #fff !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.06) !important;
  font-family: "Manrope", Inter, Arial, sans-serif !important;
}

#ozt-global-header * {
  box-sizing: border-box !important;
  border-radius: 0 !important;
}

.ozt-gh-inner {
  width: 1180px !important;
  max-width: calc(100% - 32px) !important;
  height: 82px !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 28px !important;
}

/* Логотип слева, не по центру */
.ozt-gh-logo {
  width: 230px !important;
  height: 64px !important;
  flex: 0 0 230px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.ozt-gh-logo img {
  max-width: 220px !important;
  max-height: 62px !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
}

/* Меню */
.ozt-gh-nav {
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
}

.ozt-gh-nav a {
  position: relative !important;
  height: 46px !important;
  padding: 0 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  color: #151515 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: -0.025em !important;
  transition:
    background .2s ease,
    border-color .2s ease,
    color .2s ease,
    transform .2s ease !important;
}

.ozt-gh-nav a:hover,
.ozt-gh-nav a.active {
  background: #fff3dc !important;
  border-color: #f5a61e !important;
  color: #111 !important;
  transform: translateY(-1px) !important;
}

.ozt-gh-nav a.active::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: -1px;
  height: 3px;
  background: #f5a61e;
}

/* Телефон */
.ozt-gh-phone {
  color: #111 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 950 !important;
  white-space: nowrap !important;
  letter-spacing: -0.02em !important;
}

.ozt-gh-phone:hover {
  color: #e99400 !important;
}

/* Кнопка */
.ozt-gh-btn {
  height: 46px !important;
  padding: 0 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f5a61e !important;
  border: 1px solid #f5a61e !important;
  color: #111 !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  box-shadow: 0 12px 26px rgba(245,166,30,.25) !important;
  transition:
    background .2s ease,
    transform .2s ease,
    box-shadow .2s ease !important;
}

.ozt-gh-btn:hover {
  background: #e99400 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 16px 32px rgba(245,166,30,.34) !important;
}

/* Бургер */
.ozt-gh-burger {
  display: none !important;
  width: 48px !important;
  height: 46px !important;
  margin-left: auto !important;
  background: #fff !important;
  border: 1px solid #d4d8e0 !important;
  position: relative !important;
  cursor: pointer !important;
}

.ozt-gh-burger span,
.ozt-gh-burger::before,
.ozt-gh-burger::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  height: 2px;
  background: #111;
  transition: .24s ease;
}

.ozt-gh-burger span {
  top: 22px;
}

.ozt-gh-burger::before {
  top: 15px;
}

.ozt-gh-burger::after {
  top: 29px;
}

#ozt-global-header.is-open .ozt-gh-burger::before {
  top: 22px;
  transform: rotate(45deg);
}

#ozt-global-header.is-open .ozt-gh-burger span {
  opacity: 0;
}

#ozt-global-header.is-open .ozt-gh-burger::after {
  top: 22px;
  transform: rotate(-45deg);
}

/* Не даём контактам и каталогу накладываться */
body.ozt-filter-catalog #ozt-contacts-root {
  display: none !important;
}

body.ozt-contacts-page #ozt-filter-catalog-root {
  display: none !important;
}

/* Контент сразу после шапки */
#ozt-filter-catalog-root,
#ozt-contacts-root {
  margin-top: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Адаптив */
@media(max-width: 1180px) {
  .ozt-gh-inner {
    gap: 18px !important;
  }

  .ozt-gh-logo {
    width: 190px !important;
    flex-basis: 190px !important;
  }

  .ozt-gh-logo img {
    max-width: 185px !important;
    max-height: 58px !important;
  }

  .ozt-gh-nav {
    gap: 4px !important;
  }

  .ozt-gh-nav a {
    padding: 0 10px !important;
    font-size: 13px !important;
  }

  .ozt-gh-phone {
    font-size: 13px !important;
  }

  .ozt-gh-btn {
    padding: 0 18px !important;
  }
}

@media(max-width: 960px) {
  .ozt-gh-inner {
    height: auto !important;
    min-height: 76px !important;
    padding: 12px 0 !important;
    flex-wrap: wrap !important;
  }

  .ozt-gh-logo {
    width: 190px !important;
    height: 58px !important;
    flex: 0 0 190px !important;
  }

  .ozt-gh-logo img {
    max-width: 185px !important;
    max-height: 56px !important;
  }

  .ozt-gh-burger {
    display: block !important;
  }

  .ozt-gh-nav {
    order: 10 !important;
    width: 100% !important;
    margin-left: 0 !important;
    display: none !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 12px 0 4px !important;
    border-top: 1px solid rgba(0,0,0,.08) !important;
  }

  #ozt-global-header.is-open .ozt-gh-nav {
    display: grid !important;
  }

  .ozt-gh-nav a {
    width: 100% !important;
    height: 46px !important;
    justify-content: flex-start !important;
    padding: 0 16px !important;
    background: #f7f7f8 !important;
    border: 1px solid #e1e4ea !important;
    font-size: 15px !important;
  }

  .ozt-gh-phone,
  .ozt-gh-btn {
    display: none !important;
  }

  #ozt-global-header.is-open .ozt-gh-phone {
    order: 11 !important;
    width: 100% !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
  }

  #ozt-global-header.is-open .ozt-gh-btn {
    order: 12 !important;
    width: 100% !important;
    display: flex !important;
  }
}

@media(max-width: 560px) {
  .ozt-gh-logo {
    width: 165px !important;
    height: 54px !important;
    flex-basis: 165px !important;
  }

  .ozt-gh-logo img {
    max-width: 160px !important;
    max-height: 52px !important;
  }
}

/* ===== MENU ACTIVE FIX v4: убрать уродские квадраты ===== */

.ozt-gh-nav a {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  height: 44px !important;
  padding: 0 12px !important;
  transform: none !important;
}

.ozt-gh-nav a:hover {
  background: rgba(245,166,30,.10) !important;
  border: none !important;
  box-shadow: none !important;
  color: #111 !important;
  transform: none !important;
}

.ozt-gh-nav a.active {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: #111 !important;
  transform: none !important;
}

.ozt-gh-nav a.active::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 12px !important;
  right: 12px !important;
  bottom: 4px !important;
  height: 3px !important;
  background: #f5a61e !important;
}

/* hover без квадрата, только тонкая линия */
.ozt-gh-nav a:hover::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  left: 12px !important;
  right: 12px !important;
  bottom: 4px !important;
  height: 2px !important;
  background: rgba(245,166,30,.55) !important;
}

/* заявка оставляем как кнопку */
.ozt-gh-btn {
  background: #f5a61e !important;
  border: 1px solid #f5a61e !important;
}

/* мобильное меню пусть остается карточками, там это нормально */
@media(max-width: 960px) {
  .ozt-gh-nav a,
  .ozt-gh-nav a:hover,
  .ozt-gh-nav a.active {
    background: #f7f7f8 !important;
    border: 1px solid #e1e4ea !important;
  }

  .ozt-gh-nav a.active {
    border-left: 4px solid #f5a61e !important;
    background: #fff3dc !important;
  }

  .ozt-gh-nav a::after,
  .ozt-gh-nav a:hover::after,
  .ozt-gh-nav a.active::after {
    display: none !important;
  }
}


/* ===== company-patch.css ===== */

/* ===== COMPANY PAGE REDESIGN v1 ===== */

body.ozt-company-page {
  background: #f1f2f4 !important;
}

body.ozt-company-page main {
  display: none !important;
}

#ozt-company-root {
  background: #f1f2f4;
  color: #111;
  font-family: "Manrope", Inter, Arial, sans-serif;
}

#ozt-company-root * {
  box-sizing: border-box;
  border-radius: 0 !important;
}

.oztco-wrap {
  width: 1180px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
}

/* HERO */
.oztco-hero {
  position: relative;
  min-height: 430px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(18,18,22,.82), rgba(18,18,22,.58), rgba(18,18,22,.18)),
    url('/images/hangar-outside.webp') center / cover no-repeat;
}

.oztco-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #f5a61e;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.oztco-kicker::before {
  content: "";
  width: 30px;
  height: 2px;
  background: #f5a61e;
}

.oztco-hero h1 {
  max-width: 760px;
  margin: 0;
  color: #fff;
  font-size: clamp(42px, 5vw, 72px);
  line-height: .96;
  font-weight: 900;
  letter-spacing: -0.075em;
}

.oztco-hero p {
  max-width: 680px;
  margin: 22px 0 0;
  color: rgba(255,255,255,.86);
  font-size: 17px;
  line-height: 1.6;
}

/* MAIN */
.oztco-main {
  padding: 68px 0 90px;
}

.oztco-intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 430px;
  gap: 42px;
  align-items: center;
  margin-bottom: 58px;
}

.oztco-title span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  color: #d78900;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.oztco-title span::before {
  content: "";
  width: 30px;
  height: 2px;
  background: #f5a61e;
}

.oztco-title h2 {
  max-width: 680px;
  margin: 0;
  font-size: 44px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.06em;
}

.oztco-title p {
  max-width: 720px;
  margin: 22px 0 0;
  color: #4f5867;
  font-size: 16px;
  line-height: 1.75;
}

.oztco-photo {
  position: relative;
  min-height: 420px;
  background: #fff;
  border: 1px solid #d5d9e1;
  padding: 12px;
  box-shadow: 0 18px 42px rgba(0,0,0,.10);
}

.oztco-photo img {
  width: 100%;
  height: 396px;
  object-fit: cover;
  display: block;
}

.oztco-photo-label {
  position: absolute;
  left: 28px;
  bottom: 28px;
  max-width: 280px;
  padding: 16px 18px;
  background: rgba(255,255,255,.94);
  border-left: 4px solid #f5a61e;
  color: #111;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 800;
}

/* PRINCIPLES */
.oztco-principles {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 30px;
  align-items: start;
  margin-bottom: 58px;
}

.oztco-principles-head {
  position: sticky;
  top: 110px;
}

.oztco-principles-head h2 {
  margin: 0 0 14px;
  font-size: 34px;
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.oztco-principles-head p {
  margin: 0;
  color: #56606f;
  font-size: 15px;
  line-height: 1.65;
}

.oztco-principle-list {
  display: grid;
  gap: 14px;
}

.oztco-principle {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 16px;
  padding: 22px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 8px 22px rgba(0,0,0,.05);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.oztco-principle:hover {
  transform: translateY(-3px);
  border-color: #f5a61e;
  box-shadow: 0 16px 34px rgba(0,0,0,.10);
}

.oztco-principle-number {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  background: #fff3dc;
  color: #d78900;
  font-size: 15px;
  font-weight: 900;
}

.oztco-principle h3 {
  margin: 0 0 8px;
  font-size: 20px;
  line-height: 1.18;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.oztco-principle p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.6;
}

/* NUMBERS */
.oztco-numbers {
  margin-bottom: 58px;
  padding: 34px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
}

.oztco-numbers-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
}

.oztco-numbers-head h2 {
  margin: 0;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.oztco-numbers-head p {
  max-width: 520px;
  margin: 0;
  color: #56606f;
  font-size: 14px;
  line-height: 1.6;
}

.oztco-number-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}

.oztco-number {
  min-height: 126px;
  padding: 18px;
  background: #f7f7f8;
  border: 1px solid #e0e3e9;
  transition: background .2s ease, transform .2s ease;
}

.oztco-number:hover {
  background: #fff3dc;
  transform: translateY(-2px);
}

.oztco-number strong {
  display: block;
  margin-bottom: 8px;
  color: #d78900;
  font-size: 38px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.06em;
}

.oztco-number span {
  color: #3f4856;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 800;
}

/* LEGAL */
.oztco-legal {
  margin-bottom: 58px;
}

.oztco-legal h2 {
  margin: 0 0 24px;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.oztco-legal-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.oztco-legal-card {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 8px 22px rgba(0,0,0,.05);
}

.oztco-legal-card small {
  display: block;
  margin-bottom: 8px;
  color: #808898;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.oztco-legal-card strong {
  display: block;
  color: #111;
  font-size: 15px;
  line-height: 1.45;
  font-weight: 900;
}

/* CTA */
.oztco-cta {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 28px;
  align-items: center;
  padding: 34px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 12px 30px rgba(0,0,0,.07);
}

.oztco-cta h2 {
  margin: 0 0 10px;
  font-size: 32px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.oztco-cta p {
  max-width: 680px;
  margin: 0;
  color: #56606f;
  font-size: 15px;
  line-height: 1.65;
}

.oztco-cta a {
  height: 52px;
  padding: 0 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f5a61e;
  color: #111 !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
  box-shadow: 0 12px 24px rgba(245,166,30,.25);
  transition: background .2s ease, transform .2s ease;
}

.oztco-cta a:hover {
  background: #e99400;
  transform: translateY(-2px);
}

@media(max-width: 980px) {
  .oztco-intro,
  .oztco-principles,
  .oztco-cta {
    grid-template-columns: 1fr;
  }

  .oztco-principles-head {
    position: static;
  }

  .oztco-number-grid,
  .oztco-legal-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 620px) {
  .oztco-hero {
    min-height: 360px;
  }

  .oztco-title h2,
  .oztco-numbers-head h2,
  .oztco-legal h2,
  .oztco-cta h2 {
    font-size: 28px;
  }

  .oztco-number-grid,
  .oztco-legal-grid {
    grid-template-columns: 1fr;
  }

  .oztco-numbers-head {
    display: block;
  }

  .oztco-photo {
    min-height: auto;
  }

  .oztco-photo img {
    height: 260px;
  }
}

/* ===== COMPANY PAGE CLEAN FIX v2 ===== */

/* hero короче и спокойнее */
.oztco-hero {
  min-height: 340px !important;
  background:
    linear-gradient(90deg, rgba(18,18,22,.78), rgba(18,18,22,.55), rgba(18,18,22,.24)),
    url('/images/hangar-outside.webp') center / cover no-repeat !important;
}

.oztco-hero h1 {
  max-width: 620px !important;
  font-size: clamp(42px, 4.5vw, 64px) !important;
  line-height: .98 !important;
  letter-spacing: -0.06em !important;
}

.oztco-hero p {
  max-width: 560px !important;
  font-size: 16px !important;
}

/* общий вид блоков: без розового/грязного фона внутри */
.oztco-number,
.oztco-principle-number,
.oztco-step,
.oztco-legal-card,
.oztco-principle,
.oztco-numbers,
.oztco-cta {
  background: #ffffff !important;
}

/* карточки принципов — чистые */
.oztco-principle {
  border: 1px solid #d5d9e1 !important;
  border-left: 4px solid #f5a61e !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.05) !important;
}

.oztco-principle-number {
  background: #ffffff !important;
  border: 1px solid #f5a61e !important;
  color: #d78900 !important;
}

/* цифры: без заливки, только белые карточки и тонкая рамка */
.oztco-numbers {
  padding: 30px !important;
  border: 1px solid #d5d9e1 !important;
  border-left: 4px solid #f5a61e !important;
  background: #fff !important;
}

.oztco-numbers-head {
  align-items: start !important;
}

.oztco-numbers-head h2 {
  font-size: 34px !important;
  max-width: 520px !important;
}

.oztco-number-grid {
  gap: 14px !important;
}

.oztco-number {
  min-height: 122px !important;
  padding: 20px !important;
  background: #fff !important;
  border: 1px solid #d5d9e1 !important;
  box-shadow: none !important;
}

.oztco-number:hover {
  background: #fff !important;
  border-color: #f5a61e !important;
  transform: translateY(-2px) !important;
}

.oztco-number strong {
  color: #d78900 !important;
  font-size: 40px !important;
}

.oztco-number span {
  color: #2f3743 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 800 !important;
}

/* юридические карточки без грязных оттенков */
.oztco-legal-card {
  background: #fff !important;
  border: 1px solid #d5d9e1 !important;
  border-left: 4px solid #f5a61e !important;
}

/* CTA чистый */
.oztco-cta {
  background: #fff !important;
  border: 1px solid #d5d9e1 !important;
  border-left: 4px solid #f5a61e !important;
}

/* фото подпись тоже без мутной плашки */
.oztco-photo-label {
  background: #fff !important;
  border-left: 4px solid #f5a61e !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.12) !important;
}


/* ===== projects-patch.css ===== */


/* ===== PROJECTS PAGE FROM ORIGINAL ===== */

body.ozt-projects-page {
  background: #f1f2f4 !important;
}

body.ozt-projects-page main {
  display: none !important;
}

#ozt-projects-root {
  background: #f1f2f4;
  color: #111;
  font-family: "Manrope", Inter, Arial, sans-serif;
}

#ozt-projects-root * {
  box-sizing: border-box;
  border-radius: 0 !important;
}

.oztp-wrap {
  width: 1180px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
}

.oztp-hero {
  padding: 70px 0 44px;
  background: #f1f2f4;
}

.oztp-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  color: #d78900;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.oztp-kicker::before {
  content: "";
  width: 30px;
  height: 2px;
  background: #f5a61e;
}

.oztp-hero h1 {
  max-width: 760px;
  margin: 0;
  font-size: clamp(42px, 5vw, 68px);
  line-height: .98;
  font-weight: 900;
  letter-spacing: -0.07em;
}

.oztp-hero p {
  max-width: 760px;
  margin: 18px 0 0;
  color: #4f5867;
  font-size: 16px;
  line-height: 1.7;
}

.oztp-stat-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 32px;
}

.oztp-stat {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 8px 22px rgba(0,0,0,.05);
}

.oztp-stat strong {
  display: block;
  color: #d78900;
  font-size: 34px;
  line-height: 1;
  font-weight: 900;
}

.oztp-stat span {
  display: block;
  margin-top: 8px;
  color: #3f4856;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 800;
}

.oztp-map-section {
  padding: 0 0 46px;
}

.oztp-map-card {
  padding: 28px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 12px 34px rgba(0,0,0,.07);
}

.oztp-map-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
}

.oztp-map-head h2 {
  margin: 0;
  font-size: 36px;
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: -0.06em;
}

.oztp-map-head p {
  max-width: 520px;
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.6;
}

.oztp-map-box {
  width: 100%;
  min-height: 420px;
  overflow: hidden;
  background: #eef0f3;
  border: 1px solid #d5d9e1;
}

.oztp-map-box iframe,
.oztp-map-box img {
  width: 100%;
  height: 420px;
  border: 0;
  display: block;
  object-fit: cover;
}

.oztp-toolbar {
  position: sticky;
  top: 86px;
  z-index: 50;
  padding: 14px;
  margin-bottom: 28px;
  display: grid;
  grid-template-columns: 1fr 220px;
  gap: 10px;
  background: rgba(241,242,244,.94);
  backdrop-filter: blur(12px);
  border: 1px solid #d5d9e1;
}

.oztp-search,
.oztp-year {
  height: 46px;
  border: 1px solid #cfd3dc;
  background: #fff;
  padding: 0 14px;
  font: inherit;
  font-size: 14px;
  color: #111;
  outline: none;
}

.oztp-search:focus,
.oztp-year:focus {
  border-color: #f5a61e;
  box-shadow: 0 0 0 2px rgba(245,166,30,.16);
}

.oztp-main {
  padding: 0 0 90px;
}

.oztp-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 20px;
}

.oztp-meta h2 {
  margin: 0;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.oztp-count {
  color: #4f5867;
  font-size: 14px;
  font-weight: 800;
}

.oztp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.oztp-card {
  background: #fff;
  border: 1px solid #d5d9e1;
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  overflow: hidden;
  cursor: pointer;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.oztp-card:hover {
  transform: translateY(-4px);
  border-color: #f5a61e;
  box-shadow: 0 18px 36px rgba(0,0,0,.12);
}

.oztp-card-image {
  height: 220px;
  background: #e8ebef;
  overflow: hidden;
}

.oztp-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}

.oztp-card:hover .oztp-card-image img {
  transform: scale(1.045);
}

.oztp-card-noimage {
  height: 220px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #f7f7f8, #e9edf2);
  color: #d78900;
  font-size: 42px;
  font-weight: 900;
}

.oztp-card-body {
  padding: 18px;
  border-left: 4px solid #f5a61e;
}

.oztp-card-year {
  display: inline-flex;
  margin-bottom: 12px;
  color: #d78900;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.oztp-card h3 {
  margin: 0;
  min-height: 76px;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.oztp-card-foot {
  margin-top: 16px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: #687180;
  font-size: 13px;
  font-weight: 800;
}

.oztp-card-foot b {
  color: #d78900;
}

/* modal */
.oztp-modal {
  position: fixed;
  inset: 0;
  z-index: 200000;
  display: none;
  background: rgba(20,22,26,.72);
  padding: 28px;
  overflow: auto;
}

.oztp-modal.open {
  display: grid;
  place-items: center;
}

.oztp-modal-dialog {
  width: 1060px;
  max-width: 100%;
  background: #fff;
  border: 1px solid #d5d9e1;
  box-shadow: 0 30px 80px rgba(0,0,0,.28);
}

.oztp-modal-head {
  padding: 24px 28px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  border-bottom: 1px solid #d5d9e1;
}

.oztp-modal-head small {
  display: block;
  margin-bottom: 8px;
  color: #d78900;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.oztp-modal-head h2 {
  margin: 0;
  font-size: 30px;
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.oztp-modal-close {
  width: 44px;
  height: 44px;
  border: 1px solid #d5d9e1;
  background: #fff;
  color: #111;
  font-size: 24px;
  cursor: pointer;
}

.oztp-modal-body {
  padding: 28px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 26px;
}

.oztp-gallery-main {
  height: 560px;
  background: #eef0f3;
  border: 1px solid #d5d9e1;
  overflow: hidden;
}

.oztp-gallery-main img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.oztp-gallery-thumbs {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
}

.oztp-thumb {
  height: 72px;
  border: 2px solid transparent;
  background: #eef0f3;
  cursor: pointer;
  overflow: hidden;
}

.oztp-thumb.active {
  border-color: #f5a61e;
}

.oztp-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.oztp-modal-info {
  border-left: 4px solid #f5a61e;
  padding-left: 22px;
}

.oztp-modal-info h3 {
  margin: 0 0 12px;
  font-size: 21px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.oztp-modal-info p {
  margin: 0 0 20px;
  color: #4f5867;
  font-size: 15px;
  line-height: 1.65;
}

.oztp-modal-info a {
  height: 44px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f5a61e;
  color: #111 !important;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
}

@media(max-width: 980px) {
  .oztp-stat-row,
  .oztp-grid,
  .oztp-modal-body {
    grid-template-columns: 1fr;
  }

  .oztp-toolbar {
    position: static;
    grid-template-columns: 1fr;
  }

  .oztp-gallery-main {
    height: 360px;
  }

  .oztp-gallery-thumbs {
    grid-template-columns: repeat(4, 1fr);
  }

  .oztp-map-head,
  .oztp-meta {
    display: block;
  }
}

/* ===== PROJECTS v2: убрать отчетный блок статистики ===== */

.oztp-stat-row {
  display: none !important;
}

.oztp-hero {
  padding-bottom: 36px !important;
}

.oztp-hero p {
  max-width: 720px !important;
  color: #4f5867 !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

/* ===== PROJECTS MOBILE FIX v3 ===== */

@media(max-width: 760px) {
  .oztp-hero {
    padding: 42px 0 26px !important;
  }

  .oztp-hero h1 {
    font-size: 38px !important;
    line-height: 1.02 !important;
    letter-spacing: -0.055em !important;
  }

  .oztp-hero p {
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  .oztp-main {
    padding-bottom: 56px !important;
  }

  .oztp-toolbar {
    margin-bottom: 22px !important;
    padding: 10px !important;
  }

  .oztp-search,
  .oztp-year {
    height: 44px !important;
    font-size: 13px !important;
  }

  .oztp-meta {
    margin-bottom: 14px !important;
  }

  .oztp-meta h2 {
    font-size: 26px !important;
    line-height: 1.08 !important;
  }

  .oztp-count {
    margin-top: 8px !important;
    font-size: 13px !important;
  }

  .oztp-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  /* карточка проекта компактнее */
  .oztp-card {
    display: grid !important;
    grid-template-columns: 118px 1fr !important;
    min-height: 132px !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.06) !important;
  }

  .oztp-card-image {
    height: 100% !important;
    min-height: 132px !important;
  }

  .oztp-card-image img {
    height: 100% !important;
    object-fit: cover !important;
  }

  .oztp-card-noimage {
    height: 100% !important;
    min-height: 132px !important;
    font-size: 26px !important;
  }

  .oztp-card-body {
    padding: 12px 13px !important;
    border-left: 3px solid #f5a61e !important;
  }

  .oztp-card-year {
    margin-bottom: 7px !important;
    font-size: 10px !important;
  }

  .oztp-card h3 {
    min-height: auto !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    letter-spacing: -0.025em !important;

    display: -webkit-box !important;
    -webkit-line-clamp: 4 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  .oztp-card-foot {
    margin-top: 10px !important;
    font-size: 12px !important;
  }

  .oztp-card-foot span {
    display: none !important;
  }

  .oztp-card-foot b {
    font-size: 12px !important;
  }

  /* карта на мобилке ниже и компактнее */
  .oztp-map-card {
    padding: 18px !important;
  }

  .oztp-map-head h2 {
    font-size: 26px !important;
  }

  .oztp-map-head p {
    font-size: 13px !important;
  }

  .oztp-map-box,
  .oztp-map-box iframe,
  .oztp-map-box img {
    min-height: 300px !important;
    height: 300px !important;
  }

  /* модалка фотоотчета */
  .oztp-modal {
    padding: 0 !important;
    align-items: stretch !important;
  }

  .oztp-modal.open {
    display: block !important;
  }

  .oztp-modal-dialog {
    width: 100% !important;
    min-height: 100vh !important;
    border: 0 !important;
  }

  .oztp-modal-head {
    position: sticky !important;
    top: 0 !important;
    z-index: 5 !important;
    padding: 16px !important;
    background: #fff !important;
  }

  .oztp-modal-head h2 {
    font-size: 21px !important;
    line-height: 1.15 !important;
  }

  .oztp-modal-close {
    width: 40px !important;
    height: 40px !important;
  }

  .oztp-modal-body {
    padding: 14px !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .oztp-gallery-main {
    height: 300px !important;
  }

  .oztp-gallery-main img {
    object-fit: contain !important;
  }

  .oztp-gallery-thumbs {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 6px !important;
  }

  .oztp-thumb {
    height: 62px !important;
  }

  .oztp-modal-info {
    border-left: 3px solid #f5a61e !important;
    padding-left: 14px !important;
  }

  .oztp-modal-info h3 {
    font-size: 20px !important;
  }

  .oztp-modal-info p {
    font-size: 14px !important;
    line-height: 1.55 !important;
  }
}

@media(max-width: 420px) {
  .oztp-card {
    grid-template-columns: 104px 1fr !important;
  }

  .oztp-card-image,
  .oztp-card-noimage {
    min-height: 126px !important;
  }

  .oztp-card-body {
    padding: 11px !important;
  }

  .oztp-card h3 {
    font-size: 14px !important;
    -webkit-line-clamp: 4 !important;
  }

  .oztp-gallery-main {
    height: 260px !important;
  }

  .oztp-thumb {
    height: 56px !important;
  }
}


/* ===== services-patch.css ===== */

/* ===== SERVICES PAGE CLEAN v2 ===== */

body.ozt-services-page {
  background: #f1f2f4 !important;
}

body.ozt-services-page main {
  display: none !important;
}

#ozt-services-root {
  background: #f1f2f4;
  color: #111;
  font-family: "Manrope", Inter, Arial, sans-serif;
}

#ozt-services-root * {
  box-sizing: border-box;
  border-radius: 0 !important;
}

.ozts-wrap {
  width: 1180px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
}

.ozts-hero {
  min-height: 430px;
  display: flex;
  align-items: center;
  background:
    linear-gradient(90deg, rgba(18,22,28,.82), rgba(18,22,28,.58), rgba(18,22,28,.22)),
    url('/images/hero-zav.webp') center / cover no-repeat;
}

.ozts-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #f5a61e;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.ozts-kicker::before {
  content: "";
  width: 30px;
  height: 2px;
  background: #f5a61e;
}

.ozts-hero h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(48px, 6vw, 84px);
  line-height: .92;
  font-weight: 900;
  letter-spacing: -0.075em;
  text-shadow: 0 4px 18px rgba(0,0,0,.28);
}

.ozts-hero p {
  max-width: 540px;
  margin: 22px 0 0;
  color: rgba(255,255,255,.92);
  font-size: 19px;
  line-height: 1.55;
  font-weight: 700;
  text-shadow: 0 3px 14px rgba(0,0,0,.22);
}

.ozts-main {
  padding: 64px 0 82px;
}

.ozts-head {
  margin-bottom: 28px;
}

.ozts-head h2 {
  margin: 0;
  font-size: 42px;
  line-height: 1.08;
  font-weight: 900;
  letter-spacing: -0.06em;
}

.ozts-head p {
  max-width: 720px;
  margin: 14px 0 0;
  color: #4f5867;
  font-size: 16px;
  line-height: 1.65;
}

.ozts-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.ozts-card {
  min-height: 230px;
  padding: 24px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 8px 22px rgba(0,0,0,.05);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.ozts-card:hover {
  transform: translateY(-4px);
  border-color: #f5a61e;
  box-shadow: 0 18px 36px rgba(0,0,0,.10);
}

.ozts-card small {
  display: block;
  margin-bottom: 16px;
  color: #d78900;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ozts-card h3 {
  margin: 0 0 12px;
  font-size: 22px;
  line-height: 1.16;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.ozts-card p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.6;
}

.ozts-cta {
  margin-top: 36px;
  padding: 34px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 28px;
  align-items: center;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
}

.ozts-cta h2 {
  margin: 0 0 10px;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.ozts-cta p {
  margin: 0;
  color: #4f5867;
  font-size: 15px;
  line-height: 1.6;
}

.ozts-cta a {
  height: 52px;
  padding: 0 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f5a61e;
  color: #111 !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
  box-shadow: 0 12px 24px rgba(245,166,30,.25);
  transition: background .2s ease, transform .2s ease;
}

.ozts-cta a:hover {
  background: #e99400;
  transform: translateY(-2px);
}

@media(max-width: 980px) {
  .ozts-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .ozts-cta {
    grid-template-columns: 1fr;
  }
}

@media(max-width: 620px) {
  .ozts-hero {
    min-height: 340px;
  }

  .ozts-hero h1 {
    font-size: 46px;
  }

  .ozts-hero p {
    font-size: 16px;
  }

  .ozts-grid {
    grid-template-columns: 1fr;
  }

  .ozts-head h2,
  .ozts-cta h2 {
    font-size: 30px;
  }
}

/* ===== SERVICES v3: картинки в карточках ===== */

.ozts-card {
  padding: 0 !important;
  overflow: hidden !important;
}

.ozts-card-img {
  height: 170px !important;
  background: #eef0f3 !important;
  overflow: hidden !important;
}

.ozts-card-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform .35s ease !important;
}

.ozts-card:hover .ozts-card-img img {
  transform: scale(1.045) !important;
}

.ozts-card small,
.ozts-card h3,
.ozts-card p {
  margin-left: 22px !important;
  margin-right: 22px !important;
}

.ozts-card small {
  margin-top: 20px !important;
}

.ozts-card p {
  margin-bottom: 24px !important;
}

@media(max-width: 760px) {
  .ozts-card-img {
    height: 190px !important;
  }
}

/* ===== SERVICES DETAIL PAGES v4 ===== */

.ozts-card {
  color: #111 !important;
  text-decoration: none !important;
}

.ozts-detail-hero {
  min-height: 420px;
  display: flex;
  align-items: center;
  background-size: cover;
  background-position: center;
}

.ozts-detail-hero h1 {
  max-width: 760px;
  margin: 0;
  color: #fff;
  font-size: clamp(42px, 5vw, 76px);
  line-height: .96;
  font-weight: 900;
  letter-spacing: -0.07em;
  text-shadow: 0 4px 18px rgba(0,0,0,.28);
}

.ozts-detail-hero p {
  max-width: 680px;
  margin: 22px 0 0;
  color: rgba(255,255,255,.92);
  font-size: 18px;
  line-height: 1.6;
  font-weight: 700;
  text-shadow: 0 3px 14px rgba(0,0,0,.22);
}

.ozts-back {
  display: inline-flex;
  margin-bottom: 20px;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px;
  font-weight: 900;
  opacity: .9;
}

.ozts-back:hover {
  color: #f5a61e !important;
}

.ozts-detail-main {
  padding: 64px 0 90px;
  background: #f1f2f4;
}

.ozts-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 30px;
  align-items: start;
}

.ozts-detail-block {
  margin-bottom: 24px;
  padding: 34px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 8px 22px rgba(0,0,0,.05);
}

.ozts-detail-block h2 {
  margin: 0 0 16px;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.ozts-detail-block > p {
  max-width: 760px;
  margin: 0 0 22px;
  color: #4f5867;
  font-size: 16px;
  line-height: 1.7;
}

.ozts-work-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.ozts-work-item {
  padding: 15px 16px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
  color: #2f3743;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 800;
}

.ozts-steps {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}

.ozts-step {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
}

.ozts-step span {
  display: inline-flex;
  margin-bottom: 14px;
  color: #d78900;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
}

.ozts-step h3 {
  margin: 0 0 8px;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.ozts-step p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

.ozts-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.ozts-gallery-item {
  height: 190px;
  padding: 0;
  border: 1px solid #d5d9e1;
  background: #eef0f3;
  cursor: pointer;
  overflow: hidden;
}

.ozts-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}

.ozts-gallery-item:hover img {
  transform: scale(1.045);
}

.ozts-faq {
  display: grid;
  gap: 10px;
}

.ozts-faq details {
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
}

.ozts-faq summary {
  padding: 16px 18px;
  cursor: pointer;
  color: #111;
  font-size: 15px;
  font-weight: 900;
}

.ozts-faq p {
  margin: 0;
  padding: 0 18px 18px;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.6;
}

.ozts-side {
  position: sticky;
  top: 104px;
  display: grid;
  gap: 16px;
}

.ozts-side-card {
  padding: 24px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 8px 22px rgba(0,0,0,.05);
}

.ozts-side-card h3 {
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.ozts-side-card p {
  margin: 0 0 18px;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

.ozts-side-card a {
  height: 46px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f5a61e;
  color: #111 !important;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
}

.ozts-side-list {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
}

.ozts-side-list strong {
  display: block;
  margin-bottom: 12px;
  color: #777;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ozts-side-list a {
  display: block;
  padding: 12px 0;
  border-top: 1px solid #eceff3;
  color: #111 !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
}

.ozts-side-list a:hover {
  color: #d78900 !important;
}

.ozts-img-modal {
  position: fixed;
  inset: 0;
  z-index: 200000;
  padding: 28px;
  display: grid;
  place-items: center;
  background: rgba(20,22,26,.76);
}

.ozts-img-modal img {
  max-width: 96vw;
  max-height: 90vh;
  object-fit: contain;
  background: #fff;
}

.ozts-img-modal button {
  position: fixed;
  right: 24px;
  top: 24px;
  width: 46px;
  height: 46px;
  border: 0;
  background: #f5a61e;
  color: #111;
  font-size: 28px;
  font-weight: 900;
  cursor: pointer;
}

@media(max-width: 980px) {
  .ozts-detail-layout,
  .ozts-work-list,
  .ozts-steps,
  .ozts-gallery {
    grid-template-columns: 1fr;
  }

  .ozts-side {
    position: static;
  }
}

@media(max-width: 620px) {
  .ozts-detail-hero {
    min-height: 340px;
  }

  .ozts-detail-hero h1 {
    font-size: 38px;
  }

  .ozts-detail-hero p {
    font-size: 15px;
  }

  .ozts-detail-block {
    padding: 22px;
  }

  .ozts-detail-block h2 {
    font-size: 28px;
  }

  .ozts-gallery-item {
    height: 220px;
  }
}


/* ===== service-zav-detail.css ===== */

/* ===== SERVICE DETAIL: STROITELSTVO ZAV v1 ===== */

/* фикс: не скрывать main внутри нашей страницы услуги */
#ozt-services-root main,
#ozt-services-root .ozts-zav-content {
  display: block !important;
}

body.ozt-services-page > main {
  display: none !important;
}

.ozts-zav-page {
  background: #f1f2f4;
  color: #111;
  font-family: "Manrope", Inter, Arial, sans-serif;
}

.ozts-zav-page * {
  box-sizing: border-box;
  border-radius: 0 !important;
}

.ozts-zav-wrap {
  width: 1180px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
}

.ozts-zav-hero {
  min-height: 440px;
  display: flex;
  align-items: center;
  background:
    linear-gradient(90deg, rgba(18,22,28,.84), rgba(18,22,28,.58), rgba(18,22,28,.20)),
    url('/images/zav-complex.webp') center / cover no-repeat;
}

.ozts-zav-back {
  display: inline-flex;
  margin-bottom: 20px;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px;
  font-weight: 900;
  opacity: .9;
}

.ozts-zav-back:hover {
  color: #f5a61e !important;
}

.ozts-zav-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #f5a61e;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.ozts-zav-kicker::before {
  content: "";
  width: 30px;
  height: 2px;
  background: #f5a61e;
}

.ozts-zav-hero h1 {
  max-width: 760px;
  margin: 0;
  color: #fff;
  font-size: clamp(42px, 5vw, 76px);
  line-height: .96;
  font-weight: 900;
  letter-spacing: -0.07em;
  text-shadow: 0 4px 18px rgba(0,0,0,.28);
}

.ozts-zav-hero p {
  max-width: 700px;
  margin: 22px 0 0;
  color: rgba(255,255,255,.92);
  font-size: 18px;
  line-height: 1.6;
  font-weight: 700;
  text-shadow: 0 3px 14px rgba(0,0,0,.22);
}

.ozts-zav-main {
  padding: 64px 0 90px;
}

.ozts-zav-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 30px;
  align-items: start;
}

.ozts-zav-block {
  margin-bottom: 24px;
  padding: 34px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 8px 22px rgba(0,0,0,.05);
}

.ozts-zav-block h2 {
  margin: 0 0 16px;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.055em;
}

.ozts-zav-block > p {
  max-width: 780px;
  margin: 0 0 22px;
  color: #4f5867;
  font-size: 16px;
  line-height: 1.7;
}

.ozts-zav-lead-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 24px;
  align-items: start;
}

.ozts-zav-lead-text p {
  margin: 0 0 16px;
  color: #4f5867;
  font-size: 16px;
  line-height: 1.7;
}

.ozts-zav-lead-text strong {
  color: #111;
}

.ozts-zav-lead-img {
  padding: 10px;
  background: #fff;
  border: 1px solid #d5d9e1;
  box-shadow: 0 12px 28px rgba(0,0,0,.10);
}

.ozts-zav-lead-img img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  display: block;
}

.ozts-zav-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.ozts-zav-list-item {
  padding: 16px 18px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
  color: #2f3743;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 800;
}

.ozts-zav-scheme {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.ozts-zav-scheme-item {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
  min-height: 150px;
}

.ozts-zav-scheme-item span {
  display: inline-flex;
  margin-bottom: 12px;
  color: #d78900;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
}

.ozts-zav-scheme-item h3 {
  margin: 0 0 8px;
  font-size: 19px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.ozts-zav-scheme-item p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

.ozts-zav-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.ozts-zav-gallery button {
  height: 180px;
  padding: 0;
  border: 1px solid #d5d9e1;
  background: #eef0f3;
  cursor: pointer;
  overflow: hidden;
}

.ozts-zav-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}

.ozts-zav-gallery button:hover img {
  transform: scale(1.045);
}

.ozts-zav-faq {
  display: grid;
  gap: 10px;
}

.ozts-zav-faq details {
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
}

.ozts-zav-faq summary {
  padding: 17px 18px;
  cursor: pointer;
  color: #111;
  font-size: 15px;
  font-weight: 900;
}

.ozts-zav-faq p {
  margin: 0;
  padding: 0 18px 18px;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.65;
}

.ozts-zav-side {
  position: sticky;
  top: 104px;
  display: grid;
  gap: 16px;
}

.ozts-zav-side-card {
  padding: 24px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 4px solid #f5a61e;
  box-shadow: 0 8px 22px rgba(0,0,0,.05);
}

.ozts-zav-side-card h3 {
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -0.04em;
}

.ozts-zav-side-card p {
  margin: 0 0 18px;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

.ozts-zav-side-card a {
  height: 46px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f5a61e;
  color: #111 !important;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
}

.ozts-zav-side-list {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
}

.ozts-zav-side-list strong {
  display: block;
  margin-bottom: 12px;
  color: #777;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ozts-zav-side-list a {
  display: block;
  padding: 12px 0;
  border-top: 1px solid #eceff3;
  color: #111 !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
}

.ozts-zav-side-list a:hover {
  color: #d78900 !important;
}

.ozts-zav-img-modal {
  position: fixed;
  inset: 0;
  z-index: 200000;
  padding: 28px;
  display: grid;
  place-items: center;
  background: rgba(20,22,26,.76);
}

.ozts-zav-img-modal img {
  max-width: 96vw;
  max-height: 90vh;
  object-fit: contain;
  background: #fff;
}

.ozts-zav-img-modal button {
  position: fixed;
  right: 24px;
  top: 24px;
  width: 46px;
  height: 46px;
  border: 0;
  background: #f5a61e;
  color: #111;
  font-size: 28px;
  font-weight: 900;
  cursor: pointer;
}

@media(max-width: 980px) {
  .ozts-zav-layout,
  .ozts-zav-lead-grid,
  .ozts-zav-list,
  .ozts-zav-scheme,
  .ozts-zav-gallery {
    grid-template-columns: 1fr;
  }

  .ozts-zav-side {
    position: static;
  }
}

@media(max-width: 620px) {
  .ozts-zav-hero {
    min-height: 350px;
  }

  .ozts-zav-hero h1 {
    font-size: 40px;
  }

  .ozts-zav-hero p {
    font-size: 15px;
  }

  .ozts-zav-block {
    padding: 22px;
  }

  .ozts-zav-block h2 {
    font-size: 28px;
  }

  .ozts-zav-gallery button {
    height: 220px;
  }
}


/* ===== service-recon-detail.css ===== */

/* ===== SERVICE DETAIL: REKONSTRUKCIYA ZAV I MEHTOKOV ===== */

#ozt-services-root main,
#ozt-services-root .ozts-recon-content {
  display: block !important;
}

body.ozt-services-page > main {
  display: none !important;
}

.ozts-recon-page .ozts-zav-hero {
  background:
    linear-gradient(90deg, rgba(18,22,28,.84), rgba(18,22,28,.58), rgba(18,22,28,.20)),
    url('/images/zav-modernization.webp') center / cover no-repeat !important;
}

.ozts-recon-problem-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.ozts-recon-problem {
  padding: 18px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
}

.ozts-recon-problem h3 {
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.03em;
}

.ozts-recon-problem p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

@media(max-width: 980px) {
  .ozts-recon-problem-grid {
    grid-template-columns: 1fr;
  }
}


/* ===== service-dryer-detail.css ===== */

/* ===== SERVICE DETAIL: MONTAZH ZERNOSUSHILOK ===== */

#ozt-services-root main,
#ozt-services-root .ozts-dryer-content {
  display: block !important;
}

body.ozt-services-page > main {
  display: none !important;
}

.ozts-dryer-page .ozts-zav-hero {
  background:
    linear-gradient(90deg, rgba(18,22,28,.84), rgba(18,22,28,.58), rgba(18,22,28,.20)),
    url('/images/grain-dryer.webp') center / cover no-repeat !important;
}

.ozts-dryer-types {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.ozts-dryer-type {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
}

.ozts-dryer-type h3 {
  margin: 0 0 8px;
  font-size: 19px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.ozts-dryer-type p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

@media(max-width: 980px) {
  .ozts-dryer-types {
    grid-template-columns: 1fr;
  }
}


/* ===== service-hangar-detail.css ===== */

/* ===== SERVICE DETAIL: STROITELSTVO ANGAROV ===== */

#ozt-services-root main,
#ozt-services-root .ozts-hangar-content {
  display: block !important;
}

body.ozt-services-page > main {
  display: none !important;
}

.ozts-hangar-page .ozts-zav-hero {
  background:
    linear-gradient(90deg, rgba(18,22,28,.84), rgba(18,22,28,.58), rgba(18,22,28,.20)),
    url('/images/hangar-outside.webp') center / cover no-repeat !important;
}

.ozts-hangar-types {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.ozts-hangar-type {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
}

.ozts-hangar-type h3 {
  margin: 0 0 8px;
  font-size: 19px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.ozts-hangar-type p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

@media(max-width: 980px) {
  .ozts-hangar-types {
    grid-template-columns: 1fr;
  }
}


/* ===== service-silo-detail.css ===== */

/* ===== SERVICE DETAIL: SILOSNYE ZERNOHRANILISHCHA ===== */

#ozt-services-root main,
#ozt-services-root .ozts-silo-content {
  display: block !important;
}

body.ozt-services-page > main {
  display: none !important;
}

.ozts-silo-page .ozts-zav-hero {
  background:
    linear-gradient(90deg, rgba(18,22,28,.84), rgba(18,22,28,.58), rgba(18,22,28,.20)),
    url('/images/silo-complex.webp') center / cover no-repeat !important;
}

.ozts-silo-types {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.ozts-silo-type {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
}

.ozts-silo-type h3 {
  margin: 0 0 8px;
  font-size: 19px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.ozts-silo-type p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

@media(max-width: 980px) {
  .ozts-silo-types {
    grid-template-columns: 1fr;
  }
}


/* ===== service-metal-detail.css ===== */

/* ===== SERVICE DETAIL: METALLOKONSTRUKCII ===== */

#ozt-services-root main,
#ozt-services-root .ozts-metal-content {
  display: block !important;
}

body.ozt-services-page > main {
  display: none !important;
}

.ozts-metal-page .ozts-zav-hero {
  background:
    linear-gradient(90deg, rgba(18,22,28,.84), rgba(18,22,28,.58), rgba(18,22,28,.20)),
    url('/images/steel-production.webp') center / cover no-repeat !important;
}

.ozts-metal-types {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.ozts-metal-type {
  padding: 20px;
  background: #fff;
  border: 1px solid #d5d9e1;
  border-left: 3px solid #f5a61e;
}

.ozts-metal-type h3 {
  margin: 0 0 8px;
  font-size: 19px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: -0.035em;
}

.ozts-metal-type p {
  margin: 0;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.55;
}

@media(max-width: 980px) {
  .ozts-metal-types {
    grid-template-columns: 1fr;
  }
}


/* ===== service-detail-ui-fix.css ===== */

/* ===== SERVICE DETAIL UI FIX ===== */

/* в hero детальной услуги не нужен оранжевый ярлык "Услуга" */
.ozts-zav-hero > .ozts-zav-wrap > .ozts-zav-kicker {
  display: none !important;
}

/* ссылка назад должна быть отдельной строкой */
.ozts-zav-hero .ozts-zav-back {
  display: flex !important;
  width: max-content !important;
  margin-bottom: 22px !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* чтобы длинные заголовки типа "Металлоконструкции" не выглядели криво */
.ozts-zav-hero h1 {
  max-width: 980px !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

@media(max-width: 760px) {
  .ozts-zav-hero h1 {
    max-width: 100% !important;
    font-size: 40px !important;
    line-height: 1 !important;
    letter-spacing: -0.055em !important;
  }
}


/* ===== lead-modal.css ===== */

/* ===== GLOBAL LEAD MODAL ===== */

.ozt-lead-lock {
  overflow: hidden !important;
}

.ozt-lead-overlay {
  position: fixed;
  inset: 0;
  z-index: 300000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 22px;
  background: rgba(0,0,0,.66);
}

.ozt-lead-overlay.is-open {
  display: flex;
}

.ozt-lead-modal {
  position: relative;
  width: 560px;
  max-width: 100%;
  max-height: calc(100vh - 44px);
  overflow: auto;
  background: #fff;
  padding: 44px 48px 48px;
  box-shadow: 0 28px 90px rgba(0,0,0,.35);
  color: #333;
  font-family: "Manrope", Inter, Arial, sans-serif;
  border-radius: 8px;
}

.ozt-lead-close {
  position: absolute;
  right: 22px;
  top: 20px;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #8c8fa3;
  font-size: 34px;
  line-height: 28px;
  font-weight: 300;
  cursor: pointer;
}

.ozt-lead-close:hover {
  color: #111;
}

.ozt-lead-title {
  margin: 0 0 30px;
  color: #4a4a4a;
  font-size: 40px;
  line-height: 1.1;
  font-weight: 400;
  letter-spacing: -0.04em;
}

.ozt-lead-form {
  display: grid;
  gap: 18px;
}

.ozt-lead-field {
  width: 100%;
  height: 48px;
  padding: 0 14px;
  border: 1px solid #d7dbe5;
  background: #fff;
  color: #222;
  font-size: 18px;
  line-height: 1.2;
  outline: none;
  border-radius: 6px;
}

.ozt-lead-field:focus {
  border-color: #f5a61e;
  box-shadow: 0 0 0 3px rgba(245,166,30,.16);
}

.ozt-lead-field::placeholder {
  color: #8b8b8b;
}

textarea.ozt-lead-field {
  height: 92px;
  padding-top: 14px;
  resize: vertical;
}

.ozt-lead-agree {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 14px;
  align-items: start;
  margin: 4px 0 8px;
  color: #555;
  font-size: 18px;
  line-height: 1.45;
  cursor: pointer;
}

.ozt-lead-agree input {
  appearance: none;
  width: 26px;
  height: 26px;
  margin: 1px 0 0;
  border: 1.5px solid #111;
  background: #fff;
  border-radius: 6px;
  cursor: pointer;
}

.ozt-lead-agree input:checked {
  background:
    linear-gradient(135deg, transparent 48%, #111 49%, #111 56%, transparent 57%),
    linear-gradient(45deg, transparent 42%, #111 43%, #111 50%, transparent 51%);
  background-color: #fff;
}

.ozt-lead-agree a {
  color: #444;
  text-decoration: underline;
}

.ozt-lead-submit {
  height: 58px;
  border: 0;
  background: #2d2d33;
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  cursor: pointer;
  border-radius: 6px;
}

.ozt-lead-submit:hover {
  background: #1f1f24;
}

.ozt-lead-status {
  display: none;
  padding: 14px 16px;
  background: #fff8e9;
  border-left: 4px solid #f5a61e;
  color: #333;
  font-size: 15px;
  line-height: 1.45;
}

.ozt-lead-status.is-show {
  display: block;
}

@media(max-width: 620px) {
  .ozt-lead-overlay {
    padding: 14px;
  }

  .ozt-lead-modal {
    padding: 34px 22px 28px;
  }

  .ozt-lead-title {
    font-size: 34px;
  }

  .ozt-lead-field {
    font-size: 16px;
  }

  .ozt-lead-agree {
    font-size: 15px;
  }
}


/* ===== page-hero-photo-fix.css ===== */

/* ===== PAGE HERO PHOTO FIX ===== */

/* Услуги: отдельная нормальная фотка */
body.ozt-services-page #ozt-services-root .ozts-hero {
  background:
    linear-gradient(90deg, rgba(18,22,28,.80), rgba(18,22,28,.55), rgba(18,22,28,.18)),
    url('/images/zav-complex.webp') center / cover no-repeat !important;
}

/* Контакты: другая фотка, чтобы не повторялась с услугами */
body.ozt-contacts-page #ozt-contacts-root section:first-child,
body.ozt-contacts-page #ozt-contacts-root .oztc-hero,
body.ozt-contacts-page #ozt-contacts-root [class*="hero"] {
  background:
    linear-gradient(90deg, rgba(18,22,28,.78), rgba(18,22,28,.50), rgba(18,22,28,.18)),
    url('/images/silo-complex.webp') center / cover no-repeat !important;
}

/* Если старый баннер был вложенным div */
body.ozt-contacts-page #ozt-contacts-root section:first-child > div,
body.ozt-contacts-page #ozt-contacts-root .oztc-hero > div {
  position: relative !important;
  z-index: 2 !important;
}

/* Не даем старым картинкам тянуться отдельным img в hero */
body.ozt-services-page #ozt-services-root .ozts-hero img,
body.ozt-contacts-page #ozt-contacts-root section:first-child > img,
body.ozt-contacts-page #ozt-contacts-root .oztc-hero > img {
  display: none !important;
}


/* ===== hero-bg-blur.css ===== */

/* ===== BLUR HERO BACKGROUNDS ===== */

.ozt-hero-blur-bg {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: #1d232b !important;
}

.ozt-hero-blur-bg::before {
  content: "" !important;
  position: absolute !important;
  inset: -18px !important;
  z-index: 0 !important;
  background-image: var(--ozt-hero-bg-url) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  filter: blur(9px) saturate(.95) !important;
  transform: scale(1.06) !important;
  opacity: .92 !important;
}

.ozt-hero-blur-bg::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(90deg, rgba(18,22,28,.84), rgba(18,22,28,.58), rgba(18,22,28,.22)) !important;
  pointer-events: none !important;
}

.ozt-hero-blur-bg > * {
  position: relative !important;
  z-index: 2 !important;
}

/* чуть мягче на общей странице услуг/контактов */
#ozt-services-root .ozts-hero.ozt-hero-blur-bg::before,
#ozt-contacts-root .ozt-hero-blur-bg::before {
  filter: blur(10px) saturate(.9) !important;
  transform: scale(1.07) !important;
}

/* чтобы не появлялись края от blur */
.ozt-hero-blur-bg {
  background-color: #222933 !important;
}


/* ===== company-hero-blur-fix.css ===== */

/* ===== COMPANY HERO BLUR FIX ===== */

#ozt-company-root .ozt-company-hero-blur {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: #222933 !important;
}

#ozt-company-root .ozt-company-hero-blur::before {
  content: "" !important;
  position: absolute !important;
  inset: -18px !important;
  z-index: 0 !important;
  background-image: var(--ozt-hero-bg-url) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  filter: blur(10px) saturate(.92) !important;
  transform: scale(1.07) !important;
  opacity: .94 !important;
}

#ozt-company-root .ozt-company-hero-blur::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(18,22,28,.82), rgba(18,22,28,.56), rgba(18,22,28,.20)) !important;
  pointer-events: none !important;
}

#ozt-company-root .ozt-company-hero-blur > * {
  position: relative !important;
  z-index: 2 !important;
}


/* ===== home-safe-hero.css ===== */

/* ===== HOME SAFE HERO ===== */

body.ozt-home-page .ozt-safe-home-hero {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  height: calc(100svh - 76px) !important;
  min-height: 520px !important;
  max-height: 680px !important;
  display: flex !important;
  align-items: center !important;
  background: #141922 !important;
}

body.ozt-home-page .ozt-safe-home-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: -24px !important;
  z-index: 0 !important;
  background-image: var(--ozt-home-bg, url('/images/zav-complex.webp')) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  filter: blur(3px) saturate(.96) contrast(1) !important;
  transform: scale(1.06) !important;
  transition: background-image .8s ease !important;
}

body.ozt-home-page .ozt-safe-home-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    radial-gradient(circle at 24% 38%, rgba(245,166,30,.14), transparent 32%),
    linear-gradient(90deg, rgba(12,16,22,.91), rgba(12,16,22,.70), rgba(12,16,22,.30)) !important;
  pointer-events: none !important;
}

body.ozt-home-page .ozt-safe-home-hero > * {
  position: relative !important;
  z-index: 2 !important;
}

/* убираем квиз на первом экране */
body.ozt-home-page .ozt-home-hide-quiz {
  display: none !important;
}

/* прячем отдельную левую картинку, если она была в hero */
body.ozt-home-page .ozt-home-hide-visual {
  display: none !important;
}

/* текстовый контейнер */
body.ozt-home-page .ozt-safe-home-hero h1 {
  max-width: 1080px !important;
  font-size: clamp(40px, 4vw, 62px) !important;
  line-height: 1.03 !important;
  letter-spacing: -0.06em !important;
  font-weight: 900 !important;
}

body.ozt-home-page .ozt-safe-home-hero p {
  max-width: 680px !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
}

/* если исходный layout был в 2 колонки — растягиваем текст */
body.ozt-home-page .ozt-safe-home-hero [class*="grid"],
body.ozt-home-page .ozt-safe-home-hero [class*="Grid"] {
  grid-template-columns: 1fr !important;
}

body.ozt-home-page .ozt-safe-home-hero [class*="hero"] {
  max-width: 1180px !important;
}

@media(max-width: 760px) {
  body.ozt-home-page .ozt-safe-home-hero {
    height: auto !important;
    min-height: 540px !important;
  }

  body.ozt-home-page .ozt-safe-home-hero h1 {
    font-size: 38px !important;
    line-height: 1.04 !important;
  }

  body.ozt-home-page .ozt-safe-home-hero p {
    font-size: 15px !important;
  }
}


/* ===== home-services-links.css ===== */

/* ===== HOME SERVICES FULL CARD CLICK ===== */

.ozt-home-service-clickable {
  cursor: pointer !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

.ozt-home-service-clickable:hover {
  transform: translateY(-4px) !important;
  border-color: #f5a61e !important;
  box-shadow: 0 18px 38px rgba(0,0,0,.12) !important;
}

.ozt-home-service-clickable:hover h2,
.ozt-home-service-clickable:hover h3,
.ozt-home-service-clickable:hover h4,
.ozt-home-service-clickable:hover strong {
  color: #d78900 !important;
}

.ozt-home-service-clickable img {
  pointer-events: none !important;
}

.ozt-home-service-clickable a {
  position: relative !important;
  z-index: 2 !important;
}


/* ===== home-cycle-fix.css ===== */

/* ===== HOME CYCLE BLOCK FIX v2 ===== */

body.ozt-home-page .ozt-home-cycle-clean {
  background: #e4e7ec !important;
  color: #111 !important;
  padding: 84px 0 92px !important;
  overflow: hidden !important;
  border-top: 1px solid #d3d7df !important;
  border-bottom: 1px solid #d3d7df !important;
}

body.ozt-home-page .ozt-home-cycle-clean * {
  box-sizing: border-box !important;
}

body.ozt-home-page .ozt-home-cycle-wrap {
  width: 1180px !important;
  max-width: calc(100% - 32px) !important;
  margin: 0 auto !important;
}

body.ozt-home-page .ozt-home-cycle-top {
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
  gap: 46px !important;
  align-items: center !important;
  margin-bottom: 34px !important;
}

body.ozt-home-page .ozt-home-cycle-kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
  color: #d78900 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}

body.ozt-home-page .ozt-home-cycle-kicker::before {
  content: "" !important;
  width: 32px !important;
  height: 2px !important;
  background: #f5a61e !important;
}

body.ozt-home-page .ozt-home-cycle-clean h2 {
  max-width: 680px !important;
  margin: 0 0 20px !important;
  color: #111 !important;
  font-size: clamp(38px, 4vw, 60px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.065em !important;
  font-weight: 900 !important;
}

body.ozt-home-page .ozt-home-cycle-lead {
  max-width: 620px !important;
  margin: 0 0 20px !important;
  color: #374151 !important;
  font-size: 18px !important;
  line-height: 1.72 !important;
  font-weight: 600 !important;
}

body.ozt-home-page .ozt-home-cycle-note {
  max-width: 620px !important;
  margin: 0 0 24px !important;
  color: #586273 !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

body.ozt-home-page .ozt-home-cycle-points {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  max-width: 620px !important;
}

body.ozt-home-page .ozt-home-cycle-points span {
  padding: 13px 14px !important;
  background: #fff !important;
  border: 1px solid #d0d5de !important;
  border-left: 3px solid #f5a61e !important;
  color: #222 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.04) !important;
}

body.ozt-home-page .ozt-home-cycle-gallery {
  display: grid !important;
  grid-template-columns: 1.1fr .9fr !important;
  gap: 14px !important;
  align-items: stretch !important;
}

body.ozt-home-page .ozt-home-cycle-gallery img {
  width: 100% !important;
  height: 100% !important;
  min-height: 210px !important;
  display: block !important;
  object-fit: cover !important;
  border: 1px solid #cfd4dd !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.10) !important;
}

body.ozt-home-page .ozt-home-cycle-gallery img:first-child {
  grid-row: span 2 !important;
  min-height: 438px !important;
}

body.ozt-home-page .ozt-home-cycle-steps {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
}

body.ozt-home-page .ozt-home-cycle-step {
  min-height: 218px !important;
  padding: 24px !important;
  background: #fff !important;
  border: 1px solid #cfd4dd !important;
  border-left: 4px solid #f5a61e !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.065) !important;
}

body.ozt-home-page .ozt-home-cycle-num {
  width: 42px !important;
  height: 42px !important;
  margin-bottom: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f5a61e !important;
  color: #111 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

body.ozt-home-page .ozt-home-cycle-step h3 {
  margin: 0 0 10px !important;
  color: #111 !important;
  font-size: 20px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -0.035em !important;
}

body.ozt-home-page .ozt-home-cycle-step p {
  margin: 0 !important;
  color: #4f5867 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

@media(max-width: 1100px) {
  body.ozt-home-page .ozt-home-cycle-top,
  body.ozt-home-page .ozt-home-cycle-steps {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media(max-width: 720px) {
  body.ozt-home-page .ozt-home-cycle-clean {
    padding: 56px 0 64px !important;
  }

  body.ozt-home-page .ozt-home-cycle-top,
  body.ozt-home-page .ozt-home-cycle-gallery,
  body.ozt-home-page .ozt-home-cycle-steps,
  body.ozt-home-page .ozt-home-cycle-points {
    grid-template-columns: 1fr !important;
  }

  body.ozt-home-page .ozt-home-cycle-gallery img,
  body.ozt-home-page .ozt-home-cycle-gallery img:first-child {
    min-height: 230px !important;
  }

  body.ozt-home-page .ozt-home-cycle-clean h2 {
    font-size: 34px !important;
  }

  body.ozt-home-page .ozt-home-cycle-lead {
    font-size: 16px !important;
  }
}


/* ===== home-animations-mobile.css ===== */

/* ===== HOME ANIMATIONS + MOBILE HERO ===== */

/* плавность */
body.ozt-home-page {
  overflow-x: hidden !important;
}

/* первый экран — анимация появления */
body.ozt-home-page .ozt-safe-home-hero h1,
body.ozt-home-page .ozt-safe-home-hero p,
body.ozt-home-page .ozt-safe-home-hero a,
body.ozt-home-page .ozt-safe-home-hero button,
body.ozt-home-page .ozt-safe-home-hero [class*="tag"],
body.ozt-home-page .ozt-safe-home-hero [class*="badge"],
body.ozt-home-page .ozt-safe-home-hero [class*="chip"] {
  animation: oztHeroUp .78s cubic-bezier(.2,.8,.2,1) both;
}

body.ozt-home-page .ozt-safe-home-hero h1 {
  animation-delay: .06s;
}

body.ozt-home-page .ozt-safe-home-hero p {
  animation-delay: .16s;
}

body.ozt-home-page .ozt-safe-home-hero a,
body.ozt-home-page .ozt-safe-home-hero button {
  animation-delay: .26s;
}

body.ozt-home-page .ozt-safe-home-hero [class*="tag"],
body.ozt-home-page .ozt-safe-home-hero [class*="badge"],
body.ozt-home-page .ozt-safe-home-hero [class*="chip"] {
  animation-delay: .36s;
}

/* фон первого экрана чуть живой */
body.ozt-home-page .ozt-safe-home-hero::before {
  animation: oztHeroBgMove 18s ease-in-out infinite alternate;
}

/* общие reveal-анимации */
.ozt-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity .72s cubic-bezier(.2,.8,.2,1),
    transform .72s cubic-bezier(.2,.8,.2,1);
  will-change: opacity, transform;
}

.ozt-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.ozt-reveal-left {
  opacity: 0;
  transform: translateX(-34px);
  transition:
    opacity .78s cubic-bezier(.2,.8,.2,1),
    transform .78s cubic-bezier(.2,.8,.2,1);
}

.ozt-reveal-left.is-visible {
  opacity: 1;
  transform: translateX(0);
}

.ozt-reveal-right {
  opacity: 0;
  transform: translateX(34px);
  transition:
    opacity .78s cubic-bezier(.2,.8,.2,1),
    transform .78s cubic-bezier(.2,.8,.2,1);
}

.ozt-reveal-right.is-visible {
  opacity: 1;
  transform: translateX(0);
}

/* карточки услуг/этапов — мягкое появление каскадом */
.ozt-home-service-clickable,
.ozt-home-cycle-step,
.ozt-home-cycle-gallery img {
  transition:
    opacity .72s cubic-bezier(.2,.8,.2,1),
    transform .72s cubic-bezier(.2,.8,.2,1),
    box-shadow .22s ease,
    border-color .22s ease !important;
}

.ozt-home-service-clickable:hover,
.ozt-home-cycle-step:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 20px 42px rgba(0,0,0,.12) !important;
}

.ozt-home-cycle-gallery img {
  transform-origin: center;
}

.ozt-home-cycle-gallery img:hover {
  transform: scale(1.025) !important;
}

/* цифры/статы — чуть живее */
body.ozt-home-page [class*="stat"],
body.ozt-home-page [class*="Stat"] {
  transition: transform .22s ease, box-shadow .22s ease !important;
}

body.ozt-home-page [class*="stat"]:hover,
body.ozt-home-page [class*="Stat"]:hover {
  transform: translateY(-4px) !important;
}

/* мобильная оптимизация первого блока */
@media(max-width: 760px) {
  body.ozt-home-page .ozt-safe-home-hero {
    height: auto !important;
    min-height: calc(100svh - 66px) !important;
    max-height: none !important;
    padding: 34px 0 38px !important;
    align-items: center !important;
  }

  body.ozt-home-page .ozt-safe-home-hero > * {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.ozt-home-page .ozt-safe-home-hero h1 {
    max-width: 100% !important;
    margin-bottom: 16px !important;
    font-size: clamp(32px, 10vw, 43px) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.055em !important;
  }

  body.ozt-home-page .ozt-safe-home-hero p {
    max-width: 100% !important;
    margin-bottom: 18px !important;
    font-size: 15.5px !important;
    line-height: 1.55 !important;
  }

  body.ozt-home-page .ozt-safe-home-hero a,
  body.ozt-home-page .ozt-safe-home-hero button {
    width: 100% !important;
    min-height: 48px !important;
    margin-right: 0 !important;
    justify-content: center !important;
  }

  body.ozt-home-page .ozt-safe-home-hero [class*="tag"],
  body.ozt-home-page .ozt-safe-home-hero [class*="badge"],
  body.ozt-home-page .ozt-safe-home-hero [class*="chip"] {
    display: inline-flex !important;
    margin: 4px 4px 0 0 !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  body.ozt-home-page .ozt-safe-home-hero::before {
    filter: blur(2px) saturate(.96) contrast(1) !important;
    transform: scale(1.035) !important;
  }

  body.ozt-home-page .ozt-safe-home-hero::after {
    background:
      linear-gradient(90deg, rgba(12,16,22,.88), rgba(12,16,22,.66)),
      linear-gradient(0deg, rgba(12,16,22,.22), rgba(12,16,22,.08)) !important;
  }
}

@media(max-width: 420px) {
  body.ozt-home-page .ozt-safe-home-hero {
    min-height: calc(100svh - 62px) !important;
    padding-top: 28px !important;
    padding-bottom: 30px !important;
  }

  body.ozt-home-page .ozt-safe-home-hero h1 {
    font-size: 31px !important;
  }

  body.ozt-home-page .ozt-safe-home-hero p {
    font-size: 14.5px !important;
  }
}

/* меньше анимаций для тех, у кого отключены движения */
@media(prefers-reduced-motion: reduce) {
  .ozt-reveal,
  .ozt-reveal-left,
  .ozt-reveal-right,
  body.ozt-home-page .ozt-safe-home-hero h1,
  body.ozt-home-page .ozt-safe-home-hero p,
  body.ozt-home-page .ozt-safe-home-hero a,
  body.ozt-home-page .ozt-safe-home-hero button {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

@keyframes oztHeroUp {
  from {
    opacity: 0;
    transform: translateY(22px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes oztHeroBgMove {
  from {
    transform: scale(1.035) translate3d(-8px, -4px, 0);
  }
  to {
    transform: scale(1.055) translate3d(10px, 6px, 0);
  }
}


/* ===== home-mobile-clean.css ===== */

/* ===== MOBILE HOME HERO CLEAN REBUILD ===== */

@media(max-width: 760px) {
  body.ozt-home-page .ozt-safe-home-hero {
    position: relative !important;
    min-height: calc(100svh - 78px) !important;
    height: auto !important;
    max-height: none !important;
    padding: 0 !important;
    display: block !important;
    overflow: hidden !important;
    isolation: isolate !important;
  }

  /* скрываем весь старый кривой контент внутри первого экрана */
  body.ozt-home-page .ozt-safe-home-hero.ozt-mobile-clean-hero > *:not(.ozt-mobile-clean-content) {
    display: none !important;
  }

  body.ozt-home-page .ozt-mobile-clean-content {
    position: relative !important;
    z-index: 3 !important;
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
    margin: 0 auto !important;
    padding: 30px 0 34px !important;
    color: #fff !important;
  }

  body.ozt-home-page .ozt-mobile-clean-kicker {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    margin: 0 0 12px !important;
    color: #f5a61e !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
  }

  body.ozt-home-page .ozt-mobile-clean-kicker::before {
    content: "" !important;
    width: 28px !important;
    height: 2px !important;
    background: #f5a61e !important;
    flex: 0 0 auto !important;
  }

  body.ozt-home-page .ozt-mobile-clean-content h1 {
    margin: 0 0 14px !important;
    color: #fff !important;
    font-size: clamp(29px, 8.2vw, 36px) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.055em !important;
    font-weight: 900 !important;
    text-shadow: 0 3px 16px rgba(0,0,0,.28) !important;
  }

  body.ozt-home-page .ozt-mobile-clean-content p {
    margin: 0 0 18px !important;
    color: rgba(255,255,255,.9) !important;
    font-size: 14.5px !important;
    line-height: 1.52 !important;
    font-weight: 700 !important;
    text-shadow: 0 2px 12px rgba(0,0,0,.2) !important;
  }

  body.ozt-home-page .ozt-mobile-clean-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin: 0 0 14px !important;
  }

  body.ozt-home-page .ozt-mobile-clean-actions a {
    min-height: 52px !important;
    padding: 0 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    font-size: 16px !important;
    font-weight: 900 !important;
  }

  body.ozt-home-page .ozt-mobile-clean-actions a:first-child {
    background: #f5a61e !important;
    color: #111 !important;
  }

  body.ozt-home-page .ozt-mobile-clean-actions a:last-child {
    background: rgba(255,255,255,.94) !important;
    color: #111 !important;
  }

  body.ozt-home-page .ozt-mobile-clean-tags {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
  }

  body.ozt-home-page .ozt-mobile-clean-tags span {
    min-width: 0 !important;
    padding: 8px 5px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255,255,255,.32) !important;
    background: rgba(255,255,255,.10) !important;
    color: #fff !important;
    text-align: center !important;
    font-size: 10px !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
    backdrop-filter: blur(6px) !important;
  }
}

@media(max-width: 420px) {
  body.ozt-home-page .ozt-mobile-clean-content {
    padding-top: 24px !important;
    padding-bottom: 30px !important;
  }

  body.ozt-home-page .ozt-mobile-clean-content h1 {
    font-size: 28px !important;
  }

  body.ozt-home-page .ozt-mobile-clean-tags span {
    font-size: 9.4px !important;
    padding: 7px 4px !important;
  }
}


/* ===== home-mobile-anim-tags-fix.css ===== */

/* ===== MOBILE HERO: STOP LOOP ANIMATION + BIGGER TAGS ===== */

@media(max-width: 760px) {
  /* отключить старую анимацию появления текста на мобильном hero */
  body.ozt-home-page .ozt-safe-home-hero .ozt-mobile-clean-content,
  body.ozt-home-page .ozt-safe-home-hero .ozt-mobile-clean-content *,
  body.ozt-home-page .ozt-mobile-clean-content,
  body.ozt-home-page .ozt-mobile-clean-content * {
    animation: none !important;
    transition-property: background, color, border-color, box-shadow, transform !important;
    opacity: 1 !important;
  }

  body.ozt-home-page .ozt-mobile-clean-content {
    transform: none !important;
  }

  /* три маленькие плашки — крупнее и выше */
  body.ozt-home-page .ozt-mobile-clean-tags {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
    margin-top: 2px !important;
  }

  body.ozt-home-page .ozt-mobile-clean-tags span {
    min-height: 46px !important;
    padding: 10px 6px !important;
    font-size: 11.6px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
  }
}

@media(max-width: 420px) {
  body.ozt-home-page .ozt-mobile-clean-tags {
    gap: 6px !important;
  }

  body.ozt-home-page .ozt-mobile-clean-tags span {
    min-height: 44px !important;
    padding: 9px 5px !important;
    font-size: 10.8px !important;
  }
}


/* ===== home-desktop-hero-fix.css ===== */

/* ===== FIX DESKTOP DUPLICATE HERO + STOP HERO LOOP ANIMATION ===== */

/* мобильный hero-блок никогда не показывать на ПК */
.ozt-mobile-clean-content {
  display: none !important;
}

/* на мобилке его снова включает home-mobile-clean.css */
@media(max-width: 760px) {
  .ozt-mobile-clean-content {
    display: block !important;
  }
}

/* отключаем повторяющуюся анимацию первого экрана */
body.ozt-home-page .ozt-safe-home-hero h1,
body.ozt-home-page .ozt-safe-home-hero p,
body.ozt-home-page .ozt-safe-home-hero a,
body.ozt-home-page .ozt-safe-home-hero button,
body.ozt-home-page .ozt-safe-home-hero [class*="tag"],
body.ozt-home-page .ozt-safe-home-hero [class*="badge"],
body.ozt-home-page .ozt-safe-home-hero [class*="chip"],
body.ozt-home-page .ozt-mobile-clean-content,
body.ozt-home-page .ozt-mobile-clean-content * {
  animation: none !important;
  opacity: 1 !important;
}

/* на ПК возвращаем нормальный один текстовый блок */
@media(min-width: 761px) {
  body.ozt-home-page .ozt-safe-home-hero {
    display: flex !important;
    align-items: center !important;
  }

  body.ozt-home-page .ozt-safe-home-hero > *:not(.ozt-mobile-clean-content) {
    display: initial;
  }

  body.ozt-home-page .ozt-safe-home-hero .ozt-mobile-clean-content {
    display: none !important;
  }

  body.ozt-home-page .ozt-safe-home-hero h1 {
    max-width: 1080px !important;
    font-size: clamp(40px, 4vw, 62px) !important;
    line-height: 1.03 !important;
    letter-spacing: -0.06em !important;
  }

  body.ozt-home-page .ozt-safe-home-hero p {
    max-width: 680px !important;
  }
}


/* ===== home-catalog-block-fix.css ===== */

/* ===== HOME CATALOG BLOCK FIX ===== */

body.ozt-home-page .ozt-home-catalog-clean {
  background: #eef0f3 !important;
  color: #111 !important;
  padding: 78px 0 86px !important;
  border-top: 1px solid #d7dce4 !important;
  border-bottom: 1px solid #d7dce4 !important;
}

body.ozt-home-page .ozt-home-catalog-clean * {
  box-sizing: border-box !important;
  border-radius: 0 !important;
}

body.ozt-home-page .ozt-home-catalog-wrap {
  width: 1180px !important;
  max-width: calc(100% - 32px) !important;
  margin: 0 auto !important;
}

body.ozt-home-catalog-clean,
body.ozt-home-page .ozt-home-catalog-clean {
  overflow: hidden !important;
}

body.ozt-home-page .ozt-home-catalog-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 28px !important;
  align-items: end !important;
  margin-bottom: 30px !important;
}

body.ozt-home-page .ozt-home-catalog-kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
  color: #d78900 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}

body.ozt-home-page .ozt-home-catalog-kicker::before {
  content: "" !important;
  width: 32px !important;
  height: 2px !important;
  background: #f5a61e !important;
}

body.ozt-home-page .ozt-home-catalog-clean h2 {
  max-width: 780px !important;
  margin: 0 !important;
  color: #111 !important;
  font-size: clamp(38px, 4vw, 60px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.065em !important;
  font-weight: 900 !important;
}

body.ozt-home-page .ozt-home-catalog-clean .ozt-home-catalog-intro {
  max-width: 640px !important;
  margin: 16px 0 0 !important;
  color: #4f5867 !important;
  font-size: 17px !important;
  line-height: 1.68 !important;
  font-weight: 600 !important;
}

body.ozt-home-page .ozt-home-catalog-all {
  height: 52px !important;
  padding: 0 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f5a61e !important;
  color: #111 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  box-shadow: 0 12px 24px rgba(245,166,30,.22) !important;
}

body.ozt-home-page .ozt-home-catalog-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

body.ozt-home-page .ozt-home-catalog-card {
  min-height: 360px !important;
  display: flex !important;
  flex-direction: column !important;
  background: #fff !important;
  border: 1px solid #cfd5df !important;
  border-left: 4px solid #f5a61e !important;
  color: #111 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.06) !important;
  overflow: hidden !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

body.ozt-home-page .ozt-home-catalog-card:hover {
  transform: translateY(-6px) !important;
  border-color: #f5a61e !important;
  box-shadow: 0 22px 44px rgba(0,0,0,.12) !important;
}

body.ozt-home-page .ozt-home-catalog-img {
  height: 170px !important;
  background: #f7f8fa !important;
  border-bottom: 1px solid #e0e4eb !important;
  overflow: hidden !important;
}

body.ozt-home-page .ozt-home-catalog-img img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  transition: transform .35s ease !important;
}

body.ozt-home-page .ozt-home-catalog-card:hover img {
  transform: scale(1.045) !important;
}

body.ozt-home-page .ozt-home-catalog-body {
  padding: 22px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

body.ozt-home-page .ozt-home-catalog-body h3 {
  margin: 0 0 12px !important;
  color: #111 !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
}

body.ozt-home-page .ozt-home-catalog-body p {
  margin: 0 0 18px !important;
  color: #4f5867 !important;
  font-size: 14px !important;
  line-height: 1.58 !important;
}

body.ozt-home-page .ozt-home-catalog-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  margin-top: auto !important;
}

body.ozt-home-page .ozt-home-catalog-tags span {
  padding: 7px 9px !important;
  border: 1px solid #d5dbe5 !important;
  background: #fff !important;
  color: #222 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

@media(max-width: 1100px) {
  body.ozt-home-page .ozt-home-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width: 720px) {
  body.ozt-home-page .ozt-home-catalog-clean {
    padding: 56px 0 64px !important;
  }

  body.ozt-home-page .ozt-home-catalog-head {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  body.ozt-home-page .ozt-home-catalog-clean h2 {
    font-size: 34px !important;
  }

  body.ozt-home-page .ozt-home-catalog-grid {
    grid-template-columns: 1fr !important;
  }

  body.ozt-home-page .ozt-home-catalog-card {
    min-height: auto !important;
  }

  body.ozt-home-page .ozt-home-catalog-img {
    height: 210px !important;
  }

  body.ozt-home-page .ozt-home-catalog-all {
    width: 100% !important;
  }
}

/* ===== HOME CATALOG IMAGES: NO CROP ===== */

body.ozt-home-page .ozt-home-catalog-img {
  height: 178px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff !important;
  padding: 10px !important;
}

body.ozt-home-page .ozt-home-catalog-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  padding: 0 !important;
  background: #fff !important;
}

body.ozt-home-page .ozt-home-catalog-card:hover .ozt-home-catalog-img img {
  transform: none !important;
}

body.ozt-home-page .ozt-home-catalog-body h3 {
  font-size: 20px !important;
}

/* ===== HOME CATALOG FINAL IMAGE MODE ===== */

body.ozt-home-page .ozt-home-catalog-img {
  height: 178px !important;
  background: #fff !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

body.ozt-home-page .ozt-home-catalog-img img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  background: #fff !important;
}

/* транспорт и очистка — не режем товарные изображения */
body.ozt-home-page .ozt-home-catalog-card[data-cat="clean"] .ozt-home-catalog-img img,
body.ozt-home-page .ozt-home-catalog-card[data-cat="transport"] .ozt-home-catalog-img img {
  object-fit: contain !important;
  object-position: center center !important;
  padding: 10px !important;
}

/* зерносушилки и посев — фото заполняют карточку */
body.ozt-home-page .ozt-home-catalog-card[data-cat="dryer"] .ozt-home-catalog-img img,
body.ozt-home-page .ozt-home-catalog-card[data-cat="seed"] .ozt-home-catalog-img img {
  object-fit: cover !important;
  object-position: center center !important;
  padding: 0 !important;
}


/* ===== home-projects-carousel.css ===== */

/* ===== HOME PROJECTS CAROUSEL ===== */

body.ozt-home-page .ozt-home-projects-carousel {
  background: #eef0f3 !important;
  color: #111 !important;
  padding: 78px 0 88px !important;
  border-top: 1px solid #d7dce4 !important;
  border-bottom: 1px solid #d7dce4 !important;
  overflow: hidden !important;
}

body.ozt-home-page .ozt-home-projects-carousel * {
  box-sizing: border-box !important;
  border-radius: 0 !important;
}

body.ozt-home-page .ozt-home-projects-wrap {
  width: 1180px !important;
  max-width: calc(100% - 32px) !important;
  margin: 0 auto !important;
}

body.ozt-home-page .ozt-home-projects-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 24px !important;
  align-items: end !important;
  margin-bottom: 28px !important;
}

body.ozt-home-page .ozt-home-projects-kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
  color: #d78900 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}

body.ozt-home-page .ozt-home-projects-kicker::before {
  content: "" !important;
  width: 32px !important;
  height: 2px !important;
  background: #f5a61e !important;
}

body.ozt-home-page .ozt-home-projects-carousel h2 {
  margin: 0 !important;
  color: #111 !important;
  font-size: clamp(38px, 4vw, 60px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.065em !important;
  font-weight: 900 !important;
}

body.ozt-home-page .ozt-home-projects-carousel .ozt-home-projects-intro {
  max-width: 650px !important;
  margin: 14px 0 0 !important;
  color: #4f5867 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  font-weight: 600 !important;
}

body.ozt-home-page .ozt-home-projects-controls {
  display: flex !important;
  gap: 10px !important;
}

body.ozt-home-page .ozt-home-projects-arrow {
  width: 52px !important;
  height: 52px !important;
  border: 1px solid #cfd5df !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.06) !important;
  transition: background .2s ease, transform .2s ease, border-color .2s ease !important;
}

body.ozt-home-page .ozt-home-projects-arrow:hover {
  background: #f5a61e !important;
  border-color: #f5a61e !important;
  transform: translateY(-2px) !important;
}

body.ozt-home-page .ozt-home-projects-shell {
  position: relative !important;
}

body.ozt-home-page .ozt-home-projects-track {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-auto-columns: calc((100% - 36px) / 3) !important;
  gap: 18px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  padding: 2px 0 18px !important;
  scrollbar-width: thin !important;
  scrollbar-color: #f5a61e #d7dce4 !important;
}

body.ozt-home-page .ozt-home-projects-track::-webkit-scrollbar {
  height: 10px !important;
}

body.ozt-home-page .ozt-home-projects-track::-webkit-scrollbar-track {
  background: #d7dce4 !important;
}

body.ozt-home-page .ozt-home-projects-track::-webkit-scrollbar-thumb {
  background: #f5a61e !important;
}

body.ozt-home-page .ozt-home-project-card {
  scroll-snap-align: start !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 430px !important;
  background: #fff !important;
  border: 1px solid #cfd5df !important;
  border-left: 4px solid #f5a61e !important;
  color: #111 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.065) !important;
  overflow: hidden !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

body.ozt-home-page .ozt-home-project-card:hover {
  transform: translateY(-6px) !important;
  border-color: #f5a61e !important;
  box-shadow: 0 22px 44px rgba(0,0,0,.12) !important;
}

body.ozt-home-page .ozt-home-project-card-img {
  height: 220px !important;
  background: #fff !important;
  border-bottom: 1px solid #e0e4eb !important;
  overflow: hidden !important;
}

body.ozt-home-page .ozt-home-project-card-img img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  transition: transform .35s ease !important;
}

body.ozt-home-page .ozt-home-project-card:hover img {
  transform: scale(1.045) !important;
}

body.ozt-home-page .ozt-home-project-card-body {
  padding: 22px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

body.ozt-home-page .ozt-home-project-meta {
  display: flex !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin-bottom: 14px !important;
  color: #d78900 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body.ozt-home-page .ozt-home-project-card h3 {
  margin: 0 0 12px !important;
  color: #111 !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.045em !important;
  font-weight: 900 !important;
}

body.ozt-home-page .ozt-home-project-card p {
  margin: 0 0 18px !important;
  color: #4f5867 !important;
  font-size: 15px !important;
  line-height: 1.58 !important;
}

body.ozt-home-page .ozt-home-project-place {
  margin-top: auto !important;
  color: #5b6472 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
}

body.ozt-home-page .ozt-home-projects-bottom {
  display: flex !important;
  justify-content: center !important;
  margin-top: 22px !important;
}

body.ozt-home-page .ozt-home-projects-all {
  height: 52px !important;
  padding: 0 26px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff !important;
  border: 1px solid #cfd5df !important;
  color: #111 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.05) !important;
}

body.ozt-home-page .ozt-home-projects-all:hover {
  background: #f5a61e !important;
  border-color: #f5a61e !important;
}

@media(max-width: 980px) {
  body.ozt-home-page .ozt-home-projects-track {
    grid-auto-columns: calc((100% - 18px) / 2) !important;
  }
}

@media(max-width: 680px) {
  body.ozt-home-page .ozt-home-projects-carousel {
    padding: 56px 0 64px !important;
  }

  body.ozt-home-page .ozt-home-projects-head {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  body.ozt-home-page .ozt-home-projects-controls {
    justify-content: flex-start !important;
  }

  body.ozt-home-page .ozt-home-projects-track {
    grid-auto-columns: 88% !important;
  }

  body.ozt-home-page .ozt-home-project-card {
    min-height: 410px !important;
  }

  body.ozt-home-page .ozt-home-project-card-img {
    height: 210px !important;
  }

  body.ozt-home-page .ozt-home-projects-carousel h2 {
    font-size: 34px !important;
  }
}


/* ===== home-cta-contrast-fix.css ===== */

/* ===== HOME CTA CONTRAST FIX ===== */

body.ozt-home-page .ozt-home-cta-clean {
  background: #e4e7ec !important;
  padding: 72px 0 82px !important;
  border-top: 1px solid #d3d7df !important;
  border-bottom: 1px solid #d3d7df !important;
}

body.ozt-home-page .ozt-home-cta-clean * {
  box-sizing: border-box !important;
  border-radius: 0 !important;
}

body.ozt-home-page .ozt-home-cta-wrap {
  width: 1180px !important;
  max-width: calc(100% - 32px) !important;
  margin: 0 auto !important;
}

body.ozt-home-page .ozt-home-cta-box {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 36px !important;
  align-items: center !important;
  padding: 42px 46px !important;
  background: #fff !important;
  border: 1px solid #cfd5df !important;
  border-left: 5px solid #f5a61e !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.08) !important;
}

body.ozt-home-page .ozt-home-cta-kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
  color: #d78900 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}

body.ozt-home-page .ozt-home-cta-kicker::before {
  content: "" !important;
  width: 32px !important;
  height: 2px !important;
  background: #f5a61e !important;
}

body.ozt-home-page .ozt-home-cta-box h2 {
  margin: 0 0 14px !important;
  color: #111 !important;
  font-size: clamp(34px, 3.4vw, 54px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.06em !important;
  font-weight: 900 !important;
}

body.ozt-home-page .ozt-home-cta-box p {
  max-width: 690px !important;
  margin: 0 !important;
  color: #4f5867 !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  font-weight: 600 !important;
}

body.ozt-home-page .ozt-home-cta-actions {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

body.ozt-home-page .ozt-home-cta-actions a,
body.ozt-home-page .ozt-home-cta-actions button {
  height: 54px !important;
  padding: 0 26px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

body.ozt-home-page .ozt-home-cta-actions .ozt-home-cta-primary {
  border: 0 !important;
  background: #f5a61e !important;
  color: #111 !important;
  box-shadow: 0 12px 24px rgba(245,166,30,.24) !important;
}

body.ozt-home-page .ozt-home-cta-actions .ozt-home-cta-phone {
  border: 1px solid #cfd5df !important;
  background: #fff !important;
  color: #111 !important;
}

body.ozt-home-page .ozt-home-cta-actions .ozt-home-cta-primary:hover,
body.ozt-home-page .ozt-home-cta-actions .ozt-home-cta-phone:hover {
  transform: translateY(-2px) !important;
}

@media(max-width: 860px) {
  body.ozt-home-page .ozt-home-cta-box {
    grid-template-columns: 1fr !important;
    padding: 30px 24px !important;
  }

  body.ozt-home-page .ozt-home-cta-actions {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
  }
}

@media(max-width: 560px) {
  body.ozt-home-page .ozt-home-cta-clean {
    padding: 52px 0 60px !important;
  }

  body.ozt-home-page .ozt-home-cta-box h2 {
    font-size: 32px !important;
  }

  body.ozt-home-page .ozt-home-cta-box p {
    font-size: 15px !important;
  }

  body.ozt-home-page .ozt-home-cta-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  body.ozt-home-page .ozt-home-cta-actions a,
  body.ozt-home-page .ozt-home-cta-actions button {
    width: 100% !important;
  }
}


/* ===== legal-pages.css ===== */

/* ===== LEGAL PAGES ===== */

body.ozt-legal-page {
  background: #f1f2f4 !important;
}

body.ozt-legal-page main {
  display: none !important;
}

#ozt-legal-root {
  background: #f1f2f4;
  color: #111;
  font-family: "Manrope", Inter, Arial, sans-serif;
}

.ozt-legal-hero {
  padding: 70px 0 44px;
  background: #e4e7ec;
  border-bottom: 1px solid #d3d7df;
}

.ozt-legal-wrap {
  width: 980px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
}

.ozt-legal-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #d78900;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.ozt-legal-kicker::before {
  content: "";
  width: 32px;
  height: 2px;
  background: #f5a61e;
}

.ozt-legal-hero h1 {
  margin: 0;
  color: #111;
  font-size: clamp(38px, 4.4vw, 64px);
  line-height: 1.02;
  letter-spacing: -0.065em;
  font-weight: 900;
}

.ozt-legal-content {
  padding: 44px 0 82px;
}

.ozt-legal-card {
  padding: 42px 46px;
  background: #fff;
  border: 1px solid #cfd5df;
  border-left: 5px solid #f5a61e;
  box-shadow: 0 16px 38px rgba(0,0,0,.07);
}

.ozt-legal-card h2 {
  margin: 30px 0 14px;
  color: #111;
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: -0.045em;
  font-weight: 900;
}

.ozt-legal-card h2:first-child {
  margin-top: 0;
}

.ozt-legal-card p {
  margin: 0 0 14px;
  color: #3f4856;
  font-size: 16px;
  line-height: 1.72;
}

.ozt-legal-card .ozt-legal-loading {
  color: #6b7280;
  font-weight: 700;
}

.ozt-legal-back {
  margin-top: 26px;
  display: inline-flex;
  height: 48px;
  padding: 0 22px;
  align-items: center;
  justify-content: center;
  background: #f5a61e;
  color: #111 !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 900;
}

@media(max-width: 680px) {
  .ozt-legal-hero {
    padding: 48px 0 34px;
  }

  .ozt-legal-card {
    padding: 26px 22px;
  }

  .ozt-legal-card p {
    font-size: 14.5px;
  }
}


/* ===== footer-clean.css ===== */

/* ===== FOOTER CLEAN REBUILD ===== */

footer.ozt-footer-clean {
  background: #15161b !important;
  color: #fff !important;
  padding: 54px 0 50px !important;
  font-family: "Manrope", Inter, Arial, sans-serif !important;
}

footer.ozt-footer-clean * {
  box-sizing: border-box !important;
  border-radius: 0 !important;
}

.ozt-footer-clean-wrap {
  width: 1180px !important;
  max-width: calc(100% - 32px) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1.25fr 1fr 1fr 1fr !important;
  gap: 58px !important;
  align-items: start !important;
}

.ozt-footer-brand-logo {
  display: inline-flex !important;
  align-items: center !important;
  margin-bottom: 18px !important;
  padding: 0 !important;
  background: transparent !important;
  text-decoration: none !important;
}

.ozt-footer-brand-logo img {
  width: 190px !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
  filter: brightness(1.08) contrast(1.08) !important;
}

.ozt-footer-desc {
  max-width: 310px !important;
  margin: 0 !important;
  color: rgba(255,255,255,.82) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
}

.ozt-footer-clean h3 {
  margin: 0 0 17px !important;
  color: #fff !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

.ozt-footer-clean a,
.ozt-footer-clean p {
  margin: 0 !important;
  color: rgba(255,255,255,.84) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

.ozt-footer-clean a:hover {
  color: #f5a61e !important;
}

.ozt-footer-list {
  display: grid !important;
  gap: 9px !important;
}

.ozt-footer-copy {
  margin-top: 18px !important;
  color: rgba(255,255,255,.70) !important;
}

@media(max-width: 980px) {
  .ozt-footer-clean-wrap {
    grid-template-columns: 1fr 1fr !important;
    gap: 36px !important;
  }
}

@media(max-width: 620px) {
  footer.ozt-footer-clean {
    padding: 40px 0 42px !important;
  }

  .ozt-footer-clean-wrap {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  .ozt-footer-brand-logo img {
    width: 170px !important;
  }
}


/* ===== home-final-image-map.css ===== */

/* ===== FINAL IMAGE MAP ===== */

.ozt-final-mapped-img {
  object-position: center center !important;
}

.ozt-home-catalog-card[data-cat="clean"] img,
.ozt-home-catalog-card[data-cat="transport"] img {
  object-fit: contain !important;
  padding: 10px !important;
  background: #fff !important;
}

.ozt-home-catalog-card[data-cat="dryer"] img,
.ozt-home-catalog-card[data-cat="seed"] img,
.ozt-home-project-card img,
.ozt-home-service-clickable img {
  object-fit: cover !important;
  padding: 0 !important;
  background: #fff !important;
}

footer img {
  object-fit: contain !important;
  padding: 0 !important;
  background: transparent !important;
}


/* ===== seed-photo-contain-fix.css ===== */

/* ===== SEED CARD PHOTO CONTAIN FIX ===== */

/* карточка "Посев и почвообработка" на главной */
body.ozt-home-page .ozt-home-catalog-card[data-cat="seed"] .ozt-home-catalog-img {
  background: #fff !important;
  padding: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

body.ozt-home-page .ozt-home-catalog-card[data-cat="seed"] .ozt-home-catalog-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  padding: 0 !important;
  background: #fff !important;
  transform: none !important;
}

/* чтобы hover не увеличивал и не резал */
body.ozt-home-page .ozt-home-catalog-card[data-cat="seed"]:hover .ozt-home-catalog-img img {
  transform: none !important;
}


/* ===== home-silo-project-photo-fix.css ===== */

/* ===== HOME SILO PROJECT PHOTO FIX ===== */

body.ozt-home-page .ozt-home-project-card img[src="/images/silo-complex.webp"] {
  object-fit: cover !important;
  object-position: center center !important;
  background: #fff !important;
}


/* ===== calculator-menu-only.css ===== */

/* ===== CALCULATOR MENU ONLY ===== */

.ozt-menu-calculator-link {
  white-space: nowrap !important;
}

.ozt-menu-calculator-link.is-active,
.ozt-menu-calculator-link[aria-current="page"] {
  color: #111 !important;
  position: relative !important;
}

@media(min-width: 761px) {
  .ozt-menu-calculator-link.is-active::after,
  .ozt-menu-calculator-link[aria-current="page"]::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -10px !important;
    height: 2px !important;
    background: #f5a61e !important;
  }
}


/* ===== calculator-page.css ===== */

/* ===== HANGAR CALCULATOR PAGE v2 ===== */

body.ozt-calculator-page {
  background: #eef0f3 !important;
}

body.ozt-calculator-page main {
  display: none !important;
}

#ozt-calculator-root {
  background: #eef0f3;
  color: #111;
  font-family: "Manrope", Inter, Arial, sans-serif;
}

.ozt-calc-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding: 74px 0 66px;
  background: #161a20;
  color: #fff;
}

.ozt-calc-hero::before {
  content: "";
  position: absolute;
  inset: -18px;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(12,16,22,.88), rgba(12,16,22,.64), rgba(12,16,22,.22)),
    url('/images/hangar-outside.webp') center / cover no-repeat;
  filter: blur(3px) saturate(.95);
  transform: scale(1.04);
}

.ozt-calc-hero > * {
  position: relative;
  z-index: 1;
}

.ozt-calc-wrap {
  width: 1180px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
}

.ozt-calc-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #f5a61e;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.ozt-calc-kicker::before {
  content: "";
  width: 32px;
  height: 2px;
  background: #f5a61e;
}

.ozt-calc-hero h1 {
  max-width: 920px;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(42px, 5vw, 70px);
  line-height: 1.02;
  letter-spacing: -0.07em;
  font-weight: 900;
}

.ozt-calc-hero p {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.9);
  font-size: 18px;
  line-height: 1.6;
  font-weight: 700;
}

.ozt-calc-section {
  padding: 64px 0 78px;
}

.ozt-calc-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr);
  gap: 24px;
  align-items: start;
}

.ozt-calc-panel,
.ozt-calc-result,
.ozt-calc-rates {
  background: #fff;
  border: 1px solid #cfd5df;
  border-left: 5px solid #f5a61e;
  box-shadow: 0 16px 38px rgba(0,0,0,.07);
}

.ozt-calc-panel,
.ozt-calc-result,
.ozt-calc-rates {
  padding: 34px;
}

.ozt-calc-panel h2,
.ozt-calc-result h2,
.ozt-calc-rates h2 {
  margin: 0 0 22px;
  color: #111;
  font-size: 32px;
  line-height: 1.1;
  letter-spacing: -0.055em;
  font-weight: 900;
}

.ozt-calc-form {
  display: grid;
  gap: 24px;
}

.ozt-calc-type {
  padding: 16px 18px;
  background: #f7f8fa;
  border: 1px solid #d5dbe5;
  color: #111;
  font-size: 15px;
  line-height: 1.55;
  font-weight: 800;
}

.ozt-calc-type b {
  font-weight: 900;
}

.ozt-calc-field label,
.ozt-calc-choice-title {
  display: block;
  margin-bottom: 10px;
  color: #242a34;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 900;
}

.ozt-calc-width-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}

.ozt-calc-width {
  position: relative;
}

.ozt-calc-width input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.ozt-calc-width span {
  min-height: 70px;
  padding: 12px 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #cfd5df;
  background: #f7f8fa;
  color: #111;
  text-align: center;
  font-size: 15px;
  line-height: 1.18;
  font-weight: 900;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.ozt-calc-width span small {
  display: block;
  margin-top: 5px;
  color: #596273;
  font-size: 12px;
  line-height: 1.1;
  font-weight: 900;
}

.ozt-calc-width input:checked + span {
  border-color: #f5a61e;
  background: #fff7e8;
  box-shadow: inset 0 -4px 0 #f5a61e;
}

.ozt-calc-width input:checked + span small {
  color: #111;
}

.ozt-calc-width:hover span {
  transform: translateY(-2px);
}

.ozt-calc-length-box {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 150px;
  gap: 14px;
  align-items: end;
}

.ozt-calc-field input {
  width: 100%;
  height: 56px;
  padding: 0 16px;
  border: 1px solid #cfd5df;
  background: #fff;
  color: #111;
  font-size: 22px;
  font-weight: 900;
  outline: none;
}

.ozt-calc-field input:focus {
  border-color: #f5a61e;
  box-shadow: 0 0 0 3px rgba(245,166,30,.16);
}

.ozt-calc-range {
  margin-top: 14px;
  width: 100%;
  accent-color: #f5a61e;
}

.ozt-calc-help {
  margin-top: 8px;
  color: #697386;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 700;
}

.ozt-calc-meter {
  padding: 16px;
  background: #f7f8fa;
  border: 1px solid #d5dbe5;
}

.ozt-calc-meter span {
  display: block;
  margin-bottom: 6px;
  color: #596273;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.ozt-calc-meter b {
  display: block;
  color: #111;
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
}

.ozt-calc-result {
  position: sticky;
  top: 92px;
}

.ozt-calc-price {
  margin: 0 0 10px;
  color: #111;
  font-size: clamp(38px, 3.8vw, 58px);
  line-height: 1;
  letter-spacing: -0.065em;
  font-weight: 900;
}

.ozt-calc-subprice {
  margin: 0 0 24px;
  color: #596273;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 700;
}

.ozt-calc-stats {
  display: grid;
  gap: 0;
  margin-bottom: 24px;
}

.ozt-calc-stat {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
  border-bottom: 1px solid #e0e4eb;
  color: #4f5867;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 700;
}

.ozt-calc-stat b {
  color: #111;
  font-size: 15px;
  font-weight: 900;
  text-align: right;
}

.ozt-calc-alert {
  margin: 16px 0 0;
  padding: 16px 18px;
  background: #fff7e8;
  border-left: 4px solid #f5a61e;
  color: #111;
  font-size: 14px;
  line-height: 1.55;
  font-weight: 800;
}

.ozt-calc-actions {
  display: grid;
  gap: 10px;
}

.ozt-calc-btn {
  height: 54px;
  padding: 0 22px;
  border: 0;
  background: #f5a61e;
  color: #111;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 24px rgba(245,166,30,.22);
}

.ozt-calc-btn-secondary {
  background: #fff;
  border: 1px solid #cfd5df;
  box-shadow: none;
}

.ozt-calc-rates {
  margin-top: 24px;
}

.ozt-calc-rate-table {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}

.ozt-calc-rate-row {
  padding: 16px 14px;
  background: #f7f8fa;
  border: 1px solid #d5dbe5;
  color: #111;
  text-align: center;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 800;
}

.ozt-calc-rate-row b {
  display: block;
  margin-top: 5px;
  font-weight: 900;
}

@media(max-width: 980px) {
  .ozt-calc-grid {
    grid-template-columns: 1fr;
  }

  .ozt-calc-result {
    position: static;
  }

  .ozt-calc-rate-table {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 680px) {
  .ozt-calc-hero {
    padding: 46px 0 40px;
  }

  .ozt-calc-hero h1 {
    font-size: 36px;
  }

  .ozt-calc-hero p {
    font-size: 15.5px;
  }

  .ozt-calc-section {
    padding: 42px 0 56px;
  }

  .ozt-calc-panel,
  .ozt-calc-result,
  .ozt-calc-rates {
    padding: 24px 20px;
  }

  .ozt-calc-width-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .ozt-calc-length-box {
    grid-template-columns: 1fr;
  }

  .ozt-calc-price {
    font-size: 34px;
  }
}

/* ===== CALCULATOR WIDTH BUTTONS POLISH + 200M ===== */

.ozt-calc-width-grid {
  gap: 12px !important;
}

.ozt-calc-width span {
  min-height: 92px !important;
  padding: 14px 10px !important;
  display: grid !important;
  grid-template-rows: auto auto !important;
  align-content: center !important;
  justify-items: center !important;
  gap: 8px !important;
  background: #fff !important;
  border: 1px solid #cfd5df !important;
  color: #111 !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.035) !important;
}

.ozt-calc-width span b {
  display: block !important;
  color: #111 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
}

.ozt-calc-width span small {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 6px 9px !important;
  margin: 0 !important;
  background: #f1f3f6 !important;
  border: 1px solid #d5dbe5 !important;
  color: #20242c !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.ozt-calc-width input:checked + span {
  background: #fff7e8 !important;
  border-color: #f5a61e !important;
  box-shadow:
    inset 0 -5px 0 #f5a61e,
    0 14px 28px rgba(245,166,30,.18) !important;
}

.ozt-calc-width input:checked + span small {
  background: #f5a61e !important;
  border-color: #f5a61e !important;
  color: #111 !important;
}

.ozt-calc-field input[name="length"] {
  font-size: 24px !important;
  height: 60px !important;
}

.ozt-calc-range {
  accent-color: #f5a61e !important;
}

@media(max-width: 680px) {
  .ozt-calc-width-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .ozt-calc-width span {
    min-height: 86px !important;
  }

  .ozt-calc-width span b {
    font-size: 20px !important;
  }

  .ozt-calc-width span small {
    font-size: 11px !important;
  }
}

/* ===== REMOVE CALC RATES + HELP ===== */
.ozt-calc-rates,
.ozt-calc-help {
  display: none !important;
}

/* ===== REMOVE COPY BUTTON + FORMULA TEXT ===== */
[data-calc-copy],
.ozt-calc-subprice {
  display: none !important;
}


/* ===== contacts-clean-rebuild.css ===== */

/* ===== CONTACTS CLEAN REBUILD ===== */

body.ozt-contacts-clean-page {
  background: #eef0f3 !important;
}

body.ozt-contacts-clean-page main {
  display: none !important;
}

#ozt-contacts-clean-root {
  background: #eef0f3;
  color: #111;
  font-family: "Manrope", Inter, Arial, sans-serif;
}

.ozt-contact-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding: 74px 0 68px;
  background: #161a20;
  color: #fff;
}

.ozt-contact-hero::before {
  content: "";
  position: absolute;
  inset: -18px;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(12,16,22,.86), rgba(12,16,22,.62), rgba(12,16,22,.24)),
    url('/images/contacts-old-hero.webp') center / cover no-repeat;
  filter: blur(2.5px) saturate(.95);
  transform: scale(1.035);
}

.ozt-contact-hero > * {
  position: relative;
  z-index: 1;
}

.ozt-contact-wrap {
  width: 1180px;
  max-width: calc(100% - 32px);
  margin: 0 auto;
}

.ozt-contact-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #f5a61e;
  font-size: 11px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.ozt-contact-kicker::before {
  content: "";
  width: 32px;
  height: 2px;
  background: #f5a61e;
}

.ozt-contact-hero h1 {
  max-width: 820px;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1.03;
  letter-spacing: -0.07em;
  font-weight: 900;
}

.ozt-contact-hero p {
  max-width: 660px;
  margin: 0;
  color: rgba(255,255,255,.9);
  font-size: 18px;
  line-height: 1.6;
  font-weight: 700;
}

.ozt-contact-section {
  padding: 66px 0 76px;
}

.ozt-contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 390px;
  gap: 24px;
  align-items: start;
}

.ozt-contact-info {
  display: grid;
  gap: 14px;
}

.ozt-contact-info h2,
.ozt-contact-form-card h2,
.ozt-contact-steps h2,
.ozt-contact-map h2 {
  margin: 0 0 18px;
  color: #111;
  font-size: 34px;
  line-height: 1.08;
  letter-spacing: -0.055em;
  font-weight: 900;
}

.ozt-contact-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.ozt-contact-card {
  min-height: 124px;
  padding: 22px;
  background: #fff;
  border: 1px solid #cfd5df;
  border-left: 5px solid #f5a61e;
  box-shadow: 0 12px 30px rgba(0,0,0,.055);
}

.ozt-contact-card.is-wide {
  grid-column: 1 / -1;
}

.ozt-contact-label {
  display: block;
  margin-bottom: 12px;
  color: #7b8494;
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.ozt-contact-value {
  display: block;
  color: #111;
  font-size: 20px;
  line-height: 1.35;
  font-weight: 900;
  text-decoration: none;
}

.ozt-contact-desc {
  margin: 8px 0 0;
  color: #596273;
  font-size: 14px;
  line-height: 1.55;
  font-weight: 700;
}

.ozt-contact-value:hover {
  color: #f5a61e;
}

.ozt-contact-form-card {
  padding: 28px;
  background: #fff;
  border: 1px solid #cfd5df;
  border-left: 5px solid #f5a61e;
  box-shadow: 0 16px 38px rgba(0,0,0,.075);
}

.ozt-contact-form-card p {
  margin: -8px 0 18px;
  color: #596273;
  font-size: 14px;
  line-height: 1.55;
  font-weight: 700;
}

.ozt-contact-form {
  display: grid;
  gap: 12px;
}

.ozt-contact-form label {
  display: grid;
  gap: 6px;
  color: #111;
  font-size: 12px;
  font-weight: 900;
}

.ozt-contact-form input,
.ozt-contact-form textarea {
  width: 100%;
  border: 1px solid #cfd5df;
  background: #fff;
  color: #111;
  outline: none;
  font-size: 15px;
  font-weight: 700;
  font-family: inherit;
}

.ozt-contact-form input {
  height: 48px;
  padding: 0 14px;
}

.ozt-contact-form textarea {
  min-height: 118px;
  padding: 14px;
  resize: vertical;
}

.ozt-contact-form input:focus,
.ozt-contact-form textarea:focus {
  border-color: #f5a61e;
  box-shadow: 0 0 0 3px rgba(245,166,30,.16);
}

.ozt-contact-form input::placeholder,
.ozt-contact-form textarea::placeholder {
  color: #8a93a3;
}

.ozt-contact-consent {
  display: grid !important;
  grid-template-columns: 20px minmax(0,1fr);
  gap: 10px !important;
  align-items: start;
  margin-top: 2px;
  color: #596273 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

.ozt-contact-consent input {
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  accent-color: #f5a61e;
}

.ozt-contact-form button {
  width: 100%;
  height: 52px;
  margin-top: 2px;
  border: 0;
  background: #f5a61e;
  color: #111;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 24px rgba(245,166,30,.2);
}

.ozt-contact-form button:disabled {
  opacity: .7;
  cursor: wait;
}

.ozt-contact-status {
  display: none;
  margin-top: 4px;
  padding: 12px 14px;
  border-left: 4px solid #f5a61e;
  background: #fff7e8;
  color: #111;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 900;
}

.ozt-contact-status.is-show {
  display: block;
}

.ozt-contact-status.is-error {
  background: #fff1f1;
  border-left-color: #d33;
}

.ozt-contact-lower {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 24px;
  margin-top: 24px;
}

.ozt-contact-steps,
.ozt-contact-map {
  background: #fff;
  border: 1px solid #cfd5df;
  border-left: 5px solid #f5a61e;
  box-shadow: 0 12px 30px rgba(0,0,0,.055);
}

.ozt-contact-steps {
  padding: 28px;
}

.ozt-contact-step-list {
  display: grid;
  gap: 10px;
}

.ozt-contact-step {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr);
  gap: 12px;
  align-items: start;
  padding: 14px;
  background: #f7f8fa;
  border: 1px solid #d5dbe5;
}

.ozt-contact-step span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: #f5a61e;
  color: #111;
  font-size: 13px;
  font-weight: 900;
}

.ozt-contact-step b {
  display: block;
  margin-bottom: 5px;
  color: #111;
  font-size: 15px;
  line-height: 1.25;
  font-weight: 900;
}

.ozt-contact-step p {
  margin: 0;
  color: #596273;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 700;
}

.ozt-contact-map {
  min-height: 360px;
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(255,255,255,.96), rgba(255,255,255,.78), rgba(255,255,255,.08)),
    url('/images/map-placeholder.webp') center / cover no-repeat;
}

.ozt-contact-map-box {
  width: min(370px, calc(100% - 36px));
  margin: 28px;
  padding: 24px;
  background: #fff;
  border: 1px solid #cfd5df;
  border-left: 5px solid #f5a61e;
  box-shadow: 0 16px 38px rgba(0,0,0,.12);
}

.ozt-contact-map-box h2 {
  margin-bottom: 12px;
}

.ozt-contact-map-box p {
  margin: 0 0 12px;
  color: #596273;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 700;
}

.ozt-contact-map-box b {
  color: #111;
  font-weight: 900;
}

@media(max-width: 980px) {
  .ozt-contact-grid,
  .ozt-contact-lower {
    grid-template-columns: 1fr;
  }

  .ozt-contact-form-card {
    order: -1;
  }
}

@media(max-width: 680px) {
  .ozt-contact-hero {
    padding: 48px 0 42px;
  }

  .ozt-contact-hero h1 {
    font-size: 36px;
  }

  .ozt-contact-hero p {
    font-size: 15px;
  }

  .ozt-contact-section {
    padding: 42px 0 56px;
  }

  .ozt-contact-cards {
    grid-template-columns: 1fr;
  }

  .ozt-contact-form-card,
  .ozt-contact-card,
  .ozt-contact-steps {
    padding: 22px;
  }

  .ozt-contact-map {
    min-height: 340px;
    background:
      linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.82), rgba(255,255,255,.22)),
      url('/images/map-placeholder.webp') center / cover no-repeat;
  }

  .ozt-contact-map-box {
    margin: 18px;
  }
}
