/* ============================================================
   BangarClouds – Main Stylesheet  v2.0
   ============================================================ */

/* ── Design Tokens ────────────────────────────────────────── */
:root {
  --blue:         #0f62fe;
  --blue-dark:    #0043ce;
  --blue-darker:  #001d6c;
  --blue-light:   #d0e2ff;
  --blue-muted:   #edf4ff;
  --blue-alpha:   rgba(15,98,254,.08);
  --indigo:       #7c3aed;
  --green:        #16a34a;
  --red:          #dc2626;
  --orange:       #ea580c;
  --amber:        #d97706;

  --gray-50:   #f7f8fa;
  --gray-100:  #e5e7eb;
  --gray-200:  #d1d5db;
  --gray-300:  #9ca3af;
  --gray-600:  #4b5563;
  --gray-700:  #374151;
  --gray-800:  #1e293b;
  --gray-900:  #0f172a;
  --white:     #ffffff;

  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-2xl:32px;

  --shadow-xs: 0 1px 2px rgba(0,0,0,.06);
  --shadow-sm: 0 1px 8px rgba(0,0,0,.08);
  --shadow-md: 0 4px 20px rgba(0,0,0,.10);
  --shadow-lg: 0 8px 40px rgba(0,0,0,.12);
  --shadow-xl: 0 16px 64px rgba(0,0,0,.14);

  --trans: .2s ease;
  --container: 1200px;
  --section-py: 88px;
}

/* ── Reset ────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:'Inter',-apple-system,'Segoe UI',system-ui,sans-serif;
  font-size:15px;line-height:1.65;
  color:var(--gray-800);background:var(--white);
  -webkit-font-smoothing:antialiased;
}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
ul,ol{list-style:none}
img{max-width:100%;display:block}
button{cursor:pointer;font-family:inherit;border:none;background:none}
textarea,input,select{font-family:inherit}

/* ── Layout ───────────────────────────────────────────────── */
.container{max-width:var(--container);margin:0 auto;padding:0 24px}
.section{padding:var(--section-py) 0}
.section--gray{background:var(--gray-50);border-top:1px solid var(--gray-100);border-bottom:1px solid var(--gray-100)}

.section__header{text-align:center;margin-bottom:60px}
.section__header h2{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;margin:14px 0 18px;letter-spacing:-.03em;color:var(--gray-900)}
.section__header p{color:var(--gray-600);max-width:580px;margin:0 auto;font-size:1.05rem}

.text-center{text-align:center}
.text-muted{color:var(--gray-600)}
.mt-32{margin-top:32px}
.mt-40{margin-top:40px}
.mt-48{margin-top:48px}
.mb-24{margin-bottom:24px}

/* ── Buttons ──────────────────────────────────────────────── */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 22px;border-radius:var(--radius-sm);
  font-size:14px;font-weight:600;
  border:2px solid transparent;
  transition:background var(--trans),color var(--trans),border-color var(--trans),transform var(--trans),box-shadow var(--trans);
  white-space:nowrap;cursor:pointer;
}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn svg{flex-shrink:0}

.btn--primary{background:var(--blue);color:var(--white)}
.btn--primary:hover{background:var(--blue-dark);box-shadow:0 4px 16px rgba(15,98,254,.35)}
.btn--outline{background:transparent;color:var(--blue);border-color:var(--blue)}
.btn--outline:hover{background:var(--blue);color:var(--white)}
.btn--ghost{background:transparent;color:var(--gray-700);border-color:var(--gray-200)}
.btn--ghost:hover{background:var(--gray-50);border-color:var(--gray-300)}
.btn--white{background:var(--white);color:var(--blue)}
.btn--white:hover{background:var(--blue-light)}
.btn--ghost-white{background:transparent;color:var(--white);border:2px solid rgba(255,255,255,.4)}
.btn--ghost-white:hover{background:rgba(255,255,255,.15);border-color:var(--white)}
.btn--sm{padding:7px 16px;font-size:13px}
.btn--lg{padding:13px 28px;font-size:15px}
.btn--xl{padding:16px 32px;font-size:16px}
.btn--full{width:100%;justify-content:center}

/* ── Badge ────────────────────────────────────────────────── */
.badge{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 14px;border-radius:999px;
  font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
}
.badge--blue-soft{background:var(--blue-muted);color:var(--blue-dark)}
.badge--white{background:rgba(255,255,255,.2);color:var(--white)}

/* ── Topbar ───────────────────────────────────────────────── */
.topbar{background:var(--gray-900);color:rgba(255,255,255,.65);font-size:12.5px;padding:8px 0}
.topbar__inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.topbar__left,.topbar__right{display:flex;align-items:center;gap:20px}
.topbar__left span,.topbar__right span{display:flex;align-items:center;gap:5px}
.topbar svg{opacity:.7}

/* ── Navbar ───────────────────────────────────────────────── */
.navbar{
  position:sticky;top:0;z-index:1000;
  background:rgba(255,255,255,.95);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--gray-100);
  transition:box-shadow var(--trans),background var(--trans);
}
.navbar--scrolled{box-shadow:var(--shadow-md);background:var(--white)}

