/* ================================================================
   LIKITH KUMAR — AI DIGITAL MARKETING
   Clean White SaaS Design inspired by Spark Advisors
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap');

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{
  font-family:'Inter',sans-serif;
  background:#fff;
  color:#0d1117;
  line-height:1.65;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  -webkit-overflow-scrolling:touch;
}
img,svg{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer}

/* Accessibility: Skip to Content */
.skip-to-content{
  position:absolute;top:-100px;left:16px;
  background:#2563eb;color:#fff;
  padding:11px 20px;border-radius:8px;
  font-family:'Plus Jakarta Sans',Inter,sans-serif;
  font-weight:700;font-size:.88rem;
  z-index:99999;box-shadow:0 8px 32px rgba(0,0,0,.15);
  transition:top .2s cubic-bezier(.4,0,.2,1);
}
.skip-to-content:focus{top:16px;outline:3px solid #fff}

/* Accessible visible focus ring */
:focus-visible{
  outline:2.5px solid #2563eb;
  outline-offset:2.5px;
}

:root {
  --bg:#ffffff; --bg-soft:#f7f8fc; --bg-muted:#f0f2f8;
  --border:#e4e8f0; --border-soft:#eff1f8;
  --text:#0d1117; --text-2:#4a5568; --text-m:#8896aa;
  --blue:#2563eb; --blue-h:#1d4ed8; --blue-l:#eff6ff; --blue-g:rgba(37,99,235,.15);
  --purple:#7c3aed; --purple-l:#f5f3ff;
  --green:#059669; --red:#dc2626; --amber:#d97706;
  --dark:#0d1117;
  --fnt:'Plus Jakarta Sans',Inter,sans-serif;
  --r-sm:8px; --r:12px; --r-lg:20px; --r-pill:999px;
  --sh-xs:0 1px 3px rgba(0,0,0,.06); --sh-sm:0 4px 12px rgba(0,0,0,.06);
  --sh-md:0 8px 32px rgba(0,0,0,.08); --sh-lg:0 20px 60px rgba(0,0,0,.10);
  --sh-xl:0 40px 80px rgba(0,0,0,.12);
  --ease:.25s cubic-bezier(.4,0,.2,1);
  --ease-slow:.5s cubic-bezier(.16,1,.3,1);
}

/* Scroll animations */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease-slow),transform .7s var(--ease-slow)}
[data-reveal].is-visible{opacity:1;transform:translateY(0)}
[data-reveal="left"]{transform:translateX(-28px)}[data-reveal="left"].is-visible{transform:translateX(0)}
[data-reveal="right"]{transform:translateX(28px)}[data-reveal="right"].is-visible{transform:translateX(0)}
[data-reveal="scale"]{transform:scale(.92)}[data-reveal="scale"].is-visible{transform:scale(1)}
[data-delay="1"]{transition-delay:.1s}[data-delay="2"]{transition-delay:.2s}
[data-delay="3"]{transition-delay:.3s}[data-delay="4"]{transition-delay:.4s}[data-delay="5"]{transition-delay:.5s}

.container{width:100%;max-width:1160px;margin:0 auto;padding:0 24px}
section{padding:100px 0}

h1,h2,h3,h4{font-family:var(--fnt);line-height:1.15;font-weight:800;color:var(--text);letter-spacing:-.02em}
h1{font-size:clamp(2.2rem,5vw,3.6rem)}
h2{font-size:clamp(1.8rem,4vw,2.65rem)}
h3{font-size:1.2rem;font-weight:700}
p{color:var(--text-2);line-height:1.75}

.eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);background:var(--blue-l);padding:5px 14px;border-radius:var(--r-pill);margin-bottom:1.25rem}
.eyebrow-dark{color:rgba(255,255,255,.9);background:rgba(255,255,255,.12)}
.section-header{margin-bottom:56px;max-width:620px}
.section-header.center{text-align:center;margin-left:auto;margin-right:auto}
.section-header h2{margin-bottom:14px}
.section-header p{font-size:1.05rem}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:var(--r-sm);font-family:var(--fnt);font-weight:700;font-size:.95rem;transition:all var(--ease);border:none;white-space:nowrap;cursor:pointer}
.btn-primary{background:var(--blue);color:#fff;box-shadow:0 4px 16px var(--blue-g)}
.btn-primary:hover{background:var(--blue-h);transform:translateY(-1px);box-shadow:0 8px 24px rgba(37,99,235,.3)}
.btn-secondary{background:#fff;color:var(--text);border:1.5px solid var(--border);box-shadow:var(--sh-xs)}
.btn-secondary:hover{border-color:#c5cfe0;box-shadow:var(--sh-sm);transform:translateY(-1px)}
.btn-outline-white{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.3)}
.btn-outline-white:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.55)}
.btn-ghost{background:transparent;color:var(--blue);padding:10px 18px}
.btn-ghost:hover{background:var(--blue-l)}
.btn-lg{padding:16px 34px;font-size:1rem}
.btn-sm{padding:9px 18px;font-size:.85rem}

