/* Header */
.sez-header {
  position: sticky;
  z-index: 1000;
  top: 0;
  width: 100%;
  background: var(--sez-white);
  border-bottom: 1px solid var(--sez-line);
  transition: box-shadow .25s ease, background-color .25s ease;
}
.sez-inner .sez-header,
.sez-inner .sez-header.is-scrolled { background: var(--sez-white); color: var(--sez-ink); backdrop-filter: none; }
.admin-bar .sez-header { top: 0; }
.sez-header.is-scrolled { box-shadow: 0 12px 32px rgb(23 27 32 / 8%); }
.sez-header__utility { height: var(--sez-utility-height); border-bottom: 1px solid var(--sez-line); color: var(--sez-muted); font-size: 12px; }
.sez-header__utility-inner { position: relative; display: grid; height: 100%; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }
.sez-header__certification { grid-column: 2; text-align: center; }
.sez-header__socials { justify-self: start; }
.sez-header__utility-links { display: flex; align-items: center; gap: 24px; }
.sez-header__utility-links { justify-self: end; }
.sez-social-links { display: flex; align-items: center; gap: 10px; }
.sez-social-links a { display: grid; width: 30px; height: 30px; place-items: center; }
.sez-social-links a > i, .sez-social-links a > img, .sez-social-links a > span { display: grid; width: 18px; height: 18px; place-items: center; object-fit: contain; font-size: 18px; line-height: 1; }
.sez-social-links img { object-fit: contain; }
.sez-card-detail { position: absolute; z-index: 8; top: 22px; right: 22px; bottom: auto; display: flex; align-items: center; gap: 12px; color: var(--sez-white); font-family: "Montserrat", "Open Sans", sans-serif; font-size: var(--sez-card-detail-size); font-weight: 700; letter-spacing: 0; opacity: 0; pointer-events: none; transition: opacity .22s ease; }
.sez-card-detail > span { display: block; width: var(--sez-card-arrow-size); height: var(--sez-card-arrow-size); border-top: 2px solid currentColor; border-right: 2px solid currentColor; }
:is(.sez-content-card, .sez-feed-card, .sezrel-card, .sez-service-tile, .sez-service-archive__card):hover .sez-card-detail { opacity: 1; }
.sez-content-card--project .sez-card-detail,
.sez-feed-card--project .sez-card-detail,
.sezrel-card.is-case .sez-card-detail { top: auto; right: 20px; bottom: 20px; }
.sez-project-cover-link { position: absolute; inset: 0; display: block; }
.sez-project-cover-link > img, .sez-project-cover-link > video { width: 100%; height: 100%; object-fit: cover !important; object-position: center; }

/* A project preview replaces only the cover. Card and grid geometry never change. */
.sez-project-mini-gallery { display: none; }
@media (hover: hover) and (min-width: 992px) {
  :is(.sez-feed-card--project, .sez-content-card--project, .sezrel-card.is-case) {
    position: relative;
    isolation: isolate;
    overflow: hidden;
  }
  :is(.sez-feed-card--project, .sez-content-card--project, .sezrel-card.is-case) > .sez-project-mini-gallery {
    position: absolute;
    z-index: 4;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: var(--sez-dark);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .24s ease, visibility 0s linear .24s;
  }
  :is(.sez-feed-card--project, .sez-content-card--project, .sezrel-card.is-case).is-project-preview > .sez-project-mini-gallery {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s;
  }
  .sez-project-mini-gallery__track { position: absolute; inset: 0; display: flex; align-items: stretch; gap: 1px; overflow: hidden; background: rgb(255 255 255 / 24%); }
  .sez-project-mini-gallery__item {
    position: relative;
    display: grid;
    width: auto;
    height: 100%;
    aspect-ratio: var(--media-ratio, 1);
    flex: 0 0 auto;
    place-items: center;
    overflow: hidden;
    background: var(--sez-dark);
    opacity: 1;
    transform: none;
  }
  .sez-project-mini-gallery__item :is(img, video) {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }
  .sez-project-mini-gallery__info { display: none; }
}

