:root {
  --omx-bg-0: #050a12;
  --omx-bg-1: #0a0f1a;
  --omx-bg-2: #0f1626;
  --omx-surface: #121c2e;
  --omx-border: rgba(115, 151, 198, 0.16);
  --omx-border-strong: rgba(30, 144, 255, 0.42);
  --omx-text: #ffffff;
  --omx-text-muted: #a3b8d9;
  --omx-text-dim: #58637a;
  --omx-blue: #1e90ff;
  --omx-cyan: #00d4ff;
  --omx-violet: #6c5dd3;
  --font-display: "Jura", "Inter", Arial, sans-serif;
  --font-body: "Inter", Arial, sans-serif;
  --container-xl: 1620px;
  --shadow-blue: 0 0 40px rgba(30, 144, 255, 0.18);
  --transition: 220ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.omx-body {
  margin: 0;
  min-width: 320px;
  background: #03070d;
  color: var(--omx-text);
  font-family: var(--font-body);
  line-height: 1.55;
  overflow-x: hidden;
}
body.omx-menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }
textarea { resize: vertical; }
:focus-visible { outline: 2px solid var(--omx-cyan); outline-offset: 4px; }

.omx-skip-link {
  position: fixed;
  left: 16px;
  top: 12px;
  z-index: 100;
  transform: translateY(-140%);
  padding: 10px 14px;
  border-radius: 8px;
  background: var(--omx-blue);
  color: #fff;
  transition: transform var(--transition);
}
.omx-skip-link:focus { transform: translateY(0); }
.screen-reader-text { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
.omx-container { width: min(100% - 96px, var(--container-xl)); margin-inline: auto; }

.omx-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 80;
  border-bottom: 1px solid rgba(115, 151, 198, 0.06);
  background: rgba(2, 6, 12, 0.98);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.omx-header__inner {
  width: min(100% - 96px, var(--container-xl));
  min-height: 92px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  gap: 26px;
}
.omx-brand { display: inline-flex; align-items: center; width: clamp(260px, 16vw, 330px); flex: 0 0 auto; }
.omx-brand__logo { width: 100%; height: auto; filter: none; mix-blend-mode: screen; opacity: .96; }
.omx-nav { display: flex; align-items: center; gap: 27px; margin-left: auto; z-index: 81; }
.omx-nav a { color: #fff; font-size: 13px; font-weight: 700; opacity: 0.9; transition: color var(--transition), opacity var(--transition); }
.omx-nav a:hover { color: #8ec5ff; opacity: 1; }
.omx-menu-toggle { display: none; position: relative; z-index: 82; }
.omx-btn {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 22px;
  border: 0;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
  transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition), color var(--transition), background var(--transition);
}
.omx-btn img { width: 16px; height: 16px; }
.omx-btn--primary { background: linear-gradient(135deg, #064bb7 0%, #0879ee 54%, #26a7ff 100%); color: #fff; box-shadow: inset 0 1px 0 rgba(255,255,255,.18), inset 0 -18px 26px rgba(0,42,115,.22), 0 0 42px rgba(30, 144, 255, 0.24); }
.omx-btn--outline { border: 1px solid rgba(30, 144, 255, 0.65); color: #69b5ff; background: rgba(3, 11, 22, 0.28); }
.omx-btn:hover { transform: translateY(-2px); }
.omx-btn--outline:hover { background: rgba(30, 144, 255, 0.1); }
.omx-btn:disabled { cursor: not-allowed; opacity: 0.7; transform: none; }

.omx-main {
  background:
    radial-gradient(circle at 82% 9%, rgba(30, 144, 255, 0.08), transparent 22rem),
    url('../v5/09_textures/noise-light.webp') repeat,
    linear-gradient(180deg, #02050a, #050a12 34%, #03070d);
}
.omx-hero {
  position: relative;
  min-height: 720px;
  overflow: hidden;
  border-bottom: 1px solid rgba(115, 151, 198, 0.12);
  background:
    linear-gradient(90deg, rgba(3, 7, 13, 0.98) 0%, rgba(3, 7, 13, 0.86) 30%, rgba(3, 7, 13, 0.18) 58%, rgba(3, 7, 13, 0.32) 100%),
    linear-gradient(180deg, rgba(3, 7, 13, 0.16) 0%, rgba(3, 7, 13, 0.08) 52%, rgba(3, 7, 13, 0.82) 100%),
    url('../custom/omirex-hero-clean-20260808.png') right 8vw center / min(58vw, 1040px) auto no-repeat,
    #03070d;
}
.omx-hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 190px;
  background: linear-gradient(180deg, transparent, rgba(3, 7, 13, 0.94));
  pointer-events: none;
}
.omx-hero__inner { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(900px, .92fr) minmax(520px, 1.08fr); align-items: center; gap: 42px; min-height: 720px; padding: 116px 0 64px; }
.omx-eyebrow { margin: 0 0 14px; color: var(--omx-blue); font-size: 11px; font-weight: 800; letter-spacing: 0.22em; text-transform: uppercase; }
.omx-hero h1 { margin: 0; max-width: 1080px; font-family: var(--font-display); font-size: clamp(38px, 2.95vw, 54px); line-height: 1.14; font-weight: 600; letter-spacing: 0; text-transform: uppercase; text-shadow: 0 0 12px rgba(142,197,255,.12); }
.omx-hero h1 span { display: block; color: #fff; }
.omx-hero h1 strong { display: block; color: #3d91ff; font-weight: 600; }
.omx-lead { max-width: 720px; margin: 28px 0 0; color: #c0cce0; font-size: 15px; line-height: 1.7; }
.omx-actions { display: flex; align-items: center; gap: 28px; margin-top: 38px; flex-wrap: wrap; }
.omx-section { padding: 68px 0; border-bottom: 1px solid rgba(115, 151, 198, 0.1); }
.omx-section__head { max-width: 820px; margin: 0 auto 40px; text-align: center; }
.omx-section h2 { margin: 0; font-family: var(--font-display); font-size: clamp(23px, 1.95vw, 31px); line-height: 1.32; font-weight: 600; letter-spacing: 0; text-transform: uppercase; }
.omx-card { position: relative; overflow: hidden; border: 1px solid var(--omx-border); border-radius: 10px; background: linear-gradient(180deg, rgba(17, 27, 44, 0.84), rgba(8, 14, 24, 0.95)); box-shadow: inset 0 1px 0 rgba(255,255,255,.035); transition: transform var(--transition), border-color var(--transition), box-shadow var(--transition); }
.omx-card::after { content: ""; position: absolute; inset: -1px; background: radial-gradient(circle at 10% 50%, rgba(30,144,255,.22), transparent 18rem), radial-gradient(circle at 100% 0%, rgba(108,93,211,.12), transparent 18rem); opacity: 0; transition: opacity var(--transition); pointer-events: none; }
.omx-card:hover { transform: translateY(-3px); border-color: var(--omx-border-strong); box-shadow: 0 18px 50px rgba(0,0,0,.24), 0 0 36px rgba(30,144,255,.1); }
.omx-card:hover::after { opacity: 1; }

.omx-services { background: linear-gradient(180deg, rgba(7, 13, 24, .84), rgba(4, 8, 15, .96)), url('../v5/05_particles/transparent/particle-field-transparent.webp') center top / cover no-repeat; }
.omx-services__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; max-width: 1420px; margin-inline: auto; }
.omx-service-card { padding: 32px 40px; min-height: 310px; }
.omx-service-card > * { position: relative; z-index: 1; }
.omx-service-card img { width: 54px; height: 54px; margin-bottom: 24px; filter: drop-shadow(0 0 16px rgba(30, 144, 255, .28)); }
.omx-service-card h3 { max-width: 470px; margin: 0 0 17px; font-family: var(--font-display); font-size: 18px; line-height: 1.35; letter-spacing: 0; font-weight: 600; text-transform: uppercase; }
.omx-service-card p { margin: 0 0 18px; color: var(--omx-text-muted); font-size: 14px; max-width: 500px; }
.omx-service-card ul { display: grid; gap: 9px; margin: 0 0 18px; padding: 0; color: #c0cce0; font-size: 13px; list-style: none; }
.omx-service-card li { display: flex; gap: 10px; align-items: flex-start; }
.omx-service-card li::before { content: ""; flex: 0 0 14px; width: 14px; height: 14px; margin-top: 3px; background: url('../v4/icons/utility/svg/check.svg') center / contain no-repeat; }
.omx-card-link { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 8px; color: #62aeff; font-size: 13px; font-weight: 700; }
.omx-card-link img { width: 14px; height: 14px; margin: 0; filter: none; }

.omx-about { padding: 0; overflow: hidden; background: radial-gradient(circle at 84% 32%, rgba(30,144,255,.08), transparent 34rem), linear-gradient(180deg, #040912, #03070d); }
.omx-about__grid { display: grid; grid-template-columns: minmax(0, .86fr) minmax(620px, 1.14fr); gap: 58px; align-items: center; min-height: 540px; padding: 54px 0; }
.omx-about__copy p:not(.omx-eyebrow) { max-width: 560px; color: var(--omx-text-muted); margin: 18px 0 36px; font-size: 15px; line-height: 1.65; }
.omx-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px 28px; max-width: 690px; }
.omx-feature-grid div { display: grid; gap: 12px; align-content: start; color: #c0cce0; font-size: 13px; line-height: 1.45; }
.omx-feature-grid img { width: 34px; height: 34px; filter: drop-shadow(0 0 12px rgba(30,144,255,.24)); }
.omx-about__visual {
  position: relative;
  align-self: start;
  margin-top: -54px;
  min-height: 430px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  margin-right: calc(-1 * max(48px, (100vw - var(--container-xl)) / 2));
  background: transparent;
  box-shadow: none;
}
.omx-about__visual::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 36%;
  background: linear-gradient(90deg, rgba(8,17,32,.62), rgba(8,17,32,.18));
  border-right: 0;
  z-index: 1;
}
.omx-about__globe {
  position: absolute;
  right: 0;
  top: 0;
  bottom: auto;
  width: min(930px, 64vw);
  height: auto;
  max-width: none;
  opacity: 1;
  mix-blend-mode: normal;
  filter: saturate(1.14) contrast(1.12) brightness(1.02) drop-shadow(0 0 34px rgba(30,144,255,.16));
}
.omx-metrics-panel {
  position: relative;
  z-index: 2;
  width: min(350px, 36%);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .86fr);
  grid-template-rows: repeat(3, auto);
  gap: 42px 34px;
  padding: 54px 0 54px 42px;
}
.omx-metrics-panel div:nth-child(1) { grid-column: 1; grid-row: 1; }
.omx-metrics-panel div:nth-child(2) { grid-column: 1; grid-row: 2; }
.omx-metrics-panel div:nth-child(3) { grid-column: 1; grid-row: 3; }
.omx-metrics-panel div:nth-child(4) { grid-column: 2; grid-row: 3; }
.omx-metrics-panel strong {
  display: block;
  color: #3d91ff;
  font-family: var(--font-display);
  font-size: clamp(34px, 2.6vw, 46px);
  font-weight: 700;
  line-height: 1;
  margin-bottom: 10px;
  text-shadow: 0 0 14px rgba(30,144,255,.24);
}
.omx-metrics-panel div:nth-child(3) strong { color: #8f9dff; text-shadow: 0 0 14px rgba(143,157,255,.22); }
.omx-metrics-panel span { display: block; max-width: 120px; color: var(--omx-text-muted); font-size: 13px; line-height: 1.45; }


.omx-projects { background: #040912 url('../v5/04_mesh/transparent/network-mesh-transparent.webp') center top / cover no-repeat; }
.omx-project-strip { display: grid; grid-template-columns: 42px 1fr 42px; gap: 16px; align-items: center; }
.omx-round-nav { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid rgba(115,151,198,.18); border-radius: 50%; background: rgba(14,25,42,.74); opacity: .8; }
.omx-round-nav img { width: 18px; height: 18px; }
.omx-project-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.omx-project { min-height: 286px; padding: 14px; border: 1px solid rgba(115,151,198,.14); border-radius: 10px; background: linear-gradient(180deg, rgba(17,27,44,.78), rgba(8,14,25,.96)); transition: transform var(--transition), border-color var(--transition); }
.omx-project:hover { transform: translateY(-3px); border-color: var(--omx-border-strong); }
.omx-project picture { display: block; aspect-ratio: 3 / 2; overflow: hidden; border: 1px solid rgba(115,151,198,.12); border-radius: 8px; margin-bottom: 18px; background: #091425; }
.omx-project__visual { width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: 6px; margin: 0; border: 0; background: transparent; }
.omx-project h3 { margin: 0 0 10px; font-family: var(--font-display); font-size: 15px; font-weight: 600; line-height: 1.35; }
.omx-project p { min-height: 58px; margin: 0 0 14px; color: var(--omx-text-muted); font-size: 12px; line-height: 1.55; }
.omx-project span { display: inline-flex; margin: 0 5px 5px 0; color: #72b8ff; background: rgba(30,144,255,.08); border-radius: 5px; padding: 5px 8px; font-size: 11px; }
.omx-more-link { display: inline-flex; align-items: center; gap: 8px; width: max-content; margin: 24px auto 0; color: #55a9ff; font-size: 13px; font-weight: 700; }
.omx-more-link img { width: 14px; height: 14px; }

.omx-process-section { background: linear-gradient(180deg, #040912, #03070d); }
.omx-process { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 12px 0 0; list-style: none; }
.omx-process::before { content: ""; position: absolute; left: 7%; right: 7%; top: 48px; height: 1px; background: linear-gradient(90deg, transparent, rgba(30,144,255,.55), transparent); }
.omx-process li { position: relative; display: grid; justify-items: center; gap: 10px; text-align: center; color: var(--omx-text-muted); }
.omx-process img { width: 62px; height: 62px; padding: 14px; border: 1px solid rgba(30,144,255,.55); border-radius: 16px; background: rgba(8,17,32,.9); box-shadow: 0 0 28px rgba(30,144,255,.12); }
.omx-process strong { color: var(--omx-blue); font-family: var(--font-display); font-size: 14px; }
.omx-process span { min-height: 40px; color: #fff; font-size: 13px; font-weight: 700; line-height: 1.35; }
.omx-process small { max-width: 165px; font-size: 12px; line-height: 1.55; color: var(--omx-text-muted); }

.omx-contact { padding-top: 36px; }
.omx-cta {
  position: relative;
  min-height: 270px;
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  align-items: center;
  gap: 34px;
  overflow: hidden;
  border: 1px solid rgba(30,144,255,.28);
  border-radius: 16px;
  padding: 42px 56px;
  background:
    linear-gradient(90deg, rgba(4,8,15,.98) 0%, rgba(5,12,23,.92) 36%, rgba(5,12,23,.32) 62%, rgba(3,7,13,.08) 100%),
    linear-gradient(180deg, rgba(2,5,10,.08), rgba(2,5,10,.22)),
    url('../custom/cta-right-wave.png') right 8% center / 62% auto no-repeat,
    #040912;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.02), 0 18px 54px rgba(0,0,0,.24);
}
.omx-cta__mark { width: 285px; justify-self: center; opacity: .96; filter: drop-shadow(0 0 30px rgba(30,144,255,.3)); }
.omx-cta__actions { display: flex; align-items: center; gap: 26px; margin-top: 22px; flex-wrap: wrap; }
.omx-cta__actions span { color: var(--omx-text-muted); font-size: 13px; line-height: 1.45; }
.omx-cta__actions a:not(.omx-btn) { color: #70b7ff; font-weight: 700; }
.omx-cta h2 { margin: 0 0 12px; max-width: 650px; font-family: var(--font-display); font-size: clamp(24px, 2.1vw, 32px); line-height: 1.24; font-weight: 600; text-transform: uppercase; letter-spacing: 0; }
.omx-cta p:not(.omx-eyebrow) { max-width: 640px; margin: 0; color: var(--omx-text-muted); }
.omx-cta .omx-btn { position: relative; z-index: 1; background: linear-gradient(135deg, #0749b3 0%, #0874e7 48%, #28a3ff 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.2), inset 0 -18px 28px rgba(0,48,120,.24), 0 0 38px rgba(30,144,255,.25); }



body.omx-modal-open { overflow: hidden; }
.omx-request-modal {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: grid;
  place-items: center;
  align-items: center;
  padding: 24px;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity var(--transition), visibility var(--transition);
}
.omx-request-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.omx-request-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(1, 5, 11, .78);
  backdrop-filter: blur(12px);
}
.omx-request-modal__dialog {
  position: relative;
  width: min(100%, 920px);
  max-height: none;
  overflow: visible;
  border: 1px solid rgba(30,144,255,.34);
  border-radius: 16px;
  padding: 30px 34px 28px;
  background:
    linear-gradient(145deg, rgba(5, 11, 21, .98) 0%, rgba(9, 19, 35, .96) 58%, rgba(3, 7, 13, .98) 100%),
    radial-gradient(circle at 85% 10%, rgba(30,144,255,.18), transparent 18rem);
  box-shadow: 0 32px 90px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.04), 0 0 56px rgba(30,144,255,.18);
}
.omx-request-modal__dialog::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url('../v5/05_particles/transparent/particle-field-transparent.webp') center / cover no-repeat;
  opacity: .16;
  pointer-events: none;
}
.omx-request-modal__dialog > * { position: relative; z-index: 1; }
.omx-request-modal__close {
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 2;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(115,151,198,.22);
  border-radius: 50%;
  background: rgba(8,17,32,.8);
  cursor: pointer;
}
.omx-request-modal__close::before,
.omx-request-modal__close::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  top: 20px;
  height: 2px;
  background: #8ec5ff;
}
.omx-request-modal__close::before { transform: rotate(45deg); }
.omx-request-modal__close::after { transform: rotate(-45deg); }
.omx-request-modal__brand { width: 112px; margin-bottom: 12px; filter: drop-shadow(0 0 24px rgba(30,144,255,.34)); }
.omx-request-modal__copy { max-width: 720px; margin-bottom: 20px; }
.omx-request-modal__copy h2 {
  margin: 0 0 12px;
  font-family: var(--font-display);
  font-size: clamp(25px, 2.55vw, 34px);
  line-height: 1.18;
  font-weight: 600;
  text-transform: uppercase;
}
.omx-request-modal__copy p:not(.omx-eyebrow) { margin: 0; color: var(--omx-text-muted); }
.omx-request-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}
.omx-request-form label { display: grid; gap: 8px; color: #d9e7ff; font-size: 13px; font-weight: 700; }
.omx-request-form input,
.omx-request-form textarea {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(115,151,198,.18);
  border-radius: 10px;
  background: rgba(5, 12, 23, .78);
  color: #fff;
  padding: 0 15px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.02);
  transition: border-color var(--transition), box-shadow var(--transition), background var(--transition);
}
.omx-request-form textarea { min-height: 94px; padding-top: 14px; line-height: 1.5; }
.omx-request-form input:focus,
.omx-request-form textarea:focus {
  border-color: rgba(30,144,255,.7);
  background: rgba(8,17,32,.94);
  box-shadow: 0 0 0 4px rgba(30,144,255,.12);
  outline: 0;
}
.omx-request-form__wide { grid-column: 1 / -1; }
.omx-request-form .omx-btn { grid-column: 1 / -1; width: max-content; margin-top: 2px; border: 0; cursor: pointer; }
.omx-request-form__message { grid-column: 1 / -1; min-height: 24px; margin: 0; color: var(--omx-text-muted); font-size: 14px; }
.omx-request-form__message.is-success { color: #72ffcf; }
.omx-request-form__message.is-error { color: #ff8f9d; }
.omx-request-form__trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.omx-footer { width: min(100% - 96px, var(--container-xl)); margin-inline: auto; padding: 46px 0 56px; display: grid; grid-template-columns: 1.55fr .8fr .98fr .95fr 1.1fr; gap: 34px; color: var(--omx-text-dim); font-size: 13px; }
.omx-footer__brand p { max-width: 250px; margin: 18px 0 10px; color: var(--omx-text-muted); }
.omx-footer strong { display: block; color: #fff; font-family: var(--font-body); letter-spacing: 0; text-transform: uppercase; font-size: 13px; }
.omx-footer-logo { display: inline-flex; width: min(330px, 100%); margin-bottom: 8px; }
.omx-footer-logo .omx-brand__logo { width: 100%; height: auto; filter: none; mix-blend-mode: screen; opacity: .96; }
.omx-footer__nav, .omx-footer__contacts { display: grid; gap: 10px; align-content: start; }
.omx-footer a, .omx-footer__contacts span { color: var(--omx-text-muted); transition: color var(--transition); }
.omx-footer a:hover { color: #fff; }
.omx-footer__contacts a, .omx-footer__contacts span { display: inline-flex; align-items: center; gap: 9px; }
.omx-footer__contacts img { width: 16px; height: 16px; flex: 0 0 auto; }
.omx-footer__socials { display: flex; align-items: center; gap: 14px; padding-top: 6px; }
.omx-footer__socials a { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid rgba(115,151,198,.14); border-radius: 50%; background: rgba(14,25,42,.48); }
.omx-footer__socials img { width: 17px; height: 17px; }
.omx-footer__bottom { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 20px; padding-top: 26px; border-top: 1px solid rgba(115,151,198,.1); }
.omx-default-page { min-height: 72vh; padding: 100px 0; }
.omx-page-content { max-width: 780px; }
.omx-reveal { opacity: 0; transform: translateY(18px); transition: opacity 620ms ease, transform 620ms ease; }
.omx-reveal.is-visible { opacity: 1; transform: translateY(0); }
@keyframes omx-breathe { 0%, 100% { scale: 1; } 50% { scale: 1.018; } }

@media (max-width: 1560px) {
  .omx-hero__inner { grid-template-columns: minmax(650px, .86fr) minmax(430px, 1.14fr); }
  .omx-hero h1 { max-width: 780px; font-size: clamp(36px, 3.05vw, 48px); }
  .omx-lead { max-width: 620px; }
}

@media (max-width: 1080px) {
  .omx-nav { gap: 16px; }
  .omx-header__cta { display: none; }
  .omx-hero__inner { grid-template-columns: 1fr; padding-top: 44px; }
  .omx-about__grid, .omx-cta { grid-template-columns: 1fr; }
  .omx-metrics-panel { width: min(340px, 54%); }
  .omx-project-strip { grid-template-columns: 1fr; }
  .omx-round-nav { display: none; }
  .omx-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .omx-process { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 14px; }
  .omx-process::before { display: none; }
  .omx-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 880px) {
  .omx-container, .omx-header__inner, .omx-footer { width: min(100% - 36px, var(--container-xl)); }
  .omx-header__inner { min-height: 72px; }
  .omx-menu-toggle { display: inline-flex; flex-direction: column; justify-content: center; align-items: center; gap: 6px; width: 48px; height: 48px; margin-left: auto; border: 1px solid var(--omx-border); border-radius: 10px; background: rgba(17,27,44,.72); color: #fff; }
  .omx-menu-toggle span:not(.screen-reader-text) { width: 22px; height: 2px; margin: 0; background: currentColor; transition: transform var(--transition), opacity var(--transition); }
  .omx-brand { width: 230px; min-width: 0; }
  .omx-menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .omx-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .omx-menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  .omx-nav { position: fixed; inset: 72px 0 auto; display: grid; gap: 0; padding: 18px; border-bottom: 1px solid var(--omx-border); background: rgba(3,7,13,.98); transform: translateY(-120%); transition: transform var(--transition); }
  .omx-nav.is-open { transform: translateY(0); }
  .omx-nav a { padding: 15px 6px; font-size: 15px; border-bottom: 1px solid rgba(115,151,198,.1); }
  .omx-services__grid { grid-template-columns: 1fr; }
  .omx-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 20px; max-width: none; }
  .omx-about__grid { grid-template-columns: 1fr; }
  .omx-about__visual { min-height: 330px; margin-top: 0; overflow: hidden; }
  .omx-about__globe { width: min(760px, 118vw); height: auto; right: -24%; top: 0; }
  .omx-metrics-panel { width: min(390px, 55%); padding: 36px 30px; }
}

@media (max-width: 768px) {
  .omx-hero { background-image: linear-gradient(180deg, rgba(3, 7, 13, 0.76) 0%, rgba(3, 7, 13, 0.92) 60%, rgba(3, 7, 13, 0.98) 100%), url('../v5/01_hero/mobile/hero-master-768x1366.webp'); background-position: center top; }
  .omx-cta { background-image: linear-gradient(180deg, rgba(8,16,29,.94), rgba(5,10,18,.76)), url('../v5/07_cta/mobile/cta-background-768x1024.webp'); background-position: center; }
}
@media (max-width: 620px) {
  .omx-hero { min-height: auto; }
  .omx-hero__inner { min-height: 0; padding-top: 136px; padding-bottom: 62px; }
  .omx-hero h1 { max-width: 100%; font-size: clamp(29px, 9.2vw, 36px); line-height: 1.16; }
  .omx-brand { width: 190px; }
  .omx-lead { max-width: 100%; font-size: 16px; line-height: 1.62; }
  .omx-actions { align-items: stretch; gap: 18px; margin-top: 34px; }
  .omx-actions .omx-btn { width: 100%; }
  .omx-section { padding: 58px 0; }
  .omx-about { padding: 0; }
  .omx-about__grid { min-height: auto; padding: 58px 0 42px; }
  .omx-section__head { text-align: left; margin-bottom: 28px; }
  .omx-section h2 { font-size: clamp(24px, 8vw, 32px); line-height: 1.18; }
  .omx-process-section .omx-section__head { text-align: center; }
  .omx-process-section h2 { font-size: clamp(22px, 7vw, 30px); }
  .omx-service-card { padding: 24px; }
  .omx-project-grid { grid-template-columns: 1fr; }
  .omx-process { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; padding-top: 0; }
  .omx-process li { align-content: start; gap: 7px; padding: 14px 10px; border: 1px solid rgba(115,151,198,.12); border-radius: 8px; background: rgba(8,17,32,.34); }
  .omx-process img { width: 48px; height: 48px; padding: 11px; border-radius: 12px; }
  .omx-process strong { font-size: 12px; }
  .omx-process span { min-height: 0; font-size: 12px; line-height: 1.25; }
  .omx-process small { max-width: 100%; font-size: 11px; line-height: 1.38; }
  .omx-metrics-panel { width: 62%; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 24px 0 24px 20px; gap: 24px 18px; }
  .omx-about__visual::before { width: 62%; background: linear-gradient(90deg, rgba(10,18,32,.78), rgba(10,18,32,.28)); }
  .omx-about__globe { opacity: .92; right: -18%; top: 8px; width: min(820px, 150vw); height: auto; filter: saturate(1.08) contrast(1.08) brightness(.94) drop-shadow(0 0 28px rgba(30,144,255,.14)); }
  .omx-cta__mark { width: 155px; }
  .omx-project picture { aspect-ratio: 3 / 2; }
  .omx-cta { padding: 26px 20px; }
  .omx-cta .omx-btn { width: 100%; }
  .omx-footer { grid-template-columns: 1fr; padding-bottom: 40px; }
  .omx-request-modal { padding: 14px; }
  .omx-request-modal__dialog { width: min(100%, 760px); max-height: none; padding: 24px 18px; border-radius: 12px; overflow: visible; }
  .omx-request-modal__brand { width: 96px; }
  .omx-request-form { grid-template-columns: 1fr; gap: 13px; }
  .omx-request-form .omx-btn { width: 100%; }
  .omx-footer__bottom { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
  .omx-reveal { opacity: 1; transform: none; }
}
