﻿body{background:linear-gradient(180deg,#FBFAFD 0%, #F5F2FB 100%);}

.wrap{max-width:1440px;margin:0 auto;padding:0 130px;position:relative}

/* decorative dots / arcs in hero bg */
.hero-deco{
  position:absolute;right:-100px;top:-40px;width:520px;height:520px;
  pointer-events:none;z-index:0;opacity:.55;
}
.hero-deco svg{width:100%;height:100%;display:block}
.hero-deco-l{
  position:absolute;left:-160px;top:120px;width:420px;height:420px;
  pointer-events:none;z-index:0;opacity:.4;
}
.hero-deco-l svg{width:100%;height:100%;display:block}

/* ============ BUTTONS ============ */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:12px 20px;border-radius:999px;
  font-weight:600;font-size:14.5px;border:1px solid transparent;cursor:pointer;
  transition:transform .15s ease, background .15s ease;
}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#000}
.btn-light{background:#fff;color:var(--text);border-color:var(--line)}
.btn-indigo{background:var(--indigo);color:#fff;text-decoration:none;}
.btn-text{text-decoration:none;}
.btn-outline-dark{background:transparent;color:#fff;border-color:rgba(255,255,255,.22)}
.btn .arrow{
  width:22px;height:22px;border-radius:999px;
  background:rgba(255,255,255,.18);display:grid;place-items:center;transition:transform .2s ease;
}
.btn-light .arrow{background:#F1F0F4;color:var(--text)}
.btn-outline-dark .arrow{background:rgba(255,255,255,.1);color:#fff}
.btn:hover .arrow{transform:translateX(2px)}
.btn .arrow svg{width:11px;height:11px}

.eyebrow{
  color:var(--indigo);font-weight:700;letter-spacing:.18em;font-size:12px;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:8px;white-space:nowrap;
}
.eyebrow .dia{
  width:10px;height:10px;background:var(--indigo);transform:rotate(45deg);
  border-radius:2px;
}

/* ============ HERO ============ */
.hero{padding:64px 130px 40px;text-align:center;position:relative;overflow-x:clip}
.hero-inner{max-width:780px;margin:0 auto;position:relative;z-index:2}
h1.hero-title{
  font-size:54px;font-weight:700;line-height:1.08;letter-spacing:-.022em;color:#0A0820;
  margin:18px 0 18px;
}
h1.hero-title .accent{color:var(--indigo)}
.hero-sub{
  color:var(--muted);font-size:16px;line-height:1.6;max-width:520px;margin:0 auto 30px;
}
.hero-ctas{display:inline-flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center}
.play-link{
  display:inline-flex;align-items:center;gap:10px;
  font-weight:600;color:#0A0820;font-size:14.5px;
}
.play-link .pl{
  width:32px;height:32px;border-radius:999px;background:#fff;border:1px solid var(--line);
  display:grid;place-items:center;color:var(--indigo);
}
.play-link .pl svg{width:11px;height:11px;margin-left:1px}

/* ============ FEATURED CASE STUDY (dark card) ============ */
.featured{padding:0 130px}
.feat{
  max-width:1440px;margin:0 auto;
  background:linear-gradient(180deg, #16133E 0%, #0A0820 100%);
  border-radius:22px;
  padding:36px;
  display:grid;grid-template-columns:1fr 1.05fr;gap:50px;
  color:#fff;position:relative;overflow:hidden;
  border:1px solid #1f1c4a;
}
.feat .eyebrow{color:var(--indigo-2)}
.feat .eyebrow .dia{background:var(--indigo-2)}
.brand-row{
  display:flex;align-items:center;gap:14px;margin:18px 0 14px;
}
.brand-tile{
  width:52px;height:52px;border-radius:14px;background:var(--indigo);
  display:grid;place-items:center;color:#fff;
  box-shadow:0 8px 22px rgba(92,70,245,.4);
}
.brand-tile svg{width:24px;height:24px}
.brand-name{font-size:36px;font-weight:700;letter-spacing:-.02em;color:#fff}
.feat h2{
  font-size:24px;font-weight:600;color:#fff;letter-spacing:-.01em;
  margin:0 0 12px;
}
.feat p.lead{color:var(--muted-d);font-size:14.5px;line-height:1.65;margin:0 0 26px;max-width:480px}

.feat-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  background:#141233;border:1px solid #221F4A;border-radius:14px;
  padding:18px 6px;margin-bottom:26px;
}
.fs-cell{padding:0 16px;position:relative}
.fs-cell + .fs-cell::before{
  content:"";position:absolute;left:0;top:4px;bottom:4px;width:1px;background:#221F4A;
}
.fs-num{color:var(--indigo-2);font-size:24px;font-weight:700;letter-spacing:-.01em;line-height:1.1}
.fs-lab{font-weight:600;color:#fff;font-size:13.5px;margin-top:4px}
.fs-sub{color:var(--muted-d);font-size:12px;margin-top:2px}

.feat-quote{
  background:#141233;border:1px solid #221F4A;border-radius:14px;
  padding:18px 20px;
}
.feat-quote .qm{color:var(--indigo-2);font-size:28px;line-height:1;font-weight:700;margin-bottom:4px}
.feat-quote p{color:#E1DEEF;font-size:14px;line-height:1.6;margin:0 0 14px}
.feat-quote .a-row{display:flex;align-items:center;gap:12px}
.avatar{
  width:36px;height:36px;border-radius:999px;flex:none;
  background:linear-gradient(160deg,#7a614a,#3c2d22);
  position:relative;overflow:hidden;
}
.avatar.b2{background:linear-gradient(160deg,#8a6b4d,#3a2a1d)}
.avatar.b3{background:linear-gradient(160deg,#a08068,#3a2a1d)}
.avatar .face{
  position:absolute;left:50%;top:18%;width:62%;height:62%;
  background:radial-gradient(ellipse at 50% 35%,#c9a78a 0%, #a17a5a 55%, transparent 60%);
  transform:translateX(-50%);border-radius:50%;
}
.avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:999px}
.author-name{font-weight:600;font-size:14px;color:#fff;line-height:1.2}
.author-role{color:var(--muted-d);font-size:12.5px;margin-top:2px}

/* right side: snapshot + chart */
.feat-side{display:flex;flex-direction:column;gap:20px;min-width:0}
.feat .eyebrow.small{font-size:11px;letter-spacing:.16em}
.snapshot{
  background:#141233;border:1px solid #221F4A;border-radius:14px;
  padding:0;overflow:hidden;
}
.snap-q{
  background:#1A1840;border-bottom:1px solid #221F4A;
  padding:14px 18px;color:#fff;font-size:14px;
}
.snap-body{padding:16px 18px}
.snap-app{display:flex;align-items:center;gap:8px;font-weight:600;color:#fff;font-size:14px;margin-bottom:8px}
.snap-app .logo{
  width:22px;height:22px;border-radius:999px;background:#0A0820;
  display:grid;place-items:center;border:1px solid #2A2754;
}
.snap-app .logo svg{width:14px;height:14px;color:#fff}
.snap-body p{color:var(--muted-d);font-size:13px;line-height:1.55;margin:0 0 10px}
.snap-body .why{font-weight:600;color:#fff;font-size:13.5px;margin:8px 0 6px;text-decoration:none;text-decoration-color:#2A2754}
.snap-body ul{margin:0;padding:0;list-style:none}
.snap-body ul li{
  display:flex;align-items:center;gap:8px;color:#E1DEEF;font-size:13px;padding:3px 0;
}
.snap-body ul li svg{width:12px;height:12px;color:#fff;flex:none}

.chart{
  background:#141233;border:1px solid #221F4A;border-radius:14px;padding:16px 16px 12px;
}
.chart-title{
  color:#A6A3BD;font-size:11px;letter-spacing:.16em;font-weight:700;text-transform:uppercase;margin-bottom:6px;
}
.chart svg{display:block;width:100%;height:auto}

/* ============ MORE STORIES ============ */
.more{padding:80px 130px 40px;text-align:center}
.more h2{
  font-size:30px;font-weight:700;letter-spacing:-.01em;color:#0A0820;margin:16px 0 36px;
}
.case-grid{
  max-width:1440px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;text-align:left;
}
.case{
  background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:22px;display:flex;flex-direction:column;gap:12px;
}
.case-head{display:flex;align-items:center;gap:10px}
.case-logo{
  width:40px;height:40px;border-radius:10px;flex:none;
  background:#fff;border:1px solid var(--line);
  display:grid;place-items:center;overflow:hidden;padding:5px;
}
.case-logo img{width:100%;height:100%;object-fit:contain;display:block}
/* featured dark-bg logo tile */
.brand-tile.feat-logo{
  background:#fff;border-radius:14px;overflow:hidden;padding:6px;
  box-shadow:0 8px 22px rgba(0,0,0,.25);
}
.brand-tile.feat-logo img{width:100%;height:100%;object-fit:contain;display:block}
.case-name{font-weight:600;color:#0A0820;font-size:16px;letter-spacing:-.01em}
.tag-pill{
  align-self:flex-start;
  padding:4px 10px;border-radius:6px;
  background:var(--indigo-soft);color:var(--indigo);
  font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  white-space:nowrap;
}
.case p{color:var(--muted);font-size:13px;line-height:1.55;margin:0 0 6px}
.case-stats{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;
  padding:6px 0;
}
.case-stats .v{color:var(--indigo);font-size:20px;font-weight:700;letter-spacing:-.01em;line-height:1.1}
.case-stats .l{color:var(--muted);font-size:11.5px;margin-top:2px}
.case-link{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:auto;padding:12px 0 0;
  border-top:1px solid var(--line);
  color:#0A0820;font-weight:600;font-size:13.5px;
  transition:color .18s;
}
.case-link .cl-arrow{
  width:30px;height:30px;border-radius:999px;flex:none;
  background:var(--indigo);color:#fff;
  display:grid;place-items:center;
  transition:transform .2s,background .2s;
}
.case-link:hover{color:var(--indigo)}
.case-link:hover .cl-arrow{transform:translateX(3px);background:#0046d5}
.case-link svg{width:11px;height:11px}


.view-all{
  margin:38px auto 0;
  display:flex;justify-content:center;
}
.view-all .btn{background:#fff;border:1px solid var(--line);color:#0A0820}

/* ============ STATS BAR (dark) ============ */
.stats-wrap{max-width:1440px;margin:30px auto 0;padding:0 130px}
.stats{
  background:#0A0820;border-radius:18px;padding:28px 24px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:14px;color:#fff;
  border:1px solid #1f1c4a;
}
.stat{display:flex;align-items:center;gap:16px;padding:0 8px;position:relative}
.stat + .stat::before{content:"";position:absolute;left:-4px;top:6px;bottom:6px;width:1px;background:#221F4A}
.stat-ico{
  width:42px;height:42px;border-radius:999px;background:rgba(142,123,255,.18);
  color:var(--indigo-2);display:grid;place-items:center;flex:none;
}
.stat-ico svg{width:20px;height:20px}
.stat-num{font-size:26px;font-weight:700;letter-spacing:-.01em;line-height:1.1}
.stat-lab{font-size:13px;color:#fff;font-weight:600;margin-top:4px}
.stat-sub{color:var(--muted-d);font-size:11.5px;margin-top:2px}

/* slider dots - hidden by default, shown via JS on mobile only */
.vtest-dots{display:none}

/* ============ CLIENT VOICES ============ */
.founders{padding:80px 130px 60px;text-align:center}
.founders h2{
  font-size:30px;font-weight:700;letter-spacing:-.01em;color:#0A0820;margin:16px 0 40px;
}
.vtest-grid{
  max-width:1440px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:left;
}
.vtest{
  background:#fff;
  border:1px solid #E4E1F3;
  border-radius:20px;
  overflow:hidden;
  display:flex;flex-direction:column;
  box-shadow:0 4px 28px -8px rgba(0,5,60,.09);
  transition:box-shadow .22s ease, transform .22s ease;
}
.vtest:hover{
  box-shadow:0 14px 44px -10px rgba(0,87,255,.16);
  transform:translateY(-4px);
}
.vtest-body{
  padding:28px 28px 24px;flex:1;
  display:flex;flex-direction:column;
  position:relative;
}
.vtest-body::after{
  content:'\201C';
  position:absolute;top:12px;right:20px;
  font-size:90px;line-height:1;font-family:Georgia,serif;
  color:#0057ff;opacity:.07;pointer-events:none;
}
.vtest-body p{
  font-size:15px;line-height:1.72;color:#2a2840;
  margin:0;flex:1;font-style:italic;
}
.vtest-footer{
  display:flex;align-items:center;gap:14px;
  padding:18px 28px;
  background:linear-gradient(135deg,rgba(0,87,255,.04),rgba(124,58,237,.04));
  border-top:1px solid #EBE8F8;
}
.vtest-footer .avatar{width:46px;height:46px;flex:none}
.vtest-footer .vf-name{font-weight:700;font-size:14.5px;color:#0A0820;line-height:1.2}
.vtest-footer .vf-role{color:var(--muted);font-size:12.5px;margin-top:3px}
.vauthor .name{font-weight:600;font-size:14px;color:#0A0820;line-height:1.2}
.vauthor .role{color:var(--muted);font-size:12.5px;margin-top:2px}

/* ============ INDUSTRIES ============ */
.industries{padding:36px 130px 60px;text-align:center}
.industries .eyebrow{color:var(--indigo)}
.industries h3{
  font-size:28px;font-weight:700;letter-spacing:-.01em;color:#0A0820;
  margin:14px 0 32px;
}
.ind-grid{
  max-width:1440px;margin:0 auto;
  display:grid;grid-template-columns:repeat(4,1fr);gap:14px;text-align:left;
}
.ind-card{
  display:flex;align-items:center;gap:14px;
  background:#fff;border:1px solid #E8E5F5;border-radius:16px;
  padding:18px 20px;
  transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
  cursor:default;
}
.ind-card:hover{
  box-shadow:0 8px 28px -8px rgba(0,87,255,.14);
  transform:translateY(-3px);
  border-color:#c4bef0;
}
.ind-ico{
  width:40px;height:40px;border-radius:11px;flex:none;
  background:rgba(0,87,255,.08);color:#0057ff;
  display:grid;place-items:center;
  transition:background .2s ease;
}
.ind-card:hover .ind-ico{background:rgba(0,87,255,.14)}
.ind-ico svg{width:18px;height:18px}
.ind-name{font-weight:700;font-size:14.5px;color:#0A0820;line-height:1.2}
.ind-sub{font-size:12px;color:var(--muted);margin-top:2px}
.ind-card.more{
  background:linear-gradient(135deg,rgba(0,87,255,.05),rgba(124,58,237,.05));
  border-color:#d8d3f0;justify-content:center;text-align:center;
}
.ind-card.more .ind-name{
  background:linear-gradient(135deg,#0057ff,#7c3aed);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}

/* ============ FOOTER CTA (dark) ============ */
.fcta{padding:0 130px 64px}
.fcta-inner{
  max-width:1440px;margin:0 auto;
  background:linear-gradient(180deg,#15123E 0%, #0A0820 100%);
  border-radius:22px;padding:40px;
  display:grid;grid-template-columns:1fr 1fr;gap:30px;
  color:#fff;position:relative;overflow:hidden;border:1px solid #1f1c4a;
}
.fcta h2{
  font-size:34px;font-weight:700;line-height:1.15;letter-spacing:-.015em;margin:0 0 14px;
}
.fcta h2 .accent{color:var(--indigo-2)}
.fcta p{color:var(--muted-d);font-size:14.5px;margin:0 0 22px;max-width:380px}
.fcta-cta{display:flex;gap:12px;margin-bottom:22px;flex-wrap:wrap}
.fcta-social{display:flex;align-items:center;gap:14px}
.avatars{display:flex}
.avatars .av{
  width:32px;height:32px;border-radius:999px;border:2px solid #15123E;
  margin-right:-8px;background:linear-gradient(160deg,#8a6b4d,#3a2a1d);position:relative;overflow:hidden;
}
.avatars .av:nth-child(2){background:linear-gradient(160deg,#b29070,#4a3526)}
.avatars .av:nth-child(3){background:linear-gradient(160deg,#7a614a,#2c1f15)}
.avatars .av:nth-child(4){background:linear-gradient(160deg,#a08068,#3a2a1d)}
.avatars .av .face{
  position:absolute;left:50%;top:18%;width:60%;height:60%;
  background:radial-gradient(ellipse at 50% 35%,#c9a78a 0%, #a17a5a 55%, transparent 60%);
  transform:translateX(-50%);border-radius:50%;
}
.fcta-social .lbl{color:var(--muted-d);font-size:13px;line-height:1.4}

.fcta-deco{
  position:absolute;right:0;top:0;bottom:0;width:42%;
  background:
    radial-gradient(circle at 80% 60%, rgba(142,123,255,.4) 0%, rgba(142,123,255,0) 55%);
  z-index:1;pointer-events:none;
}
.fcta-deco svg{
  position:absolute;right:50px;top:50%;transform:translateY(-50%);
  width:160px;height:160px;color:var(--indigo-2);
}

/* chat preview */
.hi-row{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px}
.hi-wave{font-size:20px}
.hi-text{color:var(--indigo-2);font-weight:600;font-size:14px;letter-spacing:.01em}
.chat-prev{
  position:absolute;top:50%;right:40px;transform:translateY(-50%);
  display:flex;flex-direction:column;gap:14px;
  width:340px;max-width:90%;
  z-index:2;
  pointer-events:auto;
}
.chat-bubble{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(142,123,255,.25);
  border-radius:16px;
  padding:14px 16px;
  color:#E1DEEF;
  font-size:14px;line-height:1.5;
  backdrop-filter:blur(6px);
  box-shadow:0 14px 30px -18px rgba(0,0,0,.6);
}
.chat-bubble.user{
  align-self:flex-end;
  background:rgba(142,123,255,.12);
  max-width:88%;
}
.chat-bubble.ai{
  align-self:flex-start;
  background:linear-gradient(180deg, rgba(92,70,245,.22), rgba(92,70,245,.08));
  border-color:rgba(142,123,255,.45);
  box-shadow:0 18px 40px -18px rgba(92,70,245,.45);
}
.cb-app{
  display:flex;align-items:center;gap:6px;
  color:var(--indigo-2);font-size:11.5px;font-weight:600;letter-spacing:.04em;
  margin-bottom:6px;text-transform:uppercase;
}
.cb-app svg{width:12px;height:12px}
.chat-bubble b{color:#fff;font-weight:700}
.chat-bubble .hl{
  background:rgba(142,123,255,.25);
  padding:1px 5px;border-radius:5px;color:#fff;
}
.chat-bubble .cursor{
  display:inline-block;width:8px;height:14px;
  background:var(--indigo-2);margin-left:3px;vertical-align:-2px;border-radius:1px;
  animation:cursor-blink 1s steps(2) infinite;
}
@keyframes cursor-blink{0%,50%{opacity:1}50.01%,100%{opacity:0}}

.btn-text{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--indigo-2);font-weight:600;font-size:14px;
  align-self:center;
}
.btn-text:hover{color:#fff}
.btn-text span{transition:transform .15s ease}
.btn-text:hover span{transform:translateX(3px)}

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

@media (max-width: 1024px){
  .feat{grid-template-columns:1fr;gap:28px}
  .case-grid{grid-template-columns:repeat(2,1fr)}
  .vtest-grid{grid-template-columns:repeat(2,1fr)}
  .ind-grid{grid-template-columns:repeat(2,1fr)}
  .stats{grid-template-columns:repeat(2,1fr);gap:22px}
  .stat + .stat::before{display:none}
  .fcta-inner{grid-template-columns:1fr;padding:28px}
  .fcta-deco{display:none}
  .chat-prev{display:none}
}

@media (max-width: 980px){
  .hero{padding:64px 22px 40px}
  .featured{padding:0 22px}
  .more,.founders{padding:70px 22px 36px}
  .industries{padding:30px 22px 50px}
  .fcta{padding:0 22px 56px}
  .stats-wrap{padding:0 22px}
}

@media (max-width: 860px){
  .hero{padding:48px 18px 24px}
  h1.hero-title{font-size:36px}
  .hero-sub{font-size:15px}
  .feat{padding:24px 20px}
  .brand-name{font-size:26px}
  .feat h2{font-size:20px}
  .feat-stats{grid-template-columns:repeat(3,1fr);gap:0}
  .feat p.lead{font-size:14px}
  .more,.founders{padding:56px 18px 32px}
  .more h2,.founders h2{font-size:24px}
  .industries{padding:24px 18px 44px}
  .industries h3{font-size:22px;margin:10px 0 24px}
  .fcta{padding:0 18px 44px}
  .fcta h2{font-size:26px}
  .vtest-body{padding:22px 22px 18px}
  .vtest-footer{padding:14px 22px}
}

@media (max-width: 640px){
  h1.hero-title{font-size:30px;letter-spacing:-.018em}
  .hero-sub{font-size:14.5px}
  .hero-ctas{flex-direction:column;align-items:stretch}
  .hero-ctas .btn{justify-content:center}
  .play-link{justify-content:center}
  .feat{padding:20px 16px}
  .brand-name{font-size:22px}
  .feat-stats{grid-template-columns:1fr;gap:14px}
  .fs-cell + .fs-cell::before{display:none}
  .case-grid{grid-template-columns:1fr}
  /* testimonials: transform-based slider */
  .vtest-slider-wrap{overflow:hidden;width:100%}
  .vtest-grid{
    display:flex;gap:0;max-width:none;margin:0;
    transition:transform .35s cubic-bezier(.4,0,.2,1);
    will-change:transform;
  }
  .vtest{flex:none;border-radius:16px}/* width set by JS */
  /* dots */
  .vtest-dots{display:flex;justify-content:center;gap:7px;margin-top:18px}
  .vtest-dot{
    width:7px;height:7px;border-radius:999px;
    background:#D5D1EE;border:none;cursor:pointer;padding:0;
    transition:background .2s,width .2s;
  }
  .vtest-dot.active{width:20px;background:#0057ff}
  .ind-grid{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr;gap:16px}
  .more h2,.founders h2{font-size:20px}
  .industries h3{font-size:18px;margin:10px 0 18px}
  .fcta h2{font-size:22px}
  .fcta-inner{padding:22px 18px}
  .vtest-body{padding:20px 18px 14px}
  .vtest-footer{padding:14px 18px}
  .snap-q{font-size:13px;padding:12px 14px}
  .feat-quote{padding:14px 16px}
  .feat-stats{padding:14px 4px}
}



/* Other Industries section */
.more-other{
  border-top:1px solid #EEEEF2;
  padding-top:60px;
  margin-top:20px;
  opacity:.9;
}
.other-note{
  font-size:13.5px;color:#9396A6;font-style:italic;
  margin:0 0 24px;
  padding:12px 18px;
  background:#F8F9FC;border-left:3px solid #EEEEF2;
  border-radius:0 6px 6px 0;
  max-width:600px;
}