/* Navbar */
.announcement-bar{background:linear-gradient(90deg,#2563eb,#7c3aed);color:#fff;text-align:center;padding:10px 20px;font-size:.84rem;font-weight:600;position:relative;z-index:1001}
.announcement-bar a{color:#fff;text-decoration:underline;text-underline-offset:3px}

.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-soft);transition:background var(--ease),box-shadow var(--ease)}
.navbar.scrolled{background:rgba(255,255,255,.97);box-shadow:var(--sh-sm)}
.nav-container{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}
.brand-logo{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}
.brand-logo-icon{width:36px;height:36px;background:linear-gradient(135deg,var(--blue),var(--purple));border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;color:#fff;box-shadow:0 4px 12px rgba(37,99,235,.3)}
.brand-logo-text{font-family:var(--fnt);font-size:1.1rem;font-weight:800;color:var(--text);letter-spacing:-.02em}
.brand-logo-text span{color:var(--blue)}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-links a{font-size:.9rem;font-weight:600;color:var(--text-2);padding:6px 12px;border-radius:var(--r-sm);transition:color var(--ease),background var(--ease)}
.nav-links a:hover{color:var(--text);background:var(--bg-soft)}
.nav-cta-group{display:flex;align-items:center;gap:10px;flex-shrink:0}
.nav-login{font-size:.88rem;font-weight:600;color:var(--text-2);transition:color var(--ease);padding:6px 10px}
.nav-login:hover{color:var(--text)}
.mobile-menu-btn{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:6px}
.mobile-menu-btn span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .3s,opacity .3s}
.mobile-menu-btn.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mobile-menu-btn.active span:nth-child(2){opacity:0}
.mobile-menu-btn.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav{display:none;position:fixed;top:68px;left:0;width:100%;background:#fff;border-bottom:1px solid var(--border);padding:20px 24px 28px;flex-direction:column;gap:4px;z-index:999;box-shadow:var(--sh-md)}
.mobile-nav.active{display:flex}
.mobile-nav a{font-size:1rem;font-weight:600;color:var(--text);padding:11px 0;border-bottom:1px solid var(--border-soft)}
.mobile-nav .btn{margin-top:12px;justify-content:center}

/* Hero */
.hero{padding:130px 0 90px;background:var(--bg);position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-60px;right:-100px;width:700px;height:700px;background:radial-gradient(circle,rgba(37,99,235,.06) 0%,transparent 65%);pointer-events:none}
.hero::after{content:'';position:absolute;bottom:-40px;left:-60px;width:500px;height:500px;background:radial-gradient(circle,rgba(124,58,237,.05) 0%,transparent 65%);pointer-events:none}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative;z-index:1}
.hero-content{max-width:560px}
.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;background:var(--blue-l);color:var(--blue);border-radius:var(--r-pill);font-size:.82rem;font-weight:700;margin-bottom:1.5rem;border:1px solid rgba(37,99,235,.15)}
.hero-badge-dot{width:7px;height:7px;background:var(--blue);border-radius:50%;animation:pulse-dot 2s ease infinite}
@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.25)}}
.hero h1{margin-bottom:1.25rem;line-height:1.1}
.hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--blue) 0%,var(--purple) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-sub{font-size:1.1rem;color:var(--text-2);margin-bottom:2rem}
.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:2.5rem}
.hero-trust{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.hero-trust-item{display:flex;align-items:center;gap:7px;font-size:.84rem;font-weight:600;color:var(--text-m)}
.hero-trust-item .check{width:18px;height:18px;background:var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.65rem;color:#fff}

/* Hero visual / dashboard mockup */
.hero-visual{position:relative;display:flex;justify-content:center;align-items:center}
.hero-card-stack{position:relative;width:100%;max-width:520px}
.hero-main-card{background:#fff;border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--sh-xl);overflow:hidden}
.hero-card-header{background:var(--bg-soft);border-bottom:1px solid var(--border);padding:14px 20px;display:flex;align-items:center;gap:8px}
.hero-card-dots{display:flex;gap:6px}
.hero-card-dot{width:10px;height:10px;border-radius:50%}
.hero-card-dot:nth-child(1){background:#ff5f57}
.hero-card-dot:nth-child(2){background:#febc2e}
.hero-card-dot:nth-child(3){background:#28c840}
.hero-card-title-bar{flex:1;background:var(--border);height:8px;border-radius:4px;margin:0 20px}
.hero-card-body{padding:24px}
.hero-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.hero-stat-box{background:var(--bg-soft);border-radius:var(--r-sm);padding:16px 14px;text-align:center;border:1px solid var(--border)}
.hero-stat-val{display:block;font-family:var(--fnt);font-size:1.4rem;font-weight:800;color:var(--blue);margin-bottom:4px}
.hero-stat-lbl{font-size:.72rem;color:var(--text-m);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.hero-chart-area{background:var(--bg-soft);border-radius:var(--r-sm);height:120px;display:flex;align-items:flex-end;justify-content:space-around;padding:16px 16px 0;border:1px solid var(--border);overflow:hidden;gap:6px}
.hero-bar{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--blue) 0%,rgba(37,99,235,.35) 100%);transform-origin:bottom;animation:bar-grow 1.2s ease both}
.hero-bar:nth-child(1){height:55%;animation-delay:.1s}
.hero-bar:nth-child(2){height:75%;animation-delay:.2s}
.hero-bar:nth-child(3){height:50%;animation-delay:.3s}
.hero-bar:nth-child(4){height:90%;animation-delay:.4s}
.hero-bar:nth-child(5){height:65%;animation-delay:.5s}
.hero-bar:nth-child(6){height:80%;animation-delay:.6s}
.hero-bar:nth-child(7){height:100%;animation-delay:.7s}
@keyframes bar-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}

.hero-float-card{position:absolute;background:#fff;border-radius:var(--r);border:1px solid var(--border);box-shadow:var(--sh-md);padding:12px 16px;display:flex;align-items:center;gap:10px;animation:float-card 4s ease-in-out infinite;z-index:10;white-space:nowrap}
.hero-float-card:nth-child(2){animation-delay:-2s;animation-duration:5s}
@keyframes float-card{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.hero-float-1{bottom:20px;left:-30px}
.hero-float-2{top:30px;right:-20px}
.float-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}
.float-icon-blue{background:var(--blue-l)}
.float-icon-green{background:#ecfdf5}
.float-text-main{font-size:.82rem;font-weight:700;color:var(--text);display:block}
.float-text-sub{font-size:.72rem;color:var(--text-m);display:block}

/* Logo strip */
.logo-strip{padding:44px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg-soft)}
.logo-strip-label{text-align:center;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-m);margin-bottom:28px}
.logo-marquee-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,black 12%,black 88%,transparent);mask-image:linear-gradient(to right,transparent,black 12%,black 88%,transparent)}
.logo-marquee{display:flex;align-items:center;gap:56px;width:max-content;animation:marquee-scroll 28s linear infinite}
.logo-marquee:hover{animation-play-state:paused}
@keyframes marquee-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.logo-item{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:700;color:var(--text-m);white-space:nowrap;opacity:.65;transition:opacity var(--ease)}
.logo-item:hover{opacity:1}
.logo-item-icon{width:28px;height:28px;border-radius:6px;background:var(--bg-muted);display:flex;align-items:center;justify-content:center;font-size:.85rem}

/* Platform tabs */
.platform-section{background:var(--bg)}
.platform-tabs{display:flex;gap:6px;background:var(--bg-soft);border-radius:var(--r);padding:5px;border:1px solid var(--border);margin-bottom:40px;overflow-x:auto;scrollbar-width:none}
.platform-tabs::-webkit-scrollbar{display:none}
.tab-btn{padding:10px 22px;border-radius:9px;background:transparent;border:none;font-size:.9rem;font-weight:700;color:var(--text-m);transition:all var(--ease);white-space:nowrap;flex-shrink:0;cursor:pointer}
.tab-btn.active{background:#fff;color:var(--text);box-shadow:var(--sh-xs)}
.tab-btn:hover:not(.active){color:var(--text-2)}
.tab-pane{display:none}
.tab-pane.active{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.tab-features{list-style:none;display:flex;flex-direction:column;gap:16px}
.tab-feature-item{display:flex;align-items:flex-start;gap:14px;padding:18px;border-radius:var(--r);border:1px solid transparent;cursor:pointer;transition:all var(--ease)}
.tab-feature-item:hover,.tab-feature-item.active{background:var(--bg-soft);border-color:var(--border)}
.tab-feature-icon{width:40px;height:40px;background:var(--blue-l);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
.tab-feature-text h4{font-size:.95rem;font-weight:700;margin-bottom:3px}
.tab-feature-text p{font-size:.85rem;color:var(--text-m)}
.tab-visual{background:#fff;border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--sh-xl);overflow:hidden;min-height:340px;display:flex;flex-direction:column}
.tab-visual-header{background:var(--dark);padding:18px 22px;display:flex;align-items:center;justify-content:space-between}
.tab-visual-title{color:#fff;font-size:.85rem;font-weight:700}
.tab-visual-dots{display:flex;gap:6px}
.tab-visual-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25)}
.tab-visual-body{padding:22px;flex:1;display:flex;flex-direction:column;gap:12px}
.tab-visual-row{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-soft);border-radius:var(--r-sm);border:1px solid var(--border)}
.tab-visual-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--purple));flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;color:#fff}
.tab-visual-info{flex:1}
.tab-visual-name{font-size:.82rem;font-weight:700;color:var(--text)}
.tab-visual-detail{font-size:.73rem;color:var(--text-m)}
.tab-visual-badge{padding:3px 10px;border-radius:var(--r-pill);font-size:.7rem;font-weight:700}
.badge-success{background:#ecfdf5;color:var(--green)}
.badge-warning{background:#fffbeb;color:var(--amber)}
.badge-primary{background:var(--blue-l);color:var(--blue)}

/* Services */
.services-section{background:var(--bg-soft)}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-card{background:#fff;border-radius:var(--r-lg);border:1px solid var(--border);padding:32px 28px;transition:all var(--ease-slow);position:relative;overflow:hidden}
.service-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--purple));transform:scaleX(0);transform-origin:left;transition:transform var(--ease-slow)}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);border-color:transparent}
.service-card:hover::before{transform:scaleX(1)}
.service-tag{font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:16px;display:block}
.service-icon-wrap{width:48px;height:48px;background:var(--blue-l);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:20px}
.service-card h3{font-size:1.15rem;margin-bottom:10px}
.service-card p{font-size:.9rem;margin-bottom:20px}
.service-link{display:inline-flex;align-items:center;gap:6px;font-size:.88rem;font-weight:700;color:var(--blue);transition:gap var(--ease)}
.service-link:hover{gap:10px}

