/*
  VATSIT — Premium Futuristic IT Website
  Tech: HTML5 + CSS3 + Vanilla JS + Bootstrap 5 + GSAP + AOS + Swiper + Typed.js
*/

:root{
  --bg: #030712;
  --bg2: #071A3D;
  --bg3: #0B2A66;
  --panel: rgba(255,255,255,.06);
  --panel2: rgba(255,255,255,.10);
  --border: rgba(255,255,255,.14);
  --text: #FFFFFF;
  --muted: #E5E7EB;

  --blue: #0A84FF;
  --blue2: #2563EB;
  --cyan: #38BDF8;

  --white: #FFFFFF;
  --lightText: rgba(255,255,255,.85);

  --shadow: 0 18px 60px rgba(0,0,0,.45);
  --shadow2: 0 10px 30px rgba(10,132,255,.18);

  --radius-xl: 26px;
  --radius-lg: 18px;
  --radius-md: 14px;
  --radius-sm: 12px;

  --glass: rgba(3,7,18,.55);
  --glass-border: rgba(255,255,255,.18);

  --grad: linear-gradient(135deg, #0A84FF 0%, #2563EB 45%, #38BDF8 100%);
  --grad2: linear-gradient(135deg, #2563EB 0%, #0A84FF 55%, #38BDF8 100%);
  --grad3: linear-gradient(135deg, rgba(56,189,248,.15) 0%, rgba(10,132,255,.08) 60%, rgba(255,255,255,.04) 100%);

  --focus: rgba(56,189,248,.55);

  --transition: 200ms cubic-bezier(.2,.8,.2,1);
}

html[data-theme="light"]{
  --bg: #f6f8ff;
  --bg2: #ffffff;
  --panel: rgba(2,6,23,.06);
  --panel2: rgba(2,6,23,.09);
  --border: rgba(2,6,23,.14);
  --text: #0b1220;
  --muted: rgba(2,6,23,.72);
  --glass: rgba(255,255,255,.62);
  --glass-border: rgba(2,6,23,.14);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family: Poppins, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: radial-gradient(1200px 600px at 15% 10%, rgba(56,189,248,.12) 0%, transparent 45%),
              radial-gradient(1000px 500px at 80% 0%, rgba(10,132,255,.13) 0%, transparent 48%),
              linear-gradient(180deg, var(--bg) 0%, var(--bg2) 100%);
  color: var(--text);
  overflow-x:hidden;
  line-height:1.6;
}

img{max-width:100%;display:block;}

a{color:inherit;text-decoration:none;}

.visually-hidden-focusable{
  position:absolute !important;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}
.visually-hidden-focusable:focus{
  position:fixed !important;
  width:auto;height:auto;
  overflow:visible;clip:auto;
  background:#000; color:#fff;
  z-index:99999;
  padding:10px 14px;
  border-radius:12px;
}

/* Cursor glow */
.cursor-glow{
  position:fixed;
  width:360px;
  height:360px;
  border-radius:50%;
  background: radial-gradient(circle, rgba(10,132,255,.18) 0%, rgba(56,189,248,.05) 35%, transparent 70%);
  filter: blur(10px);
  pointer-events:none;
  z-index:2;
  transform: translate(-50%,-50%);
  mix-blend-mode: screen;
}

/* Background particles canvas */
.bg-particles{
  position:fixed;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  pointer-events:none;
}

/* Loading screen */
.loading-screen{
  position:fixed;
  inset:0;
  z-index:9999;
  background: linear-gradient(180deg, rgba(3,7,18,.92) 0%, rgba(7,26,61,.92) 100%);
  display:flex;
  align-items:center;
  justify-content:center;
}
.loading-card{
  width:min(520px,92vw);
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
  padding:26px 22px;
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
  text-align:center;
}
.loading-logo{
  font-weight:800;
  letter-spacing:6px;
  background: var(--grad);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  font-size:1.35rem;
  margin-bottom:14px;
}
.loading-bar{
  height:10px;
  border-radius:999px;
  background: rgba(255,255,255,.08);
  overflow:hidden;
  position:relative;
  margin:18px 0 12px;
}
.loading-bar::after{
  content:"";
  position:absolute;
  inset:0;
  width:45%;
  background: var(--grad2);
  border-radius:999px;
  animation: loadSweep 1.05s infinite ease-in-out;
}
@keyframes loadSweep{
  0%{transform: translateX(-130%); opacity:.65;}
  50%{opacity:1;}
  100%{transform: translateX(220%); opacity:.65;}
}
.loading-text{color: rgba(255,255,255,.78); font-size:.9rem;}

/* Scroll progress */
.scroll-progress{
  position:fixed;
  left:0; top:0;
  height:3px;
  width:0;
  background: var(--grad);
  z-index:1000;
}

/* ==================================================================
   Header / Navbar — styled after "Study Material" page navbar
   (navy + gold theme, sticky topbar, underline-hover links,
   hamburger + slide-down mobile menu)
   ================================================================== */
.vt-header{
  --nav-navy: #0B1F3F;
  --nav-navy-deep: #071730;
  --nav-gold: #F2B705;
  --nav-gold-soft: #FFD75E;

  position: sticky;
  top: 0;
  z-index: 950;
  background: linear-gradient(180deg, var(--nav-navy-deep), var(--nav-navy) 70%);
  color: #fff;
  box-shadow: 0 2px 18px rgba(0,0,0,.35);
}

.vt-topbar{
  max-width: 1320px;
  margin: 0 auto;
  padding: 12px 24px;
  display: flex;
  align-items: center;
  gap: 16px;
}

.vt-logo-wrap{
  width: 52px;
  height: 52px;
  border-radius: 50%;
  flex-shrink: 0;
  border: 2px solid var(--nav-gold);
  overflow: hidden;
  background: #fff;
  display: block;
}
.vt-logo-wrap img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.vt-brand-block{ line-height: 1.1; }
.vt-brand-name{
  font-family: Poppins, sans-serif;
  font-weight: 800;
  font-size: clamp(1.1rem, 2.6vw, 1.55rem);
  letter-spacing: .03em;
  color: #fff;
}
.vt-brand-name span{ color: var(--nav-gold); }
.vt-brand-sub{
  font-size: .78rem;
  color: #9fd8e0;
  font-weight: 500;
  margin-top: 2px;
}

.vt-desktop-nav{
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 26px;
  font-weight: 600;
  font-size: .92rem;
}
.vt-desktop-nav a{
  position: relative;
  padding: 6px 0;
  color: rgba(255,255,255,.9);
  opacity: .92;
  text-decoration: none;
  transition: color .2s ease;
}
.vt-desktop-nav a::after{
  content: "";
  position: absolute;
  left: 0; bottom: -4px;
  width: 0%; height: 2px;
  background: var(--nav-gold);
  transition: width .25s ease;
}
.vt-desktop-nav a:hover,
.vt-desktop-nav a.active{
  color: #fff;
  opacity: 1;
}
.vt-desktop-nav a:hover::after,
.vt-desktop-nav a.active::after{ width: 100%; }

.vt-cta-btn{
  background: var(--nav-gold) !important;
  color: var(--nav-navy-deep) !important;
  font-weight: 800 !important;
  padding: 9px 18px;
  border-radius: 30px;
  box-shadow: 0 4px 0 #b58300;
  margin-left: 6px;
}
.vt-cta-btn::after{ display: none !important; }
.vt-cta-btn:hover{ transform: translateY(-1px); }

.vt-mobile-menu-btn{
  display: none;
  margin-left: auto;
  width: 44px; height: 44px;
  border: 1px solid rgba(255,255,255,.35);
  background: rgba(255,255,255,.08);
  border-radius: 12px;
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
}
.vt-mobile-menu-btn span{
  position: absolute;
  left: 11px; right: 11px;
  height: 3px;
  background: var(--nav-gold);
  border-radius: 4px;
  transition: transform .2s ease, top .2s ease, opacity .2s ease;
}
.vt-mobile-menu-btn span:nth-child(1){ top: 14px; }
.vt-mobile-menu-btn span:nth-child(2){ top: 20px; }
.vt-mobile-menu-btn span:nth-child(3){ top: 26px; }
.vt-mobile-menu-btn.open span:nth-child(1){ top: 20px; transform: rotate(45deg); }
.vt-mobile-menu-btn.open span:nth-child(2){ opacity: 0; }
.vt-mobile-menu-btn.open span:nth-child(3){ top: 20px; transform: rotate(-45deg); }

.vt-mobile-menu{
  display: none;
  background: rgba(7,23,48,.98);
  border-top: 1px solid rgba(255,255,255,.18);
  padding: 12px 18px 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,.3);
}
.vt-mobile-menu.open{ display: block; }
.vt-mobile-menu a{
  display: block;
  padding: 12px 10px;
  border-radius: 12px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  border: 1px solid transparent;
}
.vt-mobile-menu a:hover{
  border-color: rgba(242,183,5,.45);
  background: rgba(242,183,5,.12);
}

@media (max-width: 860px){
  .vt-desktop-nav{ display: none; }
  .vt-mobile-menu-btn{ display: block; }
  .vt-brand-sub{ display: none; }
}
@media (min-width: 861px){
  .vt-mobile-menu{ display: none !important; }
}

.header-actions{
  display:flex;
  align-items:center;
  gap:12px;
}
.icon-btn{
  width:44px;height:44px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  color: rgba(255,255,255,.9);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  transition: transform var(--transition), border-color var(--transition), box-shadow var(--transition);
}
.icon-btn:hover{
  transform: translateY(-2px);
  border-color: rgba(56,189,248,.45);
  box-shadow: 0 14px 36px rgba(10,132,255,.16);
}

.quote-btn{
  display:flex;align-items:center;gap:10px;
  font-weight:800;
  padding:12px 18px;
  border-radius:999px;
  background: linear-gradient(135deg, rgba(10,132,255,.95) 0%, rgba(37,99,235,.95) 60%, rgba(56,189,248,.9) 100%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow: 0 18px 50px rgba(10,132,255,.22);
  transition: transform var(--transition), box-shadow var(--transition), opacity var(--transition);
}
.quote-btn:hover{transform: translateY(-2px); box-shadow: 0 26px 70px rgba(10,132,255,.28);}

/* Hero */
.hero{
  padding-top:110px;
  padding-bottom:70px;
  position:relative;
  z-index:1;
}
.hero-inner{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:40px;
  align-items:center;
}

/* Premium dashboard polish */
.mock-stage{
  filter: drop-shadow(0 28px 80px rgba(10,132,255,.18));
}

/* Extra glow + scanlines so dashboard looks visible/premium */
.laptop-screen{
  background:
    radial-gradient(circle at 20% 10%, rgba(56,189,248,.18), transparent 45%),
    radial-gradient(circle at 80% 0%, rgba(10,132,255,.20), transparent 50%),
    linear-gradient(180deg, rgba(6,182,212,.18) 0%, rgba(3,7,18,.45) 35%, rgba(3,7,18,.65) 100%);
}

.laptop-screen::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(180deg, rgba(255,255,255,.10) 0 1px, transparent 1px 4px);
  opacity:.10;
  pointer-events:none;
}

.laptop-screen::after{
  content:"";
  position:absolute;
  inset:-60px -40px auto -40px;
  height:180px;
  background: radial-gradient(circle at 50% 50%, rgba(56,189,248,.35), transparent 60%);
  filter: blur(14px);
  opacity:.55;
  pointer-events:none;
}

.screen-body{
  z-index:1;
}

/* Dashboard mock content: hide any accidental "from" label remnants */
.screen-body [class*="from"],
.screen-body [id*="from"],
.screen-body .from,
.screen-body [data-from],
.screen-body [aria-label*="from"],
.screen-body [role="from"]{
  display:none !important;
  visibility:hidden !important;
}

.widget{
  position:relative;
}

.widget::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:16px;
  background: linear-gradient(135deg, rgba(56,189,248,.35), rgba(10,132,255,.18));
  opacity:.18;
  pointer-events:none;
}

