:root{
  --green-dark:#1f4d3a;
  --green-main:#2f7d5a;
  --green-soft:#e9f7ef;
  --cream-bg:#faf7f2;
  --light-bg:#f6f9f7;
  --text-dark:#111827;
  --text-muted:#6b7280;
  --white:#ffffff;

  --radius-sm:10px;
  --radius-md:16px;
  --radius-lg:24px;

  --shadow-soft:0 10px 25px rgba(0,0,0,0.06);
  --shadow-card:0 16px 40px rgba(0,0,0,0.10);

  --transition:all .25s ease;
}

*{margin:0;padding:0;box-sizing:border-box}
body{
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  background:var(--cream-bg);
  color:var(--text-dark);
  line-height:1.6;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.section{padding:78px 0}
.section-soft{background:var(--light-bg)}
.section-title{
  text-align:center;
  font-size:44px;
  line-height:1.1;
  font-weight:900;
  margin-bottom:18px;
}
.section-heading{
  font-size:44px;
  line-height:1.1;
  font-weight:900;
  margin-bottom:14px;
}
.lead{font-size:18px;color:#374151;max-width:560px}

/* ================= HEADER ================= */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:linear-gradient(90deg,#f3fbf7,#e8f7ef);
  border-bottom:1px solid rgba(0,0,0,.06);
  backdrop-filter:saturate(140%) blur(8px);
}
.header-container{
  max-width:1300px;
  margin:0 auto;
  padding:16px 24px;
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  align-items:center;
}
.brand-left{
  display:flex;
  justify-content:flex-start;
  align-items:center;
}
.brand-logo{width:60px;height:60px}
.brand-center{
  justify-self:center;
  font-size:30px;
  font-weight:900;
  color:var(--green-dark);
  letter-spacing:.2px;
  text-align:center;
}
.nav-area{
  justify-self:end;
  display:flex;
  gap:20px;
  align-items:center;
}
.nav-area a{
  font-size:16px;
  font-weight:800;
  color:#1f2937;
  padding:10px 12px;
  border-radius:12px;
  transition:var(--transition);
}
.nav-area a:hover{
  background:rgba(47,125,90,.12);
  color:var(--green-main);
}
.nav-area a.active{
  background:rgba(47,125,90,.16);
  color:var(--green-dark);
  box-shadow:0 8px 18px rgba(47,125,90,.10);
}

/* ================= BUTTONS ================= */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 26px;
  border-radius:var(--radius-md);
  font-weight:900;
  transition:var(--transition);
  border:2px solid transparent;
}
.btn-primary{
  background:var(--green-main);
  color:#fff;
  box-shadow:0 14px 30px rgba(47,125,90,.18);
}
.btn-primary:hover{background:var(--green-dark);transform:translateY(-1px)}
.btn-secondary{
  background:#fff;
  color:var(--green-dark);
  border-color:rgba(47,125,90,.55);
}
.btn-secondary:hover{background:rgba(47,125,90,.10)}
.btn-small{padding:10px 16px;font-size:14px;border-radius:14px}
.btn-wide{width:100%}

/* ================= GRID HELPERS ================= */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:46px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.align-center{align-items:center}

/* ================= HERO ================= */
.hero{padding:0}
.hero-slider{
  position:relative;
  min-height:calc(100vh - 78px);
  overflow:hidden;
}
.hero-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
  transform:scale(1.04);
  transition:opacity 900ms ease, transform 1400ms ease;
}
.hero-slide.is-active{
  opacity:1;
  transform:scale(1);
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.40), rgba(0,0,0,.40));
}
.hero-overlay::after{
  content:"";
  position:absolute;
  inset:0;
  backdrop-filter: blur(0.5px);
  background:rgba(0,0,0,.18);
}
.hero-content{
  position:relative;
  z-index:2;
  min-height:calc(100vh - 78px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:80px 24px;
  color:#fff;
}
.hero-pill{
  display:inline-block;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.22);
  padding:8px 16px;
  border-radius:999px;
  font-weight:900;
  margin-bottom:18px;
}
.hero-title{
  font-size:64px;
  line-height:1.05;
  font-weight:1000;
  text-shadow:0 12px 32px rgba(0,0,0,.40);
}
.hero-title span{color:#bdf6dc}
.hero-subtitle{
  max-width:820px;
  margin-top:16px;
  font-size:18px;
  color:rgba(255,255,255,.90);
}
.hero-actions{margin-top:28px;display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
.hero-dots{
  position:absolute;
  z-index:3;
  left:0;right:0;
  bottom:20px;
  display:flex;
  justify-content:center;
  gap:10px;
}
.dot{
  width:12px;height:12px;border-radius:999px;
  border:none;
  background:rgba(255,255,255,.40);
  cursor:pointer;
  transition:var(--transition);
}
.dot.is-active{background:#fff;transform:scale(1.15)}

/* ================= MEDIA CARD ================= */
.media-card{
  background:#fff;
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:var(--shadow-card);
}
.media-card img{width:100%;height:100%;object-fit:cover}

/* mini points */
.mini-points{margin-top:18px;display:grid;gap:12px}
.mini-point{
  display:flex;gap:10px;align-items:center;
  color:#374151;font-weight:700;
}
.mini-point i{color:var(--green-main)}

/* ================= PRODUCTS ================= */
.products-grid{margin-top:34px}
.product-card{
  position:relative;
  background:#fff;
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:var(--shadow-soft);
  transition:var(--transition);
  cursor:pointer;
}
.product-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-card);
}
.product-card img{
  width:100%;
  height:210px;
  object-fit:cover;
}
.product-meta{padding:16px 16px 18px;text-align:center}
.product-meta h3{font-size:18px;font-weight:950}
.product-meta .code{margin-top:6px;color:var(--green-main);font-weight:900}
.quick-look{
  position:absolute;
  inset:auto 14px 14px 14px;
  width:calc(100% - 28px);
  padding:12px 14px;
  border-radius:16px;
  border:none;
  background:rgba(47,125,90,.92);
  color:#fff;
  font-weight:950;
  opacity:0;
  transform:translateY(6px);
  transition:var(--transition);
}
.product-card:hover .quick-look{opacity:1;transform:translateY(0)}
.center-actions{display:flex;justify-content:center;margin-top:28px}

/* ================= PROCESS (3 COL) ================= */
.process-grid{
  margin-top:38px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.process-card{
  background:#fff;
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-soft);
  padding:26px;
  transition:var(--transition);
  text-align:center;
}
.process-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}
.process-icon{
  width:62px;height:62px;
  margin:0 auto 14px;
  border-radius:18px;
  display:grid;place-items:center;
  background:rgba(47,125,90,.10);
  color:var(--green-main);
  font-size:26px;
}
.process-card h3{font-size:20px;font-weight:950;margin-bottom:8px}
.process-card p{color:var(--text-muted)}

