@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;700;900&display=swap');

* {
  font-family: 'Inter', sans-serif;
}

:root{
  --brand-primary:#40c1c6;
  --brand-dark:#0e0e0e;
  --brand-dark-800:#181818;
  --brand-primary-600:#2fb2b7;
  --brand-primary-50:#e6f7f8;
  --brand-primary-100:#d2f1f3;
}
.hero-gradient {
  background: linear-gradient(135deg, var(--brand-dark) 0%, var(--brand-primary) 50%, var(--brand-dark) 100%);
}

.service-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.15);
}

.nav-link.active {
  color: var(--brand-primary);
  border-bottom: 2px solid var(--brand-primary);
}

.mobile-menu {
  display: none;
}

@media (max-width: 768px) {
  .mobile-menu {
    display: block;
  }
  .nav-menu {
    position: fixed;
    top: 80px;
    left: 0;
    height: 100vh;
    width: 80vw;
    background: var(--brand-dark);
    padding: 1rem;
    transform: translateX(-100%);
    transition: transform .3s ease;
    z-index: 60;
    display: block;
  }
  .nav-menu.active {
    transform: translateX(0);
  }
  .mobile-overlay {
    position: fixed;
    top: 80px;
    left: 80vw;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,.35);
    backdrop-filter: blur(6px);
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease;
    z-index: 50;
  }
  .mobile-overlay.active {
    opacity: 1;
    pointer-events: auto;
  }
  .breadcrumb { display: none; }
}

.section-padding {
  padding: 5rem 0;
}

.text-gradient {
  background: linear-gradient(135deg, var(--brand-primary), #2fb2b7);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
/* Brand overrides for utilities from Tailwind CDN */
.text-blue-900{color:var(--brand-dark)!important;}
.bg-blue-900{background-color:var(--brand-dark)!important;}
.border-blue-900{border-color:var(--brand-dark)!important;}
.border-blue-800{border-color:var(--brand-dark)!important;}
.hover\:bg-blue-800:hover{background-color:var(--brand-dark-800)!important;}
.hover\:text-blue-900:hover{color:var(--brand-dark)!important;}
.bg-yellow-500{background-color:var(--brand-primary)!important;}
.hover\:bg-yellow-600:hover{background-color:#2fb2b7!important;}
.text-yellow-400{color:var(--brand-primary)!important;}
/* Brand tints for light panels/badges */
.bg-blue-50{background-color:var(--brand-primary-50)!important;}
.bg-blue-100{background-color:var(--brand-primary-100)!important;}
.bg-green-100,.bg-purple-100,.bg-orange-100{background-color:var(--brand-primary-50)!important;}
.text-green-500,.text-green-800,.text-purple-800,.text-orange-800{color:var(--brand-primary)!important;}
/* Remove legacy color #1C388E wherever inline styles are used */
[style*="#1C388E"], [style*="#1c388e"]{
  color: var(--brand-primary) !important;
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}
[style*="rgb(28, 56, 142"]{
  color: var(--brand-primary) !important;
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}
/* Hide scrollbars but keep scrolling */
html, body {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
html::-webkit-scrollbar,
body::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:600;
  border-radius:0.75rem;
  transition:all .25s ease;
  line-height:1.25;
  cursor:pointer;
}
.btn-sm{padding:.5rem 1rem;font-size:.875rem}
.btn-md{padding:.75rem 1.25rem;font-size:1rem}
.btn-lg{padding:1rem 2rem;font-size:1.125rem}
@media (max-width:768px){
  .btn-lg{padding:.75rem 1.25rem;font-size:1rem}
  .btn-block-sm{width:100%}
}
.btn-primary{background-color:var(--brand-primary);color:#fff;box-shadow:0 8px 20px rgba(64,193,198,.25)}
.btn-primary:hover{background-color:var(--brand-primary-600);color:#fff;transform:translateY(-1px)}
.btn-outline{background-color:transparent;color:#fff;border:2px solid #fff}
.btn-outline:hover{background-color:#fff;color:#000;transform:translateY(-1px)}
.btn-dark{background-color:var(--brand-dark);color:#fff}
.btn-dark:hover{background-color:var(--brand-dark-800)}
.btn-dark-outline{background-color:transparent;color:var(--brand-dark);border:2px solid var(--brand-dark)}
.btn-dark-outline:hover{background-color:var(--brand-dark);color:#fff}
.fa,.fas,.far,.fab{background-color:transparent}
footer a:hover{color:var(--brand-primary)!important}
.text-brand{color:var(--brand-primary)!important}
.read-more{cursor:pointer}
.badge-brand{background-color:var(--brand-primary-50)!important;color:#000!important}
