/* Local homepage: preserve native device components, scroll-driven 2D motion. */
.wab-local-home-content .local-home-goals { padding-bottom: 0!important; }
.wab-local-home-content .wb-project-marquee { background: #13131c!important; }
.wab-local-home-content .wb-project-marquee__track {
  padding-block: 60px!important; animation: none!important;
  transform: translate(var(--home-band-x,0px),var(--band-exit-y,0px))!important;
}
.wab-local-home-content .wb-project-marquee__item {
  transform: translateX(var(--home-device-x,0px)) rotate(calc(var(--mockup-rotation) + var(--home-device-turn,0deg)))!important;
}
.wab-local-home-content .wb-project-marquee__mockup--native { animation: none!important; transform: none!important; will-change: auto; }
.wab-local-home-content .wb-project-marquee .wb-device-slide {
  display: block!important; opacity: 1!important; visibility: visible!important; transform: none!important; transition: none!important;
}
/* All original path bounds remain inside the viewBox; only the section edge crops. */
.wab-local-home-content .local-home-ribbon {
  display: block; position: absolute; max-width: none; z-index: 0;
  pointer-events: none; overflow: visible; --ribbon-progress: 1;
}
.local-home-ribbon__surface { opacity: 1; }
.local-home-ribbon__stroke,.local-home-ribbon__mask-stroke {
  stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--ribbon-progress,1));
}
.wab-local-home-content .local-home-ribbon--questions {
  color: #39414c; width: 125%; height: 95%; left: -12%; top: 0;
}
.local-home-ribbon--questions .local-home-ribbon__stroke { display: none; }
.wab-local-home-content .local-home-ribbon--services {
  color: #2879eb; width: 80%; height: 112%; left: 12%; top: -8%;
}
.local-home-ribbon--services .local-home-ribbon__surface { display: none; }
.local-home-ribbon--services .local-home-ribbon__stroke { opacity: 1; }
.wab-local-home-content .local-home-ribbon--contact {
  color: #2d2e33; width: 78%; height: auto; aspect-ratio: 2230/1200;
  left: -12%; top: 34%;
}
.local-home-ribbon--contact .local-home-ribbon__surface { fill: #2d2e33; }
@media(max-width:767px) {
  .wab-local-home-content .wb-project-marquee__track { padding-block: 40px!important; }
  .wab-local-home-content .local-home-ribbon--questions { width: 210%; height: 75%; left: -55%; top: 12%; }
  .wab-local-home-content .local-home-ribbon--services { width: 150%; height: 105%; left: -25%; top: -4%; }
  .wab-local-home-content .local-home-ribbon--contact { width: 240%; height: auto; left: -65%; top: var(--contact-ribbon-top,60%); }
}
@media(prefers-reduced-motion:reduce) {
  .wab-local-home-content .wb-project-marquee__track { transform: none!important; }
  .wab-local-home-content .wb-project-marquee__item { transform: rotate(var(--mockup-rotation))!important; }
  .local-home-ribbon__stroke,.local-home-ribbon__mask-stroke { stroke-dashoffset: 0; }
}

/* Progressive enhancement: viewport focus stays below the original device band. */
.wab-local-home-content .local-home-band-dim {
  position: fixed; inset: 0; z-index: 40; background: #13131c;
  opacity: 0; pointer-events: none;
}
.wab-local-home-content .local-home-band-focus { position: relative; z-index: 41; }
@media(prefers-reduced-motion:reduce) {
  .wab-local-home-content .local-home-band-dim { display: none!important; opacity: 0!important; }
}

body .wab-local-home-content section.local-personal-contact .local-home-ribbon--contact { opacity: 1!important; }

/* A finite, native sticky chapter; only active after local JS enhancement. */
.wab-local-home-content .local-home-band-runway { position: relative; z-index: 41; }
.wab-local-home-content .local-home-band-runway.is-enhanced { height: calc(var(--band-height) + var(--band-hold)); }
body .wab-local-home-content .local-home-band-runway.is-enhanced > .wb-project-marquee {
  position: sticky!important; top: var(--band-top,0px); background: var(--band-focus-color,#13131c)!important;
}
@media(prefers-reduced-motion:reduce) {
  .wab-local-home-content .local-home-band-runway.is-enhanced { height: auto!important; }
  body .wab-local-home-content .local-home-band-runway > .wb-project-marquee { position: relative!important; top: auto; }
}
/* Avoid a body-only overflow scroll container intercepting native sticky. */
body:has(.wab-local-home-content .local-home-band-runway.is-enhanced) { overflow-x: clip!important; overflow-y: visible!important; }

/* Eleven unique projects, a wider horizontal composition and longer native journey. */
.wab-local-home-content .wb-project-marquee__group{width:165vw;aspect-ratio:3.2}
.wab-local-home-content .wb-project-marquee__item{width:9.5%}
.wab-local-home-content .wb-project-marquee__item:nth-child(1){left:0%;top:20%}
.wab-local-home-content .wb-project-marquee__item:nth-child(2){left:8%;top:0%}
.wab-local-home-content .wb-project-marquee__item:nth-child(3){left:16%;top:40%}
.wab-local-home-content .wb-project-marquee__item:nth-child(4){left:26%;top:7%}
.wab-local-home-content .wb-project-marquee__item:nth-child(5){left:35%;top:28%}
.wab-local-home-content .wb-project-marquee__item:nth-child(6){left:44%;top:0%}
.wab-local-home-content .wb-project-marquee__item:nth-child(7){left:53%;top:38%}
.wab-local-home-content .wb-project-marquee__item:nth-child(8){left:62%;top:18%}
.wab-local-home-content .wb-project-marquee__item:nth-child(9){left:72%;top:0%}
.wab-local-home-content .wb-project-marquee__item:nth-child(10){left:81%;top:40%}
.wab-local-home-content .wb-project-marquee__item:nth-child(11){left:91%;top:10%}
@media(max-width:767px){.wab-local-home-content .wb-project-marquee__group{width:290vw;aspect-ratio:1.7}.wab-local-home-content .wb-project-marquee__item{width:10%}}

/* The project images leave quietly while the next chapter is already readable. */
.wab-local-home-content .wb-project-marquee__track { opacity: var(--band-device-opacity,1); }
@media(prefers-reduced-motion:reduce) { .wab-local-home-content .wb-project-marquee__track { opacity: 1!important; } }
/* Match the approved help/cases palette even against the editorial band override. */
body.wab-local-ui-contract.wab-local-ui-contract.wab-local-ui-contract .wab-local-home-content .wb-project-marquee { background: var(--band-focus-color,#21212d)!important; }

/* Ben: no independent color panel behind the mockup band.
   Let the existing page/focus backdrop show through throughout entry and exit. */
body.wab-local-ui-contract.wab-local-ui-contract.wab-local-ui-contract .wab-local-home-content .wb-project-marquee{background:transparent!important}

/* The sticky runway is the same dark surface as the immediately surrounding chapters. */
.wab-local-home-content .local-home-band-runway{background:var(--home-dark,#21212d)}

/* Honest client artwork and one real silent drone clip; no simulated app counters. */
.wab-local-home-content .wb-project-marquee__item:nth-child(12){left:101%;top:28%}
.wab-local-home-content .wb-project-marquee__mockup--artwork .wb-device-slide img{inset:0;width:100%!important;height:100%!important;object-fit:contain;object-position:center}
.wab-local-home-content .home-project-video{position:absolute;inset:8.5% 3.5% 2%;width:93%;height:89.5%;object-fit:cover;border-radius:0 0 11.5% 11.5%/0 0 5.8% 5.8%;z-index:2;pointer-events:none}

.wab-local-home-content .home-project-video{opacity:0}.wab-local-home-content .home-project-video.is-playing{opacity:1}

/* Fit a short landscape viewport below the measured shown header, without changing portrait. */
.wab-local-home-content .wb-project-marquee.is-short-landscape .wb-project-marquee__track{padding-block:8px!important}
.wab-local-home-content .wb-project-marquee.is-short-landscape .wb-project-marquee__group{height:var(--band-short-scene-height);aspect-ratio:auto}
.wab-local-home-content .wb-project-marquee.is-short-landscape .wb-project-marquee__item{width:calc(var(--band-short-scene-height)*.3)}
.wab-local-home-content .wb-project-marquee__item{opacity:var(--home-device-clear-opacity,1)}

.wab-local-home-content .wb-project-marquee__item:nth-child(13){left:111%;top:8%}.wab-local-home-content .wb-project-marquee__item:nth-child(14){left:121%;top:38%}