/* Community / dark section */
.community-section{background:var(--dark);padding:100px 0;position:relative;overflow:hidden}
.community-section::before{content:'';position:absolute;top:-100px;right:-100px;width:600px;height:600px;background:radial-gradient(circle,rgba(37,99,235,.15) 0%,transparent 65%);pointer-events:none}
.community-section::after{content:'';position:absolute;bottom:-80px;left:-80px;width:450px;height:450px;background:radial-gradient(circle,rgba(124,58,237,.12) 0%,transparent 65%);pointer-events:none}
.community-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative;z-index:1}
.community-inner h2{color:#fff}
.community-inner > p{color:rgba(255,255,255,.65);font-size:1rem;margin-top:14px}
.community-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.community-stat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);padding:24px 20px;text-align:center;transition:background var(--ease)}
.community-stat:hover{background:rgba(255,255,255,.1)}
.community-stat-val{display:block;font-family:var(--fnt);font-size:2.2rem;font-weight:900;color:#fff;letter-spacing:-.03em;margin-bottom:4px}
.community-stat-lbl{font-size:.82rem;color:rgba(255,255,255,.5);font-weight:600}

/* Testimonials */
.testimonials-section{background:var(--bg)}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.testimonial-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:28px 26px;display:flex;flex-direction:column;gap:20px;transition:all var(--ease-slow);position:relative}
.testimonial-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}
.testimonial-card::before{content:'"';position:absolute;top:20px;right:24px;font-size:5rem;font-family:Georgia,serif;line-height:1;color:var(--blue-l);font-weight:900}
.testimonial-stars{display:flex;gap:3px;color:#f59e0b;font-size:.9rem}
.testimonial-quote{font-size:.95rem;color:var(--text);line-height:1.7;font-weight:500;flex:1}
.testimonial-author{display:flex;align-items:center;gap:12px}
.testimonial-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--purple));display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800;color:#fff;flex-shrink:0}
.testimonial-name{font-size:.88rem;font-weight:700;color:var(--text);display:block}
.testimonial-role{font-size:.78rem;color:var(--text-m);display:block}

