/* ---------- CSS Variables & Reset ---------- */
:root{
  --bg: #0e1014;
  --surface: #151821;
  --text: #e7eaf2;
  --muted: #a6adc8;
  --primary: #4c8df5;
  --primary-600: #4c8df5;
  --accent: #7ee787;
  --ring: #94a3b8;
  --card: #1a1f2b;
  --border: #2a3346;
  --shadow: 0 8px 32px rgba(0,0,0,.35);
}
/*
@media (prefers-color-scheme: light){
  :root{
    --bg: #ffffff;
    --surface: #f6f7fb;
    --text: #111827;
    --muted: #4b5563;
    --primary: #2563eb;
    --primary-600: #1d4ed8;
    --accent: #059669;
    --ring: #94a3b8;
    --card: #ffffff;
    --border: #e5e7eb;
    --shadow: 0 6px 24px rgba(0,0,0,.08);
  }
}
*/
*{box-sizing:border-box}
html:focus-within{scroll-behavior:smooth}
html,body{height:100%}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, Apple Color Emoji, Segoe UI Emoji;
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* ---------- Layout ---------- */
.container{max-width:1120px;margin-inline:auto;padding:0 1rem}
.section{padding:4rem 0}
.section-intro{color:var(--muted);max-width:60ch}
.kicker{display:block;color:var(--accent);font-family:Poppins, Inter, sans-serif;font-weight:500;letter-spacing:.02em;margin-bottom:.35rem}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:linear-gradient(to bottom, color-mix(in srgb, var(--bg) 96%, transparent), transparent);
  backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid var(--border);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 0}
.brand{display:flex;gap:.6rem;align-items:center;text-decoration:none}
.brand-text{font-weight:700;letter-spacing:.3px}
.brand .accent{color:var(--primary)}
.nav-toggle{background:none;border:1px solid var(--border);padding:.5rem;border-radius:.5rem;color:var(--text);display:none}
.site-nav ul{display:flex;gap:1rem;list-style:none;margin:0;padding:0}
.site-nav a{padding:0 .75rem;border-radius:.5rem;text-decoration:none}
.site-nav a:hover,.site-nav a:focus-visible{outline:2px solid var(--ring);outline-offset:2px}

@media (max-width: 800px){
  .nav-toggle{display:inline-flex}
  .site-nav{position:fixed;inset:64px 1rem auto 1rem;background:var(--card);border:1px solid var(--border);border-radius:0.75rem;padding:1rem;box-shadow:var(--shadow);display:none}
  .site-nav.open{display:block}
  .site-nav ul{flex-direction:column}
}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1rem;border-radius:.7rem;text-decoration:none;font-weight:600;border:1px solid var(--border)}
.btn-primary{background:var(--primary);border-color:var(--primary-600);color:white}
.btn-primary:hover{filter:brightness(.98)}
.btn-ghost{background:transparent}
.btn-ghost:hover{background:color-mix(in srgb, var(--primary) 12%, transparent)}

/* ---------- Hero ---------- */
.hero{padding:4.5rem 0 3.5rem;background:radial-gradient(70% 70% at 10% 0%, color-mix(in srgb, var(--primary) 18%, transparent), transparent)}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:center;}
.hero h1{font-family:Poppins, Inter, sans-serif;font-weight:600;line-height:1.15;font-size:clamp(2rem, 3.6vw, 2.9rem)}
.lead{color:var(--muted);font-size:1.125rem}
.cta-row{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap}
.trust-list{display:flex;gap:2rem;list-style:none;padding:0;margin:4rem 0 0}
.trust-list strong{font-size:1.25rem}
.hero-art{filter:drop-shadow(var(--shadow));}
.btn-center{text-align: center;margin:10px auto;}
.btn-center:hover{}
.nexus-cap-btn {
  display: inline-block;
  text-decoration: none;
  font-family: 'Segoe UI', sans-serif;
  font-weight: 600;
  font-size: 16px;
  /* CHANGED: White text and border for dark background visibility */
  color: #ffffff;
  border: 2px solid #ffffff;
  padding: 10px 24px;
  border-radius: 4px;
  transition: all 0.3s ease;
  margin-left: 15px;
  background-color: transparent;
}

/* Hover Effect - Turns white background with navy text */
.nexus-cap-btn:hover {
  background-color: #ffffff;
  color: #002060;
  /* Navy Blue Text */
  border-color: #ffffff;
  cursor: pointer;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
  .nexus-cap-btn {
    display: block;
    margin-left: 0;
    margin-top: 15px;
    /* Added a little more space on mobile */
    text-align: center;
  }
}
@media (max-width: 900px){
  .hero-grid{grid-template-columns:1fr}
  .hero-art{order:-1}
}

