/* LeadPRO Education — custom theme layer on top of Bootstrap */
:root{
  --lp-green:#1f8f55;
  --lp-green-700:#167244;
  --lp-mint:#e8f6ef;
  --lp-ink:#0f172a;
  --lp-muted:#475569;
  --lp-border:#e2e8f0;
  --lp-shadow: 0 18px 45px rgba(2, 6, 23, .12);
  --lp-shadow-sm: 0 10px 25px rgba(2, 6, 23, .10);
  --lp-radius: 12px;
}

html, body{
  height:100%;
}
body{
  font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--lp-ink);
  background: linear-gradient(180deg, #ffffff 0%, #fbfffd 70%, #ffffff 100%);
}

.lp-skip{
  position:absolute;
  left:-999px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}
.lp-skip:focus{
  left: 1rem;
  top: 1rem;
  width: auto;
  height: auto;
  padding: .75rem 1rem;
  z-index: 1100;
  background: #fff;
  border: 1px solid var(--lp-border);
  border-radius: 10px;
  box-shadow: var(--lp-shadow-sm);
}

.navbar{
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(226,232,240,.65);
}
.navbar .navbar-brand{
  font-weight: 700;
  letter-spacing: .2px;
}
.lp-badge{
  font-size: .72rem;
  padding: .25rem .5rem;
  border-radius: 999px;
  background: var(--lp-mint);
  color: var(--lp-green-700);
  border: 1px solid rgba(31,143,85,.25);
}

.btn-lp{
  --bs-btn-bg: var(--lp-green);
  --bs-btn-border-color: var(--lp-green);
  --bs-btn-hover-bg: var(--lp-green-700);
  --bs-btn-hover-border-color: var(--lp-green-700);
  --bs-btn-color:#fff;
  --bs-btn-hover-color:#fff;
  border-radius: 12px;
  box-shadow: 0 12px 25px rgba(31,143,85,.22);
}
.btn-lp-outline{
  --bs-btn-color: var(--lp-green);
  --bs-btn-border-color: rgba(31,143,85,.45);
  --bs-btn-hover-bg: var(--lp-green);
  --bs-btn-hover-border-color: var(--lp-green);
  --bs-btn-hover-color: #fff;
  border-radius: 12px;
}

.lp-hero{
  position: relative;
  padding: 5.25rem 0 3.25rem;
  overflow: clip;
}
.lp-hero::before{
  content:"";
  position:absolute;
  inset:-30% -20% auto -20%;
  height: 520px;
  background: radial-gradient(closest-side, rgba(31,143,85,.18), transparent 70%),
              radial-gradient(closest-side, rgba(16,185,129,.14), transparent 70%),
              radial-gradient(closest-side, rgba(2,132,199,.08), transparent 70%);
  filter: blur(4px);
  transform: rotate(-6deg);
  z-index: -1;
}
.lp-hero-card{
  border: 1px solid rgba(226,232,240,.85);
  border-radius: var(--lp-radius);
  box-shadow: var(--lp-shadow);
  overflow: hidden;
  background: #fff;
}
.lp-hero-img{
  width:100%;
  height: 420px;
  object-fit: cover;
}
@media (max-width: 991.98px){
  .lp-hero{
    padding-top: 4.5rem;
  }
  .lp-hero-img{
    height: 320px;
  }
}

.lp-section{
  padding: 3.5rem 0;
}
.lp-section-title{
  font-weight: 700;
  letter-spacing: -.2px;
}
.lp-lead{
  color: var(--lp-muted);
}

.lp-card{
  border: 1px solid rgba(226,232,240,.9);
  border-radius: var(--lp-radius);
  background: rgba(255,255,255,.92);
  box-shadow: var(--lp-shadow-sm);
}
.lp-card .card-body{
  padding: 1.25rem;
}
.lp-icon{
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display:grid;
  place-items:center;
  background: var(--lp-mint);
  border: 1px solid rgba(31,143,85,.22);
  color: var(--lp-green-700);
  flex: 0 0 auto;
}

.lp-stats{
  border-radius: calc(var(--lp-radius) + 4px);
  border: 1px solid rgba(226,232,240,.9);
  background:
    linear-gradient(180deg, rgba(232,246,239,.75), rgba(255,255,255,.9));
  box-shadow: var(--lp-shadow-sm);
}
.lp-stat{
  padding: 1.5rem 1rem;
}
.lp-stat strong{
  font-size: 1.55rem;
}
.lp-stat span{
  color: var(--lp-muted);
}

.lp-media{
  border-radius: var(--lp-radius);
  overflow: hidden;
  border: 1px solid rgba(226,232,240,.9);
  box-shadow: var(--lp-shadow-sm);
}
.lp-media img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.lp-footer{
  margin-top: auto;
  border-top: 1px solid rgba(226,232,240,.85);
  background: #0b1220;
  color: rgba(255,255,255,.84);
}
.lp-footer a{
  color: rgba(255,255,255,.84);
  text-decoration: none;
}
.lp-footer a:hover{
  color: #ffffff;
  text-decoration: underline;
}
.lp-footer .lp-footer-title{
  font-weight: 700;
  color:#fff;
}
.lp-footer .lp-footer-muted{
  color: rgba(255,255,255,.68);
}
.lp-social a{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.5rem .75rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius: 999px;
}
.lp-social a:hover{
  border-color: rgba(255,255,255,.32);
}

.lp-breadcrumb{
  padding-top: 5.25rem;
  padding-bottom: 1.25rem;
}

.lp-fade{
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .7s ease, transform .7s ease;
}
.lp-fade.is-visible{
  opacity: 1;
  transform: translateY(0);
}

/* Cookie banner */
.lp-cookie{
  position: fixed;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  z-index: 1080;
  display:none;
}
.lp-cookie .lp-cookie-inner{
  max-width: 1050px;
  margin: 0 auto;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(226,232,240,.95);
  border-radius: 16px;
  box-shadow: var(--lp-shadow);
  padding: 1rem;
  backdrop-filter: blur(10px);
}
.lp-cookie .lp-cookie-text{
  color: var(--lp-muted);
  margin: 0;
  font-size: .95rem;
}

/* Forms */
.form-control, .form-select{
  border-radius: 12px;
  border-color: rgba(148,163,184,.45);
}
.form-control:focus, .form-select:focus{
  border-color: rgba(31,143,85,.55);
  box-shadow: 0 0 0 .25rem rgba(31,143,85,.14);
}

/* Small helpers */
.lp-divider{
  height:1px;
  background: rgba(226,232,240,.9);
  margin: 1.25rem 0;
}