/* Proof / Results */
.proof-section{background:var(--bg-soft)}
.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.proof-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;transition:all var(--ease-slow)}
.proof-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}
.proof-card h3{font-size:1rem;margin-bottom:8px}
.proof-card p{font-size:.88rem;margin-bottom:16px}
.proof-img-wrapper{border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--border);position:relative;cursor:pointer}
.proof-img-wrapper:hover .proof-img-overlay{opacity:1}
.proof-img{width:100%;height:190px;object-fit:cover;object-position:top;display:block;transition:transform .4s ease}
.proof-img-wrapper:hover .proof-img{transform:scale(1.03)}
.proof-img-overlay{position:absolute;inset:0;background:rgba(13,17,23,.55);display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;font-size:.78rem;font-weight:700;opacity:0;transition:opacity var(--ease)}

/* Metrics */
.metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px}
.metric-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:28px 20px;text-align:center}
.metric-val{font-family:var(--fnt);font-size:2.5rem;font-weight:900;color:var(--blue);letter-spacing:-.03em;line-height:1;margin-bottom:6px;display:block}
.metric-lbl{font-size:.8rem;font-weight:600;color:var(--text-m)}

/* Process */
.process-section{background:var(--bg)}
.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;position:relative}
.process-grid::before{content:'';position:absolute;top:30px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--border) 20%,var(--border) 80%,transparent)}
.process-step{text-align:center;position:relative}
.process-num{width:60px;height:60px;background:linear-gradient(135deg,var(--blue),var(--purple));border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--fnt);font-size:1rem;font-weight:900;color:#fff;margin:0 auto 20px;box-shadow:0 8px 24px rgba(37,99,235,.25);position:relative;z-index:1}
.process-step h4{font-size:.95rem;margin-bottom:8px}
.process-step p{font-size:.82rem;color:var(--text-m)}

/* Resources */
.resources-section{background:var(--bg-soft)}
.resources-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.resource-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;transition:all var(--ease-slow)}
.resource-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg)}
.resource-card-img{height:160px;display:flex;align-items:center;justify-content:center;font-size:2.5rem}
.resource-card-body{padding:22px 22px 24px}
.resource-type{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:8px;display:block}
.resource-card h3{font-size:1rem;margin-bottom:8px}
.resource-card p{font-size:.85rem}

/* Fit section */
.fit-section{background:var(--bg)}
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.fit-card{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-lg);padding:36px 32px}
.fit-card.fit-yes{border-top:3px solid var(--green)}
.fit-card.fit-no{border-top:3px solid var(--red)}
.fit-card h3{font-size:1.15rem;margin-bottom:20px}
.fit-list{list-style:none;display:flex;flex-direction:column;gap:12px}
.fit-list li{display:flex;align-items:flex-start;gap:12px;font-size:.9rem;color:var(--text-2)}
.fit-icon{font-size:1rem;margin-top:1px;flex-shrink:0}

