@charset "UTF-8";
.service-hero { background:#183a2a;color:#fff;isolation:isolate; }
.service-hero-grid { position:relative;grid-template-columns:.88fr 1.12fr;gap:4%;min-height:680px;height:calc(100svh - 92px);max-height:1050px;padding-block:65px; }
.service-hero-copy { position:relative;z-index:2; }
.service-hero-copy .eyebrow { color:#d6dfce; }
.service-hero-copy .eyebrow>span { background:#d4aa5d; }
.service-hero-copy .service-lead { color:#e9eede; }
.service-hero-copy>p:not(.eyebrow):not(.service-lead) { color:#c7d5c1; }
.service-hero .arrow-link { color:#fff;border-color:#ffffffa0; }
.service-hero .arrow-link::before { background:#fff; }
.service-hero .arrow-link:hover { color:#142a1d;border-color:#fff; }
.service-gallery { position:absolute;top:0;right:-4vw;width:60%;height:100%;overflow:hidden;z-index:1;perspective:1800px;-webkit-mask-image:linear-gradient(transparent,#000 15%,#000 85%,transparent);mask-image:linear-gradient(transparent,#000 15%,#000 85%,transparent); }
.gallery-plane { position:absolute;inset:-12% -8% -20% 4%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;transform:rotateX(20deg) rotateY(-24deg) rotateZ(14deg);transform-origin:center; }
.gallery-lane { min-width:0; }
.gallery-track { display:flex;flex-direction:column;animation:hyx-gallery-up 36s linear infinite;animation-play-state:paused; }
.gallery-lane:nth-child(2) .gallery-track { animation-name:hyx-gallery-down;animation-duration:42s; }
.service-gallery.is-playing .gallery-track { animation-play-state:running; }
.gallery-cycle { display:flex;flex-direction:column;gap:24px;padding-bottom:24px; }
.service-shot { margin:0;background:#edf1e8;border:4px solid #ffffffd9;border-radius:9px;overflow:hidden;box-shadow:0 12px 28px #081e1c38; }
.service-shot img { display:block;width:100%;height:auto;aspect-ratio:48/35;object-fit:cover;object-position:center top;pointer-events:none;user-select:none;-webkit-user-drag:none; }
.service-hero-empty .service-hero-grid { grid-template-columns:1fr;min-height:570px; }
.service-hero-empty .service-hero-copy { max-width:760px; }
@keyframes hyx-gallery-up { from{transform:translateY(0)}to{transform:translateY(-50%)} }
@keyframes hyx-gallery-down { from{transform:translateY(-50%)}to{transform:translateY(0)} }
@media(hover:hover) and (pointer:fine) {
  .service-gallery:hover .gallery-track { animation-play-state:paused; }
}
@media(max-width:1100px) and (min-width:761px) {
  .service-hero-grid { min-height:650px;grid-template-columns:1fr 1fr; }
  .service-gallery { right:-6vw;width:57%; }
  .gallery-plane { gap:18px;inset:-8% -10% -20% 7%; }
}
@media(max-width:760px) {
  .service-hero-grid { display:block;min-height:0;height:auto;max-height:none;padding-top:50px;padding-bottom:0; }
  .service-hero-copy { max-width:540px; }
  .service-hero-copy h1 { font-size:34px; }
  .service-hero .service-lead { font-size:19px; }
  .service-gallery { position:relative;right:auto;top:auto;width:calc(100% + var(--gutter)*2);height:360px;margin:35px calc(var(--gutter)*-1) 0;perspective:1200px; }
  .gallery-plane { inset:-3% 4% -30%;gap:17px;transform:rotateX(12deg) rotateY(-12deg) rotateZ(10deg); }
  .gallery-cycle { gap:16px;padding-bottom:16px; }
  .service-shot { border-width:3px;border-radius:6px; }
  .service-hero-empty .service-hero-grid { min-height:0;padding-bottom:55px; }
}
@media(prefers-reduced-motion:reduce) {
  .service-gallery { overflow:auto; }
  .gallery-plane { position:relative;inset:auto;transform:none;padding:24px; }
  .gallery-track { animation:none!important;transform:none!important; }
  .gallery-cycle[aria-hidden=true],.service-shot[data-gallery-repeat] { display:none; }
}
