*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'Inter', sans-serif; font-size: 1rem; line-height: 1.5; color: #d1d5db; background: linear-gradient(135deg, #0a1628 0%, #0d1a2d 50%, #0a1628 100%); overflow-x: hidden; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
img { max-width: 100%; height: auto; }
a { text-decoration: none; color: inherit; }
:root { --sf: 'Space Grotesk', sans-serif; --bf: 'Inter', sans-serif; }

/* Tailwind utilities */
.text-5xl{font-size:3rem;line-height:1}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:0.875rem;line-height:1.25rem}.text-xs{font-size:0.75rem;line-height:1rem}
.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-white{color:#fff}.text-gray-200{color:#e5e7eb}.text-gray-300{color:#d1d5db}.text-gray-400{color:#9ca3af}.italic{font-style:italic}.leading-relaxed{line-height:1.625}
.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.mt-6{margin-top:1.5rem}
.py-20{padding-top:5rem;padding-bottom:5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}
.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.relative{position:relative}.absolute{position:absolute}.z-10{z-index:10}.text-center{text-align:center}.inline-flex{display:inline-flex}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}
.max-w-7xl{max-width:80rem}.max-w-4xl{max-width:56rem}.mx-auto{margin-left:auto;margin-right:auto}.w-full{width:100%}.rounded-2xl{border-radius:1rem}.rounded-lg{border-radius:.5rem}.rounded-full{border-radius:9999px}.overflow-hidden{overflow:hidden}.pointer-events-none{pointer-events:none}

