/* ═══════════════════════════════════════════════════════════════
   BOSEVIA TECHNOLOGIES — main.css
   Palette: #00377B · #FF6C00 · #61B9F0 · #F2F8FD · #E4F3FD · #F0F0ED
   ═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Merriweather:ital,wght@0,400;0,700;0,900;1,400&family=DM+Sans:wght@300;400;500;600;700&display=swap');

/* ── CSS Variables ── */
:root {
  --navy:        #00377B;
  --navy-dark:   #001e4d;
  --navy-mid:    #00275a;
  --navy-light:  #0055B3;
  --orange:      #FF6C00;
  --orange-lt:   #FF9240;
  --orange-pale: #FFF0E6;
  --sky:         #61B9F0;
  --sky-dark:    #2196D9;
  --sky-pale:    #E4F3FD;
  --ice:         #F2F8FD;
  --off-white:   #F0F0ED;
  --white:       #ffffff;

  --text-head:   #001e4d;
  --text-body:   #2E4A6B;
  --text-muted:  #7B9BBF;

  --border:      rgba(0,55,123,.10);
  --border-md:   rgba(0,55,123,.18);

  --shadow-sm:   0 2px 8px  rgba(0,55,123,.07);
  --shadow-md:   0 8px 28px rgba(0,55,123,.11);
  --shadow-lg:   0 20px 60px rgba(0,55,123,.14);
  --shadow-xl:   0 32px 80px rgba(0,55,123,.18);

  --grad-navy:   linear-gradient(135deg, #001e4d 0%, #00377B 50%, #0055B3 100%);
  --grad-orange: linear-gradient(135deg, #FF6C00 0%, #FF9240 100%);
  --grad-sky:    linear-gradient(135deg, #61B9F0 0%, #2196D9 100%);
  --grad-hero:   linear-gradient(135deg, #001228 0%, #001e4d 40%, #00377B 80%, #0055B3 100%);
}

/* ── Reset ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: 'DM Sans', sans-serif;
  background: var(--ice);
  color: var(--text-body);
  overflow-x: hidden;
  line-height: 1.65;
}
h1,h2,h3,h4,h5,h6 { font-family: 'Merriweather', serif; color: var(--text-head); line-height: 1.15; }

/* Subtle dot grid on body */
body::before {
  content: '';
  position: fixed; inset: 0; z-index: 0; pointer-events: none;
  background-image: radial-gradient(circle, rgba(0,55,123,.05) 1px, transparent 1px);
  background-size: 30px 30px;
}

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 5px; }
::-webkit-scrollbar-track { background: var(--ice); }
::-webkit-scrollbar-thumb { background: var(--grad-navy); border-radius: 3px; }

/* ── Reading Progress ── */
.progress-bar-top {
  position: fixed; top: 0; left: 0; height: 3px; z-index: 9999;
  background: linear-gradient(90deg, var(--navy), var(--sky), var(--orange));
  width: 0%; transition: width .1s linear;
}

/* ══════════════════════════════════
   NAVBAR
══════════════════════════════════ */
.navbar {
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--border);
  padding: .85rem 0;
  position: sticky; top: 0; z-index: 900;
  box-shadow: 0 1px 16px rgba(0,55,123,.08);
}
.brand {
  font-family: 'Merriweather', serif;
  font-size: 1.45rem; font-weight: 900;
  letter-spacing: -1px; text-decoration: none;
  color: var(--navy);
}
.brand .highlight { color: var(--orange); }

.nav-link {
  font-family: 'DM Sans', sans-serif;
  font-size: .88rem; font-weight: 600;
  color: var(--text-body) !important;
  padding: .4rem .9rem !important;
  position: relative; transition: color .2s;
  letter-spacing: .2px;
}
.nav-link:hover { color: var(--navy) !important; }
.nav-link.active { color: var(--navy) !important; }
.nav-link.active::after {
  content: ''; position: absolute; bottom: -2px; left: .9rem;
  width: calc(100% - 1.8rem); height: 2px;
  background: var(--grad-orange); border-radius: 2px;
}
.btn-cta-nav {
  background: var(--grad-navy);
  color: #fff; font-weight: 700; font-size: .82rem;
  padding: .5rem 1.35rem; border-radius: 50px; border: none;
  letter-spacing: .3px; transition: all .3s;
}
.btn-cta-nav:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,55,123,.30);
  color: #fff;
}

/* ══════════════════════════════════
   SOCIAL FLOAT
══════════════════════════════════ */
.social-float {
  position: fixed; right: 0; top: 50%; transform: translateY(-50%);
  z-index: 800;
  background: var(--white);
  border-radius: 14px 0 0 14px;
  border: 1px solid var(--border); border-right: none;
  overflow: hidden; box-shadow: var(--shadow-md);
  display: flex; flex-direction: column; gap: 0;
}
.social-float a {
  width: 38px; height: 38px;
  display: flex; align-items: center; justify-content: center;
  color: var(--text-muted); font-size: .8rem;
  text-decoration: none; transition: all .25s;
}
.social-float a:hover { background: var(--sky-pale); color: var(--navy); }

/* ══════════════════════════════════
   SHARED UTILITIES
══════════════════════════════════ */
.sec { position: relative; z-index: 1; }
.sec-label {
  font-family: 'DM Sans', sans-serif;
  font-size: .65rem; letter-spacing: 3.5px; text-transform: uppercase;
  font-weight: 800; display: block; margin-bottom: .6rem;
}
.sec-h2 {
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  font-weight: 900; letter-spacing: -1px; color: var(--text-head);
}
.sec-sub {
  color: var(--text-muted); line-height: 1.8; font-size: .95rem; max-width: 560px;
}