.navbar__inner{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}

.navbar__brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.navbar__logo-icon{width:36px;height:36px;flex-shrink:0}
.navbar__brand-text{display:flex;flex-direction:column;line-height:1}
.brand-name{font-size:18px;font-weight:500;color:var(--gray-900);letter-spacing:-.3px}
.brand-name strong{font-weight:800}
.brand-tagline{font-size:10px;color:var(--gray-300);text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-top:1px}

.navbar__menu{display:flex;gap:2px;align-items:center}
.navbar__link{
  color:var(--gray-600);font-size:14px;font-weight:500;
  padding:7px 14px;border-radius:var(--radius-xs);
  transition:color var(--trans),background var(--trans);
  text-decoration:none;white-space:nowrap;
}
.navbar__link:hover,.navbar__link.active{color:var(--blue);background:var(--blue-muted);text-decoration:none}

.navbar__actions{display:flex;align-items:center;gap:10px}
.navbar__call-btn{
  display:flex;align-items:center;gap:6px;
  font-size:13px;font-weight:600;color:var(--gray-700);
  padding:6px 12px;border-radius:var(--radius-xs);
  border:1px solid var(--gray-200);
  transition:all var(--trans);
}
.navbar__call-btn:hover{color:var(--blue);border-color:var(--blue);text-decoration:none;background:var(--blue-muted)}

.navbar__hamburger{
  display:none;flex-direction:column;gap:5px;
  padding:7px;border-radius:var(--radius-xs);
  transition:background var(--trans);
}
.navbar__hamburger:hover{background:var(--gray-50)}
.navbar__hamburger span{display:block;width:22px;height:2px;background:var(--gray-700);border-radius:2px;transition:transform var(--trans),opacity var(--trans)}
.navbar__hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.navbar__hamburger.open span:nth-child(2){opacity:0}
.navbar__hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── HERO ─────────────────────────────────────────────────── */
.hero{position:relative;overflow:hidden;background:linear-gradient(150deg,#f0f5ff 0%,#e8eeff 50%,#f5f0ff 100%);padding:80px 0 0}
.hero__bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.hero__orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.35}
.hero__orb--1{width:600px;height:600px;background:radial-gradient(circle,#93c5fd,transparent);top:-200px;right:-100px}
.hero__orb--2{width:400px;height:400px;background:radial-gradient(circle,#c4b5fd,transparent);bottom:-100px;left:5%}
.hero__grid{
  position:absolute;inset:0;
  background-image:linear-gradient(var(--gray-200) 1px,transparent 1px),linear-gradient(90deg,var(--gray-200) 1px,transparent 1px);
  background-size:48px 48px;opacity:.3;
}

.hero__inner{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;position:relative;z-index:1;padding-bottom:0}

.hero__content{max-width:620px}
.hero__eyebrow{margin-bottom:20px}
.hero__heading{
  font-size:clamp(2.25rem,4.5vw,3.5rem);font-weight:900;
  line-height:1.1;letter-spacing:-.04em;color:var(--gray-900);
  margin-bottom:22px;
}
.hero__heading-accent{color:var(--blue);display:inline}
.hero__sub{font-size:1.1rem;color:var(--gray-600);line-height:1.7;margin-bottom:36px;max-width:560px}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px}
.hero__trust{display:flex;align-items:center;gap:14px;font-size:13px;color:var(--gray-600)}
.hero__trust strong{color:var(--gray-900)}
.trust-avatars{display:flex}
.trust-avatar{
  width:32px;height:32px;background:var(--blue);color:var(--white);
  border-radius:50%;border:2px solid var(--white);
  display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:700;margin-left:-8px;
}
.trust-avatar:first-child{margin-left:0}

/* Hero Card */
.hero__visual{position:relative;flex-shrink:0;margin-top:20px}
.hero-card{
  background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-xl);
  padding:20px;width:320px;box-shadow:var(--shadow-xl);
}
.hero-card__header{
  display:flex;align-items:center;gap:6px;
  font-size:12px;font-weight:600;color:var(--gray-600);
  margin-bottom:16px;
}
.hero-card__dot{width:10px;height:10px;border-radius:50%}
.hero-card__dot--red{background:#ff5f57}
.hero-card__dot--yellow{background:#febc2e}
.hero-card__dot--green{background:#28c840}
.hero-card__metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.metric{background:var(--gray-50);border:1px solid var(--gray-100);border-radius:var(--radius-sm);padding:10px 12px}
.metric__label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-300);margin-bottom:4px;font-weight:600}
.metric__value{display:block;font-size:1.2rem;font-weight:800;color:var(--gray-800)}
.metric__value--green{color:var(--green)}
.metric__value--blue{color:var(--blue)}
.metric__value--orange{color:var(--orange)}
.hero-card__bar-chart{display:flex;align-items:flex-end;gap:4px;height:50px;margin-bottom:14px;padding:0 4px}
.bar{flex:1;background:var(--blue-light);border-radius:3px 3px 0 0;transition:height .5s ease}
.bar--active{background:var(--blue)}
.hero-card__status{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--green)}
.status-dot{width:8px;height:8px;border-radius:50%}
.status-dot--green{background:var(--green);box-shadow:0 0 0 3px rgba(22,163,74,.2);animation:pulse 2s infinite}

@keyframes pulse{0%,100%{box-shadow:0 0 0 3px rgba(22,163,74,.2)}50%{box-shadow:0 0 0 6px rgba(22,163,74,.05)}}

/* Float badges */
.float-badge{
  position:absolute;display:flex;align-items:center;gap:6px;
  background:var(--white);border:1px solid var(--gray-200);border-radius:999px;
  padding:7px 14px;font-size:12px;font-weight:700;color:var(--gray-700);
  box-shadow:var(--shadow-md);animation:float 3s ease-in-out infinite;
}
.float-badge svg{color:var(--blue)}
.float-badge--1{top:10px;right:-30px;animation-delay:0s}
.float-badge--2{top:45%;right:-50px;animation-delay:.8s}
.float-badge--3{bottom:60px;right:-20px;animation-delay:1.5s}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* Stats bar */
.hero__stats-bar{background:var(--white);border-top:1px solid var(--gray-100);margin-top:56px;padding:24px 0}
.hero__stats-inner{display:flex;flex-wrap:wrap;gap:0;justify-content:space-around}
.hero-stat{text-align:center;padding:10px 24px}
.hero-stat__value{display:block;font-size:2rem;font-weight:900;color:var(--blue);line-height:1;letter-spacing:-.03em}
.hero-stat__label{display:block;font-size:12px;color:var(--gray-600);margin-top:4px;font-weight:500}

/* ── Trust Bar ────────────────────────────────────────────── */
.trust-bar{background:var(--white);border-bottom:1px solid var(--gray-100);padding:28px 0}
.trust-bar__label{text-align:center;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gray-300);margin-bottom:18px}
.trust-bar__logos{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.trust-logo{
  padding:9px 22px;border:1px solid var(--gray-100);border-radius:var(--radius-sm);
  font-size:13px;font-weight:700;color:var(--gray-600);background:var(--gray-50);
  transition:border-color var(--trans),color var(--trans);
}
.trust-logo:hover{border-color:var(--blue-light);color:var(--blue)}

/* ── Services Grid (home) ─────────────────────────────────── */
.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px}
.service-card{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:32px 28px;
  transition:box-shadow var(--trans),transform var(--trans),border-color var(--trans);
  position:relative;overflow:hidden;
}
.service-card::before{
  content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--blue-muted),transparent);
  opacity:0;transition:opacity var(--trans);
}
.service-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);border-color:var(--blue-light)}
.service-card:hover::before{opacity:1}
.service-card__icon-wrap{
  width:52px;height:52px;background:var(--blue-muted);border-radius:var(--radius-md);
  display:flex;align-items:center;justify-content:center;margin-bottom:20px;
  color:var(--blue);position:relative;transition:background var(--trans);
}
.service-card:hover .service-card__icon-wrap{background:var(--blue);color:var(--white)}
.service-card h3{font-size:1.1rem;font-weight:700;margin-bottom:10px;color:var(--gray-900)}
.service-card p{color:var(--gray-600);font-size:14px;line-height:1.65;margin-bottom:18px}
.service-card__link{
  display:inline-flex;align-items:center;gap:5px;
  font-size:13px;font-weight:700;color:var(--blue);
  transition:gap var(--trans);
}
.service-card:hover .service-card__link{gap:8px}