.grad-text{color:#8b5cf6;background:linear-gradient(90deg,#8b5cf6,#00adff,#00d9c0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.skip-link{position:absolute;top:-50px;left:16px;background:#8b5cf6;color:#fff;padding:12px 24px;z-index:9999;border-radius:0 0 8px 8px;font-family:var(--bf);font-weight:500;text-decoration:none;transition:top .3s ease}
.skip-link:focus{top:0;outline:2px solid #00adff;outline-offset:2px}
a:focus-visible,button:focus-visible{outline:2px solid #8b5cf6;outline-offset:2px;border-radius:4px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.animate-marquee{animation:none!important}}

.ambient-glow-top{position:fixed;inset:0;background:radial-gradient(ellipse 80% 50% at 70% 20%,rgba(139,92,246,.06) 0%,transparent 50%);pointer-events:none;z-index:0}
.ambient-glow-bottom{position:fixed;inset:0;background:radial-gradient(ellipse 60% 40% at 30% 70%,rgba(139,92,246,.04) 0%,transparent 50%);pointer-events:none;z-index:0}

/* PRIMARY BUTTON */
.btn-primary{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:8px;font-family:var(--bf);font-size:.875rem;font-weight:500;color:#fff;background:rgba(139,92,246,.8);border:1px solid rgba(139,92,246,.5);backdrop-filter:blur(10px);box-shadow:0 4px 16px rgba(0,0,0,.2);transition:all .3s;cursor:pointer;text-decoration:none;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(139,92,246,.3)}
.btn-primary .btn-fill{position:absolute;inset:0;background:linear-gradient(90deg,#8b5cf6,#00adff);transform:translateX(-100%);transition:transform .5s}
.btn-primary:hover .btn-fill{transform:translateX(0)}
.btn-primary .btn-text,.btn-primary .btn-arrow{position:relative;z-index:1}
.btn-primary:hover .btn-arrow{transform:translateX(4px)}.btn-primary .btn-arrow{transition:transform .3s;display:inline-block}

/* SECONDARY BUTTON (Cross-Page Spec §0.10) */
.btn-secondary{position:relative;display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:8px;font-family:var(--bf);font-size:.875rem;font-weight:500;color:#fff;background:rgba(255,255,255,.05);backdrop-filter:blur(10px);overflow:visible;transition:all .3s;cursor:pointer;text-decoration:none;}
.btn-secondary:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
.btn-secondary .btn-border-static{position:absolute;inset:0;border-radius:8px;border:1px solid rgba(255,255,255,.2);transition:opacity .3s;pointer-events:none}
.btn-secondary:hover .btn-border-static{opacity:0}
.btn-secondary .border-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.btn-secondary .border-svg rect{stroke-dasharray:1000;stroke-dashoffset:1000;transition:stroke-dashoffset .6s ease-out}
.btn-secondary:hover .border-svg rect{stroke-dashoffset:0}
.btn-secondary .btn-glow{position:absolute;inset:0;border-radius:8px;box-shadow:0 0 20px rgba(139,92,246,.3);opacity:0;transition:opacity .3s;pointer-events:none}
.btn-secondary:hover .btn-glow{opacity:1}
.btn-secondary .btn-text,.btn-secondary .btn-arrow{position:relative;z-index:1}
.btn-secondary:hover .btn-arrow{transform:translateX(4px)}.btn-secondary .btn-arrow{transition:transform .3s;display:inline-block}

/* GLASS (standard — kept for reference) */
.glass{background:rgba(255,255,255,.05);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.3);transition:all .5s cubic-bezier(.4,0,.2,1);overflow:hidden}
.glass:hover{background:rgba(255,255,255,.07);backdrop-filter:blur(24px) saturate(1.1);border:1px solid rgba(139,92,246,.2);box-shadow:0 8px 32px rgba(0,0,0,.35),0 0 20px rgba(139,92,246,.08);transform:translateY(-2px)}
.glass img{padding:1rem 0}

/* LOGO MARQUEE */
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.animate-marquee{animation:marquee 35s linear infinite}.animate-marquee:hover{animation-play-state:paused}
.marquee-wrap{position:relative;width:100%;max-width:80rem;margin:0 auto;overflow:hidden;padding:0 1.5rem;height:72px}
.marquee-fade-left{position:absolute;left:0;top:0;bottom:0;z-index:10;width:50px;background:linear-gradient(90deg,rgba(10,22,40,.4) 0%,transparent 100%);pointer-events:none}
.marquee-fade-right{position:absolute;right:0;top:0;bottom:0;z-index:10;width:50px;background:linear-gradient(270deg,rgba(10,22,40,.4) 0%,transparent 100%);pointer-events:none}
.marquee-track{display:flex;align-items:center;gap:1.5rem;width:max-content;height:100%}
.logo-item{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:72px;height:72px}
.logo-item img{max-width:60px;max-height:60px;object-fit:contain;padding:0!important}

/* TESTIMONIAL CAROUSEL */
.testimonial-container{position:relative;max-width:64rem;margin:0 auto}
.testimonial-card-area{position:relative}
.testimonial-stack-1{position:absolute;left:50%;transform:translateX(-50%);top:16px;width:94%;height:100%;background:rgba(255,255,255,.02);border:1px dashed rgba(255,255,255,.1);border-radius:16px;pointer-events:none}
.testimonial-stack-2{position:absolute;left:50%;transform:translateX(-50%);top:8px;width:97%;height:100%;background:rgba(255,255,255,.03);border:1px dashed rgba(255,255,255,.15);border-radius:16px;pointer-events:none}
.testimonial-card{position:relative;background:rgba(10,22,40,.95);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:2.5rem}
.testimonial-slide{display:none}
.testimonial-slide.active{display:grid;grid-template-columns:1fr 88px;gap:2rem;align-items:center}
.testimonial-profile{width:88px;height:88px;border-radius:50%;padding:2px;background:linear-gradient(135deg,#8b5cf6,#00adff,#00d9c0);flex-shrink:0}
.testimonial-profile-inner{width:100%;height:100%;border-radius:50%;overflow:hidden;background:rgba(10,22,40,.9);display:flex;align-items:center;justify-content:center}
.testimonial-profile-inner img{width:100%;height:100%;object-fit:cover;padding:0!important}
.nav-arrow{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:all .3s}
.nav-arrow:hover{background:rgba(139,92,246,.15);border-color:rgba(139,92,246,.4);box-shadow:0 0 8px rgba(139,92,246,.15),0 0 16px rgba(0,173,255,.05);transform:scale(1.1)}
.nav-arrow svg{transition:all .3s}.nav-arrow:hover svg{stroke:url(#arrowGrad)}
.dot-indicator{width:24px;height:24px;border-radius:50%;border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:all .3s}
.dot-indicator.active{background:linear-gradient(90deg,#8b5cf6,#00adff)}.dot-indicator:not(.active){background:rgba(255,255,255,.1)}

/* CASE STUDY CARDS — Feature Card (Light Glass) */
.case-card{position:relative;border-radius:.75rem;overflow:hidden;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);transition:all .5s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}
.case-card:hover{background:rgba(255,255,255,.07);border-color:rgba(139,92,246,.2);box-shadow:0 8px 32px rgba(0,0,0,.35),0 0 20px rgba(139,92,246,.08);transform:translateY(-2px)}
.case-card[data-color="purple"]:hover{border-color:rgba(139,92,246,.25)}.case-card[data-color="blue"]:hover{border-color:rgba(0,173,255,.25)}.case-card[data-color="green"]:hover{border-color:rgba(0,217,192,.25)}
.card-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(139,92,246,.08) 0%,transparent 60%);opacity:0;transition:opacity .5s;pointer-events:none}
.case-card:hover .card-glow{opacity:1}
.case-card-content{position:relative;z-index:1;display:flex;flex-direction:column;flex:1}

/* Case card image — object-fit: contain so transparent mockups show fully */
.case-card-image{height:220px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:1rem}
.case-card[data-color="purple"] .case-card-image{background:linear-gradient(135deg,rgba(139,92,246,.12) 0%,rgba(10,22,40,.95) 100%)}
.case-card[data-color="blue"] .case-card-image{background:linear-gradient(135deg,rgba(0,173,255,.12) 0%,rgba(10,22,40,.95) 100%)}
.case-card[data-color="green"] .case-card-image{background:linear-gradient(135deg,rgba(0,217,192,.12) 0%,rgba(10,22,40,.95) 100%)}
.case-card-image img{width:100%;height:100%;object-fit:contain;padding:0!important}
.case-logo-badge{position:absolute;top:12px;right:12px;width:56px;height:56px;border-radius:50%;background:rgba(10,22,40,.7);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:2}
.case-logo-badge img{max-height:44px;max-width:44px;object-fit:contain;padding:0!important}
.case-card-body{padding:1.5rem;display:flex;flex-direction:column;flex:1}
.case-card-body>.btn-secondary{margin-top:auto}

/* Stats — value on TOP, label below. Values naturally align. */
.case-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1rem}
.case-stat{display:flex;flex-direction:column}
.case-stat-value{font-family:var(--sf);font-weight:700;font-size:1.125rem;line-height:1.3;color:#fff;margin-bottom:.25rem}
.case-stat-value.gradient{color:#8b5cf6;background:linear-gradient(135deg,#8b5cf6 0%,#8b5cf6 30%,#00adff 60%,#00d9c0 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 12px rgba(139,92,246,.6)) drop-shadow(0 0 24px rgba(139,92,246,.4))}
.case-stat-label{font-size:.75rem;line-height:1rem;color:#d1d5db;margin-bottom:.25rem}

@keyframes pulseGlow{0%,100%{filter:drop-shadow(0 0 12px rgba(139,92,246,.6)) drop-shadow(0 0 24px rgba(139,92,246,.4))}50%{filter:drop-shadow(0 0 18px rgba(139,92,246,.7)) drop-shadow(0 0 32px rgba(139,92,246,.5))}}
.pulse-glow{animation:pulseGlow 3s ease-in-out infinite}

/* RESPONSIVE */
.hero-grid{display:grid;grid-template-columns:2fr 3fr;gap:3rem;align-items:center}
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
@media(min-width:1200px){.px-6{padding-left:2.5rem;padding-right:2.5rem}}
@media(max-width:900px){.hero-br{display:none}.case-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.text-4xl{font-size:1.875rem;line-height:2.25rem}.hero-grid{grid-template-columns:1fr;gap:2.5rem}.testimonial-slide.active{grid-template-columns:1fr;text-align:center}.testimonial-profile{margin:0 auto 1rem;order:-1}.case-stats{grid-template-columns:1fr}}
@media(max-width:500px){.case-grid{grid-template-columns:1fr}}

.hero-image-zone img{width:100%;object-fit:contain;padding:0!important}