/* WordPress integration and editorial layouts. */
img { height: auto; }
.reveal { opacity: 1; transform: none; }
.hsr-motion .reveal { opacity: 0; transform: translateY(12px); }
.hsr-motion .reveal.is-visible { opacity: 1; transform: none; }
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid var(--brand-2); outline-offset: 5px; }
.admin-bar .site-header { top: 32px; }
.custom-logo { max-width: 220px; max-height: 64px; width: auto; height: auto; }
.screen-reader-text { border: 0; clip-path: inset(50%); height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; }
.screen-reader-text:focus { clip-path: none; width: auto; height: auto; padding: 1rem; background: #fff; color: #071f27; z-index: 100000; }
.editorial { max-width: 860px; min-height: 55vh; }
.editorial h1, .blog-index h1 { font-size: clamp(2.5rem, 6vw, 4.8rem); line-height: 1.05; }
.entry-content, .editorial { overflow-wrap: anywhere; }
.entry-content a, .editorial p a { text-decoration: underline; text-underline-offset: .2em; }
.entry-content h2 { margin-top: 2rem; }
.entry-content img { height: auto; border-radius: var(--radius); }
.entry-content pre { overflow: auto; padding: 1rem; background: var(--bg-elev); }
.entry-content blockquote { margin: 2rem 0; border-left: 4px solid var(--brand); padding: 1rem 1.5rem; background: var(--surface); }
.entry-content .alignwide { max-width: 1140px; }
.entry-content .alignfull { max-width: 100%; }
.post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.post-card { overflow: hidden; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); }
.post-card img { aspect-ratio: 16/10; width: 100%; height: auto; object-fit: cover; }
.post-card-body { padding: 1.5rem; }
.post-card h2 { font-size: 2rem; line-height: 1.15; }
.post-card p, .post-meta { color: var(--muted); }
.article-image { width: 100%; height: auto; border-radius: var(--radius); margin-top: 2rem; }
.article-cta { margin-top: 3rem; padding: 2rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); }
.navigation, .search-form { margin-top: 2rem; }
.nav-links { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; }
.nav-links a, .page-numbers { text-decoration: underline; text-underline-offset: .2em; }
.comment-form label, .search-form label { display: block; }
.comment-form input:not([type="checkbox"]), .comment-form textarea, .search-form input { max-width: 100%; padding: .75rem; font: inherit; border: 1px solid var(--line); border-radius: .5rem; background: var(--bg-elev); color: var(--text); }
.comment-form textarea { width: 100%; }
.search-form { display: flex; gap: 1rem; flex-wrap: wrap; align-items: end; }
.comments-area { margin-top: 3rem; }
.comment-list { padding-left: 1.5rem; }
.comment-list .avatar { float: left; margin-right: .75rem; border-radius: 50%; }
#mc_embed_signup input[type="submit"] { width: auto; height: auto; cursor: pointer; font: inherit; }
.nav-parent-link { display: none; }
.nav-menu-dropdown.open .nav-parent-link { display: block; padding: .5rem; }
@media (max-width: 950px) { .post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .site-header { top: 0; } .post-grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; transition: none !important; } .hsr-motion .reveal { opacity: 1; transform: none; } }
@media print { .site-header, .site-footer, .article-cta { display: none; } }
