/* Continuous full-width photographs with natural text space and no overlays. */
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero){width:100%;max-width:none;margin-inline:0;border-radius:0;background:#c8e3f0}
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero)::before{inset:0;background-size:cover;background-position:center top;background-repeat:no-repeat}
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero)::after{display:none;background:none}
body main :is(.about-hero-copy,.contact-hero-copy,.project-hero-copy,.subservice-hero-copy,.services-intro-grid){max-width:44%}
body main .shop-hero>.wrap>:is(h1,p){max-width:44%}
body main .services-intro-copy{max-width:none}
@media(min-width:761px){
body .project-main[data-kind="training"] .project-hero-copy{max-width:35%}
body .project-main[data-kind="training"] .project-hero-copy>p{max-width:330px}
body .project-main[data-kind="training"] .project-hero h1{font-size:clamp(36px,3.5vw,56px)}
}
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero) p{color:#41463e}
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero) h1{font-size:clamp(38px,4.1vw,64px)}
@media(max-width:1000px) and (min-width:761px){body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero) h1{font-size:clamp(34px,4.4vw,44px)}}
@media(max-width:760px){
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero){display:block;min-height:0;padding-top:28px;padding-bottom:330px}
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero)::before{background-size:auto 300px;background-position:right bottom}
body main :is(.about-hero-copy,.contact-hero-copy,.project-hero-copy,.subservice-hero-copy,.services-intro-grid){max-width:100%}
body main .shop-hero>.wrap>:is(h1,p){max-width:100%}
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero) h1{font-size:clamp(35px,9vw,44px)}
body main :is(.services-intro,.about-hero,.contact-hero,.shop-hero,.subservice-hero,.project-hero)>.wrap{align-self:auto;justify-content:flex-start}
}
/* Shared powder blue campaign backgrounds. */
body main .shop-hero{background:#c8e3f0}
body main .shop-hero::before{background-image:url('assets/heroes/shop-powder-blue.png')}
body main .services-intro{background:#c8e3f0}
body main .services-intro::before{background-image:url('assets/heroes/services-powder-blue.png')}
body .project-main[data-kind="bulk"] .project-hero{background:#c8e3f0}
body .project-main[data-kind="bulk"] .project-hero::before{background-image:url('assets/heroes/bulk-powder-blue.png')}
body main .about-hero{background:#c8e3f0}
body main .about-hero::before{background-image:url('assets/heroes/about-powder-blue.png')}
body .project-main[data-kind="training"] .project-hero{background:#c8e3f0}
body .project-main[data-kind="training"] .project-hero::before{background-image:url('assets/heroes/training-powder-blue.png')}
body main .contact-hero{background:#c8e3f0}
body main .contact-hero::before{background-image:url('assets/heroes/contact-powder-blue.png')}

/* Service-page pastel backdrops match the campaign photographs. */
body main .subservice-hero[style*="printing-powder-blue"]{background:#c8e3f0}
body main .subservice-hero[style*="business-powder-blue"]{background:#c8e3f0}
body main .subservice-hero[style*="tshirt-powder-blue"]{background:#c8e3f0}
body main .subservice-hero[style*="dtf-powder-blue"]{background:#c8e3f0}
body main .subservice-hero[style*="mugs-powder-blue"]{background:#c8e3f0}