/* FAQ */
.faq-section{background:var(--bg-soft)}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.faq-list{display:flex;flex-direction:column;gap:10px}
.faq-item{background:#fff;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;transition:box-shadow var(--ease)}
.faq-item.open{box-shadow:var(--sh-sm)}
.faq-btn{width:100%;text-align:left;padding:18px 20px;background:transparent;border:none;font-size:.93rem;font-weight:700;color:var(--text);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq-btn-icon{width:24px;height:24px;background:var(--bg-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--text-2);transition:transform var(--ease),background var(--ease);flex-shrink:0}
.faq-item.open .faq-btn-icon{transform:rotate(45deg);background:var(--blue-l);color:var(--blue)}
.faq-body{padding:0 20px;max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-body.open{padding-bottom:18px}
.faq-body p{font-size:.88rem}
.faq-side h2{margin-bottom:16px}
.faq-side > p{font-size:1rem;margin-bottom:24px}

/* Contact */
.contact-section{background:var(--bg)}
.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.contact-info h2{margin-bottom:16px}
.contact-info > p{font-size:1rem;margin-bottom:28px}
.contact-perks{list-style:none;display:flex;flex-direction:column;gap:12px}
.contact-perk{display:flex;align-items:center;gap:12px;font-size:.9rem;font-weight:600;color:var(--text)}
.contact-perk .perk-check{width:22px;height:22px;background:var(--blue-l);color:var(--blue);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;flex-shrink:0}
.form-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:36px 32px;box-shadow:var(--sh-lg)}
.form-card h3{margin-bottom:8px;font-size:1.2rem}
.form-card .form-sub{font-size:.88rem;color:var(--text-m);margin-bottom:24px}
.form-group{margin-bottom:18px}
.form-group label{display:block;font-size:.82rem;font-weight:700;color:var(--text);margin-bottom:6px}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:11px 14px;border:1.5px solid var(--border);border-radius:var(--r-sm);background:var(--bg-soft);color:var(--text);font-family:inherit;font-size:.93rem;transition:border-color var(--ease),box-shadow var(--ease);outline:none}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.1);background:#fff}
.form-group textarea{resize:vertical;min-height:90px}
.privacy-note{font-size:.78rem;color:var(--text-m);margin-top:14px;text-align:center}
.form-success{background:#ecfdf5;border:1px solid #a7f3d0;color:var(--green);border-radius:var(--r);padding:16px;text-align:center;font-weight:600}
.form-error{background:#fef2f2;border:1px solid #fca5a5;color:var(--red);border-radius:var(--r);padding:16px;text-align:center;font-size:.88rem}

/* CTA Banner */
.cta-banner{background:linear-gradient(135deg,var(--blue) 0%,var(--purple) 100%);padding:80px 0;text-align:center;position:relative;overflow:hidden}
.cta-banner::before{content:'';position:absolute;top:-50%;left:-30%;width:80%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 60%)}
.cta-banner h2{color:#fff;margin-bottom:14px;font-size:clamp(1.8rem,4vw,2.5rem)}
.cta-banner p{color:rgba(255,255,255,.8);font-size:1.05rem;margin-bottom:32px;max-width:560px;margin-left:auto;margin-right:auto}
.cta-banner-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* Footer */
.footer{background:var(--dark);padding:70px 0 0}
.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:48px;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.footer-logo-icon{width:34px;height:34px;background:linear-gradient(135deg,var(--blue),var(--purple));border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:.9rem;color:#fff}
.footer-logo-name{font-family:var(--fnt);font-size:1rem;font-weight:800;color:#fff}
.footer-brand p{font-size:.85rem;color:rgba(255,255,255,.45);line-height:1.7;max-width:280px}
.footer-col h5{font-family:var(--fnt);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:16px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-col ul a{font-size:.88rem;color:rgba(255,255,255,.6);transition:color var(--ease)}
.footer-col ul a:hover{color:#fff}
.footer-bottom{padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.footer-copy{font-size:.8rem;color:rgba(255,255,255,.35)}
.footer-bottom-links{display:flex;gap:20px}
.footer-bottom-links a{font-size:.8rem;color:rgba(255,255,255,.4);transition:color var(--ease)}
.footer-bottom-links a:hover{color:rgba(255,255,255,.8)}

/* Lightbox */
.lightbox{display:none;position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center}
.lightbox.active{display:flex}
.lightbox-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(8px);cursor:zoom-out;animation:lb-fade .2s ease both}
@keyframes lb-fade{from{opacity:0}to{opacity:1}}
.lightbox-container{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;max-width:92vw;max-height:92vh;animation:lb-scale .3s cubic-bezier(.34,1.56,.64,1) both}
@keyframes lb-scale{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}
.lightbox-close{position:absolute;top:-44px;right:0;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff;width:38px;height:38px;border-radius:50%;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--ease)}
.lightbox-close:hover{background:rgba(255,255,255,.25);transform:rotate(90deg)}
#lightbox-img{max-width:90vw;max-height:82vh;object-fit:contain;border-radius:12px;display:block}
.lightbox-caption{margin-top:14px;color:rgba(255,255,255,.65);font-size:.82rem;text-align:center}

/* ══ Custom Cursor — EXACT REPLICA of likith.digitalmarketingintirupati.com ══ */
/* Structure: .custom-cursor > .custom-cursor__ring + .custom-cursor__dot > .orb-layer×3 */
.custom-cursor {
  pointer-events: none;
  position: fixed;
  top: 0; left: 0;
  z-index: 99999;
  display: none;
}
@media (hover: hover) and (pointer: fine) {
  .custom-cursor { display: block; }
  html.has-custom-cursor,
  html.has-custom-cursor * { cursor: none !important; }

  /* ── Outer ring: large, slow-following circle ── */
  .custom-cursor__ring {
    position: fixed;
    top: 0; left: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1.5px solid rgba(255, 87, 34, 0.75);
    background: transparent;
    pointer-events: none;
    opacity: 0;
    will-change: transform;
    transition: opacity 0.4s ease, transform 0.12s linear,
                width 0.25s ease, height 0.25s ease, border-color 0.25s ease;
  }

  /* ── Inner dot: small, snaps to mouse instantly ── */
  .custom-cursor__dot {
    position: fixed;
    top: 0; left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #ff5722;
    pointer-events: none;
    opacity: 0;
    will-change: transform;
    transition: opacity 0.4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* ── Hide layered orbs for solid dot look ── */
  .orb-layer {
    display: none;
  }

  /* ── Visible state ── */
  .custom-cursor.is-visible .custom-cursor__ring,
  .custom-cursor.is-visible .custom-cursor__dot { opacity: 1; }

  /* ── On interactive element hover: ring shrinks & darkens ── */
  .custom-cursor.is-hovering .custom-cursor__ring {
    width: 50px;
    height: 50px;
    border-color: rgba(255, 87, 34, 0.5);
    background: rgba(255, 87, 34, 0.1);
  }

  /* ── On click: ring pops ── */
  .custom-cursor.is-clicking .custom-cursor__ring {
    width: 30px;
    height: 30px;
    border-color: rgba(255, 87, 34, 0.9);
    transition: width 0.1s ease, height 0.1s ease, border-color 0.1s ease;
  }
}

/* ─── Hero Photo Card ─── */
.hero-photo-wrap{position:relative;width:100%;max-width:520px;display:flex;justify-content:center}
.hero-photo-card{
  background:#fff;
  border-radius:var(--r-lg);
  border:1px solid var(--border);
  box-shadow:var(--sh-xl);
  overflow:hidden;
  width:100%;
  position:relative;
}
.hero-photo-img{
  width:100%;display:block;
  object-fit:cover;object-position:top center;
  aspect-ratio:4/5;
  max-height:500px;
}
.hero-photo-badge{
  position:absolute;bottom:80px;left:50%;transform:translateX(-50%);
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 16px;background:rgba(255,255,255,.92);
  backdrop-filter:blur(8px);
  color:var(--blue);border-radius:var(--r-pill);
  font-size:.8rem;font-weight:700;
  border:1px solid rgba(37,99,235,.15);
  white-space:nowrap;
}
.hero-photo-stats{
  display:grid;grid-template-columns:repeat(3,1fr);
  background:var(--bg-soft);border-top:1px solid var(--border);
}
.hero-photo-stat{
  text-align:center;padding:14px 10px;
  border-right:1px solid var(--border);
}
.hero-photo-stat:last-child{border-right:none}
.hero-photo-stat-val{
  display:block;font-family:var(--fnt);
  font-size:1.3rem;font-weight:900;color:var(--blue);
  letter-spacing:-.02em;line-height:1;margin-bottom:3px;
}
.hero-photo-stat-lbl{font-size:.68rem;color:var(--text-m);font-weight:600;text-transform:uppercase;letter-spacing:.05em}

/* Utilities */
.hidden{display:none!important}
.honeypot-field{position:absolute!important;left:-9999px!important;opacity:0;height:0}

/* Proof image button wrapper (clickable) */
.proof-img-wrapper{
  display:block;width:100%;border:none;padding:0;text-align:left;
  border-radius:var(--r-sm);overflow:hidden;
  border:1px solid var(--border);
  position:relative;cursor:pointer;background:none;
}
.proof-img-wrapper:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.proof-img-wrapper:hover .proof-img{transform:scale(1.03)}
.proof-img-wrapper:hover .proof-img-overlay{opacity:1}

/* Testimonial real photo avatar */
.testimonial-avatar-img{
  width:40px;height:40px;border-radius:50%;
  object-fit:cover;object-position:top center;
  flex-shrink:0;border:2px solid var(--border);
}

/* Responsive */
@media(max-width:1024px){
  .services-grid{grid-template-columns:1fr 1fr}
  .testimonials-grid{grid-template-columns:1fr 1fr}
  .resources-grid{grid-template-columns:1fr 1fr}
  .process-grid{grid-template-columns:repeat(3,1fr)}
  .process-grid::before{display:none}
  .footer-grid{grid-template-columns:1fr 1fr;gap:36px}
}
@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr;text-align:center}
  .hero-content{max-width:100%}
  .hero-actions{justify-content:center}
  .hero-trust{justify-content:center}
  .hero-float-1,.hero-float-2{display:none}
  .hero-photo-wrap{max-width:480px;margin:0 auto}
  .tab-pane.active{grid-template-columns:1fr}
  .community-inner{grid-template-columns:1fr;gap:40px}
  .fit-grid{grid-template-columns:1fr}
  .contact-inner{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:1fr}
  .proof-grid{grid-template-columns:1fr 1fr}
  .metrics-row{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  section{padding:72px 0}
  h1{font-size:2.1rem}h2{font-size:1.75rem}
  .nav-links,.nav-login{display:none}
  .mobile-menu-btn{display:flex}
  .nav-cta-btn{display:none}
  .services-grid{grid-template-columns:1fr}
  .testimonials-grid{grid-template-columns:1fr}
  .resources-grid{grid-template-columns:1fr}
  .process-grid{grid-template-columns:1fr 1fr}
  .proof-grid{grid-template-columns:1fr}
  .metrics-row{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .footer-bottom{flex-direction:column;text-align:center}
  .hero-actions{flex-direction:column;align-items:center}
  .btn-lg{width:100%;max-width:340px}
}
@media(max-width:480px){
  .hero-stat-row{grid-template-columns:1fr 1fr}
  .process-grid{grid-template-columns:1fr}
  .metrics-row{grid-template-columns:1fr}
  .community-stats{grid-template-columns:1fr}
}

/* ================================================================
   PERFORMANCE & ACCESSIBILITY OPTIMIZATIONS
   GPU Compositing, 120fps Scrolling, iPhone Notch & Touch Targets
   ================================================================ */

/* Hardware layer promotion for fixed & animated elements */
.navbar, .announcement-bar, .hero-photo-card, .btn, .proof-img-wrapper {
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/* Content Visibility: Skips offscreen layout calculation for silky scrolling */
@supports (content-visibility: auto) {
  .platform-section,
  .services-section,
  .proof-section,
  .process,
  .case-studies,
  .testimonials,
  .resources,
  .community,
  .fit,
  .faq,
  .contact,
  footer {
    content-visibility: auto;
    contain-intrinsic-size: 1px 750px;
  }
}

/* iPhone Notch / Dynamic Island Safe Area */
@supports (padding: max(0px)) {
  .navbar {
    padding-left: max(16px, env(safe-area-inset-left));
    padding-right: max(16px, env(safe-area-inset-right));
  }
  .mobile-nav {
    padding-left: max(24px, env(safe-area-inset-left));
    padding-right: max(24px, env(safe-area-inset-right));
    padding-bottom: max(28px, env(safe-area-inset-bottom));
  }
  body {
    padding-bottom: env(safe-area-inset-bottom);
  }
}

/* Mobile Touch Target Standards (Apple HIG & Material Design 44px min) */
@media (pointer: coarse) {
  .btn, .nav-links a, .mobile-nav a, .faq-btn, .tab-btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  .mobile-menu-btn {
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
  }
}

/* Accessibility: Respect Reduced Motion Preferences */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  [data-reveal], [data-reveal="left"], [data-reveal="right"], [data-reveal="scale"] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* ================================================================
   SPOTLIGHT CAROUSEL — Premium Service Cards
   Isolated under .spotlight-carousel-section
   ================================================================ */

/* Section wrapper */
.spotlight-carousel-section {
  background: #050c1a;
  position: relative;
  overflow: hidden;
  padding: 100px 0 110px;
}

/* Ambient background glow layers */
.sc-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
}
.sc-bg-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.45;
}
.sc-bg-orb-1 {
  width: 700px; height: 700px;
  top: -200px; left: -150px;
  background: radial-gradient(circle, rgba(37,99,235,0.35) 0%, transparent 70%);
}
.sc-bg-orb-2 {
  width: 600px; height: 600px;
  bottom: -180px; right: -100px;
  background: radial-gradient(circle, rgba(124,58,237,0.3) 0%, transparent 70%);
}
.sc-bg-orb-3 {
  width: 400px; height: 400px;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(6,182,212,0.12) 0%, transparent 70%);
}
.sc-grid-lines {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(37,99,235,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(37,99,235,0.04) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 100%);
}

/* Section header */
.sc-header {
  text-align: center;
  position: relative;
  z-index: 1;
  margin-bottom: 60px;
}
.sc-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #38bdf8;
  background: rgba(56,189,248,0.1);
  border: 1px solid rgba(56,189,248,0.25);
  padding: 6px 16px;
  border-radius: 999px;
  margin-bottom: 1.25rem;
}
.sc-eyebrow::before {
  content: '';
  width: 6px; height: 6px;
  border-radius: 50%;
  background: #38bdf8;
  animation: sc-pulse 2s ease infinite;
}
@keyframes sc-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(1.3); }
}
.sc-title {
  font-family: 'Plus Jakarta Sans', Inter, sans-serif;
  font-size: clamp(1.9rem, 4vw, 2.75rem);
  font-weight: 800;
  color: #f0f4ff;
  letter-spacing: -0.025em;
  line-height: 1.12;
  margin-bottom: 1rem;
}
.sc-title span {
  background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 50%, #38bdf8 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.sc-subtitle {
  font-size: 1.05rem;
  color: rgba(240,244,255,0.55);
  max-width: 560px;
  margin: 0 auto;
  line-height: 1.7;
}

/* Carousel viewport */
.sc-viewport {
  position: relative;
  z-index: 1;
  width: 100%;
  overflow: hidden;
  /* Prevent horizontal scroll bleed */
  max-width: 100vw;
  cursor: grab;
}
.sc-viewport:active {
  cursor: grabbing;
}

.sc-track {
  display: flex;
  align-items: center;
  gap: 0;
  will-change: transform;
  padding: 40px 0 50px;
}

/* Individual cards */
.sc-card {
  flex: 0 0 380px;
  width: 380px;
  background: linear-gradient(145deg, rgba(10,20,45,0.95) 0%, rgba(8,15,35,0.98) 100%);
  border: 1px solid rgba(56,189,248,0.12);
  border-radius: 24px;
  padding: 36px 32px 32px;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  transition:
    transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.3s ease;
  margin: 0 14px;
  /* Establish stacking context for spotlight */
  isolation: isolate;
  user-select: none;
}

/* Spotlight orb inside card (JS-controlled via CSS vars) */
.sc-card::after {
  content: '';
  position: absolute;
  width: 300px; height: 300px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(56,189,248,0.18) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
  left: var(--sc-sx, -150px);
  top: var(--sc-sy, -150px);
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
  opacity: 0;
}

/* Decorative top shimmer bar */
.sc-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(56,189,248,0.6), rgba(124,58,237,0.6), transparent);
  border-radius: 24px 24px 0 0;
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 1;
}