/* ── Why Grid ─────────────────────────────────────────────── */
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.why-text .badge{margin-bottom:16px}
.why-text h2{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;letter-spacing:-.03em;color:var(--gray-900);margin-bottom:16px}
.why-text>p{color:var(--gray-600);font-size:1.05rem;margin-bottom:28px}
.why-points{display:flex;flex-direction:column;gap:16px}
.why-point{display:flex;gap:12px;align-items:flex-start}
.why-point svg{flex-shrink:0;margin-top:2px}
.why-point strong{display:block;font-size:14px;font-weight:700;color:var(--gray-900);margin-bottom:2px}
.why-point span{font-size:13px;color:var(--gray-600)}

.why-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.why-card{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:28px 24px;transition:box-shadow var(--trans),transform var(--trans);
}
.why-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.why-card--blue{background:var(--blue);border-color:var(--blue)}
.why-card--blue h4,.why-card--blue p{color:var(--white)}
.why-card--blue p{opacity:.85}
.why-card svg{margin-bottom:14px}
.why-card h4{font-size:1rem;font-weight:700;margin-bottom:8px}
.why-card p{font-size:13px;color:var(--gray-600);line-height:1.6}
.why-card strong{color:inherit}

/* ── Industries Grid (home) ──────────────────────────────── */
.industries-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}
.industry-card{
  display:flex;flex-direction:column;
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:32px 28px;
  transition:box-shadow var(--trans),transform var(--trans),border-color var(--trans);
  text-decoration:none;color:inherit;
}
.industry-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);border-color:var(--blue-light);text-decoration:none}
.industry-card__icon{
  width:64px;height:64px;background:var(--blue-muted);border-radius:var(--radius-lg);
  display:flex;align-items:center;justify-content:center;
  color:var(--blue);margin-bottom:20px;
  transition:background var(--trans);
}
.industry-card:hover .industry-card__icon{background:var(--blue);color:var(--white)}
.industry-card h3{font-size:1.15rem;font-weight:700;color:var(--gray-900);margin-bottom:10px}
.industry-card p{color:var(--gray-600);font-size:14px;line-height:1.65;flex:1;margin-bottom:18px}
.industry-card__link{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:700;color:var(--blue)}
.industry-card:hover .industry-card__link{gap:8px}

