/* Motion surfaces are isolated from the protected Process stylesheet. */
.hero-line-mask{display:block;overflow:hidden;padding:.08em 0;margin:-.08em 0}
.hero-line{display:block}
.motion-label{display:inline-block;pointer-events:none}
.button.motion-control{transition:background-color 180ms ease,box-shadow 180ms ease;border-radius:999px}
.button.motion-control:hover{transform:none}
.button.motion-control:active{transform:scale(.97)}
.brief-line{position:relative;isolation:isolate}
.signal-rule{position:absolute;left:16px;right:16px;top:50%;height:1px;background:var(--green);z-index:-1;transform-origin:left;pointer-events:none}
.brief-line span{background:var(--paper)}
.brand-context.motion-brand .brand-context-grid{gap:20px}
.motion-brand .brand-context-grid article{position:relative;border:1px solid var(--line);border-radius:12px;padding:28px;background:#f7f8ee;box-shadow:0 8px 22px rgb(39 61 30/.035)}
.context-rule{position:absolute;left:28px;right:28px;top:0;height:2px;background:var(--green);transform-origin:left;pointer-events:none}
.context-number{position:absolute;right:26px;top:27px;color:#75856c;font-size:12px;font-variant-numeric:tabular-nums}
.motion-gallery .work-gallery__frame,.motion-gallery .work-gallery__item:hover .work-gallery__frame{transform:none;transition:none}
.preview-open{position:absolute;inset:0;border:0;background:transparent;cursor:zoom-in;border-radius:inherit;z-index:2}
.preview-open:focus-visible{outline:3px solid var(--green);outline-offset:-5px}
.preview-open::after{content:'↗';position:absolute;right:12px;bottom:12px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#f5f7edf0;color:var(--ink);opacity:0;transform:translateY(4px);transition:opacity 160ms ease,transform 160ms ease}
.preview-open:hover::after,.preview-open:focus-visible::after{opacity:1;transform:none}
.preview-dialog{border:0;background:transparent;color:var(--ink);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;overflow:visible;margin:auto}
.preview-dialog::backdrop{background:rgb(22 35 25/.75)}
.preview-dialog__body{display:flex;gap:30px;align-items:center;padding:24px;background:var(--paper);border:1px solid rgb(255 255 255/.5);border-radius:20px;box-shadow:0 24px 80px rgb(0 0 0/.2)}
.preview-dialog__media{width:min(33vw,380px,calc((100dvh - 100px)*.5625));flex-shrink:0;aspect-ratio:9/16}
.preview-dialog .work-gallery__frame{width:100%;height:100%;aspect-ratio:9/16;transform:none;transition:none;pointer-events:none}
.preview-dialog .work-gallery__frame img{width:100%;height:100%;object-fit:cover;transform:scale(1.1)}
.preview-dialog__copy{max-width:230px;padding:0 16px 0 0}
.preview-dialog__copy h2{font-size:34px;line-height:1.12;margin-bottom:18px}
.preview-dialog__copy p{font-size:14px;line-height:1.6;color:var(--ink-soft)}
.preview-close{display:block;margin-top:28px;background:transparent;border:1px solid var(--line);padding:10px 18px;border-radius:999px;min-height:44px;font-weight:600;cursor:pointer}
.preview-close:focus-visible{outline:3px solid var(--green);outline-offset:4px}
.motion-plans{position:relative;isolation:isolate}
.plan-focus{position:absolute;left:0;top:0;width:0;height:0;background:rgb(218 230 199/.65);border-radius:12px;z-index:-1;pointer-events:none}
.motion-plans .plan{position:relative;border-top-color:transparent}
.plan-rule{position:absolute;top:0;left:0;right:0;height:1px;background:var(--line);transform-origin:left;pointer-events:none}
.footer-scene{overflow:hidden}
@media(min-width:1101px){
  .motion-pitch h2{position:sticky;top:18vh;align-self:start}
  .motion-faq .faq-grid>div:first-child{position:sticky;top:15vh}
}
@media(max-width:760px){
  .hero-line-mask{overflow:visible}
  .hero-line{display:inline}
  .hero-line-mask{display:inline}
  .hero-line-mask+.hero-line-mask::before{content:' '}
  .motion-brand .brand-context-grid article{padding:24px}
  .context-rule{left:24px;right:24px}
  .preview-dialog__body{flex-direction:column;gap:18px;padding:16px}
  .preview-dialog__media{width:min(56vw,calc((100dvh - 250px)*.5625))}
  .preview-dialog__copy{max-width:300px;padding:0;text-align:center}
  .preview-dialog__copy h2{font-size:25px;margin-bottom:8px}
  .preview-dialog__copy p{font-size:12px}
  .preview-close{margin:12px auto 0}
}
@media(prefers-reduced-motion:reduce){
  .preview-open::after{transition:none}
  .motion-pitch h2,.motion-faq .faq-grid>div:first-child{position:static}
}

#contact .leaf{display:inline-block}