/* Active card: spotlit, prominent */
.sc-card.is-active {
  border-color: rgba(56,189,248,0.3);
  box-shadow:
    0 0 0 1px rgba(56,189,248,0.12),
    0 30px 80px rgba(6,182,212,0.2),
    0 10px 40px rgba(37,99,235,0.25),
    inset 0 1px 0 rgba(255,255,255,0.06);
  transform: scale(1) translateY(0);
  opacity: 1;
  z-index: 5;
}
.sc-card.is-active::before { opacity: 1; }
.sc-card.is-active::after { opacity: 1; }

/* Adjacent cards: pushed back */
.sc-card.is-prev,
.sc-card.is-next {
  opacity: 0.55;
  transform: scale(0.88) translateY(8px);
  z-index: 3;
}

/* Farther cards */
.sc-card.is-far-prev,
.sc-card.is-far-next {
  opacity: 0.3;
  transform: scale(0.78) translateY(14px);
  z-index: 2;
}

/* Even farther */
.sc-card.is-hidden {
  opacity: 0;
  transform: scale(0.7) translateY(20px);
  pointer-events: none;
  z-index: 1;
}

/* Hover on active card */
.sc-card.is-active:hover {
  border-color: rgba(56,189,248,0.45);
  box-shadow:
    0 0 0 1px rgba(56,189,248,0.2),
    0 40px 100px rgba(6,182,212,0.3),
    0 16px 60px rgba(37,99,235,0.35),
    inset 0 1px 0 rgba(255,255,255,0.08);
  transform: scale(1) translateY(-4px);
}