/* ── Pricing ──────────────────────────────────────────────── */
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;max-width:960px;margin:0 auto}
.pricing-grid--full{max-width:100%}

.pricing-card{
  position:relative;display:flex;flex-direction:column;
  background:var(--white);border:2px solid var(--gray-100);border-radius:var(--radius-xl);
  padding:40px 32px 32px;gap:0;
  transition:box-shadow var(--trans),transform var(--trans);
}
.pricing-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.pricing-card--popular{border-color:var(--blue);box-shadow:var(--shadow-md)}
.pricing-card__badge{
  position:absolute;top:-16px;left:50%;transform:translateX(-50%);
  background:var(--blue);color:var(--white);
  font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;
  padding:5px 16px;border-radius:999px;
  display:flex;align-items:center;gap:5px;white-space:nowrap;
}
.pricing-card__header{margin-bottom:24px}
.pricing-card__header h3{font-size:1.2rem;font-weight:700;color:var(--gray-900);margin-bottom:12px}
.pricing-card__price{display:flex;align-items:baseline;gap:3px;line-height:1}
.price__currency{font-size:1.4rem;font-weight:700;color:var(--gray-600);align-self:flex-start;margin-top:8px}
.price__amount{font-size:3.5rem;font-weight:900;color:var(--gray-900);letter-spacing:-.05em}
.price__period{font-size:.9rem;color:var(--gray-400);margin-left:2px}
.pricing-card__billing{font-size:12px;color:var(--gray-400);margin-top:4px;text-transform:capitalize}
.pricing-card__features{display:flex;flex-direction:column;gap:11px;margin-bottom:28px;flex:1}
.pricing-card__features li{display:flex;align-items:flex-start;gap:8px;font-size:14px;color:var(--gray-700)}
.pricing-card__features li svg{flex-shrink:0;margin-top:2px}
.pricing-card__note{text-align:center;font-size:12px;color:var(--gray-400);margin-top:12px}

/* ── Testimonials ─────────────────────────────────────────── */
.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}
.testimonials-grid--3{grid-template-columns:repeat(3,1fr)}
.testimonial-card{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:28px 24px;display:flex;flex-direction:column;gap:16px;
  box-shadow:var(--shadow-xs);
  transition:box-shadow var(--trans),transform var(--trans);
}
.testimonial-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.testimonial-card__stars{display:flex;gap:2px}
.testimonial-card blockquote{color:var(--gray-700);font-size:14px;line-height:1.75;font-style:italic;flex:1}
.testimonial-card blockquote::before{content:none}
.testimonial-card__author{display:flex;align-items:center;gap:12px}
.testimonial-card__avatar{
  width:44px;height:44px;background:var(--blue);color:var(--white);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:16px;flex-shrink:0;
}
.testimonial-card__info strong{display:block;font-size:14px;font-weight:700;color:var(--gray-900)}
.testimonial-card__info span{font-size:12px;color:var(--gray-600)}
.testimonial-card__industry{
  margin-top:4px;display:inline-block;
  padding:2px 8px;background:var(--blue-muted);color:var(--blue-dark);
  border-radius:999px;font-size:11px;font-weight:600;
}

/* ── Process ──────────────────────────────────────────────── */
.process-steps{display:flex;align-items:flex-start;gap:0;flex-wrap:wrap;justify-content:center}
.process-step{
  flex:1;min-width:180px;max-width:220px;
  text-align:center;padding:32px 20px;
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  margin:0 8px;
  transition:box-shadow var(--trans),transform var(--trans);
}
.process-step:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.process-step__num{
  display:inline-block;font-size:2.5rem;font-weight:900;
  color:var(--blue-light);letter-spacing:-.05em;line-height:1;
  margin-bottom:10px;
}
.process-step__icon{display:flex;justify-content:center;margin-bottom:12px}
.process-step h4{font-size:1rem;font-weight:700;color:var(--gray-900);margin-bottom:8px}
.process-step p{font-size:13px;color:var(--gray-600);line-height:1.65}
.process-step__connector{
  flex-shrink:0;width:40px;height:2px;background:var(--blue-light);
  align-self:center;margin:0 -8px;
}