.widget::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:16px;
  box-shadow: 0 0 0 1px rgba(56,189,248,.10) inset;
  pointer-events:none;
}


.hero-kicker{margin-bottom:18px;}
.kicker-pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid rgba(56,189,248,.25);
  background: rgba(56,189,248,.07);
  color: rgba(56,189,248,.95);
  font-weight:800;
  letter-spacing:2px;
  font-size:.82rem;
}
.kicker-dot{width:10px;height:10px;border-radius:50%;background: var(--cyan); box-shadow:0 0 20px rgba(56,189,248,.6);}

.hero-title{
  font-size: clamp(2.1rem, 4.6vw, 4.2rem);
  font-weight:900;
  line-height:1.02;
  letter-spacing:-1.2px;
}
.title-highlight{
  display:block;
  margin-top:14px;
  background: var(--grad);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.hero-subtitle{
  color: rgba(229,231,235,.88);
  font-size:1.02rem;
  max-width: 560px;
  margin-top:18px;
}

.hero-ctas{display:flex; gap:14px; flex-wrap:wrap; margin-top:26px;}
.btn-hero{padding:13px 18px; border-radius:14px; font-weight:800; display:inline-flex; align-items:center; gap:10px;}
.btn-primary.btn-hero{
  background: var(--grad2);
  border:none;
  box-shadow: 0 18px 60px rgba(10,132,255,.22);
}
.btn-outline-light.btn-hero{border-color: rgba(255,255,255,.22);}

.hero-trust{margin-top:30px;}
.trust-label{font-weight:800; color: rgba(255,255,255,.86); margin-bottom:10px;}
.trust-row{display:flex; gap:18px; flex-wrap:wrap;}
.trust-logo{
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.05);
  color: rgba(255,255,255,.82);
  font-weight:700;
  font-size:.92rem;
  transition: transform var(--transition), border-color var(--transition);
}
.trust-logo:hover{transform: translateY(-2px); border-color: rgba(56,189,248,.42);}