/* Card content layers */
.sc-card-inner {
  position: relative;
  z-index: 2;
}

/* Icon wrapper */
.sc-card-icon {
  width: 56px; height: 56px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
  position: relative;
  flex-shrink: 0;
}
.sc-card-icon svg {
  width: 28px; height: 28px;
}

/* Service number tag */
.sc-card-tag {
  position: absolute;
  top: 20px; right: 20px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(56,189,248,0.6);
  background: rgba(56,189,248,0.08);
  border: 1px solid rgba(56,189,248,0.15);
  padding: 4px 10px;
  border-radius: 999px;
  z-index: 2;
}

/* Card headline */
.sc-card-headline {
  font-family: 'Plus Jakarta Sans', Inter, sans-serif;
  font-size: 1.35rem;
  font-weight: 800;
  color: #f0f4ff;
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin-bottom: 12px;
}

/* Card description */
.sc-card-desc {
  font-size: 0.9rem;
  color: rgba(240,244,255,0.5);
  line-height: 1.7;
  margin-bottom: 28px;
}

/* CTA button */
.sc-card-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Plus Jakarta Sans', Inter, sans-serif;
  font-size: 0.88rem;
  font-weight: 700;
  color: #38bdf8;
  background: rgba(56,189,248,0.1);
  border: 1px solid rgba(56,189,248,0.25);
  padding: 10px 20px;
  border-radius: 999px;
  transition: all 0.25s ease;
  white-space: nowrap;
  cursor: pointer;
  text-decoration: none;
}
.sc-card-cta:hover,
.sc-card.is-active .sc-card-cta:hover {
  background: rgba(56,189,248,0.2);
  border-color: rgba(56,189,248,0.5);
  gap: 12px;
  color: #7dd3fc;
}
.sc-card-cta-arrow {
  display: inline-block;
  transition: transform 0.25s ease;
}
.sc-card-cta:hover .sc-card-cta-arrow {
  transform: translateX(3px);
}

