:root {
      --cr-plum: #5a3a79;
      --cr-plum-light: #745296;
      --cr-plum-dark: #261632;
      --cr-sage: #87a98c;
      --cr-sage-light: #a5c0a9;
      --cr-gold: #d4a43a;
      --cr-charcoal: #2c2c2c;
      --cr-black: #070708;
      --cr-black-soft: #0b0b0d;
      --cr-black-card: #111114;
      --cr-gray-900: #18181c;
      --cr-gray-800: #29292f;
      --cr-gray-700: #4d4d55;
      --cr-gray-600: #66666e;
      --cr-gray-500: #7d7d85;
      --cr-gray-400: #a8a8af;
      --cr-gray-300: #d5d5da;
      --cr-gray-200: #e6e6e9;
      --cr-gray-100: #f0f0f2;
      --cr-warm-white: #f6f3ee;
      --cr-white: #ffffff;

      --cr-content-width: 1240px;
      --cr-page-padding: 34px;
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
      scroll-padding-top: 110px;
    }

    body {
      margin: 0;
      overflow-x: hidden;
      background: var(--cr-black);
      color: var(--cr-charcoal);
      font-family: "Inter", Arial, Helvetica, sans-serif;
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }

    body.menu-open {
      overflow: hidden;
    }

    img {
      display: block;
      max-width: 100%;
      height: auto;
    }

    a {
      color: inherit;
    }

    button {
      font: inherit;
    }

    ::selection {
      background: var(--cr-plum);
      color: var(--cr-white);
    }

    .cr-site {
      width: 100%;
      overflow: hidden;
      background: var(--cr-warm-white);
    }

    .cr-shell {
      width: min(
        var(--cr-content-width),
        calc(100% - (var(--cr-page-padding) * 2))
      );
      margin: 0 auto;
    }

    .cr-display {
      margin: 0;
      font-family: "Playfair Display", Georgia, serif;
      font-weight: 600;
      line-height: 0.99;
      letter-spacing: -0.047em;
      text-wrap: balance;
    }

    .cr-eyebrow {
      display: inline-flex;
      margin: 0 0 22px;
      align-items: center;
      gap: 11px;
      color: var(--cr-gold);
      font-size: 10px;
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: 0.2em;
      text-transform: uppercase;
    }

    .cr-eyebrow::before {
      width: 30px;
      height: 1px;
      background: currentColor;
      content: "";
    }

    .cr-button {
      display: inline-flex;
      min-height: 50px;
      padding: 0 23px;
      align-items: center;
      justify-content: center;
      gap: 11px;
      border: 1px solid transparent;
      border-radius: 999px;
      font-size: 12px;
      font-weight: 700;
      line-height: 1;
      text-align: center;
      text-decoration: none;
      transition:
        transform 180ms ease,
        box-shadow 180ms ease,
        background-color 180ms ease,
        border-color 180ms ease,
        color 180ms ease;
    }

    .cr-button:hover {
      transform: translateY(-2px);
    }

    .cr-button-primary {
      background: var(--cr-warm-white);
      color: var(--cr-black);
      box-shadow: 0 16px 36px rgba(0, 0, 0, 0.16);
    }

    .cr-button-primary:hover {
      background: var(--cr-white);
      box-shadow: 0 20px 42px rgba(0, 0, 0, 0.22);
    }

    .cr-button-outline {
      border-color: rgba(255, 255, 255, 0.26);
      background: rgba(255, 255, 255, 0.02);
      color: var(--cr-white);
    }

    .cr-button-outline:hover {
      border-color: rgba(255, 255, 255, 0.72);
      background: rgba(255, 255, 255, 0.07);
    }

    /* =========================
       FLOATING NAVIGATION
    ========================== */

    .cr-nav-wrap {
      position: fixed;
      z-index: 1000;
      top: 18px;
      right: 0;
      left: 0;
      pointer-events: none;
    }

    .cr-nav {
      position: relative;
      display: flex;
      width: min(
        var(--cr-content-width),
        calc(100% - (var(--cr-page-padding) * 2))
      );
      min-height: 64px;
      margin: 0 auto;
      padding: 9px 10px 9px 12px;
      align-items: center;
      justify-content: space-between;
      border: 1px solid rgba(255, 255, 255, 0.15);
      border-radius: 18px;
      background: rgba(7, 7, 8, 0.88);
      box-shadow: 0 22px 60px rgba(0, 0, 0, 0.26);
      backdrop-filter: blur(18px);
      -webkit-backdrop-filter: blur(18px);
      pointer-events: auto;
      transition:
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
    }

    .cr-nav.scrolled {
      border-color: rgba(255, 255, 255, 0.2);
      background: rgba(7, 7, 8, 0.96);
      box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
    }

    .cr-brand {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      color: var(--cr-white);
      text-decoration: none;
    }

    .cr-brand-emblem {
      position: relative;
      flex: 0 0 auto;
    }

    .cr-brand-emblem::after {
      position: absolute;
      inset: -4px;
      border: 1px solid rgba(212, 164, 58, 0);
      border-radius: 14px;
      content: "";
      transition: border-color 180ms ease;
    }

    .cr-brand:hover .cr-brand-emblem::after {
      border-color: rgba(212, 164, 58, 0.58);
    }

    .cr-brand img {
      width: 42px;
      height: 42px;
      border-radius: 11px;
      object-fit: cover;
    }

    .cr-brand {
      min-width: 42px;
    }

    .cr-brand:hover img {
      filter: brightness(1.06);
    }

    .cr-brand-text {
      display: flex;
      flex-direction: column;
    }

    .cr-brand-name {
      color: var(--cr-white);
      font-family: "Playfair Display", Georgia, serif;
      font-size: 15px;
      font-weight: 700;
      line-height: 0.92;
      letter-spacing: -0.025em;
      text-transform: uppercase;
    }

    .cr-brand-label {
      margin-top: 5px;
      color: rgba(255, 255, 255, 0.58);
      font-size: 8px;
      font-weight: 600;
      line-height: 1;
      letter-spacing: 0.18em;
      text-transform: uppercase;
    }

    .cr-nav-links {
      display: flex;
      align-items: center;
      gap: 29px;
    }

    .cr-nav-link {
      position: relative;
      color: rgba(255, 255, 255, 0.8);
      font-size: 12px;
      font-weight: 600;
      text-decoration: none;
      transition: color 180ms ease;
    }

    .cr-nav-link::after {
      position: absolute;
      right: 0;
      bottom: -8px;
      left: 0;
      height: 1px;
      background: var(--cr-gold);
      content: "";
      transform: scaleX(0);
      transform-origin: right;
      transition: transform 180ms ease;
    }

    .cr-nav-link:hover {
      color: var(--cr-white);
    }

    .cr-nav-link:hover::after {
      transform: scaleX(1);
      transform-origin: left;
    }

    .cr-nav-cta {
      display: inline-flex;
      min-height: 44px;
      padding: 0 21px;
      align-items: center;
      justify-content: center;
      border: 1px solid var(--cr-gold);
      border-radius: 999px;
      background:
        linear-gradient(
          135deg,
          #e0b650 0%,
          var(--cr-gold) 52%,
          #c28d24 100%
        );
      color: var(--cr-black);
      box-shadow:
        0 10px 28px rgba(212, 164, 58, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.28);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.015em;
      text-decoration: none;
      transition:
        background-color 180ms ease,
        color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease;
    }

    .cr-nav-cta:hover {
      border-color: var(--cr-warm-white);
      background: var(--cr-warm-white);
      color: var(--cr-black);
      box-shadow:
        0 14px 34px rgba(0, 0, 0, 0.26),
        0 0 0 4px rgba(212, 164, 58, 0.08);
      transform: translateY(-2px);
    }

    .cr-menu-toggle {
      display: none;
      width: 42px;
      height: 42px;
      padding: 0;
      align-items: center;
      justify-content: center;
      border: 1px solid rgba(255, 255, 255, 0.16);
      border-radius: 12px;
      background: transparent;
      color: var(--cr-white);
      cursor: pointer;
    }

    .cr-menu-toggle span,
    .cr-menu-toggle span::before,
    .cr-menu-toggle span::after {
      display: block;
      width: 17px;
      height: 1px;
      background: currentColor;
      content: "";
      transition:
        top 180ms ease,
        transform 180ms ease,
        opacity 180ms ease;
    }

    .cr-menu-toggle span {
      position: relative;
    }

    .cr-menu-toggle span::before {
      position: absolute;
      top: -5px;
    }

    .cr-menu-toggle span::after {
      position: absolute;
      top: 5px;
    }

    .cr-nav.is-open .cr-menu-toggle span {
      background: transparent;
    }

    .cr-nav.is-open .cr-menu-toggle span::before {
      top: 0;
      transform: rotate(45deg);
    }

    .cr-nav.is-open .cr-menu-toggle span::after {
      top: 0;
      transform: rotate(-45deg);
    }

    /* =========================
       HERO
    ========================== */

    .cr-hero {
      position: relative;
      min-height: 880px;
      padding: 176px 0 175px;
      overflow: hidden;
      background:
        radial-gradient(
          circle at 82% 25%,
          rgba(90, 58, 121, 0.55),
          transparent 29%
        ),
        radial-gradient(
          circle at 68% 66%,
          rgba(135, 169, 140, 0.16),
          transparent 24%
        ),
        radial-gradient(
          circle at 84% 76%,
          rgba(212, 164, 58, 0.1),
          transparent 17%
        ),
        linear-gradient(
          135deg,
          #050506 0%,
          #09080c 50%,
          #150c1e 100%
        );
      color: var(--cr-white);
    }

    .cr-hero::before {
      position: absolute;
      inset: 0;
      background-image:
        linear-gradient(
          rgba(255, 255, 255, 0.018) 1px,
          transparent 1px
        ),
        linear-gradient(
          90deg,
          rgba(255, 255, 255, 0.018) 1px,
          transparent 1px
        );
      background-size: 92px 92px;
      content: "";
      mask-image: linear-gradient(to bottom, black, transparent 88%);
      opacity: 0.5;
      pointer-events: none;
    }

    .cr-hero::after {
      position: absolute;
      right: -8%;
      bottom: -320px;
      width: 75%;
      height: 590px;
      border: 1px solid rgba(255, 255, 255, 0.07);
      border-radius: 50%;
      box-shadow:
        0 0 110px rgba(90, 58, 121, 0.13),
        inset 0 0 90px rgba(135, 169, 140, 0.035);
      content: "";
      transform: rotate(-8deg);
      pointer-events: none;
    }

    .cr-hero-grid {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
      gap: 85px;
      align-items: center;
    }

    .cr-hero-title {
      max-width: 690px;
      font-size: clamp(56px, 6.1vw, 94px);
    }

    .cr-hero-title em {
      display: block;
      color: var(--cr-sage);
      font-style: italic;
    }

    .cr-hero-copy {
      max-width: 610px;
      margin: 30px 0 0;
      color: rgba(255, 255, 255, 0.66);
      font-size: 16px;
      line-height: 1.75;
    }

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

    .cr-hero-capabilities {
      display: grid;
      margin-top: 50px;
      padding-top: 24px;
      border-top: 1px solid rgba(255, 255, 255, 0.12);
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 10px;
    }

    .cr-capability-chip {
      display: inline-flex;
      width: 100%;
      min-height: 38px;
      padding: 1px 13px 0;
      align-items: center;
      justify-content: flex-start;
      gap: 8px;
      border: 1px solid rgba(255, 255, 255, 0.13);
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.035);
      color: rgba(255, 255, 255, 0.74);
      font-size: 9px;
      font-weight: 600;
      line-height: 1;
      letter-spacing: 0.07em;
      text-transform: uppercase;
      white-space: nowrap;
      transition:
        border-color 180ms ease,
        background-color 180ms ease,
        color 180ms ease,
        transform 180ms ease;
    }

    .cr-capability-chip::before {
      width: 5px;
      height: 5px;
      flex: 0 0 auto;
      border-radius: 50%;
      content: "";
      transform: translateY(1px);
    }

    .cr-capability-chip:nth-child(1)::before {
      background: #8b63ad;
      box-shadow: 0 0 12px rgba(139, 99, 173, 0.55);
    }

    .cr-capability-chip:nth-child(2)::before {
      background: #87a98c;
      box-shadow: 0 0 12px rgba(135, 169, 140, 0.48);
    }

    .cr-capability-chip:nth-child(3)::before {
      background: #d4a43a;
      box-shadow: 0 0 12px rgba(212, 164, 58, 0.48);
    }

    .cr-capability-chip:nth-child(4)::before {
      background: #aa8bc3;
      box-shadow: 0 0 12px rgba(170, 139, 195, 0.5);
    }

    .cr-capability-chip:nth-child(5)::before {
      background: #a5c0a9;
      box-shadow: 0 0 12px rgba(165, 192, 169, 0.48);
    }

    .cr-capability-chip:nth-child(6)::before {
      background: #e1bd68;
      box-shadow: 0 0 12px rgba(225, 189, 104, 0.48);
    }

    .cr-capability-chip:hover {
      border-color: rgba(212, 164, 58, 0.42);
      background: rgba(255, 255, 255, 0.075);
      color: var(--cr-white);
      transform: translateY(-2px);
    }

    .cr-hero-art {
      position: relative;
      min-height: 540px;
    }

    .cr-hero-glow {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 470px;
      height: 470px;
      border-radius: 50%;
      background:
        radial-gradient(
          circle at 50% 50%,
          rgba(90, 58, 121, 0.46),
          transparent 60%
        );
      filter: blur(26px);
      transform: translate(-50%, -50%);
    }

    .cr-hero-orbit {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 480px;
      height: 480px;
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-radius: 50%;
      transform: translate(-50%, -50%) rotate(-14deg);
      animation: cr-orbit-spin 24s linear infinite;
    }

    .cr-hero-orbit::before {
      position: absolute;
      top: 13%;
      right: 9%;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--cr-gold);
      box-shadow: 0 0 24px rgba(212, 164, 58, 0.85);
      content: "";
    }

    .cr-hero-orbit::after {
      position: absolute;
      right: 18%;
      bottom: 5%;
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: var(--cr-sage);
      box-shadow: 0 0 20px rgba(135, 169, 140, 0.85);
      content: "";
    }

    .cr-hero-emblem {
      position: absolute;
      top: 50%;
      left: 50%;
      width: min(390px, 88%);
      isolation: isolate;
      transform: translate(-50%, -50%);
    }

    .cr-hero-emblem::before,
    .cr-hero-emblem::after {
      position: absolute;
      z-index: -1;
      border-radius: 30%;
      content: "";
      pointer-events: none;
    }

    .cr-hero-emblem::before {
      inset: -24px;
      background:
        conic-gradient(
          from 0deg,
          transparent 0 19%,
          rgba(212, 164, 58, 0.68) 23%,
          transparent 28% 48%,
          rgba(135, 169, 140, 0.52) 53%,
          transparent 58% 78%,
          rgba(116, 82, 150, 0.72) 84%,
          transparent 90%
        );
      filter: blur(1px);
      opacity: 0.48;
      animation: cr-emblem-swirl 13s linear infinite;
    }

    .cr-hero-emblem::after {
      inset: -10px;
      border: 1px solid rgba(255, 255, 255, 0.08);
      box-shadow:
        0 0 42px rgba(90, 58, 121, 0.24),
        inset 0 0 32px rgba(255, 255, 255, 0.025);
      animation: cr-emblem-breathe 4.8s ease-in-out infinite;
    }

    .cr-hero-emblem img {
      position: relative;
      z-index: 1;
      width: 100%;
      border-radius: 27%;
      box-shadow:
        0 40px 90px rgba(0, 0, 0, 0.44),
        0 0 0 1px rgba(255, 255, 255, 0.07);
      transform: rotate(2.5deg);
      transition:
        transform 450ms ease,
        box-shadow 450ms ease;
    }

    .cr-hero-emblem:hover img {
      box-shadow:
        0 48px 110px rgba(0, 0, 0, 0.52),
        0 0 0 1px rgba(212, 164, 58, 0.18);
      transform: rotate(0deg) translateY(-6px) scale(1.012);
    }

    @keyframes cr-orbit-spin {
      from {
        transform: translate(-50%, -50%) rotate(-14deg);
      }

      to {
        transform: translate(-50%, -50%) rotate(346deg);
      }
    }

    @keyframes cr-emblem-swirl {
      to {
        transform: rotate(360deg);
      }
    }

    @keyframes cr-emblem-breathe {
      0%,
      100% {
        opacity: 0.62;
        transform: scale(0.985);
      }

      50% {
        opacity: 1;
        transform: scale(1.025);
      }
    }

    .cr-hero-transition {
      position: absolute;
      z-index: 4;
      right: -4%;
      bottom: -1px;
      left: -4%;
      height: 102px;
      border-radius: 50% 50% 0 0 / 100% 100% 0 0;
      background: var(--cr-warm-white);
    }

    /* =========================
       INTRO
    ========================== */

    .cr-intro {
      padding: 145px 0 126px;
      background:
        radial-gradient(
          circle at 88% 18%,
          rgba(135, 169, 140, 0.13),
          transparent 24%
        ),
        linear-gradient(180deg, var(--cr-warm-white), #f7f5f1);
    }

    .cr-intro-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.08fr) minmax(330px, 0.52fr);
      gap: 100px;
      align-items: end;
    }

    .cr-intro-title {
      max-width: 800px;
      color: var(--cr-black);
      font-size: clamp(48px, 5.6vw, 80px);
    }

    .cr-intro-title em {
      color: var(--cr-plum);
      font-style: italic;
    }

    .cr-intro-copy {
      margin: 0;
      color: var(--cr-gray-700);
      font-size: 15px;
      line-height: 1.8;
    }

    .cr-intro-copy strong {
      color: var(--cr-black);
    }

    /* =========================
       SERVICES
    ========================== */

    .cr-services {
      padding: 0 0 145px;
      background: #f7f5f1;
    }

    .cr-service-list {
      position: relative;
    }

    .cr-service {
      position: relative;
      display: grid;
      min-height: 230px;
      padding: 48px 0;
      overflow: hidden;
      grid-template-columns: 180px minmax(220px, 0.72fr) minmax(320px, 1fr);
      gap: 42px;
      align-items: center;
    }

    .cr-service::before {
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      height: 1px;
      background:
        linear-gradient(
          90deg,
          rgba(213, 213, 218, 0.95) 0%,
          rgba(213, 213, 218, 0.95) 38%,
          rgba(90, 58, 121, 0.7) 47%,
          rgba(135, 169, 140, 0.75) 52%,
          rgba(212, 164, 58, 0.75) 57%,
          rgba(213, 213, 218, 0.95) 66%,
          rgba(213, 213, 218, 0.95) 100%
        );
      background-size: 250% 100%;
      background-position: 100% 0;
      content: "";
      animation: cr-divider-glow 8s ease-in-out infinite;
    }

    .cr-service:last-child::after {
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      height: 1px;
      background: var(--cr-gray-300);
      content: "";
    }

    .cr-service-number {
      color: rgba(90, 58, 121, 0.12);
      font-family: "Playfair Display", Georgia, serif;
      font-size: clamp(82px, 9vw, 132px);
      font-weight: 600;
      line-height: 0.75;
      letter-spacing: -0.07em;
      transition:
        color 280ms ease,
        transform 280ms ease;
    }

    .cr-service:hover .cr-service-number {
      color: rgba(90, 58, 121, 0.23);
      transform: translateX(8px);
    }

    .cr-service h3 {
      margin: 0;
      color: var(--cr-black);
      font-family: "Playfair Display", Georgia, serif;
      font-size: clamp(38px, 3.4vw, 54px);
      font-weight: 600;
      line-height: 1;
      letter-spacing: -0.04em;
    }

    .cr-service p {
      max-width: 650px;
      margin: 0;
      color: var(--cr-gray-700);
      font-size: 14px;
      line-height: 1.85;
    }

    @keyframes cr-divider-glow {
      0%,
      18% {
        background-position: 100% 0;
      }

      50% {
        background-position: 0% 0;
      }

      82%,
      100% {
        background-position: -100% 0;
      }
    }

    /* =========================
       SELECTED WORK
    ========================== */

    .cr-work {
      padding: 138px 0 155px;
      background:
        radial-gradient(
          circle at 78% 8%,
          rgba(90, 58, 121, 0.11),
          transparent 24%
        ),
        var(--cr-black);
      color: var(--cr-white);
    }

    .cr-section-head {
      display: grid;
      margin-bottom: 74px;
      grid-template-columns: minmax(0, 1fr) 360px;
      gap: 70px;
      align-items: end;
    }

    .cr-section-head h2 {
      max-width: 720px;
      font-size: clamp(48px, 5.4vw, 78px);
    }

    .cr-section-head p {
      margin: 0;
      color: rgba(255, 255, 255, 0.54);
      font-size: 14px;
      line-height: 1.75;
    }

    .cr-project {
      display: grid;
      padding: 76px 0;
      border-top: 1px solid rgba(255, 255, 255, 0.12);
      grid-template-columns: minmax(270px, 0.58fr) minmax(0, 1.42fr);
      gap: 68px;
      align-items: center;
    }

    .cr-project:last-child {
      border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    }

    .cr-project-index {
      margin-bottom: 24px;
      color: var(--cr-gold);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: 0.18em;
      text-transform: uppercase;
    }

    .cr-project h3 {
      margin: 0;
      font-family: "Playfair Display", Georgia, serif;
      font-size: clamp(39px, 4.5vw, 64px);
      font-weight: 600;
      line-height: 1;
      letter-spacing: -0.04em;
    }

    .cr-project-copy {
      max-width: 430px;
      margin: 22px 0 0;
      color: rgba(255, 255, 255, 0.56);
      font-size: 14px;
      line-height: 1.75;
    }

    .cr-project-tags {
      display: flex;
      margin-top: 25px;
      flex-wrap: wrap;
      gap: 8px;
    }

    .cr-project-tags span {
      padding: 7px 10px;
      border: 1px solid rgba(255, 255, 255, 0.14);
      border-radius: 999px;
      color: rgba(255, 255, 255, 0.58);
      font-size: 8px;
      font-weight: 600;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      transition:
        border-color 180ms ease,
        color 180ms ease,
        background-color 180ms ease,
        transform 180ms ease;
    }

    .cr-project-tags span:hover {
      border-color: rgba(212, 164, 58, 0.55);
      background: rgba(212, 164, 58, 0.07);
      color: var(--cr-white);
      transform: translateY(-2px);
    }

    .cr-project-media {
      position: relative;
    }

    .cr-project-media::before {
      position: absolute;
      inset: -45px;
      background:
        radial-gradient(
          circle,
          rgba(90, 58, 121, 0.15),
          transparent 68%
        );
      content: "";
      pointer-events: none;
    }

    .cr-browser {
      position: relative;
      overflow: hidden;
      border: 1px solid rgba(255, 255, 255, 0.13);
      border-radius: 17px;
      background: #111114;
      box-shadow: 0 34px 80px rgba(0, 0, 0, 0.43);
      transition:
        transform 300ms ease,
        box-shadow 300ms ease,
        border-color 300ms ease;
    }

    .cr-browser:hover {
      border-color: rgba(212, 164, 58, 0.3);
      box-shadow: 0 46px 100px rgba(0, 0, 0, 0.54);
      transform: translateY(-7px);
    }

    .cr-browser-bar {
      position: relative;
      height: 36px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.08);
      background: #151518;
    }

    .cr-browser-bar::before {
      position: absolute;
      top: 14px;
      left: 15px;
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: #ef6a5b;
      box-shadow:
        14px 0 0 #e8ba4d,
        28px 0 0 #67c26f;
      content: "";
    }

    .cr-browser-image {
      position: relative;
      overflow: hidden;
      background: #0d0d0f;
    }

    .cr-browser-image img {
      width: 100%;
      transition: transform 550ms ease;
    }

    .cr-browser:hover .cr-browser-image img {
      transform: scale(1.012);
    }

    .cr-browser-tall .cr-browser-image {
      max-height: 690px;
    }

    .cr-browser-tall img {
      object-fit: cover;
      object-position: top center;
    }

    .cr-project-dual {
      display: grid;
      grid-template-columns: 1.08fr 0.92fr;
      gap: 18px;
      align-items: start;
    }

    .cr-project-dual .cr-browser:last-child {
      margin-top: 76px;
    }

    .cr-project-showcase {
      position: relative;
      display: grid;
      gap: 18px;
      align-items: start;
    }

    .cr-project-showcase-dual {
      grid-template-columns: minmax(0, 1.28fr) minmax(230px, 0.72fr);
    }

    .cr-project-showcase-dual .cr-browser:last-child {
      margin-top: 72px;
    }

    .cr-project-showcase-feature {
      grid-template-columns: minmax(0, 1.28fr) minmax(240px, 0.72fr);
    }

    .cr-project-showcase-stack {
      display: grid;
      gap: 18px;
    }

    .cr-browser-feature .cr-browser-image {
      max-height: 690px;
    }

    .cr-browser-secondary .cr-browser-image {
      max-height: 315px;
    }

    .cr-browser-feature img,
    .cr-browser-secondary img {
      width: 100%;
      object-fit: cover;
      object-position: top center;
    }

    .cr-browser-label {
      position: absolute;
      z-index: 3;
      right: 12px;
      bottom: 12px;
      padding: 7px 10px;
      border: 1px solid rgba(255, 255, 255, 0.13);
      border-radius: 999px;
      background: rgba(7, 7, 8, 0.8);
      color: rgba(255, 255, 255, 0.72);
      font-size: 8px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
    }


    /* =========================
       PORTFOLIO ENHANCEMENTS
    ========================== */

    .cr-project-proof {
      display: grid;
      max-width: 535px;
      margin-top: 24px;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 10px;
    }

    .cr-project-proof span {
      position: relative;
      overflow: hidden;
      min-height: 82px;
      padding: 17px 18px 15px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      border-radius: 15px;
      background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.048), rgba(255, 255, 255, 0.02));
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
      transition:
        transform 220ms ease,
        border-color 220ms ease,
        background-color 220ms ease,
        box-shadow 220ms ease;
    }

    .cr-project-proof span::before {
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      height: 2px;
      background: linear-gradient(90deg, var(--cr-plum), var(--cr-sage), var(--cr-gold));
      content: "";
      opacity: 0.72;
    }

    .cr-project-proof span:hover {
      border-color: rgba(212, 164, 58, 0.32);
      background: rgba(255, 255, 255, 0.06);
      box-shadow: 0 16px 34px rgba(0, 0, 0, 0.2);
      transform: translateY(-3px);
    }

    .cr-project-proof strong {
      display: block;
      color: var(--cr-white);
      font-size: 16px;
      font-weight: 800;
      line-height: 1.05;
      letter-spacing: -0.028em;
      overflow-wrap: normal;
      word-break: normal;
    }

    .cr-project-proof small {
      display: block;
      margin-top: 10px;
      color: rgba(255, 255, 255, 0.5);
      font-size: 8px;
      font-weight: 700;
      line-height: 1.45;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .cr-project-proof-results span:nth-child(1) {
      border-color: rgba(212, 164, 58, 0.28);
      background:
        radial-gradient(circle at 18% 0%, rgba(212, 164, 58, 0.18), transparent 45%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
    }

    .cr-project-proof-results span:nth-child(2) {
      border-color: rgba(116, 82, 150, 0.34);
      background:
        radial-gradient(circle at 18% 0%, rgba(116, 82, 150, 0.24), transparent 46%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
    }

    .cr-project-proof-results span:nth-child(3) {
      border-color: rgba(135, 169, 140, 0.32);
      background:
        radial-gradient(circle at 18% 0%, rgba(135, 169, 140, 0.2), transparent 45%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
    }

    .cr-browser::after {
      position: absolute;
      inset: 0;
      border-radius: inherit;
      background:
        linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.065) 38%, transparent 58%);
      content: "";
      opacity: 0;
      pointer-events: none;
      transform: translateX(-120%);
      transition:
        opacity 260ms ease,
        transform 720ms ease;
    }

    .cr-browser:hover::after {
      opacity: 1;
      transform: translateX(120%);
    }

    .cr-browser-label {
      transition:
        border-color 220ms ease,
        background-color 220ms ease,
        color 220ms ease,
        transform 220ms ease;
    }

    .cr-browser:hover .cr-browser-label {
      border-color: rgba(212, 164, 58, 0.42);
      background: rgba(7, 7, 8, 0.9);
      color: var(--cr-white);
      transform: translateY(-2px);
    }

    .cr-project-showcase-stack .cr-browser-secondary:nth-child(2) {
      transform: translateX(18px);
    }

    .cr-project-showcase-stack .cr-browser-secondary:nth-child(2):hover {
      transform: translateX(18px) translateY(-7px);
    }

    @media (max-width: 700px) {
      .cr-project-proof {
        max-width: none;
        grid-template-columns: 1fr;
      }

      .cr-project-proof span {
        min-height: 0;
      }

      .cr-project-showcase-stack .cr-browser-secondary:nth-child(2),
      .cr-project-showcase-stack .cr-browser-secondary:nth-child(2):hover {
        transform: none;
      }
    }


    /* =========================
       PORTFOLIO LIGHTBOX
    ========================== */

    .cr-browser-image img {
      cursor: zoom-in;
    }

    .cr-lightbox {
      position: fixed;
      z-index: 5000;
      inset: 0;
      display: none;
      padding: 26px;
      background:
        radial-gradient(circle at 10% 22%, rgba(90, 58, 121, 0.42), transparent 31%),
        radial-gradient(circle at 89% 76%, rgba(135, 169, 140, 0.18), transparent 28%),
        radial-gradient(circle at 74% 10%, rgba(212, 164, 58, 0.09), transparent 20%),
        rgba(4, 4, 6, 0.94);
      backdrop-filter: blur(22px) saturate(115%);
      -webkit-backdrop-filter: blur(22px) saturate(115%);
      opacity: 0;
      transition: opacity 220ms ease;
    }

    .cr-lightbox.is-open {
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 1;
    }

    .cr-lightbox-dialog {
      position: relative;
      display: flex;
      width: min(1480px, 100%);
      height: min(940px, calc(100vh - 52px));
      overflow: hidden;
      flex-direction: column;
      border: 1px solid rgba(255, 255, 255, 0.14);
      border-radius: 26px;
      background:
        radial-gradient(circle at 6% 0%, rgba(90, 58, 121, 0.18), transparent 29%),
        radial-gradient(circle at 97% 100%, rgba(135, 169, 140, 0.08), transparent 25%),
        linear-gradient(145deg, rgba(14, 12, 18, 0.98), rgba(7, 7, 8, 0.99));
      box-shadow:
        0 44px 140px rgba(0, 0, 0, 0.72),
        0 0 0 1px rgba(212, 164, 58, 0.04),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
      transform: translateY(12px) scale(0.99);
      transition: transform 260ms cubic-bezier(.2,.8,.2,1);
    }

    .cr-lightbox.is-open .cr-lightbox-dialog {
      transform: translateY(0) scale(1);
    }

    .cr-lightbox-dialog::before {
      position: absolute;
      z-index: 5;
      top: 0;
      right: 24px;
      left: 24px;
      height: 2px;
      border-radius: 999px;
      background: linear-gradient(90deg, transparent 0%, rgba(90, 58, 121, 0.95) 18%, rgba(135, 169, 140, 0.95) 51%, rgba(212, 164, 58, 0.95) 82%, transparent 100%);
      content: "";
      box-shadow: 0 0 22px rgba(212, 164, 58, 0.16);
    }

    .cr-lightbox-head {
      position: relative;
      z-index: 3;
      display: flex;
      min-height: 92px;
      padding: 0 24px 0 22px;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.09);
      background: rgba(7, 7, 8, 0.58);
      color: var(--cr-white);
      backdrop-filter: blur(18px);
      -webkit-backdrop-filter: blur(18px);
    }

    .cr-lightbox-brand {
      display: flex;
      min-width: 0;
      align-items: center;
      gap: 14px;
    }

    .cr-lightbox-brandmark {
      width: 46px;
      height: 46px;
      flex: 0 0 auto;
      border-radius: 13px;
      box-shadow: 0 10px 30px rgba(90, 58, 121, 0.28), 0 0 0 1px rgba(255, 255, 255, 0.08);
    }

    .cr-lightbox-heading { min-width: 0; }

    .cr-lightbox-kicker {
      display: block;
      margin-bottom: 3px;
      color: var(--cr-gold);
      font-size: 8px;
      font-weight: 800;
      line-height: 1.2;
      letter-spacing: 0.18em;
      text-transform: uppercase;
    }

    .cr-lightbox-title {
      overflow: hidden;
      margin: 0;
      color: var(--cr-white);
      font-family: "Playfair Display", Georgia, serif;
      font-size: clamp(19px, 2vw, 25px);
      font-weight: 600;
      line-height: 1.12;
      letter-spacing: -0.025em;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .cr-lightbox-meta {
      display: block;
      margin-top: 5px;
      overflow: hidden;
      color: rgba(255, 255, 255, 0.42);
      font-size: 8px;
      font-weight: 600;
      letter-spacing: 0.08em;
      text-overflow: ellipsis;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .cr-lightbox-actions {
      display: flex;
      flex: 0 0 auto;
      align-items: center;
      gap: 12px;
    }

    .cr-lightbox-hint {
      display: inline-flex;
      min-height: 34px;
      padding: 0 13px;
      align-items: center;
      gap: 8px;
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.035);
      color: rgba(255, 255, 255, 0.48);
      font-size: 8px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .cr-lightbox-hint::before {
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: var(--cr-sage);
      box-shadow: 0 0 12px rgba(135, 169, 140, 0.65);
      content: "";
    }

    .cr-lightbox-close {
      position: relative;
      display: inline-flex;
      width: 46px;
      height: 46px;
      flex: 0 0 auto;
      align-items: center;
      justify-content: center;
      border: 1px solid rgba(255, 255, 255, 0.16);
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.045);
      color: var(--cr-white);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
      cursor: pointer;
      transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
    }

    .cr-lightbox-close:hover {
      border-color: rgba(212, 164, 58, 0.72);
      background: rgba(212, 164, 58, 0.1);
      box-shadow: 0 0 24px rgba(212, 164, 58, 0.1);
      transform: rotate(4deg) scale(1.04);
    }

    .cr-lightbox-close::before, .cr-lightbox-close::after {
      position: absolute;
      width: 18px;
      height: 1.5px;
      border-radius: 999px;
      background: currentColor;
      content: "";
    }
    .cr-lightbox-close::before { transform: rotate(45deg); }
    .cr-lightbox-close::after { transform: rotate(-45deg); }

    .cr-lightbox-stage {
      position: relative;
      flex: 1;
      overflow: auto;
      padding: 34px;
      background:
        linear-gradient(rgba(255, 255, 255, 0.016) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.016) 1px, transparent 1px),
        radial-gradient(circle at 50% 0%, rgba(90, 58, 121, 0.13), transparent 35%),
        #09090b;
      background-size: 74px 74px, 74px 74px, auto, auto;
      overscroll-behavior: contain;
      scrollbar-color: rgba(212, 164, 58, 0.38) rgba(255, 255, 255, 0.04);
      scrollbar-width: thin;
    }

    .cr-lightbox-stage::-webkit-scrollbar { width: 9px; }
    .cr-lightbox-stage::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.035); }
    .cr-lightbox-stage::-webkit-scrollbar-thumb {
      border: 2px solid #09090b;
      border-radius: 999px;
      background: linear-gradient(var(--cr-gold), var(--cr-plum));
    }

    .cr-lightbox-canvas {
      position: relative;
      width: min(100%, 1220px);
      margin: 0 auto;
      overflow: hidden;
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 18px;
      background: var(--cr-warm-white);
      box-shadow: 0 26px 90px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.025);
    }

    .cr-lightbox-browserbar {
      position: sticky;
      z-index: 2;
      top: 0;
      display: flex;
      min-height: 42px;
      padding: 0 14px;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.08);
      background: rgba(16, 16, 19, 0.96);
      color: rgba(255, 255, 255, 0.48);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
    }

    .cr-lightbox-dots { display: flex; align-items: center; gap: 6px; }
    .cr-lightbox-dots span { width: 7px; height: 7px; border-radius: 50%; background: #ef6a5b; }
    .cr-lightbox-dots span:nth-child(2) { background: #e8ba4d; }
    .cr-lightbox-dots span:nth-child(3) { background: #67c26f; }

    .cr-lightbox-browser-url {
      overflow: hidden;
      font-size: 8px;
      font-weight: 600;
      letter-spacing: 0.06em;
      text-overflow: ellipsis;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .cr-lightbox-image-wrap { width: 100%; margin: 0 auto; background: var(--cr-warm-white); }
    .cr-lightbox-image { width: 100%; height: auto; border-radius: 0; box-shadow: none; cursor: default; }

    .cr-lightbox-foot {
      display: grid;
      min-height: 54px;
      padding: 0 22px;
      grid-template-columns: 1fr auto 1fr;
      gap: 18px;
      align-items: center;
      border-top: 1px solid rgba(255, 255, 255, 0.08);
      background:
        radial-gradient(circle at 0% 50%, rgba(90, 58, 121, 0.22), transparent 26%),
        radial-gradient(circle at 100% 50%, rgba(135, 169, 140, 0.1), transparent 24%),
        #080809;
      color: rgba(255, 255, 255, 0.34);
      font-size: 7px;
      font-weight: 700;
      letter-spacing: 0.11em;
      text-transform: uppercase;
    }

    .cr-lightbox-foot-center { color: rgba(255, 255, 255, 0.5); text-align: center; }
    .cr-lightbox-foot-right { color: var(--cr-gold); text-align: right; }
    body.cr-lightbox-open { overflow: hidden; }

    @media (max-width: 700px) {
      .cr-lightbox { padding: 9px; }
      .cr-lightbox-dialog { height: calc(100dvh - 18px); border-radius: 18px; }
      .cr-lightbox-dialog::before { right: 14px; left: 14px; }
      .cr-lightbox-head { min-height: 76px; padding: 0 13px; gap: 12px; }
      .cr-lightbox-brand { gap: 10px; }
      .cr-lightbox-brandmark { width: 38px; height: 38px; border-radius: 10px; }
      .cr-lightbox-kicker { font-size: 6.5px; }
      .cr-lightbox-title { max-width: 190px; font-size: 17px; }
      .cr-lightbox-meta { max-width: 190px; font-size: 6.5px; }
      .cr-lightbox-hint { display: none; }
      .cr-lightbox-close { width: 40px; height: 40px; }
      .cr-lightbox-stage { padding: 12px; }
      .cr-lightbox-canvas { border-radius: 12px; }
      .cr-lightbox-browserbar { min-height: 36px; padding: 0 10px; }
      .cr-lightbox-browser-url { max-width: 180px; font-size: 6.5px; }
      .cr-lightbox-foot { min-height: 48px; padding: 8px 13px; grid-template-columns: 1fr auto; gap: 8px 12px; font-size: 6px; }
      .cr-lightbox-foot-center { text-align: right; }
      .cr-lightbox-foot-right { display: none; }
    }
    /* =========================
       ABOUT
    ========================== */

    .cr-about {
      position: relative;
      padding: 150px 0;
      overflow: hidden;
      background:
        radial-gradient(
          circle at 86% 20%,
          rgba(90, 58, 121, 0.13),
          transparent 25%
        ),
        linear-gradient(180deg, var(--cr-warm-white), #eeeeef);
    }

    .cr-about-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.02fr) minmax(380px, 0.58fr);
      gap: 95px;
      align-items: center;
    }

    .cr-about-title {
      max-width: 790px;
      color: var(--cr-black);
      font-size: clamp(46px, 5.4vw, 78px);
    }

    .cr-about-title em {
      color: var(--cr-plum);
      font-style: italic;
    }

    .cr-about-card {
      position: relative;
      padding: 36px;
      overflow: hidden;
      border: 1px solid rgba(44, 44, 44, 0.09);
      border-radius: 22px;
      background:
        linear-gradient(
          145deg,
          rgba(255, 255, 255, 0.86),
          rgba(255, 255, 255, 0.55)
        );
      box-shadow: 0 26px 70px rgba(44, 44, 44, 0.07);
      backdrop-filter: blur(12px);
      transition:
        transform 250ms ease,
        box-shadow 250ms ease;
    }

    .cr-about-card::before {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 4px;
      background:
        linear-gradient(
          90deg,
          var(--cr-plum),
          var(--cr-sage),
          var(--cr-gold)
        );
      content: "";
    }

    .cr-about-card::after {
      position: absolute;
      top: -65px;
      right: -65px;
      width: 150px;
      height: 150px;
      border: 1px solid rgba(90, 58, 121, 0.11);
      border-radius: 50%;
      content: "";
    }

    .cr-about-card:hover {
      box-shadow: 0 34px 90px rgba(44, 44, 44, 0.11);
      transform: translateY(-6px);
    }

    .cr-about-kicker {
      position: relative;
      z-index: 2;
      display: block;
      margin-bottom: 18px;
      color: var(--cr-plum);
      font-size: 9px;
      font-weight: 700;
      letter-spacing: 0.18em;
      text-transform: uppercase;
    }

    .cr-about-card h3 {
      position: relative;
      z-index: 2;
      max-width: 380px;
      margin: 0 0 20px;
      color: var(--cr-black);
      font-family: "Playfair Display", Georgia, serif;
      font-size: 31px;
      font-weight: 600;
      line-height: 1.08;
      letter-spacing: -0.03em;
    }

    .cr-about-card p {
      position: relative;
      z-index: 2;
      margin: 0;
      color: var(--cr-gray-700);
      font-size: 14px;
      line-height: 1.8;
    }

    .cr-about-card p + p {
      margin-top: 17px;
    }

    .cr-about-values {
      position: relative;
      z-index: 2;
      display: grid;
      margin-top: 26px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .cr-about-value {
      display: flex;
      min-height: 42px;
      padding: 0 13px;
      align-items: center;
      gap: 9px;
      border: 1px solid rgba(44, 44, 44, 0.08);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.48);
      color: var(--cr-gray-700);
      font-size: 8px;
      font-weight: 700;
      letter-spacing: 0.065em;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .cr-about-value::before {
      width: 6px;
      height: 6px;
      flex: 0 0 auto;
      border-radius: 50%;
      background: var(--cr-sage);
      content: "";
    }

    .cr-about-value:nth-child(2)::before {
      background: var(--cr-gold);
    }

    .cr-about-value:nth-child(3)::before {
      background: var(--cr-plum);
    }

    .cr-about-value:nth-child(4)::before {
      background: var(--cr-charcoal);
    }

    /* =========================
       CONTACT
    ========================== */

    .cr-contact {
      position: relative;
      padding: 150px 0 0;
      overflow: hidden;
      background:
        radial-gradient(
          circle at 10% 30%,
          rgba(90, 58, 121, 0.37),
          transparent 29%
        ),
        radial-gradient(
          circle at 90% 73%,
          rgba(135, 169, 140, 0.13),
          transparent 24%
        ),
        var(--cr-black);
      color: var(--cr-white);
    }

    .cr-contact::before {
      position: absolute;
      top: -405px;
      left: 50%;
      width: 950px;
      height: 690px;
      border: 1px solid rgba(255, 255, 255, 0.065);
      border-radius: 50%;
      content: "";
      transform: translateX(-50%);
    }

    .cr-contact-inner {
      position: relative;
      z-index: 2;
      text-align: center;
    }

    .cr-contact-title {
      max-width: 920px;
      margin: 0 auto;
      font-size: clamp(54px, 7.2vw, 102px);
    }

    .cr-contact-title em {
      color: var(--cr-sage);
      font-style: italic;
    }

    .cr-contact-copy {
      max-width: 750px;
      margin: 31px auto 0;
      color: rgba(255, 255, 255, 0.6);
      font-size: 15px;
      line-height: 1.78;
      text-wrap: balance;
    }

    .cr-contact-action {
      margin-top: 36px;
    }

    .cr-contact-email {
      position: relative;
      display: inline-block;
      padding-bottom: 9px;
      color: var(--cr-white);
      font-family: "Playfair Display", Georgia, serif;
      font-size: clamp(23px, 2.8vw, 38px);
      font-weight: 600;
      line-height: 1.2;
      text-decoration: none;
      transition: color 180ms ease;
    }

    .cr-contact-email::after {
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      height: 1px;
      background: var(--cr-gold);
      content: "";
      transition:
        height 180ms ease,
        background-color 180ms ease;
    }

    .cr-contact-email:hover {
      color: var(--cr-gold);
    }

    .cr-contact-email:hover::after {
      height: 2px;
      background: var(--cr-sage);
    }

    /* =========================
       FOOTER
    ========================== */

    .cr-footer {
      width: 100%;
      margin-top: 135px;
      border-top: 1px solid rgba(255, 255, 255, 0.1);
    }

    .cr-footer-inner {
      display: grid;
      min-height: 86px;
      grid-template-columns: 1fr auto 1fr;
      gap: 24px;
      align-items: center;
      color: rgba(255, 255, 255, 0.42);
      font-size: 9px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .cr-footer-center {
      text-align: center;
    }

    .cr-footer-right {
      text-align: right;
    }

    .cr-footer a {
      color: rgba(255, 255, 255, 0.45);
      text-decoration: none;
      transition: color 180ms ease;
    }

    .cr-footer a:hover {
      color: var(--cr-white);
    }

    /* =========================
       ACCESSIBILITY
    ========================== */

    .cr-skip-link {
      position: fixed;
      z-index: 2000;
      top: 12px;
      left: 12px;
      padding: 11px 15px;
      border-radius: 9px;
      background: var(--cr-gold);
      color: var(--cr-black);
      font-size: 12px;
      font-weight: 700;
      text-decoration: none;
      transform: translateY(-160%);
      transition: transform 180ms ease;
    }

    .cr-skip-link:focus {
      transform: translateY(0);
    }

    :focus-visible {
      outline: 2px solid var(--cr-gold);
      outline-offset: 4px;
    }

    /* =========================
       RESPONSIVE
    ========================== */

    @media (max-width: 1080px) {
      .cr-hero-grid {
        grid-template-columns: minmax(0, 1fr) minmax(320px, 0.68fr);
        gap: 45px;
      }

      .cr-hero-art {
        min-height: 460px;
      }

      .cr-hero-orbit {
        width: 420px;
        height: 420px;
      }

      .cr-intro-grid,
      .cr-about-grid {
        grid-template-columns: 1fr;
        gap: 48px;
      }

      .cr-about-card {
        max-width: 650px;
      }

      .cr-service {
        grid-template-columns: 150px minmax(210px, 0.68fr) minmax(280px, 1fr);
        gap: 28px;
      }

      .cr-project {
        grid-template-columns: 1fr;
        gap: 42px;
      }

      .cr-project-copy {
        max-width: 650px;
      }
    }

    @media (max-width: 900px) {
      .cr-hero-capabilities {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .cr-service {
        grid-template-columns: 125px minmax(190px, 0.65fr) minmax(260px, 1fr);
      }

      .cr-service-number {
        font-size: 92px;
      }
    }

    @media (max-width: 820px) {
      :root {
        --cr-page-padding: 22px;
      }

      .cr-nav-links {
        gap: 18px;
      }

      .cr-nav-link {
        font-size: 11px;
      }

      .cr-hero {
        min-height: auto;
        padding: 150px 0 145px;
      }

      .cr-hero-grid {
        grid-template-columns: 1fr;
      }

      .cr-hero-content {
        max-width: 700px;
      }

      .cr-hero-art {
        min-height: 450px;
      }

      .cr-section-head {
        grid-template-columns: 1fr;
        gap: 24px;
      }

      .cr-section-head p {
        max-width: 600px;
      }

      .cr-service {
        grid-template-columns: 110px minmax(180px, 0.6fr) minmax(240px, 1fr);
      }
    }

    @media (max-width: 700px) {
      html {
        scroll-padding-top: 90px;
      }

      .cr-nav-wrap {
        top: 10px;
      }

      .cr-nav {
        width: min(
          var(--cr-content-width),
          calc(100% - (var(--cr-page-padding) * 2))
        );
        min-height: 58px;
        border-radius: 15px;
      }

      .cr-brand img {
        width: 38px;
        height: 38px;
        border-radius: 10px;
      }

      .cr-brand-name {
        font-size: 13px;
      }

      .cr-brand-label {
        display: none;
      }

      .cr-menu-toggle {
        display: inline-flex;
      }

      .cr-nav-links {
        position: absolute;
        top: calc(100% + 9px);
        right: 0;
        left: 0;
        display: none;
        padding: 15px;
        border: 1px solid rgba(255, 255, 255, 0.13);
        border-radius: 15px;
        background: rgba(7, 7, 8, 0.98);
        box-shadow: 0 26px 70px rgba(0, 0, 0, 0.48);
        flex-direction: column;
        align-items: stretch;
        gap: 0;
      }

      .cr-nav.is-open .cr-nav-links {
        display: flex;
      }

      .cr-nav-link {
        padding: 13px 7px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.075);
        font-size: 12px;
      }

      .cr-nav-link::after {
        display: none;
      }

      .cr-nav-cta {
        margin-top: 12px;
      }

      .cr-hero {
        padding: 132px 0 125px;
      }

      .cr-hero-title {
        max-width: 490px;
        font-size: clamp(47px, 13.4vw, 64px);
        line-height: 1.02;
        letter-spacing: -0.044em;
      }

      .cr-hero-title em {
        margin-top: 4px;
      }

      .cr-hero-copy {
        max-width: 520px;
        font-size: 15px;
      }

      .cr-hero-actions {
        align-items: stretch;
        flex-direction: column;
      }

      .cr-button {
        width: 100%;
      }

      .cr-hero-capabilities {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
      }

      .cr-capability-chip {
        min-height: 40px;
        padding: 1px 10px 0;
        font-size: 8px;
        white-space: normal;
      }

      .cr-hero-art {
        min-height: 355px;
      }

      .cr-hero-emblem {
        width: min(295px, 82%);
      }

      .cr-hero-orbit {
        width: 340px;
        height: 340px;
      }

      .cr-hero-transition {
        height: 58px;
      }

      .cr-intro,
      .cr-about,
      .cr-contact {
        padding-top: 105px;
        padding-bottom: 105px;
      }

      .cr-intro-title,
      .cr-about-title {
        font-size: clamp(42px, 12.5vw, 60px);
      }

      .cr-services {
        padding-bottom: 105px;
      }

      .cr-service {
        min-height: 0;
        padding: 46px 0;
        grid-template-columns: 90px minmax(0, 1fr);
        gap: 12px 22px;
        align-items: center;
      }

      .cr-service-number {
        grid-row: 1 / span 2;
        align-self: start;
        padding-top: 5px;
        font-size: 76px;
        line-height: 0.75;
      }

      .cr-service h3 {
        font-size: 42px;
      }

      .cr-service p {
        grid-column: 2;
      }

      .cr-work {
        padding: 105px 0;
      }

      .cr-section-head {
        margin-bottom: 38px;
      }

      .cr-section-head h2 {
        font-size: clamp(44px, 12.5vw, 62px);
      }

      .cr-project {
        padding: 58px 0;
      }

      .cr-project h3 {
        font-size: clamp(39px, 11.5vw, 56px);
      }

      .cr-project-dual {
        grid-template-columns: 1fr;
      }

      .cr-project-dual .cr-browser:last-child {
        margin-top: 0;
      }

      .cr-project-showcase-dual,
      .cr-project-showcase-feature {
        grid-template-columns: 1fr;
      }

      .cr-project-showcase-dual .cr-browser:last-child {
        margin-top: 0;
      }

      .cr-project-showcase-stack {
        grid-template-columns: 1fr;
      }

      .cr-browser-feature .cr-browser-image,
      .cr-browser-secondary .cr-browser-image {
        max-height: 510px;
      }

      .cr-browser {
        border-radius: 12px;
      }

      .cr-browser-tall .cr-browser-image {
        max-height: 510px;
      }

      .cr-about-card {
        padding: 29px 25px 25px;
      }

      .cr-about-card h3 {
        font-size: 28px;
      }

      .cr-about-values {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .cr-about-value {
        min-height: 44px;
        padding: 0 10px;
        font-size: 7px;
      }

      .cr-contact {
        padding-bottom: 0;
      }

      .cr-contact-title {
        font-size: clamp(48px, 14vw, 68px);
      }

      .cr-contact-copy {
        max-width: 540px;
        font-size: 14px;
      }

      .cr-footer {
        margin-top: 100px;
      }

      .cr-footer-inner {
        display: grid;
        min-height: auto;
        padding: 27px 0 31px;
        grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
        gap: 19px 16px;
        align-items: start;
        font-size: 7px;
        line-height: 1.55;
      }

      .cr-footer-center {
        text-align: right;
      }

      .cr-footer-right {
        grid-column: 1 / -1;
        text-align: center;
      }
    }

    @media (max-width: 480px) {
      :root {
        --cr-page-padding: 17px;
      }

      .cr-brand-text {
        display: none;
      }

      .cr-hero-title {
        max-width: 350px;
        font-size: clamp(44px, 13.8vw, 56px);
      }

      .cr-capability-chip {
        min-height: 42px;
        font-size: 7.5px;
        letter-spacing: 0.05em;
      }

      .cr-service {
        grid-template-columns: 72px minmax(0, 1fr);
        gap: 12px 18px;
      }

      .cr-service-number {
        font-size: 62px;
      }

      .cr-service h3 {
        font-size: 38px;
      }

      .cr-about-values {
        grid-template-columns: 1fr;
      }

      .cr-about-value {
        font-size: 8px;
      }

      .cr-contact-email {
        font-size: 21px;
      }

      .cr-footer-inner {
        grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
        gap: 18px 10px;
        font-size: 6.5px;
        letter-spacing: 0.055em;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      html {
        scroll-behavior: auto;
      }

      *,
      *::before,
      *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
      }

      .cr-service::before {
        animation: none;
        background: var(--cr-gray-300);
      }

      .cr-hero-orbit,
      .cr-hero-emblem::before,
      .cr-hero-emblem::after {
        animation: none;
      }
    }
    
@media (max-width: 700px) {
  .cr-hero-title {
    max-width: none;
    font-size: clamp(42px, 10.9vw, 53px);
    line-height: 0.98;
    letter-spacing: -0.052em;
    text-wrap: normal;
  }

  .cr-hero-title > span,
  .cr-hero-title > em {
    display: block;
    width: max-content;
    max-width: 100%;
    white-space: nowrap;
  }

  .cr-hero-title > em {
    margin-top: 8px;
    line-height: 1;
  }
}

@media (max-width: 390px) {
  .cr-hero-title {
    font-size: clamp(38px, 10.6vw, 43px);
  }
}

@media (max-width: 700px) {
  .cr-button-primary span[aria-hidden="true"] {
    display: none;
  }

  .cr-button-primary::after {
    content: "\2197\FE0E";
    margin-left: 10px;
    color: currentColor;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1;
    transform: translateY(-1px);
  }
}

/* Portfolio lightbox - remove white corner bleed */
.cr-lightbox-canvas {
  background: #101013;
  overflow: hidden;
  isolation: isolate;
}

.cr-lightbox-browserbar {
  border-radius: 17px 17px 0 0;
  overflow: hidden;
}

.cr-lightbox-image-wrap {
  position: relative;
  z-index: 1;
  background: var(--cr-warm-white);
}

.cr-lightbox-canvas {
  transform: translateZ(0);
}

/* =========================================
   MOBILE PROJECT PROOF CARDS -> COMPACT CHIPS
========================================= */

@media (max-width: 700px) {

  .cr-project-proof {
    display: flex;
    width: 100%;
    max-width: none;
    margin-top: 20px;
    flex-wrap: wrap;
    gap: 8px;
  }

  .cr-project-proof span {
    display: inline-flex;
    width: auto;
    min-height: 0;
    padding: 9px 12px;
    align-items: center;
    gap: 7px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.035);
    box-shadow: none;
    white-space: nowrap;
  }

  /* Replace top gradient bar with small brand dot */
  .cr-project-proof span::before {
    position: static;
    width: 5px;
    height: 5px;
    flex: 0 0 5px;
    border-radius: 50%;
    background: var(--cr-sage);
    box-shadow: 0 0 10px rgba(135, 169, 140, 0.45);
    opacity: 1;
  }

  .cr-project-proof span:nth-child(2)::before {
    background: var(--cr-plum-light);
    box-shadow: 0 0 10px rgba(116, 82, 150, 0.5);
  }

  .cr-project-proof span:nth-child(3)::before {
    background: var(--cr-gold);
    box-shadow: 0 0 10px rgba(212, 164, 58, 0.5);
  }

  .cr-project-proof strong {
    display: inline;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.01em;
  }

  .cr-project-proof small {
    display: inline;
    margin-top: 0;
    color: rgba(255, 255, 255, 0.46);
    font-size: 6.5px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.065em;
  }

  .cr-project-proof span:hover {
    box-shadow: none;
    transform: none;
  }
}

/* =========================
   UTILITY
========================== */
.cr-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Final Backdrova proof card polish */
.cr-project-proof-card strong{
  letter-spacing:-0.035em;
}

/* Final Paradise Palms proof-card polish */
.cr-project-proof-palms span:nth-child(1) {
  border-color: rgba(135, 169, 140, 0.34);
  background:
    radial-gradient(circle at 18% 0%, rgba(135, 169, 140, 0.22), transparent 45%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
}
.cr-project-proof-palms span:nth-child(2) {
  border-color: rgba(212, 164, 58, 0.30);
  background:
    radial-gradient(circle at 18% 0%, rgba(212, 164, 58, 0.18), transparent 45%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
}
.cr-project-proof-palms span:nth-child(3) {
  border-color: rgba(116, 82, 150, 0.36);
  background:
    radial-gradient(circle at 18% 0%, rgba(116, 82, 150, 0.22), transparent 46%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
}