/* ── Buttons ── */
.btn-navy {
  background: var(--grad-navy);
  color: #fff; font-weight: 700; padding: .75rem 1.9rem;
  border-radius: 50px; border: none; font-size: .9rem;
  transition: all .3s; display: inline-flex; align-items: center; gap: .5rem;
}
.btn-navy:hover { transform: translateY(-3px); box-shadow: 0 14px 36px rgba(0,55,123,.32); color: #fff; }

.btn-orange {
  background: var(--grad-orange);
  color: #fff; font-weight: 700; padding: .75rem 1.9rem;
  border-radius: 50px; border: none; font-size: .9rem;
  transition: all .3s; display: inline-flex; align-items: center; gap: .5rem;
}
.btn-orange:hover { transform: translateY(-3px); box-shadow: 0 14px 36px rgba(255,108,0,.35); color: #fff; }

.btn-ghost {
  background: rgba(255,255,255,.1); border: 1.5px solid rgba(255,255,255,.3);
  color: #fff; font-weight: 600; padding: .75rem 1.9rem;
  border-radius: 50px; font-size: .9rem;
  transition: all .3s; backdrop-filter: blur(8px);
  display: inline-flex; align-items: center; gap: .5rem;
}
.btn-ghost:hover { background: rgba(255,255,255,.2); color: #fff; }

.btn-ghost-dark {
  background: transparent; border: 1.5px solid var(--border-md);
  color: var(--navy); font-weight: 600; padding: .75rem 1.9rem;
  border-radius: 50px; font-size: .9rem; transition: all .3s;
  display: inline-flex; align-items: center; gap: .5rem;
  text-decoration: none;
}
.btn-ghost-dark:hover { background: var(--sky-pale); border-color: var(--sky); color: var(--navy); }

/* ══════════════════════════════════
   HERO
══════════════════════════════════ */
#hero {
  min-height: 100vh; position: relative; overflow: hidden;
  display: flex; align-items: center;
  padding: 8rem 0 5rem;
  background: var(--grad-hero);
}
.hero-backdrop {
  position: absolute; inset: 0; z-index: 0;
  background:
    radial-gradient(ellipse 55% 65% at 0% 40%,   rgba(97,185,240,.20) 0%, transparent 60%),
    radial-gradient(ellipse 45% 55% at 100% 60%,  rgba(255,108,0,.18)  0%, transparent 55%),
    radial-gradient(ellipse 35% 40% at 50% 100%,  rgba(97,185,240,.12) 0%, transparent 50%);
}
.hero-grid {
  position: absolute; inset: 0; z-index: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size: 56px 56px;
  animation: gridShift 30s linear infinite;
}
@keyframes gridShift { 0%{background-position:0 0} 100%{background-position:56px 56px} }

.blob { position:absolute; border-radius:50%; filter:blur(65px); pointer-events:none; animation:blobFloat 10s ease-in-out infinite; }
.blob-1 { width:480px;height:480px;background:rgba(97,185,240,.18); top:-15%;left:-10%; animation-duration:12s; }
.blob-2 { width:360px;height:360px;background:rgba(255,108,0,.15); bottom:0;right:-8%; animation-delay:-4s; }
.blob-3 { width:240px;height:240px;background:rgba(97,185,240,.12); top:30%;right:25%; animation-delay:-7s; }
.blob-4 { width:160px;height:160px;background:rgba(255,146,64,.12); bottom:20%;left:30%; animation-delay:-2s; }
@keyframes blobFloat {
  0%,100%{transform:translateY(0) rotate(0deg) scale(1)}
  33%{transform:translateY(-22px) rotate(4deg) scale(1.03)}
  66%{transform:translateY(14px) rotate(-3deg) scale(.97)}
}

.hero-content { position:relative; z-index:2; }
.hero-ticker {
  display:inline-flex; align-items:center; gap:.6rem;
  padding:.3rem 1.1rem; border-radius:50px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08); backdrop-filter:blur(8px);
  font-size:.7rem; letter-spacing:2.5px; text-transform:uppercase;
  color:rgba(255,255,255,.85); font-weight:700; margin-bottom:1.6rem;
}
.dot-pulse { width:7px;height:7px;border-radius:50%;background:var(--orange); animation:pulse .9s infinite; }
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.5)}}

