.container { width: min(100% - 32px, 1200px); margin-inline: auto; }
.site-header__inner { position: relative; display: flex; align-items: center; justify-content: space-between; min-height: 72px; gap: 24px; }
.site-main { min-height: 60vh; }
.content-area { padding-block: clamp(2rem, 5vw, 5rem); }
.site-footer { margin-top: auto; color: #fff; background: #102a43; }
.site-footer__inner { display: grid; gap: 32px; padding-block: 48px; }
.site-footer__bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding-block: 20px; border-top: 1px solid rgb(255 255 255 / 16%); }
.posts-grid { display: grid; gap: 1.5rem; }
.content-with-sidebar { display: grid; gap: 2rem; }
@media (min-width: 48rem) {
	.posts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-footer__inner { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 64rem) { .site-footer__inner { grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr)); } }
@media (min-width: 90rem) { .container { width: min(100% - 64px, 1200px); } }
@media (min-width: 64rem) {
	.posts-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.content-with-sidebar { grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr); }
}