/* Card icon color variants */
.sc-icon-blue  { background: rgba(37,99,235,0.15); box-shadow: 0 0 20px rgba(37,99,235,0.2); }
.sc-icon-cyan  { background: rgba(6,182,212,0.15);  box-shadow: 0 0 20px rgba(6,182,212,0.2); }
.sc-icon-violet { background: rgba(124,58,237,0.15); box-shadow: 0 0 20px rgba(124,58,237,0.2); }
.sc-icon-indigo { background: rgba(99,102,241,0.15); box-shadow: 0 0 20px rgba(99,102,241,0.2); }
.sc-icon-sky  { background: rgba(14,165,233,0.15);  box-shadow: 0 0 20px rgba(14,165,233,0.2); }
.sc-icon-teal { background: rgba(20,184,166,0.15);  box-shadow: 0 0 20px rgba(20,184,166,0.2); }

/* Navigation controls */
.sc-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-top: 40px;
  position: relative;
  z-index: 1;
}

.sc-arrow {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: rgba(10,20,45,0.8);
  border: 1px solid rgba(56,189,248,0.2);
  color: rgba(240,244,255,0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.25s ease;
  flex-shrink: 0;
  outline: none;
}
.sc-arrow:hover {
  background: rgba(37,99,235,0.2);
  border-color: rgba(56,189,248,0.5);
  color: #f0f4ff;
  transform: scale(1.08);
}
.sc-arrow:focus-visible {
  outline: 2px solid #38bdf8;
  outline-offset: 2px;
}
.sc-arrow:disabled,
.sc-arrow[aria-disabled="true"] {
  opacity: 0.3;
  cursor: not-allowed;
  pointer-events: none;
}
.sc-arrow svg { width: 18px; height: 18px; }

/* Pagination dots */
.sc-dots {
  display: flex;
  align-items: center;
  gap: 8px;
}
.sc-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: rgba(56,189,248,0.2);
  border: 1px solid rgba(56,189,248,0.2);
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 0;
  outline: none;
}
.sc-dot.is-active {
  background: #38bdf8;
  border-color: #38bdf8;
  width: 24px;
  border-radius: 999px;
  box-shadow: 0 0 10px rgba(56,189,248,0.5);
}
.sc-dot:hover:not(.is-active) {
  background: rgba(56,189,248,0.4);
  border-color: rgba(56,189,248,0.4);
}
.sc-dot:focus-visible {
  outline: 2px solid #38bdf8;
  outline-offset: 2px;
}

/* Primary CTA below carousel */
.sc-footer-cta {
  text-align: center;
  margin-top: 56px;
  position: relative;
  z-index: 1;
}
.sc-footer-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: 'Plus Jakarta Sans', Inter, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: #050c1a;
  background: linear-gradient(135deg, #38bdf8 0%, #818cf8 100%);
  padding: 16px 36px;
  border-radius: 999px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 8px 32px rgba(56,189,248,0.3), 0 0 0 1px rgba(56,189,248,0.15);
  position: relative;
  overflow: hidden;
}
.sc-footer-cta-btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,0.15) 0%, transparent 60%);
  border-radius: inherit;
}
.sc-footer-cta-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 48px rgba(56,189,248,0.45), 0 0 0 1px rgba(56,189,248,0.3);
}
.sc-footer-cta-sub {
  display: block;
  margin-top: 14px;
  font-size: 0.82rem;
  color: rgba(240,244,255,0.35);
}
.sc-footer-cta-sub a {
  color: rgba(56,189,248,0.7);
  text-decoration: none;
  transition: color 0.2s;
}
.sc-footer-cta-sub a:hover { color: #38bdf8; }

/* === Entrance animation for header === */
.sc-header[data-sc-reveal] {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s cubic-bezier(0.16,1,0.3,1), transform 0.7s cubic-bezier(0.16,1,0.3,1);
}
.sc-header[data-sc-reveal].sc-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .sc-card {
    flex: 0 0 340px;
    width: 340px;
    padding: 30px 26px 28px;
  }
}

@media (max-width: 768px) {
  .spotlight-carousel-section { padding: 70px 0 80px; }
  .sc-header { margin-bottom: 44px; }

  .sc-card {
    flex: 0 0 300px;
    width: 300px;
    margin: 0 10px;
    padding: 28px 24px 26px;
  }
  .sc-card.is-prev,
  .sc-card.is-next {
    opacity: 0.45;
    transform: scale(0.87) translateY(6px);
  }
  .sc-card.is-far-prev,
  .sc-card.is-far-next {
    opacity: 0.2;
    transform: scale(0.76) translateY(10px);
  }
  /* Disable 3D tilt on mobile */
  .sc-card { transform-style: flat; }
  /* Disable cursor spotlight on touch */
  .sc-card::after { display: none; }
}

@media (max-width: 480px) {
  .sc-card {
    flex: 0 0 calc(100vw - 64px);
    width: calc(100vw - 64px);
    margin: 0 8px;
  }
  .sc-card.is-prev,
  .sc-card.is-next {
    opacity: 0.3;
    transform: scale(0.83) translateY(4px);
  }
  .sc-card-headline { font-size: 1.2rem; }
  .sc-footer-cta-btn { padding: 14px 28px; font-size: 0.95rem; }
}

/* ── Reduced motion: disable animations ──────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .sc-track { transition: none !important; }
  .sc-card {
    transition:
      opacity 0.01ms !important,
      transform 0.01ms !important,
      box-shadow 0.01ms !important;
  }
  .sc-header[data-sc-reveal] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  .sc-eyebrow::before { animation: none !important; }
  .sc-dot { transition: none !important; }
  .sc-arrow { transition: none !important; }
  .sc-footer-cta-btn { transition: none !important; }
}