/* ── CTA Section ──────────────────────────────────────────── */
.cta-section{
  background:linear-gradient(135deg,var(--blue-dark) 0%,var(--blue) 60%,#4338ca 100%);
  padding:80px 0;position:relative;overflow:hidden;
}
.cta-section::before{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:48px 48px;
}
.cta-section__inner{
  display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;
  position:relative;z-index:1;
}
.cta-section__text h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;color:var(--white);margin-bottom:8px}
.cta-section__text p{color:rgba(255,255,255,.8);font-size:1.05rem}
.cta-section__actions{display:flex;gap:14px;flex-wrap:wrap}

/* ── Page Hero ────────────────────────────────────────────── */
.page-hero{
  background:linear-gradient(150deg,#f0f5ff 0%,#e8eeff 100%);
  padding:72px 0 60px;
  border-bottom:1px solid var(--gray-100);
  text-align:center;
}
.page-hero__inner{max-width:680px;margin:0 auto}
.page-hero h1{font-size:clamp(1.9rem,4vw,2.75rem);font-weight:900;letter-spacing:-.04em;color:var(--gray-900);margin:16px 0 16px}
.page-hero>div>p{color:var(--gray-600);font-size:1.05rem;max-width:560px;margin:0 auto 28px}

.breadcrumb{
  display:inline-flex;align-items:center;gap:6px;
  font-size:13px;color:var(--gray-400);margin-bottom:20px;
}
.breadcrumb a{color:var(--blue)}
.breadcrumb a:hover{text-decoration:underline}
.breadcrumb span:last-child{color:var(--gray-700);font-weight:500}

/* ── Services Nav ─────────────────────────────────────────── */
.services-nav{background:var(--white);border-bottom:1px solid var(--gray-100);z-index:100;transition:box-shadow var(--trans)}
.services-nav.is-sticky{box-shadow:var(--shadow-sm)}
.services-nav__inner{display:flex;gap:0;overflow-x:auto;scrollbar-width:none}
.services-nav__inner::-webkit-scrollbar{display:none}
.services-nav__link{
  display:flex;align-items:center;gap:6px;
  padding:14px 20px;font-size:13px;font-weight:600;color:var(--gray-600);
  white-space:nowrap;border-bottom:2px solid transparent;
  transition:color var(--trans),border-color var(--trans);
  text-decoration:none;
}
.services-nav__link:hover,.services-nav__link.active{color:var(--blue);border-bottom-color:var(--blue);text-decoration:none}

/* ── Service Sections ─────────────────────────────────────── */
.service-section{padding:80px 0}
.service-section--alt{background:var(--gray-50)}
.service-section__inner{display:grid;grid-template-columns:1fr 1.2fr;gap:72px;align-items:center}
.service-section--alt .service-section__inner{grid-template-columns:1.2fr 1fr}
.service-section--alt .service-section__visual{order:2}
.service-section--alt .service-section__body{order:1}

.service-section__icon-block{position:relative;display:inline-block;margin-bottom:24px}
.service-icon-xl{
  width:140px;height:140px;background:var(--blue-muted);border-radius:var(--radius-2xl);
  display:flex;align-items:center;justify-content:center;color:var(--blue);
}
.service-section__num{
  position:absolute;top:-12px;right:-16px;
  font-size:3rem;font-weight:900;color:var(--gray-100);line-height:1;z-index:-1;
}
.service-section__mini-stats{display:flex;gap:12px;flex-wrap:wrap}
.mini-stat{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-md);
  padding:12px 16px;text-align:center;min-width:90px;
  box-shadow:var(--shadow-xs);
}
.mini-stat strong{display:block;font-size:1.1rem;font-weight:800;color:var(--blue);line-height:1;margin-bottom:4px}
.mini-stat span{font-size:11px;color:var(--gray-600);font-weight:500}

.service-section__body .badge{margin-bottom:12px}
.service-section__body h2{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:800;letter-spacing:-.03em;margin-bottom:16px;color:var(--gray-900)}
.service-section__desc{color:var(--gray-600);font-size:1.02rem;line-height:1.75;margin-bottom:24px}
.service-bullets{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}
.service-bullets li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--gray-700)}
.service-bullets li svg{flex-shrink:0;margin-top:2px}
.service-section__actions{display:flex;gap:12px;flex-wrap:wrap}

/* Technologies */
.tech-grid{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.tech-badge{
  display:flex;align-items:center;gap:7px;
  padding:8px 18px;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-sm);
  font-size:13px;font-weight:600;color:var(--gray-700);
  transition:border-color var(--trans),color var(--trans);
}
.tech-badge:hover{border-color:var(--blue-light);color:var(--blue)}