@media (max-width: 991px), (hover: none) {
  :is(.sez-feed-card--project, .sez-content-card--project, .sezrel-card.is-case) > .sez-project-mini-gallery { display: none !important; }
}
.sez-social-max img { filter: grayscale(1); opacity: .58; transition: filter .2s ease, opacity .2s ease; }
.sez-social-max:hover img { filter: none; opacity: 1; }
.sez-social-links a[aria-label="Дзен"] img { filter: grayscale(1); opacity: .62; transition: filter .2s ease, opacity .2s ease; }
.sez-social-links a[aria-label="Дзен"]:hover img { filter: none; opacity: 1; }
.sez-header__utility a:hover { color: var(--sez-accent); }
.sez-header__bar { height: var(--sez-header-height); }
.sez-header__inner { display: grid; height: 100%; grid-template-columns: minmax(160px, 240px) minmax(420px, 1fr) minmax(370px, auto); align-items: center; gap: clamp(12px, 1.5vw, 28px); }
.sez-header__logo { display: flex; min-width: 0; height: 52px; align-items: center; overflow: hidden; font-size: 22px; font-weight: 700; }
.sez-header__logo img { width: auto; max-width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.sez-logo--light { display: none; }
.sez-nav, .sez-mobile-nav, .sez-footer__menu { margin: 0; padding: 0; list-style: none; }
.sez-nav { display: flex; min-width: 0; align-items: center; justify-content: center; gap: clamp(10px, 1.35vw, 26px); }
.sez-nav > li { position: relative; }
.sez-nav > li > a { display: inline-flex; min-height: 44px; align-items: center; font-size: 14px; font-weight: 700; white-space: nowrap; }
.sez-nav > li > a::before, .sez-nav > li > a::after { color: var(--sez-accent); opacity: 0; transition: opacity .2s ease; }
.sez-nav > li > a::before { content: "["; margin-right: 4px; }
.sez-nav > li > a::after { content: "]"; margin-left: 4px; }
.sez-nav > li:hover > a, .sez-nav > .current-menu-item > a, .sez-nav > .current-menu-ancestor > a { color: var(--sez-accent); }
.sez-nav > li:hover > a::before, .sez-nav > li:hover > a::after, .sez-nav > .current-menu-item > a::before, .sez-nav > .current-menu-item > a::after, .sez-nav > .current-menu-ancestor > a::before, .sez-nav > .current-menu-ancestor > a::after { opacity: 1; }
.sez-nav .sub-menu { position: absolute; top: 100%; left: 0; min-width: 260px; margin: 0; padding: 12px; border: 1px solid var(--sez-line); background: var(--sez-white); box-shadow: 0 18px 40px rgb(23 27 32 / 12%); list-style: none; opacity: 0; pointer-events: none; transform: translateY(8px); transition: .2s ease; }
.sez-nav li:hover > .sub-menu { opacity: 1; pointer-events: auto; transform: none; }
.sez-nav .sub-menu a { display: block; padding: 10px 12px; }
.sez-nav .sub-menu a:hover { background: var(--sez-paper); color: var(--sez-accent); }
.sez-header__actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.sez-header__actions :is(.sez-icon-button, .sez-header__shop-link, .sez-cart-link) { display: inline-grid; width: 44px; min-width: 44px; height: 44px; min-height: 44px; place-items: center; align-self: center; padding: 0; border: 1px solid currentColor; color: inherit; line-height: 1; transition: color .22s ease, border-color .22s ease, background-color .22s ease; }
.sez-header__actions :is(.sez-icon-button, .sez-header__shop-link, .sez-cart-link) i { display: grid; width: 18px; height: 18px; place-items: center; font-size: 16px; line-height: 1; text-align: center; }
.sez-header__actions :is(.sez-icon-button, .sez-header__shop-link, .sez-cart-link):hover { border-color: var(--sez-accent); background: var(--sez-accent); color: var(--sez-white); }
.sez-header__phone { margin-inline: 8px; font-weight: 700; white-space: nowrap; }
.sez-header__phone:hover { color: var(--sez-accent); }
.sez-cart-count { position: absolute; top: -6px; right: -6px; display: grid; min-width: 20px; height: 20px; place-items: center; padding-inline: 5px; border-radius: 20px; background: var(--sez-accent); color: var(--sez-white); font-size: 10px; }
.sez-cart-count.is-empty { display: none; }
.sez-menu-toggle { display: none; width: 44px; height: 44px; place-content: center; gap: 5px; padding: 0; border: 0; background: transparent; }
.sez-menu-toggle span { display: block; width: 26px; height: 2px; background: currentColor; }
.sez-search { border-top: 1px solid var(--sez-line); background: var(--sez-white); }
.sez-search[hidden] { display: none; }
.sez-search-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; padding-block: 18px; }
.sez-search-form input { min-height: 50px; }
.sez-search-form .sez-button { min-width: 130px; }
.sez-icon-button i, .sez-icon-button::before, .sez-icon-button::after { transition-property: color, background-color, border-color, opacity !important; }
.sez-icon-button:hover i { transform: none !important; }

