.mag-page {
  --mag-edge: 15px;
  --mag-content: 1600px;
  color: #111;
  background: #fff;
  overflow-x: clip;
}
.mag-page *, .mag-page *::before, .mag-page *::after { box-sizing: border-box; }
.mag-page h1, .mag-page h2, .mag-page h3, .mag-page p { margin-top: 0; }
.mag-page h1, .mag-page h2, .mag-page h3 { color: inherit; }
.mag-page a { text-decoration: none; }
.mag-container { width: calc(100% - 2 * var(--mag-edge)); max-width: var(--mag-content); margin-inline: auto; }

.mag-hero { position: relative; display: flex; align-items: center; min-height: clamp(580px, 45vw, 760px); background: #111; }
.mag-hero picture, .mag-hero picture img, .mag-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.mag-hero picture img { object-fit: cover; }
.mag-hero__shade { background: linear-gradient(90deg, rgba(0,0,0,.62), rgba(0,0,0,.05) 75%); }
.mag-hero__content { position: relative; z-index: 1; width: calc(100% - 2 * var(--mag-edge)); max-width: var(--mag-content); margin: auto; color: #fff; }
.mag-tag { display: inline-block; border: 1px solid #fff; padding: 8px 13px; margin-bottom: 26px; color: #fff; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.mag-hero h1 { max-width: 650px; color: #fff; font-size: clamp(58px, 6vw, 90px); line-height: 1.02; letter-spacing: -.045em; font-weight: 800; margin-bottom: 22px; }
.mag-hero p { max-width: 650px; color: #fff; font-size: clamp(21px, 2vw, 28px); line-height: 1.4; }
.mag-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.mag-hero__actions a { display: inline-flex; align-items: center; min-height: 48px; padding: 14px 25px; border: 1px solid #fff; color: #fff; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.mag-hero__actions a:hover { background: #fff; color: #111; }

.mag-nav { position: relative; z-index: 100; width: 100%; height: 66px; background: #fff; border-bottom: 1px solid #e9e9eb; }
.mag-nav.is-fixed { z-index: 1001; }
.mag-nav__scroll { display: flex; align-items: center; gap: 10px; width: 100%; height: 66px; padding: 16px max(var(--mag-edge), calc((100vw - var(--mag-content)) / 2)); overflow-x: auto; scrollbar-width: none; white-space: nowrap; background: #fff; }
.mag-nav__scroll::-webkit-scrollbar { display: none; }
.mag-nav.is-fixed .mag-nav__scroll { position: fixed; top: var(--mag-header-offset, 0px); left: 0; right: 0; box-shadow: 0 3px 10px rgba(0,0,0,.08); }
.mag-nav a { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; height: 34px; padding: 0 20px; border-radius: 5px; background: #f7f7f7; color: #000; font-size: 14px; font-weight: 400; line-height: 1.49; }
.mag-nav a:hover, .mag-nav a.is-active { background: #000; color: #fff; }
.mag-page section[id] { scroll-margin-top: calc(var(--mag-header-offset, 0px) + 80px); }

.mag-intro { background: #f7f7f7; }
.mag-intro__inner { display: flex; flex-direction: row-reverse; align-items: center; min-height: 620px; }
.mag-intro__text { flex: 1 1 50%; min-width: 0; padding: 40px 0 40px 32px; }
.mag-intro h2 { font-size: clamp(36px, 3.6vw, 56px); line-height: 1.12; font-weight: 800; text-transform: uppercase; margin-bottom: 30px; }
.mag-intro p { max-width: 650px; font-size: 18px; line-height: 1.55; margin-bottom: 0; }
.mag-intro img { flex: 0 0 50%; width: 50%; height: auto; max-height: 700px; object-fit: contain; }

.mag-mounting { padding: 40px 0; background: #fff; }
.mag-mounting video { display: block; width: 100%; aspect-ratio: 2 / 1; object-fit: cover; background: #111; }

.mag-advantages { padding: 60px 0; background: #fff; }
.mag-advantages h2, .mag-products h2 { font-size: clamp(36px, 4.5vw, 64px); line-height: 1.1; font-weight: 800; text-transform: uppercase; margin-bottom: 24px; }
.mag-advantages__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.mag-advantages article { display: flex; flex-direction: column; min-height: 200px; padding: 24px 16px; border-radius: 6px; background: #f7f7f7; }
.mag-advantages h3 { font-size: 22px; line-height: 1.15; font-weight: 600; text-transform: uppercase; min-height: 2.3em; margin-bottom: 16px; }
.mag-advantages p { font-size: 16px; line-height: 1.4; margin-bottom: 0; }

.mag-products { padding: 80px 0; background: #fff; }
.mag-products__carousel { margin-top: 32px; }
.mag-products__carousel .catalog_block { margin-bottom: 0; }

@media (min-width: 1024px) { .mag-page { --mag-edge: 32px; } }
@media (min-width: 1280px) { .mag-page { --mag-edge: 48px; } }
@media (min-width: 1536px) { .mag-page { --mag-edge: 64px; } }
@media (max-width: 1023px) {
  .mag-intro__inner { flex-direction: column-reverse; min-height: 0; }
  .mag-intro__text { flex: auto; width: 100%; padding: 16px 0 30px; }
  .mag-intro img { flex: auto; width: 100%; height: 328px; max-height: 328px; object-fit: contain; }
  .mag-intro h2 { font-size: clamp(32px, 5vw, 44px); }
}
@media (max-width: 767px) {
  .mag-hero { min-height: 690px; align-items: flex-end; }
  .mag-hero__shade { background: linear-gradient(0deg, rgba(0,0,0,.75), transparent 75%); }
  .mag-hero__content { margin: auto auto 55px; }
  .mag-hero h1 { font-size: 56px; }
  .mag-nav, .mag-nav__scroll { height: 53px; }
  .mag-nav__scroll { padding-block: 9.6px; }
  .mag-intro h2 { font-size: 32px; }
  .mag-intro p { font-size: 17px; }
  .mag-mounting { padding: 30px 0; }
  .mag-advantages { padding: 40px 0; }
  .mag-advantages__grid { grid-template-columns: 1fr; }
  .mag-advantages article { min-height: 170px; }
  .mag-advantages h3 { min-height: 0; font-size: 19px; }
  .mag-products { padding: 50px 0; }
}
