.blog-page { overflow: hidden; background: var(--vedcare-page, #fcf8ed); color: var(--vedcare-color-forest, #174634); }

.blog-hero { position: relative; padding: clamp(4rem, 6vw, 5.6rem) 0 clamp(3.5rem, 5vw, 4.8rem); overflow: hidden; background: #f7f0df; text-align: center; }
.blog-hero::before, .blog-hero::after, .blog-wellness-cta::before, .blog-wellness-cta::after { position: absolute; width: clamp(15rem, 25vw, 23rem); height: clamp(15rem, 25vw, 23rem); background: url('../images/decorative/ayurvedic-botanical-frame.png') center / contain no-repeat; content: ''; opacity: .32; pointer-events: none; }
.blog-hero::before { top: -4.5rem; left: -8rem; }
.blog-hero::after { right: -8rem; bottom: -7rem; transform: scaleX(-1); }
.blog-hero__inner, .blog-wellness-cta__inner { position: relative; z-index: 1; }
.blog-hero__inner { max-width: 56rem; }
.blog-hero__eyebrow { margin: 0; color: #a97528; font-size: .76rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.blog-hero__title, .blog-section__title, .blog-featured__title, .blog-wellness-cta__title { font-family: "Cormorant Garamond", Georgia, serif; font-weight: 600; }
.blog-hero__title { max-width: 17ch; margin: .95rem auto 0; font-size: clamp(2.9rem, 5.6vw, 4.9rem); letter-spacing: -.025em; line-height: .97; }
.blog-hero__text { max-width: 45rem; margin: 1.35rem auto 0; color: #526257; font-size: clamp(1rem, 1.55vw, 1.14rem); line-height: 1.7; }

.blog-featured { width: min(calc(100% - (var(--vedcare-gutter) * 2)), 75rem); max-width: 75rem; padding-top: clamp(3.25rem, 5vw, 4.6rem); }
.blog-featured__card { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-height: 31rem; overflow: hidden; border: 1px solid rgba(190, 145, 61, .42); border-radius: 1.25rem; background: #fffdf8; box-shadow: 0 1rem 2.4rem rgba(30, 48, 34, .09); }
.blog-featured__image { display: block; min-height: 100%; background: #e6eadb; }
.blog-featured__image img, .blog-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.blog-featured__image-fallback, .blog-card__image-fallback { display: block; width: 100%; height: 100%; background: linear-gradient(135deg, #d9e0cb, #f0dfbd); }
.blog-featured__content { display: flex; flex-direction: column; justify-content: center; padding: clamp(2rem, 4.4vw, 4.4rem); }
.blog-card__category { display: inline-flex; align-self: flex-start; margin: 0; padding: .35rem .6rem; border: 1px solid rgba(169, 117, 40, .45); border-radius: 999px; color: #9a7015; font-size: .66rem; font-weight: 700; letter-spacing: .13em; line-height: 1.2; text-transform: uppercase; }
.blog-featured__title { max-width: 13ch; margin: 1rem 0 0; font-size: clamp(2.35rem, 3.4vw, 3.35rem); line-height: 1.01; }
.blog-featured__title a, .blog-card__title a { color: inherit; text-decoration: none; }
.blog-featured__title a:hover, .blog-card__title a:hover { color: #a97528; }
.blog-featured__excerpt { max-width: 31rem; margin: 1.2rem 0 0; color: #526257; line-height: 1.7; }
.blog-card__meta { margin: 1rem 0 0; color: #69746d; font-size: .83rem; line-height: 1.5; }
.blog-featured__link, .blog-card__link { display: inline-flex; align-items: center; gap: .35rem; color: #9a7015; font-size: .88rem; font-weight: 700; text-decoration: none; }
.blog-featured__link { margin-top: 1.4rem; }
.blog-featured__link:hover, .blog-card__link:hover { color: #174634; }
.blog-featured__placeholder { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-height: 31rem; overflow: hidden; border: 1px solid rgba(190, 145, 61, .42); border-radius: 1.25rem; background: #fffdf8; }
.blog-featured__placeholder-visual { display: grid; min-height: 100%; place-items: center; background: linear-gradient(135deg, #d9e0cb, #f0dfbd); }
.blog-featured__placeholder-visual span { display: grid; width: 4.25rem; height: 4.25rem; place-items: center; border: 1px solid rgba(169, 117, 40, .55); border-radius: 50%; color: #a97528; font-size: 1.35rem; }
.blog-featured__placeholder-content { display: flex; flex-direction: column; justify-content: center; padding: clamp(2rem, 4.4vw, 4.4rem); }
.blog-featured__placeholder .blog-featured__title { max-width: 18ch; margin-top: 1rem; }
.blog-featured__placeholder .blog-featured__excerpt { max-width: 36rem; }

.blog-journal { width: min(calc(100% - (var(--vedcare-gutter) * 2)), 75rem); max-width: 75rem; padding-top: clamp(4.25rem, 6vw, 5.6rem); padding-bottom: clamp(4.5rem, 6.5vw, 6rem); }
.blog-section__title { margin: 0; font-size: clamp(2.3rem, 4vw, 3.45rem); letter-spacing: -.02em; line-height: 1; }
.blog-journal > .blog-section__title:first-child { text-align: center; }
.blog-categories { display: flex; flex-wrap: wrap; justify-content: center; gap: .8rem; margin-top: 2.25rem; }
.blog-categories__link { padding: .85rem 1.28rem; border: 1px solid rgba(169, 117, 40, .52); border-radius: 999px; background: #fffdf8; color: #28503d; font-size: .9rem; font-weight: 700; line-height: 1; text-decoration: none; transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease; }
.blog-categories__link:hover, .blog-categories__link.is-active { border-color: #174634; background: #174634; color: #fffaf0; }
.blog-section__title--latest { margin-top: clamp(4rem, 6vw, 5.35rem); }
.blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.8rem; margin-top: 2.1rem; }
.blog-card { display: flex; flex-direction: column; min-height: 100%; overflow: hidden; border: 1px solid rgba(190, 145, 61, .36); border-radius: 1rem; background: #fffdf8; box-shadow: 0 .65rem 1.7rem rgba(30, 48, 34, .065); transition: box-shadow 180ms ease, transform 180ms ease; }
.blog-card:hover { box-shadow: 0 1rem 2.2rem rgba(30, 48, 34, .11); transform: translateY(-3px); }
.blog-card__image { display: block; aspect-ratio: 16 / 9; background: #e7eadc; }
.blog-card__content { display: flex; flex: 1; flex-direction: column; padding: 1.45rem 1.4rem 1.5rem; }
.blog-card__title { margin: .95rem 0 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(1.65rem, 2.1vw, 2rem); font-weight: 600; line-height: 1.05; }
.blog-card__excerpt { display: -webkit-box; margin: .85rem 0 0; overflow: hidden; color: #526257; font-size: .93rem; line-height: 1.62; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.blog-card__link { margin-top: auto; padding-top: 1.25rem; }
.blog-empty { margin: 2.1rem 0 0; padding: 0; border: 0; background: transparent; color: #526257; text-align: center; }
.blog-empty__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.8rem; }
.blog-empty__grid span { display: block; min-height: 24rem; border: 1px solid rgba(190, 145, 61, .36); border-radius: 1rem; background: linear-gradient(#e8eadf 0 49%, #fffdf8 49% 100%); box-shadow: 0 .65rem 1.7rem rgba(30, 48, 34, .055); }
.blog-empty p { max-width: 33rem; margin: 2rem auto 0; line-height: 1.65; }
.blog-pagination { display: flex; justify-content: center; margin-top: 3.1rem; }
.blog-pagination .page-numbers { display: flex; flex-wrap: wrap; justify-content: center; gap: .55rem; margin: 0; padding: 0; list-style: none; }
.blog-pagination .page-numbers li { margin: 0; }
.blog-pagination a, .blog-pagination span { display: grid; width: 2.55rem; min-height: 2.55rem; place-items: center; border: 1px solid rgba(169, 117, 40, .45); border-radius: 50%; background: #fffdf8; color: #174634; font-size: .9rem; font-weight: 700; text-decoration: none; }
.blog-pagination .current, .blog-pagination a:hover { border-color: #174634; background: #174634; color: #fffaf0; }

.blog-wellness-cta { position: relative; padding: clamp(4rem, 6vw, 5.2rem) 0; overflow: hidden; background: #174634; color: #fffaf0; text-align: center; }
.blog-wellness-cta::before { top: -6.5rem; left: -7rem; opacity: .22; }
.blog-wellness-cta::after { right: -7rem; bottom: -7.5rem; opacity: .22; transform: scaleX(-1); }
.blog-wellness-cta__inner { max-width: 52rem; }
.blog-wellness-cta__title { margin: 0; color: inherit; font-size: clamp(2.45rem, 4.3vw, 4rem); line-height: 1; }
.blog-wellness-cta__text { max-width: 42rem; margin: 1.3rem auto 1.9rem; color: rgba(255, 250, 240, .85); line-height: 1.7; }

@media (max-width: 54rem) { .blog-featured__card, .blog-featured__placeholder { min-height: 0; } .blog-featured__image { min-height: 24rem; } .blog-grid, .blog-empty__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 42rem) { .blog-hero { padding: 4.25rem 0 3.8rem; } .blog-hero__title { font-size: clamp(2.65rem, 11vw, 3.5rem); } .blog-featured { padding-top: 3.3rem; } .blog-featured__card, .blog-featured__placeholder { grid-template-columns: 1fr; } .blog-featured__image, .blog-featured__placeholder-visual { min-height: 0; aspect-ratio: 16 / 9; } .blog-featured__content, .blog-featured__placeholder-content { padding: 2rem 1.5rem; } .blog-journal { padding-top: 4rem; padding-bottom: 4.25rem; } .blog-categories { gap: .55rem; } .blog-categories__link { padding: .7rem .9rem; font-size: .82rem; } .blog-section__title--latest { margin-top: 3.75rem; } .blog-grid, .blog-empty__grid { grid-template-columns: 1fr; } .blog-empty__grid span { min-height: 20rem; } .blog-wellness-cta { padding: 4.25rem 0; } }

@media (max-width: 420px) { .blog-hero { padding: 3.7rem 0 3.2rem; } .blog-featured { padding-top: 2.7rem; } .blog-featured__content, .blog-featured__placeholder-content { padding: 1.55rem 1.25rem; } .blog-journal { padding-top: 3.35rem; padding-bottom: 3.5rem; } .blog-wellness-cta { padding: 3.65rem 0; } }

@media (max-width: 47.9375rem) {
	.blog-hero { padding: 3.25rem 0 2.8rem; }
	.blog-hero__title { font-size: clamp(1.9rem, 8.5vw, 2.4rem); }
	.blog-hero__text, .blog-card__excerpt { font-size: 1rem; line-height: 1.62; }
	.blog-featured { padding-top: 2.3rem; }
	.blog-featured__content, .blog-featured__placeholder-content { padding: 1.3rem; }
	.blog-featured__title { font-size: 1.9rem; }
	.blog-journal { padding-top: 2.8rem; padding-bottom: 3rem; }
	.blog-section__title { font-size: clamp(1.55rem, 7vw, 1.9rem); }
	.blog-grid { grid-template-columns: 1fr; gap: 1rem; }
	.blog-card__content { padding: 1.15rem; }
	.blog-card__title { font-size: 1.35rem; }
	.blog-card__meta { font-size: .8rem; }
	.blog-wellness-cta { padding: 3rem 0; }
	.blog-wellness-cta__title { font-size: 2rem; }
}