/* Mock visuals */
.hero-right{position:relative;}
.mock-stage{
  width:100%;
  max-width: 520px;
  margin-left:auto;
  position:relative;
  aspect-ratio: 1/1;
}

.circuit-bg{
  position:absolute;
  inset:-40px -20px -50px -20px;
  border-radius: 40px;
  background:
    radial-gradient(closest-side at 30% 20%, rgba(56,189,248,.18), transparent 60%),
    radial-gradient(closest-side at 75% 25%, rgba(10,132,255,.18), transparent 60%),
    repeating-linear-gradient(90deg, rgba(56,189,248,.16) 0 1px, transparent 1px 18px),
    repeating-linear-gradient(0deg, rgba(10,132,255,.14) 0 1px, transparent 1px 18px);
  filter: blur(0px);
  opacity:.55;
}

.neon-lights{
  position:absolute;
  inset:-20px;
  background:
    radial-gradient(closest-side at 20% 85%, rgba(56,189,248,.22), transparent 55%),
    radial-gradient(closest-side at 80% 75%, rgba(10,132,255,.22), transparent 55%);
  filter: blur(18px);
  opacity:.7;
}

.laptop{
  position:absolute;
  left:50%; top:54%;
  transform: translate(-50%,-50%) perspective(1000px) rotateX(8deg);
  width: 88%;
  height: 58%;
}
.laptop-screen{
  position:absolute;
  top:2%; left:7%; right:7%;
  height: 62%;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(6,182,212,.18) 0%, rgba(3,7,18,.45) 35%, rgba(3,7,18,.65) 100%);
  border: 1px solid rgba(56,189,248,.26);
  overflow:hidden;
  box-shadow: 0 50px 120px rgba(0,0,0,.55);
}
.screen-glow{
  position:absolute;
  inset:-40px;
  background: radial-gradient(circle at 30% 20%, rgba(56,189,248,.32), transparent 50%),
              radial-gradient(circle at 70% 10%, rgba(10,132,255,.28), transparent 52%),
              radial-gradient(circle at 80% 60%, rgba(37,99,235,.20), transparent 58%);
  filter: blur(26px);
  opacity:.9;
}

