/* Shared editorial pages, using the existing WM Homes palette and local fonts. */
.content-page .header{position:relative;color:var(--ink)}.content-page .brand img{filter:brightness(0)}.content-page .menu-toggle{color:var(--ink);border-color:var(--line)}.content-page #main-nav{gap:20px}
.content-page main p:not(.eyebrow):not(.review-stars),main .home-resources p:not(.eyebrow):not(.review-stars){text-align:justify;text-align-last:left;hyphens:none}
.content-page li,.content-page .content-footer p{text-align:justify;text-align-last:left;hyphens:none}
.editorial{padding-block:44px 80px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--text);margin-bottom:30px}.breadcrumbs a,.prose a,.faq-list a,.resource-links a{text-decoration:underline;text-underline-offset:4px}
.page-heading{max-width:850px;margin-bottom:42px}.page-heading h1{font-size:clamp(38px,5.5vw,68px);margin:14px 0 22px;text-wrap:balance}.page-heading .lead{font-size:clamp(19px,2vw,23px);color:var(--text);max-width:760px}.page-meta{font-size:14px;color:var(--text);margin-top:18px}
.editorial-grid,.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.resource-card{border:1px solid var(--line);padding:28px;background:#faf8f4;min-width:0}.resource-card h2,.resource-card h3{font-size:27px;margin-bottom:14px}.resource-card p{color:var(--text);margin-bottom:18px}.resource-card>a:last-child{display:inline-block;text-decoration:underline;text-underline-offset:4px}.resource-card img{width:100%;height:230px;margin-bottom:24px;object-fit:cover}
.prose{max-width:800px}.prose h2{font-size:clamp(28px,3vw,38px);margin:40px 0 18px}.prose h3{font-size:24px;margin:24px 0 12px}.prose p,.prose ul,.prose ol{margin:0 0 20px}.prose li+li{margin-top:10px}.prose img{width:100%;height:auto}.page-section{margin-block:48px}.page-section>h2{font-size:36px;margin-bottom:24px}.page-cta{margin-top:48px;padding:32px;background:#e9e2d7}.page-cta h2{font-size:32px;margin-bottom:14px}.page-cta p{margin-bottom:22px;max-width:740px}.page-cta .button{display:inline-flex}
.faq-list{max-width:900px}.faq-list details{border-bottom:1px solid var(--line);padding:22px 0}.faq-list summary{cursor:pointer;font-size:20px;font-weight:700;padding-right:18px}.faq-list details p{margin-top:16px;color:var(--text)}
.project-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:32px 0}.project-photos img{width:100%;height:460px;object-fit:contain;background:#e9e2d7}.project-photos figcaption{margin-top:10px;font-size:15px;color:var(--text)}
.home-resources{padding-block:64px}.home-resources h2{margin-bottom:24px}.home-resources .resource-card h3{font-size:26px}.home-resources .section-intro{max-width:760px;margin-bottom:28px;color:var(--text)}.resource-links{display:flex;flex-wrap:wrap;gap:16px 28px;margin-top:26px}.project-page-link{display:inline-block;margin-top:14px;text-decoration:underline;text-underline-offset:4px}.content-footer{background:#24231f;color:#f4f1eb;padding-block:44px}.content-footer nav{display:flex;gap:16px 28px;flex-wrap:wrap;margin-bottom:24px}.content-footer p{margin-top:12px}.content-footer a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.editorial-grid,.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.content-page .header nav{color:#fff}}
@media(max-width:640px){.editorial{padding-top:26px}.editorial-grid,.resource-grid{grid-template-columns:1fr}.resource-card{padding:24px}.project-photos{grid-template-columns:1fr}.project-photos img{height:auto;max-height:520px}.page-cta{padding:24px}.home-resources{padding-block:44px}.page-section>h2{font-size:30px}}

/* Approved rounded service cards and gallery separation, 2026-11-04. */


main .home-resources p:not(.eyebrow):not(.review-stars){text-align:justify;text-align-last:left;hyphens:none}
.home-resources{padding-block:64px 54px}
.home-resources .section-intro{max-width:none;width:100%;margin-bottom:34px;text-wrap:wrap}
.resource-grid{gap:24px}
.resource-card{display:flex;flex-direction:column;padding:28px;border-radius:18px;}
.resource-card p{flex:1;margin-bottom:24px}
.resource-card>a:last-child{margin-top:auto;align-self:flex-start}
.home-resources .resource-links{border-top:1px solid var(--line);padding-top:24px;margin-top:32px;gap:18px 32px}
.gallery{background:#e9e3d9;border-top:1px solid #c9b693;padding-block:64px 72px;}
.gallery .section-heading{margin-bottom:30px}
.gallery .eyebrow{color:#806033}
.gallery .project-pair h3{text-align:left}
@media(max-width:640px){.home-resources{padding-block:44px}.gallery{padding-block:44px}.resource-card{padding:24px}}