#hero h1 {
  font-size:clamp(2.4rem,6.5vw,4.8rem);
  font-weight:900; line-height:1.06; letter-spacing:-2px;
  margin-bottom:1.4rem; color:#fff;
}
.grd-hero-orange {
  background:linear-gradient(90deg,#FF9240,#FFB870);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.grd-hero-sky {
  background:linear-gradient(90deg,#A8D8F8,#61B9F0);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-desc { color:rgba(255,255,255,.7);font-size:1rem;line-height:1.8;max-width:500px;margin-bottom:2rem; }

.pill-row { display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.4rem; }
.pill { padding:.28rem .85rem;border-radius:20px;font-family:'DM Sans',sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase; }
.pill-n  { border:1px solid rgba(97,185,240,.35);color:#A8D8F8;background:rgba(97,185,240,.15); }
.pill-o  { border:1px solid rgba(255,146,64,.35);color:#FFB870;background:rgba(255,108,0,.18); }
.pill-s  { border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.75);background:rgba(255,255,255,.08); }
.pill-e  { border:1px solid rgba(97,185,240,.25);color:#C8E8FA;background:rgba(97,185,240,.10); }

.hero-btns { display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem; }

.stat-chips { display:flex;gap:2rem;flex-wrap:wrap;margin-top:2.5rem; }
.stat-chip { display:flex;flex-direction:column; }
.stat-chip strong {
  font-family:'Merriweather',serif;
  font-size:2rem;font-weight:900;letter-spacing:-1px;
  background:linear-gradient(90deg,#FF9240,#FFD0A0);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.stat-chip span { font-family:'DM Sans',sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:1.5px;color:rgba(255,255,255,.5);margin-top:.15rem; }

.hero-card { border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 80px rgba(0,55,123,.3),0 50px 80px rgba(0,0,0,.25);position:relative; }
.hero-card img { width:100%;height:420px;object-fit:cover;display:block; }
.hero-card-overlay { position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,30,77,.85) 100%); }
.hero-card-badge {
  position:absolute;bottom:1.4rem;left:1.4rem;right:1.4rem;
  background:rgba(255,255,255,.1);backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.18);border-radius:16px;
  padding:1rem 1.2rem;display:flex;align-items:center;gap:.8rem;
}
.badge-icon { width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.badge-icon.nv { background:rgba(97,185,240,.25);color:#A8D8F8; }
.badge-text strong { font-family:'DM Sans',sans-serif;font-size:.88rem;color:#fff; }
.badge-text span   { font-family:'DM Sans',sans-serif;font-size:.72rem;color:rgba(255,255,255,.6);display:block; }

/* ══════════════════════════════════
   SECTION BG ALTERNATION
══════════════════════════════════ */
.bg-ice      { background: var(--ice); }
.bg-white    { background: var(--white); }
.bg-sky-pale { background: var(--sky-pale); }
.bg-off      { background: var(--off-white); }
.bg-navy     { background: var(--grad-hero); }

/* ══════════════════════════════════
   VISION & MISSION
══════════════════════════════════ */
#vision { background: var(--white); position:relative; }
#vision::before {
  content:''; position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 60% 50% at 0% 50%, rgba(97,185,240,.07) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 100% 20%, rgba(0,55,123,.05) 0%, transparent 55%);
}

.vm-grid { display:grid;grid-template-columns:1fr 1fr;gap:1.5rem; }
.vm-box {
  border-radius:24px;padding:2.4rem;
  border:1.5px solid var(--border);
  background:var(--white);
  position:relative;overflow:hidden;
  transition:transform .35s,box-shadow .35s;
  box-shadow:var(--shadow-sm);
}
.vm-box:hover { transform:translateY(-8px); }
.vm-box.v-box { background:linear-gradient(145deg,var(--ice),var(--white));border-color:rgba(97,185,240,.25); }
.vm-box.v-box:hover { box-shadow:0 24px 60px rgba(97,185,240,.18); }
.vm-box.m-box { background:linear-gradient(145deg,var(--sky-pale),var(--white));border-color:rgba(0,55,123,.15); }
.vm-box.m-box:hover { box-shadow:0 24px 60px rgba(0,55,123,.14); }
.vm-box::before { content:'';position:absolute;width:180px;height:180px;border-radius:50%;top:-50px;right:-50px;filter:blur(50px); }
.vm-box.v-box::before { background:rgba(97,185,240,.1); }
.vm-box.m-box::before { background:rgba(0,55,123,.07);top:auto;bottom:-50px;right:auto;left:-50px; }
.vm-icon { width:50px;height:50px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin-bottom:1.2rem; }
.vm-icon.sky { background:rgba(97,185,240,.15);color:var(--sky-dark); }
.vm-icon.nvy { background:rgba(0,55,123,.1);color:var(--navy); }
.vm-box h4 { font-family:'DM Sans',sans-serif;font-size:.78rem;letter-spacing:2.5px;text-transform:uppercase;font-weight:800;margin-bottom:.9rem; }
.vm-box.v-box h4 { color:var(--sky-dark); }
.vm-box.m-box h4 { color:var(--navy); }
.vm-box p { color:var(--text-body);line-height:1.8;font-size:.9rem; }

.stat-row { display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1.5rem; }
.stat-box {
  border-radius:20px;padding:1.8rem 1.5rem;text-align:center;
  border:1.5px solid var(--border);position:relative;overflow:hidden;
  background:var(--white);box-shadow:var(--shadow-sm);
  transition:transform .3s,box-shadow .3s;
}
.stat-box:hover { transform:translateY(-4px);box-shadow:var(--shadow-md); }
.stat-box.s1 { background:linear-gradient(135deg,var(--ice),var(--white));border-color:rgba(97,185,240,.2); }
.stat-box.s2 { background:linear-gradient(135deg,var(--orange-pale),var(--white));border-color:rgba(255,108,0,.2); }
.stat-box.s3 { background:linear-gradient(135deg,var(--sky-pale),var(--white));border-color:rgba(0,55,123,.15); }
.stat-num { font-family:'Merriweather',serif;font-size:2.8rem;font-weight:900;letter-spacing:-1.5px; }
.stat-box.s1 .stat-num { background:linear-gradient(90deg,var(--sky-dark),var(--sky));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text; }
.stat-box.s2 .stat-num { background:linear-gradient(90deg,var(--orange),var(--orange-lt));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text; }
.stat-box.s3 .stat-num { background:linear-gradient(90deg,var(--navy),var(--navy-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text; }
.stat-box p { color:var(--text-muted);font-size:.78rem;letter-spacing:.5px;margin-top:.3rem; }

/* ══════════════════════════════════
   SERVICES
══════════════════════════════════ */
#services { background:var(--sky-pale);position:relative; }
#services::before {
  content:'';position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 55% 50% at 100% 40%,rgba(255,108,0,.06) 0%,transparent 55%),
    radial-gradient(ellipse 45% 40% at 0% 70%,rgba(0,55,123,.05) 0%,transparent 50%);
}
.svc-row { display:flex;align-items:center;gap:3.5rem;margin-bottom:5rem; }
.svc-row:last-child { margin-bottom:0; }
.svc-row.rev { flex-direction:row-reverse; }
.svc-img { flex:0 0 46%;border-radius:24px;overflow:hidden;border:1.5px solid var(--border);position:relative;box-shadow:var(--shadow-md); }
.svc-img img { width:100%;height:300px;object-fit:cover;display:block;transition:transform .5s; }
.svc-img:hover img { transform:scale(1.04); }
.svc-img-overlay { position:absolute;inset:0;pointer-events:none; }
.svc-img.nv .svc-img-overlay { background:linear-gradient(135deg,rgba(0,55,123,.12),transparent); }
.svc-img.or .svc-img-overlay { background:linear-gradient(135deg,rgba(255,108,0,.12),transparent); }
.svc-img.sk .svc-img-overlay { background:linear-gradient(135deg,rgba(97,185,240,.12),transparent); }
.svc-badge { position:absolute;top:1rem;left:1rem;padding:.3rem .75rem;border-radius:20px;font-family:'DM Sans',sans-serif;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px; }
.svc-badge.nv { background:rgba(0,55,123,.12);color:var(--navy);border:1px solid rgba(0,55,123,.2); }
.svc-badge.or { background:rgba(255,108,0,.12);color:#c2410c;border:1px solid rgba(255,108,0,.2); }
.svc-badge.sk { background:rgba(97,185,240,.15);color:var(--sky-dark);border:1px solid rgba(97,185,240,.25); }
.svc-text h3 { font-size:clamp(1.3rem,3vw,1.9rem);font-weight:900;letter-spacing:-.6px;line-height:1.2;margin-bottom:1rem;color:var(--text-head); }
.svc-text p  { color:var(--text-body);line-height:1.8;font-size:.93rem; }
.svc-line { height:3px;width:50px;border-radius:3px;margin-top:1.3rem; }
.svc-line.nv { background:linear-gradient(90deg,var(--navy),var(--sky)); }
.svc-line.or { background:linear-gradient(90deg,var(--orange),var(--orange-lt)); }
.svc-line.sk { background:linear-gradient(90deg,var(--sky),var(--navy)); }
.svc-chips { display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem; }
.svc-chip { padding:.22rem .7rem;border-radius:12px;font-family:'DM Sans',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase; }
.svc-chip.nv { background:rgba(0,55,123,.08);color:var(--navy);border:1px solid rgba(0,55,123,.15); }
.svc-chip.or { background:rgba(255,108,0,.09);color:#b84d00;border:1px solid rgba(255,108,0,.18); }
.svc-chip.sk { background:rgba(97,185,240,.12);color:var(--sky-dark);border:1px solid rgba(97,185,240,.2); }

/* ══════════════════════════════════
   VERTICALS
══════════════════════════════════ */
#verticals { background:var(--white); }
.vert-cards { display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem; }
.vcard {
  border-radius:24px;overflow:hidden;
  border:1.5px solid var(--border);background:var(--white);
  box-shadow:var(--shadow-sm);position:relative;
  transition:transform .35s,box-shadow .35s;
}
.vcard:hover { transform:translateY(-10px); }
.vcard:nth-child(1) { border-color:rgba(97,185,240,.2); }
.vcard:nth-child(1):hover { box-shadow:0 28px 70px rgba(97,185,240,.18);border-color:rgba(97,185,240,.4); }
.vcard:nth-child(2) { border-color:rgba(0,55,123,.15); }
.vcard:nth-child(2):hover { box-shadow:0 28px 70px rgba(0,55,123,.14);border-color:rgba(0,55,123,.3); }
.vcard:nth-child(3) { border-color:rgba(255,108,0,.15); }
.vcard:nth-child(3):hover { box-shadow:0 28px 70px rgba(255,108,0,.14);border-color:rgba(255,108,0,.3); }
.vcard-img-wrap { overflow:hidden;position:relative; }
.vcard-img { width:100%;height:210px;object-fit:cover;display:block;transition:transform .5s; }
.vcard:hover .vcard-img { transform:scale(1.06); }
.vcard-img-tint { position:absolute;inset:0; }
.vcard:nth-child(1) .vcard-img-tint { background:linear-gradient(180deg,transparent 55%,rgba(97,185,240,.12)); }
.vcard:nth-child(2) .vcard-img-tint { background:linear-gradient(180deg,transparent 55%,rgba(0,55,123,.12)); }
.vcard:nth-child(3) .vcard-img-tint { background:linear-gradient(180deg,transparent 55%,rgba(255,108,0,.1)); }
.vcard-body { padding:1.5rem;background:var(--white); }
.vcard-icon { font-size:1.2rem;margin-bottom:.7rem; }
.vcard:nth-child(1) .vcard-icon { color:var(--sky-dark); }
.vcard:nth-child(2) .vcard-icon { color:var(--navy); }
.vcard:nth-child(3) .vcard-icon { color:var(--orange); }
.vcard h5 { font-size:.95rem;font-weight:800;color:var(--text-head);margin-bottom:.6rem; }
.vcard p  { color:var(--text-body);font-size:.86rem;line-height:1.72; }
.vcard-bar { height:3px;border-radius:3px;margin-top:1rem; }
.vcard:nth-child(1) .vcard-bar { background:linear-gradient(90deg,var(--sky),var(--sky-dark)); }
.vcard:nth-child(2) .vcard-bar { background:linear-gradient(90deg,var(--navy),var(--sky)); }
.vcard:nth-child(3) .vcard-bar { background:linear-gradient(90deg,var(--orange),var(--orange-lt)); }

/* ══════════════════════════════════
   TEAM GRID
══════════════════════════════════ */
#team { background:var(--ice);position:relative; }
#team::before {
  content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 55% 45% at 15% 60%,rgba(97,185,240,.06) 0%,transparent 55%);
}
.team-grid { display:grid;grid-template-columns:repeat(6,1fr);gap:1.2rem;margin-top:3.5rem; }
.tcard {
  border-radius:20px;overflow:hidden;
  border:1.5px solid var(--border);background:var(--white);
  box-shadow:var(--shadow-sm);
  transition:transform .35s,box-shadow .35s;text-align:center;
}
.tcard:hover { transform:translateY(-8px); }
.tcard:nth-child(odd):hover  { box-shadow:0 20px 50px rgba(0,55,123,.14);border-color:rgba(0,55,123,.25); }
.tcard:nth-child(even):hover { box-shadow:0 20px 50px rgba(97,185,240,.18);border-color:rgba(97,185,240,.3); }
.tcard-img-wrap { height:190px;overflow:hidden;position:relative; }
.tcard-img-wrap img { width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .4s;filter:grayscale(10%); }
.tcard:hover .tcard-img-wrap img { transform:scale(1.06);filter:grayscale(0%); }
.tcard-img-wrap::after { content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(255,255,255,.5) 100%); }
.tcard-body { padding:1.1rem .85rem;background:var(--white); }
.tcard-body h6 { font-size:.85rem;font-weight:800;color:var(--text-head);margin-bottom:.3rem;line-height:1.3; }
.tcard-role { font-family:'DM Sans',sans-serif;font-size:.64rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--sky-dark); }
.tcard:nth-child(odd)  .tcard-role { color:var(--navy); }
.tcard:nth-child(even) .tcard-role { color:var(--sky-dark); }
.tcard-bar { height:2px;border-radius:2px;width:28px;margin:.6rem auto 0; }
.tcard:nth-child(odd)  .tcard-bar { background:linear-gradient(90deg,var(--navy),var(--sky)); }
.tcard:nth-child(even) .tcard-bar { background:linear-gradient(90deg,var(--sky),var(--orange)); }

/* ══════════════════════════════════
   CTA SECTION
══════════════════════════════════ */
#cta { background:var(--grad-hero);padding:5rem 0; }
.cta-wrap {
  border-radius:30px;overflow:hidden;position:relative;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(135deg,rgba(0,18,50,.95) 0%,rgba(0,30,70,.9) 60%,rgba(0,55,123,.85) 100%);
  box-shadow:0 0 80px rgba(0,55,123,.25);
}
.cta-wrap::before {
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 50% 80% at 0% 50%,rgba(97,185,240,.18) 0%,transparent 60%),
    radial-gradient(ellipse 40% 60% at 100% 50%,rgba(255,108,0,.15) 0%,transparent 55%);
}
.cta-inner { position:relative;z-index:2;padding:3.5rem; }
.cta-inner h2 { font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900;letter-spacing:-1px;margin-bottom:1rem;color:#fff; }
.cta-inner p  { color:rgba(255,255,255,.65);max-width:480px;line-height:1.75;margin-bottom:2rem;font-size:.95rem; }
.cta-btns { display:flex;gap:1rem;flex-wrap:wrap; }
.cta-img-col { position:relative; }
.cta-img-col img { width:100%;height:280px;object-fit:cover;border-radius:20px;border:1px solid rgba(255,255,255,.12); }
.cta-img-col::before {
  content:'';position:absolute;inset:-2px;border-radius:22px;z-index:-1;
  background:linear-gradient(135deg,var(--navy),var(--sky),var(--orange));
  background-size:300% 300%;animation:gradShift 5s ease infinite;
  filter:blur(14px);opacity:.5;
}
@keyframes gradShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}

/* ══════════════════════════════════
   FOOTER
══════════════════════════════════ */
footer { background:#001228;border-top:1px solid rgba(255,255,255,.06);padding:4.5rem 0 2rem; }
.footer-rainbow { height:3px;background:linear-gradient(90deg,var(--navy),var(--sky),var(--orange));background-size:300% 100%;animation:gradShift 5s linear infinite;margin-bottom:2rem; }
.footer-logo { font-family:'Merriweather',serif;font-size:1.6rem;font-weight:900;letter-spacing:-1px;margin-bottom:1rem;display:block;text-decoration:none;color:#fff; }
.footer-logo span { color:var(--orange); }
.footer-tagline { color:rgba(255,255,255,.4);font-size:.86rem;line-height:1.7;max-width:250px; }
.footer-social { display:flex;gap:.6rem;margin-top:1.2rem; }
.footer-social a { width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.4);font-size:.78rem;text-decoration:none;transition:all .25s; }
.footer-social a:hover { background:rgba(97,185,240,.12);color:var(--sky);transform:translateY(-2px); }
.footer-heading { font-family:'DM Sans',sans-serif;font-size:.65rem;letter-spacing:2.5px;text-transform:uppercase;font-weight:800;color:var(--orange);margin-bottom:1.2rem; }
.footer-links { list-style:none;padding:0; }
.footer-links li { margin-bottom:.5rem; }
.footer-links a { color:rgba(255,255,255,.4);font-size:.88rem;text-decoration:none;transition:color .2s; }
.footer-links a:hover { color:var(--sky); }
.footer-contact-item { display:flex;gap:.7rem;align-items:flex-start;margin-bottom:.9rem;color:rgba(255,255,255,.4);font-size:.86rem;line-height:1.5; }
.fci-icon { margin-top:.15rem;flex-shrink:0; }
.fci-icon.vc { color:var(--sky); }
.fci-icon.gc { color:var(--orange); }
.fci-icon.mc { color:var(--sky); }
.footer-bottom { border-top:1px solid rgba(255,255,255,.06);margin-top:3rem;padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem; }
.footer-bottom p { color:rgba(255,255,255,.25);font-size:.8rem;margin:0; }

/* ══════════════════════════════════
   SCROLL REVEAL
══════════════════════════════════ */
.reveal    { opacity:0;transform:translateY(28px); transition:opacity .7s ease,transform .7s ease; }
.reveal.in { opacity:1;transform:translateY(0); }
.reveal-l    { opacity:0;transform:translateX(-28px);transition:opacity .7s ease,transform .7s ease; }
.reveal-l.in { opacity:1;transform:translateX(0); }
.reveal-r    { opacity:0;transform:translateX(28px); transition:opacity .7s ease,transform .7s ease; }
.reveal-r.in { opacity:1;transform:translateX(0); }

/* ══════════════════════════════════
   PAGE HERO (shared)
══════════════════════════════════ */
.page-hero {
  position:relative;height:400px;
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  background:var(--grad-hero);
}
.page-hero img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.35); }
.page-hero::after {
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 50% 70% at 20% 50%,rgba(97,185,240,.2) 0%,transparent 60%),
    radial-gradient(ellipse 40% 60% at 80% 50%,rgba(255,108,0,.15) 0%,transparent 55%);
}
.page-hero-content { position:relative;z-index:3;text-align:center;padding:0 1rem; }
.page-hero-content h1 { font-size:clamp(2rem,6vw,3.8rem);font-weight:900;letter-spacing:-1.5px;color:#fff; }
.page-hero-bar { width:70px;height:4px;margin:1rem auto 0;background:linear-gradient(90deg,var(--orange),var(--sky));border-radius:4px; }

/* ══════════════════════════════════
   ABOUT PAGE
══════════════════════════════════ */
.about-text-section { background:var(--white);position:relative; }
.about-text-section::before { content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 50% at 0% 50%,rgba(97,185,240,.05) 0%,transparent 60%); }
.about-text-section h2 { font-size:clamp(1.7rem,3.5vw,2.5rem);font-weight:900;letter-spacing:-1px;margin-bottom:2rem;color:var(--text-head); }
.about-text-section p { color:var(--text-body);font-size:.95rem;line-height:1.85;margin-bottom:1.4rem; }
.about-text-card { border-left:4px solid var(--sky);padding-left:1.6rem; }
.about-text-card.orange { border-left-color:var(--orange); }

