.dot-opening{z-index:2147483001;color:#f2efe7;opacity:1;touch-action:pan-y;width:100%;max-width:none;height:100dvh;max-height:none;transition:opacity var(--opening-fade,.65s) cubic-bezier(.16,1,.3,1);background:#171717;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.dot-opening::backdrop{background:0 0}.dot-opening:not([open]){display:none}html:not([data-opening=pending]):not([data-opening=active]) .dot-opening{display:none!important}.dot-opening.dot-opening-leaving{opacity:0;pointer-events:none}.dot-opening canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.opening-constellation{pointer-events:none;background:radial-gradient(at 50% 39%,#2448ff0c,#0000 60%);position:absolute;inset:0}.opening-constellation:before,.opening-constellation:after{content:"";pointer-events:none;position:absolute;inset:0}.opening-constellation:before{background-image:radial-gradient(circle,#c8d2ff5c 0 .8px,#0000 1px),radial-gradient(circle,#c8d2ff42 0 .8px,#0000 1px);background-position:20% 23%,76% 47%;background-size:227px 293px,313px 199px}.opening-constellation:after{background-image:radial-gradient(circle,#f2efe733 0 .6px,#0000 .9px);background-position:63% 17%;background-size:179px 251px}.opening-top{inset:30px var(--gutter) auto;justify-content:space-between;gap:20px;font-size:12px;display:flex;position:absolute}.opening-top>span+span{color:#aaa9a2}.opening-play{color:#c8d2ff;text-align:center;white-space:nowrap;background:0 0;border:0;min-height:44px;padding:10px 16px;font-size:12px;transition:opacity .35s;position:absolute;top:86px;left:50%;transform:translate(-50%)}.opening-play span{color:#aaa9a2;margin-top:7px;font-size:10px;display:block}.opening-play-leaving{opacity:0;pointer-events:none}.opening-identity{left:var(--gutter);right:var(--gutter);pointer-events:none;opacity:0;transition:opacity .6s,transform .6s;position:absolute;bottom:clamp(140px,18vh,210px);transform:translateY(12px)}.opening-identity-visible{opacity:1;transform:none}.opening-identity h2{font-family:var(--sans);letter-spacing:-.04em;max-width:24ch;font-size:clamp(27px,3.8vw,58px);line-height:1.08}.opening-identity h2 em{color:#c8d2ff;font-size:1.13em}.opening-identity p{color:#aaa9a2;margin-top:18px;font-size:12px}.opening-bottom{bottom:34px;left:var(--gutter);right:var(--gutter);justify-content:space-between;align-items:end;gap:40px;display:flex;position:absolute}.opening-progress{color:#aaa9a2;grid-template-columns:minmax(160px,360px) 40px;align-items:center;gap:10px 18px;font-size:11px;display:grid}.opening-progress>span:first-child{grid-column:1/-1}.opening-progress progress{appearance:none;color:#2448ff;background:#41413f;border:0;width:100%;height:2px}.opening-progress progress::-webkit-progress-bar{background:#41413f}.opening-progress progress::-webkit-progress-value{background:#6c88ff;transition:width .2s}.opening-progress progress::-moz-progress-bar{background:#6c88ff}.opening-percent{font-variant-numeric:tabular-nums;color:#f2efe7;text-align:right}.opening-actions{flex-shrink:0;align-items:center;gap:28px;display:flex}.opening-actions button{min-height:44px;font-size:12px}.opening-sound{color:#fff;background:#2448ff;border-radius:30px;padding:12px 20px}.opening-sound span{margin-left:18px}.opening-sound:hover{background:#4263ff}.opening-skip{color:#f2efe7;background:0 0;padding:12px 0}.opening-skip span{margin-left:10px}.dot-opening :focus-visible{outline-offset:5px;outline:2px solid #c8d2ff}@media (min-width:1000px){.opening-identity{bottom:20vh}.opening-identity h2{max-width:24ch}}@media (max-width:640px){.opening-top{font-size:10px;top:24px}.opening-top>span+span{text-align:right;max-width:125px}.opening-identity{bottom:195px}.opening-identity h2{font-size:31px}.opening-identity p{margin-top:12px}.opening-bottom{display:block;bottom:24px}.opening-progress{grid-template-columns:1fr 35px}.opening-actions{justify-content:space-between;gap:16px;margin-top:22px}.opening-actions button{font-size:11px}}@media (prefers-reduced-motion:reduce){.dot-opening{transition:none;display:none!important}}
.button{isolation:isolate;transition:background .25s,color .25s,box-shadow .35s,transform .4s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;box-shadow:0 2px #162cb4,0 5px 16px #2448ff13}.button:before{content:"";z-index:-1;border-radius:inherit;background:radial-gradient(ellipse at var(--button-light,50%) 0%, #94aeffb3, transparent 67%);opacity:0;pointer-events:none;transition:opacity .35s;position:absolute;inset:-1px}.button:hover:before,.button:focus-visible:before{opacity:1}.button:hover,.button:focus-visible{box-shadow:0 4px #142aa5,0 12px 26px #2448ff24}.button>span[aria-hidden],.button-secondary>span[aria-hidden]{transition:translate .3s cubic-bezier(.16,1,.3,1);display:inline-block}.button:hover>span[aria-hidden],.button:focus-visible>span[aria-hidden]{translate:3px -3px}.button:active{scale:.97;box-shadow:0 1px #142aa5}.button-secondary{transition:background .25s,border-color .25s,transform .4s cubic-bezier(.16,1,.3,1)}.button-secondary:hover{border-color:var(--cobalt)}.hero-contact-link{text-underline-offset:6px;transition:color .25s,text-underline-offset .3s}.hero-contact-link:hover{color:#c8d2ff;text-underline-offset:9px}@media (hover:hover) and (pointer:fine){html[data-motion=enabled] [data-button-depth]{transform:perspective(700px) translate3d(var(--button-x,0px),var(--button-y,0px),0) rotateX(var(--button-rx,0deg)) rotateY(var(--button-ry,0deg));transition:transform .3s cubic-bezier(.16,1,.3,1),background .25s,color .25s,box-shadow .35s}}@media (prefers-reduced-motion:reduce){.button,.button-secondary,.button>span,.hero-contact-link{transition:none}.button:active{scale:1}}html[data-motion=paused] [data-button-depth]{transform:none}.button:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff38 50%,#0000 65%);position:absolute;inset:-40% -15%;transform:translate(-110%)}html[data-motion=enabled] .button:is(:hover,:focus-visible):not(:disabled):after{transition:transform .65s cubic-bezier(.2,.75,.2,1);transform:translate(110%)}.button:focus-visible{outline-color:var(--cobalt);outline-offset:5px}.contact-section .button:focus-visible{outline-color:var(--blue-pale)}.hero-contact-link,.scroll-link{min-height:44px}.hero-contact-link{align-items:center;display:inline-flex}.deck-filters button{min-height:44px}.service-row a{align-content:center;min-height:44px}.service-row a>span[aria-hidden],.scroll-link>span[aria-hidden],.deck-selected-mark{transition:translate .28s cubic-bezier(.16,1,.3,1),opacity .2s;display:inline-block}html[data-motion=enabled] .service-row a:is(:hover,:focus-visible)>span[aria-hidden]{translate:3px -3px}html[data-motion=enabled] .scroll-link:is(:hover,:focus-visible)>span[aria-hidden]{translate:0 4px}.deck-open:focus-visible span{transform:translate(3px,-3px)}.deck-arrows button:focus-visible{background:var(--cobalt);border-color:var(--blue-pale)}.deck-selector a:is(:hover,:focus-visible){color:var(--paper);border-color:var(--blue-pale)}html[data-motion=enabled] .deck-selector a:is(:hover,:focus-visible) .deck-selected-mark{translate:2px -2px}html[data-motion=enabled] :is(.button-secondary,.deck-arrows button,.hero-work-link):active{scale:.96}@media (pointer:coarse){.portrait-controls button{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.button,.button-secondary,.hero-work-link,.deck-arrows button{scale:1!important}.button,.button-secondary{transform:none!important}.button>span[aria-hidden],.service-row a>span[aria-hidden],.scroll-link>span[aria-hidden],.deck-selected-mark{translate:none!important}.hero-work-link>span,.deck-open span{transform:none!important}}html[data-motion=paused] :is(.button,.button-secondary,.hero-work-link,.deck-arrows button){scale:1}html[data-motion=paused] :is(.button,.button-secondary){transform:none!important}html[data-motion=paused] :is(.button>span[aria-hidden],.service-row a>span[aria-hidden],.scroll-link>span[aria-hidden],.deck-selected-mark){translate:none}html[data-motion=paused] :is(.hero-work-link>span,.deck-open span){transform:none}