/* ── Industries Page ──────────────────────────────────────── */
.industries-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}
.industry-overview-card{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:32px 28px;text-decoration:none;color:inherit;
  transition:box-shadow var(--trans),transform var(--trans),border-color var(--trans);display:flex;flex-direction:column;
}
.industry-overview-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);border-color:var(--blue-light);text-decoration:none}
.industry-overview-card__icon{
  width:72px;height:72px;background:var(--blue-muted);border-radius:var(--radius-lg);
  display:flex;align-items:center;justify-content:center;color:var(--blue);margin-bottom:20px;
  transition:background var(--trans);
}
.industry-overview-card:hover .industry-overview-card__icon{background:var(--blue);color:var(--white)}
.industry-overview-card h3{font-size:1.15rem;font-weight:700;color:var(--gray-900);margin-bottom:10px}
.industry-overview-card p{font-size:14px;color:var(--gray-600);line-height:1.65;flex:1;margin-bottom:16px}
.industry-overview-card__cta{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:700;color:var(--blue)}

.industry-section{padding:80px 0}
.industry-section--alt{background:var(--gray-50)}
.industry-section__inner{display:grid;grid-template-columns:1fr 1.2fr;gap:72px;align-items:center}
.industry-section--alt .industry-section__inner{grid-template-columns:1.2fr 1fr}
.industry-section--alt .industry-section__visual{order:2}
.industry-section--alt .industry-section__body{order:1}

.industry-visual-block{display:flex;flex-direction:column;align-items:center;gap:24px}
.industry-icon-xl{
  width:160px;height:160px;background:var(--blue-muted);border-radius:var(--radius-2xl);
  display:flex;align-items:center;justify-content:center;color:var(--blue);
}
.industry-visual-stats{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.industry-visual-stat{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-md);
  padding:12px 16px;text-align:center;box-shadow:var(--shadow-xs);
}
.industry-visual-stat strong{display:block;font-size:1.1rem;font-weight:800;color:var(--blue);line-height:1;margin-bottom:3px}
.industry-visual-stat span{font-size:11px;color:var(--gray-600);font-weight:500}

.industry-section__body .badge{margin-bottom:12px}
.industry-section__body h2{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:800;letter-spacing:-.03em;margin-bottom:16px;color:var(--gray-900)}
.industry-section__desc{color:var(--gray-600);font-size:1.02rem;line-height:1.75;margin-bottom:24px}

.compliance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}
.compliance-card{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:28px 20px;text-align:center;
  transition:box-shadow var(--trans),transform var(--trans);
}
.compliance-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.compliance-card svg{margin:0 auto 12px}
.compliance-card h4{font-size:1rem;font-weight:700;color:var(--gray-900);margin-bottom:6px}
.compliance-card p{font-size:12px;color:var(--gray-600)}

