      @font-face {
        font-family: "Exo 2";
        src: url("/static/Exo2-VariableFont_wght.ttf") format("truetype");
        font-weight: 100 900;
        font-style: normal;
        font-display: swap;
      }
      :root {
        --bg: #0a0d12;
        --bg-2: #11171f;
        --surface: rgba(22, 28, 38, 0.66);
        --surface-2: rgba(16, 21, 30, 0.78);
        --line: rgba(255, 255, 255, 0.1);
        --text: #eef2f6;
        --muted: #9ca7b3;
        --accent: #c89b6c;
        --accent-2: #e8c39a;
        --glass-border: rgba(255, 255, 255, 0.12);
        --glass-border-soft: rgba(255, 255, 255, 0.06);
        --glass-fill: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.04) 16%, rgba(255, 255, 255, 0.025) 58%, rgba(255, 255, 255, 0.05));
        --glass-core: linear-gradient(155deg, rgba(24, 31, 41, 0.74), rgba(13, 17, 24, 0.68) 42%, rgba(10, 13, 18, 0.84));
        --panel-fill: linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.03) 18%, rgba(255, 255, 255, 0.02) 62%, rgba(255, 255, 255, 0.04));
        --glass-shadow: 0 22px 64px rgba(0, 0, 0, 0.32);
        --panel-shadow: 0 16px 42px rgba(0, 0, 0, 0.18);
        --glow: 0 16px 44px rgba(200, 155, 108, 0.09);
        --edge-gold-top: rgba(255, 203, 132, 0.88);
        --edge-gold-bottom: rgba(255, 189, 103, 0.78);
      }
      * {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
      }
      html,
      body {
        height: 100%;
        background:
          linear-gradient(180deg, #07090d 0%, #0d1218 48%, #07090d 100%);
        color: var(--text);
        font-family: "Exo 2", system-ui, sans-serif;
        overflow: hidden;
      }
      body {
        font-weight: 400;
        letter-spacing: -0.01em;
        position: relative;
        background:
          linear-gradient(135deg, rgba(255, 240, 219, 0.06), transparent 28%, transparent 72%, rgba(255, 214, 163, 0.04)),
          linear-gradient(180deg, #07090d 0%, #0d1218 48%, #07090d 100%);
      }
      body.orientation-lock {
        overflow: hidden;
      }
      body::before {
        content: "";
        position: fixed;
        inset: -12% -8%;
        background:
          linear-gradient(110deg, rgba(255, 255, 255, 0.06), transparent 20%, transparent 78%, rgba(255, 216, 171, 0.06)),
          linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent 22%, transparent 80%, rgba(255, 216, 171, 0.04));
        opacity: 0.38;
        pointer-events: none;
        z-index: 0;
      }

      /* Универсальное фото-заполнение контейнера */
      .ph {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        pointer-events: none;
      }

      .deck {
        height: 100vh;
        width: 100vw;
        position: relative;
        overflow: hidden;
        isolation: isolate;
      }
      body.orientation-lock .deck,
      body.orientation-lock .nav,
      body.orientation-lock .dots,
      body.orientation-lock .brand-fixed,
      body.orientation-lock .fullscreen-toggle {
        filter: blur(10px);
        pointer-events: none;
        user-select: none;
      }
      .rotate-lock {
        position: fixed;
        inset: 0;
        z-index: 200;
        display: flex;
        align-items: center;
        justify-content: center;
        background:
          radial-gradient(circle at center, rgba(255, 255, 255, 0.06), transparent 44%),
          linear-gradient(180deg, rgba(5, 7, 10, 0.92), rgba(10, 13, 18, 0.98));
        backdrop-filter: blur(12px);
      }
      .rotate-lock[hidden] {
        display: none;
      }
      .rotate-lock__card {
        width: min(420px, calc(100vw - 48px));
        padding: 32px 28px 30px;
        border-radius: 28px;
        text-align: center;
        background: var(--glass-fill), linear-gradient(180deg, rgba(20, 26, 36, 0.8), rgba(9, 12, 18, 0.86));
        border: 1px solid var(--glass-border);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          0 20px 48px rgba(0, 0, 0, 0.28);
      }
      .rotate-lock__icon {
        width: 72px;
        height: 72px;
        border-radius: 50%;
        margin: 0 auto 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 34px;
        color: var(--accent-2);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.03));
        border: 1px solid rgba(255, 255, 255, 0.08);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
      }
      .rotate-lock__title {
        color: var(--text);
        font-size: 22px;
        font-weight: 700;
        margin-bottom: 10px;
      }
      .rotate-lock__text {
        color: var(--muted);
        font-size: 15px;
        line-height: 1.5;
      }
      .slide {
        position: absolute;
        inset: 0;
        display: none;
        flex-direction: column;
        justify-content: center;
        padding: 64px 80px;
        isolation: isolate;
        contain: layout paint style;
      }
      .slide::before {
        content: "";
        position: absolute;
        inset: 18px;
        border-radius: 32px;
        background: var(--glass-fill), var(--glass-core);
        border: 1px solid var(--glass-border);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.18),
          inset 0 -1px 0 rgba(255, 255, 255, 0.05),
          var(--glass-shadow);
        z-index: 0;
        pointer-events: none;
      }
      .slide::after {
        content: "";
        position: absolute;
        inset: 18px;
        border-radius: 32px;
        background:
          linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.045) 12%, transparent 24%, transparent 76%, rgba(255, 216, 171, 0.05) 88%, transparent 100%),
          linear-gradient(180deg, rgba(255, 235, 209, 0.12), transparent 9%, transparent 90%, rgba(255, 214, 163, 0.08));
        opacity: 0.55;
        z-index: 0;
        pointer-events: none;
      }
      .slide > * {
        position: relative;
        z-index: 1;
      }
      .slide picture {
        display: contents;
      }
      .slide.active {
        display: flex;
      }

      .progress {
        display: none;
      }
      .progress-bar {
        height: 100%;
        background: linear-gradient(90deg, var(--accent), var(--accent-2));
        width: 0%;
        transition: width 0.5s ease;
      }

      .nav {
        position: fixed;
        top: auto;
        bottom: 28px;
        left: 50%;
        transform: translateX(-50%);
        display: grid;
        grid-template-columns: 36px 52px 48px 52px 36px;
        align-items: center;
        gap: 14px;
        z-index: 50;
        background: var(--glass-fill), linear-gradient(180deg, rgba(22, 28, 38, 0.76), rgba(10, 13, 19, 0.72));
        padding: 10px 18px;
        border-radius: 999px;
        border: 1px solid var(--glass-border);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.16),
          0 12px 28px rgba(0, 0, 0, 0.24);
      }
      .nav button {
        background: none;
        border: none;
        color: var(--text);
        width: 36px;
        height: 36px;
        border-radius: 50%;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: background 0.2s;
      }
      .nav button:hover {
        background: rgba(255, 255, 255, 0.08);
      }
      .nav-toggle {
        width: 48px !important;
        height: 48px !important;
        margin: 0;
        justify-self: center;
        font-size: 16px;
        color: var(--accent-2);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.03)),
          linear-gradient(180deg, rgba(28, 36, 48, 0.92), rgba(16, 20, 28, 0.88));
        border: 1px solid rgba(255, 216, 171, 0.18);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          0 8px 18px rgba(0, 0, 0, 0.2);
      }
      .nav-toggle.active {
        color: var(--accent-2);
        box-shadow:
          inset 0 0 0 2px rgba(255, 216, 171, 0.2),
          0 0 0 3px rgba(77, 151, 255, 0.82),
          0 8px 18px rgba(0, 0, 0, 0.2);
      }
      .nav-stat {
        font-size: 18px;
        line-height: 1;
        color: var(--text);
        font-variant-numeric: tabular-nums;
        text-align: center;
        letter-spacing: 0;
      }
      .nav-stat--total {
        color: var(--muted);
      }
      .fullscreen-toggle {
        position: fixed;
        right: 28px;
        bottom: 28px;
        z-index: 50;
        width: 54px;
        height: 54px;
        border: 1px solid var(--glass-border);
        border-radius: 50%;
        background: var(--glass-fill), linear-gradient(180deg, rgba(22, 28, 38, 0.8), rgba(10, 13, 19, 0.76));
        color: var(--text);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 20px;
        line-height: 1;
        cursor: pointer;
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          0 12px 28px rgba(0, 0, 0, 0.24);
        transition:
          transform 0.2s ease,
          background 0.2s ease,
          border-color 0.2s ease,
          box-shadow 0.2s ease;
      }
      .fullscreen-toggle:hover {
        transform: translateY(-1px);
        border-color: rgba(255, 216, 171, 0.22);
        background: var(--glass-fill), linear-gradient(180deg, rgba(28, 36, 48, 0.84), rgba(12, 16, 24, 0.8));
      }
      .dots {
        position: fixed;
        left: 50%;
        top: 70px;
        transform: translateX(-50%);
        display: flex;
        flex-direction: row;
        gap: 10px;
        z-index: 50;
        padding: 10px 16px;
        border-radius: 999px;
        background: var(--glass-fill), linear-gradient(180deg, rgba(22, 28, 38, 0.76), rgba(10, 13, 19, 0.72));
        border: 1px solid var(--glass-border-soft);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          0 10px 24px rgba(0, 0, 0, 0.2);
        backdrop-filter: blur(10px);
      }
      .dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.2);
        cursor: pointer;
        transition: all 0.25s;
      }
      .dot.active {
        background: var(--accent);
        transform: scale(1.4);
      }
      .brand-fixed {
        position: fixed;
        top: 64px;
        left: 32px;
        z-index: 50;
        font-size: 13px;
        letter-spacing: 0.2em;
        color: var(--muted);
        font-weight: 500;
        padding: 12px 18px;
        border-radius: 999px;
        background: var(--glass-fill), linear-gradient(180deg, rgba(22, 28, 38, 0.74), rgba(10, 13, 19, 0.68));
        border: 1px solid var(--glass-border-soft);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          0 12px 28px rgba(0, 0, 0, 0.22);
      }
      .brand-meta {
        white-space: nowrap;
      }
      .brand-fixed b {
        color: var(--accent);
        font-weight: 700;
      }

      h1,
      h2,
      h3 {
        font-weight: 700;
        line-height: 1.05;
        letter-spacing: -0.02em;
      }
      h1 {
        font-size: clamp(48px, 6vw, 92px);
      }
      h2 {
        font-size: clamp(36px, 4.5vw, 64px);
        margin-bottom: 0.4em;
      }
      h3 {
        font-size: clamp(22px, 2vw, 32px);
      }
      .eyebrow {
        font-size: 13px;
        letter-spacing: 0.25em;
        text-transform: uppercase;
        color: var(--accent);
        font-weight: 600;
        margin-bottom: 24px;
      }
      .slide-head-fixed,
      .slide-detail,
      .slide-contact {
        justify-content: flex-start;
        padding-top: 152px;
      }
      .slide-head-fixed > .eyebrow,
      .slide-contact .contact-block > .eyebrow,
      .detail-text > .eyebrow {
        margin-top: 0;
      }
      .slide-head-fixed > :is(.stats-layout, .pillars, .products, .steps, .partners),
      .slide-detail .detail,
      .slide-contact .contacts {
        margin-top: auto;
        margin-bottom: auto;
      }
      .lead {
        font-size: clamp(18px, 1.4vw, 22px);
        color: var(--muted);
        line-height: 1.55;
        max-width: 620px;
      }
      .serif {
        font-family: "Playfair Display", serif;
        font-style: italic;
        font-weight: 400;
      }

      /* Hero */
      .hero {
        background: transparent;
        padding: 0;
        overflow: hidden;
      }
      .slide-pillar-hero {
        background: transparent;
        padding: 0;
        overflow: hidden;
      }
      .slide-has-bg {
        background: transparent;
        overflow: hidden;
      }
      .slide-has-bg .slide-bg,
      .slide-has-bg .slide-overlay {
        position: absolute;
        inset: 18px;
        border-radius: 32px;
      }
      .slide-has-bg .slide-bg {
        width: calc(100% - 36px);
        height: calc(100% - 36px);
        object-fit: cover;
        object-position: center center;
        z-index: 1;
      }
      .slide-has-bg .slide-overlay {
        z-index: 1;
      }
      .slide-has-bg > :not(.slide-bg):not(.slide-overlay):not(.section-n) {
        position: relative;
        z-index: 2;
      }
      .slide-has-bg > .section-n {
        position: absolute;
        z-index: 3;
      }
      .slide-pillar-hero .slide-bg,
      .slide-pillar-hero .slide-overlay {
        position: absolute;
        inset: 18px;
        border-radius: 32px;
      }
      .slide-pillar-hero .slide-bg {
        width: calc(100% - 36px);
        height: calc(100% - 36px);
        object-fit: cover;
        object-position: center center;
        filter: brightness(0.88) saturate(0.94) contrast(0.98);
        z-index: 1;
      }
      .slide-pillar-hero .slide-overlay {
        background:
          linear-gradient(90deg, rgba(8, 10, 15, 0.54) 0%, rgba(8, 10, 15, 0.24) 42%, rgba(8, 10, 15, 0.5) 100%),
          linear-gradient(180deg, rgba(8, 10, 15, 0.1) 0%, rgba(8, 10, 15, 0.34) 100%);
        z-index: 1;
      }
      .slide-pillar-hero > :not(.slide-bg):not(.slide-overlay) {
        position: relative;
        z-index: 2;
      }
      .slide-pillar-content {
        position: relative;
        z-index: 2;
        height: 100%;
        padding: 120px 80px 92px;
        display: flex;
        flex-direction: column;
      }
      .slide-pillar-copy {
        max-width: 820px;
      }
      .slide-pillar-hero .section-n {
        top: 64px;
        right: 80px;
        bottom: auto;
      }
      .slide-pillar-hero .eyebrow {
        margin-bottom: 18px;
      }
      .slide-pillar-hero h2 {
        max-width: 820px;
      }
      .slide-pillar-hero .pillars {
        margin-top: auto;
        margin-bottom: 12px;
      }
      .slide-pillar-hero .pillar {
        backdrop-filter: blur(6px);
      }
      .slide-process-bg .slide-bg {
        filter: brightness(0.9) saturate(0.96) contrast(1);
      }
      .slide-process-bg .slide-overlay {
        background:
          linear-gradient(90deg, rgba(8, 10, 15, 0.52) 0%, rgba(8, 10, 15, 0.24) 40%, rgba(8, 10, 15, 0.38) 100%),
          linear-gradient(180deg, rgba(8, 10, 15, 0.16) 0%, rgba(8, 10, 15, 0.42) 100%);
      }
      .slide-process {
        background: transparent;
        padding: 0;
        overflow: hidden;
      }
      .slide-process .process-content {
        position: relative;
        z-index: 2;
        height: 100%;
        padding: 120px 80px 92px;
        display: flex;
        flex-direction: column;
      }
      .slide-process .process-copy {
        max-width: 760px;
      }
      .slide-process .section-n {
        position: absolute;
        top: 64px;
        right: 80px;
        left: auto;
        bottom: auto;
        z-index: 3;
      }
      .slide-process .eyebrow {
        margin-bottom: 18px;
      }
      .slide-process h2 {
        max-width: 760px;
      }
      .slide-process .steps {
        margin-top: auto;
        margin-bottom: 36px;
      }
      .hero-image,
      .hero-overlay {
        position: absolute;
        inset: 18px;
        border-radius: 32px;
      }
      .hero-image {
        width: calc(100% - 36px);
        height: calc(100% - 36px);
        object-fit: cover;
        object-position: center center;
        filter: brightness(1.16) saturate(1.02) contrast(0.98);
        z-index: 1;
      }
      .hero-overlay {
        background:
          linear-gradient(90deg, rgba(8, 10, 15, 0.36) 0%, rgba(8, 10, 15, 0.14) 42%, rgba(8, 10, 15, 0.24) 100%),
          linear-gradient(180deg, rgba(8, 10, 15, 0.05) 0%, rgba(8, 10, 15, 0.3) 100%);
        z-index: 1;
      }
      .hero-inner {
        display: flex;
        align-items: flex-end;
        height: 100%;
        padding: 120px 80px 92px;
      }
      .hero .hero-text {
        max-width: 680px;
        background:
          linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.025) 16%, rgba(255, 255, 255, 0.015) 58%, rgba(255, 255, 255, 0.035)),
          linear-gradient(180deg, rgba(18, 24, 34, 0.44), rgba(8, 10, 16, 0.34));
        border-color: rgba(255, 255, 255, 0.08);
        backdrop-filter: blur(7px);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          0 12px 30px rgba(0, 0, 0, 0.14);
      }
      .hero-text .mark {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        font-size: 13px;
        letter-spacing: 0.2em;
        color: var(--accent);
        margin-bottom: 32px;
        text-transform: uppercase;
        font-weight: 600;
      }
      .hero-text .mark::before {
        content: "";
        width: 40px;
        height: 1px;
        background: var(--accent);
      }
      .hero h1 {
        margin-bottom: 28px;
      }
      .hero h1 .serif {
        display: block;
        font-family: inherit;
        font-style: normal;
        font-weight: inherit;
        letter-spacing: inherit;
        color: transparent;
        background-image:
          linear-gradient(180deg, #f9fbfd 0%, #d8dde3 18%, #8d96a0 42%, #f2f5f8 56%, #9aa3ad 72%, #fbfdff 100%),
          linear-gradient(90deg, rgba(255, 255, 255, 0.75) 0%, rgba(183, 191, 200, 0.34) 18%, rgba(255, 255, 255, 0.92) 42%, rgba(120, 129, 138, 0.3) 66%, rgba(250, 252, 255, 0.88) 100%),
          repeating-linear-gradient(102deg, rgba(255, 255, 255, 0.22) 0 8px, rgba(166, 174, 183, 0.08) 8px 14px, rgba(255, 255, 255, 0.03) 14px 22px);
        background-size: 100% 100%, 100% 100%, 220px 100%;
        background-position: center center, center center, center center;
        -webkit-background-clip: text;
        background-clip: text;
        text-shadow:
          0 1px 0 rgba(255, 255, 255, 0.18),
          0 12px 32px rgba(0, 0, 0, 0.2);
      }
      .hero-meta {
        display: flex;
        gap: 40px;
        margin-top: 48px;
        padding-top: 32px;
        border-top: 1px solid var(--line);
      }
      .hero-meta div {
        font-size: 14px;
        color: var(--muted);
      }
      .hero-meta strong {
        display: block;
        color: var(--text);
        font-size: 24px;
        font-weight: 700;
        margin-bottom: 4px;
      }
      .hero-visual::before,
      .stats-visual::before,
      .detail-visual::before,
      .map-card::before,
      .product::before {
        content: "";
        position: absolute;
        inset: 0;
        background:
          radial-gradient(32% 8px at 50% 0, var(--edge-gold-top), transparent 78%),
          radial-gradient(32% 8px at 50% 100%, var(--edge-gold-bottom), transparent 78%),
          linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.03) 16%, transparent 40%, rgba(8, 10, 16, 0.18) 100%),
          linear-gradient(90deg, rgba(255, 255, 255, 0.06), transparent 22%, transparent 78%, rgba(255, 216, 171, 0.06));
        z-index: 2;
        pointer-events: none;
        opacity: 0.75;
      }
      .hero-visual::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, transparent 45%, rgba(11, 15, 20, 0.85));
        pointer-events: none;
        z-index: 3;
      }
      .hero-badge {
        position: absolute;
        bottom: 32px;
        left: 32px;
        right: 32px;
        color: #fff;
        z-index: 4;
      }
      .hero-badge .t {
        font-size: 13px;
        letter-spacing: 0.2em;
        opacity: 0.7;
        text-transform: uppercase;
        margin-bottom: 6px;
      }
      .hero-badge .v {
        font-size: 20px;
        font-weight: 600;
      }

      /* Stats */
      .stats-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 24px;
        margin-top: 32px;
      }
      .stat {
        padding: 28px 24px;
        background: var(--panel-fill), linear-gradient(180deg, rgba(20, 26, 36, 0.72), rgba(9, 12, 18, 0.66));
        border: 1px solid var(--glass-border-soft);
        border-radius: 22px;
        position: relative;
        overflow: hidden;
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          var(--panel-shadow);
      }
      .stat::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background: linear-gradient(90deg, rgba(255, 214, 163, 0.7), transparent 42%);
      }
      .stat .num {
        font-size: clamp(32px, 3.2vw, 48px);
        font-weight: 800;
        line-height: 1;
        color: var(--accent-2);
        margin-bottom: 8px;
        letter-spacing: -0.03em;
        white-space: nowrap;
      }
      .stat .lbl {
        color: var(--muted);
        font-size: 13px;
        line-height: 1.4;
      }
      .stats-layout {
        display: grid;
        grid-template-columns: 1.2fr 0.8fr;
        gap: 48px;
        align-items: center;
        margin-top: 24px;
      }
      .stats-visual {
        position: relative;
        height: min(56vh, 500px);
        border-radius: 28px;
        overflow: hidden;
        box-shadow: var(--glow);
        border: 1px solid var(--glass-border);
        align-self: center;
        transform: translateY(-18px);
      }
      .stats-visual::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, transparent 50%, rgba(11, 15, 20, 0.6));
        pointer-events: none;
        z-index: 3;
      }

      /* Pillars */
      .pillars {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        margin-top: 48px;
      }
      .pillar {
        padding: 36px 28px;
        background: var(--panel-fill), linear-gradient(180deg, rgba(20, 26, 36, 0.74), rgba(9, 12, 18, 0.7));
        border: 1px solid var(--glass-border-soft);
        border-radius: 24px;
        transition:
          transform 0.3s,
          border-color 0.3s,
          box-shadow 0.3s;
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          var(--panel-shadow);
      }
      .pillar:hover {
        transform: translateY(-4px);
        border-color: rgba(255, 216, 171, 0.24);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.16),
          0 20px 46px rgba(0, 0, 0, 0.22);
      }
      .pillar .icon {
        position: relative;
        overflow: hidden;
        isolation: isolate;
        width: 48px;
        height: 48px;
        border-radius: 14px;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.04));
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 24px;
        color: var(--accent);
        font-size: 22px;
        border: 1px solid rgba(255, 255, 255, 0.08);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
      }
      .pillar .icon::before {
        content: "";
        position: absolute;
        inset: -1px;
        border-radius: inherit;
        background:
          radial-gradient(48% 8px at 50% 0, var(--edge-gold-top), transparent 78%),
          radial-gradient(48% 8px at 50% 100%, var(--edge-gold-bottom), transparent 78%);
        opacity: 0.88;
        pointer-events: none;
      }
      .pillar h3 {
        margin-bottom: 12px;
        font-size: 22px;
      }
      .pillar p {
        color: var(--muted);
        font-size: 15px;
        line-height: 1.6;
      }

      /* Products */
      .products {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: repeat(2, 1fr);
        gap: 20px;
        margin-top: 40px;
        height: min(58vh, 500px);
        padding: 20px;
        border-radius: 30px;
        background: var(--panel-fill), linear-gradient(180deg, rgba(18, 24, 34, 0.62), rgba(8, 10, 16, 0.56));
        border: 1px solid var(--glass-border-soft);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.12),
          0 16px 42px rgba(0, 0, 0, 0.18);
      }
      .products--triple {
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: 1fr;
        height: min(54vh, 460px);
      }
      .product {
        position: relative;
        border-radius: 22px;
        overflow: hidden;
        background: linear-gradient(180deg, rgba(20, 26, 36, 0.52), rgba(9, 12, 18, 0.42));
        cursor: default;
        transition:
          transform 0.3s,
          border-color 0.3s,
          box-shadow 0.3s;
        border: 1px solid rgba(255, 255, 255, 0.08);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.12),
          0 14px 34px rgba(0, 0, 0, 0.22);
      }
      .product:hover {
        transform: scale(1.02);
        border-color: rgba(255, 216, 171, 0.22);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          0 18px 42px rgba(0, 0, 0, 0.24);
      }
      .product--entry .ph {
        object-position: center 16%;
      }
      .product::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, transparent 28%, rgba(11, 15, 20, 0.86) 100%);
        pointer-events: none;
        z-index: 3;
      }
      .product .label {
        position: absolute;
        inset: 0;
        padding: 18px 24px 24px;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        z-index: 4;
        color: #fff;
        text-shadow:
          0 1px 2px rgba(0, 0, 0, 0.45),
          0 10px 24px rgba(0, 0, 0, 0.3);
      }
      .product h3 {
        font-size: 20px;
        margin-top: auto;
        margin-bottom: 6px;
        color: #fff !important;
      }
      .product span {
        color: #fff;
        font-size: 12px;
        letter-spacing: 0.15em;
        text-transform: uppercase;
        font-weight: 600;
      }

      /* Detail */
      .detail {
        display: grid;
        grid-template-columns: 1.1fr 0.9fr;
        gap: 56px;
        align-items: center;
        height: 100%;
      }
      .slide-detail .detail {
        align-items: center;
        height: auto;
        min-height: 0;
      }
      .detail-visual {
        position: relative;
        height: min(68vh, 560px);
        border-radius: 28px;
        overflow: hidden;
        box-shadow: var(--glow);
        border: 1px solid var(--glass-border);
      }
      .detail-visual::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, transparent 60%, rgba(11, 15, 20, 0.5));
        pointer-events: none;
        z-index: 3;
      }
      .detail-text .features {
        margin-top: 28px;
        display: flex;
        flex-direction: column;
        gap: 12px;
      }
      .feature {
        display: flex;
        gap: 18px;
        padding: 16px 20px;
        background: linear-gradient(180deg, rgba(18, 24, 34, 0.84), rgba(18, 24, 34, 0.84));
        border-radius: 18px;
        border: 1px solid var(--glass-border-soft);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.08),
          0 8px 18px rgba(0, 0, 0, 0.12);
      }
      .feature .num {
        color: var(--accent);
        font-weight: 700;
        font-size: 16px;
        min-width: 24px;
      }
      .feature .content h4 {
        font-size: 16px;
        margin-bottom: 4px;
        font-weight: 600;
      }
      .feature .content p {
        color: var(--muted);
        font-size: 13px;
        line-height: 1.5;
      }
      .specs {
        display: flex;
        gap: 32px;
        margin-top: 24px;
        padding-top: 24px;
        border-top: 1px solid var(--line);
      }
      .specs div {
        font-size: 13px;
        color: var(--muted);
      }
      .specs strong {
        color: var(--accent-2);
        display: block;
        font-size: 22px;
        font-weight: 700;
        margin-bottom: 2px;
      }

      /* Process */
      .steps {
        --steps-shell-pad: 28px;
        --step-card-pad: 16px;
        --step-marker-size: 48px;
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 16px;
        margin-top: 56px;
        position: relative;
        padding: var(--steps-shell-pad);
        border-radius: 28px;
        background: var(--panel-fill), linear-gradient(180deg, rgba(18, 24, 34, 0.62), rgba(8, 10, 16, 0.58));
        border: 1px solid var(--glass-border-soft);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.12),
          0 16px 42px rgba(0, 0, 0, 0.18);
      }
      .steps::before {
        content: "";
        position: absolute;
        top: calc(var(--steps-shell-pad) + var(--step-card-pad) + (var(--step-marker-size) / 2));
        left: calc(var(--steps-shell-pad) + var(--step-card-pad) + (var(--step-marker-size) / 2));
        right: calc(var(--steps-shell-pad) + var(--step-card-pad) + (var(--step-marker-size) / 2));
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(90deg, rgba(255, 216, 171, 0.44), rgba(255, 255, 255, 0.12) 22%, rgba(255, 255, 255, 0.08) 78%, rgba(255, 216, 171, 0.32));
        opacity: 0.72;
        display: none;
      }
      .step {
        position: relative;
        z-index: 2;
        padding: var(--step-card-pad);
        border-radius: 20px;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
        border: 1px solid rgba(255, 255, 255, 0.05);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
      }
      .step .n {
        width: var(--step-marker-size);
        height: var(--step-marker-size);
        border-radius: 50%;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.05));
        border: 1px solid rgba(255, 216, 171, 0.24);
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--accent);
        font-weight: 700;
        margin-bottom: 20px;
        font-size: 16px;
        position: relative;
        z-index: 2;
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.16),
          0 12px 28px rgba(0, 0, 0, 0.18);
      }
      .step h4 {
        font-size: 17px;
        margin-bottom: 8px;
        font-weight: 600;
      }
      .step p {
        font-size: 14px;
        color: var(--muted);
        line-height: 1.5;
      }

      /* Partners — glass logo plates */
      .partners {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 22px;
        margin-top: 40px;
      }
      .partner {
        --partner-glow: rgba(255, 198, 132, 0.92);
        aspect-ratio: 2.2/1;
        border-radius: 18px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 28px 26px 24px;
        border: 1px solid var(--glass-border-soft);
        background: rgba(12, 16, 22, 0.94);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.15),
          inset 0 -1px 0 rgba(255, 210, 155, 0.12),
          0 16px 40px rgba(0, 0, 0, 0.24),
          0 0 0 1px rgba(255, 255, 255, 0.02);
        transition:
          transform 0.35s ease,
          border-color 0.35s ease,
          box-shadow 0.35s ease,
          filter 0.35s ease;
        position: relative;
        overflow: hidden;
        isolation: isolate;
      }
      .partner--image {
        padding: 10px 12px;
      }
      .partner--image::before {
        opacity: 0.28;
      }
      .partner--image::after {
        opacity: 0.48;
      }
      .partner:hover {
        transform: translateY(-4px) scale(1.01);
        border-color: rgba(240, 199, 139, 0.28);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.18),
          inset 0 -1px 0 rgba(255, 210, 155, 0.14),
          0 20px 48px rgba(0, 0, 0, 0.28),
          0 0 0 1px rgba(240, 199, 139, 0.08);
        filter: saturate(1.05);
      }
      .partner::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: none;
        opacity: 0;
        pointer-events: none;
        z-index: 0;
      }
      .partner::after {
        content: "";
        position: absolute;
        inset: -1px;
        border-radius: inherit;
        background:
          radial-gradient(34% 8px at 50% 0, var(--partner-glow), transparent 78%),
          radial-gradient(34% 8px at 50% 100%, rgba(255, 208, 148, 0.9), transparent 78%),
          linear-gradient(180deg, rgba(255, 255, 255, 0.24), transparent 14%, transparent 84%, rgba(255, 204, 137, 0.18));
        opacity: 0.88;
        pointer-events: none;
        z-index: 1;
      }
      .partner-media {
        position: relative;
        z-index: 2;
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 16px;
        text-align: center;
      }
      .partner-media::before {
        content: "";
        position: absolute;
        inset: 18% 16%;
        border-radius: 999px;
        background: radial-gradient(circle, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.03) 46%, transparent 76%);
        opacity: 0.66;
        z-index: -1;
      }
      .partner--image .partner-media::before {
        inset: 10% 10%;
        opacity: 0.3;
      }
      .partner-logo-img {
        display: block;
        width: auto;
        max-width: min(96%, 380px);
        max-height: 148px;
        object-fit: contain;
        transform-origin: center center;
        filter:
          contrast(1.08)
          saturate(1.04)
          drop-shadow(0 8px 18px rgba(0, 0, 0, 0.18));
      }
      .partner--image .partner-media {
        gap: 0;
      }
      .partner--image img[src*="a101"] {
        max-width: min(58%, 214px);
        max-height: 118px;
        transform: scale(3.1);
      }
      .partner--image img[src*="samolet"] {
        max-width: min(90%, 320px);
        max-height: 112px;
        transform: scale(2.1);
      }
      .partner--image img[src*="fabrika"] {
        max-width: min(92%, 332px);
        max-height: 124px;
        transform: scale(2.05);
      }
      .partner--image img[src*="absolut"],
      .partner--image img[src*="inginiring"],
      .partner--image img[src*="arch"] {
        max-width: min(72%, 268px);
        max-height: 122px;
        transform: scale(1.72);
      }
      .partner .logo {
        position: relative;
        z-index: 2;
        text-align: center;
        text-shadow:
          0 1px 0 rgba(255, 255, 255, 0.04),
          0 12px 28px rgba(0, 0, 0, 0.45);
      }
      .partner .logo .name {
        font-family: "Exo 2", system-ui, sans-serif;
        font-size: clamp(28px, 2.1vw, 46px);
        font-weight: 700;
        color: var(--text);
        letter-spacing: 0;
        line-height: 0.95;
      }
      .partner .logo .sub {
        font-size: 11px;
        letter-spacing: 0.24em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.4);
        margin-top: 12px;
        font-weight: 600;
      }
      .partner .logo .dotline {
        color: #46b5e7;
        margin-right: 2px;
      }

      @media (max-width: 1100px) {
        .partners {
          grid-template-columns: repeat(2, 1fr);
        }
      }

      @media (max-width: 720px) {
        .partners {
          grid-template-columns: 1fr;
        }
        .partner {
          aspect-ratio: 2/1;
        }
      }

      /* Contacts */
      .contacts {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 56px;
        height: 100%;
        align-items: stretch;
      }
      .slide-contact .contacts {
        align-items: stretch;
        height: auto;
        min-height: 0;
      }
      .slide-contact .contact-block,
      .slide-contact .map-card {
        min-height: min(68vh, 560px);
        height: 100%;
      }
      .contact-head {
        display: flow-root;
        margin-bottom: 28px;
      }
      .contact-qr {
        float: right;
        width: 148px;
        margin: 2px 0 20px 28px;
        padding: 10px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.96);
        border: 1px solid rgba(255, 255, 255, 0.1);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.82),
          0 14px 28px rgba(0, 0, 0, 0.16);
      }
      .contact-qr img {
        display: block;
        width: 100%;
        height: auto;
        border-radius: 10px;
      }
      .contact-block h2 {
        margin-bottom: 0;
      }
      .contact-item {
        padding: 20px 0;
        border-bottom: 1px solid var(--line);
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 24px;
      }
      .contact-item .k {
        color: var(--muted);
        font-size: 12px;
        letter-spacing: 0.15em;
        text-transform: uppercase;
      }
      .contact-item .v {
        font-size: 19px;
        font-weight: 600;
        color: var(--text);
        text-align: right;
      }
      .contact-item .v a {
        color: inherit;
        text-decoration: none;
      }
      .contact-item .v a:hover {
        color: var(--accent-2);
      }
      .cta {
        margin-top: 40px;
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
      }
      .btn {
        padding: 16px 28px;
        border-radius: 12px;
        font-weight: 600;
        font-size: 15px;
        text-decoration: none;
        transition: all 0.2s;
        border: 1px solid transparent;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.12),
          0 10px 24px rgba(0, 0, 0, 0.18);
      }
      .btn-primary {
        background: linear-gradient(180deg, rgba(232, 195, 154, 0.86), rgba(200, 155, 108, 0.78));
        color: #1a1208;
        border-color: rgba(255, 240, 219, 0.18);
      }
      .btn-primary:hover {
        background: linear-gradient(180deg, rgba(240, 207, 170, 0.9), rgba(211, 166, 119, 0.82));
      }
      .btn-ghost {
        border-color: var(--glass-border-soft);
        color: var(--text);
        background: var(--glass-fill), linear-gradient(180deg, rgba(20, 26, 36, 0.7), rgba(9, 12, 18, 0.64));
      }
      .btn-ghost:hover {
        border-color: rgba(255, 216, 171, 0.24);
        color: var(--accent-2);
      }
      .map-card {
        position: relative;
        height: auto;
        border-radius: 28px;
        overflow: hidden;
        border: 1px solid var(--glass-border);
        box-shadow: var(--glow);
        background: linear-gradient(180deg, rgba(16, 22, 31, 0.88), rgba(8, 10, 16, 0.92));
      }
      .map-embed {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        border: 0;
        display: block;
        background: transparent;
        filter: none;
      }
      .map-launch {
        position: absolute;
        right: 20px;
        bottom: 20px;
        z-index: 5;
        padding: 10px 14px;
        border-radius: 999px;
        color: var(--text);
        text-decoration: none;
        font-size: 12px;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        background: var(--panel-fill), linear-gradient(180deg, rgba(18, 24, 34, 0.84), rgba(8, 10, 16, 0.8));
        border: 1px solid rgba(255, 255, 255, 0.08);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.12),
          0 8px 18px rgba(0, 0, 0, 0.22);
      }
      .map-card::after {
        content: "";
        position: absolute;
        inset: 0;
        background: none;
        pointer-events: none;
        z-index: 3;
      }
      .map-card .addr {
        position: absolute;
        bottom: 28px;
        left: 28px;
        right: 28px;
        color: #fff;
        z-index: 4;
      }
      .map-card .addr .t {
        font-size: 12px;
        letter-spacing: 0.2em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.92);
        margin-bottom: 6px;
      }
      .map-card .addr .v {
        font-size: 20px;
        font-weight: 600;
        line-height: 1.4;
        color: #fff;
      }

      .section-n {
        position: absolute;
        top: 64px;
        right: 80px;
        bottom: auto;
        display: inline-flex;
        align-items: center;
        width: max-content;
        max-width: calc(100% - 160px);
        font-size: 13px;
        letter-spacing: 0.2em;
        color: var(--muted);
        text-transform: uppercase;
        padding: 10px 14px;
        border-radius: 999px;
        background: var(--glass-fill), linear-gradient(180deg, rgba(20, 26, 36, 0.68), rgba(9, 12, 18, 0.64));
        border: 1px solid var(--glass-border-soft);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
      }
      .section-n b {
        color: var(--accent);
        font-weight: 700;
      }
      .deco-line {
        display: none;
      }

      .final {
        text-align: center;
        align-items: center;
        justify-content: center;
        background: transparent;
      }
      .final h1 {
        margin-bottom: 24px;
      }
      .final h1 .serif {
        font-style: normal;
      }
      .final .lead {
        margin: 0 auto 40px;
      }
      .final .cta {
        justify-content: center;
      }
      .final .cta .btn {
        font-size: 20px;
        padding: 18px 34px;
      }

      .hero-text,
      .detail-text,
      .contact-block,
      .stats-layout > div:first-child,
      .products,
      .pillars,
      .pillar,
      .feature,
      .steps,
      .step {
        position: relative;
        overflow: hidden;
        isolation: isolate;
      }
      .hero-text,
      .detail-text,
      .contact-block,
      .stats-layout > div:first-child {
        padding: 40px 42px;
        border-radius: 30px;
        background: var(--panel-fill), linear-gradient(180deg, rgba(18, 24, 34, 0.64), rgba(8, 10, 16, 0.6));
        border: 1px solid var(--glass-border-soft);
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.14),
          0 16px 42px rgba(0, 0, 0, 0.18);
      }
      .hero-text::before,
      .detail-text::before,
      .contact-block::before,
      .stats-layout > div:first-child::before,
      .products::before,
      .pillar::before,
      .steps::after,
      .step::before {
        content: "";
        position: absolute;
        inset: -1px;
        border-radius: inherit;
        background:
          radial-gradient(34% 8px at 50% 0, var(--edge-gold-top), transparent 78%),
          radial-gradient(34% 8px at 50% 100%, var(--edge-gold-bottom), transparent 78%),
          linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 14%, transparent 86%, rgba(255, 214, 143, 0.12));
        opacity: 0.82;
        pointer-events: none;
        z-index: 0;
      }
      .hero-text > *,
      .detail-text > *,
      .contact-block > *,
      .stats-layout > div:first-child > *,
      .products > *,
      .pillar > *,
      .pillars > * {
        position: relative;
        z-index: 1;
      }

      @media (max-width: 1100px) {
        .hero-text,
        .detail-text,
        .contact-block,
        .stats-layout > div:first-child {
          padding: 32px;
        }
        .contact-qr {
          width: 128px;
        }
        .brand-fixed {
          max-width: calc(100vw - 64px);
        }
      }

      @media (max-width: 900px), (prefers-reduced-motion: reduce) {
        body::before {
          opacity: 0.22;
        }
        .partner:hover,
        .pillar:hover,
        .product:hover {
          transform: none;
        }
      }

      @media (max-width: 720px) {
        .contact-qr {
          float: none;
          width: 116px;
          margin: 0 0 18px;
        }
        .hero-image {
          object-position: 58% center;
        }
        .hero-inner {
          padding: 116px 36px 120px;
        }
        .hero h1 {
          max-width: 8ch;
        }
        .brand-fixed {
          max-width: calc(100vw - 40px);
        }
        .nav {
          grid-template-columns: 32px 36px 44px 36px 32px;
          gap: 10px;
          padding-inline: 14px;
        }
        .nav button {
          width: 32px;
          height: 32px;
        }
        .nav-toggle {
          width: 44px !important;
          height: 44px !important;
          font-size: 15px;
        }
        .nav-stat {
          font-size: 16px;
        }
        .fullscreen-toggle {
          right: 20px;
          width: 50px;
          height: 50px;
        }
      }
      .brand-meta__suffix {
        display: inline;
      }

      .mobile-intro {
        position: fixed;
        inset: 0;
        z-index: 180;
        display: none;
        align-items: center;
        justify-content: center;
        padding: 24px 28px;
        background: radial-gradient(ellipse at center, rgba(6, 8, 13, 0.3) 0%, rgba(6, 8, 13, 0.72) 92%);
        backdrop-filter: blur(3px);
      }
      .mobile-intro__box {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 14px;
        text-align: center;
        max-width: 440px;
      }
      .mobile-intro__brand {
        font-size: 11px;
        letter-spacing: 0.24em;
        text-transform: uppercase;
        color: var(--accent);
        font-weight: 600;
      }
      .mobile-intro__btn {
        padding: 14px 30px;
        border-radius: 14px;
        background: linear-gradient(180deg, rgba(232, 195, 154, 0.96), rgba(200, 155, 108, 0.88));
        color: #1a1208;
        font-weight: 700;
        font-size: 15px;
        font-family: inherit;
        border: 1px solid rgba(255, 240, 219, 0.24);
        display: inline-flex;
        align-items: center;
        gap: 10px;
        cursor: pointer;
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.18),
          0 14px 32px rgba(0, 0, 0, 0.32);
        letter-spacing: 0.02em;
      }
      .mobile-intro__btn:hover,
      .mobile-intro__btn:focus-visible {
        background: linear-gradient(180deg, rgba(240, 207, 170, 0.98), rgba(211, 166, 119, 0.92));
        outline: none;
      }
      .mobile-intro__icon {
        font-size: 17px;
        line-height: 1;
      }
      .mobile-intro__hint {
        font-size: 13px;
        line-height: 1.5;
        color: rgba(255, 255, 255, 0.88);
        text-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
        max-width: 320px;
      }

      @media (orientation: portrait) {
        body.orientation-lock .deck,
        body.orientation-lock .nav,
        body.orientation-lock .dots,
        body.orientation-lock .brand-fixed {
          filter: none;
        }
      }

      @media (orientation: landscape) and (max-height: 500px) {
        body:not(.is-fullscreen) .mobile-intro {
          display: flex;
        }
        body:not(.is-fullscreen) .nav,
        body:not(.is-fullscreen) .dots,
        body:not(.is-fullscreen) .brand-fixed,
        body:not(.is-fullscreen) .fullscreen-toggle {
          display: none;
        }
        body:not(.is-fullscreen) .slide.active > *:not(picture):not(.hero-overlay) {
          visibility: hidden;
        }
        .slide {
          padding: 40px 44px 56px;
          justify-content: flex-start;
          overflow-y: auto;
          -webkit-overflow-scrolling: touch;
        }
        .slide::before,
        .slide::after {
          inset: 10px;
          border-radius: 22px;
        }

        h1 {
          font-size: clamp(26px, 4.6vw, 38px);
        }
        h2 {
          font-size: clamp(18px, 3.4vw, 26px);
          margin-bottom: 0.3em;
        }
        h3 {
          font-size: clamp(15px, 2.2vw, 19px);
        }
        .lead {
          font-size: 12px;
          line-height: 1.45;
        }
        .eyebrow {
          margin-bottom: 8px;
          font-size: 10px;
          letter-spacing: 0.22em;
        }

        .section-n {
          top: 18px;
          right: 40px;
          padding: 6px 10px;
          font-size: 10px;
          letter-spacing: 0.14em;
        }

        .slide-head-fixed,
        .slide-detail,
        .slide-contact {
          padding-top: 44px;
        }
        .slide-head-fixed > :is(.stats-layout, .pillars, .products, .steps, .partners),
        .slide-detail .detail,
        .slide-contact .contacts {
          margin-top: 8px;
          margin-bottom: 0;
        }

        .brand-fixed {
          top: 16px;
          left: 16px;
          font-size: 10px;
          padding: 6px 11px;
          letter-spacing: 0.14em;
          max-width: calc(100vw - 32px);
        }
        .brand-meta {
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        }

        .dots {
          flex-direction: column;
          top: 50%;
          bottom: auto;
          left: auto;
          right: 12px;
          transform: translateY(-50%);
          padding: 8px 4px;
          gap: 6px;
        }
        .dot {
          width: 5px;
          height: 5px;
        }
        .nav {
          bottom: 10px;
          padding: 4px 10px;
          grid-template-columns: 26px 30px 36px 30px 26px;
          gap: 6px;
        }
        .nav button {
          width: 26px;
          height: 26px;
          font-size: 14px;
        }
        .nav-toggle {
          width: 36px !important;
          height: 36px !important;
          font-size: 13px;
        }
        .nav-stat {
          font-size: 13px;
        }
        .fullscreen-toggle {
          right: 14px;
          bottom: 10px;
          width: 36px;
          height: 36px;
          font-size: 14px;
        }

        .hero,
        .slide-pillar-hero,
        .slide-has-bg {
          padding: 0;
          overflow: hidden;
        }
        .hero-image,
        .hero-overlay,
        .slide-has-bg .slide-bg,
        .slide-has-bg .slide-overlay,
        .slide-pillar-hero .slide-bg,
        .slide-pillar-hero .slide-overlay {
          inset: 10px;
          border-radius: 22px;
        }
        .hero-image,
        .slide-has-bg .slide-bg,
        .slide-pillar-hero .slide-bg {
          width: calc(100% - 20px);
          height: calc(100% - 20px);
        }
        .hero-inner {
          padding: 56px 40px 62px;
          align-items: flex-end;
        }
        .hero .hero-text {
          max-width: min(62%, 440px);
          padding: 16px 18px;
          backdrop-filter: blur(8px);
        }
        .hero-text .mark {
          margin-bottom: 10px;
          font-size: 10px;
          letter-spacing: 0.18em;
        }
        .hero-text .mark::before {
          width: 20px;
        }
        .hero h1 {
          margin-bottom: 10px;
          max-width: none;
        }
        .hero-text .lead {
          font-size: 12px;
        }
        .hero-meta {
          gap: 20px;
          margin-top: 14px;
          padding-top: 12px;
        }
        .hero-meta div {
          font-size: 11px;
        }
        .hero-meta strong {
          font-size: 16px;
          margin-bottom: 2px;
        }

        .hero-text,
        .detail-text,
        .contact-block,
        .stats-layout > div:first-child {
          padding: 16px 18px;
          border-radius: 18px;
        }

        .products {
          grid-template-columns: repeat(3, 1fr);
          grid-template-rows: repeat(2, 1fr);
          height: auto;
          min-height: 200px;
          max-height: calc(100vh - 120px);
          gap: 8px;
          padding: 10px;
          border-radius: 18px;
          margin-top: 12px;
        }
        .products--triple {
          grid-template-columns: repeat(3, 1fr);
          grid-template-rows: 1fr;
          min-height: 180px;
        }
        .product {
          border-radius: 14px;
        }
        .product .label {
          padding: 10px 12px;
        }
        .product h3 {
          font-size: 12.5px;
          margin-bottom: 2px;
        }
        .product span {
          font-size: 9px;
          letter-spacing: 0.12em;
        }

        .detail {
          grid-template-columns: 0.95fr 1.05fr;
          gap: 16px;
        }
        .detail-visual {
          height: auto;
          min-height: 180px;
          max-height: calc(100vh - 110px);
          border-radius: 16px;
        }
        .detail-text {
          padding: 14px 16px !important;
          border-radius: 16px !important;
        }
        .detail-text .lead {
          font-size: 11.5px;
          line-height: 1.4;
        }
        .detail-text .features {
          margin-top: 10px;
          gap: 4px;
        }
        .feature {
          padding: 6px 10px;
          gap: 10px;
          border-radius: 10px;
        }
        .feature .num {
          font-size: 11px;
          min-width: 18px;
        }
        .feature .content h4 {
          font-size: 11.5px;
          margin-bottom: 1px;
        }
        .feature .content p {
          font-size: 10.5px;
          line-height: 1.35;
        }
        .specs {
          gap: 14px;
          flex-wrap: wrap;
          margin-top: 8px;
          padding-top: 8px;
        }
        .specs div {
          font-size: 10px;
        }
        .specs strong {
          font-size: 13px;
          margin-bottom: 0;
        }

        .slide-pillar-content {
          padding: 56px 40px 62px;
        }
        .slide-pillar-hero .section-n {
          top: 18px;
          right: 40px;
        }
        .slide-pillar-hero .pillars {
          margin-top: 12px;
          margin-bottom: 4px;
        }
        .pillars {
          grid-template-columns: repeat(3, 1fr);
          gap: 10px;
          margin-top: 14px;
        }
        .pillar {
          padding: 14px 14px;
          border-radius: 14px;
        }
        .pillar .icon {
          width: 32px;
          height: 32px;
          margin-bottom: 10px;
          font-size: 16px;
          border-radius: 10px;
        }
        .pillar h3 {
          font-size: 14px;
          margin-bottom: 4px;
        }
        .pillar p {
          font-size: 11.5px;
          line-height: 1.45;
        }

        .stats-layout {
          grid-template-columns: 1.15fr 0.85fr;
          gap: 24px;
          margin-top: 10px;
        }
        .stats-visual {
          height: auto;
          min-height: 180px;
          max-height: calc(100vh - 140px);
          transform: none;
          border-radius: 18px;
        }
        .stats-grid {
          grid-template-columns: repeat(4, 1fr);
          gap: 8px;
          margin-top: 14px;
        }
        .stat {
          padding: 12px 10px;
          border-radius: 14px;
        }
        .stat .num {
          font-size: clamp(18px, 2.8vw, 24px);
          margin-bottom: 4px;
        }
        .stat .lbl {
          font-size: 10.5px;
          line-height: 1.3;
        }

        .slide-process .process-content {
          padding: 56px 40px 62px;
        }
        .slide-process .section-n {
          top: 18px;
          right: 40px;
        }
        .slide-process .steps {
          margin-top: 12px;
          margin-bottom: 4px;
        }
        .steps {
          --steps-shell-pad: 12px;
          --step-card-pad: 10px;
          --step-marker-size: 30px;
          grid-template-columns: repeat(5, 1fr);
          gap: 8px;
          border-radius: 18px;
        }
        .step {
          border-radius: 12px;
        }
        .step .n {
          margin-bottom: 8px;
          font-size: 12px;
        }
        .step h4 {
          font-size: 12px;
          margin-bottom: 4px;
        }
        .step p {
          font-size: 10.5px;
          line-height: 1.4;
        }

        .partners {
          grid-template-columns: repeat(3, 1fr);
          gap: 10px;
          margin-top: 12px;
        }
        .partner {
          aspect-ratio: 2.4/1;
          padding: 6px 8px;
          border-radius: 12px;
        }
        .partner-logo-img {
          max-height: 48px;
        }
        .partner--image img[src*="a101"] {
          transform: scale(1.9);
          max-width: min(58%, 100px);
          max-height: 40px;
        }
        .partner--image img[src*="samolet"] {
          transform: scale(1.45);
          max-height: 42px;
        }
        .partner--image img[src*="fabrika"] {
          transform: scale(1.45);
          max-height: 44px;
        }
        .partner--image img[src*="absolut"],
        .partner--image img[src*="inginiring"],
        .partner--image img[src*="arch"] {
          transform: scale(1.28);
          max-height: 44px;
        }

        .contacts {
          grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
          gap: 20px;
        }
        .slide-contact .contact-block,
        .slide-contact .map-card {
          min-height: 0;
          height: auto;
        }
        .contact-head {
          margin-bottom: 10px;
        }
        .contact-qr {
          float: right;
          width: 86px;
          margin: 0 0 8px 14px;
          padding: 6px;
          border-radius: 12px;
        }
        .contact-item {
          padding: 8px 0;
          gap: 10px;
        }
        .contact-item .k {
          font-size: 10px;
        }
        .contact-item .v {
          font-size: 13px;
          text-align: right;
        }
        .cta {
          margin-top: 14px;
          gap: 8px;
        }
        .btn {
          padding: 10px 16px;
          font-size: 12px;
        }
        .map-card {
          min-height: 200px;
          max-height: calc(100vh - 140px);
          border-radius: 18px;
        }
        .map-card .addr {
          bottom: 12px;
          left: 14px;
          right: 14px;
        }
        .map-card .addr .t {
          font-size: 10px;
          letter-spacing: 0.18em;
          margin-bottom: 4px;
        }
        .map-card .addr .v {
          font-size: 13px;
          line-height: 1.3;
        }
        .map-launch {
          right: 10px;
          bottom: 10px;
          padding: 6px 10px;
          font-size: 10px;
        }
      }

      @media (orientation: landscape) and (max-height: 400px) {
        .slide {
          padding: 38px 32px;
        }
        .slide-head-fixed,
        .slide-detail,
        .slide-contact {
          padding-top: 48px;
        }
        .section-n {
          top: 12px;
          right: 32px;
        }
        .brand-fixed {
          top: 10px;
          left: 12px;
        }
        .hero-inner,
        .slide-pillar-content,
        .slide-process .process-content {
          padding: 48px 32px 58px;
        }
        .hero .hero-text {
          padding: 12px 14px;
        }
        .hero h1 {
          margin-bottom: 8px;
        }
        .hero-meta {
          margin-top: 10px;
          padding-top: 10px;
        }
      }

      @media print {
        html,
        body,
        .deck {
          height: auto;
          overflow: visible;
        }
        .slide {
          position: relative;
          opacity: 1;
          visibility: visible;
          transform: none;
          page-break-after: always;
          min-height: 100vh;
          width: 100vw;
        }
        .nav,
        .dots,
        .progress,
        .brand-fixed {
          display: none;
        }
      }
