.sez-page-hero, .page-title-section, .sez-single__hero, .sez-cat-hero { padding-block: clamp(52px, 5vw, 76px) clamp(30px, 3vw, 44px); border-bottom: 1px solid var(--sez-line); background: var(--sez-white); color: var(--sez-ink); }
.sez-page-hero h1, .page-title-section h1, .sez-single__hero h1, .sez-cat-hero h1 { max-width: 1280px; margin-bottom: 22px; color: var(--sez-ink); }
.sez-page-hero p, .sez-page-hero__description, .sez-single__hero p { max-width: 900px; color: var(--sez-muted); font-size: 19px; }
.sez-page-hero__description p:last-child { margin-bottom: 0; }
.sez-archive, .sez-product-archive { padding-block: clamp(34px, 4vw, 64px); }
.sez-search-results { display: grid; gap: clamp(48px, 6vw, 92px); }
.sez-search-group { min-width: 0; }
.sez-search-group__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 26px; }
.sez-search-group__head h2 { margin: 0; }
.sez-search-group__head > div { display: flex; gap: 8px; }
.sez-search-group__viewport { overflow: hidden; }
.sez-search-group__track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 66px) / 4); gap: 22px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.sez-search-group__track::-webkit-scrollbar { display: none; }
.sez-search-card { scroll-snap-align: start; scroll-snap-stop: always; }
.sez-search-card .sez-content-card__media { aspect-ratio: 1; }
.sez-search-card--case .sez-content-card__media { aspect-ratio: 3 / 4; }
.sez-search-card .sez-content-card__media :is(img, video) { object-fit: cover; }
.sez-search-empty { min-height: 36vh; font-size: 18px; }

.sez-tax-nav { display: flex; gap: 8px; margin-bottom: 42px; overflow-x: auto; scrollbar-width: none; }
.sez-tax-nav::-webkit-scrollbar { display: none; }
.sez-tax-nav a { flex: 0 0 auto; padding: 11px 16px; border: 1px solid var(--sez-line); }
.sez-tax-nav a:hover, .sez-tax-nav a.is-active { border-color: var(--sez-accent); background: var(--sez-accent); color: var(--sez-white); }

