/* Shared photo frames. Individual crop/fit choices come from Page Photos. */
.service-image{height:235px;background:#101010}.service-image img{width:100%;height:100%;display:block}
.content-image{height:auto;aspect-ratio:4/3;background:#101010;border-radius:12px;overflow:hidden}
.content-image img{width:100%;height:100%;display:block}
.blog-card> a:first-child{display:block;background:#101010;overflow:hidden}
.blog-card img{width:100%;height:235px;display:block}
.article-image{display:block;width:100%;height:auto;max-height:600px;background:#101010;border-radius:10px}
/* Keep every home-section introduction left aligned below its heading. */
.spx-home .spx-section-head{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:19px;margin-bottom:34px}
.spx-home .spx-section-head>p{max-width:760px;width:100%;margin:0;line-height:1.85;text-align:left}
.spx-home .spx-image-stamp{display:block;padding:0;max-width:180px;background:transparent;border:0;border-radius:0;line-height:0;filter:drop-shadow(0 1px 3px #0009)}
.spx-home .spx-image-stamp img{display:block;width:145px;max-width:100%;height:auto;max-height:64px;object-fit:contain}
.spx-home .spx-hero-inner,.spx-home .spx-what-inner,.content-grid{min-width:0}
.spx-home .spx-what-copy,.content-copy{min-width:0}
.spx-home .spx-slide>img,.spx-home .spx-category>img,.spx-home .spx-gallery img,.spx-home .spx-about-inset img,.spx-home .spx-process-image img{background:#101010}
@media(max-width:760px){.content-grid{grid-template-columns:minmax(0,1fr);gap:26px}.content-image{aspect-ratio:4/3;max-height:430px}.spx-home .spx-section-head{gap:16px}.spx-home .spx-section-head>p{font-size:14px}}
@media(max-width:560px){.service-image,.blog-card img{height:230px}.content-image{aspect-ratio:4/3;max-height:none}.spx-home .spx-image-stamp{padding:0;max-width:150px}.spx-home .spx-image-stamp img{width:120px;max-height:50px}}

/* Services: open call-to-action with room around the copy and button. */
.services-help{margin-top:64px;padding:16px 0 0}
.services-help .cta-row{gap:36px}
.services-help .cta-row>div{max-width:760px;min-width:0}
.services-help .section-title{font-size:clamp(34px,4vw,50px);line-height:1.08}
.services-help .cta-row p{max-width:600px;margin-top:14px;line-height:1.8}
.services-help .button{flex-shrink:0}
@media(max-width:760px){.services-help{margin-top:44px;padding-top:8px}.services-help .cta-row{flex-direction:column;align-items:flex-start;gap:24px}.services-help .section-title{font-size:clamp(32px,7vw,44px)}}
