/* blog: posts index (templates/home.html, archive.html, index.html) and single post (single.html). Global tokens stay in theme.css. */

/* ---------- Index ---------- */
.nv-blog__head { margin-bottom: var(--wp--preset--spacing--30); }
.nv-blog__title { margin: 0; }
.nv-blog__intro { margin: .5rem 0 0; color: var(--wp--preset--color--ink-soft); font-size: clamp(1rem, 1.6vw, 1.1rem); }
.nv-blog__grid { gap: 1.5rem; }
@media (min-width: 600px) and (max-width: 1023px) { .nv-blog__grid.is-layout-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }   /* core: 1 column below 600px, 3 from here */

.nv-post-card { display: flex; flex-direction: column; height: 100%; margin: 0; background: var(--wp--preset--color--white); border: 1px solid var(--wp--preset--color--sand); border-radius: var(--nv-radius); overflow: hidden; transition: box-shadow .2s, border-color .2s; }
@media (hover: hover) { .nv-post-card:hover { box-shadow: var(--nv-shadow); border-color: var(--wp--preset--color--gold); } }
.nv-post-card > * { margin-block: 0; }   /* no flow-layout gap between image and text */
.nv-post-card__img img { display: block; width: 100%; }
.nv-post-card__body { display: flex; flex-direction: column; flex: 1; padding: 1.25rem 1.25rem 1.5rem; }
.nv-post-card__body > * { margin: 0; }
.nv-post-card__date { color: var(--wp--preset--color--ink-soft); font-weight: 500; }
.nv-post-card__title.nv-post-card__title { margin-top: .35rem; font-family: var(--wp--preset--font-family--body); font-size: clamp(1.15rem, 1.5vw, 1.3rem); font-weight: 700; text-transform: none; letter-spacing: 0; line-height: 1.3; }   /* sentence case in Poppins: long post titles stay readable */
.nv-post-card__title a { color: var(--wp--preset--color--maroon-deep); text-decoration: none; }
.nv-post-card__title a:hover { color: var(--wp--preset--color--maroon); text-decoration: underline; }
.nv-post-card__excerpt { margin-top: .6rem; display: flex; flex-direction: column; flex: 1; color: var(--wp--preset--color--ink-soft); }
.nv-post-card__excerpt .wp-block-post-excerpt__excerpt { margin: 0; }
.nv-post-card__excerpt .wp-block-post-excerpt__more-text { margin: auto 0 0; padding-top: .75rem; }
.nv-post-card__excerpt .wp-block-post-excerpt__more-link { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; color: var(--wp--preset--color--maroon); }

.nv-blog__pager { margin-top: var(--wp--preset--spacing--40); gap: .25rem; font-weight: 600; }
.nv-blog__pager a, .nv-blog__pager .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 .5rem; border-radius: 999px; text-decoration: none; }
.nv-blog__pager .page-numbers.current { background: var(--wp--preset--color--maroon); color: var(--wp--preset--color--white); }

/* no posts yet */
.nv-blog__empty { background: var(--wp--preset--color--cream); border-radius: var(--nv-radius); padding: clamp(2.5rem, 7vw, 4.5rem) 1.5rem; }
.nv-blog__empty-text { margin: 0 0 1.25rem; font-size: clamp(1.15rem, 2.4vw, 1.4rem); font-weight: 600; color: var(--wp--preset--color--maroon-deep); }
.nv-blog__empty .wp-block-button__link { display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; }

/* ---------- Single post ---------- */
.nv-post__back { margin: 0 0 .5rem; font-weight: 600; }
.nv-post__back a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; }
.nv-post__back a:hover { text-decoration: underline; }
.nv-post__title { margin: 0; font-size: clamp(2rem, 5vw, 3rem); overflow-wrap: break-word; }
.nv-post__date { margin-top: .5rem; color: var(--wp--preset--color--ink-soft); }
.nv-post__img { margin: var(--wp--preset--spacing--30) 0; }
.nv-post__img img { border-radius: var(--nv-radius-sm); }
.nv-post__content { line-height: 1.7; }
.nv-post__content h2 { font-size: clamp(1.4rem, 2.6vw, 1.75rem); margin: 2.5rem 0 .6rem; }
.nv-post__content img { border-radius: var(--nv-radius-sm); }
.nv-post__content a { text-decoration: underline; text-underline-offset: 2px; }
.nv-post__content .wp-block-embed iframe { max-width: 100%; }
.nv-post__nav { margin-top: var(--wp--preset--spacing--40); padding-top: var(--wp--preset--spacing--30); border-top: 1px solid var(--wp--preset--color--sand); gap: 1rem; }
.nv-post__nav:not(:has(a)) { display: none; }   /* first and only post: no empty rule */
.nv-post__nav > div { display: flex; align-items: center; gap: .4rem; min-height: 44px; font-weight: 600; }   /* chevron and title on one line */
