.cms-page-header{background:#142c50}.cms-article{max-width:1120px;margin:auto;padding:55px 24px 80px;color:#142c50}.cms-article h1{font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.05;margin:18px 0 24px}.cms-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:#517f19}.cms-draft{padding:12px 18px;background:#fff4d6;border-left:4px solid #b78013}.cms-summary{font-size:1.2rem;line-height:1.7}.cms-article-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px}.cms-prose{font-size:1.1rem;line-height:1.8}.cms-prose h2,.cms-prose h3{line-height:1.2;margin-top:1.5em}.cms-prose img,.cms-hero-image{max-width:100%;height:auto}.cms-hero-image{display:block;margin:24px 0;width:100%;max-height:480px;object-fit:cover}.cms-article aside{padding:24px;background:#f3f7ed;align-self:start;border-radius:12px}.cms-article .button{margin:12px 0}.cms-content-list{width:100%;max-width:1120px;margin:auto;padding:32px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px}.cms-content-card{background:#f6f8f2;padding:24px;border-radius:12px}.cms-content-card img{width:100%;height:200px;object-fit:cover}.cms-content-card h2{font-size:1.5rem;line-height:1.2}.cms-article-page:not(:has(aside)) .cms-article-grid{grid-template-columns:1fr}.cms-byline{font-size:.9rem;color:#52616b}@media(max-width:750px){.cms-article-grid{grid-template-columns:1fr;gap:24px}.cms-article{padding:32px 20px 50px}}
.cms-article aside figure{margin:24px 0 0}.cms-article aside img{width:100%;height:auto;border-radius:8px}.cms-article aside figcaption{font-size:.9rem;margin-top:8px}
.cms-page-header header nav>a,.cms-page-header header nav>.nav-contact>a{color:#fff}.cms-page-header .nav-contact-toggle{color:#fff}
.cms-gallery-page .cms-prose a:has(img){display:inline-block;width:calc(33.333% - 16px);margin:8px;vertical-align:top}.cms-gallery-page .cms-prose a>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}@media(max-width:750px){.cms-gallery-page .cms-prose a:has(img){width:calc(50% - 16px)}}@media(max-width:450px){.cms-gallery-page .cms-prose a:has(img){width:100%;margin:8px 0}}