.sol-card {
  background:var(--white);border:1.5px solid var(--border);border-radius:24px;padding:2.2rem;height:100%;
  position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s;box-shadow:var(--shadow-sm);
}
.sol-card:hover { transform:translateY(-8px); }
.sol-card:nth-child(1):hover { box-shadow:0 24px 60px rgba(0,55,123,.13);border-color:rgba(0,55,123,.25); }
.sol-card:nth-child(2):hover { box-shadow:0 24px 60px rgba(97,185,240,.16);border-color:rgba(97,185,240,.3); }
.sol-card:nth-child(3):hover { box-shadow:0 24px 60px rgba(255,108,0,.14);border-color:rgba(255,108,0,.25); }
.sol-card::before { content:'';position:absolute;width:160px;height:160px;border-radius:50%;top:-50px;right:-50px;filter:blur(45px);opacity:.4; }
.sol-card:nth-child(1)::before { background:rgba(0,55,123,.1); }
.sol-card:nth-child(2)::before { background:rgba(97,185,240,.12); }
.sol-card:nth-child(3)::before { background:rgba(255,108,0,.1); }
.sol-icon { width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:1.4rem; }
.sol-icon.nv { background:rgba(0,55,123,.1);color:var(--navy); }
.sol-icon.sk { background:rgba(97,185,240,.12);color:var(--sky-dark); }
.sol-icon.or { background:rgba(255,108,0,.1);color:var(--orange); }
.sol-card h5 { font-size:1.05rem;font-weight:800;margin-bottom:.8rem; }
.sol-card:nth-child(1) h5 { color:var(--navy); }
.sol-card:nth-child(2) h5 { color:var(--sky-dark); }
.sol-card:nth-child(3) h5 { color:var(--orange); }
.sol-card p { color:var(--text-body);font-size:.9rem;line-height:1.75; }
.sol-bar { height:3px;border-radius:3px;margin-top:1.3rem; }
.sol-card:nth-child(1) .sol-bar { background:linear-gradient(90deg,var(--navy),var(--sky)); }
.sol-card:nth-child(2) .sol-bar { background:linear-gradient(90deg,var(--sky),var(--sky-dark)); }
.sol-card:nth-child(3) .sol-bar { background:linear-gradient(90deg,var(--orange),var(--orange-lt)); }

