/* Abstract campaign artwork; Greg's portrait and portfolio photos stay original. */
.campaign-art{position:relative;overflow:hidden;background:#080909;pointer-events:none}
.campaign-art picture,.campaign-art img,.campaign-art video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.campaign-art video{opacity:0;transition:opacity .35s}
.hero.motion-ready .campaign-art video,.service-details.motion-ready .campaign-art video{opacity:1}
.brand-motion-toggle{position:absolute;z-index:7;display:flex;align-items:center;gap:22px;padding:10px 13px;background:#090b0be6;border:1px solid #c9ad7870;color:#f0eadc;font-size:11px;min-height:44px;text-align:left}
.brand-motion-toggle:hover{border-color:#c9ad78;color:#e3c58e}
.brand-motion-toggle [data-motion-icon]{font-size:18px;line-height:1}
.hero{isolation:isolate;background:#080909}
.hero-campaign{position:absolute;inset:60px 0 -60px;z-index:0}
.hero-campaign img,.hero-campaign video{object-position:center}
.hero-campaign::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#08090955,transparent 40%,#08090922 65%,#080909 100%)}
.hero>.wordmark{left:auto;right:4%;top:30px;width:44%;opacity:1}
.hero-owner{z-index:2}
.hero-intro{left:55%;right:4%;bottom:55px;max-width:540px;background:transparent}
.hero-intro>p:not(.eyebrow){font-size:32px;max-width:360px}
.hero-intro .button{max-width:370px}
.hero>.brand-motion-toggle{right:4%;bottom:29%}
.hero-discover{z-index:4}
.page-close{background-color:#090b0b;background-image:linear-gradient(90deg,#090b0bfa 3%,#090b0be0 45%,#090b0b80 100%),url('/assets/brass-macro-1920.webp');background-size:cover;background-position:center 43%;color:#f0eadc;padding-top:65px;padding-bottom:65px}
.page-close .eyebrow{color:#c9ad78}
.page-close h2{max-width:660px}
.page-close .close-link{border-color:#c9ad78;color:#dfc18a}
.service-details{position:relative;isolation:isolate;background:#080909;min-height:380px}
.service-details>.details-campaign{position:absolute;inset:0;z-index:-2}
.details-campaign::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080909e8,#080909d9 48%,#080909b0)}
.service-details>div:not(.campaign-art){position:relative;z-index:1}
.service-details>.brand-motion-toggle{left:40px;bottom:35px;z-index:3}
.service-details h2{margin-bottom:45px}
.service-details>.campaign-art img,.service-details>.campaign-art video{object-position:center}
@media(max-width:1100px) and (min-width:761px){
 .hero-intro>p:not(.eyebrow){font-size:28px}
 .service-details>.brand-motion-toggle{left:28px}
}
@media(max-width:760px){
 .hero{height:655px}
 .hero>.wordmark{top:23px;left:20px;right:auto;width:calc(100% - 40px);z-index:1}
 .hero-campaign{inset:145px -7% 145px 22%;overflow:visible;background:none}
 .hero-campaign picture{overflow:hidden}
 .hero-campaign img,.hero-campaign video{object-position:72% 50%}
 .hero-campaign::after{background:linear-gradient(180deg,#08090944,transparent 45%,#080909 100%)}
 .hero-owner{top:101px;left:-5%;width:72%;z-index:2}
 .hero-owner figcaption{bottom:15px}
 .hero-intro{left:20px;right:20px;bottom:32px;max-width:none}
 .hero-intro>p:not(.eyebrow){font-size:25px;max-width:350px;line-height:1.25}
 .hero-intro .button{max-width:none}
 .hero>.brand-motion-toggle{right:20px;top:420px;bottom:auto;font-size:9px;padding:8px 10px;gap:14px;min-height:40px}
 .page-close{padding-top:40px;padding-bottom:40px;background-image:linear-gradient(90deg,#090b0bf2,#090b0bba),url('/assets/brass-macro-960.webp');background-position:62% center}
 .page-close h2{font-size:42px}
 .service-details{min-height:0;padding-bottom:90px}
 .service-details h2{margin-bottom:25px}
 .service-details>.brand-motion-toggle{left:20px;bottom:25px;font-size:10px}
 .details-campaign::after{background:linear-gradient(90deg,#080909f0,#080909c4)}
 .service-details>.campaign-art img,.service-details>.campaign-art video{object-position:64% center}
}
@media(max-width:370px){
 .hero{height:630px}
 .hero>.wordmark{left:16px;width:calc(100% - 32px)}
 .hero-campaign{inset:140px -9% 155px 18%}
 .hero-owner{top:94px;left:-8%;width:76%}
 .hero-intro{left:16px;right:16px}
 .hero-intro>p:not(.eyebrow){font-size:23px}
 .hero>.brand-motion-toggle{right:16px;top:400px;font-size:8px;gap:10px}
 .page-close h2{font-size:36px}
 .service-details>.brand-motion-toggle{left:16px}
}
@media(prefers-reduced-motion:reduce){.campaign-art video{transition:none}}