/* ── About ────────────────────────────────────────────────── */
.about-mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.about-mission__text .badge{margin-bottom:14px}
.about-mission__text h2{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:800;letter-spacing:-.03em;margin-bottom:20px;color:var(--gray-900)}
.about-mission__text p{color:var(--gray-600);font-size:1rem;line-height:1.75;margin-bottom:14px}
.about-mission__certs{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.cert-pill{
  display:flex;align-items:center;gap:6px;
  padding:7px 14px;border:1px solid var(--gray-200);border-radius:var(--radius-sm);
  font-size:12px;font-weight:600;color:var(--gray-700);background:var(--gray-50);
}
.cert-pill svg{color:var(--blue)}

.about-mission__stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.about-stat-card{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:28px 20px;text-align:center;
  transition:box-shadow var(--trans),transform var(--trans);
}
.about-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.about-stat-card--blue{background:var(--blue);border-color:var(--blue)}
.about-stat-card--blue .about-stat-card__num,.about-stat-card--blue p{color:var(--white)}
.about-stat-card__num{
  display:block;font-size:2.5rem;font-weight:900;color:var(--blue);
  line-height:1;margin-bottom:6px;letter-spacing:-.04em;
}
.about-stat-card__plus{font-size:1.5rem}
.about-stat-card p{font-size:13px;color:var(--gray-600);font-weight:500}

.values-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
.value-card{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:28px 24px;transition:box-shadow var(--trans),transform var(--trans);
}
.value-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.value-card__icon{margin-bottom:16px}
.value-card h4{font-size:1rem;font-weight:700;color:var(--gray-900);margin-bottom:8px}
.value-card p{font-size:13.5px;color:var(--gray-600);line-height:1.65}

.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:24px}
.team-card{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-xl);
  padding:32px 24px;text-align:center;
  transition:box-shadow var(--trans),transform var(--trans);
}
.team-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.team-card__avatar{
  width:80px;height:80px;background:linear-gradient(135deg,var(--blue),var(--indigo));color:var(--white);
  border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:1.75rem;font-weight:900;margin:0 auto 16px;
  box-shadow:0 4px 16px rgba(15,98,254,.3);
}
.team-card h4{font-size:1.1rem;font-weight:700;color:var(--gray-900);margin-bottom:4px}
.team-card__role{font-size:13px;font-weight:600;color:var(--blue);margin-bottom:12px}
.team-card__bio{font-size:13px;color:var(--gray-600);line-height:1.65;margin-bottom:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.team-card__linkedin{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:var(--blue)}

/* ── Pricing FAQ ──────────────────────────────────────────── */
.faq-list{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.faq-item{border:1px solid var(--gray-200);border-radius:var(--radius-md);overflow:hidden;background:var(--white)}
.faq-item summary{
  display:flex;justify-content:space-between;align-items:center;
  padding:18px 22px;font-weight:600;font-size:15px;cursor:pointer;
  list-style:none;color:var(--gray-800);
  transition:background var(--trans);
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{background:var(--gray-50)}
.faq-item__icon{
  width:22px;height:22px;border-radius:50%;background:var(--gray-100);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  font-size:1rem;color:var(--blue);transition:background var(--trans),transform var(--trans);
  line-height:1;
}
.faq-item__icon::after{content:'+'}
.faq-item[open] summary{background:var(--blue-muted)}
.faq-item[open] .faq-item__icon{background:var(--blue);color:var(--white);transform:rotate(45deg)}
.faq-item__body{padding:0 22px 18px;background:var(--white)}
.faq-item__body p{font-size:14.5px;color:var(--gray-600);line-height:1.75}

/* Compare Table */
.table-wrap{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--gray-200)}
.compare-table{width:100%;border-collapse:collapse;font-size:14px;min-width:600px}
.compare-table th,.compare-table td{padding:14px 20px;text-align:center;border-bottom:1px solid var(--gray-100)}
.compare-table th{background:var(--gray-900);color:var(--white);font-weight:700;font-size:13px}
.compare-table th:first-child,.compare-table td:first-child{text-align:left}
.compare-table td:first-child{font-weight:600;color:var(--gray-700)}
.compare-table__popular{background:var(--blue-muted)!important;color:var(--blue-dark)!important;font-weight:700!important}
.compare-table thead .compare-table__popular{background:var(--blue)!important;color:var(--white)!important}
.compare-table tbody tr:hover td{background:var(--gray-50)}
.compare-table small{font-weight:400;opacity:.75}
.compare-x{color:var(--gray-300)}

/* ── Contact Page ─────────────────────────────────────────── */
.contact-layout{display:grid;grid-template-columns:1fr 360px;gap:56px;align-items:start}
.contact-form-wrap h2{font-size:1.75rem;font-weight:700;letter-spacing:-.03em;margin-bottom:6px}

.contact-form{display:flex;flex-direction:column;gap:20px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-group label{font-size:13px;font-weight:600;color:var(--gray-700)}
.form-group .req{color:var(--red)}
.form-group input,.form-group select,.form-group textarea{
  padding:11px 14px;border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);
  font-size:14px;color:var(--gray-900);background:var(--white);
  transition:border-color var(--trans),box-shadow var(--trans);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(15,98,254,.12);
}
.form-group input.is-invalid,.form-group textarea.is-invalid{border-color:var(--red)}
.form-error{font-size:12px;color:var(--red);min-height:16px}

.contact-info{display:flex;flex-direction:column;gap:14px}
.contact-info__card{
  background:var(--gray-50);border:1px solid var(--gray-100);border-radius:var(--radius-lg);
  padding:20px 22px;display:flex;align-items:flex-start;gap:14px;
}
.contact-info__card svg{flex-shrink:0;margin-top:2px}
.contact-info__card h4{font-size:14px;font-weight:700;color:var(--gray-900);margin-bottom:6px}
.contact-info__card p{font-size:14px;color:var(--gray-600);margin-bottom:2px}
.contact-info__sla{
  background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);
  padding:20px 22px;
}
.contact-info__sla h4{font-size:14px;font-weight:700;color:var(--gray-900);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.sla-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:8px 0;border-bottom:1px solid var(--gray-100)}
.sla-row:last-child{border-bottom:none}
.sla-row strong{color:var(--blue);font-weight:700}

.form-feedback{padding:14px 18px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;margin-top:4px}
.form-feedback.success{background:#dcfce7;color:#166534;border:1px solid #86efac}
.form-feedback.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}

.map-placeholder{
  height:200px;background:var(--gray-100);
  display:flex;align-items:center;justify-content:center;margin-top:64px;
  border-top:1px solid var(--gray-200);
}
.map-placeholder__inner{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--gray-600)}
.map-placeholder__inner svg{margin-bottom:4px}
.map-placeholder__inner span{font-size:15px;font-weight:600}
.map-placeholder__inner a{font-size:13px;font-weight:600;color:var(--blue);display:flex;align-items:center;gap:4px}

/* ── Spinner ──────────────────────────────────────────────── */
.spinner{
  width:18px;height:18px;
  border:2.5px solid rgba(255,255,255,.35);border-top-color:var(--white);
  border-radius:50%;animation:spin .65s linear infinite;display:inline-block;flex-shrink:0;
}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── Footer ───────────────────────────────────────────────── */
.footer{background:var(--gray-900);color:rgba(255,255,255,.6)}
.footer__top{padding:64px 0 48px}
.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:48px}