.sez-content-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.sez-content-card { min-width: 0; }
.sez-content-card__media { position: relative; display: grid; aspect-ratio: 1; place-items: center; overflow: hidden; background: transparent; }
.sez-content-card__media::before, .sezrel-media::before { position: absolute; z-index: 2; inset: 0; background: rgb(32 37 43 / 50%); content: ""; opacity: 0; transition: opacity .28s ease; }
.sez-content-card:hover .sez-content-card__media::before, .sezrel-card:hover .sezrel-media::before { opacity: 1; }
.post-type-archive-case .sez-content-card__media { aspect-ratio: 3 / 4; }
.sez-content-card__media img, .sez-content-card__media video { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.sez-content-card--project .sez-content-card__media img, .sez-content-card--project .sez-content-card__media video { object-fit: cover; object-position: center; }
.sez-content-card__body { position: relative; height: 220px; overflow: hidden; padding: 26px; background: transparent; color: var(--sez-dark); transition: background-color .22s ease, color .22s ease; }
.sez-content-card--project { --project-body-height: 220px; position: relative; display: grid; min-width: 0; overflow: hidden; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto var(--project-body-height); background: var(--sez-white); color: var(--sez-dark); }
.sez-content-card--project .sez-content-card__media { height: auto; aspect-ratio: 3 / 4; border: 1px solid var(--sez-dark); }
.sez-content-card--project .sez-content-card__body { height: 220px; border: 1px solid var(--sez-dark); border-top: 0; background: var(--sez-white); color: var(--sez-dark); }
.sez-content-card--project:hover .sez-content-card__body { background: var(--sez-dark); }
.sez-content-card__body > span { display: block; margin-bottom: 14px; font-size: 11px; font-weight: 700; text-transform: none; }
.sez-content-card__body h2 { display: -webkit-box; overflow: hidden; margin-bottom: 11px; color: inherit; font-size: var(--sez-card-title-size); line-height: 1.2; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sez-card-summary { position: relative; min-height: 58px; margin-inline: -26px; overflow: hidden; }
.sez-content-card__body p { display: -webkit-box; overflow: hidden; margin: 0; padding-inline: 26px; color: currentColor; font-size: 14px; opacity: .8; transition: opacity .2s ease; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sez-content-card .sez-card-more { display: none; }
.sez-content-card:hover .sez-content-card__body { background: var(--sez-dark); color: var(--sez-white); }
.sez-content-card:hover .sez-card-summary p { opacity: .82; }
.sez-project-year { position: absolute; z-index: 5; top: 18px; right: 18px; color: var(--sez-white); font-size: 12px; font-weight: 700; text-shadow: 0 1px 12px rgb(0 0 0 / 70%); }
.sez-content-card .sez-project-client { display: flex; min-height: 24px; align-items: center; margin-bottom: 9px; font-size: 11px; font-weight: 700; text-transform: none; }
.sez-content-card .sez-project-client__logo { width: 62px; height: 26px; }

.navigation.pagination { margin-top: 42px; }
.navigation.pagination .nav-links, ul.page-numbers { display: flex; gap: 8px; margin: 0; padding: 0; list-style: none; }
.navigation.pagination .page-numbers, ul.page-numbers > li > .page-numbers { display: grid; min-width: 42px; height: 42px; margin: 0; place-items: center; border: 1px solid var(--sez-line); background-image: none !important; color: var(--sez-dark); }
.navigation.pagination .page-numbers:is(.prev, .next), ul.page-numbers .page-numbers:is(.prev, .next) { min-width: 92px; padding-inline: 20px; font-weight: 700; }
.navigation.pagination .page-numbers:is(.prev, .next)::before,
.navigation.pagination .page-numbers:is(.prev, .next)::after,
ul.page-numbers .page-numbers:is(.prev, .next)::before,
ul.page-numbers .page-numbers:is(.prev, .next)::after { display: none !important; width: 0 !important; height: 0 !important; border: 0 !important; background: none !important; content: none !important; }
.navigation.pagination .page-numbers:is(.prev, .next) :is(i, svg, img), ul.page-numbers .page-numbers:is(.prev, .next) :is(i, svg, img) { display: none !important; }
.navigation.pagination .page-numbers.current, ul.page-numbers .page-numbers.current { border-color: var(--sez-accent); background: var(--sez-accent); color: var(--sez-white); }

/* Карточки товаров внутри категорий */
.sez-products-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.sez-product-card { min-width: 0; }
.sez-product-card__media { display: grid; aspect-ratio: 1; place-items: center; overflow: hidden; padding: clamp(14px, 1.5vw, 26px); background: transparent; }
.sez-product-card__media img, .sez-product-card__media video { display: block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain; object-position: center; }
.sez-product-card__body { min-height: 150px; padding: 22px; border-top: 1px solid var(--sez-line); background: var(--sez-white); color: var(--sez-dark); transition: background-color .24s ease, color .24s ease; }
.sez-product-card__body > span { color: var(--sez-accent); font-size: 11px; font-weight: 700; }
.sez-product-card__body h2 { display: -webkit-box; overflow: hidden; margin: 12px 0 8px; font-size: 23px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sez-product-card__body p { display: -webkit-box; overflow: hidden; margin: 0; color: var(--sez-muted); font-size: 14px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sez-product-card:hover .sez-product-card__body { background: var(--sez-dark); color: var(--sez-white); }
.sez-product-card:hover .sez-product-card__body > span, .sez-product-card:hover .sez-product-card__body h2, .sez-product-card:hover .sez-product-card__body a, .sez-product-card:hover .sez-product-card__body p { color: var(--sez-white); }
.sez-empty-state { padding: 54px; border: 1px solid var(--sez-line); }

/* Архив и страница услуги */
.sez-service-archive { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: dense; grid-auto-rows: 480px; border-top: 1px solid var(--sez-line); border-left: 1px solid var(--sez-line); }
.sez-service-archive__card { position: relative; display: flex; overflow: hidden; align-items: flex-end; padding: 30px; border-right: 1px solid var(--sez-line); border-bottom: 1px solid var(--sez-line); background: var(--sez-white); color: var(--sez-ink); isolation: isolate; }
.sez-service-archive__card.is-wide, .sez-service-archive__card.is-full { grid-column: span 2; }
.sez-service-archive__media, .sez-service-archive__shade { position: absolute; z-index: -2; inset: 0; opacity: 0; transition: opacity .3s ease; }
.sez-service-archive__media img, .sez-service-archive__media video { width: 100%; height: 100%; object-fit: cover; }
.sez-service-archive__shade { z-index: -1; background: linear-gradient(0deg, rgb(32 37 43 / 86%), transparent 72%); }
.sez-service-archive__card strong { color: inherit; font-size: 32px; line-height: 1.1; }
.sez-service-archive__index { position: absolute; top: 30px; left: 30px; color: var(--sez-dark); font-size: 12px; }
.sez-service-archive__card--media-full, .sez-service-archive__card--mounting { background: var(--sez-dark); color: var(--sez-white); }
.sez-service-archive__card--media-full .sez-service-archive__media, .sez-service-archive__card--media-full .sez-service-archive__shade { opacity: 1; }
.sez-service-archive__card--media-full .sez-service-archive__index, .sez-service-archive__card--mounting .sez-service-archive__index { color: var(--sez-white); }
.sez-service-archive__card--mounting:hover .sez-service-archive__media, .sez-service-archive__card--mounting:hover .sez-service-archive__shade { opacity: 1; }
.sez-service-archive__card--enclosure:hover { background: var(--sez-dark); color: var(--sez-white); }
.sez-service-archive__card--enclosure:hover .sez-service-archive__media { opacity: .34; }
.sez-service-archive__card--enclosure:hover .sez-service-archive__index { color: var(--sez-white); }
.sez-service-archive__card--plain .sez-card-detail, .sez-service-archive__card--enclosure .sez-card-detail { color: var(--sez-dark); }
.sez-service-archive__card--enclosure:hover .sez-card-detail { color: var(--sez-white); }
.sez-service-hero { position: relative; display: grid; min-height: calc(100svh - var(--sez-header-height)); overflow: hidden; align-items: end; background: var(--sez-dark); color: var(--sez-white); isolation: isolate; }
.sez-service-hero__media, .sez-service-hero__shade { position: absolute; inset: 0; }
.sez-service-hero__media { z-index: -2; }
.sez-service-hero__media img, .sez-service-hero__media video, .sez-service-hero__media iframe { width: 100%; height: 100%; object-fit: cover; border: 0; }
.sez-service-hero__shade { z-index: -1; background: linear-gradient(90deg, rgb(32 37 43 / 88%) 0%, rgb(32 37 43 / 58%) 48%, rgb(32 37 43 / 28%) 100%); }
.sez-service-hero__content { padding-block: clamp(90px, 14vh, 180px); }
.sez-service-hero h1 { max-width: 1180px; margin: 0 0 34px; color: var(--sez-white); font-size: clamp(54px, 6vw, 116px); }
.sez-service-hero .sez-eyebrow { color: var(--sez-white); }
.single-service .sez-nku-section { padding-block: 66px; border-top: 1px solid var(--sez-line); }

/* Содержимое записей */
.sez-article, .sez-nku-section, .project-details { padding-block: 70px; }
.sez-body, .sez-nku-text, .project-details .text { max-width: 920px; color: #30363c; font-size: 18px; line-height: 1.75; }
.sez-body > *, .sez-nku-text > * { margin-bottom: 1.25em; }
.sez-body h2, .sez-nku-text h2 { margin-top: 1.7em; font-size: 40px; }
.sez-body h3, .sez-nku-text h3 { margin-top: 1.5em; }
.sez-body a, .sez-nku-text a { color: var(--sez-accent); text-decoration: underline; }
.sez-body img, .sez-nku-text img { height: auto; }
.sez-body :is(.alignwide, .wp-block-gallery, .wp-block-cover, .wp-block-video) { width: min(1180px, calc(100vw - 2 * var(--sez-gutter))); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.sez-body .alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }
.sez-body :is(.wp-block-button__link, .wp-element-button) { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 13px 22px; border: 1px solid var(--sez-dark); border-radius: 0; background: var(--sez-dark); color: var(--sez-white); font-weight: 700; text-decoration: none; }
.sez-body :is(.wp-block-button__link, .wp-element-button):hover { background: var(--sez-white); color: var(--sez-dark); }
.sez-body .wp-block-quote { margin: 36px 0; padding: 28px 32px; border-left: 3px solid var(--sez-accent); background: #f5f6f7; }
.sez-body .wp-block-quote p { margin: 0 0 12px; font: 600 clamp(20px, 2vw, 30px)/1.45 "Montserrat", sans-serif; }
.sez-body .wp-block-quote cite { color: var(--sez-muted); font-size: 13px; }
.sez-body .wp-block-table { overflow-x: auto; }
.sez-body .wp-block-table table { width: 100%; border-collapse: collapse; }
.sez-body .wp-block-table :is(th, td) { padding: 14px 16px; border: 1px solid var(--sez-line); text-align: left; vertical-align: top; }
.sez-body .wp-block-table th { background: var(--sez-dark); color: var(--sez-white); }
.sez-body .wp-block-separator { width: 100%; margin-block: 42px; border: 0; border-top: 1px solid var(--sez-line); }
.sez-body .wp-block-file { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 0; border-block: 1px solid var(--sez-line); }
.sez-body .wp-block-file__button { border-radius: 0; background: var(--sez-dark); color: var(--sez-white); }
.sez-body :is(.wp-block-image, .wp-block-video, .wp-block-embed) figcaption { margin-top: 8px; color: var(--sez-muted); font-size: 12px; }
.sez-body .wp-block-columns { gap: clamp(18px, 3vw, 48px); }

.sez-nku-faq details, .sez-nku-faq-item { border-top: 1px solid var(--sez-line); }
.sez-nku-faq details:last-child, .sez-nku-faq-item:last-child { border-bottom: 1px solid var(--sez-line); }
.sez-nku-faq summary, .sez-nku-faq-head { display: flex; min-height: 72px; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 0; cursor: pointer; font-size: 20px; font-weight: 700; }
.sez-nku-faq-body { padding: 0 0 24px; color: var(--sez-muted); }
.sez-nku-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.sez-nku-controls { display: flex; flex: 0 0 auto; gap: 10px; }
.sez-nku-track, .sezproj-track { display: flex; gap: 12px; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; scroll-snap-type: x mandatory; }
.sez-nku-track::-webkit-scrollbar, .sezproj-track::-webkit-scrollbar { display: none; }
.sez-nku-item { --sez-gallery-height: clamp(300px, 30vw, 520px); --sez-media-ratio: 1; flex: 0 0 auto; width: min(calc(var(--sez-gallery-height) * var(--sez-media-ratio)), calc(100vw - 2 * var(--sez-gutter))); scroll-snap-align: start; scroll-snap-stop: always; }
.sezproj-card { flex: 0 0 min(34vw, 520px); scroll-snap-align: start; }
.sez-nku-media, .sezproj-media { display: grid; height: var(--sez-gallery-height, clamp(300px, 30vw, 520px)); place-items: center; aspect-ratio: auto; overflow: hidden; background: transparent; }
.sez-nku-item[data-sez-ratio="9-16"] { --sez-media-ratio: .5625; }
.sez-nku-item[data-sez-ratio="3-4"] { --sez-media-ratio: .75; }
.sez-nku-item[data-sez-ratio="1-1"] { --sez-media-ratio: 1; }
.sez-nku-item[data-sez-ratio="4-3"] { --sez-media-ratio: 1.3333; }
.sez-nku-item[data-sez-ratio="16-9"] { --sez-media-ratio: 1.7778; }
.sez-nku-item .sez-nku-media { width: 100%; aspect-ratio: auto; }
.sez-nku-media img, .sez-nku-media video, .sez-nku-media iframe, .sezproj-media img, .sezproj-media video { width: 100%; height: 100%; object-fit: contain; object-position: center; }
.sez-nku-carousel { position: relative; }
.sez-nku-nav { position: relative; z-index: 3; display: grid; width: 46px; height: 46px; place-items: center; border: 1px solid var(--sez-line); background: var(--sez-white); color: var(--sez-ink); }
.sez-nku-nav:hover { border-color: var(--sez-accent); background: var(--sez-accent); color: var(--sez-white); }

.sez-single__layout { display: grid; grid-template-columns: minmax(360px, .82fr) minmax(0, 1.18fr); align-items: start; gap: clamp(38px, 5vw, 86px); padding-block: 70px; }
.sez-single__layout:not(.sez-single__layout--with-cover) { grid-template-columns: minmax(0, 980px); justify-content: center; }
.sez-single__media-column { position: sticky; top: calc(var(--sez-header-height) + 24px); min-width: 0; }
.sez-single__cover { display: grid; width: 100%; min-height: 0; aspect-ratio: 1 / 1; place-items: center; overflow: hidden; background: transparent; }
.sez-single__cover :is(img, video) { display: block; width: 100%; height: 100%; max-height: none; object-fit: cover; object-position: center; background: transparent; }
.sez-single__article { min-width: 0; }
.sez-share { display: flex; min-height: 58px; align-items: center; gap: 0; margin-top: 52px; border-block: 1px solid var(--sez-line); }
.sez-share > strong { margin-right: auto; color: var(--sez-dark); font-size: 12px; text-transform: none; }
.sez-share__toggle { display: none !important; }
.sez-share > a, .sez-share > button { display: grid; width: 48px; height: 48px; place-items: center; border: 0; border-left: 1px solid var(--sez-line); background: transparent; color: var(--sez-dark); font-size: 17px; }
.sez-share > a:hover, .sez-share > button:hover { background: var(--sez-dark); color: var(--sez-white); }
.sez-single__media-column .sez-share { margin-top: 0; }
.sez-related-section, .sezrel { padding-block: var(--sez-section); background: var(--sez-white); }
.sez-generic-page__content { max-width: 1080px; padding-block: var(--sez-section); }

/* Связанные материалы */
.sezrel-carousel { position: relative; }
.sezrel-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 36px; }
.sezrel-controls { display: flex; gap: 8px; }
.sezrel-track { display: flex; gap: 24px; overflow-x: auto; padding: 2px 0 14px; scrollbar-width: none; scroll-snap-type: x mandatory; }
.sezrel-track::-webkit-scrollbar { display: none; }
.sezrel-card { display: flex; flex: 0 0 calc((100% - 96px) / 5); max-width: calc((100% - 96px) / 5); flex-direction: column; overflow: hidden; border: var(--sez-card-border); background: var(--sez-card-bg); color: var(--sez-card-color); scroll-snap-align: start; }
.sezrel-media { position: relative; aspect-ratio: 1; overflow: hidden; background: transparent; }
.sezrel-card.is-case .sezrel-media { aspect-ratio: 3 / 4; }
.sezrel-media > img, .sezrel-media > video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.sezrel-card.is-case .sezrel-media > img, .sezrel-card.is-case .sezrel-media > video { object-fit: cover; object-position: center; }
.sezrel-body { display: flex; min-height: var(--sez-card-body-height); flex: 1; flex-direction: column; gap: 8px; padding: 22px; background: var(--sez-card-bg); color: var(--sez-card-color); transition: background-color .22s ease, color .22s ease; }
.sezrel-card:hover .sezrel-body { background: var(--sez-card-hover-bg); color: var(--sez-card-hover-color); }
.sezrel-card.is-case { --project-body-height: var(--sez-card-body-height); position: relative; display: grid; overflow: hidden; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto var(--project-body-height); transition: background-color .25s ease; }
.sezrel-card.is-case .sezrel-body { min-height: var(--sez-card-body-height); }
.sezrel-meta { font-size: var(--sez-card-meta-size); font-weight: 700; text-transform: none; }
.sezrel-title { display: -webkit-box; overflow: hidden; margin: 0; color: inherit; font-size: var(--sez-card-title-size); -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sezrel-ex { display: -webkit-box; overflow: hidden; color: currentColor; opacity: .76; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sezrel-summary { position: relative; min-height: 48px; margin-inline: -18px; overflow: hidden; }
.sezrel-ex { padding-inline: 18px; }
.sezrel-more { display: none; }
.sezrel-card:hover .sezrel-ex { opacity: .82; }
.sezrel-actions { margin-top: auto; }
.sezrel-btn { display: inline-flex; min-height: 40px; align-items: center; color: var(--sez-white); font-weight: 700; }
.sezrel-nav { display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid var(--sez-line); background: var(--sez-white); }
.sez-related-section .sez-section-head { margin-bottom: clamp(22px, 2vw, 34px); }
.sez-related-section .sez-content-grid.sez-feed__track { display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - 96px) / 5); gap: 24px; overflow-x: auto; padding-bottom: 8px; scrollbar-width: none; scroll-snap-type: x mandatory; }
.sez-related-section .sez-content-grid.sez-feed__track > * { scroll-snap-align: start; scroll-snap-stop: always; }
.sez-related-section .sez-content-grid.sez-feed__track::-webkit-scrollbar { display: none; }
.sez-related-service-card { position: relative; min-height: clamp(360px, 30vw, 560px); overflow: hidden; background: var(--sez-dark); color: var(--sez-white); }
.sez-related-service-card .sez-content-card__media { position: absolute; inset: 0; aspect-ratio: auto; }
.sez-related-service-card .sez-content-card__media::before { opacity: .56; }
.sez-related-service-card .sez-content-card__media :is(img, video) { object-fit: cover; }
.sez-related-service-card .sez-content-card__body { position: absolute; z-index: 4; right: 0; bottom: 0; left: 0; height: auto; min-height: 150px; display: flex; flex-direction: column; justify-content: flex-end; background: transparent; color: var(--sez-white); }
.sez-related-service-card .sez-content-card__body p { display: none; }
.sez-related-service-card:hover .sez-content-card__body { background: transparent; }

/* Проект */
.sez-project-heading { display: grid; width: 100%; max-width: none; grid-template-columns: minmax(0, 1fr) minmax(500px, .62fr); align-items: stretch; gap: clamp(34px, 5vw, 90px); }
.sez-project-heading h1 { display: flex; min-width: 0; align-items: center; margin: 0; font-size: clamp(38px, 4vw, 76px); overflow-wrap: anywhere; }
.sez-project-heading__meta { display: grid; width: min(100%, 660px); align-content: center; justify-self: end; margin: 0; border-top: 1px solid var(--sez-line); }
.sez-project-heading__meta > div { display: grid; grid-template-columns: 112px minmax(0, 1fr); align-items: center; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--sez-line); }
.sez-project-heading__meta dt { color: var(--sez-dark); font-size: 12px; font-weight: 800; }
.sez-project-heading__meta dd { display: flex; min-width: 0; align-items: center; justify-content: flex-end; gap: 9px; margin: 0; color: var(--sez-dark); font-size: clamp(14px, 1vw, 18px); font-weight: 700; text-align: right; overflow-wrap: anywhere; }
.sez-project-heading__logo { display: grid; width: 56px; height: 34px; flex: 0 0 auto; place-items: center; }
.sez-project-heading__logo img { width: 100%; height: 100%; object-fit: contain; }
.sez-project-overview { padding-block: var(--sez-section); }
.sez-project-overview__grid { display: grid; min-height: 460px; grid-template-columns: minmax(0, .78fr) minmax(340px, 1fr) minmax(340px, 1fr); align-items: stretch; }
.sez-project-overview__copy { min-width: 0; padding: clamp(24px, 2.5vw, 42px); border-right: 1px solid var(--sez-line); }
.sez-project-overview__side { display: flex; min-width: 0; flex-direction: column; border-left: 1px solid var(--sez-line); }
.sez-project-overview__side .sez-project-heading__meta { padding: clamp(20px, 2vw, 34px); border-top: 0; }
.sez-project-overview__side .sez-lead--embedded { flex: 1; }
.sez-project-overview__side .sez-lead--embedded .sez-lead__content { border: 0; }
.sez-project-single__cover { display: grid; min-height: 460px; height: 100%; place-items: center; overflow: hidden; padding-inline: clamp(18px, 2vw, 34px); background: transparent; }
.sez-project-single__cover img { width: 100%; height: 100%; object-fit: contain; }
.sez-project-single__cover--empty { border: 1px solid var(--sez-line); }
.sez-project-gallery { padding-bottom: var(--sez-section); }
.sez-project-gallery__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 30px; }
.sez-project-gallery__head .sec-title { margin: 0; }
.sez-project-gallery__controls { display: flex; flex: 0 0 auto; gap: 10px; }
.sez-project-gallery__grid { display: flex; gap: clamp(12px, 1.4vw, 24px); overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; scroll-snap-type: x mandatory; }
.sez-project-gallery__grid::-webkit-scrollbar { display: none; }
.sez-project-gallery__item { --project-gallery-height: clamp(280px, 25vw, 470px); --sez-media-ratio: 1.3333; display: grid; width: min(calc(var(--project-gallery-height) * var(--sez-media-ratio)), calc(100vw - 2 * var(--sez-gutter))); min-width: 0; flex: 0 0 auto; grid-template-rows: var(--project-gallery-height) 3.8em; gap: 10px; margin: 0; scroll-snap-align: start; scroll-snap-stop: always; }
.sez-project-gallery__item[data-sez-ratio="9-16"] { --sez-media-ratio: .5625; }
.sez-project-gallery__item[data-sez-ratio="3-4"] { --sez-media-ratio: .75; }
.sez-project-gallery__item[data-sez-ratio="1-1"] { --sez-media-ratio: 1; }
.sez-project-gallery__item[data-sez-ratio="4-3"] { --sez-media-ratio: 1.3333; }
.sez-project-gallery__item[data-sez-ratio="16-9"] { --sez-media-ratio: 1.7778; }
.sez-project-gallery__media { display: grid; width: 100%; height: var(--project-gallery-height); place-items: center; overflow: hidden; background: transparent; }
.sez-project-gallery__media img, .sez-project-gallery__media video { width: 100%; height: 100%; object-fit: contain; object-position: center; background: transparent; }
.sez-project-gallery__item figcaption { display: -webkit-box; overflow: hidden; color: var(--sez-muted); font-size: 12px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }

.fancybox-button--arrow_left svg, .fancybox-button--arrow_right svg { display: none; }
.fancybox-navigation { position: absolute; z-index: 99998; right: 0; bottom: max(18px, env(safe-area-inset-bottom)); left: 0; display: none; justify-content: center; gap: 8px; pointer-events: none; }
.fancybox-show-nav .fancybox-navigation { display: flex !important; }
.fancybox-navigation button { position: relative; top: auto; right: auto !important; left: auto !important; width: clamp(116px, 18vw, 240px); height: 52px; margin: 0; padding: 0; border: 1px solid rgb(255 255 255 / 42%); background: var(--sez-dark); color: var(--sez-white); pointer-events: auto; }
.fancybox-navigation button::before { background: transparent; }
.fancybox-button--arrow_left::before, .fancybox-button--arrow_right::before { position: absolute; top: 50%; left: 50%; width: 12px; height: 12px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; content: ""; }
.fancybox-button--arrow_left::before { transform: translate(-35%, -50%) rotate(-135deg); }
.fancybox-button--arrow_right::before { transform: translate(-65%, -50%) rotate(45deg); }

.sez-company-page { overflow: hidden; background: var(--sez-white); color: var(--sez-ink); }
.sez-company-reveal { position: relative; opacity: 0; clip-path: inset(0 0 28% 0); transform: translateY(54px); transition: opacity .45s ease, clip-path .85s var(--sez-ease), transform .85s var(--sez-ease); }
.sez-company-reveal::after { display: none; }
.sez-company-reveal.is-visible { opacity: 1; clip-path: inset(0); transform: none; }
.sez-company-reveal.is-visible::after { opacity: .28; transform: none; }
.sez-company-reveal > .sec-title, .sez-company-reveal > div, .sez-company-reveal > figure { transition: transform .75s .08s var(--sez-ease), opacity .55s .08s ease; }
.sez-company-reveal:not(.is-visible) > .sec-title { opacity: 0; transform: translateX(-42px); }
.sez-company-reveal:not(.is-visible) > div, .sez-company-reveal:not(.is-visible) > figure { opacity: 0; transform: translateX(42px); }
.sez-company-intro { display: grid; min-height: 72vh; grid-template-columns: minmax(0, .9fr) minmax(440px, 1.1fr); align-items: center; gap: clamp(46px, 6vw, 110px); padding-block: var(--sez-section); }
.sez-company-intro__copy { max-width: 820px; }
.sez-company-lead { color: var(--sez-ink); font: 600 clamp(20px, 1.8vw, 31px)/1.5 "Open Sans", sans-serif; }
.sez-company-intro__media { position: relative; min-height: min(70vh, 820px); overflow: hidden; background: transparent; }
.sez-company-intro__slide { position: absolute; inset: 0; display: grid; visibility: hidden; place-items: center; opacity: 0; }
.sez-company-intro__slide.is-active { visibility: visible; opacity: 1; }
.sez-company-intro__slide img, .sez-company-intro__slide video { width: 100%; height: 100%; object-fit: contain; }
.sez-company-director { display: grid; min-height: 620px; grid-template-columns: minmax(360px, .72fr) minmax(0, 1.28fr); align-items: stretch; border-top: 1px solid var(--sez-line); border-left: 1px solid var(--sez-line); }
.sez-company-director__photo { display: grid; min-height: 620px; place-items: end center; overflow: hidden; border-right: 1px solid var(--sez-line); border-bottom: 1px solid var(--sez-line); background: transparent; }
.sez-company-director__photo img { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.sez-company-director__copy { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: clamp(34px, 6vw, 110px); border-right: 1px solid var(--sez-line); border-bottom: 1px solid var(--sez-line); }
.sez-company-director blockquote { display: block; max-width: 920px; min-height: 7em; margin: 30px 0 44px; overflow: hidden; color: rgb(32 37 43 / 28%); font: 700 clamp(21px, 1.8vw, 36px)/1.32 "Montserrat", sans-serif; }
.sez-company-director .sez-typewriter-char { color: rgb(32 37 43 / 28%); transition: color .12s linear; }
.sez-company-director .sez-typewriter-char.is-dark { color: var(--sez-dark); }
.sez-company-director__copy > strong { margin-bottom: 6px; font-size: 18px; }
.sez-company-director__copy > span:last-child { color: var(--sez-muted); }
.sez-company-director--no-photo { grid-template-columns: 1fr; }
.sez-company-documents { padding-block: clamp(64px, 8vw, 140px); }
.sez-company-documents__grid { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--sez-line); border-left: 1px solid var(--sez-line); }
.sez-company-documents__grid::before { position: absolute; top: -1px; right: 100%; width: 100vw; border-top: 1px solid var(--sez-line); content: ""; }
.sez-company-documents__grid a { position: relative; display: grid; min-height: 174px; align-content: end; gap: 8px; padding: 24px; overflow: hidden; border-right: 1px solid var(--sez-line); border-bottom: 1px solid var(--sez-line); color: var(--sez-dark); text-decoration: none; transition: color .28s ease; }
.sez-company-documents__grid a::before { position: absolute; inset: 0; background: var(--sez-dark); content: ""; transform: translateY(102%); transition: transform .38s var(--sez-ease); }
.sez-company-documents__grid a > * { position: relative; z-index: 1; }
.sez-company-documents__grid a:hover { color: var(--sez-white); }
.sez-company-documents__grid a:hover::before { transform: translateY(0); }
.sez-company-documents__grid span { position: absolute; top: 24px; left: 24px; color: var(--sez-accent); font-size: 11px; font-weight: 700; }
.sez-company-documents__grid strong { max-width: 82%; font: 700 18px/1.3 "Montserrat", sans-serif; }
.sez-company-documents__grid small { color: var(--sez-muted); }
.sez-company-documents__grid a:hover small { color: var(--sez-white); }
.sez-company-documents__grid i { position: absolute; top: 24px; right: 24px; font-size: 24px; }
.sez-company-principles, .sez-company-history { padding-block: var(--sez-section); }
.sez-company-principles__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 42px; border-top: 1px solid var(--sez-line); border-left: 1px solid var(--sez-line); }
.sez-company-principles__grid article { min-height: 280px; padding: clamp(22px, 2.6vw, 42px); border-right: 1px solid var(--sez-line); border-bottom: 1px solid var(--sez-line); background: var(--sez-white); }
.sez-company-principles__grid article:nth-child(2) { background: var(--sez-dark); color: var(--sez-white); }
.sez-company-principles__grid article:nth-child(3) { border-top: 4px solid var(--sez-accent); }
.sez-company-principles__grid span { display: block; margin-bottom: 80px; color: var(--sez-accent); font-size: 11px; font-weight: 700; }
.sez-company-principles__grid h3 { margin-bottom: 12px; color: inherit; font-size: 23px; }
.sez-company-principles__grid p { margin: 0; color: inherit; opacity: .7; }
.sez-company-history__track { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 42px; border-top: 1px solid var(--sez-line); }
.sez-company-history__track article { position: relative; min-height: 300px; padding: 30px 26px; border-right: 1px solid var(--sez-line); border-bottom: 1px solid var(--sez-line); }
.sez-company-history__track article::before { position: absolute; top: -5px; left: 24px; width: 9px; height: 9px; background: var(--sez-accent); content: ""; }
.sez-company-history__track strong { display: block; margin-bottom: 100px; color: var(--sez-accent); font-size: 24px; }
.sez-company-history__track h3 { margin-bottom: 10px; font-size: 21px; }
.sez-company-history__track p { margin: 0; color: var(--sez-muted); font-size: 13px; }
.sez-company-gallery { padding-block: var(--sez-section); }
.sez-company-gallery__viewport { height: clamp(560px, 48vw, 920px); margin-top: 42px; overflow: hidden; }
.sez-company-gallery__track { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: clamp(270px, 23vw, 440px); gap: 16px; will-change: transform; }
.sez-company-gallery__track figure { display: grid; min-width: 0; margin: 0; overflow: hidden; place-items: center; background: transparent; }
.sez-company-gallery__track img { width: 100%; height: 100%; object-fit: contain; object-position: center; background: var(--sez-white); }
.sez-company-gallery__track video { width: 100%; height: 100%; object-fit: contain; object-position: center; background: var(--sez-white); }
.sez-company-advantages { padding-block: var(--sez-section); }
.sez-company-advantages__grid { position: relative; display: block; height: 520px; min-height: 520px; margin-top: 44px; overflow: hidden; border-top: 1px solid var(--sez-line); border-left: 1px solid var(--sez-line); contain: layout paint; isolation: isolate; }
.sez-company-advantage { position: absolute; z-index: 1; display: grid; visibility: hidden; width: 50%; height: 260px; overflow: hidden; align-content: end; padding: clamp(24px, 3vw, 46px); border-right: 1px solid var(--sez-line); border-bottom: 1px solid var(--sez-line); background: var(--sez-white); opacity: 0; }
.sez-company-advantage.is-visible { visibility: visible; opacity: 1; }
.sez-company-advantage.is-entering { z-index: 3; }
.sez-company-advantage.is-leaving { z-index: 2; visibility: visible; opacity: 1; }
.sez-company-advantage[data-cube-slot="0"] { top: 0; left: 0; width: 100%; }
.sez-company-advantage[data-cube-slot="1"] { top: 260px; left: 0; }
.sez-company-advantage[data-cube-slot="2"] { top: 260px; left: 50%; }
.sez-company-advantage::after { position: absolute; z-index: 4; inset: 0; background: var(--sez-accent); content: ""; transform: translateX(-102%); }
.sez-company-advantage.is-visible::after { animation: sez-company-card-wipe .82s var(--sez-ease); }
@keyframes sez-company-card-wipe { 0% { transform: translateX(-102%); } 52% { transform: translateX(0); } 100% { transform: translateX(102%); } }
.sez-company-advantage > span { align-self: start; color: var(--sez-accent); font-size: 11px; font-weight: 700; }
.sez-company-advantage strong { display: flex; align-items: baseline; gap: 8px; margin: auto 0 16px; color: var(--sez-accent); font: 700 clamp(34px, 4vw, 68px)/1 "Montserrat", sans-serif; }
.sez-company-advantage strong small { font-size: 13px; }
.sez-company-advantage h3 { display: -webkit-box; overflow: hidden; margin-bottom: 10px; font-size: clamp(21px, 2vw, 32px); -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.sez-company-advantage p { display: -webkit-box; overflow: hidden; max-width: 680px; margin: 0; color: var(--sez-muted); -webkit-box-orient: vertical; -webkit-line-clamp: 3; }

.sez-error { display: grid; min-height: 70vh; place-items: center; padding-block: var(--sez-section); background: var(--sez-white); }
.sez-error__code { display: block; color: var(--sez-accent); font-size: 180px; font-weight: 700; line-height: .8; }
.sez-error h1 { margin-block: 30px 18px; }
.sez-error p { max-width: 680px; color: var(--sez-muted); font-size: 19px; }
.sez-error__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }

@media (min-width: 992px) {
  .blog .sez-content-grid, .page-template-page-blog .sez-content-grid, .archive.category .sez-content-grid, .post-type-archive-case .sez-content-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
}

@media (min-width: 1500px) {
  .sez-products-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 2100px) {
  .sez-products-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 991px) {
  .sez-search-group__track { grid-auto-columns: calc((100% - 12px) / 2); gap: 12px; }
  .sez-page-hero, .page-title-section, .sez-single__hero, .sez-cat-hero { padding-block: 54px 38px; }
  .sez-page-hero p, .sez-page-hero__description, .sez-single__hero p { font-size: 16px; }
  .sez-content-grid, .sez-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .sez-content-card__body { height: 185px; padding: 18px; }
  .sez-content-card--project .sez-content-card__body { height: 180px; }
  .sez-card-summary { margin-inline: -18px; }
  .sez-content-card__body p { padding-inline: 18px; }
  .sez-content-card .sez-card-more { display: none; }
  .sez-catalog-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: none; grid-auto-rows: 220px; }
  .sez-catalog-card { grid-column: span 6; grid-row: auto !important; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
  .sez-catalog-card:nth-child(3n + 1) { grid-column: span 12; }
  .sez-catalog-card__title { font-size: 21px; }
  .sez-service-archive { grid-auto-rows: 300px; }
  .sez-service-hero { min-height: 72svh; }
  .sez-service-hero__content { padding-block: 72px 54px; }
  .sez-service-hero h1 { margin-bottom: 24px; font-size: clamp(38px, 11vw, 64px); }
  .sezproj-card { flex-basis: calc((100% - 10px) / 2); }
  .sez-single__layout, .sez-project-overview__grid { grid-template-columns: 1fr; }
  .sez-project-single__cover { order: 1; }
  .sez-project-overview__copy { order: 2; }
  .sez-project-overview__side { order: 3; }
  .sez-project-heading { grid-template-columns: 1fr; }
  .sez-single__media-column { position: static; }
  .sez-single__cover { min-height: 0; }
  .sez-project-overview__copy, .sez-project-overview__side { border-inline: 0; border-bottom: 1px solid var(--sez-line); }
  .sez-project-single__cover { min-height: 320px; }
  .sez-project-single__cover img { min-height: 0; max-height: 440px; }
  .sez-project-gallery__head, .sez-nku-head { align-items: center; }
  .sez-company-intro { grid-template-columns: 1fr; }
  .sez-company-director { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sez-company-intro { min-height: 0; gap: 28px; }
  .sez-company-intro__media { min-height: 420px; }
  .sez-company-director__photo { min-height: 240px; }
  .sez-company-director__copy { min-height: 240px; padding: 20px; }
  .sez-company-documents__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sez-company-advantages__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sez-company-principles__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sez-company-history__track { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sez-company-gallery__track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sez-share { position: static; justify-content: flex-end; flex-direction: row; flex-wrap: nowrap; overflow: hidden; border: 0; }
  .sez-share > strong { display: none; }
  .sez-share > a, .sez-share > .sez-copy { width: 0; height: 42px; overflow: hidden; border: 0; opacity: 0; visibility: hidden; transition: width .22s ease, opacity .22s ease; }
  .sez-share.is-open > a, .sez-share.is-open > .sez-copy { width: 42px; opacity: 1; visibility: visible; }
  .sez-share > .sez-share__toggle { display: grid !important; width: 42px; height: 42px; flex: 0 0 42px; border: 1px solid var(--sez-line); }
  .sez-nku-controls .sez-nku-nav { display: grid; }
  .sezrel-card { flex-basis: calc((100% - 12px) / 2); max-width: calc((100% - 12px) / 2); }
  .sez-related-section .sez-content-grid.sez-feed__track { grid-auto-columns: calc((100% - 12px) / 2); gap: 12px; }
}

@media (max-width: 560px) {
  .sez-project-gallery__head { margin-bottom: 18px; }
  .sez-project-gallery__controls, .sez-nku-controls { gap: 6px; }
  .sez-project-gallery__controls > button, .sez-nku-controls .sez-nku-nav { width: 40px; min-width: 40px; height: 40px; }
  .sez-project-gallery__media, .sez-nku-media { height: 260px; }
  .sez-project-gallery__item { --project-gallery-height: 260px; width: min(calc(260px * var(--sez-media-ratio, 1.3333)), calc(100vw - 28px)); }
  .sez-nku-item { --sez-gallery-height: 260px; width: min(calc(260px * var(--sez-media-ratio, 1)), calc(100vw - 28px)); }
  .sez-content-card--project { --project-body-height: 180px; grid-template-rows: 250px var(--project-body-height); }
  .sez-content-card--project .sez-content-card__media { height: 250px; }
  .sez-content-card .sez-project-client, .sez-content-card .sez-project-client span { font-size: 9px; line-height: 1.25; }
  .sez-service-hero { min-height: 68svh; }
  .sez-service-hero__shade { background: linear-gradient(0deg, rgb(32 37 43 / 88%), rgb(32 37 43 / 32%)); }
  .sez-service-hero__content { padding-block: 54px 38px; }
  .sez-service-hero h1 { font-size: clamp(34px, 10vw, 52px); }
  .sez-content-card__body { height: 160px; padding: 14px; }
  .sez-card-summary { margin-inline: -14px; }
  .sez-content-card__body p { padding-inline: 14px; }
  .sez-content-card__body h2 { font-size: 16px; }
  .sez-content-card__body p { font-size: 12px; }
  .sez-catalog-grid { grid-auto-rows: 190px; }
  .sez-catalog-card { padding: 14px; }
  .sez-catalog-card__count { font-size: 9px; }
  .sez-catalog-card__title { font-size: 16px; }
  .sez-product-card__body { min-height: 125px; padding: 14px; }
  .sez-product-card__body h2 { font-size: 16px; }
  .sez-service-archive { grid-auto-rows: 220px; }
  .sez-service-archive__card { padding: 14px; }
  .sez-service-archive__index { top: 14px; left: 14px; }
  .sez-service-archive__card strong { font-size: 16px; }
  .sez-body, .sez-nku-text { font-size: 16px; }
  .sez-body h2, .sez-nku-text h2 { font-size: 28px; }
  .sez-project-heading { align-items: flex-start; }
  .sez-project-heading__logo { width: 34px; height: 24px; }
  .sezrel-card { flex-basis: calc((100% - 10px) / 2); max-width: calc((100% - 10px) / 2); }
  .sez-company-intro { padding-block: 44px; }
  .sez-company-intro__media { min-height: 280px; }
  .sez-company-director { min-height: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sez-company-director__photo, .sez-company-director__copy { min-height: 190px; }
  .sez-company-director__copy { padding: 14px; }
  .sez-company-director blockquote { min-height: 8.25em; margin: 12px 0 16px; font-size: 13px; }
  .sezrel-title { font-size: 16px; }
  .sez-single__layout { gap: 20px; padding-block: 24px; }
  .sez-project-single > .sez-single__hero { border-bottom: 0; }
  .sez-single__cover { min-height: 0; }
  .sez-company-documents__grid { grid-template-columns: 1fr 1fr; }
  .sez-company-documents__grid a { min-height: 126px; padding: 14px; }
  .sez-company-documents__grid span { top: 14px; left: 14px; font-size: 9px; }
  .sez-company-documents__grid strong { font-size: 12px; }
  .sez-company-documents__grid small { font-size: 9px; }
  .sez-company-documents__grid i { top: 14px; right: 14px; font-size: 17px; }
  .sez-company-advantages__grid { height: 420px; min-height: 420px; grid-template-columns: 1fr 1fr; grid-template-rows: repeat(2, 210px); margin-top: 26px; }
  .sez-company-advantage { padding: 16px; }
  .sez-company-advantage { height: 210px; }
  .sez-company-advantage[data-cube-slot="0"] { top: 0; left: 0; width: 100%; }
  .sez-company-advantage[data-cube-slot="1"] { top: 210px; left: 0; }
  .sez-company-advantage[data-cube-slot="2"] { top: 210px; left: 50%; }
  .sez-company-advantage h3 { font-size: 16px; }
  .sez-company-advantage p { font-size: 12px; }
  .sez-company-principles__grid { grid-template-columns: 1fr 1fr; margin-top: 24px; }
  .sez-company-principles__grid article { min-height: 190px; padding: 16px; }
  .sez-company-principles__grid span { margin-bottom: 42px; }
  .sez-company-principles__grid h3 { font-size: 16px; }
  .sez-company-principles__grid p { font-size: 12px; }
  .sez-company-history__track { display: flex; gap: 0; margin-right: calc(var(--sez-gutter) * -1); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .sez-company-history__track::-webkit-scrollbar { display: none; }
  .sez-company-history__track article { min-width: 72vw; min-height: 230px; flex: 0 0 72vw; scroll-snap-align: start; }
  .sez-company-history__track strong { margin-bottom: 56px; }
  .sez-company-gallery__viewport { height: 430px; margin-top: 24px; }
  .sez-company-gallery__track { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 210px; gap: 10px; }
}

[data-sez-typewriter] { color: rgb(32 37 43 / 28%); }
.sez-typewriter-char { color: rgb(32 37 43 / 28%); transition: color .12s linear; }
.sez-typewriter-char.is-dark { color: var(--sez-dark); }

/* Запись блога: ширина медиа зависит от наличия боковой обложки. */
.single-post .sez-single__article,
.single-post .sez-single__article .sez-body {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}
.single-post .sez-single__layout:not(.sez-single__layout--with-cover) .sez-single__article {
  width: 100%;
  max-width: 980px;
  justify-self: center;
}
.single-post .sez-single__layout:not(.sez-single__layout--with-cover) .sez-body {
  margin-inline: auto;
}
.single-post .sez-single__layout--with-cover .sez-body :is(
  .alignwide,
  .alignfull,
  .wp-block-cover,
  .wp-block-video,
  .wp-block-embed,
  .wp-block-media-text
) {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
  transform: none !important;
}
.single-post .sez-single__article .sez-body :is(img, video, iframe, embed, object) {
  max-width: 100%;
}
.single-post .sez-single__article .sez-body :is(.wp-block-video video, .wp-block-embed__wrapper, iframe) {
  width: 100%;
}

/* Одна настоящая фотогалерея: две фотографии в поле зрения и горизонтальное прилипание. */
.single-post .sez-body :is(
  .wp-block-gallery.has-nested-images,
  .wp-block-gallery > .blocks-gallery-grid,
  .gallery,
  .sez-post-gallery
) {
  --sez-post-gallery-gap: 14px;
  display: grid !important;
  grid-template-columns: none !important;
  grid-template-rows: auto;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - var(--sez-post-gallery-gap)) / 2);
  align-items: start;
  gap: var(--sez-post-gallery-gap) !important;
  margin-block: 30px !important;
  padding: 0 0 10px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

/* При боковой обложке галерея остаётся строго в правой колонке. */
.single-post .sez-single__layout--with-cover .sez-body :is(
  .wp-block-gallery.has-nested-images,
  .wp-block-gallery > .blocks-gallery-grid,
  .gallery,
  .sez-post-gallery
) {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
  transform: none !important;
}

/* Без обложки текст остаётся по центру, а галерея может быть шире текста. */
.single-post .sez-single__layout:not(.sez-single__layout--with-cover) .sez-body :is(
  .wp-block-gallery.has-nested-images,
  .wp-block-gallery > .blocks-gallery-grid,
  .gallery,
  .sez-post-gallery
) {
  width: min(1180px, calc(100vw - 2 * var(--sez-gutter))) !important;
  max-width: none !important;
  margin-left: 50% !important;
  margin-right: 0 !important;
  transform: translateX(-50%) !important;
}

.single-post .sez-body .wp-block-gallery:not(.has-nested-images) {
  width: 100%;
  max-width: 100%;
  margin-inline: 0;
  overflow: visible;
  transform: none;
}
.single-post .sez-body :is(
  .wp-block-gallery.has-nested-images > .wp-block-image,
  .wp-block-gallery > .blocks-gallery-grid > .blocks-gallery-item,
  .gallery > .gallery-item,
  .sez-post-gallery > .wp-block-image,
  .sez-post-gallery > .blocks-gallery-item,
  .sez-post-gallery > .gallery-item
) {
  display: grid !important;
  float: none !important;
  width: auto !important;
  min-width: 0;
  max-width: none !important;
  height: auto !important;
  align-content: start;
  margin: 0 !important;
  overflow: hidden;
  background: #f4f5f6;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}
.single-post .sez-body :is(
  .wp-block-gallery.has-nested-images > .wp-block-image,
  .wp-block-gallery > .blocks-gallery-grid > .blocks-gallery-item,
  .gallery > .gallery-item,
  .sez-post-gallery > .wp-block-image,
  .sez-post-gallery > .blocks-gallery-item,
  .sez-post-gallery > .gallery-item
) :is(a, figure, .gallery-icon) {
  display: grid !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  place-items: center;
}
.single-post .sez-body :is(
  .wp-block-gallery.has-nested-images > .wp-block-image,
  .wp-block-gallery > .blocks-gallery-grid > .blocks-gallery-item,
  .gallery > .gallery-item,
  .sez-post-gallery > .wp-block-image,
  .sez-post-gallery > .blocks-gallery-item,
  .sez-post-gallery > .gallery-item
) img {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: min(72vh, 760px) !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
}
.single-post .sez-body :is(.wp-block-gallery, .gallery, .sez-post-gallery) :is(figcaption, .gallery-caption) {
  position: static !important;
  width: 100%;
  margin: 0 !important;
  padding: 10px 12px !important;
  background: transparent !important;
  color: var(--sez-muted) !important;
  font-size: 12px;
  line-height: 1.4;
  text-align: left;
}
.single-post .sez-body .gallery br { display: none; }

@media (max-width: 640px) {
  .single-post .sez-body :is(
    .wp-block-gallery.has-nested-images,
    .wp-block-gallery > .blocks-gallery-grid,
    .gallery,
    .sez-post-gallery
  ) {
    grid-auto-columns: 86%;
  }
}
