body { background: var(--paper); color: var(--ink); }
.site-header { position: fixed; top: 0; right: 0; left: 0; z-index: 50; display: flex; align-items: center; gap: clamp(1rem, 2.4vw, 3rem); min-height: var(--header-h); padding: 0 var(--pad-x); border-bottom: 1px solid var(--line-dark); background: rgba(241,243,235,.88); backdrop-filter: blur(16px); }
.menu-toggle, .mobile-menu { display: none; }
.brand { flex: 0 0 auto; }.site-logo img { width: auto; height: 34px; }.desktop-nav { display: flex; align-items: center; justify-content: flex-end; gap: clamp(.65rem, 1.5vw, 1.5rem); flex: 1; }.desktop-nav a { color: #5c6c62; font: 500 .62rem var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }.desktop-nav a.is-active, .desktop-nav a:hover { color: var(--green); }.header-cta { color: var(--ink); border-color: var(--green); white-space: nowrap; }
.editorial-blog, .editorial-article { min-height: 100vh; padding: 10rem var(--pad-x) 6rem; }
.editorial-blog { max-width: 1440px; margin: 0 auto; }
.blog-hero { max-width: 58rem; padding: 5rem 0 7rem; }
.blog-hero h1 { max-width: 10ch; margin: 1.2rem 0; font-size: clamp(4rem, 9vw, 9rem); line-height: var(--lh-heading); }
.blog-hero > p:last-child { max-width: 30rem; color: #526158; font-size: 1rem; line-height: 1.7; }
.blog-featured { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr); gap: clamp(2rem, 6vw, 7rem); align-items: end; padding-bottom: 6rem; border-bottom: 1px solid var(--line-dark); }
.blog-featured--text-only { grid-template-columns: minmax(0, 58rem); }
.blog-featured__media, .blog-card__media { display: grid; place-items: center; min-height: 25rem; overflow: hidden; background: var(--ink-soft); color: var(--lime); }
.blog-featured__media img, .blog-card__media img { width: 100%; height: 100%; object-fit: cover; }
.blog-featured__copy h2 { margin: 1rem 0; font-size: clamp(3rem, 5vw, 6rem); line-height: var(--lh-heading); }
.blog-featured__copy p, .blog-card p { color: #5c6c62; line-height: 1.7; }
.blog-featured__copy time, .blog-card__meta { color: var(--green); font: .62rem var(--font-mono); text-transform: uppercase; }
.blog-grid-section { padding-top: 4rem; }
.blog-section-heading { display: flex; justify-content: space-between; gap: 2rem; padding-bottom: 1.2rem; border-bottom: 1px solid var(--line-dark); }
.blog-categories { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .7rem 1.2rem; }
.blog-categories a { color: var(--green); font: .62rem var(--font-mono); text-transform: uppercase; }
.blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem 1.5rem; padding-top: 2rem; }
.blog-card__media { min-height: 15rem; }
.blog-card__meta { display: flex; justify-content: space-between; gap: 1rem; margin-top: 1rem; }
.blog-card h2 { margin: .8rem 0; font-size: clamp(2rem, 3vw, 3.5rem); line-height: var(--lh-heading); }
.editorial-pending { color: #5c6c62; }
.editorial-article { padding-top: 12rem; }
.article-shell { max-width: 820px; margin: 0 auto; }
.article-breadcrumb { display: flex; gap: .7rem; margin-bottom: 4rem; color: #637068; font: .62rem var(--font-mono); text-transform: uppercase; }
.article-shell h1 { max-width: 12ch; margin: 1rem 0 1.4rem; font-size: clamp(4rem, 8vw, 8rem); line-height: var(--lh-heading); }
.article-excerpt { max-width: 38rem; color: #526158; font-size: 1.1rem; line-height: 1.7; }
.article-byline { display: flex; gap: 1rem; margin: 2rem 0 3rem; color: var(--green); font: .64rem var(--font-mono); text-transform: uppercase; }
.article-cover, .editorial-gallery { margin: 3rem 0; }
.article-cover img, .editorial-gallery img { width: 100%; height: auto; }
.editorial-media--pending { display: grid; place-items: center; min-height: 20rem; background: rgba(31,107,81,.08); color: var(--green); }
.article-content { font-size: 1rem; line-height: 1.85; }
.article-content h2, .article-content h3 { margin-top: 3rem; font-size: 2.5rem; line-height: 1; }
.article-content blockquote { margin: 2rem 0; padding: 1rem 1.5rem; border-left: 2px solid var(--green); color: var(--green); font-size: 1.25rem; }
.article-content table { width: 100%; border-collapse: collapse; }
.article-content th, .article-content td { padding: .7rem; border-bottom: 1px solid var(--line-dark); text-align: left; }
.article-cta { margin-top: 5rem; padding: 2rem; background: var(--ink); color: var(--paper); }
.related-posts { margin-top: 5rem; }
.article-cta h2 { max-width: 12ch; font-size: 3rem; line-height: var(--lh-heading); }
.project-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin: 2rem 0; }
.project-facts span { padding-top: .7rem; border-top: 1px solid var(--line-dark); color: var(--green); font: .62rem var(--font-mono); text-transform: uppercase; }
.site-footer--standard { position: relative; right: auto; bottom: auto; left: auto; margin: 0 var(--pad-x); padding: 1rem 0 2rem; color: #66746a; border-color: var(--line-dark); }
@media (max-width: 800px) { .blog-featured, .blog-grid { grid-template-columns: 1fr; }.blog-section-heading { display: block; }.blog-categories { justify-content: flex-start; margin-top: 1rem; }.project-facts { grid-template-columns: repeat(2, 1fr); }.editorial-blog, .editorial-article { padding-top: 8rem; } }
@media (max-width: 1000px) { .desktop-nav { gap: .55rem; }.desktop-nav a { font-size: .52rem; }.header-cta { padding-inline: .7rem; font-size: .54rem; } }
@media (max-width: 760px) { .desktop-nav { display: flex; overflow-x: auto; justify-content: flex-start; white-space: nowrap; }.header-cta { display: none; }.site-header { min-height: 68px; }.site-logo img { max-height: 32px; }.editorial-blog, .editorial-article { padding-top: 7rem; } }
