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

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --black:#0e0f0c;
  --green:#9fe870;
  --dark-green:#163300;
  --mint:#e2f6d5;
  --pastel:#cdffad;
  --gray:#868685;
  --warm-dark:#454745;
  --surface:#e8ebe6;
  --white:#ffffff;
  --radius-pill:9999px;
  --radius-card:30px;
  --radius-sm:16px;
  --shadow:rgba(14,15,12,0.12) 0 0 0 1px;
}

html{scroll-behavior:smooth;font-size:16px}

body{
  font-family:'Inter',Helvetica,Arial,sans-serif;
  font-feature-settings:"calt";
  font-weight:600;
  color:var(--black);
  background:#ffffff;
  line-height:1.44;
}

a{color:var(--dark-green);text-decoration:none;font-feature-settings:"calt"}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}

.container{max-width:1200px;margin:0 auto;padding:0 24px}

/* NAV */
.site-nav{
  background:#ffffff;
  border-bottom:1px solid var(--surface);
  position:sticky;top:0;z-index:100;
}
.nav-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 24px;max-width:1200px;margin:0 auto;
}
.nav-logo{
  font-size:1.38rem;font-weight:900;color:var(--black);
  font-feature-settings:"calt";letter-spacing:-0.02em;
  text-decoration:none;
}
.nav-logo span{color:var(--dark-green)}
.nav-links{display:flex;gap:8px;align-items:center;list-style:none}
.nav-links a{
  font-size:1rem;font-weight:600;color:var(--black);
  padding:8px 14px;border-radius:var(--radius-pill);
  transition:background 0.2s;text-decoration:none;
  font-feature-settings:"calt";
}
.nav-links a:hover{background:rgba(211,242,192,0.4);text-decoration:none}
.nav-cta{
  background:var(--green);color:var(--dark-green)!important;
  padding:8px 20px!important;border-radius:var(--radius-pill)!important;
  transition:transform 0.15s!important;font-weight:700!important;
}
.nav-cta:hover{transform:scale(1.05);background:var(--green)!important}
.nav-cta:active{transform:scale(0.95)!important}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:4px}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--black);margin:5px 0;transition:0.3s}

/* HERO */
.hero{
  background:#ffffff;
  padding:80px 24px 72px;
  border-bottom:1px solid var(--surface);
}
.hero-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.hero-label{
  display:inline-block;background:var(--mint);color:var(--dark-green);
  font-size:0.88rem;font-weight:700;padding:4px 14px;
  border-radius:var(--radius-pill);margin-bottom:20px;letter-spacing:0.04em;text-transform:uppercase;
}
.hero h1{
  font-family:'Inter',Helvetica,Arial,sans-serif;
  font-size:4.88rem;font-weight:900;line-height:0.95;
  letter-spacing:-0.04em;color:var(--black);font-feature-settings:"calt";
  margin-bottom:24px;
}
.hero-desc{
  font-size:1.13rem;font-weight:400;color:var(--warm-dark);
  line-height:1.55;margin-bottom:36px;max-width:480px;
  letter-spacing:0.01em;
}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn-primary{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--green);color:var(--dark-green);
  font-size:1.13rem;font-weight:700;
  padding:12px 28px;border-radius:var(--radius-pill);
  border:none;cursor:pointer;text-decoration:none;
  transition:transform 0.15s;font-feature-settings:"calt";
  box-shadow:var(--shadow);
}
.btn-primary:hover{transform:scale(1.05);text-decoration:none;color:var(--dark-green)}
.btn-primary:active{transform:scale(0.95)}
.btn-secondary{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(22,51,0,0.08);color:var(--black);
  font-size:1.13rem;font-weight:600;
  padding:12px 24px;border-radius:var(--radius-pill);
  border:none;cursor:pointer;text-decoration:none;
  transition:transform 0.15s;font-feature-settings:"calt";
}
.btn-secondary:hover{transform:scale(1.05);text-decoration:none;color:var(--black)}
.btn-secondary:active{transform:scale(0.95)}
.hero-img{border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow)}
.hero-img img{width:100%;height:380px;object-fit:cover}

