* { margin:0; padding:0; box-sizing:border-box; }
body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  background:#ffffff;
  color:#2d5236;
}
a { color:#2d5236; }
.wrap { max-width: 680px; margin: 0 auto; padding: 0 24px; }

header.site-header {
  background:#fce8f0; padding: 18px 0; text-align:center; border-bottom:1px solid #f6d9e3;
}
header.site-header .logo { height:30px; width:auto; }

.eyebrow {
  font-size:12px; font-weight:700; letter-spacing:0.18em; text-transform:uppercase;
  color:#e888a4; margin-bottom:14px;
}

section.article-hero { padding: 40px 0 8px; }
h1 {
  font-family: 'Fredoka', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  font-weight:700; font-size:34px; line-height:1.2; letter-spacing:-0.01em;
  color:#2d5236; margin: 0 0 16px;
}
.dek { font-size:17px; line-height:1.7; color:#2d5236; opacity:0.85; margin-bottom:8px; }
.byline { font-size:12.5px; color:#2d5236; opacity:0.6; margin-bottom:28px; }

article { padding: 8px 0 8px; font-size:16px; line-height:1.8; }
article h2 {
  font-family: 'Fredoka', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  font-weight:700; font-size:24px; letter-spacing:-0.01em; color:#2d5236;
  margin: 40px 0 14px;
}
article h3 {
  font-family: 'Fredoka', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  font-size:18px; font-weight:600; color:#2d5236; margin: 26px 0 2px;
}
.causes-list { margin-top:4px; }
.cause { border-top:1px solid #f6d9e3; padding: 20px 0; }
.cause:last-child { border-bottom:1px solid #f6d9e3; }
.cause-head { display:flex; align-items:center; gap:12px; margin-bottom:8px; }
.cause-head h3 { margin:0; }
.cause p { margin-bottom:0; }
.section-icon {
  width:40px; height:40px; border-radius:50%; background:#fce8f0;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.section-icon svg { width:20px; height:20px; }
article p { margin-bottom:16px; }
article ul, article ol { margin: 0 0 16px 22px; }
article li { margin-bottom:8px; }
article strong { color:#2d5236; }
.direct-answer {
  background:#fce8f0; border-radius:16px; padding:20px 22px; font-size:16px; line-height:1.75;
  margin: 20px 0 28px;
}
.disclaimer {
  font-size:13px; line-height:1.7; color:#2d5236; opacity:0.7; font-style:italic;
  border-top:1px solid #f6d9e3; padding-top:16px; margin-top:28px;
}

article a { color:#2d5236; text-decoration:underline; text-decoration-color:#f5a8bc; text-underline-offset:2px; }
article a:hover { text-decoration-color:#2d5236; }

.sources { margin-top:20px; }
.sources-title {
  font-size:11px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase;
  color:#2d5236; opacity:0.6; margin-bottom:10px;
}
.sources ol { margin: 0 0 0 20px; padding:0; }
.sources li { font-size:12.5px; line-height:1.7; opacity:0.8; margin-bottom:4px; }

.cta-box {
  background:#fce8f0; border-radius:20px; padding:28px 24px; text-align:center; margin: 32px 0;
}
.cta-box p { color:#2d5236; font-size:15px; line-height:1.6; margin-bottom:16px; }
.cta-box .cta-btn, .cta-inline {
  display:inline-block; background:#2d5236; color:#fff; text-decoration:none;
  font-size:14.5px; font-weight:700; padding:14px 28px; border-radius:30px;
  white-space:nowrap;
}
.cta-box .cta-btn:hover, .cta-inline:hover { background:#3d6248; }
.cta-inline { margin: 4px 0 24px; }

.faq { margin-top:8px; }
.faq-item { border-top:1px solid #f6d9e3; padding:18px 0; }
.faq-item:last-child { border-bottom:1px solid #f6d9e3; }
.faq-q { font-weight:700; font-size:15.5px; margin-bottom:8px; color:#2d5236; }
.faq-a { font-size:14.5px; line-height:1.7; color:#2d5236; opacity:0.9; }

.related { padding: 12px 0 40px; }
.related h2 { font-size:19px; }
.related ul { list-style:none; margin-left:0; }
.related li { margin-bottom:10px; }
.related a { font-weight:700; text-decoration:none; }
.related a:hover { text-decoration:underline; }

.blog-index-list { list-style:none; padding: 8px 0 40px; }
.blog-index-list li { border-top:1px solid #f6d9e3; padding: 22px 0; }
.blog-index-list li:last-child { border-bottom:1px solid #f6d9e3; }
.blog-index-list a { text-decoration:none; }
.blog-index-list h2 {
  font-family: 'Fredoka', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  font-weight:700; font-size:21px; color:#2d5236; margin-bottom:6px;
}
.blog-index-list p { font-size:14.5px; color:#2d5236; opacity:0.8; line-height:1.6; margin:0; }

footer { background:#2d5236; color:#fff; padding: 40px 0 32px; text-align:center; margin-top:24px; }
footer .logo { height:24px; margin: 0 auto 6px; filter: brightness(0) invert(1); }
footer .tagline {
  font-size:10px; font-weight:600; letter-spacing:0.1em; text-transform:uppercase;
  color:#e888a4; margin-bottom:20px;
}
footer .copy { font-size:11px; color:#a9c4ae; }

@media (max-width: 640px) {
  h1 { font-size:25px !important; line-height:1.3 !important; }
  .dek { font-size:15px; }
  article { font-size:15px; }
  article h2 { font-size:20px; }
}