.sez-mobile-menu { position: fixed; z-index: 1200; inset: 0; visibility: hidden; }
.sez-mobile-menu.is-open { visibility: visible; }
.sez-mobile-menu__backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgb(23 27 32 / 68%); opacity: 0; transition: opacity .25s ease; }
.sez-mobile-menu.is-open .sez-mobile-menu__backdrop { opacity: 1; }
.sez-mobile-menu__panel { position: absolute; top: 0; right: 0; display: flex; width: min(88vw, 430px); height: 100%; flex-direction: column; padding: 18px; background: var(--sez-white); transform: translateX(100%); transition: transform .3s var(--sez-ease); }
.sez-mobile-menu.is-open .sez-mobile-menu__panel { transform: none; }
.sez-mobile-menu__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid var(--sez-line); font-size: 18px; font-weight: 700; }
.sez-mobile-menu__logo { display: block; width: min(190px, 58vw); height: 46px; }
.sez-mobile-menu__logo img { width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.sez-mobile-nav { padding-block: 14px; overflow-y: auto; }
.sez-mobile-nav a { display: flex; min-height: 48px; align-items: center; border-bottom: 1px solid var(--sez-line); font-size: 18px; font-weight: 700; }
.sez-mobile-nav .current-menu-item > a { color: var(--sez-accent); }
.sez-mobile-nav .sub-menu { margin: 0; padding: 0 0 0 16px; list-style: none; }
.sez-mobile-nav .sub-menu a { min-height: 42px; font-size: 15px; }
.sez-mobile-menu__actions { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: auto; border: 1px solid var(--sez-line); }
.sez-mobile-menu__actions a { display: grid; min-height: 70px; place-items: center; gap: 2px; padding: 8px; border-right: 1px solid var(--sez-line); font-size: 11px; text-align: center; }
.sez-mobile-menu__actions a:last-child { border-right: 0; }
.sez-mobile-menu__actions i { color: var(--sez-accent); font-size: 18px; }
.sez-mobile-menu__panel > .sez-button { margin-top: 12px; }
.sez-mobile-menu__socials { justify-content: flex-start; padding: 12px 0; }

/* Footer */
.sez-footer { position: relative; z-index: 5; margin: 0; padding-top: clamp(38px, 4vw, 66px); background: var(--sez-dark); color: var(--sez-white); }
.sez-footer__top { display: grid; grid-template-columns: minmax(180px, 320px) minmax(0, 720px); align-items: center; justify-content: space-between; gap: 34px; padding-bottom: 38px; border-bottom: 1px solid rgb(255 255 255 / 18%); }
.sez-footer__brand { display: block; height: 62px; }
.sez-footer__brand img { width: auto; height: 100%; object-fit: contain; object-position: left center; }
.sez-footer__top p { margin: 0; color: rgb(255 255 255 / 68%); font-size: 18px; }
.sez-footer__grid { display: grid; grid-template-columns: 1.15fr .8fr .9fr 1.15fr; gap: clamp(28px, 4vw, 70px); padding-block: 46px; }
.sez-footer h2 { margin-bottom: 18px; color: var(--sez-white); font-size: 17px; }
.sez-footer__contacts { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.sez-footer__contacts a:hover, .sez-footer__menu a:hover { color: var(--sez-accent); }
.sez-footer__contacts div { color: rgb(255 255 255 / 65%); }
.sez-footer__socials { margin-top: 12px; }
.sez-footer__socials a { border: 1px solid rgb(255 255 255 / 24%); }
.sez-footer__socials img { filter: grayscale(1) brightness(0) invert(1); opacity: .7; }
.sez-footer__socials .sez-social-max:hover img { filter: none; opacity: 1; }
.sez-footer__menu { display: grid; gap: 8px; color: rgb(255 255 255 / 74%); }
.sez-footer__cta p { color: rgb(255 255 255 / 65%); }
.sez-footer__bottom { display: flex; min-height: 70px; align-items: center; justify-content: space-between; gap: 24px; border-top: 0; color: rgb(255 255 255 / 55%); font-size: 13px; }
.sez-footer__bottom p { margin: 0; }
.sez-footer__statement { display: flex; width: 100%; align-items: flex-start; justify-content: space-between; gap: clamp(4px, .45vw, 12px); overflow: hidden; padding: 0 var(--sez-gutter) 8px; border: 0; color: var(--sez-white); font: 800 clamp(38px, calc(6.65vw - 13px), 160px)/.9 "Montserrat", "Open Sans", sans-serif; white-space: nowrap; }
.sez-footer__statement span { display: block; transform: translateY(120%); transition: transform .48s cubic-bezier(.72,0,.18,1); }
.sez-footer__statement.is-visible span { transform: translateY(0); }
.sez-footer__statement span:nth-child(2) { transition-delay: .08s; }
.sez-footer__statement span:nth-child(3) { transition-delay: .16s; }
.sez-footer__statement span:nth-child(4) { transition-delay: .24s; }

/* Forms */
.sez-lead { padding-block: var(--sez-section); background: var(--sez-white); }
.sez-lead__layout { display: block; }
.sez-lead__content { display: flex; flex-direction: column; justify-content: center; }
.sez-lead__content h2 { margin-bottom: 18px; }
.sez-lead__form { display: grid; gap: 12px; width: 100%; max-width: 620px; }
.sez-lead__fields { display: grid; min-width: 0; grid-template-columns: 1fr; gap: 10px; }
.sez-lead__form--with-media { width: 100%; max-width: none; grid-template-columns: minmax(0, 7fr) minmax(180px, 2fr); grid-template-rows: auto auto auto; align-items: stretch; column-gap: clamp(22px, 3vw, 48px); }
.sez-lead__form--with-media .sez-lead__fields { grid-column: 1; grid-row: 1; }
.sez-lead__form--with-media .sez-lead__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sez-lead__form--with-media .sez-lead__media { grid-column: 2; grid-row: 1; }
.sez-lead__form--with-media .sez-form-policy, .sez-lead__form--with-media .sez-form-status { grid-column: 1; }
.sez-lead__fields :is(input, textarea, .sez-form-file, .sez-max-preference, .sez-button) { min-height: 46px; }
.sez-lead__fields textarea { height: 64px; min-height: 64px; }
.sez-lead__media { width: 100%; height: 100%; min-height: 0; max-height: none; align-self: stretch; overflow: hidden; background: transparent; }
.sez-lead__media img, .sez-lead__media video { width: 100%; height: 100%; object-fit: contain; object-position: center; background: transparent; }
.sez-lead--embedded { height: 100%; padding: 0; }
.sez-lead--embedded .sez-lead__layout, .sez-lead--embedded .sez-lead__content { height: 100%; }
.sez-lead--embedded .sez-lead__content { justify-content: center; padding: clamp(20px, 2vw, 34px); border: 0; }
.sez-lead--embedded .sec-title h2 { font-size: clamp(30px, 3vw, 54px); }
.sez-lead--embedded .sez-lead__form { width: 100%; max-width: none; }
.sez-lead--embedded .sec-title { margin-bottom: 12px; }
.sez-lead--embedded .sec-title > p { display: none; }
.sez-lead--embedded .sez-lead__form { gap: 7px; }
.sez-lead--embedded :is(input, textarea, .sez-form-file, .sez-max-preference, .sez-button) { min-height: 40px; }
.sez-lead--embedded textarea { height: 44px; min-height: 44px; }
.sez-lead--embedded .sez-form-file { padding-block: 8px; }
.sez-lead--embedded .sez-form-policy { margin: 0; font-size: 10px; }
.sez-lead--embedded .sez-form-status { min-height: 16px; }
.sez-form-file { display: flex; min-height: 48px; align-items: center; gap: 10px; padding: 12px 16px; border: 1px dashed var(--sez-line); cursor: pointer; }
.sez-form-file input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.sez-form-policy { color: var(--sez-muted); font-size: 12px; }
.sez-form-policy a { color: var(--sez-accent); text-decoration: underline; }
.sez-form-status { min-height: 22px; color: var(--sez-success); font: 700 12px/1.25 "Open Sans", sans-serif; }
.sez-form-status:not(:empty) { display: flex; min-height: 40px; align-items: center; justify-content: center; padding: 9px 12px; background: var(--sez-dark); color: var(--sez-white); text-align: center; }
.sez-form-status.is-error:not(:empty) { background: var(--sez-accent); color: var(--sez-white); }
body :is(.sez-product-rating, [data-inline-feedback])::after { background: var(--sez-dark); color: var(--sez-white); font: 700 12px/1.25 "Open Sans", sans-serif; letter-spacing: 0; text-align: center; }
.sez-max-preference { display: flex; min-height: 46px; align-items: center; gap: 9px; padding: 8px 10px; border: 1px solid var(--sez-line); color: var(--sez-dark); cursor: pointer; font-size: 10px; line-height: 1.2; }
.sez-max-preference input { position: absolute; width: 1px; min-height: 1px; height: 1px; opacity: 0; pointer-events: none; }
.sez-max-preference img { width: 20px; height: 20px; object-fit: contain; }
.sez-max-preference:has(input:checked) { border-color: #2f8f63; background: #2f8f63; color: var(--sez-white); }
.sez-max-preference:has(input:checked) img { filter: brightness(0) invert(1); }

/* Единая навигация каруселей: чистый шеврон без центральной линии. */
:is([data-feed-prev], [data-feed-next], [data-sez-prev], [data-sez-next], [data-gallery-prev], [data-gallery-next], [data-hero-card-prev], [data-hero-card-next], .sezrel-nav.left, .sezrel-nav.right, .sez-nku-nav.left, .sez-nku-nav.right) {
  position: relative;
  display: grid;
  width: 46px;
  min-width: 46px;
  height: 46px;
  place-items: center;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--sez-line);
  background: transparent;
  color: var(--sez-dark);
  transition: border-color .24s ease, background-color .24s ease, color .24s ease;
}
:is([data-feed-prev], [data-feed-next], [data-sez-prev], [data-sez-next], [data-gallery-prev], [data-gallery-next], [data-hero-card-prev], [data-hero-card-next], .sezrel-nav.left, .sezrel-nav.right, .sez-nku-nav.left, .sez-nku-nav.right) > i { display: none; }
:is([data-feed-prev], [data-feed-next], [data-sez-prev], [data-sez-next], [data-gallery-prev], [data-gallery-next], [data-hero-card-prev], [data-hero-card-next], .sezrel-nav.left, .sezrel-nav.right, .sez-nku-nav.left, .sez-nku-nav.right)::before {
  width: 9px;
  height: 9px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  content: "";
  transition: transform .24s ease;
}
:is([data-feed-next], [data-sez-next], [data-gallery-next], [data-hero-card-next], .sezrel-nav.right, .sez-nku-nav.right)::before { transform: rotate(45deg); }
:is([data-feed-prev], [data-sez-prev], [data-gallery-prev], [data-hero-card-prev], .sezrel-nav.left, .sez-nku-nav.left)::before { transform: rotate(-135deg); }
:is([data-feed-prev], [data-feed-next], [data-sez-prev], [data-sez-next], [data-gallery-prev], [data-gallery-next], [data-hero-card-prev], [data-hero-card-next], .sezrel-nav.left, .sezrel-nav.right, .sez-nku-nav.left, .sez-nku-nav.right):hover {
  border-color: var(--sez-accent);
  background: var(--sez-accent);
  color: var(--sez-white);
}
:is([data-feed-next], [data-sez-next], [data-gallery-next], [data-hero-card-next], .sezrel-nav.right, .sez-nku-nav.right):hover::before { transform: rotate(45deg); }
:is([data-feed-prev], [data-sez-prev], [data-gallery-prev], [data-hero-card-prev], .sezrel-nav.left, .sez-nku-nav.left):hover::before { transform: rotate(-135deg); }
.sez-feed__actions, .sezrel-controls { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
@keyframes sez-project-gallery-reveal { from { opacity: 0; transform: translateY(-18px); } to { opacity: 1; transform: none; } }

/* Contacts */
.sez-contacts { padding-block: var(--sez-section); background: var(--sez-white); color: var(--sez-dark); }
.sez-contacts__layout { display: grid; min-height: 570px; grid-template-columns: minmax(360px, .82fr) minmax(0, 1.18fr); gap: 1px; background: var(--sez-line); }
.sez-contacts__map { min-height: 570px; overflow: hidden; background: var(--sez-white); }
.sez-contacts__map iframe { display: block; width: 100%; height: 100%; min-height: 570px; border: 0; }
.sez-contacts__info { display: grid; min-width: 0; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-areas: "phone phone email email hours hours" "office office office factory factory factory" "supply supply supply orders orders orders"; gap: 1px; background: var(--sez-line); }
.sez-contact-card { min-width: 0; min-height: 0; padding: clamp(18px, 1.6vw, 28px); background: var(--sez-white); color: var(--sez-dark); }
.sez-contact-card--phone { grid-area: phone; }
.sez-contact-card--email { grid-area: email; }
.sez-contact-card--hours { grid-area: hours; }
.sez-contact-card--office { grid-area: office; }
.sez-contact-card--factory { grid-area: factory; }
.sez-contact-card--supply { grid-area: supply; }
.sez-contact-card--orders { grid-area: orders; }
.sez-contact-card > small { display: block; margin-bottom: clamp(18px, 2vw, 34px); color: var(--sez-accent); font-size: 11px; font-weight: 700; }
.sez-contact-card p, .sez-contact-card a { display: block; margin: 6px 0; color: inherit; font-size: clamp(14px, 1.05vw, 18px); line-height: 1.45; overflow-wrap: anywhere; }
.sez-contact-card p > a { display: inline; margin: 0; }
.sez-contact-card p > span { margin-left: 8px; color: var(--sez-muted); font-size: 11px; }
.sez-contact-card a:hover { color: var(--sez-accent); }
.sez-copy { cursor: pointer; }
.sez-copy { transition: color .2s ease, background-color .2s ease, transform .2s ease; }
.sez-copy.is-copied { background: var(--sez-dark); color: var(--sez-white); animation: sez-copy-pulse .42s var(--sez-ease); }
@keyframes sez-copy-pulse { 50% { transform: translateY(-3px); } }

.page-numbers a, .page-numbers span,
.sez-card-detail,
.sez-dpc__btn,
.sez-ral__btn { font-family: "Montserrat", "Open Sans", Arial, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: 0; text-transform: none; }

/* Legacy grid compatibility while templates are migrated */
.row { display: flex; flex-wrap: wrap; margin-inline: -12px; }
[class*="col-"] { width: 100%; padding-inline: 12px; }
@media (min-width: 768px) { .col-md-6 { width: 50%; } .col-md-12 { width: 100%; } }
@media (min-width: 992px) { .col-lg-4 { width: 33.333%; } .col-lg-5 { width: 41.666%; } .col-lg-6 { width: 50%; } .col-lg-7 { width: 58.333%; } .col-lg-8 { width: 66.666%; } .col-lg-12 { width: 100%; } }

/* Floating tools */
.sez-quick-tools { --sez-tool-size: clamp(68px, 5vw, 112px); position: fixed; z-index: 820; right: clamp(18px, 2vw, 38px); bottom: clamp(18px, 2vw, 38px); }
.sez-quick-toggle { position: absolute; right: 0; bottom: 0; z-index: 2; display: grid; width: var(--sez-tool-size); height: var(--sez-tool-size); place-content: center; gap: 6px; padding: 0; border: 1px solid var(--sez-dark); border-radius: 0; background: var(--sez-dark); color: var(--sez-white); cursor: pointer; }
.sez-quick-toggle span { display: block; width: clamp(22px, 1.7vw, 36px); height: 2px; background: currentColor; transition: transform .22s ease, opacity .22s ease; }
.sez-quick-tools.is-open .sez-quick-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.sez-quick-tools.is-open .sez-quick-toggle span:nth-child(2) { opacity: 0; }
.sez-quick-tools.is-open .sez-quick-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.sez-quick-actions { display: flex; flex-direction: column; gap: 8px; margin-bottom: calc(var(--sez-tool-size) + 8px); background: transparent; opacity: 0; pointer-events: none; transform: translateX(18px); transition: opacity .24s ease, transform .24s var(--sez-ease); }
.sez-quick-tools.is-open .sez-quick-actions { opacity: 1; pointer-events: auto; transform: none; }
.sez-quick-actions > * { display: grid; width: var(--sez-tool-size); height: var(--sez-tool-size); min-height: var(--sez-tool-size); place-items: center; align-content: center; gap: 5px; padding: 7px 5px; border: 1px solid var(--sez-dark); border-radius: 0; background: var(--sez-white); color: var(--sez-dark); cursor: pointer; }
.sez-quick-actions > *:last-child { border-bottom-color: var(--sez-dark); }
.sez-quick-actions i { color: var(--sez-dark); font-size: clamp(20px, 1.6vw, 34px); }
.sez-quick-actions img { width: clamp(22px, 1.7vw, 36px); height: clamp(22px, 1.7vw, 36px); object-fit: contain; filter: grayscale(1) brightness(.3); transition: filter .2s ease; }
.sez-quick-actions span { max-width: calc(var(--sez-tool-size) - 10px); overflow: hidden; font-size: clamp(8px, .62vw, 13px); line-height: 1.1; text-align: center; text-overflow: ellipsis; }
.sez-quick-actions > *:hover { background: var(--sez-dark); color: var(--sez-white); }
.sez-quick-actions > *:hover i { color: var(--sez-white); }
.sez-quick-actions > *:hover img { filter: grayscale(1) brightness(0) invert(1); }

/* Modal */
.sez-modal { position: fixed; z-index: 1400; inset: 0; display: grid; visibility: hidden; place-items: center; padding: 20px; }
.sez-modal.is-open { visibility: visible; }
.sez-modal-open .sez-header, .sez-modal-open .sez-quick-tools { visibility: hidden; }
.sez-modal__backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgb(23 27 32 / 74%); opacity: 0; transition: opacity .2s ease; }
.sez-modal.is-open .sez-modal__backdrop { opacity: 1; }
.sez-modal__panel { position: relative; width: min(100%, 620px); max-height: calc(100svh - 40px); overflow-y: auto; padding: clamp(26px, 5vw, 56px); background: var(--sez-white); opacity: 0; transform: translateY(20px); transition: .25s var(--sez-ease); }
.sez-modal.is-open .sez-modal__panel { opacity: 1; transform: none; }
.sez-modal__close { position: absolute; top: 14px; right: 14px; }
.sez-modal h2 { margin-bottom: 16px; font-size: clamp(32px, 4vw, 52px); }
.sez-modal > p, .sez-modal__panel > p { margin-bottom: 26px; color: var(--sez-muted); }

@media (max-width: 1500px) {
  .sez-header__inner { grid-template-columns: minmax(150px, 210px) minmax(380px, 1fr) auto; gap: 12px; }
  .sez-header__phone, .sez-header__actions > .sez-button { display: none; }
  .sez-nav { gap: 12px; }
}

@media (max-width: 1180px) {
  .sez-header__inner { grid-template-columns: minmax(0, 1fr) auto; }
  .sez-header__nav { display: none; }
  .sez-menu-toggle { display: grid; }
}

@media (max-width: 991px) {
  .admin-bar .sez-header { top: 0; }
  .sez-header__utility, .sez-header__nav, .sez-header__actions > .sez-button { display: none; }
  .sez-header__inner { grid-template-columns: minmax(0, 1fr) auto; padding-inline: 14px; }
  .sez-header__logo { height: 42px; }
  .sez-header__actions { display: flex; }
  .sez-menu-toggle { display: grid; }
  .sez-header__actions .sez-icon-button { width: 40px; height: 40px; min-height: 40px; }
  .sez-footer { padding-top: 34px; padding-bottom: 0; }
  .sez-footer__top { grid-template-columns: 1fr; gap: 18px; padding-bottom: 24px; }
  .sez-footer__brand { height: 44px; }
  .sez-footer__top p { max-width: 560px; font-size: 14px; }
  .sez-footer__grid { grid-template-columns: repeat(2, 1fr); gap: 24px; padding-block: 28px; }
  .sez-footer__grid > nav { display: none; }
  .sez-footer__bottom { min-height: auto; flex-direction: column; align-items: flex-start; padding-block: 20px; }
  .sez-lead__form--with-media { grid-template-columns: 1fr; }
  .sez-lead__form--with-media .sez-lead__media { display: none; }
  .sez-footer__statement { display: grid; grid-template-columns: max-content max-content; justify-content: space-between; gap: .08em .3em; padding-block: 8px 12px; font-size: clamp(28px, 8vw, 60px); white-space: normal; }
  .sez-lead__media { display: none; }
  .sez-contacts__layout { min-height: 0; grid-template-columns: 1fr; }
  .sez-contacts__map { min-height: 220px; }
  .sez-contacts__map iframe { min-height: 220px; }
  .sez-contacts__info { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-areas: "phone email hours" "office office factory" "supply orders orders"; }
  .sez-contact-card { min-height: 120px; padding: 16px; }
  .sez-contact-card > small { margin-bottom: 16px; }
  .sez-contact-card p, .sez-contact-card a { font-size: 15px; }
  .sez-quick-tools { display: none; }
  .szai-launcher { right: 12px !important; bottom: calc(12px + env(safe-area-inset-bottom)) !important; display: grid !important; width: 46px !important; height: 46px !important; }
}

@media (min-width: 601px) and (max-width: 991px) {
  .szai-panel { right: 12px !important; bottom: calc(70px + env(safe-area-inset-bottom)) !important; height: min(620px, calc(100dvh - 94px)) !important; }
}

@media (min-width: 992px) {
  body.sez-footer-active .sez-quick-tools,
  body.sez-footer-active .szai-launcher,
  body.sez-footer-active .szai-panel { opacity: 0 !important; pointer-events: none !important; transform: translateY(18px) !important; }
}

@media (max-width: 560px) {
  .sez-footer__grid { grid-template-columns: 1fr; }
  .sez-footer__cta { display: none; }
  .sez-contact-card { min-height: 118px; padding: 13px; }
  .sez-contact-card > small { margin-bottom: 10px; font-size: 8px; }
  .sez-contact-card p, .sez-contact-card a { overflow-wrap: anywhere; font-size: 10px; line-height: 1.35; }
  .sez-contact-card p > span { display: block; margin: 2px 0 0; font-size: 8px; }
}

/* Retired Callback Mini widget: it must never render over the site UI. */
#callback-mini, .callback-mini, #callbackmini, .callbackmini, #callbackkiller, .callbackkiller, .cbk-phone, .cbkPhone, #callback-search, .callback-search, #callback-mini-search, .callback-mini-search, .cbk-search, [id*="callbackkiller" i], [class*="callbackkiller" i], [id*="callbackhunter" i], [class*="callbackhunter" i], [id^="cbk" i], [class^="cbk" i], [class*=" cbk" i], [id*="callibri" i], [class*="callibri" i], [id*="calltouch" i], [class*="calltouch" i], [id*="envybox" i], [class*="envybox" i], [id*="leadback" i], [class*="leadback" i], iframe[src*="callback" i], iframe[src*="callibri" i], iframe[src*="calltouch" i], iframe[src*="envybox" i] { display: none !important; visibility: hidden !important; pointer-events: none !important; }
