.info-page { background:#f5f7f2; padding:40px 0 72px; color:#193e35; }
.info-page nav { color:#486359; font-size:.875rem; }
.info-page h1 { margin:16px 0 8px; font-size:clamp(2rem,5vw,3.5rem); line-height:1.12; }
.info-intro { max-width:65ch; margin:0 0 28px; color:#486359; }
.info-card { background:#fff; border:1px solid #d8e4dc; border-radius:14px; padding:clamp(18px,4vw,30px); }
.info-card + .info-card { margin-top:16px; }
.info-card h2 { margin:0 0 12px; font-size:1.35rem; }
.info-card p { margin:0 0 12px; line-height:1.7; }
.info-card p:last-child { margin-bottom:0; }
.info-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr)); gap:16px; }
.info-grid .info-card { margin:0; }
.info-narrow { max-width:760px; }
.info-card label { display:block; margin:12px 0 5px; font-weight:600; }
.info-card :is(input,textarea,select) { width:100%; max-width:100%; box-sizing:border-box; padding:10px 12px; border:1px solid #c9d9cf; border-radius:7px; background:white; color:#193e35; font:inherit; }
.info-card textarea { resize:vertical; }
.info-card .button { margin-top:14px; }
.info-card a:not(.button) { text-decoration:underline; color:#176b50; }
.info-error { background:#fff3e8; color:#73381b; padding:12px; border-radius:7px; }
.info-error ul { margin:6px 0 0; padding-left:22px; }
.info-card [aria-invalid="true"] { border-color:#a95332; }
.info-note { color:#486359; font-size:.875rem; }
.info-terms-copy { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.75; }
.info-nav { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:18px; }
.info-page details + details { border-top:1px solid #d8e4dc; padding-top:12px; margin-top:12px; }
.info-page summary { cursor:pointer; font-weight:600; }
.about-story { display:grid; grid-template-columns:minmax(120px,1fr) minmax(0,4fr); gap:clamp(18px,4vw,40px); align-items:start; }
.about-date { border-left:3px solid #80ac89; padding-left:14px; }
.about-date strong { display:block; font-size:clamp(2.25rem,5vw,3.5rem); line-height:1; }
.about-date span { display:block; color:#486359; margin-top:7px; }
.about-paths,.about-guidance { margin-top:16px; }
.about-secondary { display:inline-block; margin:12px 0 0 12px; }
.about-guidance .info-nav { margin-bottom:0; }
@media (max-width:600px) { .about-story { grid-template-columns:1fr; } }
.blog-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(235px,300px); gap:24px; align-items:start; margin-top:24px; }
.blog-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.blog-grid .blog-post-card { margin:0; padding:0; overflow:hidden; }
.blog-post-card img,.blog-cover { display:block; width:100%; height:auto; object-fit:cover; }
.blog-post-card img { aspect-ratio:16/9; }
.blog-cover { aspect-ratio:2/1; border-radius:8px; margin-bottom:24px; }
.blog-card-copy { padding:20px; }
.blog-card-copy .blog-category { margin:0 0 8px; color:#486359; font-size:.8rem; font-weight:700; }
.blog-card-copy h2 a,.blog-listing-links a { text-decoration:none; }
.blog-card-copy h2 a:hover,.blog-listing-links a:hover { text-decoration:underline; }
.blog-byline { display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center; color:#486359; }
.blog-article-copy { font-size:1.05rem; line-height:1.8; overflow-wrap:anywhere; }
.blog-article-copy p { margin-bottom:1em; }
.blog-article-copy img { display:block; max-width:100%; height:auto; margin:18px auto; border-radius:8px; }
.blog-side-card h2 { font-size:1.15rem; }
.blog-listing-links { list-style:none; padding:0; margin:0; }
.blog-listing-links li + li { border-top:1px solid #d8e4dc; margin-top:10px; padding-top:10px; }
.blog-listing-links small { display:block; color:#486359; }
@media (max-width:850px) { .blog-layout { grid-template-columns:minmax(0,1fr); } }
@media (max-width:520px) { .blog-grid { grid-template-columns:1fr; } }
