    :root {
      --bg: #F4EFE7;
      --ink: #202421;
      --muted: rgba(32, 36, 33, 0.68);
      --emerald: #123D32;
      --emerald-hover: #1d5448;
      --sage: #A9B99C;
      --paper: #FFFDF8;
      --line: rgba(32, 36, 33, 0.12);
      --shadow: 0 28px 90px rgba(32, 36, 33, 0.1);
      --sketch-plan: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 700'%3E%3Crect width='900' height='700' fill='%23f4efe7'/%3E%3Cg fill='none' stroke='%23202421' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke-width='14' d='M84 76h732v548H84z'/%3E%3Cpath stroke-width='10' d='M84 282h252V76m0 206h220v342M556 338h260M664 76v126h152M210 624V458h178m168-112v-92h108'/%3E%3Cpath stroke-width='5' opacity='.55' d='M132 130h170M132 160h122M612 128h148M612 156h102M132 526h182M604 438h164'/%3E%3Cpath stroke-width='4' opacity='.45' d='M138 284c0-56 42-96 96-96m324 260c58 0 94 42 94 104'/%3E%3C/g%3E%3Cg fill='none' stroke='%23202421' stroke-width='4' opacity='.45'%3E%3Crect x='126' y='350' width='190' height='108' rx='18'/%3E%3Crect x='606' y='386' width='154' height='102' rx='16'/%3E%3Crect x='398' y='120' width='120' height='78' rx='12'/%3E%3Ccircle cx='456' cy='410' r='42'/%3E%3Cpath d='M424 410h64M456 378v84'/%3E%3C/g%3E%3Cg stroke='%23202421' stroke-width='2' opacity='.24'%3E%3Cpath d='M40 40h820M40 660h820M40 40v620M860 40v620'/%3E%3Cpath d='M80 670l80-80M176 670l80-80M272 670l80-80M368 670l80-80M464 670l80-80M560 670l80-80M656 670l80-80M752 670l80-80'/%3E%3C/g%3E%3C/svg%3E");
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      margin: 0;
      background: var(--bg);
      color: var(--ink);
      font-family: Inter, Helvetica, Arial, sans-serif;
    }

    .rk-container {
      width: min(1180px, calc(100% - 40px));
      margin: 0 auto;
    }

    .rk-header {
      position: fixed;
      z-index: 100;
      top: 14px;
      left: 50%;
      transform: translateX(-50%);
      width: min(1180px, calc(100% - 32px));
      height: 76px;
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: 24px;
      padding: 10px 14px 10px 20px;
      border: 1px solid rgba(255, 255, 255, 0.7);
      border-radius: 999px;
      background: rgba(244, 239, 231, 0.82);
      box-shadow: 0 18px 50px rgba(32, 36, 33, 0.08);
      backdrop-filter: blur(18px);
    }

    .rk-brand {
      display: inline-flex;
      flex-direction: column;
      justify-content: center;
      color: var(--ink);
      text-decoration: none;
      line-height: 1;
      white-space: nowrap;
    }

    .rk-brand-main {
      font-size: 21px;
      font-weight: 800;
      letter-spacing: -0.055em;
    }

    .rk-brand-sub {
      margin-top: 5px;
      color: var(--muted);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    .rk-nav {
      justify-self: center;
      display: flex;
      align-items: center;
      gap: 24px;
    }

    .rk-nav a {
      color: var(--muted);
      text-decoration: none;
      font-size: 13px;
      font-weight: 700;
      transition: color 0.25s ease;
    }

    .rk-nav a:hover {
      color: var(--emerald);
    }

    .rk-header-actions {
      display: inline-flex;
      align-items: center;
      gap: 10px;
    }

    .rk-phone {
      color: var(--ink);
      text-decoration: none;
      font-size: 13px;
      font-weight: 800;
      white-space: nowrap;
    }

    .rk-telegram {
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 18px;
      border-radius: 999px;
      background: var(--emerald);
      color: var(--paper);
      text-decoration: none;
      font-size: 13px;
      font-weight: 800;
      transition: transform 0.3s ease, background 0.3s ease;
    }

    .rk-telegram:hover {
      transform: translateY(-2px);
      background: var(--emerald-hover);
    }

    .rk-hero {
      min-height: 100svh;
      padding: 126px 0 72px;
      display: grid;
      align-items: center;
      background: var(--bg);
    }

    .rk-hero-grid {
      display: grid;
      grid-template-columns: minmax(0, 0.9fr) minmax(380px, 0.82fr);
      gap: clamp(32px, 6vw, 84px);
      align-items: center;
    }

    .rk-hero-kicker {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 20px;
      color: var(--emerald);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .rk-hero-kicker::before {
      content: "";
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--sage);
    }

    .rk-hero-title {
      max-width: 780px;
      margin: 0;
      color: var(--ink);
      font-size: clamp(44px, 6.2vw, 84px);
      line-height: 0.95;
      letter-spacing: -0.075em;
    }

    .rk-hero-copy {
      max-width: 680px;
      margin: 26px 0 0;
      color: var(--muted);
      font-size: clamp(16px, 1.55vw, 20px);
      line-height: 1.65;
    }

    .rk-hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 34px;
    }

    .rk-btn {
      min-height: 58px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 0 22px 0 26px;
      border-radius: 999px;
      text-decoration: none;
      font-weight: 800;
      transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease;
    }

    .rk-btn:hover {
      transform: translateY(-2px);
    }

    .rk-btn-primary {
      background: var(--emerald);
      color: var(--paper);
    }

    .rk-btn-primary:hover {
      background: var(--emerald-hover);
    }

    .rk-btn-light {
      border: 1px solid var(--line);
      background: rgba(255, 253, 248, 0.58);
      color: var(--ink);
    }

    .rk-btn-light:hover {
      border-color: rgba(18, 61, 50, 0.35);
    }

    .rk-btn .arrow {
      transition: transform 0.3s ease;
    }

    .rk-btn:hover .arrow {
      transform: translate(3px, -2px);
    }

    .rk-blueprint-stage {
      position: relative;
      min-height: 620px;
      overflow: hidden;
      border-radius: 32px;
      background: var(--paper);
      box-shadow: var(--shadow);
      isolation: isolate;
    }

    .rk-hero-photo {
      position: absolute;
      inset: 0;
      z-index: 1;
      background-image:
        linear-gradient(180deg, rgba(32, 36, 33, 0.02), rgba(32, 36, 33, 0.08)),
        url("https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?auto=format&fit=crop&w=800&q=80");
      background-size: cover;
      background-position: center;
      opacity: 0;
      transform: scale(1.08);
      will-change: transform;
    }

    .rk-hero-glass {
      position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      background:
        linear-gradient(90deg, rgba(255, 253, 248, 0.18), rgba(255, 253, 248, 0.03) 42%, rgba(255, 253, 248, 0.22)),
        radial-gradient(circle at 22% 18%, rgba(255, 253, 248, 0.28), transparent 28rem);
      opacity: 0;
      backdrop-filter: blur(1.5px);
    }

    .rk-blueprint-layer {
      position: absolute;
      inset: 0;
      z-index: 4;
      background:
        linear-gradient(rgba(32, 36, 33, 0.055) 1px, transparent 1px),
        linear-gradient(90deg, rgba(32, 36, 33, 0.055) 1px, transparent 1px),
        var(--paper);
      background-size: 36px 36px;
    }

    .rk-blueprint-layer svg {
      position: absolute;
      inset: 8%;
      width: 84%;
      height: 84%;
    }

    .rk-plan-line {
      fill: none;
      stroke: rgba(32, 36, 33, 0.78);
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
      stroke-dasharray: 1200;
      stroke-dashoffset: 1200;
    }

    .rk-team {
      padding: clamp(86px, 10vw, 136px) 0;
      background: var(--bg);
      overflow: hidden;
    }

    .rk-team-head {
      display: grid;
      grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.72fr);
      gap: clamp(28px, 6vw, 84px);
      align-items: end;
      margin-bottom: 34px;
    }

    .rk-section-kicker {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 18px;
      color: var(--emerald);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .rk-section-kicker::before {
      content: "";
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--sage);
    }

    .rk-team-title {
      max-width: 960px;
      margin: 0;
      color: var(--ink);
      font-size: clamp(40px, 6vw, 82px);
      line-height: 0.95;
      letter-spacing: -0.075em;
    }

    .rk-team-copy {
      margin: 0;
      color: var(--muted);
      font-size: clamp(16px, 1.6vw, 20px);
      line-height: 1.68;
    }

    .rk-team-layout {
      display: grid;
      grid-template-columns: minmax(0, 0.78fr) minmax(380px, 0.52fr);
      gap: 28px;
      align-items: stretch;
    }

    .rk-team-cards {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 18px;
    }

    .rk-team-card {
      min-height: 210px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 26px;
      border: 1px solid var(--line);
      border-radius: 26px;
      background: rgba(255, 253, 248, 0.78);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.055);
      transition: transform 0.32s ease, background 0.32s ease, border-color 0.32s ease;
    }

    .rk-team-card:hover {
      transform: translateY(-4px);
      border-color: rgba(18, 61, 50, 0.26);
      background: rgba(255, 253, 248, 0.96);
    }

    .rk-team-number {
      color: var(--emerald);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.1em;
    }

    .rk-team-card h3 {
      margin: 0;
      color: var(--ink);
      font-size: 28px;
      line-height: 1.05;
      letter-spacing: -0.055em;
    }

    .rk-team-card p {
      margin: 12px 0 0;
      color: var(--muted);
      font-size: 15px;
      line-height: 1.55;
    }

    .rk-team-photo {
      position: relative;
      min-height: 438px;
      overflow: hidden;
      border-radius: 28px;
      background:
        linear-gradient(180deg, rgba(255, 253, 248, 0.18), rgba(32, 36, 33, 0.08)),
        url("assets/team-plan.png") center / cover;
      box-shadow: var(--shadow);
    }

    .rk-team-photo::after {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(90deg, rgba(255, 253, 248, 0.2), transparent 45%),
        radial-gradient(circle at 75% 20%, rgba(255, 253, 248, 0.22), transparent 18rem);
      pointer-events: none;
    }

    .rk-team-photo-badge {
      position: absolute;
      z-index: 1;
      left: 22px;
      bottom: 22px;
      max-width: calc(100% - 44px);
      padding: 18px 20px;
      border-radius: 20px;
      background: rgba(255, 253, 248, 0.88);
      color: var(--muted);
      font-size: 14px;
      line-height: 1.5;
      backdrop-filter: blur(14px);
    }

    .rk-team-photo-badge strong {
      display: block;
      margin-bottom: 6px;
      color: var(--ink);
      font-size: 16px;
    }

    .rk-team-compare {
      margin-top: clamp(44px, 6vw, 76px);
    }

    .rk-team-compare-stage {
      position: relative;
      min-height: 620px;
      overflow: hidden;
      border-radius: 28px;
      background: #d8d0c4;
      box-shadow: var(--shadow);
      cursor: ew-resize;
      touch-action: none;
      isolation: isolate;
    }

    .rk-team-compare-layer {
      position: absolute;
      inset: 0;
      background-position: center;
      background-size: cover;
    }

    .rk-team-compare-after {
      background-image: url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1400&q=84");
    }

    .rk-team-compare-before {
      background-image:
        linear-gradient(90deg, rgba(255, 253, 248, 0.08), rgba(32, 36, 33, 0.04)),
        url("assets/team-before.png");
      background-size: cover;
      background-position: center;
      clip-path: inset(0 50% 0 0);
    }

    .rk-team-compare-line {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 50%;
      width: 2px;
      background: rgba(255, 253, 248, 0.96);
      transform: translateX(-50%);
      z-index: 3;
    }

    .rk-team-compare-handle {
      position: absolute;
      left: 50%;
      top: 50%;
      z-index: 4;
      width: 92px;
      height: 92px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      background: rgba(255, 253, 248, 0.92);
      color: var(--ink);
      box-shadow: 0 18px 50px rgba(32, 36, 33, 0.18);
      transform: translate(-50%, -50%);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      pointer-events: none;
      backdrop-filter: blur(10px);
    }

    .rk-team-compare-tag {
      position: absolute;
      top: 22px;
      z-index: 4;
      padding: 11px 16px;
      border-radius: 999px;
      color: var(--paper);
      background: rgba(32, 36, 33, 0.44);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      backdrop-filter: blur(10px);
    }

    .rk-team-compare-tag.before {
      left: 22px;
    }

    .rk-team-compare-tag.after {
      right: 22px;
      background: rgba(18, 61, 50, 0.72);
    }

    .rk-team-compare-caption {
      margin-top: 18px;
      padding: 26px 30px;
      border-radius: 24px;
      background: rgba(255, 253, 248, 0.78);
      color: var(--ink);
      font-size: clamp(20px, 2vw, 30px);
      line-height: 1.24;
      letter-spacing: -0.045em;
      font-weight: 800;
    }

    .rk-reveal {
      opacity: 0;
      transform: translateY(28px);
      filter: blur(8px);
      transition: opacity 0.7s ease, transform 0.7s ease, filter 0.7s ease;
    }

    .rk-reveal.is-visible {
      opacity: 1;
      transform: translateY(0);
      filter: blur(0);
    }

    .rk-problems {
      padding: clamp(86px, 10vw, 136px) 0;
      background:
        radial-gradient(circle at 12% 18%, rgba(169, 185, 156, 0.22), transparent 26rem),
        linear-gradient(180deg, #e9e2d6, #eee7dc);
      border-top: 1px solid rgba(32, 36, 33, 0.08);
      border-bottom: 1px solid rgba(32, 36, 33, 0.08);
    }

    .rk-problems-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
      gap: clamp(28px, 6vw, 84px);
      align-items: end;
      margin-bottom: 34px;
    }

    .rk-problems-title {
      max-width: 900px;
      margin: 0;
      color: var(--ink);
      font-size: clamp(40px, 6vw, 82px);
      line-height: 0.95;
      letter-spacing: -0.075em;
    }

    .rk-problems-copy {
      margin: 0;
      color: rgba(32, 36, 33, 0.68);
      font-size: clamp(16px, 1.6vw, 20px);
      line-height: 1.68;
    }

    .rk-problem-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 14px;
    }

    .rk-problem-card {
      min-height: 260px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 24px;
      border: 1px solid rgba(32, 36, 33, 0.1);
      border-radius: 26px;
      background: rgba(255, 253, 248, 0.66);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.055);
      transition: transform 0.32s ease, background 0.32s ease, border-color 0.32s ease;
    }

    .rk-problem-card:hover {
      transform: translateY(-4px);
      border-color: rgba(18, 61, 50, 0.2);
      background: rgba(255, 253, 248, 0.86);
    }

    .rk-problem-mark {
      width: 38px;
      height: 38px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      background: rgba(18, 61, 50, 0.08);
      color: var(--emerald);
      font-size: 13px;
      font-weight: 900;
    }

    .rk-problem-card h3 {
      margin: 0;
      color: var(--ink);
      font-size: 24px;
      line-height: 1.08;
      letter-spacing: -0.055em;
    }

    .rk-problem-card p {
      margin: 12px 0 0;
      color: rgba(32, 36, 33, 0.64);
      font-size: 15px;
      line-height: 1.55;
    }

    .rk-scope {
      padding: clamp(86px, 10vw, 136px) 0;
      background: var(--bg);
    }

    .rk-scope-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
      gap: clamp(28px, 6vw, 84px);
      align-items: end;
      margin-bottom: 36px;
    }

    .rk-scope-title {
      max-width: 880px;
      margin: 0;
      color: var(--ink);
      font-size: clamp(40px, 6vw, 82px);
      line-height: 0.95;
      letter-spacing: -0.075em;
    }

    .rk-scope-copy {
      margin: 0;
      color: var(--muted);
      font-size: clamp(16px, 1.6vw, 20px);
      line-height: 1.68;
    }

    .rk-scope-list {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1px;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 28px;
      background: var(--line);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.055);
    }

    .rk-scope-item {
      position: relative;
      min-height: 150px;
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 18px;
      align-items: start;
      padding: 26px;
      border: 0;
      background: rgba(255, 253, 248, 0.78);
      color: var(--ink);
      text-align: left;
      overflow: hidden;
      transition: background 0.32s ease, transform 0.32s ease;
    }

    .rk-scope-item:hover,
    .rk-scope-item:focus-visible {
      background: rgba(223, 232, 214, 0.9);
    }

    .rk-scope-num {
      color: var(--emerald);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.1em;
      line-height: 1.2;
    }

    .rk-scope-item strong {
      display: block;
      color: var(--ink);
      font-size: clamp(22px, 2.5vw, 34px);
      line-height: 1.04;
      letter-spacing: -0.055em;
    }

    .rk-scope-item span:last-child {
      display: block;
      max-width: 440px;
      margin-top: 12px;
      color: rgba(32, 36, 33, 0.64);
      font-size: 15px;
      line-height: 1.55;
      opacity: 0;
      transform: translateY(10px);
      transition: opacity 0.32s ease, transform 0.32s ease;
    }

    .rk-scope-item:hover span:last-child,
    .rk-scope-item:focus-visible span:last-child {
      opacity: 1;
      transform: translateY(0);
    }

    .rk-portfolio {
      padding: clamp(86px, 10vw, 136px) 0;
      background: var(--bg);
      overflow: hidden;
    }

    .rk-portfolio-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
      gap: clamp(28px, 6vw, 84px);
      align-items: end;
      margin-bottom: 36px;
    }

    .rk-portfolio-title {
      max-width: 900px;
      margin: 0;
      color: var(--ink);
      font-size: clamp(40px, 6vw, 82px);
      line-height: 0.95;
      letter-spacing: -0.075em;
    }

    .rk-portfolio-copy {
      margin: 0;
      color: var(--muted);
      font-size: clamp(16px, 1.6vw, 20px);
      line-height: 1.68;
    }

    .rk-portfolio-feature {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 360px;
      gap: 18px;
      align-items: stretch;
      margin-bottom: 18px;
    }

    .rk-work-compare {
      position: relative;
      min-height: 640px;
      overflow: hidden;
      border-radius: 28px;
      background: #d8d0c4;
      box-shadow: var(--shadow);
      cursor: ew-resize;
      touch-action: none;
      isolation: isolate;
    }

    .rk-work-compare-layer {
      position: absolute;
      inset: 0;
      background-position: center;
      background-size: cover;
    }

    .rk-work-compare-after {
      background-image: url("assets/work-after-1.png");
    }

    .rk-work-compare-before {
      background-image:
        linear-gradient(90deg, rgba(32, 36, 33, 0.18), rgba(32, 36, 33, 0.02)),
        url("assets/work-before-1.png");
      background-size: cover;
      background-position: center;
      clip-path: inset(0 50% 0 0);
    }

    .rk-work-line {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 50%;
      z-index: 3;
      width: 2px;
      background: rgba(255, 253, 248, 0.96);
      transform: translateX(-50%);
    }

    .rk-work-handle {
      position: absolute;
      z-index: 4;
      left: 50%;
      top: 50%;
      width: 92px;
      height: 92px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      background: rgba(255, 253, 248, 0.92);
      color: var(--ink);
      box-shadow: 0 18px 50px rgba(32, 36, 33, 0.18);
      transform: translate(-50%, -50%);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      pointer-events: none;
      backdrop-filter: blur(10px);
    }

    .rk-work-tag {
      position: absolute;
      top: 22px;
      z-index: 4;
      padding: 11px 16px;
      border-radius: 999px;
      color: var(--paper);
      background: rgba(32, 36, 33, 0.44);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      backdrop-filter: blur(10px);
    }

    .rk-work-tag.before {
      left: 22px;
    }

    .rk-work-tag.after {
      right: 22px;
      background: rgba(18, 61, 50, 0.72);
    }

    .rk-feature-info {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 24px;
      padding: 26px;
      border: 1px solid var(--line);
      border-radius: 28px;
      background: rgba(255, 253, 248, 0.82);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.055);
    }

    .rk-feature-info h3 {
      margin: 0;
      color: var(--ink);
      font-size: clamp(28px, 3vw, 42px);
      line-height: 1.02;
      letter-spacing: -0.06em;
    }

    .rk-feature-info p {
      margin: 14px 0 0;
      color: var(--muted);
      font-size: 15px;
      line-height: 1.58;
    }

    .rk-work-meta {
      display: grid;
      gap: 10px;
    }

    .rk-work-meta-row {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      padding-bottom: 10px;
      border-bottom: 1px solid var(--line);
      color: var(--muted);
      font-size: 14px;
    }

    .rk-work-meta-row strong {
      color: var(--ink);
      text-align: right;
    }

    .rk-work-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 18px;
    }

    .rk-work-card {
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 28px;
      background: rgba(255, 253, 248, 0.78);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.055);
    }

    .rk-work-card-photo {
      min-height: 260px;
      background-image: var(--after);
      background-position: center;
      background-size: cover;
      transition: transform 0.32s ease, filter 0.32s ease;
    }

    .rk-work-card:hover .rk-work-card-photo {
      transform: scale(1.025);
    }

    .rk-work-card-body {
      padding: 22px;
    }

    .rk-work-card h3 {
      margin: 0;
      color: var(--ink);
      font-size: 23px;
      line-height: 1.08;
      letter-spacing: -0.055em;
    }

    .rk-work-card p {
      margin: 10px 0 0;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.55;
    }

    .rk-card-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 16px;
    }

    .rk-card-meta span {
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(18, 61, 50, 0.08);
      color: var(--emerald);
      font-size: 12px;
      font-weight: 800;
    }

    .rk-work-switch {
      display: flex;
      gap: 8px;
      margin-top: 18px;
    }

    .rk-work-switch button {
      flex: 1;
      min-height: 38px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: var(--paper);
      color: var(--muted);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
    }

    .rk-work-switch button.is-active {
      color: var(--paper);
      background: var(--emerald);
      border-color: var(--emerald);
    }

    .rk-process {
      padding: clamp(86px, 10vw, 136px) 0;
      background:
        radial-gradient(circle at 86% 12%, rgba(169, 185, 156, 0.18), transparent 28rem),
        var(--bg);
    }

    .rk-process-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
      gap: clamp(28px, 6vw, 84px);
      align-items: end;
      margin-bottom: 44px;
    }

    .rk-process-title {
      max-width: 900px;
      margin: 0;
      color: var(--ink);
      font-size: clamp(40px, 6vw, 82px);
      line-height: 0.95;
      letter-spacing: -0.075em;
    }

    .rk-process-copy {
      margin: 0;
      color: var(--muted);
      font-size: clamp(16px, 1.6vw, 20px);
      line-height: 1.68;
    }

    .rk-process-line {
      position: relative;
      display: grid;
      gap: 0;
      border-top: 1px solid var(--line);
    }

    .rk-process-step {
      position: relative;
      display: grid;
      grid-template-columns: 120px minmax(0, 0.86fr) minmax(280px, 0.6fr);
      gap: 28px;
      align-items: start;
      padding: 34px 0;
      border-bottom: 1px solid var(--line);
    }

    .rk-process-step::before {
      content: "";
      position: absolute;
      left: 54px;
      top: 0;
      bottom: 0;
      width: 1px;
      background: rgba(32, 36, 33, 0.12);
    }

    .rk-process-dot {
      position: relative;
      z-index: 1;
      width: 34px;
      height: 34px;
      display: grid;
      place-items: center;
      margin-left: 37px;
      border-radius: 50%;
      background: var(--bg);
      border: 1px solid rgba(18, 61, 50, 0.22);
      color: var(--emerald);
      font-size: 12px;
      font-weight: 900;
      transition: background 0.35s ease, color 0.35s ease, transform 0.35s ease;
    }

    .rk-process-step.is-visible .rk-process-dot {
      background: var(--emerald);
      color: var(--paper);
      transform: scale(1.08);
    }

    .rk-process-step h3 {
      margin: 0;
      color: var(--ink);
      font-size: clamp(24px, 3vw, 42px);
      line-height: 1.02;
      letter-spacing: -0.06em;
    }

    .rk-process-step p {
      margin: 0;
      color: var(--muted);
      font-size: 16px;
      line-height: 1.62;
    }

    .rk-process-note {
      margin-top: 28px;
      padding: 24px 28px;
      border: 1px solid var(--line);
      border-radius: 24px;
      background: rgba(255, 253, 248, 0.72);
      color: var(--muted);
      font-size: 16px;
      line-height: 1.62;
    }

    .rk-process-note strong {
      color: var(--ink);
    }

    .rk-pricing,
    .rk-materials,
    .rk-control,
    .rk-audience,
    .rk-reviews,
    .rk-faq,
    .rk-final {
      padding: clamp(86px, 10vw, 136px) 0;
      background: var(--bg);
    }

    .rk-materials {
      background:
        radial-gradient(circle at 12% 20%, rgba(169, 185, 156, 0.16), transparent 28rem),
        var(--bg);
    }

    .rk-control {
      background:
        linear-gradient(180deg, #eee7dc, var(--bg));
      border-top: 1px solid rgba(32, 36, 33, 0.08);
      border-bottom: 1px solid rgba(32, 36, 33, 0.08);
    }

    .rk-block-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
      gap: clamp(28px, 6vw, 84px);
      align-items: end;
      margin-bottom: 36px;
    }

    .rk-block-title {
      max-width: 940px;
      margin: 0;
      color: var(--ink);
      font-size: clamp(40px, 6vw, 82px);
      line-height: 0.95;
      letter-spacing: -0.075em;
    }

    .rk-block-copy {
      margin: 0;
      color: var(--muted);
      font-size: clamp(16px, 1.6vw, 20px);
      line-height: 1.68;
    }

    .rk-pricing-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 18px;
      margin-bottom: 18px;
    }

    .rk-price-card {
      min-height: 280px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 28px;
      border: 1px solid var(--line);
      border-radius: 28px;
      background: rgba(255, 253, 248, 0.78);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.055);
      transition: transform 0.32s ease, background 0.32s ease, border-color 0.32s ease;
    }

    .rk-price-card:hover {
      transform: translateY(-4px);
      border-color: rgba(18, 61, 50, 0.24);
      background: rgba(255, 253, 248, 0.96);
    }

    .rk-price-card h3,
    .rk-material-card h3,
    .rk-audience-card h3 {
      margin: 0;
      color: var(--ink);
      font-size: clamp(24px, 2.8vw, 38px);
      line-height: 1.04;
      letter-spacing: -0.06em;
    }

    .rk-price-card p,
    .rk-material-card p,
    .rk-audience-card p {
      margin: 12px 0 0;
      color: var(--muted);
      font-size: 15px;
      line-height: 1.58;
    }

    .rk-price-label {
      color: var(--emerald);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .rk-pricing-note {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 24px;
      align-items: center;
      padding: 26px 28px;
      border-radius: 26px;
      background: var(--emerald);
      color: var(--paper);
    }

    .rk-pricing-note p {
      margin: 0;
      color: rgba(255, 253, 248, 0.78);
      font-size: 16px;
      line-height: 1.62;
    }

    .rk-pricing-note strong {
      display: block;
      margin-bottom: 6px;
      color: var(--paper);
      font-size: 20px;
      letter-spacing: -0.035em;
    }

    .rk-pricing-note .rk-btn {
      background: var(--paper);
      color: var(--ink);
      white-space: nowrap;
    }

    .rk-material-grid {
      display: grid;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      gap: 14px;
    }

    .rk-material-card {
      min-height: 250px;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 26px;
      background: rgba(255, 253, 248, 0.8);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.05);
    }

    .rk-material-swatch {
      height: 132px;
      background: var(--swatch);
      background-size: cover;
      background-position: center;
      border-bottom: 1px solid var(--line);
    }

    .rk-material-card div:last-child {
      padding: 20px;
    }

    .rk-material-card h3 {
      font-size: clamp(24px, 2vw, 31px);
      line-height: 1.08;
      letter-spacing: -0.055em;
      overflow-wrap: anywhere;
    }

    .rk-material-card p {
      font-size: 14px;
      line-height: 1.55;
    }

    .rk-control-grid {
      display: grid;
      grid-template-columns: minmax(0, 0.88fr) minmax(360px, 0.56fr);
      gap: 24px;
      align-items: stretch;
    }

    .rk-report-photo {
      min-height: 560px;
      border-radius: 28px;
      background:
        linear-gradient(180deg, rgba(32, 36, 33, 0.04), rgba(32, 36, 33, 0.24)),
        url("assets/control-report.png") center / cover;
      box-shadow: var(--shadow);
    }

    .rk-report-card {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 24px;
      padding: 28px;
      border: 1px solid var(--line);
      border-radius: 28px;
      background: rgba(255, 253, 248, 0.84);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.06);
    }

    .rk-report-card h3 {
      margin: 0;
      color: var(--ink);
      font-size: clamp(28px, 3vw, 44px);
      line-height: 1.02;
      letter-spacing: -0.06em;
    }

    .rk-report-card p {
      margin: 12px 0 0;
      color: var(--muted);
      font-size: 16px;
      line-height: 1.62;
    }

    .rk-status-list {
      display: grid;
      gap: 10px;
    }

    .rk-status-row {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      padding: 14px 0;
      border-bottom: 1px solid var(--line);
      color: var(--muted);
      font-size: 14px;
    }

    .rk-status-row strong {
      color: var(--ink);
      text-align: right;
    }

    .rk-audience-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
    }

    .rk-audience-card {
      min-height: 190px;
      padding: 24px;
      border: 1px solid var(--line);
      border-radius: 26px;
      background: rgba(255, 253, 248, 0.76);
      transition: transform 0.32s ease, background 0.32s ease, border-color 0.32s ease;
    }

    .rk-audience-card:hover {
      transform: translateY(-4px);
      border-color: rgba(18, 61, 50, 0.22);
      background: rgba(223, 232, 214, 0.86);
    }

    .rk-reviews {
      background:
        radial-gradient(circle at 86% 16%, rgba(169, 185, 156, 0.18), transparent 26rem),
        var(--bg);
    }

    .rk-review-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;
    }

    .rk-review-card {
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 28px;
      background: rgba(255, 253, 248, 0.8);
      box-shadow: 0 18px 55px rgba(32, 36, 33, 0.055);
    }

    .rk-review-photo {
      min-height: 230px;
      background: var(--photo) center / cover;
      border-bottom: 1px solid var(--line);
    }

    .rk-review-body {
      padding: 24px;
    }

    .rk-review-body span {
      display: inline-flex;
      margin-bottom: 16px;
      color: var(--emerald);
      font-size: 12px;
      font-weight: 900;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .rk-review-body h3,
    .rk-final-card h2 {
      margin: 0;
      color: var(--ink);
      font-size: clamp(26px, 3vw, 42px);
      line-height: 1.02;
      letter-spacing: -0.06em;
    }

    .rk-review-body p,
    .rk-final-card p {
      margin: 14px 0 0;
      color: var(--muted);
      font-size: 16px;
      line-height: 1.62;
    }

    .rk-review-body blockquote {
      margin: 20px 0 0;
      padding: 16px 0 0;
      border-top: 1px solid var(--line);
      color: var(--ink);
      font-size: 15px;
      font-weight: 700;
      line-height: 1.55;
      letter-spacing: -0.02em;
    }

    .rk-faq {
      background:
        linear-gradient(180deg, #eee7dc, var(--bg));
      border-top: 1px solid rgba(32, 36, 33, 0.08);
      border-bottom: 1px solid rgba(32, 36, 33, 0.08);
    }

    .rk-faq-list {
      display: grid;
      gap: 10px;
    }

    .rk-faq-item {
      border: 1px solid var(--line);
      border-radius: 24px;
      background: rgba(255, 253, 248, 0.76);
      overflow: hidden;
    }

    .rk-faq-question {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      padding: 22px 24px;
      border: 0;
      background: transparent;
      color: var(--ink);
      font: inherit;
      font-size: clamp(18px, 2vw, 24px);
      font-weight: 800;
      letter-spacing: -0.045em;
      text-align: left;
      cursor: pointer;
    }

    .rk-faq-question::after {
      content: "+";
      width: 34px;
      height: 34px;
      flex: 0 0 34px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      background: rgba(169, 185, 156, 0.32);
      color: var(--emerald);
      font-weight: 800;
      transition: transform 0.25s ease, background 0.25s ease;
    }

    .rk-faq-item.is-open .rk-faq-question::after {
      transform: rotate(45deg);
      background: var(--sage);
    }

    .rk-faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.34s ease;
    }

    .rk-faq-answer p {
      margin: 0;
      padding: 0 24px 22px;
      color: var(--muted);
      font-size: 16px;
      line-height: 1.62;
    }

    .rk-final-card {
      display: grid;
      grid-template-columns: minmax(0, 0.8fr) minmax(360px, 0.56fr);
      gap: clamp(28px, 6vw, 76px);
      align-items: stretch;
      padding: clamp(24px, 4vw, 42px);
      border: 1px solid var(--line);
      border-radius: 32px;
      background:
        linear-gradient(90deg, rgba(255, 253, 248, 0.86), rgba(255, 253, 248, 0.58)),
        url("https://images.unsplash.com/photo-1600210492493-0946911123ea?auto=format&fit=crop&w=1400&q=82") center / cover;
      box-shadow: var(--shadow);
    }

    .rk-final-content {
      align-self: end;
      max-width: 680px;
      padding: clamp(10px, 2vw, 18px);
    }

    .rk-final-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 28px;
    }

    .rk-final-form {
      display: grid;
      gap: 12px;
      padding: 18px;
      border: 1px solid rgba(255, 255, 255, 0.78);
      border-radius: 28px;
      background: rgba(255, 253, 248, 0.9);
      backdrop-filter: blur(16px);
    }

    .rk-final-form input,
    .rk-final-form textarea {
      width: 100%;
      border: 1px solid var(--line);
      border-radius: 18px;
      background: rgba(244, 239, 231, 0.58);
      color: var(--ink);
      font: inherit;
      font-size: 15px;
      outline: none;
      padding: 16px 18px;
    }

    .rk-final-form textarea {
      min-height: 112px;
      resize: vertical;
    }

    .rk-final-form input:focus,
    .rk-final-form textarea:focus {
      border-color: rgba(18, 61, 50, 0.38);
      background: var(--paper);
    }

    .rk-footer {
      padding: 58px 0 28px;
      background: var(--emerald);
      color: var(--paper);
    }

    .rk-footer-grid {
      display: grid;
      grid-template-columns: minmax(260px, 1.2fr) 0.75fr 0.85fr 1fr;
      gap: 34px;
      align-items: start;
    }

    .rk-footer-brand {
      margin: 0;
      color: var(--paper);
      font-size: clamp(34px, 4vw, 54px);
      line-height: 0.95;
      letter-spacing: -0.07em;
      font-weight: 900;
    }

    .rk-footer p {
      margin: 16px 0 0;
      color: rgba(255, 253, 248, 0.68);
      font-size: 15px;
      line-height: 1.62;
    }

    .rk-footer h3 {
      margin: 0 0 16px;
      color: rgba(255, 253, 248, 0.92);
      font-size: 13px;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .rk-footer-links,
    .rk-footer-social {
      display: grid;
      gap: 10px;
    }

    .rk-footer a {
      color: rgba(255, 253, 248, 0.74);
      text-decoration: none;
      font-size: 15px;
      transition: color 0.25s ease, transform 0.25s ease, background 0.25s ease;
    }

    .rk-footer a:hover {
      color: var(--paper);
    }

    .rk-footer-social a {
      width: fit-content;
      min-height: 42px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 16px;
      border: 1px solid rgba(255, 253, 248, 0.18);
      border-radius: 999px;
      background: rgba(255, 253, 248, 0.06);
    }

    .rk-footer-social a:hover {
      transform: translateY(-2px);
      background: rgba(255, 253, 248, 0.12);
    }

    .rk-footer-phone {
      display: inline-flex;
      margin-bottom: 16px;
      color: var(--paper) !important;
      font-size: clamp(22px, 2.4vw, 32px) !important;
      font-weight: 900;
      letter-spacing: -0.055em;
    }

    .rk-footer .rk-btn {
      min-height: 50px;
      background: var(--paper);
      color: var(--ink);
    }

    .rk-footer-bottom {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 16px;
      margin-top: 46px;
      padding-top: 22px;
      border-top: 1px solid rgba(255, 253, 248, 0.16);
      color: rgba(255, 253, 248, 0.58);
      font-size: 13px;
    }

    .rk-footer-docs {
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
    }

    .rk-estimator-card {
      position: absolute;
      z-index: 5;
      right: 24px;
      bottom: 24px;
      width: min(340px, calc(100% - 48px));
      padding: 26px;
      border-radius: 24px;
      background: rgba(255, 253, 248, 0.94);
      color: var(--ink);
      box-shadow: 0 22px 70px rgba(32, 36, 33, 0.18);
      backdrop-filter: blur(14px);
    }

    .rk-estimator-icon {
      width: 48px;
      height: 48px;
      display: grid;
      place-items: center;
      margin-bottom: 28px;
      border-radius: 50%;
      background: var(--emerald);
      color: var(--paper);
      font-size: 18px;
      font-weight: 800;
    }

    .rk-estimator-card h3 {
      margin: 0;
      color: var(--ink);
      font-size: 26px;
      line-height: 1.05;
      letter-spacing: -0.055em;
    }

    .rk-estimator-card p {
      margin: 12px 0 0;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.5;
    }

    @media (max-width: 1080px) {
      .rk-header {
        grid-template-columns: auto auto;
      }

      .rk-nav {
        display: none;
      }

      .rk-header-actions {
        justify-self: end;
      }
    }

    @media (max-width: 980px) {
      .rk-hero-grid {
        grid-template-columns: 1fr;
      }

      .rk-team-head,
      .rk-team-layout,
      .rk-problems-head,
      .rk-scope-head,
      .rk-portfolio-head,
      .rk-portfolio-feature,
      .rk-process-head {
        grid-template-columns: 1fr;
      }

      .rk-block-head,
      .rk-control-grid {
        grid-template-columns: 1fr;
      }

      .rk-problem-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .rk-scope-list {
        grid-template-columns: 1fr;
      }

      .rk-work-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .rk-pricing-grid,
      .rk-audience-grid,
      .rk-review-grid {
        grid-template-columns: 1fr;
      }

      .rk-final-card,
      .rk-footer-grid {
        grid-template-columns: 1fr;
      }

      .rk-material-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .rk-process-step {
        grid-template-columns: 70px 1fr;
      }

      .rk-process-step p {
        grid-column: 2;
      }

      .rk-process-step::before {
        left: 32px;
      }

      .rk-process-dot {
        margin-left: 15px;
      }

      .rk-scope-item span:last-child {
        opacity: 1;
        transform: translateY(0);
      }

      .rk-blueprint-stage {
        min-height: 520px;
      }
    }

    @media (max-width: 720px) {
      .rk-container {
        width: calc(100% - 24px);
      }

      .rk-header {
        top: 10px;
        width: calc(100% - 20px);
        height: 64px;
        padding: 8px 10px 8px 14px;
      }

      .rk-brand-main {
        font-size: 17px;
      }

      .rk-brand-sub,
      .rk-phone {
        display: none;
      }

      .rk-telegram {
        min-height: 40px;
        padding: 0 14px;
        font-size: 12px;
      }

      .rk-hero {
        padding: 96px 0 52px;
      }

      .rk-hero-title {
        font-size: clamp(40px, 12vw, 58px);
      }

      .rk-hero-actions {
        flex-direction: column;
      }

      .rk-btn {
        width: 100%;
      }

      .rk-team {
        padding: 72px 0;
      }

      .rk-team-cards {
        grid-template-columns: 1fr;
      }

      .rk-team-card {
        min-height: 178px;
      }

      .rk-team-photo {
        min-height: 360px;
        border-radius: 24px;
      }

      .rk-team-compare-stage {
        min-height: 430px;
        border-radius: 24px;
      }

      .rk-team-compare-handle {
        width: 78px;
        height: 78px;
        font-size: 12px;
      }

      .rk-problems {
        padding: 72px 0;
      }

      .rk-problem-grid {
        grid-template-columns: 1fr;
      }

      .rk-problem-card {
        min-height: 190px;
      }

      .rk-scope {
        padding: 72px 0;
      }

      .rk-scope-item {
        min-height: 132px;
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 22px;
      }

      .rk-portfolio {
        padding: 72px 0;
      }

      .rk-work-compare {
        min-height: 430px;
        border-radius: 24px;
      }

      .rk-work-handle {
        width: 78px;
        height: 78px;
        font-size: 12px;
      }

      .rk-work-grid {
        grid-template-columns: 1fr;
      }

      .rk-process {
        padding: 72px 0;
      }

      .rk-process-step {
        grid-template-columns: 52px 1fr;
        gap: 16px;
        padding: 26px 0;
      }

      .rk-process-step::before {
        left: 24px;
      }

      .rk-process-dot {
        width: 30px;
        height: 30px;
        margin-left: 9px;
      }

      .rk-process-step p {
        font-size: 15px;
      }

      .rk-pricing,
      .rk-materials,
      .rk-control,
      .rk-audience,
      .rk-reviews,
      .rk-faq,
      .rk-final {
        padding: 72px 0;
      }

      .rk-pricing-note {
        grid-template-columns: 1fr;
      }

      .rk-material-grid {
        grid-template-columns: 1fr;
      }

      .rk-report-photo {
        min-height: 360px;
        border-radius: 24px;
      }

      .rk-audience-card {
        min-height: 150px;
      }

      .rk-blueprint-stage {
        min-height: 430px;
        border-radius: 24px;
      }

      .rk-estimator-card {
        right: 16px;
        bottom: 16px;
        width: calc(100% - 32px);
        padding: 20px;
      }

      .rk-estimator-icon {
        width: 40px;
        height: 40px;
        margin-bottom: 18px;
      }

      .rk-estimator-card h3 {
        font-size: 22px;
      }

      .rk-blueprint-layer svg {
        inset: 5%;
        width: 90%;
        height: 90%;
      }
    }