.vm-section { background:var(--ice);position:relative; }
.vm-card {
  border-radius:24px;padding:2.4rem;
  background:var(--white);border:1.5px solid var(--border);
  box-shadow:var(--shadow-sm);position:relative;overflow:hidden;
  margin-bottom:1.5rem;transition:transform .35s,box-shadow .35s;
}
.vm-card:last-child { margin-bottom:0; }
.vm-card:hover { transform:translateY(-6px); }
.vm-card.vision-card { background:linear-gradient(145deg,var(--ice),var(--white));border-left:4px solid var(--sky); }
.vm-card.vision-card:hover { box-shadow:0 20px 55px rgba(97,185,240,.18); }
.vm-card.mission-card { background:linear-gradient(145deg,var(--sky-pale),var(--white));border-left:4px solid var(--navy); }
.vm-card.mission-card:hover { box-shadow:0 20px 55px rgba(0,55,123,.14); }
.vm-card-header { display:flex;align-items:center;gap:.9rem;margin-bottom:1.1rem; }
.vm-card-icon { width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0; }
.vm-card-icon.sky { background:rgba(97,185,240,.14);color:var(--sky-dark); }
.vm-card-icon.nvy { background:rgba(0,55,123,.1);color:var(--navy); }
.vm-card h4 { font-family:'DM Sans',sans-serif;font-size:1.05rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase;margin:0; }
.vision-card h4  { color:var(--sky-dark); }
.mission-card h4 { color:var(--navy); }
.vm-card p { color:var(--text-body);font-size:.93rem;line-height:1.8;margin:0; }

