 :root{
      --bg:#fffafc;
      --bg-2:#fff3f8;
      --surface:rgba(255,255,255,.82);
      --surface-solid:#ffffff;
      --surface-dark:#22121d;
      --stroke:rgba(124,58,237,.08);
      --stroke-2:rgba(236,72,153,.14);
      --text:#17111a;
      --muted:#6b6170;
      --muted-2:#8e8092;
      --primary:#7c3aed;
      --secondary:#ec4899;
      --accent:#c026d3;
      --glow:rgba(236,72,153,.25);
      --shadow:0 18px 55px rgba(124,58,237,.08);
      --shadow-lg:0 28px 90px rgba(236,72,153,.14);
      --radius:28px;
      --radius-sm:18px;
      --container:min(1280px,calc(100% - 32px));
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:'Sora',sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 10% 10%, rgba(236,72,153,.12), transparent 22%),
        radial-gradient(circle at 85% 18%, rgba(124,58,237,.11), transparent 24%),
        linear-gradient(180deg,#fffafe 0%,#fff7fb 38%,#fffafe 100%);
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      background-image:
        linear-gradient(rgba(124,58,237,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(236,72,153,.03) 1px, transparent 1px);
      background-size:38px 38px;
      mask-image:linear-gradient(to bottom, transparent, rgba(0,0,0,.72) 14%, rgba(0,0,0,.72) 86%, transparent);
      pointer-events:none;
      z-index:-2;
    }
    a{text-decoration:none}
    img{max-width:100%}
    .container-fluid-custom{width:var(--container);margin:0 auto}

    .navbar-wrap{
      position:sticky;top:0;z-index:999;
      backdrop-filter:blur(18px);
      background:rgba(255,250,252,.72);
      border-bottom:1px solid rgba(124,58,237,.08);
    }
    .navbar-brand{
      color:var(--text)!important;
      font-weight:800;
      font-size:1rem;
      display:flex;align-items:center;gap:12px;
      letter-spacing:-.02em;
    }
    .logo-badge{
      width:42px;height:42px;border-radius:14px;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      display:grid;place-items:center;color:#fff;font-weight:800;
      box-shadow:0 12px 26px rgba(124,58,237,.28);
    }
    .navbar .nav-link{
      color:var(--muted)!important;
      font-weight:600;
      padding:.85rem 1rem!important;
      position:relative;
      transition:.25s ease;
    }
    .navbar .nav-link:hover,
    .navbar .nav-link.active{color:var(--text)!important}
    .navbar .nav-link:hover::after,
    .navbar .nav-link.active::after{
      content:"";
      position:absolute;left:1rem;right:1rem;bottom:.45rem;height:2px;border-radius:10px;
      background:linear-gradient(90deg,var(--primary),var(--secondary));
    }

    .btn-lux,.btn-ghost{
      display:inline-flex;align-items:center;justify-content:center;gap:10px;
      border-radius:999px;padding:14px 24px;font-weight:700;transition:.3s ease;
      border:1px solid transparent;
    }
    .btn-lux{
      color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      box-shadow:0 16px 36px rgba(236,72,153,.22);
    }
    .btn-lux:hover{color:#fff;transform:translateY(-2px);box-shadow:0 22px 44px rgba(236,72,153,.28)}
    .btn-ghost{
      color:var(--text);
      background:rgba(255,255,255,.85);
      border-color:rgba(124,58,237,.08);
      box-shadow:var(--shadow);
    }
    .btn-ghost:hover{transform:translateY(-2px);color:var(--text);border-color:rgba(236,72,153,.18)}

    .eyebrow{
      display:inline-flex;align-items:center;gap:10px;
      padding:10px 14px;border-radius:999px;
      background:rgba(255,255,255,.82);
      border:1px solid rgba(124,58,237,.09);
      box-shadow:var(--shadow);
      color:var(--primary);
      text-transform:uppercase;
      font-size:.72rem;
      font-weight:800;
      letter-spacing:.16em;
    }
    .eyebrow::before{
      content:"";width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));
      box-shadow:0 0 0 6px rgba(236,72,153,.08);
    }

    .section,.section-sm{padding:110px 0;position:relative}
    .section-sm{padding:78px 0}
    .hero{padding:46px 0 34px}

    .display-title,.section-title{
      font-family:'DM Serif Display',serif;
      letter-spacing:-.03em;
      line-height:.96;
      margin:18px 0 12px;
    }
    .display-title{font-size:clamp(3.2rem,7vw,6rem);max-width:720px}
    .section-title{font-size:clamp(2.3rem,4.2vw,4rem)}
    .gradient-text{
      background:linear-gradient(135deg,var(--primary),var(--secondary),var(--accent));
      -webkit-background-clip:text;background-clip:text;color:transparent;
    }
    .lead-copy,.section-copy{color:var(--muted);font-size:1.03rem;line-height:1.82}
    .center-head{max-width:880px;margin:0 auto 44px;text-align:center}

    .hero-shell,
    .metric-band,
    .portfolio-card,
    .service-card,
    .pricing-card,
    .step-card,
    .split-card,
    .quote-panel,
    .cta-banner,
    .contact-panel,
    .faq-item{
      background:var(--surface);
      border:1px solid rgb(124 58 237 / 23%);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      backdrop-filter:blur(18px);
      position:relative;
      overflow:hidden;
    }
    .hero-shell::before,
    .portfolio-card::before,
    .service-card::before,
    .pricing-card::before,
    .step-card::before,
    .split-card::before,
    .quote-panel::before,
    .cta-banner::before,
    .contact-panel::before{
      content:"";
      position:absolute;inset:0;
      background:linear-gradient(145deg,rgba(255,255,255,.55),transparent 44%,rgba(236,72,153,.03));
      pointer-events:none;
    }

    .hero-shell{padding:44px;isolation:isolate}
    .hero-shell::after{
      content:"";position:absolute;right:-120px;top:-100px;width:360px;height:360px;border-radius:50%;
      background:radial-gradient(circle, rgba(236,72,153,.18), transparent 66%);filter:blur(12px);z-index:-1;
    }
    .hero-checks{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px}
    .hero-checks li{padding-left:28px;position:relative;color:#493d4b;font-weight:600}
    .hero-checks li::before{
      content:"";position:absolute;left:0;top:8px;width:12px;height:12px;border-radius:50%;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      box-shadow:0 0 0 5px rgba(236,72,153,.08);
    }
    .hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}

    .hero-visual{position:relative;min-height:560px;display:grid;place-items:center}
    .orbital-grid{
      position:absolute;inset:6% 2%;display:grid;place-items:center;
    }
    .orbital-ring,.orbital-ring-2,.orbital-ring-3{
      position:absolute;border-radius:50%;border:1px solid rgba(124,58,237,.11);
    }
    .orbital-ring{width:470px;height:470px}
    .orbital-ring-2{width:360px;height:360px;border-style:dashed;border-color:rgba(236,72,153,.15)}
    .orbital-ring-3{width:260px;height:260px;border-color:rgba(124,58,237,.16)}
    .floating-chip{
      position:absolute;padding:10px 14px;border-radius:999px;
      background:rgba(255,255,255,.9);border:1px solid rgba(236,72,153,.14);
      box-shadow:var(--shadow);font-size:.8rem;font-weight:700;color:var(--text);z-index:3;
    }
    .chip-1{top:14%;left:2%}
    .chip-2{top:46%;right:-2%}
    .chip-3{bottom:14%;left:10%}

    .hero-product{
      width:min(100%,470px);
      padding:26px;
      border-radius:34px;
      background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,243,249,.92));
      border:1px solid rgba(236,72,153,.16);
      box-shadow:var(--shadow-lg);
      transform-style:preserve-3d;
      position:relative;z-index:2;
    }
    .hero-product::after{
      content:"";position:absolute;inset:-10px;z-index:-1;border-radius:40px;
      background:linear-gradient(135deg,rgba(124,58,237,.18),transparent 30%,rgba(236,72,153,.16));
      filter:blur(18px);
    }
    .mini-kicker{font-size:.75rem;color:var(--secondary);font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:10px}
    .hero-brand{font-family:'DM Serif Display',serif;font-size:3.4rem;line-height:.92;margin-bottom:12px;color:#2a1827}
    .hero-brand span{display:block;font-family:'Sora',sans-serif;font-size:.92rem;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:var(--primary);margin-bottom:6px}
    .hero-note{color:var(--muted);line-height:1.75}

    .ui-shell{margin-top:20px;padding:18px;border-radius:24px;background:#fff;border:1px solid rgba(124,58,237,.08);box-shadow:0 18px 40px rgba(20,10,22,.05)}
    .browser-bar{display:flex;gap:8px;margin-bottom:14px}
    .browser-bar span{width:11px;height:11px;border-radius:50%}
    .browser-bar span:nth-child(1){background:#ff5f57}
    .browser-bar span:nth-child(2){background:#febc2e}
    .browser-bar span:nth-child(3){background:#28c840}
    .ui-strip{height:10px;border-radius:999px;background:#f4e6f2;margin-bottom:10px}
    .ui-strip.alt{background:#ece1f7}
    .ui-banner{height:102px;border-radius:18px;background:linear-gradient(135deg,#ede9fe,#fbcfe8 42%,#f472b6);margin-bottom:12px}
    .ui-lower{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
    .ui-lower div{height:48px;border-radius:14px;background:#f7f1fb}

    .metric-band{padding:12px;margin-top:18px}
    .metric-item{text-align:center;padding:22px 12px}
    .metric-item h3{margin:0 0 6px;font-size:3rem;font-weight:800;color:var(--primary)}
    .metric-item p{margin:0;color:var(--muted);font-weight:600}

    .portfolio-card{height:320px;padding:24px;display:flex;align-items:flex-end}
    .portfolio-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(23,17,26,.08));pointer-events:none}
    .portfolio-a{background:linear-gradient(135deg,#f5ebff,#fde2f2)}
    .portfolio-b{background:linear-gradient(135deg,#fff2f8,#ede9fe)}
    .portfolio-c{background:linear-gradient(135deg,#fce7f3,#fae8ff)}
    .portfolio-d{background:linear-gradient(135deg,#f3e8ff,#ffe4ef)}
    .portfolio-content{position:relative;z-index:2}
    .portfolio-content h4{font-weight:800;margin-bottom:6px}
    .portfolio-content p{margin:0;color:#65596a}

    .service-card{padding:32px;height:100%}
    .service-stats{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}
    .service-stat{padding:18px 20px;min-width:160px;border-radius:20px;background:rgba(124,58,237,.04);border:1px solid rgba(124,58,237,.08)}
    .service-stat h4{margin:0;font-size:2rem;font-weight:800;color:var(--secondary)}
    .service-stat span{display:block;color:var(--muted);font-weight:600}
    .service-grid{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:repeat(2,118px);gap:12px;margin-bottom:20px}
    .service-block{
      border-radius:24px;
      background:linear-gradient(135deg,rgba(124,58,237,.08),rgba(236,72,153,.06),rgba(255,255,255,.9));
      border:1px solid rgb(124 58 237 / 43%);position:relative;overflow:hidden;
    }
    .service-block::before{content:"";position:absolute;inset:12px;border-radius:18px;border:1px dashed rgb(236 72 153 / 57%)}
    .service-block.tall{grid-row:span 2}

    .nav[role="tablist"] .btn-ghost.active,
    .nav[role="tablist"] .btn-ghost:hover{
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      color:#fff;
      border-color:transparent;
      box-shadow:0 16px 34px rgba(236,72,153,.22);
    }

    .pricing-card{padding:28px;height:100%}
    .pricing-card.popular{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
    .plan-tag{
      display:inline-flex;border-radius:999px;background:rgba(236,72,153,.09);
      color:var(--secondary);font-weight:800;font-size:1rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px;
    }
    .pricing-card h3{font-size:1.12rem;min-height:52px}
    .price{font-size:2.45rem;font-weight:800;color:var(--primary);margin-bottom:12px}
    .feature-list{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px}
    .feature-list li{position:relative;padding-left:24px;line-height:1.55;color:#4f4552}
    .feature-list li::before{content:"✓";position:absolute;left:0;top:1px;color:var(--secondary);font-weight:800}

    .step-card{padding:28px;height:100%}
    .step-icon{
      width:58px;height:58px;border-radius:18px;display:grid;place-items:center;color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      box-shadow:0 14px 30px rgba(236,72,153,.2);font-weight:800;margin-bottom:18px;
    }

    .split-card,.quote-panel{padding:28px;height:100%}
    .dashboard-card{margin-top:18px;padding:16px;border-radius:20px;background:linear-gradient(180deg,#fff,#fff6fb);border:1px solid rgba(236,72,153,.1)}
    .dashboard-window{padding:18px;border-radius:18px;background:#fff;border:1px solid rgba(124,58,237,.08);box-shadow:0 16px 30px rgba(124,58,237,.06)}
    .dashboard-chart{
      height:126px;border-radius:14px;margin-top:16px;position:relative;overflow:hidden;
      background:
        linear-gradient(180deg,rgba(236,72,153,.08),transparent),
        linear-gradient(90deg,transparent 0 14%,rgba(236,72,153,.08) 14% 16%,transparent 16% 34%,rgba(124,58,237,.08) 34% 36%,transparent 36% 54%,rgba(236,72,153,.08) 54% 56%,transparent 56% 74%,rgba(124,58,237,.08) 74% 76%,transparent 76%);
    }
    .dashboard-chart::after{content:"";position:absolute;left:10%;right:10%;top:55%;height:3px;background:linear-gradient(90deg,var(--primary),var(--secondary));transform:skewX(-28deg)}
    .stars{color:var(--secondary);letter-spacing:.2em;font-size:1.1rem}

    .cta-banner{padding:58px 34px;text-align:center;background:linear-gradient(135deg,#ffffff,#fbe8f5 60%,#ede9fe)}
    .cta-banner p{max-width:860px;margin:0 auto 18px;color:#635665;line-height:1.82}

    .faq-item{margin-bottom:16px}
    .faq-btn{
      width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;
      background:transparent;border:none;padding:22px 24px;font-weight:800;color:var(--text);
    }
    .faq-btn i{font-style:normal;font-size:1.15rem;color:var(--primary);transition:.25s ease}
    .faq-item.active .faq-btn i{transform:rotate(180deg)}
    .faq-answer{display:none;padding:0 24px 22px;color:var(--muted);line-height:1.82}

    .contact-panel{padding:32px;height:100%}
    .contact-meta{display:grid;gap:12px;margin-top:16px}
    .contact-meta div{padding:14px 16px;border-radius:16px;background:rgba(124,58,237,.04);border:1px solid rgba(124,58,237,.08);color:#4c4250}

    .footer{
      padding:34px 0 50px;
      border-top:1px solid rgba(124,58,237,.08);
      background:rgba(255,255,255,.42);
      backdrop-filter:blur(12px);
    }
    .footer a{color:#594f5c;font-weight:600}
    .footer a:hover{color:var(--secondary)}

    .glow-ball{position:absolute;border-radius:50%;pointer-events:none;filter:blur(80px);opacity:.45;z-index:-1}
    .glow-1{width:240px;height:240px;background:rgba(236,72,153,.18);top:90px;left:-80px}
    .glow-2{width:280px;height:280px;background:rgba(124,58,237,.16);bottom:80px;right:-100px}
    .reveal{opacity:0;transform:translateY(34px)}

    @media (max-width:991.98px){
      .hero-shell{padding:28px}
      .hero-visual{min-height:480px;margin-top:10px}
      .service-grid{grid-template-rows:repeat(2,96px)}
      .pricing-card.popular{transform:none}
    }
    @media (max-width:767.98px){
      :root{--container:min(100% - 20px,1280px)}
      .section,.section-sm{padding:74px 0}
      .hero{padding-top:22px}
      .display-title{font-size:3rem}
      .hero-shell,.portfolio-card,.service-card,.pricing-card,.step-card,.split-card,.quote-panel,.cta-banner,.contact-panel,.faq-item{border-radius:22px}
      .hero-visual{min-height:420px}
      .chip-1,.chip-3{left:0}
      .chip-2{right:0}
      .metric-item h3{font-size:1.6rem}
    }
    /* ===============================
   PREMIUM PROOF CARD
================================= */

.premium-proof {
  background: #ffffff;
  border: 1px solid #ffffff;
  padding: 28px;
  border-radius: 16px;
  transition: 0.3s ease;
}

.premium-proof:hover {
  border-color: #ec4899;
  box-shadow: 0 10px 30px rgba(212,175,55,0.12);
}

/* LIST */
.proof-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.proof-list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 12px;
  color: var(--muted);
  font-size: 14px;
}

/* gold dot */
.proof-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 6px;
  height: 6px;
  background: #ec4899;
  border-radius: 50%;
}

/* FOOTER */
.proof-footer strong {
  display: block;
  font-size: 1.2rem;
  color: #fff;
}

.proof-footer span {
  font-size: 13px;
  color: #777;
}

/* ===============================
   SERVICES SECTION
================================= */

.service-card {
  padding: 26px;
  border-radius: 26px;
  background: rgba(255,255,255,0.85);
  border: 1px solid rgba(124,58,237,0.08);
  box-shadow: 0 18px 50px rgba(124,58,237,0.08);
  transition: 0.35s ease;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.service-card h4 {
  font-weight: 700;
  margin-bottom: 8px;
  font-size: 1.1rem;
}

.service-card p {
  font-size: 0.9rem;
  color: #6b6170;
  line-height: 1.7;
}

.service-icon {
  display: inline-flex;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  margin-bottom: 14px;
  background: linear-gradient(135deg,#7c3aed,#ec4899);
  color: #fff;
  box-shadow: 0 10px 25px rgba(236,72,153,0.25);
}

/* Hover = premium feel */
.service-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 30px 80px rgba(236,72,153,0.18);
  border-color: rgba(236,72,153,0.2);
}