  /* Tighten Solutions section (top & bottom) */
  ../solutions/ { 
    padding-top: 2rem;   /* was ~5rem (py-20) */
    padding-bottom: 2.5rem; /* was ~6rem (sm:py-24) */
    scroll-margin-top: 6rem; /* nice with sticky headers when jumping to ../solutions/ */
  }

  /* Slightly larger on small+ screens */
  @media (min-width: 640px) {
    ../solutions/ {
      padding-top: 0.5rem;
      padding-bottom: 0rem;
    }
  }

  /* Reduce the grid's top margin (was mt-16 ≈ 4rem) */
  ../solutions/ > div > .grid {
    margin-top: 2rem;
  }




  /* Tighten CTA section spacing */
  ../about/ {
    padding-top: 2rem;      /* was 4rem (py-16) / 6rem (sm:py-24) */
    padding-bottom: 2rem;
    scroll-margin-top: 6rem; /* nicer anchor jump under sticky header */
  }
  @media (min-width: 640px) {
    ../about/ {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem;
    }
  }

  /* Reduce inner vertical gaps */
  ../about/ p {                /* overrides .mt-4 */
    margin-top: 0.75rem !important;
  }
  ../about/ .mt-8 {           /* button group spacer */
    margin-top: 1rem !important;
  }




  /* Tighten Industries section (top & bottom) */
  ../industries/ {
    padding-top: 2rem;       /* was ~5–6rem via py-20 / sm:py-24 */
    padding-bottom: 2rem;
    scroll-margin-top: 6rem; /* nicer anchor jump under sticky header */
  }
  @media (min-width: 640px) {
    ../industries/ {
      padding-top: 4.5rem;
      padding-bottom: 2.5rem;
    }
  }

  /* Reduce the grid's top margin (was mt-16 ≈ 4rem) */
  ../industries/ > div > .grid {
    margin-top: 1.5rem;
  }

  /* Tighten caption spacing under each image (was mt-4) */
  ../industries/ p.mt-4 {
    margin-top: 0.5rem !important;
  }



/* Hide Contact on mobile, show Theme */
@media (max-width: 767.98px) {
  a[href="./contact/"] {
    display: none !important;
  }
  #themeToggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }
}

/* Desktop/tablet: show Theme (and restore Contact, just in case) */
@media (min-width: 768px) {
  a[href="./contact/"] {
    display: inline-flex !important;
  }
  #themeToggle {
    display: inline-flex !important; /* override Tailwind's hidden */
    align-items: center;
    justify-content: center;
  }
}





/* Base color so the hamburger is visible */
#menuBtn {
  color: #0f172a;              /* dark slate (icon color) */
  background: rgba(15, 23, 42, 0.06);
  border: 1px solid rgba(15, 23, 42, 0.12);
}

/* Dark mode variant (if you use a .dark class on <html> or <body>) */
.dark #menuBtn {
  color: #f8fafc;              /* near-white */
  background: rgba(148, 163, 184, 0.10);
  border-color: rgba(148, 163, 184, 0.25);
}

/* Hover / active feedback */
#menuBtn:hover {
  background: rgba(15, 23, 42, 0.12);
}
.dark #menuBtn:hover {
  background: rgba(148, 163, 184, 0.18);
}

/* Focus ring without Tailwind (fallback) */
#menuBtn:focus-visible {
  outline: 2px solid #6366f1;  /* indigo */
  outline-offset: 2px;
  border-color: #6366f1;
}

/* Optional: ensure it's above bg overlays if any */
#menuBtn { z-index: 20; }


#menuBtn { color: #0f172a; }        /* dark slate on light */
.dark #menuBtn { color: #f8fafc; }  /* near-white on dark */




/* ===== Mobile footer grid (apply after Tailwind) ===== */
@media (max-width: 639.98px) {
  /* Make the main footer grid 2 columns on mobile */
  footer .grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important; /* a bit tighter */
    align-items: start;
  }

  /* Brand block spans full width on the first row */
  footer .grid > div:first-child {
    grid-column: 1 / -1 !important;
    text-align: center;
  }

  /* Center headings + lists for all columns */
  footer .grid > div h4 {
    text-align: center;
    margin-bottom: 6px;
  }
  footer .grid > div ul {
    margin-top: 6px !important;
    text-align: center;
  }
  footer .grid > div ul li {
    margin: 6px 0 !important;
  }

  /* Center social icons row */
  footer .grid > div .flex.gap-3 {
    justify-content: center;
  }

  /* Slightly reduce paddings in the container */
  footer .mx-auto {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  /* Tighten the copyright strip */
  footer .border-t.pt-6 {
    padding-top: 10px !important;
  }
}

/* Optional: smaller social icons on very small screens */
@media (max-width: 380px) {
  footer .size-9 {
    width: 34px !important;
    height: 34px !important;
  }
  footer .h-5.w-5 {
    width: 18px !important;
    height: 18px !important;
  }
  
}


/* Center the brand row on mobile */
@media (max-width: 639.98px) {
  footer .grid > div:first-child > .flex.items-center {
    justify-content: center !important; /* center the logo + text */
  }
  /* optional: ensure the block spans full width + centers text */
  footer .grid > div:first-child {
    grid-column: 1 / -1 !important;
    text-align: center;
  }
}


/* Center the FOLLOW column on small screens */
@media (max-width: 639.98px) {
  /* The Follow column is the last item in your footer grid */
  footer .grid > div:last-child {
    grid-column: 1 / -1;     /* span full width */
    text-align: center;       /* center the heading */
  }
  footer .grid > div:last-child .mt-3.flex {
    justify-content: center;  /* center the social icons row */
  }
}









/* ===== Compact section spacing (place AFTER Tailwind) ===== */

/* Global: reduce vertical padding for all sections */
section {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}
/* Reduce the gap between stacked sections */
section + section {
  margin-top: 8px !important;
}

/* Hero (#home): pull closer to header and trim height */
#home {
  padding-top: 22px !important;
  padding-bottom: 8px !important;
  margin-bottom: 0 !important;
}
#home .hero-bg {
  min-height: 420px !important; /* was 520px */
}

/* Services/Solutions/Industries: tighter paddings */
#services,
#solutions,
#industries {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

/* Tighten common internal top margins (scoped so it won’t affect other areas) */
#services .mt-10,
#solutions .mt-10 {
  margin-top: 1.25rem !important; /* 20px */
}
#industries .mt-16 {
  margin-top: 1.25rem !important; /* 20px */
}

/* Optional: reduce card/grid gaps a touch */
#services .grid,
#solutions .grid,
#industries .grid {
  gap: 1.25rem !important; /* 20px */
}

/* Slightly relax spacing back on larger screens so it still breathes */
@media (min-width: 1024px) {
  section {
    padding-top: 22px !important;
    padding-bottom: 22px !important;
  }
  #home .hero-bg {
    min-height: 460px !important;
  }
}










