/* A light motion layer for the public homepage. Every section remains readable
   without JavaScript, observers, or animation support. */
body.home-page .corner-scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:40;pointer-events:none;background:linear-gradient(90deg,var(--ink,#142d29) 0%,#64843e 72%,var(--lime,#d3ef6c) 100%);transform:scaleX(var(--corner-page-progress,0));transform-origin:left center}
body.home-page .corner-motion-control{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--muted,#64716b);padding:6px 0;font-size:12px;line-height:1.5;min-height:32px;text-align:left;white-space:nowrap}
body.home-page .corner-motion-control::before{content:'';display:block;width:9px;height:9px;border-left:2px solid currentColor;border-right:2px solid currentColor}
body.home-page .corner-motion-control[data-paused=true]::before{width:0;height:0;border-left:7px solid currentColor;border-right:0;border-top:4px solid transparent;border-bottom:4px solid transparent}
body.home-page .corner-motion-control:hover{color:var(--ink,#142d29)}
body.home-page .corner-motion-control:disabled{cursor:default;opacity:.75}
body.home-page .corner-motion-control:disabled::before{width:8px;height:8px;border:1px solid currentColor;border-radius:50%}
body.home-page .corner-image-window{display:block;height:82px;overflow:hidden}
body.home-page .corner-image-window>img{display:block;width:100%;height:100%;object-fit:cover}
body.home-page.corner-motion-running .hero-browser{transform:translate3d(0,var(--corner-hero-y,0px),0)}
body.home-page.corner-motion-running .corner-image-window>img{transform:translate3d(0,var(--corner-image-y,0px),0) scale(1.12)}
body.home-page.corner-motion-running .hero-browser,
body.home-page.corner-motion-running .corner-image-window>img{will-change:transform}
body.home-page .process-grid>li.corner-motion-step{position:relative}
body.home-page.corner-motion-running .process-grid>li.corner-motion-step::before{content:'';position:absolute;top:-1px;left:0;width:100%;height:2px;background:var(--ink,#142d29);transform:scaleX(var(--corner-step-progress,0));transform-origin:left center;pointer-events:none}
body.home-page.corner-motion-running .process-number{transition:background-color .28s,color .28s,box-shadow .28s}
body.home-page.corner-motion-running .corner-step-active .process-number{background:var(--ink,#142d29);color:var(--lime,#d3ef6c);box-shadow:0 0 0 5px #142d2908}
body.home-page .desktop-nav a{position:relative}
body.home-page .desktop-nav a::after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:2px;background:#839b40;transform:scaleX(0);transform-origin:left center;transition:transform .22s}
body.home-page .desktop-nav a[aria-current=location]::after{transform:scaleX(1)}
html.corner-motion-off{scroll-behavior:auto}
body.home-page.corner-motion-off .corner-scroll-progress{display:none}
body.home-page.corner-motion-off .hero-browser,
body.home-page.corner-motion-off .corner-image-window>img{transform:none;will-change:auto}
body.home-page.corner-motion-off .button,
body.home-page.corner-motion-off .project-stage,
body.home-page.corner-motion-off .process-number,
body.home-page.corner-motion-off .desktop-nav a::after{transition:none}
body.home-page.corner-motion-off .button:hover,
body.home-page.corner-motion-off .work-card:hover .project-stage{transform:none}
@media(max-width:760px){body.home-page .corner-image-window{height:105px}body.home-page .corner-motion-control{min-height:36px;justify-content:center}}
@media(prefers-reduced-motion:reduce){
  html:has(body.home-page){scroll-behavior:auto}
  body.home-page .corner-scroll-progress{display:none}
  body.home-page *,body.home-page *::before,body.home-page *::after{animation:none!important;transition:none!important}
  body.home-page .hero-browser,body.home-page .corner-image-window>img,body.home-page .button:hover,body.home-page .work-card:hover .project-stage{transform:none!important;will-change:auto}
}
@media print{
  body.home-page .corner-scroll-progress,body.home-page .corner-motion-control{display:none!important}
  body.home-page *,body.home-page *::before,body.home-page *::after{animation:none!important;transition:none!important;transform:none!important;will-change:auto!important}
}