/* STATS BAR */
.stats-bar{
  background:var(--black);
  padding:32px 24px;
}
.stats-inner{
  max-width:1200px;margin:0 auto;
  display:grid;grid-template-columns:repeat(4,1fr);gap:24px;
}
.stat-item{text-align:center}
.stat-num{
  font-size:2.5rem;font-weight:900;color:var(--green);
  line-height:1;letter-spacing:-0.02em;margin-bottom:6px;
}
.stat-label{font-size:0.88rem;font-weight:400;color:rgba(255,255,255,0.65);letter-spacing:0.02em}

/* SECTIONS */
.section{padding:80px 24px}
.section-alt{background:var(--surface);padding:80px 24px}

.section-heading{
  font-family:'Inter',Helvetica,Arial,sans-serif;
  font-size:4rem;font-weight:900;line-height:0.9;
  letter-spacing:-0.03em;color:var(--black);font-feature-settings:"calt";
  margin-bottom:16px;
}
.section-sub{
  font-size:1.13rem;font-weight:400;color:var(--warm-dark);
  margin-bottom:48px;max-width:600px;line-height:1.5;
}

/* ARTICLE CARDS */
.articles-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:24px;
}
.article-card{
  border:1px solid rgba(14,15,12,0.12);
  border-radius:var(--radius-card);
  overflow:hidden;background:#ffffff;
  transition:transform 0.2s,box-shadow 0.2s;
}
.article-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(14,15,12,0.10)}
.article-card-img{height:200px;overflow:hidden}
.article-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.4s}
.article-card:hover .article-card-img img{transform:scale(1.04)}
.article-card-body{padding:24px}
.article-tag{
  display:inline-block;background:var(--mint);color:var(--dark-green);
  font-size:0.75rem;font-weight:700;padding:3px 10px;
  border-radius:var(--radius-pill);margin-bottom:12px;text-transform:uppercase;letter-spacing:0.04em;
}
.article-card h3{
  font-size:1.38rem;font-weight:700;line-height:1.25;
  letter-spacing:-0.02em;margin-bottom:10px;color:var(--black);
  font-feature-settings:"calt";
}
.article-card p{font-size:1rem;font-weight:400;color:var(--warm-dark);line-height:1.5;margin-bottom:18px}
.article-card-meta{
  display:flex;align-items:center;justify-content:space-between;
  font-size:0.88rem;color:var(--gray);font-weight:400;
}
.read-more{
  font-size:0.95rem;font-weight:700;color:var(--dark-green);
  text-decoration:none;display:inline-flex;align-items:center;gap:4px;
}
.read-more:hover{text-decoration:underline}

/* TOPICS / FEATURE GRID */
.topics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.topic-card{
  background:#ffffff;border-radius:var(--radius-card);
  padding:32px;box-shadow:var(--shadow);
  display:flex;gap:20px;align-items:flex-start;
  transition:transform 0.2s;
}
.topic-card:hover{transform:translateY(-3px)}
.topic-icon{
  width:48px;height:48px;border-radius:50%;
  background:var(--mint);display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-size:1.5rem;
}
.topic-card h3{
  font-size:1.25rem;font-weight:700;margin-bottom:8px;
  letter-spacing:-0.02em;color:var(--black);font-feature-settings:"calt";
}
.topic-card p{font-size:1rem;font-weight:400;color:var(--warm-dark);line-height:1.5}

