@font-face {
  font-family: Manrope; font-style: normal; font-weight: 400 800; font-display: swap;
  src: url('/assets/manrope-cyrillic.woff2') format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
@font-face {
  font-family: Manrope; font-style: normal; font-weight: 400 800; font-display: swap;
  src: url('/assets/manrope-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root {
  --ink: #182c2f;
  --muted: #506568;
  --accent: #23adad;
  --green: #0b6a67;
  --bright: #74e7db;
  --night: #132a2d;
  --line: #dbe6e6;
  --mist: #eff6f5;
  --ice: #eaf3f7;
  --mono: Consolas, monospace;
  --page: min(1360px, 100% - 112px);
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: #fff; font: 500 16px/1.65 Manrope, "Segoe UI", sans-serif; }
[hidden] { display: none !important; }
a { color: inherit; }
a:hover { color: var(--green); }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
h1, h2, h3, p, figure { margin: 0; }
h1, h2, h3 { line-height: 1.12; font-weight: 800; letter-spacing: -.04em; overflow-wrap: anywhere; }
h2 { font-size: clamp(2rem, 3.9vw, 3.85rem); }
h3 { font-size: 1.23rem; }
:focus-visible { outline: 3px solid #167d79; outline-offset: 4px; }
.hero :focus-visible, .callout :focus-visible { outline-color: #fff; }
.wrap { width: var(--page); margin-inline: auto; }
.icon { width: 22px; height: 22px; flex: 0 0 auto; vertical-align: middle; }
.skip { position: fixed; top: 8px; left: 12px; z-index: 20; padding: 8px 14px; color: #fff; background: var(--night); transform: translateY(-200%); }
.skip:focus { transform: translateY(0); }

.topline { background: var(--mist); border-bottom: 1px solid #e2edeb; }
.topline-inner { display: flex; align-items: center; min-height: 39px; gap: 26px; font-size: 12px; color: var(--muted); }
.topline-inner > * { display: flex; align-items: center; gap: 7px; text-decoration: none; }
.topline-inner > :last-child { margin-left: auto; }
.topline .icon { width: 15px; height: 15px; color: var(--green); }
.header { position: relative; z-index: 2; }
.header-inner { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: clamp(15px, 3.5vw, 54px); min-height: 79px; }
.logo { display: flex; align-items: center; gap: 10px; width: fit-content; text-decoration: none; }
.logo img { width: 154px; max-height: 57px; object-fit: contain; object-position: left center; }
.logo img[src$="mark.svg"] { width: 40px; }
.primary-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px clamp(15px, 2.2vw, 35px); }
.primary-nav a, .header-phone { font-size: .88rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.primary-nav [aria-current] { color: var(--green); text-decoration: underline; text-underline-offset: 6px; }
.header-phone { display: flex; align-items: center; gap: 9px; }
.header-phone .icon { width: 19px; height: 19px; color: var(--green); }
.menu-toggle { display: none; border: 1px solid var(--line); background: #fff; color: var(--ink); padding: 8px 10px; border-radius: 5px; font-size: .84rem; font-weight: 800; }

.hero {
  overflow: hidden; color: #fff; background-color: #11292d;
  background-image: radial-gradient(ellipse at 74% 48%, #205b5b 0, transparent 51%), linear-gradient(120deg,#13262b 9%, #102528 75%);
}
.hero-inner { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .95fr); min-height: 590px; align-items: stretch; }
.hero-copy { position: relative; z-index: 1; align-self: center; padding: 64px 28px 68px 0; }
.eyebrow, .index { display: flex; align-items: center; gap: 10px; margin: 0 0 19px; font: 600 .78rem/1.5 var(--mono); text-transform: uppercase; letter-spacing: .12em; }
.eyebrow { color: var(--bright); }
.eyebrow span { width: 22px; height: 1px; background: currentColor; }
.hero h1 { font-size: clamp(3.1rem, 5.5vw, 6.1rem); letter-spacing: -.069em; line-height: 1.015; text-wrap: balance; }
.hero-lede { max-width: 440px; margin-top: 26px; color: #c7dcdc; font-size: clamp(1.02rem, 1.5vw, 1.25rem); line-height: 1.6; }
.actions { display: flex; flex-wrap: wrap; gap: 12px 18px; align-items: center; }
.hero .actions { margin-top: 37px; }
.button { display: inline-flex; justify-content: space-between; align-items: center; gap: 18px; min-height: 51px; padding: 11px 16px; border: 1px solid transparent; border-radius: 5px; text-decoration: none; font-weight: 800; line-height: 1.3; transition: background-color .2s, color .2s, border-color .2s; }
.button .icon { width: 19px; height: 19px; }
.button-bright { background: var(--bright); color: #123131; }
.button-bright:hover { color: #11292d; background: #a5f4eb; }
.button-outline { border-color: #6b9192; color: #fff; }
.button-outline:hover { background: #254747; color: #fff; }
.button-dark { background: #145b58; color: #fff; }
.button-dark:hover { background: #0c4544; color: #fff; }
.hero-strip { border-top: 1px solid #ffffff25; background: #101f24a6; }
.hero-strip-inner { min-height: 52px; display: flex; justify-content: space-between; align-items: center; gap: 12px; color: #c6dfdf; font: 500 .75rem/1.4 var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.hero-strip i, .scene-mark span { display: inline-block; width: 6px; height: 6px; margin: 0 8px 1px 0; background: var(--bright); box-shadow: 0 0 9px #62e9db80; }
.hero-strip b { color: var(--bright); }

.lift-scene {
  position: relative; min-width: 0; min-height: 440px; border-inline: 1px solid #abdedf25; overflow: hidden;
  background-image: radial-gradient(ellipse at 50% 56%, #49a8a545, transparent 60%), repeating-linear-gradient(90deg, transparent 0 47px, #8acece18 47px 48px), repeating-linear-gradient(0deg, transparent 0 47px, #8acece18 47px 48px);
}
.scene-mark, .scene-caption, .scene-levels { position: absolute; font: 400 10px/1.4 var(--mono); letter-spacing: .12em; color: #b6d5d5; }
.scene-mark { left: 20px; top: 21px; }
.scene-caption { display: flex; justify-content: space-between; bottom: 16px; inset-inline: 19px; padding-top: 10px; border-top: 1px solid #9fd4d24f; }
.scene-levels { top: 25%; bottom: 19%; right: 18px; display: flex; flex-direction: column; justify-content: space-between; }
.scene-levels i { display: flex; align-items: center; gap: 5px; font-style: normal; }
.scene-levels i::before { content: ''; width: 12px; height: 1px; background: #8bc6c482; }
.scene-levels i:first-child { color: #93f5e7; }
.shaft { position: absolute; inset: 10% 18% 8%; display: grid; place-items: center; border-inline: 1px dashed #9dd9d568; }
.shaft::before, .shaft::after { content: ''; position: absolute; width: 11px; height: 100%; border-inline: 1px solid #bfe5e53d; background: #5a8a8b1f; }
.shaft::before { left: 8%; }
.shaft::after { right: 8%; }
.lift-cab {
  z-index: 1; width: 72%; max-width: 300px; padding: 10px 10px 8px;
  background: linear-gradient(115deg, #537475, #1e383c 41%, #385c60 72%, #183336);
  border: 1px solid #85abab; box-shadow: 0 15px 35px #061417a8, inset 0 0 0 2px #1b3438;
  animation: lift-rise 1.35s cubic-bezier(.22,.8,.25,1) both;
}
.lift-display { display: flex; justify-content: center; align-items: center; gap: 10px; padding: 5px 8px; width: 82px; margin: 2px auto 9px; background: #081e23; border: 1px solid #527779; font: 500 17px/1 var(--mono); color: #8ff9e5; text-shadow: 0 0 8px #39c8b6; }
.lift-display span { font-size: 11px; }
.lift-frame { position: relative; aspect-ratio: .84; overflow: hidden; border: 4px solid #35565a; background: #16383c; box-shadow: 0 0 0 1px #81a5a4; }
.lift-interior { position: absolute; inset: 0; background: linear-gradient(120deg, #284b50 9%, #132d31 34%, #537779 48%, #3b6567 70%, #132f33 93%); }
.lift-interior::before { content: ''; position: absolute; inset: 5% 18% 12%; border: 1px solid #87c6c6; background: linear-gradient(135deg, #7abebc33, #29495155 60%, #97d9d877); box-shadow: 0 0 16px #78ebd857; }
.lift-interior::after { content: ''; position: absolute; height: 3px; left: 14%; right: 14%; top: 68%; background: #a1bdbb; box-shadow: 0 3px 3px #123033; }
.lift-interior div { position: absolute; left: 14%; right: 14%; top: 4%; height: 3px; background: #c1ffee; box-shadow: 0 4px 20px 4px #69f6dd9c; }
.lift-door { position: absolute; inset-block: 0; width: 50%; border: 1px solid #a2bab8; background: linear-gradient(98deg, #517477, #b0cac6 22%, #8badac 39%, #547b7e 83%, #658486); }
.lift-door.left { left: 0; transform: translateX(-80%); animation: door-left 1s 1.1s cubic-bezier(.65,.1,.25,1) both; }
.lift-door.right { right: 0; transform: translateX(80%); animation: door-right 1s 1.1s cubic-bezier(.65,.1,.25,1) both; }
.lift-sill { height: 7px; background: repeating-linear-gradient(#99b7b6 0 1px, #49696b 1px 3px); }
@keyframes lift-rise { from { transform: translateY(23%); opacity: .55; } to { transform: translateY(0); opacity: 1; } }
@keyframes door-left { from { transform: translateX(0); } to { transform: translateX(-80%); } }
@keyframes door-right { from { transform: translateX(0); } to { transform: translateX(80%); } }

.block { padding-block: clamp(66px, 8.3vw, 128px); }
.band { background: var(--mist); }
.index { color: var(--green); }
.index span { width: 19px; height: 1px; background: var(--accent); }
.section-head { display: flex; justify-content: space-between; align-items: end; gap: 22px 46px; margin-bottom: clamp(23px, 3vw, 43px); }
.section-head > p { max-width: 340px; color: var(--muted); }
.equipment-grid, .services-grid, .cards { display: grid; gap: 14px; }
.equipment-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.equipment-card, .service-card, .content-card {
  position: relative; min-width: 0; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 7px;
  text-decoration: none; transition: border-color .2s, background-color .2s, transform .2s;
}
.equipment-card:hover, .service-card:hover, .content-card:hover { border-color: #6bb7b4; background: #f8fcfb; transform: translateY(-3px); }
.equipment-card { display: flex; flex-direction: column; align-items: flex-start; gap: 17px; min-height: 212px; padding: 19px; }
.card-count { position: absolute; top: 18px; right: 18px; font: 500 .75rem var(--mono); color: var(--muted); }
.tile-icon { display: inline-grid; place-items: center; flex: 0 0 auto; width: 54px; height: 54px; border-radius: 6px; color: var(--green); background: #e7f5f3; }
.tile-icon .icon { width: 28px; height: 28px; }
.tile-arrow { display: inline-grid; place-items: center; width: 29px; height: 29px; color: var(--green); }
.equipment-card .tile-arrow { margin-top: auto; }
.services-grid, .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.service-card { display: flex; gap: 18px; align-items: center; padding: clamp(16px, 2.1vw, 28px); }
.service-card .text-link { margin-top: 12px; font-size: .87rem; }
.text-link { display: inline-flex; width: fit-content; align-items: center; gap: 8px; color: var(--green); text-underline-offset: 4px; font-weight: 800; }
.text-link .icon { width: 19px; height: 19px; }
.content-card { display: flex; flex-direction: column; overflow: hidden; }
.content-card > .tile-icon { margin: 20px 20px 0; }
.card-photo { height: clamp(155px, 21vw, 280px); overflow: hidden; background: var(--ice); }
.card-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.content-card:hover .card-photo img { transform: scale(1.035); }
.content-card-copy { position: relative; flex: 1; padding: 20px 47px 22px 20px; }
.content-card-copy .tile-arrow { position: absolute; right: 11px; top: 16px; }
.content-card-copy p { margin-top: 10px; color: var(--muted); font-size: .9rem; }
.card-summary { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.content-card-copy .card-sku { margin: 0 0 9px; font-family: var(--mono); color: var(--green); overflow-wrap: anywhere; }
.product-card .card-photo { height: clamp(140px, 15vw, 210px); }
.product-card .card-photo img { object-fit: contain; mix-blend-mode: multiply; padding: 13px; }
.placeholder, .image-empty { display: grid; place-items: center; color: #4b8686; }
.placeholder .icon, .image-empty .icon { width: 38px; height: 38px; }
.intro, .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 6vw, 100px); }
.intro > div > p:not(.index) { max-width: 570px; margin-bottom: 22px; font-size: 1.1rem; color: var(--muted); }
.source-details { margin-top: 28px; padding-top: 14px; border-top: 1px solid #ccdedd; }
.source-details summary { cursor: pointer; font-weight: 700; }
.source-details .prose { margin-top: 18px; }
.maker-band { padding-block: 44px; }
.maker-band > div { display: flex; flex-wrap: wrap; gap: 10px; }
.maker-band a { text-decoration: none; padding: 9px 14px; border: 1px solid var(--line); border-radius: 4px; font-weight: 800; }
.maker-band a:hover { background: var(--mist); }
.callout { background: #153b3d; color: #fff; }
.callout-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 48px; }
.callout h2 { font-size: clamp(1.8rem, 3.1vw, 3rem); }
.callout .button { flex: 0 0 auto; }
.footer { background: #f4f8f7; }
.footer-grid { display: grid; grid-template-columns: 1.1fr .85fr 1fr 1.25fr; gap: 20px; padding-block: 48px; }
.footer nav, .footer-contacts { display: grid; align-content: start; gap: 7px; }
.footer a { text-decoration: none; }
.footer p, .footer span { color: var(--muted); font-size: .88rem; }
.footer-logo { margin-bottom: 8px; }
.footer-bottom { border-top: 1px solid var(--line); display: flex; justify-content: space-between; gap: 16px; padding-block: 15px; color: var(--muted); font-size: .83rem; }

.page-head { padding-block: 34px 44px; background: linear-gradient(135deg, var(--mist), #f5f9fb); border-block: 1px solid var(--line); }
.crumbs { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin-bottom: 20px; font-size: .84rem; color: var(--muted); }
.crumbs a { text-underline-offset: 3px; }
.page-head h1 { max-width: 1100px; font-size: clamp(2.35rem, 5vw, 4.65rem); }
.inner-block { padding-block: clamp(36px, 6vw, 88px); }
.search { max-width: 760px; }
.search label, .form-grid label { display: block; font-weight: 800; }
.search > div { display: flex; align-items: center; gap: 12px; margin-top: 6px; padding: 5px 5px 5px 14px; border: 1px solid var(--line); border-radius: 6px; }
.search .icon { color: var(--green); }
.search input { min-width: 0; width: 100%; padding: 7px 3px; border: 0; color: var(--ink); background: #fff; }
.category-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.category-list a { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--line); border-radius: 4px; padding: 7px 12px; text-decoration: none; font-size: .9rem; font-weight: 800; }
.category-list a:hover { background: var(--mist); }
.category-list .icon { width: 16px; height: 16px; }
.results-line { display: flex; align-items: center; gap: 12px; margin-block: 34px 16px; }
.results-line h2 { font-size: clamp(1.55rem, 2.8vw, 2.1rem); }
.results-line span { padding: 2px 7px; background: var(--mist); color: var(--green); border-radius: 4px; font: 500 .84rem var(--mono); }
.pagination { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 27px; }
.pagination a { display: grid; place-items: center; min-width: 42px; min-height: 42px; border: 1px solid var(--line); text-decoration: none; border-radius: 5px; }
.pagination a[aria-current] { background: #145b58; color: #fff; }
.prose { max-width: 74ch; overflow-wrap: anywhere; }
.prose > :first-child { margin-top: 0; }
.prose p, .prose ul, .prose ol, .prose h2, .prose h3, .prose h4 { margin-block: 1em; }
.prose h2, .prose h3, .prose h4 { font-size: 1.3rem; }
.prose table { display: block; max-width: 100%; overflow: auto; border-collapse: collapse; }
.prose td, .prose th { padding: 6px 8px; border: 1px solid var(--line); }
.prose a:not(.button) { color: var(--green); text-underline-offset: 3px; }
.prose img { max-height: 520px; object-fit: contain; }
.catalog-description { margin-top: 24px; }
.detail-grid.product-detail { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(24px, 5vw, 68px); align-items: start; }
.detail-image { background: var(--ice); border-radius: 6px; overflow: hidden; }
.detail-image img { width: 100%; max-height: 500px; object-fit: contain; padding: 20px; mix-blend-mode: multiply; }
.image-empty { min-height: 225px; align-content: center; gap: 10px; }
.specs { margin-block: 0 24px; }
.specs > div { display: grid; grid-template-columns: minmax(92px,.42fr) 1fr; gap: 8px 18px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.specs dt { color: var(--muted); }
.specs dd { margin: 0; font-weight: 800; overflow-wrap: anywhere; }
.gallery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.detail-grid:has(.prose > :not(:empty)) + .gallery-grid { margin-top: 24px; }
.gallery-grid figure { overflow: hidden; background: var(--mist); border: 1px solid var(--line); border-radius: 6px; }
.gallery-grid figure img { width: 100%; height: clamp(180px, 25vw, 350px); object-fit: contain; }
.gallery-grid figcaption { padding: 11px 14px; font-size: .87rem; }
.download { display: flex; align-items: center; gap: 11px; padding: 14px; border: 1px solid var(--line); border-radius: 5px; }
.lightbox { max-width: min(94vw,1100px); max-height: 93vh; padding: 0; border: 0; background: #0a2022; color: #fff; }
.lightbox::backdrop { background: #081517d9; }
.lightbox img { max-height: 88vh; object-fit: contain; }
.lightbox button { position: absolute; top: 7px; right: 7px; width: 40px; height: 40px; background: #133336; color: #fff; border: 1px solid #b3cdcd; border-radius: 4px; font-size: 1.55rem; line-height: 1; }

.contact-phone { display: block; width: fit-content; margin-bottom: 6px; text-decoration: none; font-size: clamp(1.45rem, 3vw, 2.85rem); font-weight: 800; letter-spacing: -.05em; }
.contact-info .specs { margin-top: 20px; }
.contact-panel, .form-panel { padding: clamp(22px, 4vw, 48px); border: 1px solid var(--line); border-radius: 8px; background: var(--mist); }
.contact-panel h2, .form-panel h2 { margin-top: 16px; font-size: clamp(1.5rem, 3vw, 2.6rem); }
.contact-panel p, .form-panel > p:not(.wide) { margin-block: 12px 20px; color: var(--muted); }
.form-panel { max-width: 760px; }
.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.form-grid .wide { grid-column: 1 / -1; }
.form-grid :is(input:not([type=checkbox]),textarea,select) { display: block; width: 100%; padding: 9px 11px; margin-top: 5px; background: #fff; color: var(--ink); border: 1px solid #acbfc0; border-radius: 4px; }
.form-grid textarea { resize: vertical; }
.form-panel.pointer-focus :is(input, textarea):focus { outline: none; }
.field-hint { color: var(--muted); font-size: .88rem; }
.notice { padding: 10px 12px; color: #075a4f; background: #def5ee; border-radius: 4px; }
.notice.error { color: #8c2b23; background: #fae9e5; }
@media (max-width: 1100px) {
  :root { --page: calc(100% - 64px); }
  .hero-inner { min-height: 510px; }
  .hero h1 { text-wrap: initial; }
  .equipment-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 830px) {
  :root { --page: calc(100% - 40px); }
  .topline-inner > :nth-child(2) { display: none; }
  .header-inner { grid-template-columns: auto 1fr auto; gap: 12px; min-height: 64px; }
  .logo img { width: 128px; max-height: 45px; }
  .menu-ready .menu-toggle { display: inline-flex; align-items: center; gap: 4px; justify-self: end; }
  .menu-ready .primary-nav:not(.open) { display: none; }
  .primary-nav { grid-column: 1/-1; grid-row: 2; justify-content: flex-start; padding-bottom: 15px; }
  .header-phone { grid-column: 3; grid-row: 1; }
  .hero-inner { grid-template-columns: 1fr 0.84fr; min-height: 445px; }
  .hero h1 { font-size: clamp(2.5rem, 6vw, 3.8rem); }
  .lift-scene { min-height: 380px; }
  .scene-levels { right: 6px; }
  .services-grid, .cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .section-head { align-items: start; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  :root { --page: calc(100% - 32px); }
  .topline-inner { min-height: 32px; font-size: .68rem; }
  .topline-inner > :last-child { display: none; }
  .header-phone { font-size: 0; padding: 6px; }
  .header-phone .icon { width: 22px; height: 22px; }
  .hero-inner { grid-template-columns: 1fr; }
  .hero-copy { padding: 44px 0 21px; }
  .hero h1 { font-size: clamp(2.45rem, 9.1vw, 3.35rem); max-width: 12ch; }
  .hero-lede { margin-top: 15px; }
  .hero .actions { margin-top: 23px; gap: 7px; }
  .hero .button { padding-inline: 10px; gap: 8px; font-size: .83rem; min-height: 43px; }
  .hero .button .icon { width: 16px; height: 16px; }
  .lift-scene { min-height: 335px; }
  .shaft { inset: 9% 19% 8%; }
  .lift-cab { width: 64%; max-width: 172px; }
  .scene-caption { bottom: 8px; font-size: 8px; }
  .scene-mark { left: 10px; top: 10px; font-size: 8px; }
  .hero-strip-inner { min-height: 45px; font-size: .6rem; letter-spacing: 0; }
  .hero-strip i { margin-right: 4px; }
  .section-head, .callout-inner { flex-direction: column; align-items: flex-start; }
  .equipment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .equipment-card { padding: 12px; min-height: 165px; gap: 11px; }
  .equipment-card h3 { font-size: .99rem; }
  .card-count { top: 13px; right: 12px; }
  .tile-icon { width: 44px; height: 44px; }
  .tile-icon .icon { width: 24px; height: 24px; }
  .services-grid, .cards:not(.product-cards), .intro, .contact-grid, .detail-grid.product-detail { grid-template-columns: 1fr; }
  .product-cards { gap: 9px; }
  .product-card .content-card-copy { padding: 12px; }
  .product-card .tile-arrow { display: none; }
  .product-card h3 { font-size: .96rem; }
  .product-card .card-photo { height: 116px; }
  .product-card .card-sku { font-size: .7rem; }
  .gallery-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
  .gallery-grid figure img { height: 135px; }
  .footer-grid { padding-block: 30px; gap: 18px 12px; font-size: .86rem; }
  .footer-contacts span { font-size: .78rem; }
  .form-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
