/* Keep the supplied logo and composite its black backing into transparency. */
.brand-filter-definitions{position:absolute;pointer-events:none;overflow:hidden}
.brand-logo{filter:url(#brand-clear-backing);background:transparent}
.brand{background:transparent;isolation:isolate}
@media screen{
 .section-heading h2{line-height:1.16;text-wrap:balance}
 .builder-hero-copy h1{line-height:1.07;text-wrap:balance}
 .prose{font-size:17px;line-height:1.9}
 .page-cards>a{border-radius:18px;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}
 .page-cards>a:focus-visible,.page-cards>a:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0002}
 .page-cards>a>img{aspect-ratio:16/10;object-fit:cover;width:100%}
 .page-cards>a>div{padding:24px}
 .page-cards h3{font-size:23px;line-height:1.25;text-wrap:balance}
 .page-cards p{font-size:15px;line-height:1.7}
 .gallery-grid{gap:18px}.gallery-grid img{border-radius:13px}
 .page-links a{min-height:56px;padding:18px 21px;font-size:16px;border-radius:10px}
 .cms-block .button{min-height:48px}
 .builder-hero:not(.hero-cover) .builder-hero-photo{border-radius:24px}
 .nav-wrap{padding-bottom:10px}
}
@media screen and (min-width:1200px){.wrap{width:min(1280px,calc(100% - var(--gutter)*2))}.builder-hero .prose{font-size:18px}.section-heading{margin-bottom:34px}}
@media screen and (min-width:1600px){.wrap{width:min(1360px,calc(100% - var(--gutter)*2))}}
@media screen and (max-width:700px){.prose{font-size:16px;line-height:1.8}.page-cards>a>div{padding:20px}.page-cards h3{font-size:21px}.gallery-grid{gap:10px}.builder-hero:not(.hero-cover) .builder-hero-photo{border-radius:15px}}
@media(prefers-reduced-motion:reduce){.page-cards>a{transition:none}.page-cards>a:hover{transform:none}}