.footer__logo{display:flex;align-items:center;gap:10px;text-decoration:none;margin-bottom:16px}
.footer__logo span,.footer__logo strong{color:var(--white);font-size:18px;font-weight:500}
.footer__logo strong{font-weight:800}
.footer__brand p{font-size:14px;line-height:1.7;max-width:280px;margin-bottom:20px}
.footer__certs{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}
.cert-badge{
  padding:4px 10px;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-xs);
  font-size:11px;font-weight:600;color:rgba(255,255,255,.6);
}
.footer__socials{display:flex;gap:8px}
.social-btn{
  width:36px;height:36px;background:rgba(255,255,255,.08);border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);
  transition:background var(--trans),color var(--trans);text-decoration:none;
}
.social-btn:hover{background:var(--blue);color:var(--white);text-decoration:none}

.footer__col h4{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.5);margin-bottom:14px}
.footer__col ul{display:flex;flex-direction:column;gap:10px}
.footer__col a{font-size:14px;color:rgba(255,255,255,.5);transition:color var(--trans)}
.footer__col a:hover{color:var(--white);text-decoration:none}

.footer__contact-list{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.footer__contact-list li{display:flex;align-items:flex-start;gap:8px;font-size:14px}
.footer__contact-list svg{flex-shrink:0;margin-top:2px;opacity:.5}
.footer__contact-list a{color:rgba(255,255,255,.5);transition:color var(--trans)}
.footer__contact-list a:hover{color:var(--white)}

.footer__newsletter>p{font-size:13px;margin-bottom:10px;color:rgba(255,255,255,.5)}
.footer__subscribe{display:flex;gap:8px}
.footer__subscribe input{
  flex:1;padding:9px 12px;
  border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);
  background:rgba(255,255,255,.06);color:var(--white);font-size:13px;outline:none;
  transition:border-color var(--trans);
}
.footer__subscribe input::placeholder{color:rgba(255,255,255,.3)}
.footer__subscribe input:focus{border-color:var(--blue)}
.newsletter-msg{font-size:12.5px;margin-top:8px}
.newsletter-msg.success{color:#4ade80}
.newsletter-msg.error{color:#f87171}

.footer__bottom{border-top:1px solid rgba(255,255,255,.07);padding:20px 0}
.footer__bottom-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.footer__bottom p{font-size:13px}
.footer__bottom-links{display:flex;gap:20px}
.footer__bottom-links a{font-size:13px;color:rgba(255,255,255,.4);transition:color var(--trans)}
.footer__bottom-links a:hover{color:var(--white)}

/* ── AOS-like animation helpers ───────────────────────────── */
[data-aos]{opacity:0;transition:opacity .6s ease,transform .6s ease}
[data-aos="fade-up"]{transform:translateY(28px)}
[data-aos="fade-left"]{transform:translateX(28px)}
[data-aos="fade-right"]{transform:translateX(-28px)}
[data-aos].is-visible{opacity:1;transform:none}

/* ── Responsive ───────────────────────────────────────────── */
@media(max-width:1080px){
  .hero__inner{grid-template-columns:1fr}
  .hero__visual{display:none}
  .about-mission-grid{grid-template-columns:1fr}
  .why-grid{grid-template-columns:1fr}
  .service-section__inner,.service-section--alt .service-section__inner,
  .industry-section__inner,.industry-section--alt .industry-section__inner{grid-template-columns:1fr;gap:40px}
  .service-section--alt .service-section__visual,.service-section--alt .service-section__body,
  .industry-section--alt .industry-section__visual,.industry-section--alt .industry-section__body{order:0}
  .footer__grid{grid-template-columns:1fr 1fr;gap:32px}
  .contact-layout{grid-template-columns:1fr}
}

@media(max-width:768px){
  :root{--section-py:56px}
  .navbar__menu{
    display:none;flex-direction:column;position:absolute;
    top:68px;left:0;right:0;
    background:var(--white);border-bottom:1px solid var(--gray-100);
    padding:16px 24px 24px;box-shadow:var(--shadow-lg);z-index:999;gap:4px;
  }
  .navbar__menu.open{display:flex}
  .navbar__hamburger{display:flex}
  .navbar__call-btn{display:none}
  .form-row{grid-template-columns:1fr}
  .testimonials-grid--3{grid-template-columns:1fr}
  .process-steps{flex-direction:column;align-items:center}
  .process-step__connector{width:2px;height:32px;align-self:auto}
  .process-step{min-width:260px;max-width:320px;margin:0}
  .footer__grid{grid-template-columns:1fr}
  .cta-section__inner{flex-direction:column;text-align:center}
  .cta-section__actions{justify-content:center}
  .hero__stats-inner{gap:0;padding:0 8px}
  .hero-stat{padding:10px 12px}
  .hero-stat__value{font-size:1.5rem}
  .topbar__right{display:none}
}

@media(max-width:480px){
  .container{padding:0 16px}
  .hero__cta{flex-direction:column}
  .pricing-grid{grid-template-columns:1fr;max-width:100%}
  .about-mission__stats{grid-template-columns:1fr 1fr}
  .why-cards{grid-template-columns:1fr}
  .hero__stats-inner{flex-wrap:wrap;justify-content:center}
  .btn--xl{padding:14px 24px;font-size:15px}
  .services-nav__link{padding:12px 14px;font-size:12px}
}