.industries-section { background:var(--off-white);position:relative; }
.industry-chips { display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem; }
.industry-chip { padding:.5rem 1.1rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.5px;border:1.5px solid;transition:all .25s;cursor:default; }
.industry-chip:hover { transform:translateY(-3px);box-shadow:var(--shadow-sm); }
.chip-n { color:var(--navy);border-color:rgba(0,55,123,.22);background:rgba(0,55,123,.06); }
.chip-s { color:var(--sky-dark);border-color:rgba(97,185,240,.28);background:rgba(97,185,240,.08); }
.chip-o { color:#b84d00;border-color:rgba(255,108,0,.22);background:rgba(255,108,0,.07); }
.chip-n:hover { background:rgba(0,55,123,.12); }
.chip-s:hover { background:rgba(97,185,240,.15); }
.chip-o:hover { background:rgba(255,108,0,.12); }

/* ══════════════════════════════════
   SERVICES PAGE
══════════════════════════════════ */
.svc-intro { background:var(--white);padding:5rem 0;text-align:center;position:relative; }
.svc-intro h2 { font-size:clamp(1.5rem,3.5vw,2.3rem);font-weight:900;letter-spacing:-1px;color:var(--navy);margin-bottom:1.2rem; }
.svc-intro p { color:var(--text-body);font-size:.97rem;line-height:1.8;max-width:700px;margin:0 auto; }
.svc-list-section { background:var(--sky-pale);position:relative; }
.svc-list-card {
  background:var(--white);border:1.5px solid var(--border);border-radius:24px;padding:2rem;
  margin-bottom:2rem;display:flex;gap:2.5rem;align-items:flex-start;
  transition:transform .35s,box-shadow .35s;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);
}
.svc-list-card:last-child { margin-bottom:0; }
.svc-list-card:hover { transform:translateY(-6px); }
.svc-list-card:nth-child(1):hover { box-shadow:0 20px 55px rgba(0,55,123,.13);border-color:rgba(0,55,123,.22); }
.svc-list-card:nth-child(2):hover { box-shadow:0 20px 55px rgba(97,185,240,.16);border-color:rgba(97,185,240,.28); }
.svc-list-card:nth-child(3):hover { box-shadow:0 20px 55px rgba(255,108,0,.13);border-color:rgba(255,108,0,.22); }
.svc-list-card::before { content:'';position:absolute;top:0;left:0;width:4px;height:100%;border-radius:4px 0 0 4px; }
.svc-list-card:nth-child(1)::before { background:linear-gradient(180deg,var(--navy),var(--sky)); }
.svc-list-card:nth-child(2)::before { background:linear-gradient(180deg,var(--sky),var(--sky-dark)); }
.svc-list-card:nth-child(3)::before { background:linear-gradient(180deg,var(--orange),var(--orange-lt)); }
.svc-list-img { flex:0 0 240px;border-radius:16px;overflow:hidden;border:1.5px solid var(--border);box-shadow:var(--shadow-sm); }
.svc-list-img img { width:100%;height:170px;object-fit:cover;display:block; }
.svc-list-body h4 { font-size:1.15rem;font-weight:900;margin-bottom:.7rem; }
.svc-list-card:nth-child(1) .svc-list-body h4 { color:var(--navy); }
.svc-list-card:nth-child(2) .svc-list-body h4 { color:var(--sky-dark); }
.svc-list-card:nth-child(3) .svc-list-body h4 { color:var(--orange); }
.svc-list-body p { color:var(--text-body);font-size:.93rem;line-height:1.8; }