.screen-header{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 18px 10px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.scr-dot{width:10px;height:10px;border-radius:50%;background: var(--c); box-shadow: 0 0 18px color-mix(in oklab, var(--c) 60%, transparent);}
.screen-title{margin-left:8px; color: rgba(255,255,255,.88); font-weight:800; font-size:.92rem;}

.screen-body{
  position:relative;
  padding:14px 18px 18px;
  height: calc(100% - 56px);
  display:grid;
  grid-template-columns: 1fr .9fr;
  gap:12px;
}

.widget{
  border-radius:16px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  box-shadow: 0 14px 40px rgba(0,0,0,.22);
  overflow:hidden;
}

.widget-analytics{grid-column: 1 / 2; padding:14px 14px;}
.widget-title{font-weight:900; font-size:.92rem; display:flex; align-items:center; gap:10px; color: rgba(255,255,255,.92);}
.chart-bars{display:flex; gap:8px; align-items:flex-end; height:120px; margin-top:12px;}
.chart-bars span{flex:1; border-radius:10px; background: linear-gradient(180deg, rgba(56,189,248,.95), rgba(10,132,255,.55)); box-shadow: 0 0 18px rgba(56,189,248,.25);} 
.widget-metric{margin-top:10px; font-weight:900; color: rgba(56,189,248,.95);}

.widget-icons{grid-column: 2 / 3; padding:14px; display:flex; flex-direction:column; justify-content:space-between;}
.widget-row{display:flex; justify-content:space-between; gap:10px;}
.icon-pill{
  width:46px; height:46px;
  border-radius:16px;
  display:flex; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  box-shadow: 0 20px 60px rgba(10,132,255,.12);
}
.icon-cloud{color: var(--cyan); border-color: rgba(56,189,248,.35);}
.icon-code{color: var(--blue); border-color: rgba(10,132,255,.35);}
.icon-ui{color: #8b5cf6; border-color: rgba(139,92,246,.35);}
.icon-sec{color: #2ee59d; border-color: rgba(46,229,157,.35);}

.widget-stats{grid-column: 1 / span 2; padding:14px;}
.mini-grid{display:grid; grid-template-columns: repeat(3, 1fr); gap:10px; margin-top:12px;}
.mini-item{border-radius:14px; border:1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.04); padding:12px 10px;}
.mini-num{font-weight:900; color: rgba(255,255,255,.95);}
.mini-lbl{font-size:.78rem; color: rgba(229,231,235,.78); margin-top:4px;}

.screen-hud{
  position:absolute;
  left:14px; bottom:14px;
}
.hud-chip{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(56,189,248,.25);
  background: rgba(56,189,248,.08);
  color: rgba(56,189,248,.95);
  font-weight:900;
  font-size:.86rem;
}

.laptop-bezel{
  position:absolute;
  top:64%; left:12%; right:12%;
  height: 7%;
  border-radius: 16px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.12);
}
.laptop-base{
  position:absolute;
  top:70%; left:18%; right:18%;
  height: 18%;
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.12);
  box-shadow: 0 30px 100px rgba(0,0,0,.35);
}

.phone{
  position:absolute;
  right:-2%; top:36%;
  width: 22%;
  aspect-ratio: 9/18;
  transform: rotate(10deg);
  border-radius: 30px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.04);
  backdrop-filter: blur(10px);
  box-shadow: 0 50px 120px rgba(0,0,0,.45);
}
.phone-glow{
  position:absolute;
  inset:-22px;
  background: radial-gradient(circle at 50% 40%, rgba(56,189,248,.34), transparent 55%);
  filter: blur(16px);
  opacity:.95;
}
.phone-screen{position:relative; height:100%; padding:12px;}
.phone-top{height:14px; display:flex; justify-content:center; align-items:center;}
.notch{width:44px; height:10px; border-radius:999px; background: rgba(0,0,0,.35);}
.phone-body{margin-top:16px; display:flex; flex-direction:column; gap:12px;}
.phone-card{
  border-radius:16px;
  background: rgba(255,255,255,.06);
  border:1px solid rgba(56,189,248,.22);
  padding:12px;
  font-weight:900;
  color: rgba(255,255,255,.92);
}
.phone-card-2{border-color: rgba(139,92,246,.26);}

.exp-card{
  position:absolute;
  left:-2%; bottom:6%;
  width: 34%;
  border-radius: 18px;
  border:1px solid rgba(56,189,248,.22);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
  padding:14px;
  box-shadow: 0 30px 100px rgba(0,0,0,.45);
}
.exp-row{display:flex; justify-content:space-between; align-items:flex-start; gap:10px;}
.exp-badge{font-weight:900; color: rgba(56,189,248,.95);}
.exp-year{font-size:.82rem; color: rgba(229,231,235,.78); font-weight:700;}
.exp-bar{height:8px; border-radius:999px; background: rgba(255,255,255,.08); margin-top:12px; overflow:hidden;}
.exp-bar span{display:block; height:100%; width:70%; background: var(--grad2); border-radius:999px; box-shadow: 0 0 18px rgba(10,132,255,.25);}

.hero-visual-caption{margin-top:14px; display:flex; justify-content:flex-end;}
.caption-chip{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.05);
  color: rgba(255,255,255,.85);
  font-weight:800;
}