/* CONTACT FORM */
.contact-section{padding:80px 24px;background:var(--black)}
.contact-inner{max-width:700px;margin:0 auto;text-align:center}
.contact-inner .section-heading{color:#ffffff}
.contact-inner .section-sub{color:rgba(255,255,255,0.65);margin-left:auto;margin-right:auto}
.contact-form{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(159,232,112,0.2);
  border-radius:var(--radius-card);
  padding:40px;margin-top:40px;text-align:left;
}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.form-group label{font-size:0.88rem;font-weight:700;color:rgba(255,255,255,0.8);letter-spacing:0.02em}
.form-group input,.form-group textarea{
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:10px;padding:12px 16px;
  color:#ffffff;font-size:1rem;font-weight:400;
  font-family:'Inter',Helvetica,Arial,sans-serif;
  font-feature-settings:"calt";
  transition:border-color 0.2s;
}
.form-group input:focus,.form-group textarea:focus{
  outline:none;border-color:var(--green);
}
.form-group textarea{resize:vertical;min-height:100px}
.form-submit{
  width:100%;background:var(--green);color:var(--dark-green);
  font-size:1.13rem;font-weight:700;padding:14px;
  border-radius:var(--radius-pill);border:none;cursor:pointer;
  font-feature-settings:"calt";transition:transform 0.15s;
  font-family:'Inter',Helvetica,Arial,sans-serif;
}
.form-submit:hover{transform:scale(1.02)}
.form-submit:active{transform:scale(0.98)}

/* ARTICLE PAGE */
.article-hero{background:var(--surface);padding:64px 24px 48px}
.article-hero-inner{max-width:800px;margin:0 auto}
.article-hero h1{
  font-size:3.5rem;font-weight:900;line-height:0.95;
  letter-spacing:-0.03em;color:var(--black);font-feature-settings:"calt";
  margin-bottom:20px;
}
.article-meta{display:flex;gap:16px;font-size:0.88rem;color:var(--gray);font-weight:400;flex-wrap:wrap;align-items:center}
.article-meta strong{color:var(--black);font-weight:700}
.article-body{max-width:800px;margin:0 auto;padding:56px 24px}
.article-body h2{
  font-size:2.25rem;font-weight:900;line-height:1;letter-spacing:-0.02em;
  color:var(--black);font-feature-settings:"calt";margin:48px 0 16px;
}
.article-body h3{
  font-size:1.5rem;font-weight:700;line-height:1.2;
  color:var(--black);font-feature-settings:"calt";margin:36px 0 12px;
}
.article-body p{font-size:1.13rem;font-weight:400;line-height:1.65;color:#1a1b18;margin-bottom:20px;letter-spacing:0.01em}
.article-body ul,.article-body ol{padding-left:24px;margin-bottom:20px}
.article-body li{font-size:1.13rem;font-weight:400;line-height:1.65;color:#1a1b18;margin-bottom:8px}
.article-body a{color:var(--dark-green);font-weight:700}
.article-body a:hover{text-decoration:underline}
.article-img{border-radius:var(--radius-sm);overflow:hidden;margin:32px 0}
.article-img img{width:100%;max-height:440px;object-fit:cover}
.callout{
  background:var(--mint);border-radius:var(--radius-sm);
  padding:24px 28px;margin:32px 0;
  border-left:4px solid var(--green);
}
.callout p{font-size:1.05rem;font-weight:600;color:var(--dark-green);margin:0}

/* BREADCRUMB */
.breadcrumb{
  padding:16px 24px;max-width:1200px;margin:0 auto;
  display:flex;gap:8px;align-items:center;font-size:0.88rem;font-weight:400;color:var(--gray);
}
.breadcrumb a{color:var(--gray);text-decoration:none}
.breadcrumb a:hover{color:var(--black)}
.breadcrumb span{color:var(--black)}

/* GENERIC PAGE */
.page-hero{background:var(--surface);padding:64px 24px 48px}
.page-hero h1{
  font-size:3.5rem;font-weight:900;line-height:0.95;
  letter-spacing:-0.03em;color:var(--black);font-feature-settings:"calt";
  max-width:800px;margin:0 auto 16px;
}
.page-hero p{font-size:1.13rem;font-weight:400;color:var(--warm-dark);max-width:800px;margin:0 auto}
.page-content{max-width:800px;margin:0 auto;padding:56px 24px}
.page-content h2{
  font-size:2rem;font-weight:900;letter-spacing:-0.02em;
  color:var(--black);font-feature-settings:"calt";margin:40px 0 14px;
}
.page-content h3{
  font-size:1.38rem;font-weight:700;color:var(--black);margin:28px 0 10px;
}
.page-content p{font-size:1.05rem;font-weight:400;line-height:1.65;color:#1a1b18;margin-bottom:16px}
.page-content ul{padding-left:22px;margin-bottom:16px}
.page-content li{font-size:1.05rem;font-weight:400;line-height:1.6;color:#1a1b18;margin-bottom:6px}
.page-content a{color:var(--dark-green);font-weight:700}

/* FOOTER */
.site-footer{background:var(--black);padding:64px 24px 32px}
.footer-inner{max-width:1200px;margin:0 auto}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,0.08)}
.footer-brand h3{
  font-size:1.38rem;font-weight:900;color:#ffffff;
  font-feature-settings:"calt";margin-bottom:12px;letter-spacing:-0.02em;
}
.footer-brand h3 span{color:var(--green)}
.footer-brand p{font-size:0.95rem;font-weight:400;color:rgba(255,255,255,0.55);line-height:1.6;max-width:280px}
.footer-col h4{font-size:0.88rem;font-weight:700;color:rgba(255,255,255,0.45);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:16px}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:10px}
.footer-col a{font-size:0.95rem;font-weight:400;color:rgba(255,255,255,0.7);text-decoration:none;transition:color 0.15s}
.footer-col a:hover{color:#ffffff}
.footer-bottom{
  padding-top:32px;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;
}
.footer-bottom p{font-size:0.88rem;font-weight:400;color:rgba(255,255,255,0.4)}
.footer-bottom a{color:rgba(255,255,255,0.4);text-decoration:none}
.footer-bottom a:hover{color:rgba(255,255,255,0.7)}

/* COOKIE BANNER */
.cookie-banner{
  position:fixed;bottom:24px;left:50%;transform:translateX(-50%);
  background:#ffffff;border-radius:var(--radius-card);
  padding:20px 28px;box-shadow:0 8px 40px rgba(14,15,12,0.18),var(--shadow);
  max-width:560px;width:calc(100% - 48px);
  display:flex;flex-direction:column;gap:14px;z-index:9999;
  border:1px solid rgba(14,15,12,0.12);
}
.cookie-banner p{font-size:0.95rem;font-weight:400;color:var(--warm-dark);line-height:1.5}
.cookie-banner p a{color:var(--dark-green);font-weight:700}
.cookie-actions{display:flex;gap:10px}
.cookie-accept{
  background:var(--green);color:var(--dark-green);
  font-size:1rem;font-weight:700;padding:10px 24px;
  border-radius:var(--radius-pill);border:none;cursor:pointer;
  transition:transform 0.15s;font-feature-settings:"calt";
  font-family:'Inter',Helvetica,Arial,sans-serif;
}
.cookie-accept:hover{transform:scale(1.05)}
.cookie-reject{
  background:rgba(22,51,0,0.08);color:var(--black);
  font-size:1rem;font-weight:600;padding:10px 24px;
  border-radius:var(--radius-pill);border:none;cursor:pointer;
  transition:transform 0.15s;font-feature-settings:"calt";
  font-family:'Inter',Helvetica,Arial,sans-serif;
}
.cookie-reject:hover{transform:scale(1.05)}

/* DISCLAIMER */
.disclaimer{background:var(--surface);border-top:1px solid rgba(14,15,12,0.08);padding:12px 24px;text-align:center}
.disclaimer p{font-size:0.82rem;font-weight:400;color:var(--gray);max-width:1200px;margin:0 auto}

/* RESPONSIVE */
@media(max-width:992px){
  .hero-inner{grid-template-columns:1fr}
  .hero h1{font-size:3.5rem}
  .hero-img{display:none}
  .articles-grid{grid-template-columns:1fr 1fr}
  .stats-inner{grid-template-columns:repeat(2,1fr)}
  .topics-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:576px){
  .hero h1{font-size:2.5rem}
  .section-heading{font-size:2.5rem}
  .articles-grid{grid-template-columns:1fr}
  .stats-inner{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr}
  .nav-links{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;padding:16px;flex-direction:column;border-bottom:1px solid var(--surface);z-index:100}
  .nav-links.open{display:flex}
  .nav-toggle{display:block}
  .form-row{grid-template-columns:1fr}
  .article-hero h1,.page-hero h1{font-size:2.5rem}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .cookie-actions{flex-wrap:wrap}
}
