/* Motion follows the workshop: mark out, unfold, assemble, move through. */
html:has(.ug-site){scroll-behavior:auto}
.ug-hero-window{position:relative;overflow:hidden;isolation:isolate;background:#c3d1e6}
.ug-motion-on{--ug-ease:cubic-bezier(.19,1,.22,1)}
.ug-motion-on .ug-hero-window:after{content:'';position:absolute;inset:13px;pointer-events:none;background:linear-gradient(#ffffff80,#ffffff80) left top/24px 1px no-repeat,linear-gradient(#ffffff80,#ffffff80) left top/1px 24px no-repeat,linear-gradient(#ffffff80,#ffffff80) right bottom/24px 1px no-repeat,linear-gradient(#ffffff80,#ffffff80) right bottom/1px 24px no-repeat;opacity:.75}
.ug-motion-on .ug-hero-window:before{content:'';position:absolute;z-index:1;inset:0 auto 0 0;width:24%;pointer-events:none;background:linear-gradient(90deg,transparent,#e3e8f030,transparent);border-right:1px solid #ffffff55;transform:translateX(-110%);animation:ug-light-pass 9s cubic-bezier(.4,0,.2,1) infinite;animation-play-state:paused}
.ug-motion-on .ug-hero.is-in-view .ug-hero-window:before{animation-play-state:running}
.ug-motion-on .ug-hero-photo{transform:scale(1.035) translateY(var(--ug-pan,0px));transform-origin:50% 60%;will-change:auto}
.ug-motion-on .ug-hero-window:hover .ug-hero-photo{filter:saturate(1)}
.ug-motion-on .ug-header:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--ug-accent);transform:scaleX(var(--ug-read-progress,0));transform-origin:left;pointer-events:none}
.ug-word-mask{display:inline-block;vertical-align:top;overflow:clip;padding-bottom:.13em;margin-bottom:-.13em;max-width:100%;overflow-wrap:anywhere}
.ug-word{display:inline-block;transform-origin:0 100%;max-width:100%;overflow-wrap:anywhere}
.ug-motion-on .ug-section:after{content:'';position:absolute;left:var(--ug-gutter);right:var(--ug-gutter);top:0;height:1px;background:var(--ug-accent);transform:scaleX(0);transform-origin:left;opacity:.55;pointer-events:none}
.ug-motion-on .ug-section.is-in-view:after{animation:ug-rule 1.5s var(--ug-ease) both}
.ug-motion-on .ug-section[data-motion-kind=projects]:after,.ug-motion-on .ug-section[data-motion-kind=blog]:after{transform-origin:right}
.ug-motion-on .ug-kicker{position:relative}
.ug-motion-on .ug-section>.ug-kicker:before{content:'';display:inline-block;width:14px;height:1px;margin:0 9px 3px 0;background:currentColor;transform-origin:left}
.ug-motion-on .ug-section.is-in-view>.ug-kicker:before{animation:ug-tick 1s var(--ug-ease) both}
.ug-motion-on .ug-format-tabs{position:relative}
.ug-motion-on .ug-format-tab{transition:color .25s,padding-left .45s var(--ug-ease);position:relative}
.ug-motion-on .ug-format-tab[aria-selected=true]{padding-left:21px}
.ug-format-rail{position:absolute;top:0;left:0;width:3px;height:40px;background:var(--ug-accent);pointer-events:none;transform-origin:top;z-index:1}
.ug-format-stage{isolation:isolate;position:relative}
.ug-motion-on .ug-format-stage.is-changing>img{opacity:.65;filter:saturate(.3)}
.ug-motion-on .ug-format-stage>img{transition:opacity .25s,filter .35s}
.ug-format-blade{position:absolute;inset:0 0 auto;height:0;aspect-ratio:1.3;background:var(--ug-paper);pointer-events:none;z-index:2;opacity:0}
.ug-motion-on .ug-product-card,.ug-motion-on .ug-feature,.ug-motion-on .ug-checklist li,.ug-motion-on .ug-article-card,.ug-motion-on .ug-process li{position:relative}
.ug-motion-on :is(.ug-product-card,.ug-feature,.ug-checklist li,.ug-article-card):before{content:'';position:absolute;left:0;top:-1px;right:0;height:1px;background:var(--ug-accent);transform:scaleX(0);transform-origin:right;transition:transform .6s var(--ug-ease);pointer-events:none}
.ug-motion-on :is(.ug-product-card,.ug-feature,.ug-checklist li,.ug-article-card):is(:hover,:focus-within):before{transform:scaleX(1);transform-origin:left}
.ug-motion-on .ug-card-photo img{transition:transform .9s var(--ug-ease),filter .6s;transform:scale(1.015)}
.ug-motion-on .ug-product-card:is(:hover,:focus-visible) .ug-card-photo img{transform:scale(1.08) translateX(2%);filter:saturate(1)}
.ug-motion-on .ug-card-copy{transition:translate .6s var(--ug-ease)}
.ug-motion-on .ug-product-card:hover .ug-card-copy{translate:5px 0}
.ug-motion-on .ug-project-card>img{transform:perspective(1200px) rotateY(var(--ug-turn,0deg));object-position:50% var(--ug-image-y,50%);transition:filter .6s;transform-origin:center}
.ug-motion-on .ug-project-card:hover>img{filter:saturate(1)}
.ug-motion-on .ug-project-caption{position:relative}
.ug-motion-on .ug-project-caption:before{content:'';position:absolute;left:-12px;top:0;width:2px;height:32px;background:var(--ug-accent);transform-origin:top;transform:scaleY(0);transition:transform .65s var(--ug-ease)}
.ug-motion-on .ug-project-card:is(:hover,:focus-visible) .ug-project-caption:before{transform:scaleY(1)}
.ug-motion-on .ug-wide-image img{object-position:50% var(--ug-image-y,50%)}
.ug-motion-on .ug-layer-scene{position:relative;overflow:hidden}
.ug-motion-on .ug-layer-scene:before{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 39px,#404c5e10 39px 40px),repeating-linear-gradient(90deg,transparent 0 39px,#404c5e10 39px 40px);mask-image:linear-gradient(90deg,transparent,#000000 40%,#000000 70%,transparent);transform:translateY(var(--ug-grid-shift,0px))}
.ug-motion-on [data-layer-part]{transform-box:fill-box;transform-origin:center;transition:opacity .5s,filter .5s,transform .65s var(--ug-ease);cursor:pointer}
.ug-motion-on [data-layer-part].is-active{filter:drop-shadow(0 5px 4px #29313c1c);transform:translateY(-8px)}
.ug-motion-on .ug-layer-choices button{position:relative;transition:color .25s}
.ug-motion-on .ug-layer-choices button:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--ug-accent);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ug-ease)}
.ug-motion-on .ug-layer-choices button[aria-pressed=true]:after{transform:scaleX(1);transform-origin:left}
.ug-motion-on .ug-process{position:relative}
.ug-motion-on .ug-process:before{content:'';position:absolute;left:0;top:0;width:100%;height:1px;background:var(--ug-accent);transform:scaleX(0);transform-origin:left;pointer-events:none;opacity:.7}
.ug-motion-on .ug-process.is-in-view:before{animation:ug-rule 2s var(--ug-ease) both}
.ug-motion-on .ug-process li:after{content:'';position:absolute;left:0;top:-4px;width:7px;height:7px;border:1px solid var(--ug-accent);background:var(--ug-paper);transform:rotate(45deg);transition:background .4s,transform .4s}
.ug-motion-on .ug-process li:hover:after{background:var(--ug-accent);transform:rotate(135deg)}
.ug-motion-on .ug-process.is-in-view li:after{animation:ug-route-stop 8s ease-in-out infinite;animation-delay:calc(var(--ug-step,0)*1.3s)}
.ug-motion-on .ug-table tr{transition:background .35s}
.ug-motion-on .ug-table tr:hover{background:#06449b07}
.ug-motion-on .ug-table td:first-child{transition:color .35s}
.ug-motion-on .ug-table tr:hover td:first-child{color:var(--ug-accent)}
.ug-motion-on .ug-brief-board{position:relative;overflow:hidden}
.ug-motion-on .ug-brief-plan{width:100%;height:auto;max-height:280px;overflow:visible}
.ug-motion-on .ug-plan-dimensions{opacity:.85}
.ug-motion-on .ug-brief-inputs label{position:relative}
.ug-motion-on :is(.ug-brief-inputs,.ug-form-grid) label:not(.ug-honey):after{content:'';position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--ug-accent);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ug-ease);pointer-events:none}
.ug-motion-on :is(.ug-brief-inputs,.ug-form-grid) label:focus-within:after{transform:scaleX(1);transform-origin:left}
.ug-motion-on .ug-form-grid>label{position:relative}
.ug-motion-on .ug-form .ug-file{transition:background .4s,border-color .4s}
.ug-motion-on .ug-form .ug-file:is(:hover,:focus-within),.ug-motion-on .ug-form .ug-file.has-file{background:#e7edf755;border-color:var(--ug-accent)}
.ug-motion-on .ug-form .ug-file:after{display:none}
.ug-motion-on .ug-form button[type=submit]{position:relative;overflow:hidden}
.ug-motion-on .ug-form button[type=submit]:disabled:after{content:'';position:absolute;bottom:0;left:0;width:35%;height:3px;background:currentColor;animation:ug-send 1.2s ease-in-out infinite}
.ug-motion-on .wp-block-details{overflow:clip}
.ug-motion-on .wp-block-details summary:after{transition:transform .5s var(--ug-ease)}
.ug-motion-on .wp-block-details summary:hover:after{transform:rotate(90deg)}
.ug-motion-on .wp-block-details[open] summary:hover:after{transform:rotate(180deg)}
.ug-motion-on .ug-article-card>a{transition:translate .55s var(--ug-ease)}
.ug-motion-on .ug-article-card:hover>a{translate:8px 0}
.ug-motion-on .ug-contact-big{width:fit-content;background:linear-gradient(var(--ug-accent),var(--ug-accent)) 0 100%/0 1px no-repeat;transition:background-size .65s var(--ug-ease)}
.ug-motion-on .ug-contact-big:hover{background-size:100% 1px}
.ug-motion-on .ug-button{position:relative;isolation:isolate;overflow:hidden;transition:background .3s,color .3s,border-color .3s}
.ug-motion-on .ug-button:before{content:'';position:absolute;inset:0;background:currentColor;opacity:.09;z-index:-1;transform:translateX(-105%) skewX(-15deg);transition:transform .6s var(--ug-ease);pointer-events:none}
.ug-motion-on .ug-button:is(:hover,:focus-visible):before{transform:translateX(0) skewX(0)}
.ug-motion-on .ug-button svg{transition:transform .55s var(--ug-ease)}
.ug-motion-on .ug-button:is(:hover,:focus-visible) svg{transform:translateX(6px)}
.ug-motion-on :is(.ug-nav,.ug-hero-directions,.ug-footer-grid) a{position:relative}
.ug-motion-on :is(.ug-nav,.ug-hero-directions) a:after{content:'';position:absolute;bottom:6px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ug-ease)}
.ug-motion-on :is(.ug-nav,.ug-hero-directions) a:hover:after{transform:scaleX(1);transform-origin:left}
.ug-motion-on .ug-footer-grid a{transition:translate .45s var(--ug-ease)}
.ug-motion-on .ug-footer-grid a:hover{translate:4px 0}
.ug-motion-on .ug-footer{position:relative;overflow:clip}
.ug-motion-on .ug-footer:before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:#889ebc;transform:scaleX(0);transform-origin:right}
.ug-motion-on .ug-footer.is-in-view:before{animation:ug-rule 1.6s var(--ug-ease) both}
.ug-motion-paused *,.ug-motion-paused *:before,.ug-motion-paused *:after{animation-play-state:paused!important}
.ug-motion-off :is(.ug-format-rail,.ug-process-route){display:none}
.ug-motion-off .ug-word-mask{overflow:visible}
@keyframes ug-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ug-tick{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ug-light-pass{0%,15%{transform:translateX(-110%)}60%,100%{transform:translateX(530%)}}
@keyframes ug-route-stop{0%,12%,48%,100%{background:var(--ug-paper);transform:rotate(45deg)}24%,36%{background:var(--ug-accent);transform:rotate(135deg)}}
@keyframes ug-send{from{transform:translateX(-110%)}to{transform:translateX(400%)}}
@media(max-width:650px){
 .ug-motion-on .ug-hero-window:after{inset:8px}
 .ug-motion-on .ug-format-tab[aria-selected=true]{padding-left:15px}
 .ug-motion-on .ug-brief-plan{max-height:230px}
 .ug-motion-on .ug-process:before{width:1px;height:100%;transform:scaleY(0);transform-origin:top;left:3px}
 .ug-motion-on .ug-process.is-in-view:before{animation-name:ug-vertical-rule}
 .ug-motion-on .ug-process li{padding-left:24px}
 .ug-motion-on .ug-process li:after{left:0;top:30px}
 .ug-motion-on .ug-process li{border-top-color:transparent}
 .ug-motion-on .ug-product-card:hover .ug-card-copy,.ug-motion-on .ug-article-card:hover>a{translate:0}
}
@media(hover:none){.ug-motion-on .ug-hero-photo{transform:scale(1.025)}.ug-motion-on .ug-product-card:hover .ug-card-photo img{transform:scale(1.015)}}
@keyframes ug-vertical-rule{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@media(prefers-reduced-motion:reduce){.ug-word-mask{overflow:visible}.ug-hero-photo{transform:none!important}.ug-motion-on .ug-section:after,.ug-motion-on .ug-footer:before{transform:none}.ug-motion-on .ug-process li:after{animation:none!important}}
