/* TerraInsight_979. Reconstructed from archived TerraInsight pages. */
:root { --terra: #2e7d32; --ink: #203327; --line: #d6e2d5; --paper: #f4f8f1; }
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.72 "Noto Sans", system-ui, sans-serif; }
a { color: #1f662b; text-underline-offset: .18em; }
img { display: block; max-width: 100%; height: auto; }
h1,h2,h3,.site-title { font-family: "Roboto Slab", Georgia, serif; line-height: 1.22; }
h1 { font-size: clamp(1.9rem,4.4vw,3rem); margin-top: 0; overflow-wrap: anywhere; }
h2 { font-size: clamp(1.35rem,3vw,2rem); }
.container, .bap-outer, .footer-widgets { width: min(1080px,calc(100% - 40px)); margin-inline: auto; }
.container .bap-outer { width: 100%; }
.site-header { background: #fff; border-bottom: 3px solid var(--terra); }
.site-header .container { display: flex; justify-content: space-between; align-items: center; min-height: 70px; gap: 16px; }
.site-branding a { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--ink); }
.site-title { font-size: 1.3rem; font-weight: 700; }
.default-logo, .default-logo svg { width: 40px; height: 40px; flex: none; }
.main-navigation ul { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 14px; }
.main-navigation a { text-decoration: none; font-weight: 650; color: var(--ink); }
.main-navigation .current-menu-item > a { color: #1f662b; border-bottom: 2px solid var(--terra); }
.menu-toggle { display: none; background: #fff; color: var(--ink); border: 1px solid var(--line); padding: 7px 10px; font: inherit; cursor: pointer; }
.page-header-section { background: #e7f1e5; padding-block: 24px 18px; }
.breadcrumbs { color: #4e6954; font-size: .9rem; }
.page-content-section, .bap-outer { padding-block: 20px 36px; }
.bap-content { min-width: 0; }
.bap-content:has(> .bap-post-card) { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,240px),1fr)); gap: 15px; }
.bap-post-card, .bap-single-card { background: #fff; border: 1px solid var(--line); }
.bap-post-card { padding: 13px 15px; border-top: 3px solid var(--terra); }
.bap-post-title { font-size: 1.13rem; }
.bap-post-title a { color: var(--ink); text-decoration: none; }
.bap-single-card { width: min(900px,100%); margin-inline: auto; padding: clamp(15px,4vw,40px); }
.bap-single-content { overflow-wrap: anywhere; }
.bap-single-content table { display: block; max-width: 100%; overflow: auto; border-collapse: collapse; }
.bap-single-content :is(td,th) { padding: 7px 10px; border: 1px solid var(--line); text-align: left; }
.bap-single-content th { background: #e7f1e5; }
.bap-single-thumb:empty, .bap-thumb-link:empty { display: none; }
.site-footer { background: #203c28; color: #f3f8ef; }
.site-footer a { color: #e0f2d9; }
.footer-widgets { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; padding-block: 22px; }
.footer-widgets ul { list-style: none; padding: 0; }
.footer-bottom { padding: 10px 16px; border-top: 1px solid #5f7963; text-align: center; }
@media(max-width:740px) {
  .site-header .container { flex-wrap: wrap; padding-block: 9px; }
  .menu-toggle { display: block; }
  .main-navigation ul { display: none; }
  .main-navigation.is-open { flex-basis: 100%; }
  .main-navigation.is-open ul { display: grid; gap: 5px; padding-block: 7px; }
}
@media(max-width:520px) {
  .container, .bap-outer, .footer-widgets { width: calc(100% - 28px); }
  .footer-widgets { grid-template-columns: minmax(0,1fr); }
}