.delivery-section { background:var(--white); }
.delivery-card {
  background:var(--white);border:1.5px solid var(--border);border-radius:24px;padding:3rem;
  border-left:4px solid var(--sky);box-shadow:var(--shadow-md);transition:box-shadow .35s;
}
.delivery-card:hover { box-shadow:0 20px 55px rgba(97,185,240,.16); }
.delivery-card h3 { font-size:1.5rem;font-weight:900;color:var(--text-head);margin-bottom:1rem; }
.delivery-line { width:48px;height:3px;background:linear-gradient(90deg,var(--sky),var(--navy));border-radius:3px;margin-bottom:1.5rem; }
.delivery-card p { color:var(--text-body);font-size:.95rem;line-height:1.85;margin-bottom:1.2rem; }

/* ══════════════════════════════════
   CONTACT PAGE
══════════════════════════════════ */
.contact-info-section { background:var(--white);padding:5rem 0; }
.info-card {
  background:var(--white);border:1.5px solid var(--border);border-radius:24px;padding:2.5rem 1.5rem;text-align:center;
  position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s;height:100%;box-shadow:var(--shadow-sm);
}
.info-card:hover { transform:translateY(-8px); }
.info-card:nth-child(1):hover { box-shadow:0 20px 55px rgba(0,55,123,.14);border-color:rgba(0,55,123,.25); }
.info-card:nth-child(2):hover { box-shadow:0 20px 55px rgba(255,108,0,.14);border-color:rgba(255,108,0,.22); }
.info-card:nth-child(3):hover { box-shadow:0 20px 55px rgba(97,185,240,.16);border-color:rgba(97,185,240,.28); }
.info-card::before { content:'';position:absolute;width:120px;height:120px;border-radius:50%;top:-40px;right:-40px;filter:blur(35px);opacity:.3; }
.info-card:nth-child(1)::before { background:rgba(0,55,123,.12); }
.info-card:nth-child(2)::before { background:rgba(255,108,0,.15); }
.info-card:nth-child(3)::before { background:rgba(97,185,240,.15); }
.info-icon { width:68px;height:68px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin:0 auto 1.3rem; }
.info-icon.ph { background:var(--grad-navy);color:#fff; }
.info-icon.em { background:var(--grad-orange);color:#fff; }
.info-icon.lo { background:var(--grad-sky);color:#fff; }
.info-card h5 { font-size:1rem;font-weight:800;color:var(--text-head);margin-bottom:.6rem; }
.info-card p  { color:var(--text-body);font-size:.9rem;line-height:1.7;margin:0; }
.info-card a  { color:var(--navy);text-decoration:none; }
.info-card a:hover { color:var(--orange); }
.info-bar { height:3px;border-radius:3px;margin:1.2rem auto 0;width:40px; }
.info-card:nth-child(1) .info-bar { background:linear-gradient(90deg,var(--navy),var(--sky)); }
.info-card:nth-child(2) .info-bar { background:linear-gradient(90deg,var(--orange),var(--orange-lt)); }
.info-card:nth-child(3) .info-bar { background:linear-gradient(90deg,var(--sky),var(--sky-dark)); }

.contact-form-section { background:var(--sky-pale);padding:6rem 0; }
.form-wrap { background:var(--white);border:1.5px solid var(--border);border-radius:28px;padding:3rem;max-width:760px;margin:0 auto;box-shadow:var(--shadow-lg); }
.form-title { font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;letter-spacing:-1px;text-align:center;margin-bottom:.5rem;color:var(--text-head); }
.form-sub   { color:var(--text-muted);text-align:center;font-size:.92rem;margin-bottom:2rem; }
.form-divider { width:60px;height:3px;background:linear-gradient(90deg,var(--navy),var(--sky));border-radius:3px;margin:0 auto 2rem; }
.form-control,.form-select {
  background:var(--ice) !important;border:1.5px solid var(--border-md) !important;
  color:var(--text-body) !important;border-radius:12px !important;
  padding:.75rem 1rem !important;font-family:'DM Sans',sans-serif;font-size:.92rem;transition:border-color .25s,box-shadow .25s;
}
.form-control::placeholder { color:var(--text-muted) !important; }
.form-control:focus,.form-select:focus {
  border-color:var(--sky) !important;
  box-shadow:0 0 0 3px rgba(97,185,240,.15) !important;
  background:var(--white) !important;outline:none !important;color:var(--text-body) !important;
}
.form-label { color:var(--text-muted);font-family:'DM Sans',sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.5px;margin-bottom:.4rem; }
textarea.form-control { resize:vertical;min-height:120px; }
.btn-whatsapp {
  background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;font-weight:700;font-size:.95rem;
  padding:.85rem 2rem;border-radius:50px;border:none;width:100%;letter-spacing:.5px;
  transition:transform .3s,box-shadow .3s;display:flex;align-items:center;justify-content:center;gap:.6rem;
}
.btn-whatsapp:hover { transform:translateY(-3px);box-shadow:0 14px 35px rgba(37,211,102,.3);color:#fff; }

.map-section { background:var(--white);padding:6rem 0; }
.map-wrap { border-radius:20px;overflow:hidden;border:1.5px solid var(--border);box-shadow:var(--shadow-lg); }
.map-wrap iframe { width:100%;height:420px;border:none;display:block; }

/* ══════════════════════════════════
   TEAM PAGE
══════════════════════════════════ */
.team-intro { background:var(--ice);padding:4rem 0;text-align:center;border-bottom:1px solid var(--border); }
.team-intro p { color:var(--text-body);font-size:1rem;line-height:1.8;max-width:640px;margin:0 auto; }
.intro-divider { width:60px;height:3px;margin:1.5rem auto 0;background:linear-gradient(90deg,var(--navy),var(--sky));border-radius:3px; }
.team-profiles { background:var(--white);padding:5rem 0;position:relative; }
.profile-card {
  background:var(--white);border:1.5px solid var(--border);border-radius:24px;padding:2.5rem;
  margin-bottom:2rem;display:flex;gap:2.5rem;align-items:flex-start;
  transition:transform .35s,box-shadow .35s;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);
}
.profile-card:last-child { margin-bottom:0; }
.profile-card:hover { transform:translateY(-6px); }
.profile-card::before { content:'';position:absolute;top:0;left:0;width:4px;height:100%;border-radius:4px 0 0 4px; }
.profile-card:nth-child(odd)::before  { background:linear-gradient(180deg,var(--navy),var(--sky)); }
.profile-card:nth-child(even)::before { background:linear-gradient(180deg,var(--sky),var(--orange)); }
.profile-card:nth-child(odd):hover  { box-shadow:0 20px 55px rgba(0,55,123,.13);border-color:rgba(0,55,123,.22); }
.profile-card:nth-child(even):hover { box-shadow:0 20px 55px rgba(97,185,240,.16);border-color:rgba(97,185,240,.25); }
.profile-img-wrap { flex:0 0 200px;border-radius:18px;overflow:hidden;border:1.5px solid var(--border);box-shadow:var(--shadow-sm); }
.profile-img-wrap img { width:100%;height:220px;object-fit:cover;object-position:top;display:block; }
.profile-body h3 { font-size:1.25rem;font-weight:900;color:var(--text-head);margin-bottom:.3rem; }
.profile-role { font-family:'DM Sans',sans-serif;font-size:.75rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;margin-bottom:1.2rem; }
.profile-card:nth-child(odd)  .profile-role { color:var(--navy); }
.profile-card:nth-child(even) .profile-role { color:var(--sky-dark); }
.profile-body p { color:var(--text-body);font-size:.9rem;line-height:1.82;margin-bottom:.9rem; }

/* ══════════════════════════════════
   ABOUT HERO
══════════════════════════════════ */
.about-hero { position:relative;height:420px;overflow:hidden;display:flex;align-items:center;justify-content:center; }
.about-hero img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:brightness(.35); }
.about-hero::after { content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 70% at 30% 50%,rgba(0,55,123,.55) 0%,transparent 60%);z-index:1; }
.about-hero-content { position:relative;z-index:2;text-align:center;padding:0 1rem; }
.about-hero-content h1 { font-size:clamp(2rem,6vw,4rem);font-weight:900;letter-spacing:-1.5px;line-height:1.1;color:#fff; }
.about-hero-content p { font-size:1rem;color:rgba(255,255,255,.7);max-width:560px;margin:1rem auto 0;line-height:1.7; }
.about-hero-bar { width:80px;height:4px;background:linear-gradient(90deg,var(--orange),var(--sky));border-radius:4px;margin:1.2rem auto 0; }

/* Colored text helpers */
.clr-navy   { color:var(--navy); }
.clr-orange { color:var(--orange); }
.clr-sky    { color:var(--sky-dark); }
.grd-heading {
  background:linear-gradient(90deg,var(--navy),var(--sky-dark));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}

/* ══════════════════════════════════
   RESPONSIVE
══════════════════════════════════ */
@media(max-width:1200px) { .team-grid{grid-template-columns:repeat(3,1fr);} }
@media(max-width:1024px) { .vert-cards{grid-template-columns:1fr 1fr;} }
@media(max-width:768px) {
  .social-float{display:none;}
  .vm-grid{grid-template-columns:1fr;}
  .svc-row,.svc-row.rev{flex-direction:column;}
  .svc-img{flex:none;width:100%;}
  .vert-cards{grid-template-columns:1fr;}
  .cta-inner{padding:2rem;}
  .svc-list-card{flex-direction:column;}
  .svc-list-img{flex:none;width:100%;}
  .profile-card{flex-direction:column;}
  .profile-img-wrap{flex:none;width:160px;}
  .form-wrap{padding:2rem 1.5rem;}
}
@media(max-width:576px) {
  .stat-row{grid-template-columns:1fr;}
  .team-grid{grid-template-columns:repeat(2,1fr);}
}