/* Blog module: scoped styles using Flat White's existing palette and fonts. */
header nav ul { display: flex; flex-wrap: wrap; }
header nav ul li { float: none; flex: 1 1 0; width: auto; }
header .menu { font-size: 18px; }
.flat-blog-section { padding: 70px 0 85px; color: #5b3f34; }
.flat-blog-heading { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 38px; }
.flat-blog-eyebrow { display: block; font-size: 11px; letter-spacing: 2.5px; font-weight: 700; color: #a77549; margin-bottom: 15px; }
.flat-blog-heading h2, .flat-blog-intro h1 { font-family: Beauty, "Dancing Script", cursive; font-size: 54px; font-weight: 400; margin: 0 0 12px; line-height: 1.15; }
.flat-blog-heading p, .flat-blog-intro p { font-size: 15px; font-weight: 400; line-height: 1.8; margin: 0; }
.flat-blog-button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; border-radius: 14px; background: #ffba3a; color: #5b3f34; padding: 16px 23px; font-size: 12px; font-weight: 700; text-decoration: none; white-space: nowrap; transition: background .2s; }
.flat-blog-button:hover { background: #f5ad2a; color: #5b3f34; }
.flat-blog-card { height: 100%; display: flex; flex-direction: column; background: #fffaf3; border: 1px solid #ddcdbb; border-radius: 26px; overflow: hidden; }
.flat-blog-image { display: block; overflow: hidden; aspect-ratio: 1.52; background: #e4d9c9; }
.flat-blog-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.flat-blog-image:hover img { transform: scale(1.035); }
.flat-blog-card-copy { padding: 26px 28px 28px; display: flex; flex-direction: column; align-items: flex-start; flex: 1; }
.flat-blog-category { color: #a77549; font-size: 10px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 13px; }
.flat-blog-card h3 { font-size: 22px; font-weight: 700; line-height: 1.4; margin: 0 0 12px; overflow-wrap: anywhere; }
.flat-blog-card h3 a { color: #5b3f34; text-decoration: none; }
.flat-blog-card p { font-size: 13px; font-weight: 400; line-height: 1.85; color: #867060; margin: 0 0 24px; }
.flat-blog-read { color: #5b3f34; text-decoration: none; font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; gap: 15px; padding-top: 10px; margin-top: auto; }
.flat-blog-read span { color: #bb8749; font-size: 20px; }
.flat-blog-read:hover { color: #b9775d; }
.flat-blog-page { color: #5b3f34; padding-top: 45px; padding-bottom: 75px; }
.flat-blog-intro { max-width: 700px; margin-bottom: 45px; }
.flat-blog-intro h1 { font-size: 66px; }
.flat-blog-breadcrumb { display: inline-flex; gap: 12px; font-size: 11px; margin-bottom: 30px; color: #957c69; text-decoration: none; }
.flat-blog-article { max-width: 850px; margin: 0 auto; }
.flat-blog-article h1 { font-size: clamp(32px,4vw,52px); font-weight: 700; line-height: 1.22; overflow-wrap: anywhere; margin: 18px 0 20px; }
.flat-blog-meta { font-size: 11px; color: #967e69; display: flex; gap: 18px; flex-wrap: wrap; margin: 20px 0; }
.flat-blog-excerpt { font-size: 19px; line-height: 1.8; color: #94715d; margin-bottom: 30px; }
.flat-blog-cover { width: 100%; max-height: 530px; object-fit: cover; border-radius: 25px; margin: 8px 0 35px; }
.flat-blog-body { font-size: 16px; font-weight: 400; line-height: 2; overflow-wrap: anywhere; white-space: normal; }
.flat-blog-article-bottom { border-top: 1px solid #ddcdbb; margin-top: 45px; padding-top: 28px; }
.flat-blog-pagination { display: flex; align-items: center; justify-content: space-between; margin-top: 35px; gap: 15px; font-size: 12px; }
.flat-blog-pagination a { color: #5b3f34; text-decoration: none; font-weight: 600; }
.flat-blog-empty { padding: 40px 0; color: #947b64; line-height: 1.8; }
.flat-blog-footer { border-top: 1px solid #ddcdbb; color: #8e7762; padding: 24px 12px; font-size: 10px; }
.flat-blog-footer .container { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.flat-blog-footer a { color: #8e7762; text-decoration: none; }
@media (max-width: 991px) {
    .flat-blog-heading { align-items: flex-start; flex-direction: column; gap: 22px; }
    .flat-blog-heading h2 { font-size: 46px; }
    header .menu { font-size: 17px; }
}
@media (max-width: 575px) {
    .flat-blog-section { padding: 45px 12px 55px; }
    .flat-blog-heading h2 { font-size: 41px; }
    .flat-blog-heading p { font-size: 13px; }
    .flat-blog-button { padding: 13px 18px; }
    .flat-blog-card-copy { padding: 23px; }
    .flat-blog-page { padding: 30px 20px 50px; }
    .flat-blog-intro h1 { font-size: 50px; }
    .flat-blog-meta { gap: 10px; }
    .flat-blog-excerpt { font-size: 16px; }
    .flat-blog-body { font-size: 15px; }
    .flat-blog-footer .container { flex-wrap: wrap; }
    header .menu { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) { .flat-blog-image img { transition: none; } }
