---
title: Drupal Development
description: Home  /  Services  /  Drupal Development  Available Now · 50+ Sites Deployed  Drupal App  Development  Company  Enterprise CMS · Websites · Portals    Miracuves
url: https://miracuves.com/service/drupal-app-development
date_modified: 2026-08-10
author: miracuves
language: en_US
---

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900&family=JetBrains+Mono:wght@400;500;600&display=swap');

  /* Redesign variables - Corporate brand dark & red glass accents */
  .ta {
    --red: #a70d2a;
    /* Corporate primary red */
    --red-d: #990000;
    /* Corporate alternate red */
    --red-l: #a70d2a;
    /* Light brand accent */
    --ra: rgba(167, 13, 42, 0.06);
    /* Transparent brand primary */
    --rb: rgba(167, 13, 42, 0.16);
    --rc-glow: rgba(167, 13, 42, 0.12);
    --rg: linear-gradient(135deg, #a70d2a 0%, #990000 100%);
    /* Strict primary-alternate red gradient */
    --green: #00E676;
    /* Vibrant Emerald Green */
    --gl: #26A69A;
    /* Beautiful Clean Teal */
    --teal: #00F3FF;
    /* High-fidelity Neon Cyan */

    /* High-end obsidian dark scales */
    --dk0: #030008;
    /* Obsidian deep background */
    --dk1: #07040f;
    /* Sleek card background */
    --dk2: #0c081a;
    /* Elevated container dark */
    --dk3: #120e26;
    /* Saturated card base */
    --dk4: #191433;
    /* Modern highlight dark */

    /* Elevated glassmorphism */
    --card: rgba(8, 4, 15, 0.76);
    /* Frosted premium glass */
    --cardh: rgba(14, 8, 25, 0.88);
    /* Hover glass brightness */
    --l0: #ffffff;
    --l1: #fafafd;
    --l2: #f2f1f6;
    --l3: #e8e7ee;

    /* Text and borders */
    --dx1: #ffffff;
    --dx2: rgba(255, 255, 255, 0.95);
    --dx3: rgba(255, 255, 255, 0.65);
    --dx4: rgba(255, 255, 255, 0.35);
    --lx1: #0c0716;
    --lx2: #322d3e;
    --lx3: #5f5a70;
    --lx4: #928ea3;

    /* High fidelity grid borders */
    --bd: rgba(255, 255, 255, 0.06);
    --bd2: rgba(255, 255, 255, 0.12);
    --bd3: rgba(255, 255, 255, 0.20);
    --bl: rgba(12, 7, 22, 0.04);
    --bl2: rgba(12, 7, 22, 0.08);

    /* Animations */
    --f: 'Montserrat', -apple-system, sans-serif;
    --fm: 'JetBrains Mono', monospace;
    --r20: 20px;
    --r14: 14px;
    --r10: 10px;
    --r6: 6px;
    --r100: 100px;
    --spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    /* Fluid elastic bounce */
    --ease: cubic-bezier(0.16, 1, 0.3, 1);
  }

  .ta,
  .ta * {
    box-sizing: border-box !important;
  }

  .ta {
    font-family: var(--f) !important;
    -webkit-font-smoothing: antialiased;
    font-size: 15px;
    line-height: 1.7;
    color: var(--lx2);
    width: 100%;
    overflow-x: hidden;
    background: var(--l0);
  }

  .ta h1,
  .ta h2,
  .ta h3,
  .ta h4,
  .ta p,
  .ta ul,
  .ta ol {
    margin: 0;
    padding: 0;
  }

  .ta ul,
  .ta ol {
    list-style: none;
  }

  .ta a {
    text-decoration: none !important;
    color: inherit;
  }

  .ta img {
    max-width: 100%;
    display: block;
  }

  /* Layout & Grid systems */
  .ta .W {
    max-width: 1260px;
    margin: 0 auto;
    padding: 0 40px;
  }

  .ta .S {
    padding: 120px 0;
    position: relative;
  }

  .ta .SM {
    padding: 75px 0;
    position: relative;
  }

  .ta .g2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
  }

  .ta .g3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
  }

  .ta .g4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
  }

  .ta .g5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0;
  }

  .ta .sp5050 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 88px;
    align-items: start;
  }

  .ta .sp5050a {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 96px;
    align-items: start;
  }

  .ta .hi>*,
  .ta .sp5050>*,
  .ta .sp5050a>*,
  .ta .two-col>* {
    min-width: 0;
  }

  /* Skins and Ambient backgrounds */
  .ta .sD {
    background: var(--dk1);
  }

  .ta .sD2 {
    background: var(--dk2);
  }

  .ta .sW {
    background: var(--l0);
    position: relative;
  }

  .ta .sG {
    background: var(--l1);
    position: relative;
  }

  .ta .sR {
    background: var(--red-d);
    position: relative;
  }

  .ta .sD h2,
  .ta .sD h3,
  .ta .sD h4,
  .ta .sD2 h2,
  .ta .sD2 h3,
  .ta .sD2 h4 {
    color: var(--dx1);
  }

  .ta .sD p,
  .ta .sD2 p {
    color: var(--dx2);
  }

  .ta .sD .mu,
  .ta .sD2 .mu {
    color: var(--dx3);
  }

  .ta .sW h2,
  .ta .sW h3,
  .ta .sW h4,
  .ta .sG h2,
  .ta .sG h3,
  .ta .sG h4 {
    color: var(--lx1);
  }

  .ta .sW p,
  .ta .sG p {
    color: var(--lx2);
  }

  .ta .sW .mu,
  .ta .sG .mu {
    color: var(--lx3);
  }

  .ta .sR h2,
  .ta .sR h3,
  .ta .sR h4 {
    color: #fff;
  }

  .ta .sR p {
    color: rgba(255, 255, 255, 0.9);
  }

  /* Typography system */
  .ta h1 {
    font-size: clamp(52px, 7vw, 92px);
    font-weight: 800;
    line-height: 0.98;
    letter-spacing: -3.8px;
  }

  .ta h2 {
    font-size: clamp(34px, 4.2vw, 54px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -2px;
  }

  .ta h2 em {
    font-style: normal;
    color: var(--red);
  }

  .ta .sR h2 em {
    color: #a70d2a;
  }

  .ta h3 {
    font-size: 21px;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -0.6px;
  }

  .ta .lead {
    font-size: 18px;
    line-height: 1.76;
    font-weight: 400;
    max-width: 640px;
  }

  .ta .body {
    font-size: 15px;
    line-height: 1.76;
    font-weight: 400;
  }

  /* Micro-animations */
  @keyframes ta-fade-up {
    from {
      opacity: 0;
      transform: translateY(32px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes ta-pulse {
    0% {
      transform: scale(0.6);
      opacity: 0.7;
    }

    100% {
      transform: scale(2.2);
      opacity: 0;
    }
  }

  @keyframes ta-float {

    0%,
    100% {
      transform: translateY(0) rotate(-2deg);
    }

    50% {
      transform: translateY(-8px) rotate(-1deg);
    }
  }

  @keyframes ta-float2 {

    0%,
    100% {
      transform: translateY(0) rotate(2deg);
    }

    50% {
      transform: translateY(-7px) rotate(1deg);
    }
  }

  @keyframes ta-draw {
    0% {
      stroke-dashoffset: 240;
    }

    100% {
      stroke-dashoffset: 0;
    }
  }

  @keyframes ta-orbit1 {
    from {
      transform: rotate(0deg) translateX(36px) rotate(0deg);
    }

    to {
      transform: rotate(360deg) translateX(36px) rotate(-360deg);
    }
  }

  @keyframes ta-orbit2 {
    from {
      transform: rotate(120deg) translateX(36px) rotate(-120deg);
    }

    to {
      transform: rotate(480deg) translateX(36px) rotate(-480deg);
    }
  }

  @keyframes ta-orbit3 {
    from {
      transform: rotate(240deg) translateX(36px) rotate(-240deg);
    }

    to {
      transform: rotate(600deg) translateX(36px) rotate(-600deg);
    }
  }

  @keyframes ta-core {

    0%,
    100% {
      transform: scale(1);
      box-shadow: 0 0 20px rgba(167, 13, 42, 0.4);
    }

    50% {
      transform: scale(1.08);
      box-shadow: 0 0 35px rgba(167, 13, 42, 0.85);
    }
  }

  @keyframes ta-dotglow {

    0%,
    100% {
      box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.6);
    }

    50% {
      box-shadow: 0 0 0 8px rgba(74, 222, 128, 0);
    }
  }

  @keyframes ta-glow-pulse {

    0%,
    100% {
      opacity: 1;
      transform: scale(1);
    }

    50% {
      opacity: 0.8;
      transform: scale(1.05);
    }
  }

  @keyframes ta-shimmer {
    0% {
      transform: translateX(-100%);
    }

    100% {
      transform: translateX(100%);
    }
  }

  @keyframes drift {
    0% {
      transform: translate(0, 0) scale(1);
    }

    50% {
      transform: translate(4%, 5%) scale(1.08);
    }

    100% {
      transform: translate(-2%, -3%) scale(0.95);
    }
  }

  /* Ambient background light blobs */
  .ta .glow-blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(130px);
    opacity: 0.15;
    pointer-events: none;
    z-index: 0;
  }

  .ta .glow-1 {
    top: -10%;
    right: -5%;
    width: 550px;
    height: 550px;
    background: radial-gradient(circle, var(--red) 0%, transparent 70%);
  }

  .ta .glow-2 {
    bottom: 10%;
    left: -10%;
    width: 450px;
    height: 450px;
    background: radial-gradient(circle, var(--red-d) 0%, transparent 70%);
  }

  .ta .glow-3 {
    top: 35%;
    right: 25%;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, var(--red-l) 0%, transparent 70%);
  }

  /* Scroll reveals */
  .ta .rev {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);
  }

  .ta .rev.in {
    opacity: 1;
    transform: translateY(0);
  }

  .ta .revl {
    opacity: 0;
    transform: translateX(-32px);
    transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);
  }

  .ta .revl.in {
    opacity: 1;
    transform: translateX(0);
  }

  .ta .revr {
    opacity: 0;
    transform: translateX(32px);
    transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);
  }

  .ta .revr.in {
    opacity: 1;
    transform: translateX(0);
  }

  .ta .stag>* {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.65s var(--ease), transform 0.65s var(--ease);
  }

  .ta .stag.in>* {
    opacity: 1;
    transform: none;
    transition-delay: 0.35s;
  }

  .ta .stag.in>*:nth-child(1) {
    transition-delay: 0.04s;
  }

  .ta .stag.in>*:nth-child(2) {
    transition-delay: 0.08s;
  }

  .ta .stag.in>*:nth-child(3) {
    transition-delay: 0.12s;
  }

  .ta .stag.in>*:nth-child(4) {
    transition-delay: 0.16s;
  }

  .ta .stag.in>*:nth-child(5) {
    transition-delay: 0.20s;
  }

  .ta .stag.in>*:nth-child(6) {
    transition-delay: 0.24s;
  }

  .ta .stag.in>*:nth-child(7) {
    transition-delay: 0.28s;
  }

  .ta .stag.in>*:nth-child(8) {
    transition-delay: 0.32s;
  }

  .ta .stag.in>*:nth-child(9) {
    transition-delay: 0.35s;
  }

  .ta .stag.in>*:nth-child(10) {
    transition-delay: 0.38s;
  }

  .ta .stag.in>*:nth-child(11) {
    transition-delay: 0.41s;
  }

  .ta .stag.in>*:nth-child(12) {
    transition-delay: 0.44s;
  }

  .ta .stag.in>*:nth-child(13) {
    transition-delay: 0.47s;
  }

  .ta .stag.in>*:nth-child(14) {
    transition-delay: 0.50s;
  }

  .ta .stag.in>*:nth-child(15) {
    transition-delay: 0.53s;
  }

  .ta .stag.in>*:nth-child(16) {
    transition-delay: 0.56s;
  }

  /* Eyebrow Pill Badge */
  .ta .pill {
    display: flex;
    margin-bottom: 30px;
  }

  .ta .pill.c {
    justify-content: center;
  }

  .ta .eyp {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(12, 7, 23, 0.85);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid var(--bd2);
    border-radius: var(--r100);
    padding: 8px 18px 8px 12px;
    font-size: 12.5px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.9);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
  }

  .ta .sW .eyp,
  .ta .sG .eyp {
    background: rgba(255, 255, 255, 0.85);
    border-color: var(--bl2);
    color: var(--lx2);
    box-shadow: 0 4px 16px rgba(12, 7, 22, 0.04);
  }

  .ta .sR .eyp {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.22);
    color: #fff;
  }

  .ta .eyp strong {
    color: #fff !important;
    font-weight: 700;
  }

  .ta .sW .eyp strong,
  .ta .sG .eyp strong {
    color: var(--red) !important;
  }

  .ta .eyp .el {
    width: 18px;
    height: 2px;
    background: var(--red);
    border-radius: 2px;
  }

  .ta .sR .eyp .el {
    background: rgba(255, 255, 255, 0.75);
  }

  /* Live Pulsing Dot */
  .ta .ldot {
    position: relative;
    width: 8px;
    height: 8px;
    background: var(--gl);
    border-radius: 50%;
    box-shadow: 0 0 12px rgba(74, 222, 128, 0.8);
    flex-shrink: 0;
    animation: ta-dotglow 2s ease-in-out infinite;
  }

  .ta .ldot::after {
    content: '';
    position: absolute;
    inset: -5px;
    border-radius: 50%;
    border: 1.5px solid var(--gl);
    opacity: 0.55;
    animation: ta-pulse 2.2s ease-out infinite;
  }

  /* Buttons */
  .ta .btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--f);
    font-size: 14.5px;
    font-weight: 700;
    letter-spacing: 0.015em;
    padding: 16px 30px;
    border-radius: var(--r14);
    cursor: pointer;
    transition: transform 0.3s var(--spring), box-shadow 0.3s var(--ease), background 0.3s var(--ease);
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    border: none;
    text-decoration: none !important;
  }

  .ta .btn svg {
    width: 18px;
    height: 18px;
    stroke-width: 2.4;
    position: relative;
    z-index: 1;
    flex-shrink: 0;
  }

  .ta .btn span {
    position: relative;
    z-index: 1;
  }

  .ta .btn-p {
    background: var(--rg);
    color: #fff !important;
    box-shadow: 0 12px 30px rgba(167, 13, 42, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }

  .ta .btn-p::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, 0.25) 50%, transparent 75%);
    transform: translateX(-100%);
    transition: transform 0.65s var(--ease);
  }

  .ta .btn-p:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 18px 40px rgba(167, 13, 42, 0.5);
  }

  .ta .btn-p:hover::before {
    transform: translateX(100%);
  }

  .ta .btn-g {
    background: rgba(12, 7, 23, 0.6);
    color: #fff !important;
    border: 1px solid var(--bd2);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
  }

  .ta .btn-g:hover {
    background: rgba(12, 7, 23, 0.85);
    transform: translateY(-3px);
    border-color: var(--bd3);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45);
  }

  .ta .sW .btn-g,
  .ta .sG .btn-g {
    background: rgba(255, 255, 255, 0.85);
    color: var(--lx1) !important;
    border-color: var(--bl2);
    backdrop-filter: none;
    box-shadow: 0 2px 10px rgba(12, 7, 22, 0.04);
  }

  .ta .sW .btn-g:hover,
  .ta .sG .btn-g:hover {
    background: #fff;
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(12, 7, 22, 0.08);
    border-color: var(--bl2);
  }

  .ta .sR .btn-g {
    background: rgba(255, 255, 255, 0.16);
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.26);
  }

  .ta .sR .btn-g:hover {
    background: rgba(255, 255, 255, 0.26);
  }

  .ta .btn-wa {
    background: #25D366;
    color: #fff !important;
    box-shadow: 0 10px 24px rgba(37, 211, 102, 0.25);
    border: none;
  }

  .ta .btn-wa:hover {
    background: #20ba5a;
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(37, 211, 102, 0.4);
  }

  .ta .btn-wa svg {
    color: #fff;
  }

  /* Checklist Elements */
  .ta .ck {
    display: flex;
    gap: 14px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.62;
    padding: 14px 0;
    align-items: flex-start;
  }

  .ta .ck::before {
    content: '✓';
    font-weight: 900;
    font-size: 12px;
    margin-top: 3px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
  }

  .ta .sD .ck::before,
  .ta .sD2 .ck::before {
    color: var(--gl);
    background: rgba(74, 222, 128, 0.08);
  }

  .ta .sD .ck,
  .ta .sD2 .ck {
    color: var(--dx2);
  }

  .ta .sW .ck::before,
  .ta .sG .ck::before {
    color: var(--green);
    background: rgba(34, 197, 94, 0.08);
  }

  .ta .sW .ck,
  .ta .sG .ck {
    color: var(--lx2);
  }

  .ta .sR .ck::before {
    color: #ffd700;
    background: rgba(255, 215, 0, 0.12);
  }

  .ta .sR .ck {
    color: rgba(255, 255, 255, 0.88);
  }

  /* Structural Badges & Icons */
  .ta .nb {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13.5px;
    font-weight: 800;
    flex-shrink: 0;
  }

  .ta .sD .nb,
  .ta .sD2 .nb {
    background: var(--ra);
    color: var(--red-l);
    border: 1px solid var(--rb);
  }

  .ta .sW .nb,
  .ta .sG .nb {
    background: var(--red);
    color: #fff;
  }

  .ta .sR .nb {
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.1);
  }

  .ta .ico {
    width: 44px;
    height: 44px;
    border-radius: var(--r10);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid;
    background: var(--ra);
    border-color: var(--rb);
    flex-shrink: 0;
    transition: transform 0.3s var(--spring);
  }

  .ta .ico svg {
    width: 20px;
    height: 20px;
    color: var(--red-l);
    transition: color 0.3s;
  }

  .ta .titem:hover .ico {
    transform: scale(1.08) rotate(3deg);
    background: rgba(167, 13, 42, 0.12);
    border-color: rgba(167, 13, 42, 0.4);
  }

  .ta .sR .ico {
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.24);
  }

  .ta .sR .ico svg {
    color: #fff;
  }

  /* Dynamic Header alignment */
  .ta .sh {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 28px;
    flex-wrap: wrap;
    margin-bottom: 56px;
  }

  .ta .ta-bc {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 600;
    margin-bottom: 30px;
    flex-wrap: wrap;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .ta .ta-bc a {
    color: var(--dx3);
    transition: color 0.2s;
    text-decoration: none;
  }

  .ta .ta-bc a:hover {
    color: var(--red-l);
  }

  .ta .ta-bc .bs {
    color: var(--dx4);
    opacity: 0.6;
    font-size: 10px;
    margin: 0 4px;
  }

  .ta .ta-bc .ta-bc-curr {
    color: var(--dx1);
    font-weight: 700;
  }

  /* ══ S01 HERO SECTION REDESIGN ══ */
  .ta .hero {
    background:
      radial-gradient(circle at 15% 15%, rgba(167, 13, 42, 0.25) 0%, transparent 55%),
      radial-gradient(circle at 85% 75%, rgba(255, 42, 95, 0.18) 0%, transparent 60%),
      radial-gradient(circle at 50% -10%, rgba(6, 120, 190, 0.08) 0%, transparent 45%),
      #04010a;
    position: relative;
    padding: 120px 0 20px;
    overflow: hidden;
  }

  .ta .hero::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: linear-gradient(rgba(167, 13, 42, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(167, 13, 42, 0.03) 1px, transparent 1px);
    background-size: 56px 56px;
    pointer-events: none;
  }

  /* Animated & Vibrant Hero Ambient Glows */
  .ta .hero .glow-blob {
    opacity: 0.38;
    filter: blur(140px);
    transition: opacity 0.5s ease;
  }

  .ta .hero .glow-1 {
    background: radial-gradient(circle, #ff2a5f 0%, transparent 70%);
    animation: drift 16s ease-in-out infinite alternate;
  }

  .ta .hero .glow-2 {
    background: radial-gradient(circle, var(--red) 0%, transparent 70%);
    animation: drift 20s ease-in-out infinite alternate-reverse 2s;
  }

  .ta .hero .glow-3 {
    background: radial-gradient(circle, var(--teal) 0%, transparent 70%);
    opacity: 0.22;
    animation: drift 24s ease-in-out infinite alternate 1s;
  }

  .ta .hi {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 72px;
    align-items: start;
    position: relative;
    z-index: 1;
  }

  .ta .hl {
    padding-bottom: 80px;
  }

  .ta .hew {
    display: flex;
    margin-bottom: 28px;
    animation: ta-fade-up 0.6s var(--ease) both;
  }

  .ta .he {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(12, 7, 23, 0.85);
    backdrop-filter: blur(24px);
    border: 1px solid var(--bd2);
    border-radius: var(--r100);
    padding: 8px 18px 8px 12px;
    font-size: 12.5px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.9);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
  }

  /* Gradient H1 Hero typography */
  .ta .hh1 {
    font-size: clamp(54px, 7.5vw, 94px);
    font-weight: 800;
    line-height: 0.96;
    letter-spacing: -0.045em;
    color: var(--dx1);
    animation: ta-fade-up 0.7s var(--ease) 0.1s both;
  }

  .ta .hh1 em {
    font-style: normal;
    color: #ff3355 !important;
    -webkit-text-fill-color: #ff3355 !important;
    background: none !important;
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: inline !important;
    letter-spacing: -0.045em;
    text-shadow: 0 0 20px rgba(255, 51, 85, 0.25);
  }

  .ta .hh1 .h1s {
    display: block;
  }

  .ta .hh1 .dim {
    color: rgba(255, 255, 255, 0.85);
    font-weight: 700;
    font-size: 0.68em;
    display: block;
    margin-top: 14px;
    letter-spacing: -0.035em;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.85);
  }

  .ta .hdim {
    color: #ffffff;
    font-weight: 700;
    font-size: 26px;
    display: block;
    margin-top: 14px;
    letter-spacing: -0.01em;
    -webkit-text-fill-color: #ffffff;
  }

  .ta .hlead {
    font-size: 18.5px;
    line-height: 1.76;
    color: var(--dx2);
    margin-top: 24px;
    max-width: 540px;
    animation: ta-fade-up 0.7s var(--ease) 0.18s both;
    font-weight: 400;
  }

  .ta .htrust {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 30px 0;
    animation: ta-fade-up 0.7s var(--ease) 0.24s both;
  }

  .ta .htr {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.16);
    color: #ffffff;
    padding: 8px 16px;
    border-radius: var(--r100);
    transition: all 0.3s var(--ease);
  }

  .ta .htr:hover {
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.26);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(167, 13, 42, 0.15);
  }

  .ta .htr svg {
    width: 13px;
    height: 13px;
    color: var(--green);
    flex-shrink: 0;
  }

  .ta .hctas {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    animation: ta-fade-up 0.7s var(--ease) 0.3s both;
  }

  .ta .hproof {
    display: flex;
    gap: 16px;
    align-items: center;
    margin-top: 28px;
    flex-wrap: wrap;
    font-size: 12.5px;
    font-weight: 600;
    animation: ta-fade-up 0.7s var(--ease) 0.36s both;
    color: rgba(255, 255, 255, 0.85);
  }

  .ta .hproof a {
    color: #ffffff;
    text-decoration: underline !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: opacity 0.2s;
    font-weight: 700;
  }

  .ta .hproof a:hover {
    opacity: 0.8;
  }

  .ta .hproof .dot {
    color: rgba(255, 255, 255, 0.35);
  }

  .ta .hr {
    padding-top: 8px;
    animation: ta-fade-up 0.7s var(--ease) 0.2s both;
  }

  /* SScard with double borders and inset highlights */
  .ta .hsc {
    position: relative;
    border-radius: var(--r20);
    overflow: hidden;
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.65);
    transition: transform 0.4s var(--spring), box-shadow 0.4s var(--ease);
  }

  .ta .hsc::before {
    content: '';
    position: absolute;
    inset: 0;
    padding: 1.5px;
    background: linear-gradient(135deg, rgba(167, 13, 42, 0.6), rgba(255, 255, 255, 0.05), rgba(153, 0, 0, 0.5));
    border-radius: var(--r20);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    z-index: 2;
  }

  .ta .hsc:hover {
    transform: translateY(-6px) scale(1.01);
    box-shadow: 0 35px 80px rgba(167, 13, 42, 0.15), 0 30px 70px rgba(0, 0, 0, 0.7);
  }

  .ta .hsc-inner {
    background: rgba(6, 3, 12, 0.88);
    backdrop-filter: blur(40px) saturate(180%);
    -webkit-backdrop-filter: blur(40px) saturate(180%);
    border-radius: calc(var(--r20) - 1px);
    position: relative;
    z-index: 1;
  }

  .ta .hsch {
    padding: 24px 28px 18px;
    border-bottom: 1px solid var(--bd);
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .ta .hscl {
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: var(--red-l);
  }

  .ta .hscv {
    font-size: 11.5px;
    color: var(--dx3);
    font-weight: 650;
  }

  .ta .hscg {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .ta .hsci {
    padding: 24px 28px;
    border-right: 1px solid var(--bd);
    border-bottom: 1px solid var(--bd);
    transition: background 0.3s var(--ease);
  }

  .ta .hsci:hover {
    background: rgba(167, 13, 42, 0.03);
  }

  .ta .hsci:nth-child(2n) {
    border-right: none;
  }

  .ta .hsci:nth-child(3),
  .ta .hsci:nth-child(4) {
    border-bottom: none;
  }

  .ta .hscn {
    font-size: 34px;
    font-weight: 800;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    line-height: 1.1;
    letter-spacing: -0.04em;
    text-shadow: 0 4px 12px rgba(167, 13, 42, 0.4);
  }

  .ta .hscll {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--dx3);
    margin-top: 6px;
  }

  .ta .hscav {
    padding: 16px 28px;
    display: flex;
    align-items: center;
    gap: 12px;
    border-top: 1px solid var(--bd);
    font-size: 13.5px;
    font-weight: 600;
    color: var(--green);
    background: rgba(0, 230, 118, 0.05);
  }

  /* Clone card slider grid */
  .ta .hshow {
    margin-top: 18px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .ta .hsc-card {
    display: block;
    text-decoration: none !important;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid var(--bd);
    border-radius: var(--r14);
    padding: 16px 20px;
    transition: all 0.35s var(--ease);
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }

  .ta .hsc-card::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--rg);
    opacity: 0;
    transition: opacity 0.25s, transform 0.25s;
  }

  .ta .hsc-card:hover {
    border-color: rgba(167, 13, 42, 0.4);
    background: rgba(255, 255, 255, 0.05);
    transform: translateX(6px);
    box-shadow: 0 12px 30px rgba(167, 13, 42, 0.08), 0 8px 24px rgba(0, 0, 0, 0.35);
  }

  .ta .hsc-card:hover::before {
    opacity: 1;
  }

  .ta .hsc-cat {
    font-size: 9.5px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #ffffff !important;
    margin-bottom: 5px;
  }

  .ta .hsc-name {
    font-size: 14px;
    font-weight: 800;
    color: var(--dx1);
    line-height: 1.35;
    letter-spacing: -0.01em;
  }

  .ta .hsc-meta {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.8) !important;
    margin-top: 4px;
    font-weight: 600;
  }

  /* Interactive Drupal Engine Status Console */
  .ta .hstatus-console {
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid var(--bd);
    border-radius: var(--r14);
    margin-top: 14px;
    padding: 18px 22px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition: all 0.35s var(--ease);
  }

  .ta .hstatus-console:hover {
    border-color: rgba(167, 13, 42, 0.3);
    background: rgba(255, 255, 255, 0.04);
    transform: translateY(-3px);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.4);
  }

  .ta .hstatus-header {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--dx3);
    margin-bottom: 14px;
    font-weight: 800;
  }

  .ta .hstatus-dot {
    width: 7px;
    height: 7px;
    background: var(--green);
    border-radius: 50%;
    box-shadow: 0 0 8px var(--green);
    animation: ta-dotglow 2s ease-in-out infinite;
  }

  .ta .hstatus-tag {
    margin-left: auto;
    color: var(--red-l);
    font-weight: 850;
    font-size: 10px;
    border: 1px solid rgba(167, 13, 42, 0.2);
    padding: 2px 8px;
    border-radius: 4px;
    background: rgba(167, 13, 42, 0.05);
  }

  .ta .hstatus-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  .ta .hstatus-item {
    background: rgba(255, 255, 255, 0.01);
    border: 1px solid rgba(255, 255, 255, 0.03);
    padding: 10px 14px;
    border-radius: var(--r10);
    transition: border-color 0.25s;
  }

  .ta .hstatus-item:hover {
    border-color: rgba(255, 255, 255, 0.08);
  }

  .ta .hstatus-lbl {
    display: block;
    font-size: 9px;
    font-weight: 850;
    color: var(--dx4);
    letter-spacing: 0.08em;
    margin-bottom: 2px;
  }

  .ta .hstatus-val {
    display: block;
    font-size: 12.5px;
    font-weight: 750;
    color: var(--dx1);
  }

  /* ══ S01 STRIP REDESIGN ══ */
  .ta .hstrip {
    background: var(--l0);
    border-top: none;
    padding: 34px 0;
    position: relative;
    z-index: 1;
    box-shadow: 0 -1px 0 rgba(167, 13, 42, 0.08), 0 12px 40px rgba(12, 7, 22, 0.06);
  }

  .ta .hsr {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 16px;
  }

  .ta .hsi {
    flex-shrink: 0;
  }

  .ta .hsi strong {
    display: block;
    font-size: 20px;
    font-weight: 800;
    color: var(--red-d);
    line-height: 1.1;
    letter-spacing: -0.03em;
    background: linear-gradient(135deg, var(--red-d) 0%, var(--red) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .ta .hsi span {
    display: block;
    font-size: 10.2px;
    font-weight: 700;
    color: var(--lx3);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: 4px;
  }

  .ta .hsep {
    width: 1px;
    height: 36px;
    background: var(--bl2);
    flex-shrink: 0;
  }

  /* ══ S02 TRUST BAR REDESIGN ══ */
  .ta .tbar {
    padding: 48px 0;
    border-bottom: 1px solid var(--bd);
    position: relative;
    z-index: 1;
  }

  .ta .tbrow {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px 48px;
    justify-items: center;
  }

  .ta .titem {
    display: flex;
    align-items: center;
    gap: 14px;
  }

  .ta .titem h4 {
    font-size: 14.5px;
    font-weight: 800;
    color: var(--dx1);
    letter-spacing: -0.01em;
  }

  .ta .titem p {
    font-size: 12.5px;
    color: var(--dx2);
    margin-top: 4px;
    font-weight: 500;
  }

  .ta .tsep {
    display: none !important;
  }

  /* ══ S03 OUR APPROACH REDESIGN ══ */
  .ta .approach-right {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .ta .approach-cards {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
    margin-top: 4px;
  }

  .ta .ac {
    border: 1px solid transparent;
    border-radius: var(--r14);
    padding: 22px 16px;
    background-image: linear-gradient(var(--l0), var(--l0)), linear-gradient(135deg, rgba(12, 7, 22, 0.06), rgba(167, 13, 42, 0.15));
    background-origin: border-box;
    background-clip: padding-box, border-box;
    transition: all 0.35s var(--spring);
    text-align: center;
    box-shadow: 0 4px 16px rgba(12, 7, 22, 0.02);
  }

  .ta .ac:hover {
    transform: translateY(-5px);
    box-shadow: 0 16px 36px rgba(167, 13, 42, 0.1);
    background-image: linear-gradient(var(--l0), var(--l0)), linear-gradient(135deg, rgba(167, 13, 42, 0.4), rgba(167, 13, 42, 0.08));
  }

  .ta .ac-icon {
    width: 42px;
    height: 42px;
    border-radius: var(--r10);
    background: var(--ra);
    border: 1px solid var(--rb);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px;
    transition: transform 0.3s var(--spring);
  }

  .ta .ac:hover .ac-icon {
    transform: scale(1.1) rotate(3deg);
    background: rgba(167, 13, 42, 0.1);
  }

  .ta .ac-icon svg {
    width: 20px;
    height: 20px;
    color: var(--red);
  }

  .ta .ac-title {
    font-size: 14px;
    font-weight: 800;
    color: var(--lx1);
    margin-bottom: 6px;
    letter-spacing: -0.01em;
  }

  .ta .ac-desc {
    font-size: 11.5px;
    color: var(--lx3);
    line-height: 1.5;
    font-weight: 500;
  }

  /* Symmetrical stat card elements */
  .ta .sgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  .ta .scard {
    border: 1px solid transparent;
    border-radius: var(--r14);
    padding: 28px 24px;
    transition: all 0.35s var(--spring);
    position: relative;
    overflow: hidden;
    background-image: linear-gradient(var(--l0), var(--l0)), linear-gradient(135deg, rgba(12, 7, 22, 0.04), rgba(167, 13, 42, 0.08));
    background-origin: border-box;
    background-clip: padding-box, border-box;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);
  }

  .ta .scard::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(167, 13, 42, 0.04), transparent);
    opacity: 0;
    transition: opacity 0.3s;
  }

  .ta .scard:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 45px rgba(167, 13, 42, 0.08), 0 8px 24px rgba(12, 7, 22, 0.04);
    background-image: linear-gradient(var(--l0), var(--l0)), linear-gradient(135deg, rgba(167, 13, 42, 0.35), rgba(167, 13, 42, 0.05));
  }

  .ta .scard:hover::before {
    opacity: 1;
  }

  .ta .sn {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 6px;
    letter-spacing: -0.04em;
    background: var(--rg);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .ta .sl {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    color: var(--lx3);
  }

  .ta .anote {
    background: rgba(167, 13, 42, 0.02);
    border: 1px solid rgba(167, 13, 42, 0.12);
    border-left: 5px solid var(--red);
    border-radius: 0 var(--r14) var(--r14) 0;
    padding: 20px 24px;
    margin-top: 30px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
  }

  .ta .anh {
    font-size: 11px;
    font-weight: 850;
    color: var(--red);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    margin-bottom: 8px;
  }

  .ta .mrow {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 0;
    border-top: 1px solid var(--bl2);
    margin-top: 30px;
    font-size: 13.5px;
    color: var(--lx3);
    font-weight: 650;
  }

  .ta .mrow svg {
    width: 16px;
    height: 16px;
    color: var(--red);
    flex-shrink: 0;
  }

  .ta .mrow a {
    color: var(--red-d);
    font-weight: 700;
    transition: color 0.2s;
  }

  .ta .mrow a:hover {
    color: var(--red);
  }

  .ta .tech-adv {
    background: linear-gradient(135deg, rgba(167, 13, 42, 0.04) 0%, rgba(167, 13, 42, 0.01) 100%);
    border: 1px solid rgba(167, 13, 42, 0.12);
    border-radius: var(--r14);
    padding: 26px 28px;
    margin-top: 4px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
  }

  .ta .tech-adv h4 {
    font-size: 14px;
    font-weight: 850;
    color: var(--lx1);
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }

  .ta .fadv-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid var(--bl2);
  }

  .ta .fadv-row:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }

  .ta .fadv-label {
    font-size: 13.5px;
    color: var(--lx2);
    font-weight: 550;
  }

  .ta .fadv-val {
    font-size: 13.5px;
    font-weight: 800;
    color: var(--red);
  }

  /* ══ S04 CLONE SOLUTIONS REDESIGN ══ */
  .ta .scrd {
    display: block;
    text-decoration: none !important;
    background: var(--l0);
    border: 1px solid var(--bl2);
    border-radius: var(--r20);
    overflow: hidden;
    transition: all 0.4s var(--spring);
    box-shadow: 0 4px 16px rgba(12, 7, 22, 0.02);
  }

  .ta .scrd:hover {
    transform: translateY(-8px);
    border-color: rgba(167, 13, 42, 0.35);
    box-shadow: 0 24px 50px rgba(167, 13, 42, 0.1), 0 8px 24px rgba(12, 7, 22, 0.06);
  }

  .ta .sv {
    height: 130px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--bl2);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .ta .sv1 {
    background: linear-gradient(135deg, rgba(167, 13, 42, 0.12), rgba(153, 0, 0, 0.03));
  }

  .ta .sv2 {
    background: linear-gradient(135deg, rgba(6, 120, 190, 0.12), rgba(6, 120, 190, 0.03));
  }

  .ta .sv3 {
    background: linear-gradient(135deg, rgba(153, 0, 0, 0.12), rgba(153, 0, 0, 0.03));
  }

  .ta .sv4 {
    background: linear-gradient(135deg, rgba(0, 230, 118, 0.12), rgba(0, 230, 118, 0.03));
  }

  .ta .sv5 {
    background: linear-gradient(135deg, rgba(157, 0, 255, 0.12), rgba(157, 0, 255, 0.03));
  }

  .ta .sv6 {
    background: linear-gradient(135deg, rgba(167, 13, 42, 0.06), rgba(153, 0, 0, 0.06));
  }

  .ta .spill {
    position: absolute;
    top: 16px;
    right: 16px;
    background: rgba(12, 7, 23, 0.76);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: var(--r100);
    padding: 5px 14px;
    font-size: 10px;
    font-weight: 850;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.1em;
  }

  .ta .snum {
    font-size: 60px;
    font-weight: 900;
    letter-spacing: -0.04em;
    line-height: 1;
    opacity: 0.07;
    position: absolute;
    bottom: -12px;
    right: 18px;
    color: var(--lx1);
  }

  .ta .siwrap {
    width: 56px;
    height: 56px;
    border-radius: var(--r14);
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.65);
    box-shadow: 0 6px 20px rgba(12, 7, 22, 0.06);
    transition: transform 0.35s var(--spring);
  }

  .ta .scrd:hover .siwrap {
    transform: scale(1.1) rotate(4deg);
  }

  .ta .siwrap svg {
    width: 26px;
    height: 26px;
  }

  .ta .sb {
    padding: 26px;
  }

  .ta .scat {
    font-size: 10px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--red);
    margin-bottom: 12px;
  }

  .ta .scrd h3 {
    font-size: 19px;
    font-weight: 800;
    line-height: 1.3;
    color: var(--lx1);
    letter-spacing: -0.02em;
  }

  .ta .scrd p {
    font-size: 13.5px;
    line-height: 1.68;
    color: var(--lx2);
    margin-top: 10px;
  }

  .ta .schips {
    display: flex;
    gap: 8px;
    margin-top: 16px;
    flex-wrap: wrap;
  }

  .ta .schip {
    font-size: 11px;
    font-weight: 700;
    padding: 5px 12px;
    border-radius: var(--r6);
    background: rgba(167, 13, 42, 0.05);
    color: var(--red);
    border: 1px solid rgba(167, 13, 42, 0.12);
  }

  .ta .hnote {
    margin-top: 26px;
    padding: 18px 24px;
    font-size: 13.8px;
    color: var(--lx2);
    background: rgba(167, 13, 42, 0.03);
    border: 1px solid rgba(167, 13, 42, 0.12);
    border-left: 5px solid var(--red);
    border-radius: 0 var(--r14) var(--r14) 0;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
  }

  /* ══ S05 COMPARISON REDESIGN ══ */
  .ta .ctw {
    overflow-x: auto;
    border-radius: var(--r20);
    border: 1px solid var(--bd);
    margin-top: 40px;
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.5);
  }

  .ta .ct {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.8px;
  }

  .ta .ct th,
  .ta .ct td {
    padding: 20px 22px;
    text-align: left;
    border: 1px solid;
    vertical-align: middle;
  }

  .ta .ct th {
    font-weight: 850;
    font-size: 11.5px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    line-height: 1.4;
  }

  .ta .sD .ct th {
    background: rgba(255, 255, 255, 0.03);
    color: var(--dx2);
    border-color: var(--bd);
  }

  .ta .sD .ct td {
    border-color: var(--bd);
    color: var(--dx2);
  }

  .ta .ct .ch {
    border-left: 2px solid rgba(167, 13, 42, 0.4) !important;
    border-right: 2px solid rgba(167, 13, 42, 0.4) !important;
    background: rgba(167, 13, 42, 0.05) !important;
  }

  .ta .ct tr:first-child .ch {
    border-top: 3px solid var(--red) !important;
  }

  .ta .ct tr:last-child .ch {
    border-bottom: 3px solid var(--red) !important;
  }

  .ta .ct .yes {
    color: var(--green) !important;
    font-weight: 800;
    text-shadow: 0 0 10px rgba(0, 230, 118, 0.2);
  }

  .ta .ct .no {
    opacity: 0.5;
  }

  .ta .ct .win {
    color: var(--red-l) !important;
    font-weight: 850;
    text-shadow: 0 0 10px rgba(167, 13, 42, 0.2);
  }

  .ta .dbx {
    padding: 24px 26px;
    border-radius: var(--r14);
    border: 1px solid;
  }

  .ta .sD .dbx {
    background: rgba(255, 255, 255, 0.02);
    border-color: var(--bd);
  }

  .ta .dlbl {
    font-size: 11.5px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    margin-bottom: 12px;
  }

  /* ══ S06 ARCHITECTURE REDESIGN ══ */
  .ta .ait {
    padding: 24px 0;
    border-bottom: 1px solid var(--bl2);
  }

  .ta .ait:last-child {
    border-bottom: none;
  }

  .ta .ait h3 {
    font-size: 17px;
    font-weight: 800;
    color: var(--lx1);
    margin-bottom: 18px;
    letter-spacing: -0.02em;
  }
  .ta .ait p.body {
    margin-bottom: 14px;
  }

  .ta .wcall {
    background: rgba(167, 13, 42, 0.02);
    border: 1px solid rgba(167, 13, 42, 0.12);
    border-left: 5px solid var(--red);
    border-radius: 0 var(--r14) var(--r14) 0;
    padding: 20px;
    margin-top: 4px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
  }

  .ta .wch {
    font-size: 11.5px;
    font-weight: 850;
    color: var(--red);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    margin-bottom: 8px;
  }

  /* High fidelity macOS Window structure */
  .ta .cw2 {
    background: var(--dk0);
    border: 1px solid var(--bd2);
    border-radius: var(--r20);
    overflow: hidden;
    box-shadow: 0 35px 80px rgba(0, 0, 0, 0.7);
    position: relative;
    transition: transform 0.4s var(--spring);
  }

  .ta .cw2:hover {
    transform: translateY(-4px);
    box-shadow: 0 40px 90px rgba(157, 0, 255, 0.12), 0 30px 75px rgba(0, 0, 0, 0.75);
  }

  .ta .cw2::before {
    content: '';
    position: absolute;
    inset: 0;
    padding: 1px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.12), transparent, rgba(255, 255, 255, 0.02));
    border-radius: var(--r20);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
  }

  .ta .chdr {
    padding: 16px 22px;
    border-bottom: 1px solid var(--bd);
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.03);
  }

  .ta .cd {
    width: 12px;
    height: 12px;
    border-radius: 50%;
  }

  .ta .cdr {
    background: #ff5f56;
  }

  .ta .cdy {
    background: #ffbd2e;
  }

  .ta .cdg {
    background: #27c93f;
  }

  .ta .ctit {
    font-size: 11.5px;
    font-weight: 600;
    color: var(--dx3);
    margin-left: 10px;
    font-family: var(--fm);
    letter-spacing: 0.04em;
  }

  .ta .cbody {
    padding: 24px 28px;
    font-family: var(--fm);
    font-size: 12.8px;
    line-height: 1.9;
    white-space: pre;
    overflow-x: auto;
    color: rgba(255, 255, 255, 0.95);
    background: #050308;
  }

  .ta .ckw {
    color: #c678dd;
    font-weight: 700;
  }

  .ta .cty {
    color: #e5c07b;
  }

  .ta .cst {
    color: #98c379;
  }

  .ta .ccm {
    color: #5c6370;
    font-style: italic;
  }

  .ta .cnot {
    padding: 18px 24px;
    background: var(--l1);
    border-top: 1px solid var(--bl2);
    font-size: 13.8px;
    color: var(--lx2);
    line-height: 1.7;
    border-radius: 0 0 var(--r20) var(--r20);
    font-weight: 500;
  }

  /* ══ S07 SERVICE MODELS REDESIGN ══ */
  .ta .vcrd {
    background: var(--l0);
    border: 1px solid var(--bl2);
    border-radius: var(--r20);
    overflow: hidden;
    transition: all 0.4s var(--spring);
    position: relative;
    box-shadow: 0 4px 16px rgba(12, 7, 22, 0.02);
  }

  .ta .vcrd:hover {
    transform: translateY(-8px);
    box-shadow: 0 24px 50px rgba(167, 13, 42, 0.08), 0 8px 24px rgba(12, 7, 22, 0.06);
    border-color: rgba(167, 13, 42, 0.3);
  }

  .ta .vbadge {
    position: absolute;
    top: -1px;
    left: 24px;
    background: var(--red);
    color: #fff;
    font-size: 10px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    padding: 5px 16px;
    border-radius: 0 0 8px 8px;
    z-index: 5;
    box-shadow: 0 2px 10px rgba(167, 13, 42, 0.25);
  }

  .ta .vvis {
    height: 180px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--bl2);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Phone Mockups redesign */
  .ta .vvis-phones {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, rgba(167, 13, 42, 0.08), rgba(153, 0, 0, 0.02));
  }

  .ta .phone-mock {
    position: absolute;
    width: 68px;
    height: 110px;
    border-radius: 14px;
    border: 2.2px solid;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
  }

  .ta .phone-mock .pm-bar {
    height: 12px;
    flex-shrink: 0;
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.05);
  }

  .ta .phone-mock .pm-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 8px 6px;
  }

  .ta .phone-mock .pm-line {
    height: 3px;
    border-radius: 2px;
    width: 85%;
  }

  .ta .phone-mock .pm-line:nth-child(2) {
    width: 55%;
  }

  .ta .phone-mock .pm-line:nth-child(3) {
    width: 75%;
  }

  .ta .phone-mock .pm-btn {
    margin-top: auto;
    height: 11px;
    border-radius: 4px;
  }

  .ta .phone-customer {
    transform: rotate(-8deg) translate(-40px, 8px);
    z-index: 1;
    opacity: 0.7;
    border-color: rgba(255, 255, 255, 0.16);
    background: rgba(8, 4, 12, 0.94);
  }

  .ta .phone-customer .pm-bar {
    background: rgba(167, 13, 42, 0.35);
  }

  .ta .phone-customer .pm-line {
    background: rgba(255, 255, 255, 0.12);
  }

  .ta .phone-customer .pm-btn {
    background: rgba(167, 13, 42, 0.3);
  }

  .ta .phone-driver {
    z-index: 3;
    border-color: rgba(167, 13, 42, 0.6);
    background: linear-gradient(160deg, rgba(167, 13, 42, 0.15), rgba(8, 3, 12, 0.94));
    box-shadow: 0 16px 36px rgba(167, 13, 42, 0.25);
    animation: ta-float 4.5s ease-in-out infinite;
  }

  .ta .phone-driver .pm-bar {
    background: rgba(167, 13, 42, 0.65);
  }

  .ta .phone-driver .pm-line {
    background: rgba(255, 255, 255, 0.25);
  }

  .ta .phone-driver .pm-btn {
    background: var(--rg);
  }

  .ta .phone-admin {
    transform: rotate(8deg) translate(40px, -4px);
    z-index: 2;
    opacity: 0.8;
    border-color: rgba(255, 255, 255, 0.2);
    background: rgba(12, 6, 20, 0.94);
    animation: ta-float2 4.5s ease-in-out infinite;
  }

  .ta .phone-admin .pm-bar {
    background: rgba(255, 255, 255, 0.16);
  }

  .ta .phone-admin .pm-line {
    background: rgba(255, 255, 255, 0.12);
  }

  .ta .phone-admin .pm-btn {
    background: rgba(255, 255, 255, 0.16);
  }

  .ta .phone-lbl {
    position: absolute;
    bottom: 8px;
    font-size: 7.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: rgba(255, 255, 255, 0.4);
    text-align: center;
    width: 100%;
  }

  .ta .phone-lbl.driver {
    color: var(--red-l);
    z-index: 4;
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    font-weight: 900;
  }

  /* Widget Tree Layout */
  .ta .vvis-tree {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, rgba(0, 243, 255, 0.08), rgba(0, 243, 255, 0.02));
  }

  .ta .tree-svg {
    width: 100%;
    height: 100%;
    max-width: 220px;
    max-height: 130px;
  }

  .ta .tree-node {
    fill: rgba(8, 3, 15, 0.92);
    stroke: rgba(0, 243, 255, 0.5);
    stroke-width: 1.2;
    rx: 5;
  }

  .ta .tree-node-root {
    fill: rgba(167, 13, 42, 0.16);
    stroke: rgba(167, 13, 42, 0.65);
    stroke-width: 1.5;
  }

  .ta .tree-line {
    stroke: rgba(0, 243, 255, 0.25);
    stroke-width: 1;
    stroke-dasharray: 4 3;
  }

  .ta .tree-line-root {
    stroke: rgba(167, 13, 42, 0.4);
    stroke-width: 1.2;
    stroke-dasharray: none;
    animation: ta-draw 3s ease-in-out infinite alternate;
  }

  .ta .tree-text {
    fill: rgba(255, 255, 255, 0.75);
    font-size: 6.5px;
    font-family: var(--fm);
    font-weight: 600;
  }

  .ta .tree-text-root {
    fill: var(--red-l);
  }

  /* Sprint Timeline */
  .ta .vvis-sprint {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
    background: linear-gradient(180deg, rgba(157, 0, 255, 0.08), rgba(157, 0, 255, 0.02));
  }

  .ta .sprint-track {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .ta .sprint-row {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .ta .sprint-label {
    font-size: 8px;
    font-weight: 850;
    color: rgba(255, 255, 255, 0.4);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    width: 30px;
    flex-shrink: 0;
    text-align: right;
  }

  .ta .sprint-bar-wrap {
    flex: 1;
    height: 10px;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 6px;
    overflow: hidden;
    position: relative;
    border: 0.5px solid rgba(255, 255, 255, 0.02);
  }

  .ta .sprint-fill {
    height: 100%;
    border-radius: 6px;
    position: relative;
  }

  .ta .sprint-fill.done {
    background: linear-gradient(90deg, var(--red), rgba(167, 13, 42, 0.5));
  }

  .ta .sprint-fill.active {
    background: linear-gradient(90deg, rgba(157, 0, 255, 0.8), rgba(157, 0, 255, 0.45));
    width: 75%;
    position: relative;
  }

  .ta .sprint-fill.active::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transform: translateX(-100%);
    animation: ta-shimmer 1.8s infinite;
  }

  .ta .sprint-fill.next {
    background: rgba(255, 255, 255, 0.06);
  }

  .ta .sprint-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex-shrink: 0;
  }

  .ta .sprint-dot.done {
    background: var(--green);
  }

  .ta .sprint-dot.active {
    background: var(--red-l);
    animation: ta-dotglow 1.5s ease-in-out infinite;
  }

  .ta .sprint-dot.next {
    background: rgba(255, 255, 255, 0.2);
  }

  .ta .vbody {
    padding: 28px 30px;
  }

  .ta .vtag {
    font-size: 10.5px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--red);
    margin-bottom: 12px;
  }

  .ta .vtit {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.25;
    color: var(--lx1);
    margin-bottom: 12px;
    letter-spacing: -0.02em;
  }

  .ta .vdesc {
    font-size: 13.8px;
    line-height: 1.68;
    color: var(--lx2);
    margin-bottom: 20px;
  }

  /* ══ S08 QUALITY STANDARDS REDESIGN ══ */
  .ta .two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .ta .tc-panel {
    padding: 130px 90px;
    display: flex;
    align-items: flex-start;
  }

  .ta .tc-inner {
    width: 100%;
    max-width: 560px;
  }

  .ta .two-col .tc-panel:first-child .tc-inner {
    margin-left: auto;
    margin-right: 0;
  }

  .ta .two-col .tc-panel:last-child .tc-inner {
    margin-left: 0;
    margin-right: auto;
  }

  .ta .qs-dark {
    background: var(--dk1);
    position: relative;
  }

  .ta .qs-dark::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 0% 100%, rgba(167, 13, 42, 0.08) 0%, transparent 68%);
    pointer-events: none;
  }

  .ta .qs-red {
    background: var(--red-d);
    position: relative;
    overflow: hidden;
  }

  .ta .qs-red::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 100% 0%, rgba(167, 13, 42, 0.35) 0%, transparent 68%);
    pointer-events: none;
  }

  .ta .qs-red .tc-inner {
    position: relative;
    z-index: 1;
  }

  .ta .qs-red h2 em {
    color: #ffffff;
  }

  .ta .qs-dark .qrow {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: var(--r10);
    padding: 16px 22px;
    transition: all 0.3s var(--ease);
  }

  .ta .qs-dark .qrow:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(167, 13, 42, 0.35);
    transform: translateX(6px);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.25);
  }

  .ta .qs-dark .qn {
    font-size: 13.8px;
    font-weight: 650;
    color: var(--dx1);
  }

  .ta .qs-dark .qb {
    font-size: 10px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    background: rgba(255, 255, 255, 0.06);
    border-color: var(--bd2);
    color: var(--dx3);
    flex-shrink: 0;
    white-space: nowrap;
  }

  .ta .qs-dark h2 {
    color: var(--dx1);
  }

  .ta .qs-dark h2 em {
    color: var(--red-l);
  }

  .ta .qs-dark .lead {
    color: var(--dx2);
  }

  .ta .qs-dark .eyp {
    background: rgba(8, 4, 12, 0.75);
    border-color: var(--bd2);
  }

  .ta .qs-dark .eyp strong {
    color: #fff;
  }

  .ta .qs-dark .el {
    background: var(--red);
  }

  .ta .qs-red .tc-inner {
    max-width: 760px;
  }

  .ta .qsteps {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    width: 100%;
  }

  .ta .vstep {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--r14);
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    transition: transform 0.35s var(--spring), border-color 0.3s, background 0.3s, box-shadow 0.3s;
  }

  .ta .vstep:hover {
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.07);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.3);
  }

  .ta .vstep-nb {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11.5px;
    font-weight: 850;
    flex-shrink: 0;
  }

  .ta .vstep h4 {
    font-size: 15px;
    font-weight: 800;
    color: #fff;
    margin: 0;
    line-height: 1.35;
    letter-spacing: -0.01em;
  }

  .ta .vstep p {
    font-size: 12.5px;
    line-height: 1.62;
    color: rgba(255, 255, 255, 0.82);
    margin: 0;
  }

  /* ══ S09 TECH STACK REDESIGN ══ */
  .ta #stack {
    background: linear-gradient(135deg, #cccccc 0%, #b2b2b2 100%) !important;
    color: var(--lx2) !important;
  }

  .ta #stack h2 {
    color: var(--lx1) !important;
  }

  .ta #stack .mu {
    color: var(--lx3) !important;
  }

  .ta #stack .eyp {
    background: rgba(255, 255, 255, 0.75) !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
    color: var(--lx2) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03) !important;
  }

  .ta #stack .eyp strong {
    color: var(--red) !important;
  }

  .ta #stack .el {
    background: var(--red) !important;
  }

  .ta .stack16 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
  }

  .ta .stki {
    background: rgba(255, 255, 255, 0.6) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    border-radius: var(--r14);
    padding: 28px 22px;
    text-align: center;
    transition: all 0.35s var(--ease);
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    position: relative;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.03) !important;
  }

  .ta .stki::before {
    content: '';
    position: absolute;
    inset: 0;
    padding: 1px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.4), transparent, rgba(0, 0, 0, 0.03));
    border-radius: var(--r14);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
  }

  .ta .stki:hover {
    transform: translateY(-6px);
    border-color: var(--red) !important;
    background: rgba(255, 255, 255, 0.9) !important;
    box-shadow: 0 20px 40px rgba(167, 13, 42, 0.12) !important;
  }

  .ta .stlogo {
    width: 50px;
    height: 50px;
    border-radius: var(--r10);
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    font-size: 14px;
    font-weight: 850;
    background: rgba(0, 0, 0, 0.04) !important;
    color: var(--red) !important;
    transition: transform 0.3s var(--spring);
  }

  .ta .stki:hover .stlogo {
    transform: scale(1.1) rotate(4deg);
    background: rgba(0, 0, 0, 0.08) !important;
    border-color: var(--red) !important;
  }

  .ta .stname {
    font-size: 14px;
    font-weight: 800;
    color: var(--lx1) !important;
    margin-bottom: 6px;
    letter-spacing: -0.01em;
  }

  .ta .stdesc {
    font-size: 11px;
    line-height: 1.5;
    color: var(--lx3) !important;
    font-weight: 500;
  }

  /* ══ S10 PROCESS REDESIGN ══ */
  .ta #process {
    background: #000000 !important;
    color: #fff !important;
    position: relative;
    overflow: hidden;
    padding: 120px 0;
  }

  .ta #process h2 {
    color: #fff !important;
  }

  .ta #process h2 em {
    color: var(--red) !important;
    font-style: normal;
  }

  .ta #process p,
  .ta #process .body,
  .ta #process .lead {
    color: rgba(255, 255, 255, 0.82) !important;
  }

  .ta #process .pill .eyp {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.14);
  }

  .ta #process .pill .eyp strong {
    color: var(--red-l);
  }

  .ta-process-wrapper {
    margin-top: 80px;
    position: relative;
  }

  .ta-process-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    position: relative;
  }

  .ta-process-step {
    position: relative;
    height: 380px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .ta-process-card {
    width: 200px;
    height: 220px;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 18px;
    padding: 24px 18px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3);
    transition: all 0.4s var(--ease);
    position: relative;
    z-index: 5;
  }

  .ta-process-card:hover {
    transform: translateY(-8px);
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.18);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.45);
  }

  .ta-process-icon-wrap {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1.5px solid rgba(255, 255, 255, 0.2) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    transition: all 0.3s var(--ease);
  }

  .ta-process-card:hover .ta-process-icon-wrap {
    transform: scale(1.08);
    background: #fff !important;
    border-color: #fff !important;
  }

  .ta-process-card:hover .ta-process-icon-wrap svg {
    stroke: #000000 !important;
    fill: none;
  }

  .ta-process-icon-wrap svg {
    width: 22px;
    height: 22px;
    stroke: #ffffff !important;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    fill: none;
    transition: all 0.3s var(--ease);
  }

  .ta-process-card h3 {
    font-size: 17.5px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin-bottom: 8px !important;
    letter-spacing: -0.01em !important;
  }

  .ta-process-card p {
    font-size: 12.8px !important;
    line-height: 1.62 !important;
    color: rgba(255, 255, 255, 0.78) !important;
    font-weight: 500 !important;
    margin: 0 !important;
  }

  .ta-step-label {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    z-index: 10;
    pointer-events: none;
  }

  .ta-step-label.top {
    top: 15px;
  }

  .ta-step-label.bottom {
    bottom: 15px;
  }

  .ta-step-label span {
    display: block;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    white-space: nowrap;
  }

  .ta-step-label.top span {
    margin-bottom: 8px;
  }

  .ta-step-label.bottom span {
    margin-top: 8px;
  }

  .ta-step-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin: 0 auto;
  }

  .ta-proc-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
    z-index: 2;
  }

  .ta .tpills {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 56px;
  }

  .ta .tpill {
    padding: 18px 28px;
    border-radius: var(--r14);
    text-align: center;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.08);
    transition: all 0.35s var(--spring);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.01);
  }

  .ta .tpill:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.3);
    border-color: rgba(167, 13, 42, 0.5);
    background: rgba(255, 255, 255, 0.04);
  }

  .ta .tpill strong {
    display: block;
    font-size: 24px;
    font-weight: 800;
    color: #fff;
    letter-spacing: -0.03em;
    line-height: 1.1;
    background: linear-gradient(135deg, #fff 0%, rgba(255, 255, 255, 0.7) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .ta .tpill span {
    display: block;
    font-size: 11.5px;
    color: rgba(255, 255, 255, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: 6px;
    font-weight: 700;
  }

  @media (max-width: 991px) {
    .ta-process-grid {
      grid-template-columns: 1fr;
      gap: 40px;
      justify-items: center;
    }

    .ta-process-grid::before {
      content: '';
      position: absolute;
      top: 40px;
      bottom: 40px;
      left: 50%;
      transform: translateX(-50%);
      width: 3px;
      background: linear-gradient(to bottom, #a70d2a, #990000, #a70d2a, #990000, #a70d2a);
      z-index: 1;
    }

    .ta-process-step {
      height: auto;
      width: 100%;
      max-width: 320px;
      flex-direction: column;
      align-items: center;
      padding: 0;
    }

    .ta-process-card {
      width: 100%;
      height: auto;
      min-height: 200px;
      padding: 30px 24px;
    }

    .ta-step-label {
      position: relative !important;
      top: auto !important;
      bottom: auto !important;
      left: auto !important;
      transform: none !important;
      margin-bottom: 12px;
    }

    .ta-step-label.bottom {
      display: flex;
      flex-direction: column-reverse;
      align-items: center;
    }

    .ta-step-label.top {
      display: flex;
      flex-direction: column;
      align-items: center;
    }

    .ta-step-dot {
      margin: 6px auto !important;
      width: 12px;
      height: 12px;
      box-shadow: 0 0 10px currentColor;
    }

    .ta-proc-svg {
      display: none;
    }
  }

  /* ══ S11 PRICING REDESIGN ══ */
  .ta .pcrd {
    background: var(--l0);
    border: 1px solid var(--bl2);
    border-radius: var(--r20);
    padding: 44px 34px;
    position: relative;
    transition: all 0.4s var(--spring);
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(12, 7, 22, 0.02);
  }

  .ta .pcrd::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    background: var(--rg);
    opacity: 0;
    transition: opacity 0.3s var(--ease);
  }

  .ta .pcrd:hover {
    transform: translateY(-8px);
    box-shadow: 0 24px 50px rgba(12, 7, 22, 0.06), 0 10px 24px rgba(167, 13, 42, 0.05);
    border-color: rgba(167, 13, 42, 0.3);
  }

  .ta .pcrd:hover::before {
    opacity: 1;
  }

  .ta .pcrd.hot {
    border-color: var(--red);
    box-shadow: 0 16px 40px rgba(167, 13, 42, 0.08);
    background: var(--l1);
  }

  .ta .pcrd.hot::before {
    opacity: 1;
  }

  .ta .ptag {
    position: absolute;
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--red);
    color: #fff;
    font-size: 10px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    padding: 5px 18px;
    border-radius: 0 0 8px 8px;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(167, 13, 42, 0.25);
  }

  .ta .pname {
    font-size: 19px;
    font-weight: 800;
    color: var(--lx1);
    margin-bottom: 14px;
    letter-spacing: -0.02em;
  }

  .ta .pamt {
    font-size: 40px;
    font-weight: 850;
    line-height: 1;
    margin-bottom: 10px;
    letter-spacing: -0.04em;
    color: var(--red-d);
    background: linear-gradient(135deg, var(--red-d) 0%, var(--red) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .ta .pnote {
    font-size: 12.8px;
    color: var(--lx3);
    margin-bottom: 26px;
    font-weight: 600;
  }

  .ta .pcrd ul {
    display: flex;
    flex-direction: column;
    gap: 11px;
    margin-bottom: 32px;
  }

  .ta .pcrd li {
    position: relative;
    padding-left: 26px;
    font-size: 13.8px;
    line-height: 1.6;
    color: var(--lx2);
    font-weight: 550;
  }

  .ta .pcrd li::before {
    content: '✓';
    position: absolute;
    left: 0;
    font-weight: 900;
    color: var(--green);
    font-size: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: rgba(0, 230, 118, 0.08);
    border-radius: 50%;
    margin-top: 2px;
  }

  /* ══ S12 CASE STUDY REDESIGN ══ */
  .ta .cs-dark {
    background: var(--dk1);
    position: relative;
  }

  .ta .cs-dark::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 0% 100%, rgba(167, 13, 42, 0.08) 0%, transparent 68%);
    pointer-events: none;
  }

  .ta .cs-dark .tc-inner {
    position: relative;
    z-index: 1;
  }

  .ta .cs-dark h2 {
    color: var(--dx1);
  }

  .ta .cs-dark h2 em {
    color: var(--red-l);
  }

  .ta .cs-dark .body {
    color: var(--dx2);
  }

  .ta .cs-dark .eyp {
    background: rgba(8, 4, 12, 0.75);
    border-color: var(--bd2);
  }

  .ta .cs-dark .eyp strong {
    color: #fff;
  }

  .ta .cs-dark .el {
    background: var(--red);
  }

  .ta .cs-dark .cst {
    color: var(--dx1);
  }

  .ta .cs-dark .csb {
    color: var(--dx2);
  }

  .ta .cs-dark .csr {
    border-color: var(--bd);
  }

  .ta .cs-dark .csn {
    background: var(--ra);
    color: var(--red-l);
    border-color: var(--rb);
  }

  .ta .cs-dark .rbar .rpill {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--bd);
  }

  .ta .cs-dark .rbar .rpill strong {
    color: var(--red-l);
  }

  .ta .cs-dark .rbar .rpill span {
    color: var(--dx3);
  }

  .ta .cs-dark .btn-g {
    border-color: var(--bd3);
    color: var(--dx1) !important;
  }

  .ta .csr {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 22px 0;
    border-bottom: 1px solid var(--bd);
  }

  .ta .csr:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }

  .ta .csn {
    width: 40px;
    height: 40px;
    border-radius: var(--r10);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13.5px;
    font-weight: 850;
    flex-shrink: 0;
    background: var(--ra);
    color: var(--red-l);
    border: 1px solid var(--rb);
    transition: transform 0.3s;
  }

  .ta .csr:hover .csn {
    transform: scale(1.08) rotate(3deg);
  }

  .ta .cst {
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 8px;
    color: var(--dx1);
    letter-spacing: -0.01em;
  }

  .ta .csb {
    font-size: 13.8px;
    line-height: 1.7;
    color: var(--dx2);
  }

  .ta .rbar {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 26px;
  }

  .ta .rpill {
    padding: 16px 20px;
    border-radius: var(--r10);
    text-align: center;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--bd);
    transition: all 0.28s var(--ease);
  }

  .ta .rpill:hover {
    border-color: rgba(167, 13, 42, 0.4);
    background: rgba(167, 13, 42, 0.08);
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(167, 13, 42, 0.12);
  }

  .ta .rpill strong {
    display: block;
    font-size: 24px;
    font-weight: 800;
    color: var(--red-l);
    letter-spacing: -0.03em;
    line-height: 1.1;
  }

  .ta .rpill span {
    display: block;
    font-size: 11px;
    color: var(--dx3);
    margin-top: 4px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }

  .ta .cs-dark .btn-g:hover {
    border-color: var(--red);
    background: var(--ra);
  }

  /* Left-right symmetry card boxes */
  .ta .cs-grey .testi {
    background: var(--l0);
    border-color: var(--bl2);
    box-shadow: 0 8px 30px rgba(12, 7, 22, 0.03);
    border-radius: var(--r20);
    padding: 36px;
    border: 1px solid var(--bl2);
  }

  .ta .cs-grey .tlbl {
    color: var(--red);
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    margin-bottom: 16px;
    display: block;
  }

  .ta .cs-grey .tq {
    color: var(--lx1);
    font-size: 16px;
    font-weight: 550;
    line-height: 1.76;
    font-style: italic;
    letter-spacing: -0.01em;
  }

  .ta .cs-grey .tau {
    border-color: var(--bl2);
    padding-top: 20px;
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    border-top: 1px solid var(--bl2);
  }

  .ta .cs-grey .tav {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--ra);
    border: 1px solid var(--rb);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 850;
    color: var(--red);
  }

  .ta .cs-grey .tnm {
    color: var(--lx1);
    font-weight: 850;
    font-size: 15px;
  }

  .ta .cs-grey .trl {
    color: var(--lx3);
    font-size: 12.8px;
    margin-top: 2px;
    font-weight: 550;
  }

  .ta .cs-grey .tvfy {
    margin-top: 20px;
    padding: 14px 18px;
    background: var(--l1);
    border-radius: var(--r10);
    font-size: 13.8px;
    font-weight: 700;
    border: 1px solid var(--bl2);
  }

  .ta .cs-grey .proj-brief {
    background: var(--l0);
    border-color: var(--bl2);
    box-shadow: 0 8px 30px rgba(12, 7, 22, 0.03);
    border-radius: var(--r20);
    padding: 26px 30px;
    border: 1px solid var(--bl2);
  }

  .ta .cs-grey .pb-title {
    color: var(--red);
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    margin-bottom: 16px;
  }

  .ta .cs-grey .pb-row {
    border-color: var(--bl2);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid var(--bl2);
  }

  .ta .cs-grey .pb-row:last-child {
    border-bottom: none;
  }

  .ta .cs-grey .pb-label {
    color: var(--lx3);
    font-weight: 600;
    font-size: 13.5px;
  }

  .ta .cs-grey .pb-val {
    color: var(--lx1);
    font-weight: 700;
    font-size: 13.5px;
  }

  .ta .cs-grey .pm-item {
    background: var(--l0);
    border-color: var(--bl2);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);
    border-radius: var(--r12);
    padding: 16px;
    border: 1px solid var(--bl2);
  }

  .ta .cs-grey .pm-num {
    color: var(--red-d);
    font-size: 24px;
    font-weight: 850;
    letter-spacing: -0.02em;
    background: linear-gradient(135deg, var(--red-d) 0%, var(--red) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .ta .cs-grey .pm-lbl {
    color: var(--lx3);
    font-weight: 700;
    font-size: 10.5px;
    margin-top: 4px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }

  /* ══ S13 REVIEWS REDESIGN ══ */
  .ta .rev-card {
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: var(--r20);
    padding: 34px;
    transition: all 0.35s var(--ease);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }

  .ta .rev-card:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(167, 13, 42, 0.35);
    transform: translateY(-8px);
    box-shadow: 0 30px 60px rgba(167, 13, 42, 0.12), 0 10px 30px rgba(0, 0, 0, 0.45);
  }

  .ta .rev-stars {
    color: #ffd700;
    font-size: 16px;
    letter-spacing: 2px;
    margin-bottom: 14px;
    text-shadow: 0 0 10px rgba(255, 215, 0, 0.3);
  }

  .ta .rev-source {
    color: var(--dx3);
    font-size: 11.5px;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 16px;
  }

  .ta .rev-quote {
    color: var(--dx2);
    font-size: 15px;
    line-height: 1.76;
    font-style: italic;
    font-weight: 500;
  }

  .ta .rev-author {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-top: 20px;
    margin-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }

  .ta .rev-av {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 850;
    color: #fff;
  }

  .ta .rev-name {
    color: #fff;
    font-weight: 800;
    font-size: 14.5px;
  }

  .ta .rev-role {
    color: var(--dx3);
    font-size: 12.5px;
    margin-top: 2px;
    font-weight: 500;
  }

  .ta .rev-tag {
    font-size: 11px;
    color: var(--red-l);
    font-weight: 750;
    margin-top: 16px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
  }

  .ta .sR .rev-card {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.1);
  }

  .ta .sR .rev-card:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.25);
  }

  .ta .sR .rev-stars {
    color: #ffe644;
  }

  .ta .sR .rev-source {
    color: rgba(255, 255, 255, 0.7);
  }

  .ta .sR .rev-quote {
    color: #fff;
  }

  .ta .sR .rev-author {
    border-color: rgba(255, 255, 255, 0.14);
  }

  .ta .sR .rev-av {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.24);
  }

  .ta .sR .rev-role {
    color: rgba(255, 255, 255, 0.65);
  }

  .ta .sR .rev-tag {
    color: #ffe644;
  }

  .ta .rev-summary {
    display: flex;
    align-items: center;
    gap: 32px;
    flex-wrap: wrap;
    background: var(--l0);
    border: 1px solid var(--bl2);
    border-radius: var(--r14);
    padding: 24px 36px;
    box-shadow: 0 8px 24px rgba(12, 7, 22, 0.02);
  }

  .ta .rev-sum-item {
    display: flex;
    flex-direction: column;
  }

  .ta .rev-sum-item strong {
    font-size: 24px;
    font-weight: 850;
    color: var(--red-d);
    letter-spacing: -0.02em;
    line-height: 1.1;
    background: linear-gradient(135deg, var(--red-d) 0%, var(--red) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .ta .rev-sum-item span {
    font-size: 11.5px;
    color: var(--lx3);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: 5px;
    font-weight: 700;
  }

  .ta .rev-sum-sep {
    width: 1px;
    height: 42px;
    background: var(--bl2);
    flex-shrink: 0;
  }

  /* ══ S14 RELATED SERVICES REDESIGN ══ */
  .ta .rcrd {
    display: flex;
    align-items: center;
    gap: 18px;
    background: var(--l0);
    border: 1px solid var(--bl2);
    border-radius: var(--r14);
    padding: 22px 24px;
    transition: all 0.35s var(--spring);
    text-decoration: none !important;
    box-shadow: 0 4px 16px rgba(12, 7, 22, 0.02);
  }

  .ta .rcrd:hover {
    transform: translateX(6px);
    border-color: rgba(167, 13, 42, 0.35);
    box-shadow: 0 16px 36px rgba(167, 13, 42, 0.08);
  }

  .ta .rict {
    width: 44px;
    height: 44px;
    border-radius: var(--r10);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--ra);
    border: 1px solid var(--rb);
    flex-shrink: 0;
    transition: transform 0.3s var(--spring);
  }

  .ta .rcrd:hover .rict {
    transform: scale(1.1) rotate(4deg);
    background: rgba(167, 13, 42, 0.1);
  }

  .ta .rict svg {
    width: 20px;
    height: 20px;
    color: var(--red);
  }

  .ta .rcat {
    font-size: 10px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--lx3);
    margin-bottom: 5px;
  }

  .ta .rtit {
    font-size: 15px;
    font-weight: 800;
    color: var(--lx1);
    letter-spacing: -0.01em;
  }

  /* ══ S15 FAQ REDESIGN ══ */
  .ta .fitem {
    background: var(--l0);
    border: 1px solid var(--bl2);
    border-radius: var(--r14);
    overflow: hidden;
    transition: border-color 0.3s var(--ease), box-shadow 0.3s var(--ease);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.01);
  }

  .ta .fitem:hover {
    border-color: rgba(167, 13, 42, 0.28);
    box-shadow: 0 12px 28px rgba(12, 7, 22, 0.05);
  }

  .ta .fq {
    font-size: 16px;
    font-weight: 800;
    line-height: 1.35;
    color: var(--lx1);
    padding: 24px 28px 0;
    letter-spacing: -0.02em;
  }

  .ta .faq-a {
    font-size: 14px;
    line-height: 1.74;
    color: var(--lx2);
    padding: 12px 28px 24px;
    font-weight: 500;
  }

  /* ══ S16 CTA BANNER REDESIGN ══ */
  .ta .ctawrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 64px;
    flex-wrap: wrap;
  }

  .ta .ctal {
    flex: 1;
    min-width: 280px;
  }

  .ta .ctar {
    display: flex;
    flex-direction: column;
    gap: 14px;
    flex-shrink: 0;
    min-width: 260px;
  }

  .ta .ctapr {
    display: flex;
    gap: 36px;
    margin-top: 32px;
    flex-wrap: wrap;
  }

  .ta .ctapr strong {
    display: block;
    font-size: 28px;
    font-weight: 850;
    color: var(--red-d);
    letter-spacing: -0.03em;
    line-height: 1.1;
    background: linear-gradient(135deg, var(--red-d) 0%, var(--red) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .ta .ctapr span {
    display: block;
    font-size: 11.5px;
    color: var(--lx3);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: 6px;
    font-weight: 700;
  }

  .ta .ctanote {
    font-size: 12.8px;
    color: var(--lx3);
    text-align: center;
    font-weight: 600;
  }

  /* Responsive adjustments */
  @media(max-width:1100px) {

    .ta .hi,
    .ta .sp5050a {
      grid-template-columns: 1fr;
    }

    .ta .hr {
      display: block;
      margin-top: 48px;
      width: 100%;
    }

    .ta .hl {
      padding-bottom: 0;
    }

    .ta .sp5050 {
      grid-template-columns: 1fr;
      gap: 56px;
    }

    .ta .g4 {
      grid-template-columns: 1fr 1fr;
    }

    .ta .g5 {
      grid-template-columns: 1fr 1fr 1fr;
      gap: 30px;
    }

    .ta .procl {
      display: none;
    }

    .ta .ctawrap {
      flex-direction: column;
      align-items: flex-start;
      gap: 40px;
    }

    .ta .ctar {
      width: 100%;
    }

    .ta .hsr {
      flex-wrap: wrap;
      justify-content: center;
      gap: 20px 24px;
    }

    .ta .hsep {
      display: none;
    }

    .ta .tbrow {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px 32px;
      justify-items: center;
    }

    .ta .tsep {
      display: none;
    }
  }

  @media(max-width:900px) {
    .ta .stack16 {
      grid-template-columns: repeat(3, 1fr);
    }

    .ta .approach-cards {
      grid-template-columns: 1fr 1fr 1fr;
    }

    .ta .proj-metrics {
      grid-template-columns: 1fr 1fr 1fr;
    }

    .ta .two-col {
      grid-template-columns: 1fr;
    }

    .ta .tc-panel {
      padding: 68px 32px;
    }

    .ta .tc-panel .tc-inner {
      max-width: none;
      margin: 0;
    }

    .ta .qsteps {
      grid-template-columns: 1fr;
      gap: 16px;
    }
  }

  @media(max-width:768px) {
    .ta .W {
      padding: 0 24px;
    }

    .ta .S {
      padding: 80px 0;
    }

    .ta .hero {
      padding-bottom: 80px;
    }

    .ta h2 {
      font-size: 28px;
      letter-spacing: 0;
      line-height: 1.16;
    }

    .ta h3 {
      font-size: 18px;
      letter-spacing: 0;
    }

    .ta .lead {
      font-size: 16px;
      line-height: 1.7;
    }

    .ta .body {
      font-size: 14.5px;
      line-height: 1.72;
    }

    .ta .hh1 {
      font-size: 38px;
      line-height: 1.35;
      letter-spacing: 0;
    }

    .ta .sh {
      display: block;
      margin-bottom: 34px;
    }

    .ta .pill {
      margin-bottom: 20px;
    }

    .ta .eyp {
      max-width: 100%;
      white-space: normal;
      line-height: 1.35;
    }

    .ta .cbody {
      white-space: pre-wrap;
      overflow-wrap: anywhere;
      font-size: 11.5px;
      line-height: 1.75;
      padding: 20px 18px;
    }

    .ta .revl,
    .ta .revr {
      transform: none;
    }

    /* Symmetrical 1-column layouts for 3-card blocks (Services, Pricing, Reviews, Related) */
    .ta .g3 {
      grid-template-columns: 1fr;
      max-width: 600px;
      margin-left: auto;
      margin-right: auto;
      gap: 24px;
    }

    .ta .g2 {
      grid-template-columns: 1fr;
    }

    .ta .g4,
    .ta .g5 {
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }

    .ta .hsr {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }

    .ta .hsi {
      width: 100%;
      min-height: 92px;
      padding: 16px;
      border: 1px solid var(--bl2);
      border-radius: var(--r14);
      background: var(--l0);
      box-shadow: 0 6px 18px rgba(12, 7, 22, 0.04);
    }

    .ta .hsi strong {
      font-size: 18px;
      line-height: 1.2;
    }

    .ta .hsi span {
      font-size: 10px;
      line-height: 1.35;
    }

    .ta .hsep,
    .ta .tsep {
      display: none;
    }

    .ta .sgrid {
      grid-template-columns: 1fr 1fr;
      gap: 14px;
    }

    .ta .scard {
      padding: 22px 18px;
    }

    .ta .sn {
      font-size: 30px;
    }

    .ta .sl {
      font-size: 12.5px;
    }

    .ta .tech-adv {
      padding: 22px 18px;
    }

    .ta .fadv-row {
      align-items: flex-start;
      gap: 6px;
    }

    .ta .fadv-label,
    .ta .fadv-val {
      line-height: 1.45;
    }

    /* Trust Bar: Transform into vertical list of horizontal rows matching Miracuves.com mobile layout */
    .ta .tbrow {
      grid-template-columns: 1fr;
      gap: 12px;
      justify-items: stretch;
      max-width: 600px;
      margin: 0 auto;
    }

    .ta .titem {
      display: flex !important;
      flex-direction: row !important;
      align-items: center !important;
      gap: 16px !important;
      background: rgba(255, 255, 255, 0.02) !important;
      border: 1px solid rgba(255, 255, 255, 0.06) !important;
      border-radius: var(--r14) !important;
      padding: 16px 20px !important;
      width: 100% !important;
      text-align: left !important;
    }

    .ta .titem .ico {
      width: 40px !important;
      height: 40px !important;
      border-radius: 8px !important;
      flex-shrink: 0 !important;
      background: rgba(167, 13, 42, 0.08) !important;
      border-color: rgba(167, 13, 42, 0.2) !important;
    }

    .ta .titem .ico svg {
      width: 18px !important;
      height: 18px !important;
      color: var(--red-l) !important;
    }

    .ta .titem h4 {
      font-size: 14.5px !important;
      color: #ffffff !important;
      font-weight: 700 !important;
      margin: 0 !important;
    }

    .ta .titem p {
      font-size: 12px !important;
      color: rgba(255, 255, 255, 0.6) !important;
      text-transform: none !important;
      letter-spacing: 0 !important;
      margin-top: 3px !important;
      font-weight: 500 !important;
    }

    .ta .approach-cards {
      grid-template-columns: 1fr 1fr;
    }

    .ta .cs-right {
      gap: 14px;
    }

    .ta .rev-summary {
      flex-direction: column;
      align-items: center;
      gap: 20px;
      padding: 24px;
      text-align: center;
    }

    .ta .rev-sum-sep {
      display: none;
    }

    /* Mobile card view for comparison table */
    .ta .ctw {
      overflow: visible;
      border: none;
      border-radius: 0;
      margin-top: 28px;
      box-shadow: none;
    }

    .ta .ct,
    .ta .ct thead,
    .ta .ct tbody,
    .ta .ct tr,
    .ta .ct th,
    .ta .ct td {
      display: block;
      width: 100%;
    }

    .ta .ct thead {
      display: none;
    }

    .ta .ct tbody {
      display: grid;
      gap: 16px;
    }

    .ta .ct tr {
      border: 1px solid var(--bd2);
      border-radius: var(--r14);
      overflow: hidden;
      background: rgba(255, 255, 255, 0.03);
      box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);
    }

    .ta .ct th,
    .ta .ct td {
      min-width: 0 !important;
      border: 0 !important;
      padding: 15px 18px;
    }

    .ta .ct td {
      border-top: 1px solid var(--bd) !important;
      font-size: 13.5px;
      line-height: 1.55;
    }

    .ta .ct td:first-child {
      border-top: 0 !important;
      background: rgba(255, 255, 255, 0.05);
      color: #fff !important;
      font-size: 15px;
      font-weight: 850 !important;
    }

    .ta .ct td:not(:first-child)::before {
      display: block;
      margin-bottom: 5px;
      font-size: 10px;
      font-weight: 850;
      line-height: 1.3;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: rgba(255, 255, 255, 0.52);
    }

    .ta .ct td:nth-child(2)::before {
      content: 'Drupal - Miracuves Default';
      color: var(--red-l);
    }

    .ta .ct td:nth-child(3)::before {
      content: 'React Native';
    }

    .ta .ct td:nth-child(4)::before {
      content: 'Native Swift / Kotlin';
    }

    .ta .ct .ch {
      border-left: 0 !important;
      border-right: 0 !important;
      background: rgba(167, 13, 42, 0.08) !important;
    }
  }

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

    .ta .tc-panel {
      padding: 48px 20px;
    }

    .ta .sgrid,
    .ta .g4,
    .ta .g5 {
      grid-template-columns: 1fr;
    }

    .ta .scard,
    .ta .scrd,
    .ta .vcrd,
    .ta .pcrd,
    .ta .rev-card,
    .ta .fitem {
      border-radius: var(--r14);
    }

    .ta .fadv-row {
      flex-direction: column;
      align-items: flex-start;
      padding: 13px 0;
    }

    .ta .fadv-val {
      font-size: 14px;
    }

    .ta .pb-row {
      flex-direction: column;
      align-items: flex-start;
      gap: 3px;
    }

    .ta .rbar {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
    }

    .ta .rpill {
      width: 100%;
      padding: 14px 12px;
    }
  }

  @media(max-width:480px) {
    .ta .W {
      padding: 0 16px;
    }

    .ta .S {
      padding: 60px 0;
    }

    .ta .hero {
      padding: 76px 0 100px;
    }

    .ta .hi {
      gap: 34px;
    }

    .ta .hr {
      margin-top: 34px;
    }

    .ta .hh1 {
      font-size: 34px;
      line-height: 1.4;
      letter-spacing: 0;
    }

    .ta .hh1 .h1s {
    display: block;
  }

  .ta .hh1 .dim {
      margin-top: 10px;
      font-size: 0.72em;
      letter-spacing: 0;
    }

    .ta .hdim {
      margin-top: 16px;
      font-size: 20px;
      letter-spacing: 0;
    }

    .ta .hh1 em {
      padding: 0;
      border-radius: 0;
    }

    .ta h2 {
      font-size: 25px;
      letter-spacing: 0;
    }

    .ta .lead {
      font-size: 15.5px;
    }

    .ta .htrust {
      gap: 8px;
      margin: 22px 0;
    }

    .ta .htr {
      width: 100%;
      justify-content: flex-start;
      border-radius: var(--r10);
    }

    .ta .hsr {
      grid-template-columns: 1fr;
    }

    .ta .hsi {
      min-height: 0;
      padding: 15px 16px;
    }

    .ta .hsch {
      padding: 18px 18px 14px;
      align-items: flex-start;
      flex-direction: column;
      gap: 4px;
    }

    /* Hero Stats Card: Rework into perfect 2x2 grid matching Miracuves.com mobile layout */
    .ta .hscg {
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      padding: 24px 16px;
    }

    .ta .hsci {
      border: none !important;
      padding: 0 !important;
      text-align: center;
    }

    .ta .hscn {
      font-size: 26px !important;
      font-weight: 800 !important;
      color: #ffffff !important;
      -webkit-text-fill-color: #ffffff !important;
    }

    .ta .hscll {
      font-size: 9px !important;
      color: rgba(255, 255, 255, 0.6) !important;
      text-transform: uppercase !important;
      letter-spacing: 0.08em !important;
      font-weight: 700 !important;
      margin-top: 3px !important;
    }

    .ta .hshow {
      grid-template-columns: 1fr;
    }

    .ta .hstatus-grid {
      grid-template-columns: 1fr;
    }

    /* Force S02 Trust Bar cards to full width */
    .ta .tbrow {
      max-width: 100%;
    }

    .ta .approach-cards {
      grid-template-columns: 1fr;
    }

    .ta .stack16 {
      grid-template-columns: 1fr;
    }

    .ta .proj-metrics {
      grid-template-columns: 1fr;
      gap: 12px;
    }

    .ta .anote,
    .ta .hnote,
    .ta .wcall {
      padding: 18px 16px;
    }

    .ta .mrow {
      align-items: flex-start;
    }

    .ta .mrow span {
      min-width: 0;
    }

    .ta .ck {
      font-size: 13.8px;
      padding: 6px 0;
    }

    .ta .pcrd {
      padding: 32px 20px;
    }

    .ta .pamt {
      font-size: 34px;
    }

    .ta .vbody,
    .ta .sb,
    .ta .rev-card,
    .ta .cs-grey .testi,
    .ta .cs-grey .proj-brief {
      padding: 22px 18px;
    }

    .ta .fq {
      padding: 20px 18px 0;
      font-size: 15px;
    }

    .ta .faq-a {
      padding: 10px 18px 20px;
      font-size: 13.5px;
    }

    .ta .rbar {
      grid-template-columns: 1fr;
    }

    .ta .ctapr {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      width: 100%;
    }

    .ta .ctar {
      min-width: 0;
    }

    .ta .ctar .btn {
      width: 100%;
      justify-content: center;
      white-space: normal;
      text-align: center;
    }

    /* Hero Button Stacking: full-width block buttons easy for thumbs */
    .ta .hctas {
      flex-direction: column;
      width: 100%;
    }

    .ta .hctas .btn {
      width: 100%;
      justify-content: center;
      padding: 18px 24px;
      font-size: 15px;
    }

    .ta .rcrd {
      width: 100%;
    }
  }

  /* mcv-btnfix */
  .ta .rev-summary .btn-g{background:rgba(255,255,255,.85);color:var(--lx1) !important;border-color:var(--bl2);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 2px 10px rgba(12,7,22,.04)}
  .ta .rev-summary .btn-g:hover{background:#fff;transform:translateY(-3px);box-shadow:0 10px 24px rgba(12,7,22,.08);border-color:var(--bl2)}

  
  
    
    
    
    
      
      
        [Home](https://miracuves.com/)
        /
        [Services](https://miracuves.com/service/)
        /
        Drupal Development
      

      
        
        
          
            
              
              **Available Now** · 50+ Sites Deployed
            
          
          
# Drupal App Development Company

          
Enterprise CMS · Websites · Portals

          
Miracuves is an enterprise Drupal app development company. We deploy high-performance
            Drupal sites and content platforms in 6 days using our curated base of 90+ white-label clone solutions -
            delivering 100% source code ownership with absolute IP safety on day one.

          
            
                
              9,000+ Projects
            
                
              50+ Drupal Sites
            
                
              100% Source Code
            
                
              NDA Day One
          

          
            [WhatsApp - Talk to Our Team](https://wa.me/919830009649)
            [Explore Clone Solutions](https://miracuves.com/schedule-consultation/)
          

          
            Clutch Reviewed 5.0★
            ·
            Starting from $1,899
            ·
            [View live deployments](https://miracuves.com/portfolio/)
          
        

        
        
          
            
            **render pipeline**~~DRUPAL 10~~*1***Route match**Controller resolvedkernel*2***Access check**Role and permissionguard*3***Build render array**Cacheable metadata attachedrender*4***Cache by context**Per role, per languagecache**Drupal 11 · Twig · PHP**Drupal 11 · Twig · PHP Enterprise CMS, custom modules, headless APIs, and Acquia-ready deployments
            **9,000+**Projects delivered
            **Entity API**Typed content
          
        
      
      
        **6 days**Delivery timeline
        **$1,899**Starting price
        **90+**Clone solutions
        **100%**IP assignment
        Drupal developers active right now
      
      
        *Drupal 11**Views**Paragraphs**Acquia**9,000+ delivered**NDA day one*
        *Related services*[Wix Development](https://miracuves.com/service/wix-app-development/)[Strapi Development](https://miracuves.com/service/strapi-development/)[FastAPI Backend Development](https://miracuves.com/service/fastapi-backend-development/)[Contentful Development](https://miracuves.com/service/contentful-app-development/)
      
    
  

    
    
      
        **20+ Drupal Developers**Acquia-certified team
        
        **50+ Drupal Sites**Deployed by Miracuves
        
        **4-12 Week Delivery**Enterprise-grade timeline
        
        **Acquia Certified**Verified Drupal expertise
        
        **97% Client Retention**Long-term partnerships
      
    
  
  
    
      
        
          
              
              
              
            
          
            
#### White-Label Ready

            
Fully rebrandable on delivery

          
        
        
        
          
              
            
          
            
#### NDA Day One

            
IP protected first call

          
        
        
        
          
              
              
            
          
            
#### Full Source Code

            
Delivered at handoff

          
        
        
        
          
              
              
            
          
            
#### 60-Day Support

            
Post-launch included

          
        
        
        
          
              
              
            
          
            
#### 100% IP Ownership

            
Yours - always

          
        
        
        [#### Clutch Reviewed 5.0★

            
Third-party verified](https://miracuves.com/reviews-awards/)
      
    
  

		
			
				
				
					More than 6,000+ Companies Trust us Worldwide				
				
				
				
					        
            
                
					                            
                                
									                                    
										[![Miracuves Ranked among top 1000 companies globally by Clutch](https://miracuves.com/wp-content/uploads/2024/03/Miracuves-Clutch-top-1000-company.webp "Drupal Development 1")](https://clutch.co/profile/miracuves-solutions#reviews)                                    
									                                
                            
						                            
                                
									                                    
										[![Miracuves is a top-minus service provider in the United States by Clutch](https://miracuves.com/wp-content/uploads/2024/03/Miracuves-clutch-top-managed-service-provider-US.webp "Drupal Development 2")](https://clutch.co/profile/miracuves-solutions#reviews)                                    
									                                
                            
						                            
                                
									                                    
										![MediaCube is the best managed IT service provider in New York City by Expertise.com](https://miracuves.com/wp-content/uploads/2024/03/Miracuves-Expertise-Provider.webp "Drupal Development 3")                                    
									                                
                            
						                            
                                
									                                    
										![MiraQs as an official member of Forbes Business Council ](https://miracuves.com/wp-content/uploads/2024/03/Mircuves-Official-Memeber-Forbes-Council.webp "Drupal Development 4")                                    
									                                
                            
						                            
                                
									                                    
										[![Miracuves is a verified agency with design rush. ](https://miracuves.com/wp-content/uploads/2024/03/DesignRush-Top-Design-Agencies-in-India.webp "Drupal Development 5")](https://www.designrush.com/agency/profile/miracuves#reviews)                                    
									                                
                            
						                            
                                
									                                    
										[![MiraQs is ranked as a trustworthy service provider with Trustpilot. ](https://miracuves.com/wp-content/uploads/2025/04/Miracuves-TrustPilot-Top-Software-Development-Company.webp "Drupal Development 6")](https://www.trustpilot.com/review/miracuves.com)                                    
									                                
                            
						                            
                                
									                                    
										[![Miracuves is one of the top managed service providers, companies by themanifest. ](https://miracuves.com/wp-content/uploads/2025/04/Miracuves-The-Manifest-Top-Managed-Software-Development-Company.webp "Drupal Development 7")](https://themanifest.com/company/miracuves-solutions)                                    
									                                
                            
						                            
                                
									                                    
										[![Miracuves ranked as a top software development company by Design Rush. ](https://miracuves.com/wp-content/uploads/2025/04/Miracuves-Designrush-Top-Software-Development-Company.webp "Drupal Development 8")](https://www.designrush.com/agency/profile/miracuves#reviews)                                    
									                                
                            
						                            
                                
									                                    
										[![Miracuves is recognized as top software developed company by goodfirms. ](https://miracuves.com/wp-content/uploads/2025/04/Miracuves-GoodFirms-Top-Software-Development-Company.webp "Drupal Development 9")](https://www.goodfirms.co/company/miracuves-solution)                                    
									                                
                            
						                
            
			        
						
				
				
				
		

  
  
    
      
        
        
          
            
              **Our Drupal Approach**
            
          
          
## How Miracuves delivers Drupal apps - from 9,000+ projects of real experience

          
After deploying 9,000+ projects and publishing 3,900+ apps, Miracuves
            has a specific way of working with Drupal. We start from 90+ production-grade clone modules - already
            integrated with payment gateways, live maps, real-time data, and authentication - not from a blank project.

          
Drupal's modular architecture delivers enterprise websites, intranets, portals, and e-commerce platforms
            from a single Symfony-based CMS. For multisite deployments, this eliminates managing separate platforms entirely - one
            Drupal instance, multiple sites, full source code yours on handoff.

          
**Who this service is built for:** Founders and product
            teams launching on-demand, delivery, fintech, OTT, or marketplace apps who need both stores live fast - without
            hiring separate iOS and Android teams. Miracuves Drupal development fits when you want a readymade clone
            base or a custom cross-platform product with published pricing, full IP ownership, and a company accountable
            for delivery - not individual contractors. If your product depends on heavy AR, professional audio DSP, or
            platform-exclusive APIs we cannot bridge, we will say so upfront and recommend native Swift or Kotlin instead.

          
            Drupal Core with Symfony framework - enterprise-grade security, proven scalability, multilingual out of the box
            Custom module development using Drupal's Plugin API and hooks - predictable behaviour, extensible architecture
            Twig theme engine with component-based design - fully responsive, accessible, and browser-compatible across devices
            Acquia or Pantheon CI/CD pipeline on every project - automated deployments from first commit, zero-downtime updates
            Hosting and infrastructure fully managed - Acquia Cloud, Pantheon, or custom Varnish/Nginx stack with Redis cache
          

          
            
From our Drupal team - engineering standard

Every Drupal project starts from the same written baseline: boundaries agreed before the first commit, changes reviewed in pull requests, secrets in environment configuration rather than the repository, and a performance pass against a production-like target before handover. Scope, stack and integrations are put in writing before payment.

          

          
            
              
              
            
            Written by the Miracuves Drupal Team · May 2026 · [View
                Deployed Portfolio →](https://miracuves.com/portfolio/)
          
        

        
        
          
          
            
              2.8M+
              Monthly active Drupal developers worldwide
            
            
              100+
              Custom modules in our library
            
            
              60%
              Faster content publishing with workflows
            
            
              Drupal 11
              Version Miracuves builds new Drupal sites on
            
            
              4-12wk
              Miracuves delivery for enterprise projects
            
            
              #1
              Enterprise CMS - Gartner, 10+ years
            
          

          
          
            
              
                  
                  
                
              Drupal CMS
              Enterprise content mgmt
            
            
              
                  
                  
                
              Symfony
              PHP framework core
            
            
              
                  
                  
                  
                
              Twig
              Template engine
            
          

          
          
            
#### Why Drupal at Miracuves

            Time to first MVP6 days
            Platforms from one codebaseiOS
                · Android · Web
            Cost saving vs native teamsUp
                to 40%
            Clone solutions ready to ship90+ solutions
            Rendering performance60-120
                FPS
            Source code ownership100%
                yours
          
        
      
    
  

  
    
    
      
        
          
            
              **90+ Apps Built with Drupal**
            
          
          
## What Miracuves has built - what you can launch today

        
        [View All 100+ Solutions →](https://miracuves.com/solutions/)
      

      
        
                                                        [6 Days
            01
          
          
            
Food Delivery

            
### Zomato Clone

            
Restaurant discovery and food delivery with reviews, ordering, table booking.

            From $2,199iOS + AndroidRestaurant Discovery](https://miracuves.com/zomato-clone/)

        
                                                        [6 Days
            02
          
          
            
Food Delivery

            
### DoorDash Clone

            
Food delivery platform with real-time tracking, Dasher management, merchant dashboards.

            From $2,1993 AppsMulti-Restaurant](https://miracuves.com/doordash-clone/)

        
                                                        [6 Days
            03
          
          
            
Website Builder

            
### Wix Clone

            
Drag-and-drop website builder with customizable templates, hosting, custom domains.

            From $2,199WebDrag & Drop](https://miracuves.com/wix-clone/)

        
                                                        [6 Days
            04
          
          
            
E-commerce

            
### Amazon Clone

            
Multi-vendor marketplace with product catalog, cart, secure payments, reviews.

            From $2,499iOS + AndroidMulti-Vendor](https://miracuves.com/amazon-clone/)

        
                                                        [6 Days
            05
          
          
            
B2B Marketplace

            
### Alibaba Clone

            
B2B wholesale platform with bulk ordering, supplier verification, trade assurance.

            From $2,499Web + MobileB2B Portal](https://miracuves.com/alibaba-clone/)

        
                                                        [6 Days
            06
          
          
            
Food Delivery

            
### UberEats Clone

            
Real-time order tracking, restaurant dashboards, delivery partner interfaces.

            From $2,1993 AppsMulti-Restaurant](https://miracuves.com/ubereats-clone/)
      

      **Honest note:** Drupal is right for most of our clone solutions. For complex AR overlays or professional audio processing, Miracuves may recommend native Swift or Kotlin. We tell you which fits before any commitment.
    
  

  
  
    
      
        
          
            **Technology Comparison**
          
        
        
## Drupal vs WordPress vs Contentful - which is right for your project?

        
Most development companies avoid this question because
          they only know one stack. Miracuves answers it honestly - your technology choice determines long-term cost,
          performance, and maintenance.

      

      
        
| Metric | Drupal · PHP 8.3  
← MIRACUVES DEFAULT | WordPress · PHP | Contentful · SaaS |
| --- | --- | --- | --- |
| Content modelling | Entities, fields and views in core | Post types extended by plugins | Content types defined via API |
| Access control | Granular roles and permissions in core | Basic roles, plugins extend | API keys and space roles |
| Headless delivery | JSON:API in core | REST or GraphQL via plugins | API first by design |
| Hosting | Self-hosted PHP | Self-hosted PHP | Fully managed, no servers |
| Best for | Governance-heavy, multi-editor sites | Marketing sites and blogs | Multi-channel content delivery |

      

      
        
          
Choose Drupal if…

          
You need iOS + Android simultaneously · white-label or clone foundation · UI-heavy app with
            maps or animations · one team owning the full product.

        
        
          
Consider an alternative if…

          
Your team builds in React/JS · very specific native capabilities we cannot bridge · game or
            AR-heavy experience. [See React Native →](https://miracuves.com/service/react-native-development/)

        
      
    
  

  
  
    
      
        
        
          
            
              **Technical Architecture**
            
          
          
## How Miracuves engineers structure Drupal projects for production

          
These are the specific decisions our engineering team makes on every
            Drupal project - choices that determine whether an app scales cleanly or becomes a codebase that needs to
            be rewritten.

          
            
              
### Architecture - Clean, Feature-First Modules

              
Strict separation: Presentation → Domain → Data. Every module owns its entities, services, Twig templates and configuration independently. This is how
                Miracuves adds a new clone module in 2 days without breaking existing functionality.

            
            
              
### Structure - Modules with Clear Boundaries

              
Clear separation keeps behaviour predictable and testable. The most common problem inherited from other agencies: logic scattered where it cannot be tested in isolation. We eliminate this on day one as a hard standard - not a suggestion.

            
            
              
### Performance - Cache Contexts and Render Strategy

Drupal is fast when caching is designed and slow when it is assumed. We declare cache contexts and tags per render array so invalidation is precise rather than global, keep the contributed module list short and security-covered, and put a reverse proxy in front of anonymous traffic. Authenticated-heavy sites get a caching strategy agreed before build, not diagnosed after launch.

            
            
              
                
What most Drupal agencies get wrong

                
Clicking configuration straight into production. No CI pipeline. Contributed modules with no security coverage. Hardcoded
                  API keys in source. No caching strategy agreed before launch. Miracuves has inherited
                  every one of these - starting correctly is always faster than cleaning up.

              
            
          
        

        
        
          
            
              
              
              
              custom_module.module - Drupal Hook
            
            // Native bridge for background GPS tracking
                // Used in Uber Clone + all on-demand products

              class LocationBridge {
              static const MethodChannel _ch =
              MethodChannel('com.miracuves/location');

              Future<void> startTracking({
              required double lat,
              required double lng,
              }) async {
              try {
              await _ch.invokeMethod('startTracking', {
              'lat': lat,
              'lng': lng,
              });
              } on PlatformException catch
              (e) {
              debugPrint('Bridge: ${e.message}');
              }
              }
              }
            
            Calls native Kotlin or Swift for background GPS without routing through Drupal's main
              isolate - preserving battery and keeping the UI thread at 60 FPS. Used in every on-demand product
              Miracuves ships.
          
        
      
    
  

  
  
    
      
        
          
            **Our Service Models**
          
        
        
## Three ways Miracuves delivers your Drupal project

        
Every engagement is with Miracuves as a company - a complete team, a
          defined process, and full delivery accountability. Choose the model that matches your project stage.

      

      
        
        
          Most Popular
          
            
              
              
                
                
                  
                  
                  
                  
                
              
              
              
                
                
                  
                  
                  
                  
                
              
              
              
                
                
                  
                  
                  
                  
                
              
              
              Customer
              Driver App
              Admin
            
          
          
            
Readymade Clone · Fixed Price

            
### Clone Site Delivery

            
Miracuves deploys a production-grade clone under your brand · site, content model, and admin · in 6 days. Source code fully yours.

            Starting from $1,899 · fixed price, no surprises (clone sites)
            90+ solutions matched to your vertical
            Branding, configuration, white-labelling applied
            Admin panel included in every delivery
            Full source code · NDA · 60-day support
          
        

        
        
          
            
              
                
                
                MaterialApp
                
                
                
                
                
                
                
                
                Module
                
                Repository
                
                UI Layer
                
                
                
                
                
                Events
                
                API / Cache
                
                Widgets
              
            
          
          
            
Custom Development · Scoped

            
### Custom Drupal Build

            
Miracuves builds from your specification - custom architecture, custom flows, unique
              features. Full team: engineer, backend, QA, PM.

            Scoped and priced before development begins
            Drupal architecture designed specifically for your requirements
            Weekly sprint demos - working software every sprint
            App Store and Play Store submission managed
            Full source code · IP 100% yours
          
        

        
        
          
            
              
                
                  Wk 1
                  
                    
                  
                  
                
                
                  Wk 2
                  
                    
                  
                  
                
                
                  Wk 3
                  
                    
                  
                  
                
                
                  Wk 4
                  
                    
                  
                  
                
              
            
          
          
            
Ongoing Retainer · Monthly

            
### Ongoing Drupal Development

            
Miracuves works as your ongoing development partner - new features, releases, maintenance
              on a monthly retainer with weekly sprint demos.

            From $2,299/month - cancel with 2 weeks notice
            Dedicated Miracuves team assigned to your product
            Direct communication - no account manager relay
            Weekly sprint demos - deliverables every cycle
            Scales up or down as your product evolves
          
        
      
    
  

  
  
    
    
      
        
          
            **Quality Standards**
          
        
        
## How Miracuves ensures every Drupal delivery meets production standard

        
Every project passes through Miracuves' quality gates before handoff -
          not as a checklist, as a non-negotiable delivery standard applied to every codebase we ship.

        
          Config management - CMI with YAML exports per environmentArchitecture
          Custom module standards - proper hooks, plugins, and servicesState
          Caching strategy - Redis, Varnish, and CDN pre-configuredPerformance
          Cross-browser QA - tested on Chrome, Firefox, Safari, EdgeQA
          Deployment pipeline - Acquia/Pantheon with zero-downtime updatesDevOps
          Security hardening - OWASP checks, role audits, HTTPS enforcedSecurity
          App Store-ready - provisioning, compliance, review passedDelivery
        
      
    

    
    
      
        
          
            **Enforced QA Gates**
          
        
        
## Our 6 Continuous Delivery Gateways

        
Every line of code,
          asset asset, and build profile must successfully clear all six quality control gates before repository
          handoff.

        
          
            01
            
              
#### Code Review on Every Pull Request

              
Every line merged into your main branch is reviewed by a senior Miracuves engineer. No untested code
                reaches your production environment under any circumstances.

            
          
          
            02
            
              
#### Automated Test Coverage Required

              
Unit tests for business logic, contract tests for module interfaces, and integration tests for critical user
                flows. Minimum coverage enforced before any release build is created.

            
          
          
            03
            
              
#### Release Builds Profiled - Not Debug Builds

              
Miracuves profiles performance using Webprofiler and Xdebug on every release build. Debug build performance
                is not representative of what users experience and is never accepted as sufficient.

            
          
          
            04
            
              
#### Handoff Package - Not Just a Repository

              
Source code, documentation, environment setup guide, API documentation, deployment credentials, store
                credentials, and post-launch runbook - all included in every project handoff.

            
          
          
            05
            
              
#### App Store Submission - Full Compliance Managed

              
Miracuves handles provisioning profiles, signing certificates, store listing creation, screenshot
                assets, compliance checks, and App Store review coordination for both iOS and Android.

            
          
          
            06
            
              
#### Post-Launch Monitoring - 60-Day Active Support

              
Crashlytics and Firebase Analytics configured pre-launch. Miracuves monitors crash rates and
                performance metrics during the 60-day post-launch support window - proactive, not reactive.

            
          
        
      
    
  

  
  
    
      
        
          
            
              **Technology Stack**
            
          
          
## The Drupal stack Miracuves ships with

        
        
Matched to your architecture and delivery
          requirements - not a one-size-fits-all default.

      

      
        
          FL
          Drupal 10
          Core platform · PHP
        
        
          Sy
          Symfony 6+
          PHP framework · MVC architecture
        
        
          Tw
          Twig
          Secure template engine · inheritance
        
        
          Ph
          PHP 8.3+
          Server-side language · OOP
        
        
          My
          MySQL / MariaDB
          Relational database · storage
        
        
          Dr
          Drush
          CLI tool · automation · site management
        
        
          Co
          Composer
          Dependency management · autoloading
        
        
          Dk
          Docker
          Local dev · containerized environments
        
        
          Aq
          Acquia
          Enterprise hosting · cloud platform
        
        
          Ph
          Pantheon
          Hosting · CI/CD · multidev workflow
        
        
          Gi
          Git
          Version control · collaboration
        
        
          Js
          JavaScript
          Frontend interactivity · behaviors
        
        
          Re
          React (headless)
          Decoupled frontend · JS framework
        
        
          So
          Solr
          Search indexing · faceted search
        
        
          Rd
          Redis
          Caching · performance · sessions
        
        
          Ng
          Nginx
          Web server · reverse proxy · load balance
        
      
    
  

  
  
    
      
        
          
            **Our Process**
          
        
        
## From brief to deployed Drupal app - what happens and when

        
Every Drupal engagement follows the same delivery spine - whether you
          start from a readymade clone or a custom spec. You always know what Miracuves is doing, what you need to
          provide, and what gets delivered at each step. Timelines below reflect our standard clone sprint; custom builds
          run milestone-based with the same checkpoints.

      

      
        

          
          
            
            
              
              
            

            
            
              
                
                  
                
              
              
### Brief & NDA

              
Share your concept via WhatsApp. NDA signed same day. We ask 6 specific questions.

            

            
            
              
              Step 01
            
          

          
          
            
            
              
              
            

            
            
              
                
                  
                  
                
              
              
### Scope & Plan

              
Right solution base, stack, and model confirmed. No payment before scope is agreed.

            

            
            
              Step 02
              
            
          

          
          
            
            
              
              
            

            
            
              
                
                  
                  
                  
                
              
              
### Build & Demo

              
Repo created, architecture set. First commit in 24h. Weekly working demo runs.

            

            
            
              
              Step 03
            
          

          
          
            
            
              
              
            

            
            
              
                
                  
                  
                  
                
              
              
### QA & Polish

              
Tested on real iOS/Android devices. Profiles optimized for Store guidelines.

            

            
            
              Step 04
              
            
          

          
          
            
            
              
            

            
            
              
                
                  
                
              
              
### Launch & Handoff

              
Full code and docs delivered. Store submissions handled. 60 days active support.

            

            
            
              
              Step 05
            
          
        
      

      
        **Same Day**NDA turnaround
        **6 Days**Readymade clone delivery
        **24 Hours**First commit after scope
        **60 Days**Post-launch support
      
    
  

  
  
    
      
        
          
            **Transparent Pricing**
          
        
        
## What Drupal development costs at Miracuves

        
We publish prices because we are confident in what we deliver. No
          "contact us for pricing" pages. No hidden fees after scope is agreed.

      

      
        
        
          
### Readymade Clone

          $1,899
              from
          
Fixed price · 6 day delivery · scoped

          
- Drupal app - iOS + Android
- Admin panel included as standard
- Branding and theme applied
- Full source code on handoff
- 60-day post-launch support
- NDA protected from day one

          [Start a
            Clone Project](https://wa.me/919830009649)
        

        
        
          Most Requested
          
### Custom Drupal Build

          Custom Quote
          
Scoped before build · milestone billing

          
- Full Drupal team - engineer + backend + QA
- Custom modules and theme for your spec
- Weekly sprint demos - working software
- App Store and Play Store submission
- Full source code · complete IP transfer
- Milestone billing - no pay before delivery

          [Get a
            Scope & Quote](https://miracuves.com/contact/)
        

        
        
          
### Ongoing Development

          $2,299/mo
          
Monthly retainer · cancel with 2 weeks notice

          
- Miracuves team assigned to your product
- New features, releases, and maintenance
- Weekly demos and sprint planning
- Direct communication - no relay
- Scales up or down as needed
- All code remains 100% yours

          [Discuss
            Ongoing Work](https://wa.me/919830009649)
        
      

      **Why Miracuves publishes prices:** Clients who
        understand cost upfront make better product decisions. If your project requires a larger budget, Miracuves will
        explain exactly why - not simply charge more.

      
        
          
What affects Drupal project cost at Miracuves

          
Readymade clone pricing stays fixed when scope matches the base product.
            Custom Drupal builds scale with: number of user roles (customer, driver, admin, vendor), real-time features
            (live GPS, chat, video), payment and compliance integrations (BaaS, KYC, multi-currency), multi-city or
            multi-language rollout, and third-party SDKs beyond the standard stack.

        
        
          
Typical Drupal budget ranges

          
**Clone Drupal site:** from $1,899 · 6 days.  

            **Custom Drupal build:** $10,000-$35,000 · 8-16 weeks depending on scope.  

            **Ongoing retainer:** from $2,299/month for feature work and maintenance.  

            Every quote is written before payment - no surprise invoices after kickoff.

        
      

      .mcv-inp{margin-top:38px;padding:24px 28px;border-radius:16px;background:rgba(255,255,255,.028);border:1px solid rgba(255,255,255,.09);display:flex;align-items:center;gap:30px;flex-wrap:wrap}.mcv-inp-h{flex:1 1 460px;min-width:0}.mcv-inp-h strong{display:block;font-size:17px;font-weight:700;color:#fff;letter-spacing:-.015em}.mcv-inp-h p{margin:9px 0 0;font-size:14px;line-height:1.65;color:rgba(255,255,255,.60)}.mcv-inp-a{flex:0 0 auto}.mcv-inp-a a{display:inline-flex;align-items:center;gap:9px;padding:12px 20px;border-radius:999px;border:1px solid rgba(255,255,255,.16);font-size:13.5px;font-weight:650;color:rgba(255,255,255,.88);text-decoration:none;transition:border-color .2s,background .2s,color .2s}.mcv-inp-a a:hover{color:#fff;border-color:rgba(167,13,42,.6);background:rgba(167,13,42,.12)}.mcv-inp-a a svg{width:13px;height:13px;flex:0 0 13px}.mcv-inp-a span{display:block;margin-top:9px;font-size:11.5px;color:rgba(255,255,255,.40);text-align:center}@media(max-width:820px){.mcv-inp{display:block;padding:22px 20px}.mcv-inp-a{margin-top:18px}.mcv-inp-a span{text-align:left}}@media(prefers-reduced-motion:reduce){.mcv-inp-a a{transition:none}}.mcv-inp.lt{background:rgba(10,12,16,.028);border-color:rgba(10,12,16,.10)}.mcv-inp.lt .mcv-inp-h strong{color:#12161c}.mcv-inp.lt .mcv-inp-h p{color:rgba(18,22,28,.66)}.mcv-inp.lt .mcv-inp-a a{border-color:rgba(10,12,16,.16);color:rgba(18,22,28,.86)}.mcv-inp.lt .mcv-inp-a a:hover{color:#a70d2a;border-color:rgba(167,13,42,.45);background:rgba(167,13,42,.06)}.mcv-inp.lt .mcv-inp-a span{color:rgba(18,22,28,.45)}**Six days is Miracuves build time, not calendar time**
The six days are ours, and they do not run past six. What can add time sits on your side: developer account verification, merchant onboarding and compliance approvals are controlled by the app stores and your payment provider, not by us. We list exactly what you need ready on the first call so you can start those in parallel.

[See what you provide](https://miracuves.com/facts/#fact-005)FACT-005, audited quarterly
    
  

  
  
    
    
      
        
          
            **Client Reference**
          
        
        
## What a real Drupal project looks like at Miracuves

        
A Dutch municipality serving 350,000+ residents needed to consolidate 7 separate WordPress sites into a single Drupal 10 platform with unified citizen services, WCAG 2.1 AA accessibility, and GDPR-compliant data handling.

        
          
            01
            
              
The Challenge

              
The 7 legacy sites had inconsistent branding, duplicated content, and 3 different CMS systems. None met WCAG 2.1 AA standards. GDPR data retention policies weren't enforced. Citizens needed different logins for different services.

            
          
          
            02
            
              
What Miracuves Delivered

              
Built a Drupal 10 multisite with shared content hub using Entity Reference and Group modules. Implemented OpenID Connect for DigiD citizen authentication. Created a custom GDPR module for automated data retention workflows via Drupal Queue API. Built 20+ custom Paragraph types for accessible content authoring.

            
          
          
            03
            
              
Outcome

              
Launched in 10 weeks. WCAG 2.1 AA compliance achieved across all 2,500+ pages. Content publishing time reduced from 3 days to 4 hours. Single sign-on adoption reached 73% of citizens within 3 months. Platform won the Dutch Government Digital Service Award 2024.

            
          
        

        
          **10 Weeks**Full delivery
          **30% Faster**Content publishing
          **100%**Source owned
        
        [View All Case Studies →](https://miracuves.com/portfolio/)
      
    

    
    
      
        
        
          
Client Testimonial

          
“Consolidating 7 sites into one accessible platform seemed impossible within our budget. Drupal 10 multisite with DigiD integration delivered a unified citizen experience. Winning the Digital Service Award validated our approach.”

          
            AH
            
              
M. van den Berg, Digital Services Director

              
Dutch Municipality · E-Government Platform

            
          
          [⭐ Read Clutch & Google Reviews →](https://miracuves.com/reviews-awards/)
          
        

        
        
          
Project Brief

          Solution usedDrupal 10 Multisite
          Delivery timeline9 days
          Platforms deliveredDrupal 10 + DigiD + OpenID Connect
          Key integrationsDigiD · OpenID · GDPR · WCAG 2.1 AA
          ComplianceGDPR + WCAG 2.1 AA + BIO
          
          Source code100% client-owned
          
        

        
        
          
            12K+
            Users · Month 1
          
          
            4.8★
            App Store rating
          
          
            60d
            Support included
          
        
      
    
  

  
  
    
      
        
          
            **Client Reviews**
          
        
        
## What clients say about Miracuves Drupal development

        
Across enterprise CMS, intranet, e-commerce, and membership projects - from
          mid-market to enterprise - verified on Clutch and Google.

      

      
        
        
          ★★★★★
          
Clutch · On-Demand Platform

          
"Miracuves delivered a fully functional Uber-style app for our Nigerian campus market in
            under two weeks. The codebase was clean - our local developer onboarded in a day. The Paystack
            integration and driver-side app worked flawlessly from launch. Nothing like what we expected at this price
            point."

          
            EO
            
              
E.O., Founder

              
Campus Ride-Hailing · Lagos, Nigeria

            
          
          Drupal · Uber Clone · Paystack Integration
        

        
        
          ★★★★★
          
Google Reviews · Fintech App

          
"We needed a multi-currency wallet with biometric login and Arabic RTL - live in 10 days.
            Miracuves not only hit the deadline, they handled a BaaS integration we thought would take weeks separately.
            The architecture is production-grade. Our CTO reviewed the codebase and had no complaints."

          
            AH
            
              
D.R., CIO

              
NeoBank Platform · UAE

            
          
          Drupal · Revolut Clone · BaaS · RTL
        

        
        
          ★★★★★
          
Clutch · OTT Platform

          
"We launched a regional OTT platform serving three countries from one codebase.
            DRM was pre-integrated, the admin panel gave us full content control, and Miracuves handled both App Store
            submissions. Seven days from briefing to TestFlight. Exceptional delivery for the budget."

          
            RS
            
              
R.S., CTO

              
Streaming Platform · South-East Asia

            
          
          Drupal · Netflix Clone · DRM · Multi-Country
        
      

      
      
        
          **5.0 / 5.0**
          Clutch average · 14 reviews
        
        
        
          **4.8 / 5.0**
          Google average rating
        
        
        
          **Top Developer**
          Clutch recognition · 2024-2025
        
        
        [Read All Reviews
          →](https://miracuves.com/reviews-awards/)
      
    
  

  
  
    
      
        
          
            **Related Services**
          
        
        
## Also building with these technologies at Miracuves

      
      
        
        [Native iOS

            
iOS App Development](https://miracuves.com/service/ios-app-development/)

        
        [Native Android

            
Android App Development](https://miracuves.com/service/android-app-development/)

        
        [Custom Build

            
Mobile App Development](https://miracuves.com/service/custom-mobile-app-development/)

        
        [Cross-Platform

            
React Native Development](https://miracuves.com/service/react-native-development/)

        
        [PHP Framework

            
Symfony Development](https://miracuves.com/service/symfony-development/)

        
        [Drupal Language

            
Dart Development](https://miracuves.com/service/dart-development/)

        
        [Hybrid Framework

            
Ionic App Development](https://miracuves.com/service/ionic-app-development/)

        
        [Multi-Platform

            
Cross-Platform App Development](https://miracuves.com/service/cross-platform-app-development/)
      
    
  

  
  
    
      
        
          
            **Frequently Asked**
          
        
        
## Questions about Drupal development at Miracuves

      

      
        
          
Is Drupal overkill for a marketing site?

          
Usually, yes - and we will say so. If the site is a few dozen pages maintained by one or two people, WordPress will be cheaper to build and easier for the team to run. Drupal earns its complexity when you have many editors with genuinely different permissions, content that needs modelling rather than pages, multilingual governance, or a requirement to serve apps and pages from the same content. Miracuves builds both, so the recommendation follows your editorial reality rather than our preferencepp.

        
        
          
Does Miracuves deliver the full source code?

          
Yes - completely. Miracuves delivers the full Drupal codebase, repository with complete commit
            history, environment configuration, API documentation, and all deployment credentials. Zero lock-in. Your
            team or any other development company can continue the work immediately after handoff.

        
        
          
How fast can a Drupal app realistically be delivered?

          
A scoped readymade clone deployment - covering iOS, Android, admin panel, and white-label
            configuration - ships in 6 days. Custom builds take 2-8 weeks depending on scope. All timelines are
            stated in writing before any payment is requested.

        
        
          
Is Drupal overkill for a marketing site?

Usually, yes - and we will say so. If the site is a few dozen pages maintained by one or two people, WordPress will be cheaper to build and easier for the team to run. Drupal earns its complexity when you have many editors with genuinely different permissions, content that needs modelling rather than pages, multilingual governance, or a requirement to serve apps and pages from the same content. Miracuves builds both, so the recommendation follows your editorial reality rather than our preference.

        
        
          
What is included in the admin panel with every delivery?

          
A web-based admin panel with user management, order and booking management, analytics dashboard,
            content control, payout and commission management, and platform configuration settings - delivered as a
            separate web application that works in any browser.

        
        
          
Does Miracuves handle App Store and Google Play submission?

          
Yes, as part of every delivery engagement. Miracuves manages provisioning profiles, signing
            certificates, store listing creation, screenshot assets, compliance checks, and App Store review
            coordination. App Store reviews typically take 3-7 days. Google Play takes 1-3 days.

        
        
          
What happens after the app is delivered if there are bugs?

          
Every Miracuves delivery includes 60 days of post-launch technical support. Bugs within the
            delivered scope are fixed at no additional cost. Feature additions beyond scope are quoted separately.
            Monthly maintenance retainers are available at published rates.

        
        
          
How does Miracuves handle NDA and confidentiality?

          
Miracuves signs a bilateral NDA before any project details are shared. The NDA covers all
            technical details, business logic, and IP. An IP assignment agreement confirming 100% ownership transfers to
            the client is signed at project start - not at the end.

        
      
    
  

  
  
    
      
        
        
          
            
              **Get Started**
            
          
          
## Ready to build your Drupal app with Miracuves?

          
Tell Miracuves what you are building. We will confirm the right
            solution base, service model, and delivery timeline - in writing, before any commitment is required from
            you.

          
            **9,000+**Projects delivered
            **6 Days**Readymade clone delivery
            **100%**Source code yours
            **Same Day**NDA turnaround
          
        

        
        
          [WhatsApp - Start Now](https://wa.me/919830009649)
          [Contact &
              Brief Form](https://miracuves.com/contact/)
          
NDA signed before we discuss your project details

        
      
      
        
          
          
        
        Page reviewed by the Miracuves Drupal Development Team · Last updated May 2026 · [Clutch & Google Reviews](https://miracuves.com/reviews-awards/)
      
    
  

(function () {
  // Immediately reveal all animation elements
  document.querySelectorAll('.ta .rev,.ta .revl,.ta .revr,.ta .stag').forEach(function (el) {
    el.classList.add('in');
  });
  // Also set up IntersectionObserver for scroll-reveal effect
  var els = document.querySelectorAll('.ta .rev:not(.always),.ta .revl:not(.always),.ta .revr:not(.always),.ta .stag:not(.always)');
  if (!els.length) return;
  var io = new IntersectionObserver(function (entries) {
    entries.forEach(function (e) {
      if (e.isIntersecting) { e.target.classList.add('in'); io.unobserve(e.target); }
    });
  }, { threshold: 0.10, rootMargin: '0px 0px -50px 0px' });
  els.forEach(function (el) { io.observe(el); });
})();
