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

:root{
  --blue: #0e8a58;
  --blue-dark: #0a5c3a;
  --teal: #0fb5a3;
  --cream: #f4fafc;
  --blush: #eaf6f7;
}

html{scroll-behavior:smooth;}

body{
  font-family:'Inter', sans-serif;
  background-color: var(--cream);
  color:#243b4a;
}

.font-display{
  font-family:'Poppins', sans-serif;
}

/* Gradient hero background */
.hero-gradient{
  background: radial-gradient(circle at 15% 20%, rgba(15,181,163,0.16), transparent 40%),
              radial-gradient(circle at 85% 80%, rgba(14,138,88,0.16), transparent 45%),
              linear-gradient(135deg, #f4fafc 0%, #eaf6f7 60%, #e3f2f7 100%);
}

.brand-gradient-text{
  background: linear-gradient(90deg, var(--blue), var(--teal));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.btn-primary{
  background: linear-gradient(90deg, var(--blue), #12a86b);
  color:#fff;
  transition: all .25s ease;
}
.btn-primary:hover{
  background: linear-gradient(90deg, var(--blue-dark), var(--blue));
  transform: translateY(-2px);
  box-shadow: 0 10px 20px -8px rgba(14,138,88,0.45);
}

.btn-outline{
  border:1.5px solid var(--blue);
  color: var(--blue);
  transition: all .25s ease;
}
.btn-outline:hover{
  background: var(--blue);
  color:#fff;
}

.card-hover{
  transition: transform .3s ease, box-shadow .3s ease;
}
.card-hover:hover{
  transform: translateY(-6px);
  box-shadow: 0 20px 35px -18px rgba(14,138,88,0.30);
}

.nav-link{
  position: relative;
  color:#3a5568;
}
.nav-link::after{
  content:"";
  position:absolute;
  left:0; bottom:-4px;
  width:0%; height:2px;
  background: var(--teal);
  transition: width .25s ease;
}
.nav-link:hover::after, .nav-link.active::after{
  width:100%;
}
.nav-link.active{
  color: var(--blue);
  font-weight:600;
}

.section-divider::before{
  content:"⌬";
  color: var(--teal);
}

/* Fade-in-up animation on scroll */
.reveal{
  opacity:0;
  transform: translateY(24px);
  transition: opacity .7s ease, transform .7s ease;
}
.reveal.in-view{
  opacity:1;
  transform: translateY(0);
}

/* Custom scrollbar */
::-webkit-scrollbar{width:10px;}
::-webkit-scrollbar-track{background:var(--blush);}
::-webkit-scrollbar-thumb{background:var(--blue); border-radius:10px;}

.input-field{
  border:1.5px solid #d3e3ea;
  background:#fff;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.input-field:focus{
  outline:none;
  border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(14,138,88,0.12);
}

.tab-btn.active-tab{
  background: var(--blue);
  color:#fff;
}

.mobile-menu{
  max-height:0;
  overflow:hidden;
  transition: max-height .35s ease;
}
.mobile-menu.open{
  max-height:480px;
}
