/* One motion and navigation system for all MONKY pages. */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease var(--reveal-delay,0ms),transform .65s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms)}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.design-header #design-nav{position:relative}
.design-header .service-menu summary{display:flex;align-items:center;gap:7px;padding:10px 0;border-bottom:0;white-space:nowrap}
.design-header .service-menu summary::after{content:'';display:block;flex:none;width:.38em;height:.38em;margin-left:0;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-.1em) rotate(45deg)}
.design-header .service-menu summary::-webkit-details-marker{display:none}
.nav-indicator{position:absolute;left:0;top:0;height:3px;background:var(--red);pointer-events:none;transition:transform .25s ease,width .25s ease;z-index:2}
.floating-advisor.advisor{position:fixed;z-index:100;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));width:90px;height:90px;border-width:3px;box-shadow:0 5px 25px #0005;transition:transform .25s ease,box-shadow .25s ease}
.floating-advisor.advisor>span{border-width:3px;width:25%;height:25%}
.floating-advisor:focus-visible{outline:3px solid var(--red);outline-offset:5px}
.carousel-frame{position:relative;min-width:0}
.carousel-frame:not(.carousel-active){display:contents}
.carousel-frame.carousel-active{padding-bottom:28px}
.round-controls[hidden]{display:none}
.round-controls{position:absolute;inset:0;pointer-events:none;font-family:SairaNav,Arial,sans-serif}
.circle-arrow{position:absolute;top:var(--controls-top,50%);transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;border:1.5px solid currentColor;border-radius:50%;background:var(--control-bg,#fff);color:var(--control-ink,#171717);padding:0;pointer-events:auto;transition:background .2s ease,color .2s ease,opacity .2s ease;box-shadow:0 2px 8px #0001}
.circle-arrow.previous{left:-55px}.circle-arrow.next{right:-55px}
.circle-arrow svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.circle-arrow:disabled{opacity:.32;cursor:default;box-shadow:none}
.round-status{position:absolute;bottom:0;left:50%;transform:translateX(-50%);font-size:13px;line-height:20px;white-space:nowrap;font-variant-numeric:tabular-nums;color:inherit}
.home-history,.home-locations{--control-bg:#191919;--control-ink:#fff}
.config-main{position:relative}
.config-main .circle-arrow.previous{left:15px}.config-main .circle-arrow.next{right:15px}
.config-main .round-status{bottom:12px;background:#fff;padding:1px 10px;border-radius:20px;color:#111}
.shop-page .design-header{position:relative;background:#080808}
.shop-page .home-shop>h1{font-family:Outer,Arial,sans-serif;letter-spacing:var(--heading-tracking);font-size:clamp(30px,3vw,58px);font-weight:900;text-align:center;margin-bottom:calc(4.8 * var(--unit))}
@media(hover:hover) and (pointer:fine){
 .home-service-card>img,.home-project-card>img,.home-shop-card>img,.home-locations article>img,.feature>img,.product-card>img,.config-main>img{transition:transform .6s cubic-bezier(.2,.65,.3,1)}
 .home-service-card:hover>img,.home-project-card:hover>img,.home-shop-card:hover>img,.home-locations article:hover>img,.feature:hover>img,.product-card:hover>img,.config-main:hover>img,.configurator[data-configurator=aros] .config-main:hover>img{transform:scale(1.035)}
 .floating-advisor:hover{transform:scale(1.07);box-shadow:0 7px 28px #0006}
 .circle-arrow:not(:disabled):hover{background:var(--red);border-color:var(--red);color:#fff}
}
@media(max-width:1100px){.circle-arrow.previous{left:-40px}.circle-arrow.next{right:-40px}}
@media(max-width:800px){
 .design-header #design-nav{position:absolute}
 .floating-advisor.advisor{width:66px;height:66px;right:max(16px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom))}
 .design-header #design-nav>a,.design-header .service-menu{width:fit-content}
 .circle-arrow.previous{left:-14px}.circle-arrow.next{right:-14px}
 .carousel-frame.carousel-active{padding-bottom:24px}
 .config-main .circle-arrow.previous{left:8px}.config-main .circle-arrow.next{right:8px}
 .shop-page .home-shop>h1{font-size:28px;margin-bottom:28px}
}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.nav-indicator,.floating-advisor{transition:none}}