/* Sections */
.section{padding: 84px 0; position:relative; z-index:1;}
.section.white{background: rgba(255,255,255,.86); color: #071A3D;}
.section.white .section-subtitle{color: rgba(7,26,61,.72);}
.section.white .eyebrow{color: #0A84FF;}
.section.white .section-title{color:#071A3D;}
.section.white .section-title span{background: var(--grad2); -webkit-background-clip:text; -webkit-text-fill-color:transparent;}

.section.portfolio-section{background: linear-gradient(180deg, rgba(3,7,18,0) 0%, rgba(3,7,18,.5) 30%, rgba(3,7,18,1) 100%);} 

.section-head{margin-bottom:34px;}
.eyebrow{font-weight:900; letter-spacing:2px; text-transform:uppercase; font-size:.78rem; color: rgba(56,189,248,.95);}
.section-title{font-size: clamp(1.6rem, 3.5vw, 2.6rem); font-weight:900; line-height:1.12; margin:10px 0 12px;}
.section-title span{background: var(--grad); -webkit-background-clip:text; -webkit-text-fill-color:transparent;}
.section-subtitle{max-width:720px; margin:0; color: rgba(255,255,255,.78); font-weight:500;}

/* Services */
.services-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:18px;
}

.svc-card{
  background: rgba(7,26,61,.04);
  border: 1px solid rgba(7,26,61,.12);
  border-radius: 18px;
  padding: 22px 18px;
  box-shadow: 0 10px 26px rgba(2,6,23,.06);
  transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
  position:relative;
  overflow:hidden;
}
.svc-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(circle at 20% 10%, rgba(56,189,248,.28), transparent 45%),
              radial-gradient(circle at 90% 30%, rgba(10,132,255,.22), transparent 45%);
  opacity:0;
  transition: opacity var(--transition);
}
.svc-card:hover{
  transform: translateY(-8px);
  border-color: rgba(10,132,255,.28);
  box-shadow: 0 22px 70px rgba(10,132,255,.16);
}
.svc-card:hover::before{opacity:1;}

.svc-icon{width:52px;height:52px;border-radius:16px; display:flex;align-items:center;justify-content:center; background: rgba(10,132,255,.12); border:1px solid rgba(10,132,255,.25); color: #0A84FF; font-size:1.25rem; position:relative;}
.svc-title{margin-top:14px; font-weight:900; font-size:1.1rem;}
.svc-desc{margin-top:10px; color: rgba(7,26,61,.72); font-weight:500; min-height:66px;}
.svc-link{display:inline-flex; align-items:center; gap:10px; margin-top:16px; font-weight:900; color:#071A3D;}
.svc-link i{transition: transform var(--transition);}
.svc-card:hover .svc-link i{transform: translateX(4px);} 

/* Stats */
.stats{
  background: linear-gradient(180deg, rgba(3,7,18,1) 0%, rgba(7,26,61,1) 100%);
  border-top: 1px solid rgba(255,255,255,.10);
  border-bottom: 1px solid rgba(255,255,255,.10);
  padding: 56px 0;
  position:relative;
  z-index:1;
}
.stats::before{
  content:"";
  position:absolute;
  inset:-80px;
  background: radial-gradient(circle at 15% 10%, rgba(56,189,248,.18), transparent 50%),
              radial-gradient(circle at 80% 20%, rgba(10,132,255,.18), transparent 55%);
  filter: blur(18px);
  opacity:.85;
}
.stats-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:16px;
}
.stat{background: rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12); border-radius:18px; padding:22px 16px; text-align:center; backdrop-filter: blur(12px); box-shadow: 0 20px 80px rgba(0,0,0,.22);} 
.stat-value{font-size:2.2rem; font-weight:900; color: transparent; background: var(--grad2); -webkit-background-clip:text; -webkit-text-fill-color:transparent;}
.stat-label{margin-top:8px; font-weight:800; color: rgba(229,231,235,.85);}

/* About */
.about-inner{padding-top:10px;}
.about-grid{display:grid; grid-template-columns: 1fr 1fr; gap:28px; align-items:start;}
.about-left{display:flex; flex-direction:column; gap:16px;}
.founder-card{
  background: rgba(7,26,61,.04);
  border:1px solid rgba(7,26,61,.12);
  border-radius:18px;
  padding:22px;
  box-shadow: 0 10px 26px rgba(2,6,23,.06);
}
.founder-card-2{transform: translateY(0);}
.founder-top{display:flex; align-items:center; gap:14px;}
.founder-photo{
  width:58px; height:58px;
  border-radius:18px;
  background: rgba(10,132,255,.12);
  border:1px solid rgba(10,132,255,.22);
  display:flex; align-items:center; justify-content:center;
  color: #0A84FF;
  font-size:1.25rem;
}
.founder-card-2 .founder-photo{background: rgba(139,92,246,.12); border-color: rgba(139,92,246,.22); color:#8b5cf6;}
.founder-name{font-weight:900; font-size:1.1rem;}
.founder-role{font-weight:800; color: rgba(7,26,61,.72); margin-top:4px; font-size:.9rem;}
.founder-desc{margin-top:12px; color: rgba(7,26,61,.72); font-weight:500;}
.founder-metrics{display:flex; flex-wrap:wrap; gap:10px; margin-top:14px;}
.metric-chip{display:inline-flex; gap:10px; align-items:center; padding:9px 12px; border-radius:999px; background: rgba(10,132,255,.08); border:1px solid rgba(10,132,255,.18); font-weight:900; font-size:.86rem; color:#0A84FF;}
.founder-card-2 .metric-chip{background: rgba(139,92,246,.08); border-color: rgba(139,92,246,.18); color:#6d28d9;}

.about-right{position:relative;}
.office-visual{position:relative;}
.office-image{
  height: 430px;
  border-radius: 22px;
  border:1px solid rgba(7,26,61,.12);
  background:
    radial-gradient(circle at 20% 20%, rgba(56,189,248,.35), transparent 45%),
    radial-gradient(circle at 70% 10%, rgba(10,132,255,.28), transparent 55%),
    linear-gradient(180deg, rgba(7,26,61,.10), rgba(7,26,61,.04));
  position:relative;
  overflow:hidden;
}
.office-image::after{
  content:"";
  position:absolute;
  inset:-2px;
  background: repeating-linear-gradient(90deg, rgba(10,132,255,.18) 0 1px, transparent 1px 28px);
  opacity:.3;
}
.office-overlay{position:absolute; inset:0; display:flex; align-items:flex-end; padding:20px; z-index:1;}
.office-chip{display:inline-flex; padding:10px 14px; border-radius:999px; background: rgba(255,255,255,.75); color:#071A3D; font-weight:900; border:1px solid rgba(7,26,61,.12);}

.play-btn{
  position:absolute;
  left:20px; bottom:20px;
  width:58px;height:58px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.6);
  background: rgba(255,255,255,.78);
  color:#071A3D;
  display:flex;align-items:center;justify-content:center;
  box-shadow: 0 18px 60px rgba(0,0,0,.15);
  cursor:pointer;
  transition: transform var(--transition);
  z-index:2;
}
.play-btn:hover{transform: translateY(-4px);} 

.floating-info{
  position:absolute;
  right:18px;
  top:18px;
  background: rgba(255,255,255,.80);
  border:1px solid rgba(7,26,61,.12);
  border-radius:18px;
  padding:14px 16px;
  box-shadow: 0 18px 60px rgba(0,0,0,.12);
}
.floating-number{font-weight:900; font-size:2rem; background: var(--grad2); -webkit-background-clip:text; -webkit-text-fill-color:transparent; line-height:1;}
.floating-number span{font-size:.95rem; color: rgba(7,26,61,.72); -webkit-text-fill-color: initial; background: none;}
.floating-text{margin-top:8px; font-weight:700; color: rgba(7,26,61,.68); font-size:.9rem;}

.about-exp-card{
  margin-top:18px;
  background: rgba(7,26,61,.04);
  border:1px solid rgba(7,26,61,.12);
  border-radius:22px;
  padding:20px;
  box-shadow: 0 10px 26px rgba(2,6,23,.06);
}
.exp-title{font-weight:900; color:#071A3D; display:flex; gap:12px; align-items:center;}
.exp-line{display:flex; gap:12px; flex-wrap:wrap; margin-top:14px;}
.exp-bubble{display:inline-flex; align-items:center; gap:10px; padding:10px 12px; border-radius:999px; background: rgba(10,132,255,.08); border:1px solid rgba(10,132,255,.18); font-weight:900; color:#0A84FF;}
.exp-progress{height:10px; border-radius:999px; background: rgba(7,26,61,.08); margin-top:16px; overflow:hidden;}
.exp-progress span{display:block; height:100%; width:62%; background: var(--grad2); border-radius:999px;}

/* Solutions */
.solutions-grid{display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap:16px;}
.solution-item{background: rgba(7,26,61,.04); border:1px solid rgba(7,26,61,.12); border-radius:18px; padding:22px 18px; box-shadow: 0 10px 26px rgba(2,6,23,.06); transition: transform var(--transition), box-shadow var(--transition);}
.solution-item:hover{transform: translateY(-6px); box-shadow: 0 22px 70px rgba(10,132,255,.12);} 
.solution-icon{width:54px;height:54px;border-radius:18px; display:flex; align-items:center; justify-content:center; background: rgba(10,132,255,.12); border:1px solid rgba(10,132,255,.22); color:#0A84FF; font-size:1.25rem;}
.solution-item h3{margin-top:14px; font-weight:900; color:#071A3D;}
.solution-item p{margin-top:10px; color: rgba(7,26,61,.72); font-weight:500;}

/* Portfolio */
.portfolio-section{padding: 84px 0;}
.swiper{padding: 6px 10px 44px;}
.swiper-slide{display:flex;}
.case-card{
  width:100%;
  border-radius: 22px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  box-shadow: 0 40px 120px rgba(0,0,0,.35);
  overflow:hidden;
  position:relative;
}
.case-media{height: 320px; position:relative;}
.case-grad{position:absolute; inset:0; background: radial-gradient(circle at 20% 10%, rgba(56,189,248,.35), transparent 50%), radial-gradient(circle at 90% 20%, rgba(10,132,255,.30), transparent 55%), linear-gradient(135deg, rgba(10,132,255,.18), rgba(37,99,235,.08));}
.case-grad-2{background: radial-gradient(circle at 20% 10%, rgba(56,189,248,.25), transparent 50%), radial-gradient(circle at 90% 20%, rgba(139,92,246,.24), transparent 55%), linear-gradient(135deg, rgba(139,92,246,.15), rgba(10,132,255,.08));}
.case-grad-3{background: radial-gradient(circle at 20% 10%, rgba(56,189,248,.22), transparent 50%), radial-gradient(circle at 90% 20%, rgba(37,99,235,.25), transparent 55%), linear-gradient(135deg, rgba(37,99,235,.16), rgba(10,132,255,.08));}
.case-grad-4{background: radial-gradient(circle at 20% 10%, rgba(56,189,248,.22), transparent 50%), radial-gradient(circle at 90% 20%, rgba(16,185,129,.22), transparent 55%), linear-gradient(135deg, rgba(16,185,129,.12), rgba(10,132,255,.08));}
.case-img{
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  font-weight:900;
  font-size:1.4rem;
  color: rgba(255,255,255,.88);
  letter-spacing:.5px;
  text-shadow: 0 18px 60px rgba(0,0,0,.5);
}
.case-overlay{
  padding:18px 18px 22px;
  position:relative;
}
.case-overlay::before{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, transparent 0%, rgba(3,7,18,.62) 100%);
  opacity:.45;
  pointer-events:none;
}
.case-cat{position:relative; z-index:1; display:inline-flex; align-items:center; gap:10px; padding:9px 12px; border-radius:999px; border:1px solid rgba(56,189,248,.25); background: rgba(56,189,248,.08); font-weight:900; color: rgba(56,189,248,.95);}
.case-title{position:relative; z-index:1; margin-top:12px; font-weight:900; font-size:1.25rem;}
.case-desc{position:relative; z-index:1; margin-top:10px; color: rgba(229,231,235,.80); font-weight:500;}
.case-link{position:relative; z-index:1; margin-top:16px; display:inline-flex; align-items:center; gap:10px; font-weight:900; color: rgba(255,255,255,.92);}

.case-card:hover .case-img{transform: scale(1.03);}
.case-img{transition: transform 420ms cubic-bezier(.2,.8,.2,1);} 
.case-card:hover{border-color: rgba(56,189,248,.35);} 

.swiper-button-prev, .swiper-button-next{color: rgba(255,255,255,.86);} 
.swiper-pagination-bullet{background: rgba(255,255,255,.38);} 
.swiper-pagination-bullet-active{background: var(--cyan);} 

/* Testimonials */
.testimonial-grid{display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:16px;}
.t-card{
  background: rgba(7,26,61,.04);
  border:1px solid rgba(7,26,61,.12);
  border-radius:18px;
  padding:22px 18px;
  box-shadow: 0 10px 26px rgba(2,6,23,.06);
  transition: transform var(--transition), box-shadow var(--transition);
}
.t-card:hover{transform: translateY(-8px); box-shadow: 0 22px 70px rgba(10,132,255,.12);} 
.t-top{display:flex; align-items:center; justify-content:space-between; gap:12px;}
.t-avatar{width:54px;height:54px;border-radius:18px; background: rgba(10,132,255,.12); border:1px solid rgba(10,132,255,.22); display:flex;align-items:center;justify-content:center; color:#0A84FF; font-size:1.1rem;}
.t-stars{color:#2563EB; font-size:.95rem; display:flex; gap:4px;}
.t-review{margin-top:14px; color: rgba(7,26,61,.72); font-weight:600;}
.t-company{margin-top:14px; font-weight:900; color:#071A3D;}

/* Blog previews */
.blog-row{display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:16px; margin-top:26px;}
.blog-card{background: rgba(7,26,61,.04); border:1px solid rgba(7,26,61,.12); border-radius:18px; padding:22px 18px; box-shadow: 0 10px 26px rgba(2,6,23,.06); transition: transform var(--transition), box-shadow var(--transition);} 
.blog-card:hover{transform: translateY(-8px); box-shadow: 0 22px 70px rgba(10,132,255,.12);} 
.blog-tag{display:inline-flex; align-items:center; gap:10px; padding:9px 12px; border-radius:999px; background: rgba(10,132,255,.10); border:1px solid rgba(10,132,255,.20); font-weight:900; color:#0A84FF;}
.blog-tag-2{background: rgba(139,92,246,.10); border-color: rgba(139,92,246,.20); color:#6d28d9;}
.blog-tag-3{background: rgba(16,185,129,.10); border-color: rgba(16,185,129,.20); color:#0f766e;}
.blog-title{margin-top:14px; font-weight:900; color:#071A3D; font-size:1.15rem;}
.blog-desc{margin-top:10px; color: rgba(7,26,61,.72); font-weight:500;}
.blog-link{display:inline-flex; gap:10px; align-items:center; margin-top:14px; font-weight:900; color:#071A3D;}

/* Technologies */
.tech-grid{display:flex; flex-wrap:wrap; gap:12px;}
.tech-pill{
  display:inline-flex; align-items:center; gap:12px;
  padding:12px 14px;
  border-radius:999px;
  background: rgba(7,26,61,.04);
  border:1px solid rgba(7,26,61,.12);
  box-shadow: 0 10px 26px rgba(2,6,23,.06);
  font-weight:900;
  color:#071A3D;
}
.tech-pill i{color:#0A84FF;}

/* Contact CTA */
.contact-cta{
  padding: 96px 0;
  background: radial-gradient(circle at 20% 20%, rgba(56,189,248,.20), transparent 50%),
              radial-gradient(circle at 90% 20%, rgba(10,132,255,.20), transparent 52%),
              linear-gradient(135deg, rgba(3,7,18,1), rgba(7,26,61,1));
  border-top: 1px solid rgba(255,255,255,.12);
}
.contact-cta-inner{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:26px;
  align-items:start;
}
.contact-title{font-weight:900; font-size:2.1rem; line-height:1.12;}
.contact-subtitle{margin-top:12px; color: rgba(229,231,235,.82); font-weight:500;}

.btn-quote{margin-top:18px; padding:14px 18px; border-radius:14px; font-weight:900; display:inline-flex; align-items:center; gap:12px; border:none; box-shadow: 0 26px 70px rgba(10,132,255,.22);} 
.btn-primary.btn-quote{background: var(--grad2);} 

.contact-meta{margin-top:18px; display:flex; flex-direction:column; gap:10px;}
.meta-item{display:flex; gap:12px; align-items:center; font-weight:800; color: rgba(255,255,255,.92);} 
.meta-item i{color: var(--cyan);} 

.contact-form{
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  border-radius: 22px;
  padding: 18px;
  backdrop-filter: blur(16px);
  box-shadow: 0 40px 120px rgba(0,0,0,.35);
}
.form-floating .form-control,
.form-floating .form-select,
.contact-form textarea{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.18);
  color: rgba(255,255,255,.92);
}
.form-floating > .form-control:focus,
.form-floating > .form-select:focus,
.contact-form textarea:focus{border-color: rgba(56,189,248,.55); box-shadow: 0 0 0 0.25rem rgba(56,189,248,.18);} 
.contact-form textarea{min-height:120px;}
.form-control::placeholder{color: rgba(229,231,235,.55);} 
.form-note{margin-top:12px; color: rgba(56,189,248,.95); font-weight:800; min-height:22px;}

.btn-submit{background: rgba(255,255,255,.92); border: none; color:#071A3D; font-weight:900;}
.btn-submit i{margin-left:10px;}

/* Footer */
.site-footer{background: linear-gradient(180deg, rgba(3,7,18,1), rgba(7,26,61,1)); padding: 64px 0 28px; border-top: 1px solid rgba(255,255,255,.12);}
.footer-inner{position:relative; z-index:1;}
.footer-top{display:grid; grid-template-columns: 1.2fr 1fr 1fr 1.2fr; gap:26px;}
.footer-logo{font-weight:900; letter-spacing:4px; font-size:1.4rem; background: var(--grad2); -webkit-background-clip:text; -webkit-text-fill-color:transparent;}
.footer-about{margin-top:12px; color: rgba(229,231,235,.82); font-weight:500; max-width:320px;}
.footer-col h4{font-weight:900; color: rgba(255,255,255,.92); margin-bottom:14px;}
.footer-links{padding:0; margin:0; display:flex; flex-direction:column; gap:10px;}
.footer-links a{color: rgba(229,231,235,.78); font-weight:600;}
.footer-links a:hover{color: var(--cyan);} 

.footer-contact-line{display:flex; gap:12px; align-items:flex-start; color: rgba(229,231,235,.82); font-weight:600; margin-bottom:10px;}
.footer-contact-line i{color: var(--cyan); margin-top:3px;}
.footer-contact-line a{color: rgba(229,231,235,.82); text-decoration:underline; text-decoration-color: rgba(56,189,248,.35);} 

.newsletter{margin-top:20px;}
.newsletter h5{font-weight:900; color: rgba(255,255,255,.92); margin-bottom:12px;}
.newsletter-row{display:flex; gap:10px;}
.newsletter-row .form-control{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.18);
  color: rgba(255,255,255,.92);
  border-radius:14px;
}
.newsletter-row .form-control:focus{border-color: rgba(56,189,248,.55); box-shadow: 0 0 0 0.25rem rgba(56,189,248,.18);}
.btn-neon{background: rgba(56,189,248,.14); border:1px solid rgba(56,189,248,.28); color: rgba(255,255,255,.92); font-weight:900; border-radius:14px; padding:12px 16px; transition: transform var(--transition), box-shadow var(--transition);}
.btn-neon:hover{transform: translateY(-2px); box-shadow: 0 20px 60px rgba(10,132,255,.18);}
.newsletter-note{margin-top:10px; color: rgba(56,189,248,.95); font-weight:800; min-height:18px;}

.social-row{margin-top:18px; display:flex; gap:12px;}
.social{
  width:44px;height:44px;
  border-radius:16px;
  background: rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  display:flex;align-items:center;justify-content:center;
  color: rgba(255,255,255,.9);
  transition: transform var(--transition), border-color var(--transition);
}
.social:hover{transform: translateY(-2px); border-color: rgba(56,189,248,.38);} 

.footer-bottom{
  border-top: 1px solid rgba(255,255,255,.10);
  padding-top:18px;
  margin-top:28px;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  color: rgba(229,231,235,.72);
  font-weight:600;
}
.footer-mini{max-width:520px;}

/* Back to top + chat */
.back-to-top{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:950;
  width:48px;height:48px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.92);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  transform: translateY(20px);
  opacity:0;
  pointer-events:none;
  transition: opacity var(--transition), transform var(--transition), border-color var(--transition);
}
.back-to-top.show{opacity:1; transform: translateY(0); pointer-events:auto; border-color: rgba(56,189,248,.42);} 

.chat-btn{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:960;
  display:flex; align-items:center; gap:12px;
  padding:12px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(14px);
  color: rgba(255,255,255,.95);
  box-shadow: 0 26px 70px rgba(0,0,0,.35);
  cursor:pointer;
  transition: transform var(--transition), border-color var(--transition);
}
.chat-btn:hover{transform: translateY(-4px); border-color: rgba(56,189,248,.42);} 
.chat-glow{position:absolute; inset:-30px; background: radial-gradient(circle, rgba(56,189,248,.22), transparent 55%); filter: blur(18px); opacity:.8; z-index:-1;}
.chat-text{font-weight:900;}

.chat-modal{
  position:fixed;
  inset:0;
  z-index:980;
  background: rgba(0,0,0,.55);
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
}
.chat-modal.open{display:flex;}
.chat-modal-inner{
  width:min(560px, 92vw);
  border-radius: 22px;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(3,7,18,.75);
  backdrop-filter: blur(18px);
  box-shadow: 0 40px 120px rgba(0,0,0,.55);
  overflow:hidden;
}
.chat-modal-header{display:flex; justify-content:space-between; align-items:center; padding:14px 16px; border-bottom:1px solid rgba(255,255,255,.12);} 
.chat-modal-title{font-weight:900; display:flex; gap:10px; align-items:center;} 
.chat-modal-body{padding:16px; max-height: 44vh; overflow:auto;}
.chat-msg{display:flex; margin-bottom:12px;}
.chat-msg span{padding:12px 14px; border-radius:16px; max-width:80%; font-weight:700;}
.chat-msg.bot{justify-content:flex-start;}
.chat-msg.bot span{background: rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.92);} 
.chat-msg.user{justify-content:flex-end;}
.chat-msg.user span{background: rgba(56,189,248,.12); border:1px solid rgba(56,189,248,.28); color: rgba(255,255,255,.95);} 
.chat-modal-footer{display:flex; gap:10px; padding:14px 16px; border-top:1px solid rgba(255,255,255,.12);} 
.chat-input{flex:1; border-radius:14px; padding:12px 14px; background: rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.16); color: rgba(255,255,255,.92);} 
.chat-input:focus{outline:none; border-color: rgba(56,189,248,.55); box-shadow: 0 0 0 0.25rem rgba(56,189,248,.18);} 

/* Responsive */
@media (max-width: 1100px){
  .hero-inner{grid-template-columns: 1fr;}
  .hero-right{order:2;}
  .mock-stage{max-width: 540px;}
  .hero-visual-caption{justify-content:center;}
}

@media (max-width: 992px){
  .services-grid{grid-template-columns: repeat(2, minmax(0,1fr));}
  .testimonial-grid{grid-template-columns: 1fr;}
  .blog-row{grid-template-columns: 1fr;}
  .solutions-grid{grid-template-columns: repeat(2, minmax(0,1fr));}
  .contact-cta-inner{grid-template-columns: 1fr;}
  .footer-top{grid-template-columns: 1fr 1fr;}
  .phone{right:4%;}
}

@media (max-width: 576px){
  .services-grid{grid-template-columns: 1fr;}
  .stats-inner{grid-template-columns: 1fr 1fr;}
  .about-grid{grid-template-columns: 1fr;}
  .solutions-grid{grid-template-columns: 1fr;}
  .laptop{top:58%;}
  .phone{display:none;}
  .exp-card{width:52%; left:-6%;}
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce){
  *{scroll-behavior:auto !important;}
  .loading-bar::after{animation:none !important;}
  .case-img{transition:none !important;}
  .svc-card, .t-card, .blog-card{transition:none !important;}
}