/* ================= MODAL ================= */
.modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.55);
  z-index:100;
  padding:22px;
}
.modal.is-open{display:flex}
.modal-dialog{
  width:min(980px, 100%);
  background:#fff;
  border-radius:26px;
  box-shadow:0 26px 70px rgba(0,0,0,.30);
  position:relative;
  overflow:hidden;
}
.modal-close{
  position:absolute;
  top:14px;right:14px;
  border:none;
  width:42px;height:42px;
  border-radius:14px;
  background:rgba(17,24,39,.08);
  cursor:pointer;
  display:grid;place-items:center;
}
.modal-grid{
  display:grid;
  grid-template-columns: 1.1fr 1fr;
}
.modal-image{background:#0b1220}
.modal-image img{width:100%;height:100%;min-height:360px;object-fit:cover}
.modal-body{padding:28px}
.modal-body h3{font-size:28px;font-weight:1000;margin-bottom:12px}
.modal-details{
  display:grid;
  gap:10px;
  margin-top:10px;
}
.detail-row{
  display:flex;
  gap:12px;
  justify-content:space-between;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(31,77,58,.06);
}
.detail-row .k{font-weight:950;color:#111827}
.detail-row .v{color:#374151;font-weight:800;text-align:right}
.modal-actions{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}

/* ================= FILTER BAR ================= */
.filter-bar{
  margin-top:22px;
  background:#fff;
  border-radius:22px;
  box-shadow:var(--shadow-soft);
  padding:18px;
  display:grid;
  grid-template-columns: repeat(3, 1fr) auto;
  gap:16px;
  align-items:end;
}
.filter-item label{
  display:block;
  font-weight:900;
  margin-bottom:8px;
  color:#111827;
}
.filter-item select{
  width:100%;
  padding:12px 12px;
  border-radius:16px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  font-weight:800;
}
.filter-actions{display:flex;gap:10px;justify-content:flex-end}

/* ================= CERT ROW ================= */
.cert-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin-top:18px;
}
.cert-pill{
  background:#fff;
  border:1px solid rgba(47,125,90,.18);
  padding:10px 14px;
  border-radius:999px;
  font-weight:950;
  color:var(--green-dark);
  box-shadow:0 10px 18px rgba(0,0,0,.05);
}

/* ================= ABOUT HERO ================= */
.about-hero{
  padding:68px 0 0;
  background:linear-gradient(135deg,#e9f7ef,#f6fbf8);
}
.about-hero-grid{
  display:grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap:28px;
  align-items:center;
}
.about-hero-text h1{font-size:56px;line-height:1.05;font-weight:1000}
.about-hero-text p{margin-top:12px;color:#374151;font-size:18px;max-width:640px}
.about-hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.about-hero-badges span{
  display:inline-flex;gap:8px;align-items:center;
  background:#fff;
  border-radius:999px;
  padding:10px 12px;
  font-weight:900;
  box-shadow:var(--shadow-soft);
}
.about-hero-badges i{color:var(--green-main)}
.about-hero-media{
  border-radius:26px;
  overflow:hidden;
  box-shadow:var(--shadow-card);
}
.about-hero-media img{height:340px;width:100%;object-fit:cover}
.about-features{
  margin-top:28px;
  transform:translateY(34px);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  padding-bottom:34px;
}
.feature-card{
  background:#fff;
  border-radius:22px;
  box-shadow:var(--shadow-soft);
  padding:22px;
  text-align:center;
  transition:var(--transition);
}
.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-card)}
.feature-card i{font-size:26px;color:var(--green-main)}
.feature-card h3{margin-top:10px;font-size:18px;font-weight:1000}
.feature-card p{color:var(--text-muted);margin-top:8px}

/* mission quote */
.quote-card{
  background:#fff;
  border-radius:26px;
  box-shadow:var(--shadow-card);
  padding:28px;
  max-width:980px;
  margin:0 auto;
}
.quote-card p{
  font-size:18px;
  color:#374151;
  font-weight:850;
  text-align:center;
}

/* modern cards */
.modern-cards{margin-top:28px}
.modern-card{
  background:#fff;
  border-radius:26px;
  box-shadow:var(--shadow-soft);
  padding:26px;
  transition:var(--transition);
}
.modern-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}
.modern-card i{font-size:26px;color:var(--green-main)}
.modern-card h3{margin-top:10px;font-size:20px;font-weight:1000}
.modern-card p{margin-top:8px;color:var(--text-muted)}
.modern-card .btn{margin-top:14px}

/* video */
.video-card{
  border-radius:26px;
  overflow:hidden;
  box-shadow:var(--shadow-card);
  margin-top:22px;
}
.video-card video{width:100%;height:auto;display:block}

/* team */
.team-grid{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.team-card{
  background:#fff;
  border-radius:26px;
  box-shadow:var(--shadow-soft);
  overflow:hidden;
  transition:var(--transition);
  text-align:center;
}
.team-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}
.team-card img{width:100%;height:230px;object-fit:cover}
.team-card h3{margin-top:14px;font-size:18px;font-weight:1000}
.team-card p{padding:0 14px 18px;color:var(--text-muted);font-weight:800}

/* ================= CONTACT HERO ================= */
.contact-hero{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap:26px;
  align-items:center;
}
.contact-title{font-size:54px;line-height:1.05;font-weight:1000}
.contact-lead{margin-top:10px;color:#374151;font-size:18px;max-width:560px}
.contact-cards{margin-top:18px;display:grid;gap:12px}
.contact-card{
  background:#fff;
  border-radius:22px;
  box-shadow:var(--shadow-soft);
  padding:16px;
  display:flex;
  gap:14px;
  align-items:flex-start;
}
.contact-card i{
  width:44px;height:44px;border-radius:16px;
  display:grid;place-items:center;
  background:rgba(47,125,90,.12);
  color:var(--green-main);
  font-size:18px;
}
.contact-card h3{font-size:16px;font-weight:1000}
.contact-card p{color:#374151;font-weight:850;margin-top:4px}

/* form */
.form-shell{
  max-width:900px;
  margin:0 auto;
  background:#fff;
  border-radius:26px;
  box-shadow:var(--shadow-card);
  padding:26px;
}
.inquiry-form .field{margin-top:14px}
.inquiry-form label{display:block;font-weight:950;margin-bottom:8px}
.inquiry-form input, .inquiry-form textarea{
  width:100%;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(0,0,0,.12);
  font-weight:800;
  outline:none;
}
.inquiry-form input:focus, .inquiry-form textarea:focus{
  border-color:rgba(47,125,90,.45);
  box-shadow:0 0 0 4px rgba(47,125,90,.10);
}
.hint{margin-top:6px;color:var(--text-muted);font-size:13px;font-weight:750}

/* FAQ */
.faq-grid{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}
.faq-card{
  background:#fff;
  border-radius:26px;
  box-shadow:var(--shadow-soft);
  padding:22px;
  transition:var(--transition);
}
.faq-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-card)}
.faq-card h3{font-size:16px;font-weight:1000}
.faq-card p{margin-top:8px;color:var(--text-muted);font-weight:800}

/* Reviews slider */
.reviews-wrap{
  position:relative;
  margin-top:22px;
  background:#fff;
  border-radius:26px;
  box-shadow:var(--shadow-card);
  padding:22px 18px 52px;
  overflow:hidden;
}
.reviews-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;height:44px;
  border:none;border-radius:16px;
  background:rgba(17,24,39,.08);
  cursor:pointer;
  display:grid;place-items:center;
  z-index:3;
}
.reviews-nav.left{left:14px}
.reviews-nav.right{right:14px}
.reviews-track{
  position:relative;
}
.reviews-slide{display:none}
.reviews-slide.is-active{display:block}
.reviews-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.review-card{
  background:rgba(31,77,58,.06);
  border-radius:22px;
  padding:18px;
}
.review-head{display:flex;justify-content:space-between;align-items:center}
.review-head strong{font-weight:1000}
.review-head span{color:var(--text-muted);font-weight:900;font-size:13px}
.review-meta{margin-top:10px;color:#374151;font-weight:900;font-size:13px}
.review-card p{margin-top:10px;color:#374151;font-weight:800}
.reviews-dots{
  position:absolute;
  left:0;right:0;
  bottom:16px;
  display:flex;
  justify-content:center;
  gap:10px;
}

/* ================= FOOTER ================= */
.site-footer{
  background:#f2f6f4;
  border-top:1px solid rgba(0,0,0,.06);
  padding:58px 0;
}
.footer-container{
  max-width:1300px;
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns: 1.2fr .9fr 1.2fr;
  gap:28px;
  align-items:start;
}
.footer-brand{
  display:flex;
  gap:10px;
  align-items:center;
  font-weight:1000;
  color:var(--green-dark);
  font-size:18px;
}
.footer-brand img{width:44px;height:44px}
.footer-desc{margin-top:10px;color:var(--text-muted);font-weight:800}
.footer-copy{
  margin-top:16px;
  color:var(--text-muted);
  font-weight:800;
  font-size:13px;
  text-align:left; /* bottom-left requirement */
}
.footer-col h4{font-size:16px;font-weight:1000;margin-bottom:12px}
.footer-mid{text-align:center}
.footer-links{display:grid;gap:10px;justify-items:center}
.footer-links a{
  font-weight:900;
  color:#374151;
  padding:6px 10px;
  border-radius:12px;
  transition:var(--transition);
}
.footer-links a:hover{background:rgba(47,125,90,.10);color:var(--green-main)}
.footer-social{
  margin-top:14px;
  display:flex;
  justify-content:center;
  gap:12px;
}
.footer-social a{
  width:40px;height:40px;border-radius:14px;
  display:grid;place-items:center;
  background:rgba(17,24,39,.06);
  transition:var(--transition);
}
.footer-social a:hover{background:rgba(47,125,90,.14);transform:translateY(-1px)}
.footer-social i{font-size:18px;color:var(--green-dark)}
.footer-form input, .footer-form textarea{
  width:100%;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(0,0,0,.12);
  font-weight:800;
  margin-bottom:10px;
}

/* ================= RESPONSIVE ================= */
@media (max-width: 1100px){
  .grid-4{grid-template-columns:repeat(3,1fr)}
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .reviews-grid{grid-template-columns:1fr}
}
@media (max-width: 900px){
  .header-container{grid-template-columns: auto 1fr; gap:10px}
  .brand-center{justify-self:start}
  .nav-area{grid-column:1 / -1; justify-self:start; flex-wrap:wrap}
  .grid-2{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .grid-4{grid-template-columns:1fr}
  .process-grid{grid-template-columns:1fr}
  .filter-bar{grid-template-columns:1fr}
  .about-hero-grid{grid-template-columns:1fr}
  .about-features{grid-template-columns:1fr; transform:none}
  .contact-hero{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:1fr}
  .footer-container{grid-template-columns:1fr}
  .footer-mid{text-align:left}
  .footer-links{justify-items:start}
  .footer-social{justify-content:flex-start}
}

/* ===============================
   RESPONSIVE FIX PACK
   Add this at the END of style.css
================================ */

/* Large tablets / small laptops */
@media (max-width: 1100px) {
  .hero-title { font-size: 52px; }
  .grid-4 { grid-template-columns: repeat(3, 1fr); }
  .process-grid { grid-template-columns: repeat(3, 1fr); }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
}

/* Tablets */
@media (max-width: 900px) {
  /* HEADER: stack nicely */
  .header-container {
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    gap: 10px;
    padding: 14px 16px;
  }

  .brand-left {
    grid-column: 1;
    grid-row: 1;
  }

  .brand-center {
    grid-column: 2;
    grid-row: 1;
    justify-self: start;
    font-size: 22px;
    text-align: left;
  }

  .nav-area {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: start;
    flex-wrap: wrap;
    gap: 10px;
  }

  .nav-area a {
    font-size: 14px;
    padding: 8px 10px;
  }

  /* HERO: reduce text sizes + padding */
  .hero-content {
    padding: 70px 16px;
    min-height: calc(100svh - 120px);
  }

  .hero-title { font-size: 44px; }
  .hero-subtitle { font-size: 16px; }
  .hero-actions { gap: 10px; }
  .btn { padding: 12px 18px; }

  /* SECTIONS: reduce spacing */
  .section { padding: 56px 0; }
  .section-title { font-size: 34px; }

  /* GRIDS */
  .grid-2 { grid-template-columns: 1fr; gap: 28px; }
  .grid-3 { grid-template-columns: 1fr; }
  .grid-4 { grid-template-columns: repeat(2, 1fr); }

  /* FILTER BAR: stack */
  .filter-bar {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .filter-actions { justify-content: flex-start; }

  /* ABOUT HERO */
  .about-hero-grid { grid-template-columns: 1fr; }
  .about-hero-text h1 { font-size: 44px; }
  .about-features {
    grid-template-columns: 1fr;
    transform: none;
    padding-bottom: 22px;
  }

  /* CONTACT HERO */
  .contact-hero { grid-template-columns: 1fr; }

  /* FAQ: 2 → 1 */
  .faq-grid { grid-template-columns: 1fr; }

  /* REVIEWS: 3 → 1 */
  .reviews-grid { grid-template-columns: 1fr; }

  /* FOOTER: stack columns */
  .footer-container {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .footer-mid { text-align: left; }
  .footer-links { justify-items: start; }
  .footer-social { justify-content: flex-start; }
}

/* Phones */
@media (max-width: 520px) {
  /* Header title smaller */
  .brand-center { font-size: 20px; }

  /* Products grid: 2 → 1 */
  .grid-4 { grid-template-columns: 1fr; }

  /* Hero typography */
  .hero-title { font-size: 36px; }
  .hero-pill { font-size: 12px; }
  .hero-subtitle { font-size: 15px; }

  /* Modal: 2-col -> 1-col */
  .modal-grid { grid-template-columns: 1fr; }
  .modal-image img { min-height: 220px; }

  /* Buttons full width for mobile comfort */
  .hero-actions .btn {
    width: 100%;
  }

  /* Reduce card paddings slightly */
  .modern-card,
  .process-card,
  .feature-card,
  .faq-card {
    padding: 18px;
  }
}

/* ===== FIX #2: Data & Success (Home) ===== */
.stats-grid{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:18px;
}
.stat-card{
  background:#fff;
  border-radius:26px;
  box-shadow:var(--shadow-soft);
  padding:26px;
  text-align:center;
  transition:var(--transition);
}
.stat-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}
.stat-card h3{font-size:42px;font-weight:1000;color:var(--green-dark)}
.stat-card h4{margin-top:6px;font-weight:950}
.stat-card p{margin-top:10px;color:var(--text-muted);font-weight:800}

/* About team number styles */
.team-role{color:var(--text-muted);font-weight:800;padding:0 14px 0}
.team-id{padding:0 14px 18px;color:var(--green-main);font-weight:1000}

/* ===== FIX #4: Newsletter Slider ===== */
.newsletter-wrap{
  position:relative;
  background:#fff;
  border-radius:26px;
  box-shadow:var(--shadow-card);
  overflow:hidden;
  padding:18px;
  margin-top:22px;
}
.newsletter-track{
  position:relative;
}
.newsletter-slide{display:none}
.newsletter-slide.is-active{display:block}

.newsletter-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:18px;
  align-items:center;
}
.newsletter-text h3{font-size:22px;font-weight:1000}
.newsletter-text p{margin-top:8px;color:var(--text-muted);font-weight:800}
.newsletter-image{
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--shadow-soft);
}
.newsletter-image img{
  width:100%;
  height:240px;
  object-fit:cover;
}

.newsletter-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px;height:46px;
  border:none;border-radius:16px;
  background:rgba(17,24,39,.08);
  cursor:pointer;
  display:grid;place-items:center;
  z-index:5;
}
.newsletter-nav.left{left:12px}
.newsletter-nav.right{right:12px}

/* Newsletter modal */
.modal-narrow{max-width:720px}
.newsletter-modal-body{padding:20px}
.newsletter-modal-body img{
  width:100%;
  height:260px;
  object-fit:cover;
  border-radius:18px;
  box-shadow:var(--shadow-soft);
}
.newsletter-modal-body h3{margin-top:14px;font-size:26px;font-weight:1000}
.newsletter-modal-body p{margin-top:10px;color:#374151;font-weight:800}

/* ===== FIX #5: Contact Map Alignment ===== */
.contact-stretch{
  align-items:stretch;
}
.contact-map{
  height:100%;
  min-height:360px;
}
.contact-map img{
  height:100%;
  width:100%;
  object-fit:cover;
}

/* Responsive for new grids */
@media (max-width: 1100px){
  .stats-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 520px){
  .stats-grid{grid-template-columns:1fr}
  .newsletter-grid{grid-template-columns:1fr}
  .newsletter-image img{height:200px}
}

