    :root {
      --teal: #53A192;
      --teal-dark: #41897d;
      --teal-soft: #E8F3F1;
      --orange: #F37021;
      --orange-soft: #FFF0E8;
      --blue: #0E5A9C;
      --blue-soft: #EAF2F8;
      --green: #54A833;
      --green-soft: #EEF7EA;
      --yellow: #F3B61F;
      --yellow-soft: #FFF8E0;
      --text: #50555B;
      --text-dark: #3F444A;
      --muted: #7A838C;
      --line: #E2E5E8;
      --line-strong: #D0D5DA;
      --bg: #FFFFFF;
      --bg-soft: #F6F7F8;
      --bg-panel: #F1F3F4;
      --left-rail: 100px;
      --container: 1220px;
      --shadow: 0 8px 22px rgba(55, 64, 72, .07);
      --shadow-soft: 0 3px 12px rgba(55, 64, 72, .06);
      --radius: 2px;
    }

    @font-face{
        font-family:'apit';
        src:url("fonts/apit.eot?2nik2c");
        src:url("fonts/apit.eot?2nik2c#iefix") format("embedded-opentype"),
            url("fonts/apit.woff2?2nik2c") format("woff2"),
            url("fonts/apit.ttf?2nik2c") format("truetype"),
            url("fonts/apit.woff?2nik2c") format("woff"),
            url("fonts/apit.svg?2nik2c#apit") format("svg");
        font-weight:normal;
        font-style:normal}

    [class^="icon-"], [class*=" icon-"] {
        font-family: 'apit' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    .icon-startups:before {
        content: "\e92b";
    }
    .icon-investor:before {
        content: "\e919";
    }
    .icon-business:before {
        content: "\e908";
    }
    .icon-parthners:before {
        content: "\e91f";
    }
    .icon-employee:before {
        content: "\e90f";
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth;width: 100%; }
    body { display: block; width: 100%; margin:0; font-family: Arial, Helvetica, sans-serif; color:var(--text); background:var(--bg); font-size:16px; line-height:1.58; }
    a { color:inherit; text-decoration:none; }
    .page { padding-left: var(--left-rail); }
    .container { width:100%; margin:0 auto; }

    /* LEFT ROLE RAIL — как на APIT */
    .role-rail { position:fixed; inset:0 auto 0 0; width:var(--left-rail); background:#F8F8F8; border-right:1px solid var(--line); z-index:100; }
    .role-title { height:106px; display:grid; place-items:center; text-align:center; color:#555b61; font-size:13px; line-height:1.15; font-weight:700; letter-spacing:.06em; text-transform:uppercase; border-bottom:1px solid var(--line); }
    .role-item { height:164px; display:grid; place-items:center; text-align:center; border-bottom:1px solid var(--line); color:#6A6F74; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
    .role-item:hover { background:#fff; color:var(--teal-dark); }
    .role-icon { display:block; width:31px; height:31px; margin:0 auto 12px; background:#7D838A; opacity:.88; clip-path: polygon(50% 0, 70% 22%, 70% 47%, 92% 65%, 92% 100%, 8% 100%, 8% 65%, 30% 47%, 30% 22%); }

    /* HEADER */
    .page header {margin-left: 0 !important;}
    .top-search { height:54px; background:#ECECEC; border-bottom:1px solid #E1E1E1; }
    .top-search-inner { height:54px; display:flex; justify-content:space-between; align-items:center; }
    .search-box { display:flex; align-items:center; gap:14px; color:#6F7377; font-size:18px; }
    .search-icon { position:relative; width:25px; height:25px; border:3px solid #4E5358; border-radius:50%; display:inline-block; }
    .search-icon:after { content:''; position:absolute; width:13px; height:3px; background:#4E5358; right:-10px; bottom:-5px; transform:rotate(45deg); }
    .top-actions { display:flex; align-items:center; gap:16px; color:#20252B; font-size:14px; letter-spacing:.04em; }
    .plane { width:0; height:0; border-top:8px solid transparent; border-bottom:8px solid transparent; border-left:22px solid #20252B; transform:rotate(-38deg); }
    .round-social { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:#34383D; color:#fff; font-size:10px; font-weight:700; }
    .main-header { height:96px; background:#fff; border-bottom:1px solid var(--line); }
    .main-header-inner { height:96px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
    .logo-wrap { display:flex; align-items:center; gap:14px; min-width:235px; }
    .logo-wrap img { width:68px; height:68px; object-fit:contain; }
    .logo-text { display:block; color:#565A5F; font-size:12px; line-height:1.15; font-weight:700; }
    .nav { display:flex; align-items:stretch; align-self:stretch; }
    .nav a { display:flex; align-items:center; padding:0 16px; color:#1F252B; text-transform:uppercase; font-size:16px; letter-spacing:.04em; }
    .nav a.active { background:var(--teal); color:#fff; }
    .nav a:hover:not(.active) { color:var(--teal-dark); }
    .header-contacts { display:flex; align-items:center; gap:24px; color:#1F252B; }
    .phone { font-size:20px; font-weight:700; letter-spacing:.12em; white-space:nowrap; }
    .lang { display:flex; align-items:center; gap:8px; font-size:16px; }
    .flag { width:24px; height:24px; border-radius:50%; display:inline-block; background:linear-gradient(#fff 0 33%, #2D5FB8 33% 66%, #C43B35 66%); border:1px solid #ddd; }

    .desktop-header .bott-line .language {height: 76px;}
    .desktop-header .bott-line {position: relative;background-color: #fff;border-bottom: 2px solid #ececec;}
    .desktop-header .bott-line .right-block-wrap .tel-wrap {padding: 0;display: inline-block;line-height: 76px;}
    .desktop-header .bott-line .right-block-wrap {FONT-VARIANT: JIS04;padding: 0px 19px 0px 0;}
    .desktop-header .bott-line .language .curr-lang {height: 100%;display: flex;flex-direction: column;justify-content: center;padding: 0px 19px 0px 18px;}
    
    .breadcrumbs {max-width: 980px;margin: 0 auto 11px;text-align: left;}

    /* HERO */
    .hero { background:#fff; border-bottom:1px solid var(--line); }
    .hero-content { padding: 0px 0 42px; text-align:center; }
    .breadcrumb { text-align:left; color:#7B848D; font-size:15px; margin:0 0 20px; }
    .breadcrumb span { color:#3F444A; }
    h1 { max-width:990px; margin:0 auto 16px; color:var(--text-dark); font-size:34px; line-height:1.18; letter-spacing:.08em; text-transform:uppercase; font-weight:700; }
    h1 .soft-break { display:block; }
    .brand-line { width:330px; height:4px; margin:22px auto 26px; background:linear-gradient(90deg,#0E5A9C 0 18%, #00A7A0 18% 34%, #54A833 34% 50%, #B8D83A 50% 65%, #F3B61F 65% 82%, #F37021 82%); border-radius:4px; }
    .hero-lead { max-width:940px; margin:0 auto 16px; color:#3F444A; font-size:22px; line-height:1.35; text-transform:uppercase; letter-spacing:.05em; font-weight:700; }
    .hero-text { max-width:980px; margin:0 auto 11px; color:#666E76; font-size:18px; line-height:1.62; text-align:left; }
    .hero-emphasis { max-width:980px; margin:24px auto 0; padding:18px 24px; background:var(--orange-soft); border:1px solid #F4C6AA; border-left:4px solid var(--orange); text-align:left; color:#4C535A; font-size:16px; line-height:1.55; }
    .hero-actions { margin:28px auto 0; display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }

    .button { display:inline-flex; min-height:46px; align-items:center; justify-content:center; padding:0 23px; border-radius:0; border:1px solid transparent; font-weight:700; letter-spacing:.06em; text-transform:uppercase; font-size:13px; cursor:pointer; transition:.15s; }
    .button-primary { background:var(--teal); color:#fff; }
    .button-primary:hover { background:var(--teal-dark); }
    .button:disabled, .button[disabled] { background:#B8C0C6; color:#fff; cursor:not-allowed; opacity:.8; }
    .button:disabled:hover { background:#B8C0C6; }
    .button-outline { background:#fff; color:#3F444A; border-color:var(--line-strong); }
    .button-outline:hover { border-color:var(--teal); color:var(--teal-dark); }
    .button-orange { background:#fff; color:#3F444A; border-color:#F4C6AA; }
    .button-orange strong { color:var(--orange); }
    .button-lg { min-height:54px; padding:0 34px; font-size:14px; }

    /* CTA BAND (inline section CTA) */
    .cta-band { margin-top:40px; padding:30px 34px; background:var(--teal); display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
    .cta-band-text { color:#fff; }
    .cta-band-text strong { display:block; font-size:19px; letter-spacing:.04em; text-transform:uppercase; margin-bottom:4px; }
    .cta-band-text span { color:rgba(255,255,255,.85); font-size:15px; }
    .cta-band .button { flex-shrink:0; }
    .button-white { background:#fff; color:var(--teal-dark); }
    .button-white:hover { background:#F0F0F0; }
    .cta-inline { text-align:center; margin-top:36px; }

    /* OPERATOR STEPS */
    .op-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
    .op-card { background:#fff; border:1px solid var(--line); padding:24px 22px; box-shadow:var(--shadow-soft); position:relative; }
    .op-card-num { width:38px; height:38px; border-radius:50%; background:var(--teal); color:#fff; display:grid; place-items:center; font-size:15px; font-weight:700; margin-bottom:14px; }
    .op-card h3 { margin:0 0 8px; color:#3F444A; font-size:16px; line-height:1.28; letter-spacing:.02em; }
    .op-card p { margin:0; color:#69727A; font-size:14px; line-height:1.55; }

    /* STICKY CTA */
    .sticky-cta {
      position:fixed; right:28px; bottom:28px; z-index:300;
      opacity:0; transform:translateY(16px); pointer-events:none;
      transition:opacity .3s ease, transform .3s ease;
    }
    .sticky-cta.is-visible { opacity:1; transform:translateY(0); pointer-events:auto; }
    .sticky-cta .button {
      min-height:58px; padding:0 30px; font-size:15px; gap:10px;
      background:var(--orange); color:#fff; border:0;
      box-shadow:0 10px 30px rgba(243,112,33,.45), 0 2px 8px rgba(0,0,0,.12);
      animation:stickyPulse 2.4s ease-in-out infinite;
    }
    .sticky-cta .button:hover { background:#d95f15; transform:translateY(-2px); box-shadow:0 14px 36px rgba(243,112,33,.55); animation:none; }
    .sticky-cta .button svg { width:18px; height:18px; flex-shrink:0; }
    .sticky-deadline {
      display:block; text-align:center; margin-top:8px;
      background:#fff; border:1px solid #F4C6AA; color:var(--orange);
      font-size:12px; font-weight:700; letter-spacing:.04em;
      padding:5px 10px; border-radius:20px; box-shadow:0 4px 14px rgba(13,35,64,.12);
    }
    @keyframes stickyPulse {
      0%, 100% { box-shadow:0 10px 30px rgba(243,112,33,.45), 0 0 0 0 rgba(243,112,33,.4); }
      50%      { box-shadow:0 10px 30px rgba(243,112,33,.45), 0 0 0 12px rgba(243,112,33,0); }
    }
    @media (prefers-reduced-motion: reduce) {
      .sticky-cta .button { animation:none; }
    }
    @media (max-width: 760px) {
      .sticky-cta { left:14px; right:14px; bottom:14px; }
      .sticky-cta .button { width:100%; }
    }

    /* CONSENT CHECKBOX */
    .consent { display:flex; gap:11px; align-items:flex-start; margin:4px 0 20px; }
    .consent input[type="checkbox"] { width:20px; height:20px; min-height:20px; margin-top:1px; flex-shrink:0; accent-color:var(--teal); cursor:pointer; border:1px solid #C9D0D6; padding:0; }
    .consent label { color:#69727A; font-size:13px; line-height:1.5; cursor:pointer; letter-spacing:0; text-transform:none; font-weight:400; }
    .consent label a { color:var(--teal-dark); }

    .fact-row { max-width:1020px; margin:34px auto 0; display:grid; grid-template-columns: repeat(4,1fr); border:1px solid var(--line); background:#fff; box-shadow:var(--shadow-soft); }
    .fact { min-height:105px; padding:22px 16px; border-right:1px solid var(--line); text-align:center; }
    .fact:last-child { border-right:0; }
    .fact-value { display:block; color:#3F444A; font-size:24px; line-height:1.1; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
    .fact-label { display:block; margin-top:8px; color:#7D858D; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
    .fact-highlight .fact-value { color:var(--orange); }

    .stats-band { background:var(--teal-soft); border-top:1px solid #CDE5E0; border-bottom:1px solid #CDE5E0; }
    .stats-inner { display:grid; grid-template-columns:repeat(4,1fr); }
    .stat { padding:30px 22px; text-align:center; border-right:1px solid #CDE5E0; }
    .stat:last-child { border-right:0; }
    .stat-value { display:block; color:var(--teal-dark); font-size:40px; line-height:1; font-weight:700; letter-spacing:.02em; margin-bottom:10px; }
    .stat:first-child .stat-value { color:var(--orange); }
    .stat-value span { font-size:24px; }
    .stat-label { display:block; color:#5E6B6A; font-size:13px; line-height:1.4; }

    /* SECTIONS */
    .section { padding:64px 0; }
    .section.compact { padding:52px 0; }
    .section.soft { background:var(--bg-soft); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
    .section-kicker { display:block; margin:0 0 12px; color:var(--teal-dark); font-size:12px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; text-align:center; }
    .section-title { max-width:980px; margin:0 auto 20px; color:#3F444A; font-size:30px; line-height:1.24; letter-spacing:.08em; text-transform:uppercase; font-weight:700; text-align:center; }
    .section-sub { max-width:840px; margin:0 auto 40px; color:#6B737C; font-size:17px; line-height:1.62; text-align:center; }

    .cards-4 { display:grid; grid-template-columns: repeat(4,1fr); gap:10px; }
    .cards-4.customers-grid { align-items:stretch; }
    .cards-3 { display:grid; grid-template-columns: repeat(3,1fr); gap:18px; }
    .cards-2 { display:grid; grid-template-columns: repeat(2,1fr); gap:22px; }
    .card { background:#fff; border:1px solid var(--line); padding:20px 15px; box-shadow:var(--shadow-soft); }
    .card h3 { margin:0 0 10px; color:#3F444A; font-size:18px; line-height:1.25; letter-spacing:.04em; text-transform:uppercase; }
    .card p { margin:0; color:#69727A; font-size:15px; line-height:1.58; }
    .icon-circle { width:52px; height:52px; border-radius:50%; display:grid; place-items:center; margin:0 0 18px; font-size:22px; }
    .i-blue { background:var(--blue-soft); color:var(--blue); } .i-teal { background:var(--teal-soft); color:var(--teal-dark); } .i-green { background:var(--green-soft); color:var(--green); } .i-orange { background:var(--orange-soft); color:var(--orange); }

    .customer-card { display:flex; flex-direction:column; }
    .customer-top { display:flex; align-items:flex-start; gap:14px; min-height:80px; }
    .customer-top-logo { width:72px; height:72px; flex-shrink:0; display:flex; align-items:center; justify-content:center; background:#F6F7F8; border:1px solid var(--line); border-radius:8px; padding:8px; }
    .logo-placeholder { width:50px; height:50px; border-radius:50%; display:grid; place-items:center; color:#fff; font-size:12px; font-weight:700; flex-shrink:0; }
    .lukoil { background:#C84639; } .sng { background:#3D6FA6; } .novatek { background:#406494; } .kmg-logo { background:#3B916F; }
    .customer-card h3 { margin:0; font-size:16px; }
    .customer-meta { color:#8B9298; font-size:13px; margin-top:3px; }
    .customer-card .tags { display:flex; flex-wrap:nowrap; gap:6px; margin-top:auto; padding-top:16px; overflow:hidden; }
    .tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:16px; }
    .tag { display:inline-flex; padding:4px 9px; background:#F6F7F8; border:1px solid var(--line); color:#6F7780; font-size:12px; line-height:1.2; white-space:nowrap; }
    .vink-logo { max-width:100%; max-height:100%; object-fit:contain; display:block; }

    .criteria-layout { display:grid; grid-template-columns:1fr .86fr; gap:26px; align-items:stretch; }
    .panel { background:#fff; border:1px solid var(--line); padding:30px; box-shadow:var(--shadow-soft); }
    .panel-accent { border-left:4px solid var(--teal); }
    .panel-orange { border-left:4px solid var(--orange); }
    .panel h3 { margin:0 0 18px; color:#3F444A; font-size:22px; line-height:1.25; text-transform:uppercase; letter-spacing:.06em; }
    .checklist { list-style:none; padding:0; margin:0; display:grid; gap:12px; }
    .checklist li { position:relative; padding-left:29px; color:#565F68; font-size:15px; line-height:1.5; }
    .checklist li:before { content:'✓'; position:absolute; left:0; top:2px; width:19px; height:19px; border-radius:50%; display:grid; place-items:center; color:#fff; background:var(--teal); font-size:11px; font-weight:700; }
    .checklist li.warn:before { content:'!'; background:var(--orange); }

    .directions { display:grid; grid-template-columns: repeat(3,1fr); gap:14px; }
    .direction { background:#fff; border:1px solid var(--line); padding:22px; box-shadow:var(--shadow-soft); }
    .direction:hover { border-color:#C9D1D8; box-shadow:var(--shadow); }
    .direction-head { display:flex; align-items:center; gap:12px; margin:0 0 10px; }
    .direction-icon { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; color:#fff; flex-shrink:0; font-size:14px; font-weight:700; }
    .c-blue { background:var(--blue); } .c-teal { background:var(--teal); } .c-green { background:var(--green); } .c-yellow { background:var(--yellow); color:#3F444A; } .c-orange { background:var(--orange); }
    .direction h3 { margin:0; color:#3F444A; font-size:15px; line-height:1.3; text-transform:uppercase; letter-spacing:.04em; }
    .direction p { margin:0 0 12px; color:#69727A; font-size:14px; line-height:1.55; }
    .kmg { margin-top:24px; display:grid; grid-template-columns:.72fr 1.28fr; gap:24px; padding:24px; background:#fff; border:1px solid #C8D9D5; border-left:4px solid var(--teal); }
    .kmg h3 { margin:0 0 9px; color:#3F444A; font-size:22px; text-transform:uppercase; letter-spacing:.06em; }
    .kmg p { margin:0; color:#667078; }
    .kmg-list { display:flex; flex-wrap:wrap; gap:8px; align-content:flex-start; }
    .kmg-list span { background:var(--teal-soft); border:1px solid #C8D9D5; color:var(--teal-dark); padding:6px 10px; font-size:13px; }
    .directions-more { display:flex; align-items:center; justify-content:center; gap:9px; margin:22px 0 0; color:#69727A; font-size:15px; text-align:center; }
    .directions-more svg { width:20px; height:20px; flex-shrink:0; color:var(--teal-dark); }
    .directions-more a { color:var(--teal-dark); font-weight:700; border-bottom:1px solid currentColor; }
    .directions-more a:hover { color:var(--teal); }

    .timeline { position:relative; display:grid; grid-template-columns: repeat(5,1fr); gap:0; }
    .timeline:before { content:''; position:absolute; left:9%; right:9%; top:31px; height:2px; background:var(--line-strong); }
    .step { position:relative; text-align:center; padding:0 14px; display:flex; flex-direction:column; align-items:center; }
    .step-number { width:64px; height:64px; border-radius:50%; display:grid; place-items:center; margin:0 auto 16px; color:#fff; font-size:24px; font-weight:700; }
    .step h3 { margin:0 0 7px; color:#3F444A; font-size:14px; text-transform:uppercase; letter-spacing:.06em; }
    .step p { margin:0 0 14px; color:#6B737C; font-size:13px; line-height:1.48; }
    .step-date { display:inline-block; margin-top:auto; padding:4px 10px; border:1px solid var(--teal); background:var(--teal-soft); color:var(--teal-dark); font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
    .step-date-spacer { margin-top:auto; }

    .table-like { border:1px solid var(--line); }
    .table-row { display:grid; grid-template-columns:42px .95fr 1.35fr; gap:14px; align-items:center; padding:14px 16px; border-bottom:1px solid var(--line); }
    .table-row:last-child { border-bottom:0; }
    .num { width:30px; height:30px; border-radius:50%; display:grid; place-items:center; color:#fff; font-size:12px; font-weight:700; }
    .table-row .item { color:#3F444A; font-size:14px; font-weight:700; }
    .table-row .desc { color:#6B737C; font-size:13px; }

    .form-shell { display:grid; grid-template-columns:.8fr 1.2fr; gap:28px; align-items:stretch; }
    .form { background:#fff; border:1px solid var(--line-strong); padding:32px; box-shadow:var(--shadow-soft); }
    .form-grid { display:grid; grid-template-columns: repeat(2,1fr); gap:14px; }
    .field { display:grid; gap:6px; } .field.full { grid-column:1/-1; }
    .field label { color:#4F565E; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
    .field input, .field select, .field textarea { min-height:44px; border:1px solid #C9D0D6; padding:9px 12px; font:inherit; color:#3F444A; border-radius:0; background:#fff; }
    .field textarea { min-height:116px; resize:vertical; }
    /* FORM LAUNCHER (Integram) */
    .form-launch { display:flex; align-items:center; }
    .form-launch-inner { width:100%; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow-soft); padding:36px 34px; text-align:center; border-top:4px solid var(--teal); }
    .form-launch-icon { width:64px; height:64px; border-radius:50%; background:var(--teal-soft); color:var(--teal-dark); display:grid; place-items:center; margin:0 auto 20px; }
    .form-launch-icon svg { width:32px; height:32px; }
    .form-launch-inner h3 { margin:0 0 10px; color:#3F444A; font-size:20px; line-height:1.25; letter-spacing:.03em; text-transform:uppercase; }
    .form-launch-inner > p { margin:0 auto 18px; color:#69727A; font-size:15px; line-height:1.6; max-width:420px; }
    .form-launch-list { list-style:none; margin:0 auto 24px; padding:0; display:inline-block; text-align:left; }
    .form-launch-list li { position:relative; padding:0 0 8px 26px; color:#5E6770; font-size:14px; }
    .form-launch-list li::before { content:'✓'; position:absolute; left:0; top:1px; width:18px; height:18px; border-radius:50%; background:var(--teal); color:#fff; font-size:10px; font-weight:700; display:grid; place-items:center; }
    .form-launch-newtab { display:inline-block; margin:14px 0 0; color:var(--teal-dark); font-size:14px; font-weight:700; border-bottom:1px solid currentColor; }
    .form-launch-newtab:hover { color:var(--teal); }
    .form-launch-note { margin:18px 0 0; color:#9AA2A9; font-size:12px; line-height:1.5; }

    /* QUIZ MODAL */
    .quiz-modal { position:fixed; inset:0; z-index:1000; display:none; }
    .quiz-modal.is-open { display:block; }
    .quiz-backdrop { position:absolute; inset:0; background:rgba(13,35,64,.62); backdrop-filter:blur(2px); animation:quizFade .2s ease; }
    .quiz-dialog { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:min(640px, calc(100vw - 32px)); height:min(86vh, 820px); background:#fff; box-shadow:0 24px 70px rgba(13,35,64,.4); display:flex; flex-direction:column; overflow:hidden; animation:quizPop .22s ease; }
    .quiz-bar { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 18px; background:var(--navy,#0d2340); color:#fff; flex-shrink:0; }
    .quiz-bar-title { font-size:14px; font-weight:700; letter-spacing:.04em; }
    .quiz-bar-actions { display:flex; align-items:center; gap:14px; }
    .quiz-bar-link { color:rgba(255,255,255,.8); font-size:12px; white-space:nowrap; }
    .quiz-bar-link:hover { color:#fff; }
    .quiz-close { background:transparent; border:0; color:#fff; font-size:26px; line-height:1; cursor:pointer; padding:0 2px; opacity:.8; }
    .quiz-close:hover { opacity:1; }
    .quiz-frame-wrap { position:relative; flex:1; background:#F6F7F8; }
    .quiz-loader { position:absolute; inset:0; display:grid; place-items:center; color:var(--muted); font-size:14px; }
    .quiz-frame-wrap iframe { position:relative; width:100%; height:100%; border:0; display:block; }
    @keyframes quizFade { from { opacity:0; } to { opacity:1; } }
    @keyframes quizPop { from { opacity:0; transform:translate(-50%,-46%); } to { opacity:1; transform:translate(-50%,-50%); } }
    @media (max-width: 560px) {
      .quiz-dialog { width:100vw; height:100vh; max-height:100vh; top:0; left:0; transform:none; }
      @keyframes quizPop { from { opacity:0; } to { opacity:1; } }
      .quiz-bar-link { display:none; }
    }

    .form-note { color:#7B858E; font-size:13px; margin:16px 0 22px; }

    /* AFTER-SUBMIT STEPS */
    .after-steps { background:#fff; border:1px solid var(--line); padding:18px 20px; }
    .after-steps-title { color:#3F444A; font-size:13px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; margin-bottom:12px; }
    .after-list { margin:0; padding:0; list-style:none; counter-reset:af; }
    .after-list li { position:relative; padding:0 0 10px 32px; color:#69727A; font-size:14px; line-height:1.5; counter-increment:af; }
    .after-list li:last-child { padding-bottom:0; }
    .after-list li::before { content:counter(af); position:absolute; left:0; top:0; width:22px; height:22px; border-radius:50%; background:var(--teal-soft); color:var(--teal-dark); font-size:12px; font-weight:700; display:grid; place-items:center; }

    /* CHIPS (multi-select) */
    .chips { display:flex; flex-wrap:wrap; gap:8px; }
    .chip { display:inline-flex; align-items:center; gap:7px; padding:7px 12px; border:1px solid #C9D0D6; background:#fff; color:#4F565E; font-size:13px; cursor:pointer; user-select:none; transition:.15s; letter-spacing:0; text-transform:none; font-weight:400; }
    .chip:hover { border-color:var(--teal); }
    .chip input { width:16px; height:16px; min-height:16px; margin:0; padding:0; accent-color:var(--teal); cursor:pointer; }
    .chip:has(input:checked) { border-color:var(--teal); background:var(--teal-soft); color:var(--teal-dark); font-weight:700; }

    .faq { display:grid; grid-template-columns: repeat(2,1fr); gap:16px; }
    .faq-item { background:#fff; border:1px solid var(--line); padding:22px; }
    .faq-item h3 { margin:0 0 8px; color:#3F444A; font-size:17px; line-height:1.25; }
    .faq-item p { margin:0; color:#69727A; font-size:14px; line-height:1.58; }

    .final { background:#fff; border:1px solid var(--line-strong); padding:40px 34px; text-align:center; box-shadow:var(--shadow-soft); border-top:4px solid var(--teal); }
    .final h2 { margin:0 auto 14px; max-width:900px; color:#3F444A; font-size:28px; line-height:1.25; letter-spacing:.08em; text-transform:uppercase; }
    .final p { margin:0 auto 26px; max-width:760px; color:#6B737C; font-size:17px; line-height:1.55; }
    footer { background:#F4F5F6; border-top:1px solid var(--line); padding:22px 0; color:#7A838C; font-size:13px;position: inherit; }
    .footer-inner { display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap;font-size: inherit !important; }

    /* PHOTO GALLERY */
    .photo-gallery { display:grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 220px 220px; gap:6px; }
    .photo-gallery a { display:block; overflow:hidden; position:relative; }
    .photo-gallery a:first-child { grid-row: span 2; }
    .photo-gallery img { width:100%; height:100%; object-fit:cover; display:block; transition: transform .35s ease; }
    .photo-gallery a:hover img { transform: scale(1.04); }
    .gallery-caption { margin-top:14px; text-align:center; font-size:13px; color:var(--muted); }

    /* WHY CARDS WITH PHOTO */
    .photo-card { background:#fff; border:1px solid var(--line); box-shadow:var(--shadow-soft); overflow:hidden; }
    .photo-card-img { width:100%; height:148px; object-fit:cover; display:block; }
    .photo-card-body { padding:18px 20px 22px; }
    .photo-card-body h3 { margin:0 0 8px; color:#3F444A; font-size:16px; line-height:1.25; letter-spacing:.04em; text-transform:uppercase; }
    .photo-card-body p { margin:0; color:#69727A; font-size:14px; line-height:1.55; }

    /* VINK LOGO in customer card */
    .vink-logo { width:52px; height:52px; object-fit:contain; display:block; flex-shrink:0; }

    /* TESTIMONIALS */
    .testimonials { display:grid; grid-template-columns: repeat(2,1fr); gap:22px; }
    .testimonial { background:#fff; border:1px solid var(--line); padding:28px; box-shadow:var(--shadow-soft); display:flex; gap:18px; align-items:flex-start; }
    .testimonial-photo { width:64px; height:64px; border-radius:50%; object-fit:cover; flex-shrink:0; border:2px solid var(--line); }
    .testimonial blockquote { margin:0 0 16px; color:#4C535A; font-size:15px; line-height:1.62; font-style:italic; }
    .testimonial cite { display:block; font-style:normal; }
    .testimonial cite strong { display:block; color:#3F444A; font-size:14px; margin-bottom:2px; }
    .testimonial cite span { color:#7A838C; font-size:13px; }

    @media (max-width: 1120px) {
      .nav { display:none; }
      .criteria-layout, .kmg, .form-shell { grid-template-columns:1fr; }
      .cards-4 { grid-template-columns:repeat(2,1fr); }
      .directions { grid-template-columns:repeat(2,1fr); }
      .op-grid { grid-template-columns:repeat(2,1fr); }
      .timeline { grid-template-columns:1fr; gap:24px; }
      .timeline:before { display:none; }
      .step { text-align:left; display:grid; grid-template-columns:70px 1fr; column-gap:16px; align-items:start; }
      .photo-gallery { grid-template-columns:1fr 1fr; grid-template-rows: 180px 180px 180px; }
      .photo-gallery a:first-child { grid-row: span 1; }
      .testimonials { grid-template-columns: 1fr; }
      .step-number { margin:0; }
      .step h3, .step p, .step .step-date { grid-column:2; }
      .step .step-date { margin-top:0; justify-self:start; }
      .step-date-spacer { display:none; }
    }
    @media (min-width: 1025px) and (max-width: 1085px) {
        .desktop-header .bott-line .left-block-wrap .nav li a {padding: 30px 7px 28px 7px;font-size: 12px;}
    }
    @media (max-width: 1024px) {
        main {padding-top: 57px;}
        .page {
            padding-left: 0;
        }
    }
    @media (max-width: 760px) {
      :root { --left-rail:0px; }
      .role-rail { display:none; }
      .container { width:calc(100vw - 28px); }
      .top-actions, .phone { display:none; }
      .main-header-inner { justify-content:center; }
      h1 { font-size:25px; letter-spacing:.05em; }
      .hero-lead { font-size:18px; }
      .hero-text { font-size:16px; }
      .fact-row, .stats-inner, .cards-2, .cards-3, .cards-4, .directions, .faq, .form-grid, .op-grid { grid-template-columns:1fr; }
      .fact { border-right:0; border-bottom:1px solid var(--line); }
      .stat { border-right:0; border-bottom:1px solid #CDE5E0; }
      .fact:last-child, .stat:last-child { border-bottom:0; }
      .table-row { grid-template-columns:38px 1fr; }
      .table-row .desc { grid-column:2; }
      .cta-band { flex-direction:column; align-items:stretch; text-align:center; padding:26px 22px; }
      .cta-band .button { width:100%; }
      .directions-more { flex-wrap:wrap; font-size:14px; }
    }