/* ---------- Cards & Grids ---------- */
.card-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:1rem;margin-top:1.5rem}
.hero-card-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem;margin-top:1.5rem}
.card{background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:1rem;box-shadow:var(--shadow);display: flex; align-items: flex-start;}
.icon-wrapper{flex-shrink: 0;width: 75px;padding-right: 20px;}
.text-wrapper h3{margin-top: 0px; margin-bottom: 10px; padding-top: 10px;}
.text-wrapper p{margin-bottom: 0; line-height: 1.6;}
.hero-card{background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:1rem;box-shadow:var(--shadow);transition: .3s;}
.hero-card:hover{background-color: #1a1f40;}
.card h3, .card p{margin-top:0; font-size: 1.17em;}
.logos img{height: 100%;border-radius: 16px;}
.list-check{padding-left:1.25rem}
.list-check li{margin:.35rem 0}
.list-check li::marker{content:"✔ "}
.flexgrid{display: flex; flex-wrap: wrap;}
.flexgrid div{
  margin: 10px;
  padding: 20px 40px;
  height: 150px;
  vertical-align:middle;
}

@media (max-width: 1000px){
  .card-grid{grid-template-columns:repeat(2, 1fr)}
}
@media (max-width: 560px){
  .card-grid{grid-template-columns:1fr}
}

/* ---------- Industries ---------- */
.pill-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.pill{background:var(--surface);border:1px solid var(--border);padding:.45rem .7rem;border-radius:999px}

/* ---------- Cases ---------- */
.case-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem;margin-top:1.5rem}
.case{background:linear-gradient(180deg, var(--card), var(--surface));border:1px solid var(--border);border-radius:1rem;padding:1rem;box-shadow:var(--shadow)}
.case-link{display:inline-block;margin-top:.25rem;text-decoration:underline}
@media (max-width: 900px){ .case-grid{grid-template-columns:1fr} }

/* ---------- About ---------- */
#about strong{color:var(--accent)}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:1rem;align-items:start}
.stat-card{display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem;background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:1rem;box-shadow:var(--shadow);margin-top: 80px;}
.stat{background:var(--surface);border:1px dashed var(--border);border-radius:.8rem;padding:1rem;text-align:center}
.stat-num{font-family:Poppins, Inter, sans-serif;font-size:2rem;font-weight:700}
.stat-label{color:var(--muted)}
.founder{height:575px;}
@media (max-width: 900px){ .about-grid{grid-template-columns:1fr} }

/* ---------- Form ---------- */
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}
.form-row{display:flex;flex-direction:column;gap:.35rem}
input, textarea{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:.6rem;padding:.75rem}
input:focus, textarea:focus{outline:2px solid var(--ring);outline-offset:2px}
.contact-form .form-row:nth-child(12){grid-column:1/-1}
.contact-form .form-row:last-child{grid-column:1/-1;justify-self:start}
@media (max-width: 720px){ .contact-form{grid-template-columns:1fr} }

/* ---------- Footer ---------- */
.site-footer{border-top:1px solid var(--border);padding:2rem 0;background:var(--surface)}
.footer-grid{display: flex; flex-direction: row; justify-content: space-around;}
.footer-links{list-style:none;padding:0;margin:.5rem 0 0;display:grid;gap:.35rem;}
.footer-links a{text-decoration: none;}
.brand--footer .brand-text{font-size:1rem}
#footerLogoSection{padding-top: 25px;}

/* ---------- Helpers ---------- */
.small{font-size:.9rem;color:var(--muted)}
.skip-link{position:absolute;left:-1000px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;z-index:999;background:var(--card);padding:.5rem 1rem;border-radius:.5rem;border:1px solid var(--border);box-shadow:var(--shadow)}

/* ---------- Motion Preferences ---------- */
@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

@media (min-width: 1024px) {
      .services-grid-override {
        grid-template-columns: repeat(3, 1fr) !important; 
        gap: 2rem;
      }
    }

    /* CENTERED HEADER */
    .centered-header {
        text-align: center;
        max-width: 800px;
        margin: 0 auto 3rem auto;
    }

    /* UNIFORM CARD STYLING */
    .service-card-uniform {
        background-color: #0f172a; /* Matches your form background */
        border: 1px solid #1e293b; /* Subtle dark border for all cards */
        border-radius: 12px;
        padding: 2rem;
        transition: all 0.3s ease; /* Smooth transition for hover */
        height: 100%; /* Ensures they are all the same height */
    }

    /* HOVER EFFECT - The Blue Glow */
    .service-card-uniform:hover {
        border-color: #00A3E0;
        transform: translateY(-5px); /* Slight lift effect */
        box-shadow: 0 10px 20px -5px rgba(0, 163, 224, 0.15);
    }

    /* Page-specific override for the intro text */
    .section-intro-center {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: 700px; /* Keeps the line length readable */
        display: block;   /* Ensures it behaves like a block for margin auto to work */
    }