html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
@font-face{font-family:Manrope;src:url(/fonts/Manrope-VariableFont_wght.ttf)format("truetype");font-style:normal;font-weight:200 800;font-display:swap}:root{--canvas:#050507;--surface:#0d0d12;--surface-raised:#15151d;--surface-soft:#211a2b;--primary:#8a4fff;--primary-hover:#9b68ff;--primary-active:#7538e6;--primary-deep:#5b2fb0;--accent-pink:#ff5fa2;--accent-orange:#f28a5b;--accent-orange-hover:#ff9e76;--accent-orange-active:#da7047;--on-accent-orange:#1b1110;--poster-surface:#d6d5d8;--poster-surface-hover:#e3e1e4;--poster-text-muted:#5a5460;--text:#fff;--text-secondary:#c8c5d0;--text-muted:#918c9d;--border:#2c2934;--border-strong:#4a4357;--focus:#c6a8ff;--success:#41c98e;--error:#ff5c70;--radius-small:8px;--radius-medium:16px;--radius-media:22px;--radius-block:40px;--radius-pill:9999px;--header-height:80px;--page-padding:clamp(20px, 4vw, 72px);--page-width:1600px;--spatial-transition-duration:1.5s;--spatial-transition-easing:linear(0 0%, .00116 5%, .00856 10%, .02661 15%, .05792 20%, .10352 25%, .16308 30%, .23517 35%, .31744 40%, .40687 45%, .5 50%, .59313 55%, .68256 60%, .76483 65%, .83692 70%, .89648 75%, .94208 80%, .97339 85%, .99144 90%, .99884 95%, 1 100%)}*{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:auto}body{color:var(--text);background:var(--canvas);text-rendering:optimizelegibility;margin:0;font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.5;overflow-x:clip}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:4px}img{max-width:100%;display:block}.page-shell{width:min(100%, var(--page-width));padding-inline:var(--page-padding);margin-inline:auto}.section-block{border-radius:var(--radius-block);width:calc(100% - 24px);margin:12px auto 0}section[id],footer[id]{scroll-margin-top:calc(var(--header-height) + 28px)}.hero{isolation:isolate;background:var(--canvas);min-height:calc(100svh - 24px);position:relative;overflow:hidden}.hero-background,.hero-background img,.hero-shade{width:100%;height:100%;position:absolute;inset:0}.hero-background{z-index:-3}.language-switcher{z-index:120;right:max(20px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));border:1px solid var(--border-strong);background:var(--surface);border-radius:999px;gap:4px;padding:4px;display:flex;position:fixed;box-shadow:0 6px 20px #0005}.language-switcher button{min-width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:50%;font:600 12px Manrope,sans-serif}.language-switcher button[aria-pressed=true]{background:var(--accent-orange);color:var(--on-accent-orange)}.language-switcher button:hover{background:var(--surface-soft);color:var(--accent-orange)}.language-switcher button[aria-pressed=true]:hover{background:var(--accent-orange-hover);color:var(--on-accent-orange)}.language-switcher button:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.language-switcher button:disabled{cursor:progress;opacity:.65}.hero-background img{object-fit:cover}.hero-shade{z-index:-2;background:linear-gradient(#0505071f 0%,#0505070a 55%,#050507b8 100%),radial-gradient(circle at 52%,#0000 0 22%,#0505072e 72%)}.site-header{z-index:100;width:calc(100% - 24px);height:var(--header-height);grid-template-columns:minmax(112px,140px) 1fr auto;align-items:center;gap:clamp(24px,4vw,64px);padding:0 clamp(16px,3vw,40px);display:grid;position:absolute;top:12px;left:12px}.logo-link{align-items:center;width:clamp(112px,10vw,140px);height:64px;display:flex}.shared-site-header{z-index:1001}.shared-site-header[data-page=subpage]{position:fixed}.shared-site-header[data-page=subpage] .header-actions>.button{background:#050507d1}.shared-site-header[data-transitioning=true]{pointer-events:none}.brand-logo{width:100%;height:auto}.logo-link .brand-logo{object-fit:contain;width:auto;max-width:100%;height:60px}.header-logo-frame{aspect-ratio:1139/487;background:#000;border-radius:12px;width:100%;display:block;overflow:hidden}.logo-link .header-logo-frame .brand-logo{object-fit:cover;object-position:center 67.4%;width:100%;height:100%}.desktop-nav{z-index:110;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);white-space:nowrap;color:var(--text-secondary);background:#14141894;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:2px;padding:5px;font-size:14px;display:flex;position:fixed;top:28px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0000002e}.desktop-nav a{transition:color .16s,background-color .16s}.desktop-nav>a,.desktop-nav .contact-navigation-trigger{box-sizing:border-box;min-height:40px;font:inherit;justify-content:center;align-items:center;line-height:20px;display:inline-flex}.contact-navigation{position:relative}.contact-navigation-trigger{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:9px 12px;transition:color .18s,background-color .18s;display:flex}.contact-navigation-trigger:hover,.contact-navigation-trigger:focus-visible,.contact-navigation[data-open=true] .contact-navigation-trigger{color:var(--text);background:#ffffff1f}.contact-navigation-trigger:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.contact-navigation-chevron{transform-box:view-box;transform-origin:50%;flex:0 0 16px;transition:transform .4s;display:block}.contact-navigation[data-open=true] .contact-navigation-chevron{transform:rotate(180deg)}.contact-navigation-dropdown{opacity:0;visibility:hidden;pointer-events:none;min-width:218px;padding-top:12px;transition:opacity .35s,transform .45s cubic-bezier(.16,1,.3,1),visibility 0s .35s;position:absolute;top:100%;right:0;transform:translateY(-8px)}.contact-navigation[data-open=true] .contact-navigation-dropdown{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.contact-navigation-links{color:#171717;background:#f5f5f5;border-radius:20px;padding:8px 12px;box-shadow:0 14px 38px #00000040}.desktop-nav .contact-navigation-links a,.mobile-menu nav .contact-navigation-links a{color:#171717;border-bottom:0;border-radius:8px;padding:13px 8px;font-size:14px;line-height:1.4;display:block}.contact-navigation-links a+a{border-top:1px solid #0000001f}.desktop-nav .contact-navigation-links a:hover,.mobile-menu nav .contact-navigation-links a:hover,.contact-navigation-links a:focus-visible{outline-offset:-2px;background:#e6e6e6}.contact-about{border:1px solid #ffffff1a;border-radius:28px;grid-column:1/-1;scroll-margin-top:120px}.contact-page .contact-intro{position:static}@media (max-width:767px){.mobile-menu .contact-navigation{border-bottom:1px solid #ffffff1a;padding-block:6px}.mobile-menu .contact-navigation-trigger{border-radius:999px;justify-content:space-between;width:100%;padding:16px 12px}.mobile-menu .contact-navigation-dropdown{grid-template-rows:0fr;min-width:0;padding-top:0;transition:grid-template-rows .6s cubic-bezier(.16,1,.3,1),opacity .35s,transform .45s,visibility 0s .35s;display:grid;position:relative}.mobile-menu .contact-navigation-links{min-height:0;padding:0 12px;overflow:hidden}.mobile-menu .contact-navigation[data-open=true] .contact-navigation-dropdown{grid-template-rows:1fr;transition-delay:0s}}@media (prefers-reduced-motion:reduce){.contact-navigation-dropdown,.contact-navigation[data-open=true] .contact-navigation-dropdown{transition:opacity .12s,visibility 0s .12s;transform:none}.contact-navigation-chevron{transition:none}.mobile-menu .contact-navigation-dropdown{transition:opacity .12s,visibility 0s .12s;transform:none}}.route-stage{background:var(--canvas);min-height:100dvh}.route-stage.is-leaving{pointer-events:none;will-change:transform;animation:route-leave-left var(--spatial-transition-duration) var(--spatial-transition-easing) both}.route-stage.is-entering{will-change:transform;animation:route-enter-right var(--spatial-transition-duration) var(--spatial-transition-easing) both}::view-transition-group(root){animation-duration:var(--spatial-transition-duration);animation-timing-function:var(--spatial-transition-easing)}::view-transition-image-pair(root){isolation:auto}::view-transition-old(root){width:100%;height:100%;animation-duration:var(--spatial-transition-duration);animation-timing-function:var(--spatial-transition-easing);mix-blend-mode:normal;animation-fill-mode:both}::view-transition-new(root){width:100%;height:100%;animation-duration:var(--spatial-transition-duration);animation-timing-function:var(--spatial-transition-easing);mix-blend-mode:normal;animation-fill-mode:both}::view-transition-old(root){animation-name:route-leave-left}::view-transition-new(root){animation-name:route-enter-right}html[data-route-transition-direction=backward]::view-transition-old(root){animation-name:route-leave-right}html[data-route-transition-direction=backward]::view-transition-new(root){animation-name:route-enter-left}.route-stage.direction-backward.is-leaving{animation-name:route-leave-right}.route-stage.direction-backward.is-entering{animation-name:route-enter-left}@keyframes route-leave-left{0%{transform:translate(0,0)}to{transform:translate(-100vw)}}@keyframes route-enter-right{0%{transform:translate(100vw)}to{transform:translate(0,0)}}@keyframes route-leave-right{0%{transform:translate(0,0)}to{transform:translate(100vw)}}@keyframes route-enter-left{0%{transform:translate(-100vw)}to{transform:translate(0,0)}}.route-stage.transition-curtain,.route-curtain{--curtain-rise-duration:.9s;--curtain-reveal-duration:.6s;--curtain-leave-duration:.325s}.route-stage.with-site-header{padding-top:calc(var(--header-height) + 8px)}.page-context-nav{width:min(100%, var(--page-width));padding:4px var(--page-padding) 0;margin-inline:auto}.route-stage.transition-curtain.is-leaving{animation:route-curtain-content-leave var(--curtain-leave-duration) ease-in-out both;will-change:opacity}.route-stage.transition-curtain.is-entering{will-change:opacity;animation:route-curtain-content var(--curtain-reveal-duration) cubic-bezier(.16, 1, .3, 1) both}.route-curtain{z-index:1000;pointer-events:none;background:linear-gradient(to top, var(--canvas) 0% 30%, #15151da6 58%, #15151d26 82%, transparent 100%);visibility:hidden;height:240lvh;position:fixed;inset:auto 0 0;transform:translateY(100%)}.route-curtain.is-leaving{visibility:visible;pointer-events:auto;will-change:transform;animation:route-curtain-rise var(--curtain-rise-duration) cubic-bezier(.65, 0, .35, 1) both}.route-curtain.is-entering{visibility:visible;pointer-events:auto;will-change:transform, opacity;animation:route-curtain-rise var(--curtain-rise-duration) cubic-bezier(.65, 0, .35, 1) both, route-curtain-reveal var(--curtain-reveal-duration) cubic-bezier(.16, 1, .3, 1) both}@keyframes route-curtain-rise{0%{transform:translateY(100%)}to{transform:translate(0,0)}}@keyframes route-curtain-reveal{0%{opacity:var(--curtain-start-opacity,1)}to{opacity:0}}@keyframes route-curtain-content{0%{opacity:.35}to{opacity:1}}@keyframes route-curtain-content-leave{0%{opacity:1}to{opacity:.35}}@media (max-width:767px){.route-stage.transition-curtain,.route-curtain{--curtain-rise-duration:.7s;--curtain-reveal-duration:.45s;--curtain-leave-duration:.25s}}@media (prefers-reduced-motion:reduce){.route-stage.transition-curtain,.route-curtain{--curtain-rise-duration:.4s;--curtain-reveal-duration:.25s;--curtain-leave-duration:.2s}.route-curtain.is-leaving{animation:.4s ease-in-out both route-curtain-soft-cover;transform:none}.route-curtain.is-entering{will-change:opacity;animation:route-curtain-reveal var(--curtain-reveal-duration) ease-out both;transform:none}}@keyframes route-curtain-soft-cover{0%{opacity:0}to{opacity:1}}.desktop-nav a{border-radius:999px;padding:9px 12px}.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--text);background:#ffffff1a}.header-actions{white-space:nowrap;grid-column:3;justify-self:end;align-items:center;gap:10px;padding-right:56px;display:flex}.cart-button{cursor:pointer;z-index:110;width:46px;height:46px;color:var(--accent-orange);background:#050507b8;border:1px solid #ffffff29;border-radius:50%;place-items:center;transition:border-color .16s,background-color .16s,box-shadow .22s cubic-bezier(.16,1,.3,1);display:grid;position:fixed;top:30px;right:52px}.cart-button:hover,.cart-button:focus-visible{border-color:var(--accent-orange);background:#f28a5b1a;box-shadow:0 12px 28px #f28a5b2e}.buyer-entry{z-index:110;min-height:46px;color:var(--text);background:#050507b8;border:1px solid #ffffff40;border-radius:999px;justify-content:center;align-items:center;padding:12px 18px;font-size:14px;display:inline-flex;position:fixed;top:30px;right:108px}.buyer-entry:hover{border-color:var(--accent-orange)}.buyer-entry:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.site-header:has(.buyer-entry) .header-actions{padding-right:206px}@media (min-width:768px) and (max-width:1400px){.site-header:has(.buyer-entry) .header-actions>.button{display:none}}@media (min-width:768px) and (max-width:1199px){.buyer-entry{top:86px;right:52px}}@media (max-width:767px){.buyer-entry{display:none}.site-header:has(.buyer-entry) .header-actions{padding-right:0}}.cart-count{background:var(--primary);min-width:20px;height:20px;color:var(--text);border:2px solid #050507f2;border-radius:999px;place-items:center;padding:0 4px 1px;font-size:11px;font-weight:700;line-height:1;display:grid;position:absolute;top:-4px;right:-4px}.button{min-height:52px;color:var(--text);white-space:nowrap;background:#0505076b;border:1px solid #f28a5b80;border-radius:999px;justify-content:center;align-items:center;padding:14px 24px;font-size:14px;font-weight:650;line-height:1.3;transition:background-color .16s,border-color .16s,box-shadow .22s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden}.button:after{content:"";background:var(--accent-orange);opacity:.48;transform-origin:50%;height:3px;transition:transform .22s cubic-bezier(.16,1,.3,1);animation:4.8s ease-in-out infinite button-ambient;position:absolute;bottom:0;left:14px;right:14px;transform:scaleX(.32)}.button:hover{border-color:var(--accent-orange);background:#f28a5b1a;box-shadow:0 14px 30px #f28a5b33}.button:active{border-color:var(--accent-orange);background:#f28a5b29;box-shadow:0 7px 18px #f28a5b24}.button:hover:after,.button:focus-visible:after{opacity:1;animation:none;transform:scaleX(1)}.button:focus-visible{outline-color:var(--accent-orange)}.button-small{min-height:44px;padding:11px 18px}.mobile-menu{display:none}.hero-content{min-height:calc(100svh - var(--header-height));flex-direction:column;justify-content:center;align-items:flex-start;padding-top:clamp(56px,8vh,96px);padding-bottom:clamp(72px,11vh,136px);display:flex}.hero h1{letter-spacing:-.025em;text-wrap:balance;width:min(850px,100%);margin:0;font-size:clamp(60px,7.2vw,104px);font-weight:300;line-height:1;animation:.7s cubic-bezier(.16,1,.3,1) both hero-enter}.hero-content>p{width:min(560px,100%);color:var(--text-secondary);margin:28px 0 0;font-size:20px;animation:.7s cubic-bezier(.16,1,.3,1) .1s both hero-enter}.hero-actions{gap:12px;margin-top:36px;animation:.7s cubic-bezier(.16,1,.3,1) .18s both hero-enter;display:flex}.section{padding-top:clamp(112px,13vw,208px);padding-bottom:clamp(112px,13vw,208px)}.section.section-block{padding-inline:clamp(24px,6vw,96px);overflow:hidden}.projects{background:#09090d}.section-heading{width:min(760px,100%);margin-left:clamp(0px,8vw,128px)}.section h2,.site-footer h2{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(42px,5vw,72px);font-weight:300;line-height:1.05}.section-heading>p:last-child,.exocad-copy>p:last-child,.keyboard-copy>p:last-child,.posters-title-wrap>p:last-child,.about>p,.footer-brand>p{max-width:580px;color:var(--text-secondary);margin:26px 0 0;font-size:18px}.project-layout{grid-template-columns:minmax(0,1.75fr) minmax(260px,.75fr);align-items:end;gap:clamp(24px,4vw,64px);margin-top:clamp(64px,8vw,128px);display:grid}.placeholder-media{border-radius:var(--radius-media);background:var(--surface);border:1px solid #ffffff14;min-height:620px;position:relative;overflow:hidden}.placeholder-media img{object-fit:cover;opacity:.74;filter:saturate(.72);transition:transform .6s cubic-bezier(.16,1,.3,1),opacity .3s}.placeholder-media:hover img{opacity:.88;transform:scale(1.025)}.placeholder-media>p{z-index:1;color:var(--text-secondary);margin:0;font-size:14px;position:absolute;bottom:22px;left:24px}.project-note{border-top:1px solid var(--border);min-height:320px;color:var(--text-secondary);flex-direction:column;justify-content:space-between;padding:34px;display:flex}.project-note span{color:var(--text-muted);font-size:14px}.project-note p{margin:0;font-size:clamp(24px,2.2vw,34px);font-weight:300;line-height:1.25}.exocad-section{background:var(--surface)}.exocad-grid{grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(48px,8vw,144px);display:grid}.exocad-copy{padding-left:clamp(0px,3vw,48px)}.accent-orange{color:var(--accent-orange)}.exocad-media{min-height:720px}.exocad-section-link{margin-top:28px}.keyboard-panel{background:0 0;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);align-items:center;gap:clamp(48px,8vw,136px);min-height:760px;display:grid}.keyboard-section{background:var(--primary-deep)}.keyboard-copy>p:last-child{color:var(--text)}.keyboard-media{border-radius:var(--radius-media);background:#0505074d;border:1px solid #ffffff40;place-items:center;min-height:480px;display:grid;position:relative;overflow:hidden}.posters{background:linear-gradient(135deg,#454548 0%,#242427 48%,#09090b 100%)}.posters-title-wrap{width:min(760px,100%)}.poster-carousel{display:contents}.poster-controls{flex-direction:column;grid-area:1/2;justify-content:flex-start;align-self:center;gap:8px;min-height:48px;display:flex}.poster-controls button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:48px;height:48px;color:var(--text);background:0 0;border:1px solid #ffffff2e;border-radius:50%;place-items:center;transition:border-color .16s,background-color .16s;display:grid;position:relative;overflow:hidden}.poster-controls button:after{--arc-grow:120deg;--arc-gap:0deg;--poster-arrow-ring:conic-gradient(from var(--arc-origin), transparent 0deg var(--arc-gap), var(--accent-orange) var(--arc-gap) var(--arc-grow), transparent var(--arc-grow) calc(360deg - var(--arc-grow)), var(--accent-orange) calc(360deg - var(--arc-grow)) calc(360deg - var(--arc-gap)), transparent calc(360deg - var(--arc-gap)) 360deg);content:"";background:var(--poster-arrow-ring);-webkit-mask-composite:xor;opacity:.9;animation:var(--arrow-ring-animation,arrow-ring-orbit 5.2s linear infinite);animation-direction:var(--arrow-ring-direction,normal);border-radius:50%;padding:2px;transition:opacity .16s;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.poster-controls button:first-child:after{--arrow-ring-direction:reverse;--arc-origin:90deg}.poster-controls button:last-child:after{--arc-origin:270deg}.poster-controls button:focus-visible{border-color:var(--accent-orange);background:#f28a5b1a}.poster-controls button:focus-visible:after{background:var(--accent-orange);opacity:1;animation:none}.poster-controls button:active{border-color:var(--accent-orange);background:#f28a5b1a}.poster-controls button:active:after{background:var(--accent-orange);opacity:1;animation:none}@media (hover:hover) and (pointer:fine){.poster-controls button:hover{border-color:var(--accent-orange);background:#f28a5b1a}.poster-controls button:hover:after{background:var(--accent-orange);opacity:1;animation:none}}.poster-controls button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.poster-rail{overscroll-behavior-inline:contain;scrollbar-width:none;cursor:grab;grid-auto-columns:clamp(250px,25vw,340px);grid-auto-flow:column;gap:14px;margin-top:clamp(64px,8vw,112px);padding:10px 2px;display:block;overflow-x:auto}.poster-rail.is-dragging,.poster-rail.is-animating{scroll-snap-type:none}.poster-rail.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.poster-rail.is-dragging .poster-card .poster-card-inner{transform:scale(1)}.poster-track{grid-auto-flow:column;grid-auto-columns:inherit;gap:inherit;width:max-content;display:grid}.poster-loop-copy{display:contents}.poster-rail::-webkit-scrollbar{display:none}.poster-card{scroll-snap-align:start;min-width:0}.poster-card>a{height:100%;color:inherit;display:block}.poster-card-inner{border-radius:var(--radius-media);background:var(--poster-surface);color:#17121e;height:100%;padding:10px;transition:transform .32s cubic-bezier(.16,1,.3,1);transform:scale(1)}.poster-art{aspect-ratio:4/5;background:var(--canvas);border-radius:16px;position:relative;overflow:hidden}.poster-art img{object-fit:cover;opacity:.9;filter:saturate(.72)contrast(1.08)}.poster-art img.poster-image-original{object-fit:contain;opacity:1;filter:none}@media (hover:hover) and (pointer:fine){.poster-card:hover .poster-card-inner{transform:scale(.95)}.poster-card:active .poster-card-inner{transform:scale(.93)}}.poster-art span{z-index:1;color:var(--text);font-size:14px;font-weight:600;position:absolute;bottom:14px;left:16px}.poster-meta{padding:18px 8px 10px}.poster-meta h3{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600}.poster-meta p{color:var(--poster-text-muted);margin:6px 0 0;font-size:14px}.about{background:var(--surface-raised);grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:end;gap:clamp(56px,10vw,180px);display:grid}.about>p{margin-bottom:8px}.tile-mosaic{grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;width:calc(100% - 24px);margin:8px auto 0;display:grid}.tile-mosaic .section-block{width:100%;margin:0}.tile-mosaic .section{padding:0}.tile-mosaic .projects,.tile-mosaic .exocad-section,.tile-mosaic .keyboard-section,.tile-mosaic .posters,.tile-mosaic .about{isolation:isolate;position:relative;overflow:hidden}.tile-mosaic .projects{grid-column:span 6;min-height:clamp(780px,66vw,940px)}.tile-mosaic .projects .section-heading{z-index:3;text-shadow:0 3px 28px #050507eb;width:min(620px,100% - 56px);margin:0;position:absolute;top:clamp(34px,4vw,64px);left:clamp(28px,4vw,64px)}.tile-mosaic .projects .section-heading>p:last-child{max-width:430px}.tile-mosaic .project-layout{margin:0;display:block;position:absolute;inset:0}.tile-mosaic .project-main{border:0;border-radius:0;min-height:0;position:absolute;inset:0}.tile-mosaic .project-main:after,.tile-mosaic .exocad-media:after{content:"";z-index:1;pointer-events:none;position:absolute;inset:0}.tile-mosaic .project-main:after{background:linear-gradient(#050507cc 0%,#0000 42%),linear-gradient(#0000 52%,#050507ad 100%)}.tile-mosaic .project-main>p{z-index:2;bottom:clamp(28px,4vw,56px);left:clamp(28px,4vw,64px)}.tile-mosaic .project-note{z-index:3;-webkit-backdrop-filter:blur(16px);background:#050507a3;border:1px solid #ffffff26;border-radius:16px;width:min(300px,100% - 48px);min-height:210px;padding:26px;position:absolute;bottom:clamp(24px,3vw,48px);right:clamp(24px,3vw,48px)}.tile-mosaic .project-note p{font-size:clamp(22px,2vw,30px)}.tile-mosaic .exocad-section{grid-column:span 6;min-height:clamp(780px,66vw,940px)}.tile-mosaic .exocad-grid{display:block;position:absolute;inset:0}.tile-mosaic .exocad-media{border:0;border-radius:0;min-height:0;position:absolute;inset:0}.tile-mosaic .exocad-media:after{background:linear-gradient(#0000 0%,#0505076b 44%,#050507f5 100%)}.tile-mosaic .exocad-copy{z-index:3;text-shadow:0 3px 28px #050507e6;padding:clamp(28px,4vw,58px);position:absolute;bottom:0;left:0;right:0}.tile-mosaic .exocad-copy h2{font-size:clamp(44px,4.4vw,64px)}.tile-mosaic .keyboard-section{grid-column:1/-1;min-height:780px}.tile-mosaic .keyboard-panel{min-height:0;display:block;position:absolute;inset:0}.tile-mosaic .keyboard-copy{z-index:4;text-shadow:0 3px 28px #050507db;width:min(760px,62%);padding:clamp(30px,4vw,58px);position:absolute;top:0;left:0}.tile-mosaic .keyboard-copy h2{font-size:clamp(44px,4.4vw,64px)}.keyboard-button{margin-top:32px}.tile-mosaic .keyboard-media{background:var(--canvas);border:0;border-radius:0;min-height:0;display:block;position:absolute;inset:0;overflow:hidden}.keyboard-gallery{touch-action:pan-y;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.keyboard-gallery-track{z-index:0;width:100%;height:100%;position:relative;overflow:hidden}.keyboard-gallery-slide{background:var(--surface-raised);height:100%;margin:0;position:absolute;inset:0;overflow:hidden}.keyboard-gallery-slide.is-base{z-index:1}.keyboard-gallery-slide.is-overlay{z-index:2;transition:transform var(--spatial-transition-duration) var(--spatial-transition-easing)}.keyboard-gallery-slide.is-forward.is-preparing{transform:translate(100%)}.keyboard-gallery-slide.is-forward.is-running,.keyboard-gallery-slide.is-backward.is-preparing{transform:translate(0,0)}.keyboard-gallery-slide.is-backward.is-running{transform:translate(100%)}.keyboard-gallery-slide.is-running{will-change:transform}.keyboard-gallery-image{object-fit:cover;object-position:center}.keyboard-gallery-shade{z-index:1;pointer-events:none;background:linear-gradient(90deg,#050507eb 0%,#050507ad 34%,#0000 72%),linear-gradient(#0505078a 0%,#0000 42%,#05050794 100%);position:absolute;inset:0}.keyboard-gallery-controls{z-index:3;justify-content:space-between;align-items:center;gap:28px;display:flex;position:absolute;bottom:clamp(24px,3vw,44px);left:clamp(24px,4vw,58px);right:clamp(24px,4vw,58px)}.keyboard-gallery-position{min-width:0;color:var(--text);font-variant-numeric:tabular-nums;text-shadow:0 2px 14px #000c;align-items:center;gap:12px;font-size:13px;font-weight:650;display:flex}.keyboard-gallery-progress{gap:4px;width:min(36vw,420px);display:flex}.keyboard-gallery-progress button{cursor:pointer;background:0 0;border:0;width:100%;min-width:10px;height:44px;padding:0;position:relative}.keyboard-gallery-progress button:after{content:"";background:#ffffff57;height:2px;transition:transform .18s,background-color .18s;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)scaleY(1)}.keyboard-gallery-progress button:hover:after,.keyboard-gallery-progress button:focus-visible:after{background:#ffffffc2}.keyboard-gallery-progress button.is-active:after{background:var(--accent-orange);transform:translateY(-50%)scaleY(2)}.keyboard-gallery-progress button:focus-visible,.keyboard-gallery-arrows button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.keyboard-gallery-arrows{gap:10px;display:flex}.keyboard-gallery-arrows button{width:52px;height:52px;color:var(--text);cursor:pointer;background:#050507a8;border:1px solid #ffffff6b;border-radius:50%;place-items:center;padding:0;transition:border-color .18s,background-color .18s,color .18s;display:grid;position:relative;overflow:hidden}.keyboard-gallery-arrows button:after{--arc-grow:120deg;--arc-gap:0deg;--keyboard-arrow-ring:conic-gradient(from var(--arc-origin), transparent 0deg var(--arc-gap), var(--accent-orange) var(--arc-gap) var(--arc-grow), transparent var(--arc-grow) calc(360deg - var(--arc-grow)), var(--accent-orange) calc(360deg - var(--arc-grow)) calc(360deg - var(--arc-gap)), transparent calc(360deg - var(--arc-gap)) 360deg);content:"";background:var(--keyboard-arrow-ring);-webkit-mask-composite:xor;opacity:.9;pointer-events:none;animation:var(--arrow-ring-animation,arrow-ring-orbit 5.2s linear infinite);animation-direction:var(--arrow-ring-direction,normal);border-radius:50%;padding:2px;transition:opacity .16s;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.keyboard-gallery-arrows button:first-child:after{--arrow-ring-direction:reverse;--arc-origin:90deg}.keyboard-gallery-arrows button:last-child:after{--arc-origin:270deg}.keyboard-gallery-arrows button:focus-visible:after{background:var(--accent-orange);opacity:1;animation:none}.keyboard-gallery-arrows button:active{color:var(--text);background:var(--accent-orange-active)}.keyboard-gallery-arrows button:active:after{background:var(--accent-orange);opacity:1;animation:none}@media (hover:hover) and (pointer:fine){.keyboard-gallery-arrows button:hover{border-color:var(--accent-orange);color:var(--accent-orange);background:#050507db}.keyboard-gallery-arrows button:hover:after{background:var(--accent-orange);opacity:1;animation:none}}.tile-mosaic .posters{grid-column:1/-1;grid-template-columns:minmax(280px,.72fr) 48px minmax(0,2fr);align-items:start;column-gap:clamp(12px,1.3vw,20px);padding:clamp(30px,4vw,58px);display:grid}.tile-mosaic .posters-title-wrap{z-index:2;grid-area:1/1;align-self:start;width:min(700px,100%);position:relative}.tile-mosaic .posters-title-wrap h2{font-size:clamp(44px,4.4vw,64px)}.tile-mosaic .poster-rail{grid-area:1/3;grid-auto-columns:clamp(250px,22vw,310px);margin-top:0}.tile-mosaic .poster-card{aspect-ratio:5906/8268;height:auto}.tile-mosaic .poster-card-inner{background:var(--canvas);color:var(--text);padding:0;position:relative;overflow:hidden}.tile-mosaic .poster-art{aspect-ratio:auto;border-radius:inherit;height:100%}.tile-mosaic .poster-meta{z-index:2;background:linear-gradient(#0000 0%,#050507ad 48%,#050507f7 100%);padding:78px 22px 22px;position:absolute;bottom:0;left:0;right:0}.tile-mosaic .poster-meta p{color:var(--text-secondary)}.tile-mosaic .about{background:var(--surface-raised);grid-column:1/-1;min-height:580px;padding:clamp(34px,6vw,92px)}.tile-mosaic .about:before,.tile-mosaic .about:after{content:"";pointer-events:none;position:absolute;inset:0}.tile-mosaic .about:before{z-index:-2;opacity:.68;background:url(/media/hero-polygon-desktop.webp) 50% 62%/cover;transform:scale(1.04)}.tile-mosaic .about:after{z-index:-1;background:linear-gradient(90deg,#050507f0 0%,#0505079e 54%,#05050733 100%)}.tile-mosaic .about-copy,.tile-mosaic .about>p{z-index:1;text-shadow:0 3px 28px #050507e0;position:relative}.site-footer{border-radius:var(--radius-block);background:#000;border:1px solid #ffffff14;width:calc(100% - 24px);margin:12px auto;padding-top:clamp(96px,10vw,160px);overflow:hidden}.footer-main{display:block}.footer-brand .brand-logo{width:min(340px,78vw);margin-bottom:72px}.footer-brand h2{max-width:860px}.footer-contact-actions{align-items:center;gap:12px;margin-top:32px;display:flex}.footer-contact-button{border-color:var(--accent-orange);background:#f28a5b1f;box-shadow:0 12px 28px #f28a5b29}.footer-socials{align-items:center;gap:12px;display:flex}.footer-socials a{width:52px;height:52px;color:var(--text);background:0 0;border:1px solid #fff3;border-radius:50%;place-items:center;transition:color .16s,border-color .16s,background-color .16s;display:grid}.footer-socials a:active{border-color:var(--accent-orange);color:var(--accent-orange);background:#f28a5b1a}.footer-socials a:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-color:var(--accent-orange);color:var(--accent-orange)}@media (hover:hover) and (pointer:fine){.footer-socials a:hover{border-color:var(--accent-orange);color:var(--accent-orange);background:#f28a5b1a}}.footer-bottom{min-height:80px;color:var(--text-muted);border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:24px;margin-top:112px;font-size:14px;display:flex}@keyframes hero-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-soft-enter{0%{opacity:0}to{opacity:1}}@keyframes button-ambient{0%,to{opacity:.36;transform:scaleX(.28)}50%{opacity:.82;transform:scaleX(.72)}}@property --arc-grow{syntax:"<angle>";inherits:false;initial-value:0deg}@property --arc-gap{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes poster-control-circumference{0%{--arc-grow:0deg;--arc-gap:0deg;opacity:.36}20%{--arc-grow:60deg;--arc-gap:0deg;opacity:.58}60%{--arc-grow:180deg;--arc-gap:90deg;opacity:.86}to{--arc-grow:180deg;--arc-gap:180deg;opacity:.36}}.contact-world{isolation:isolate;border-radius:var(--radius-block);background:var(--canvas);width:calc(100% - 24px);margin:8px auto;position:relative;overflow:hidden}.contact-world:before,.contact-world:after{content:"";z-index:-1;pointer-events:none;opacity:.8;background:url(/media/hero-polygon-desktop.webp) 100% 0/auto 100% no-repeat;width:60%;position:absolute;inset-block:0;-webkit-mask-image:linear-gradient(90deg,#0000 0% 35%,#0000004d 65%,#000 100%);mask-image:linear-gradient(90deg,#0000 0% 35%,#0000004d 65%,#000 100%)}.contact-world:before{left:0;transform:scaleX(-1)}.contact-world:after{right:0}.contact-page{width:min(100%, var(--page-width));min-height:calc(100dvh - 88px);padding:clamp(48px, 5vw, 80px) var(--page-padding) clamp(80px, 9vw, 144px);grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);align-items:start;gap:clamp(56px,8vw,136px);margin-inline:auto;display:grid}.contact-intro{position:sticky;top:128px}.contact-intro h1{letter-spacing:-.04em;text-wrap:balance;max-width:9ch;margin:0;font-size:clamp(58px,7vw,96px);font-weight:300;line-height:.96}.contact-intro h1 span{color:var(--accent-orange)}.contact-intro>p{max-width:560px;color:var(--text-secondary);margin:30px 0 0;font-size:18px;line-height:1.6}.contact-direct-button{border-color:var(--accent-orange);background:#f28a5b1f;gap:10px;margin-top:30px;box-shadow:0 12px 28px #f28a5b29}.contact-direct-button+.contact-channels{margin-top:36px}.contact-channels{border-top:1px solid var(--border);margin-top:clamp(44px,4vw,64px)}.contact-channels a{border-bottom:1px solid var(--border);min-height:78px;color:var(--text-secondary);grid-template-columns:34px minmax(0,1fr) 24px;align-items:center;gap:16px;padding:16px 4px;transition:color .18s,border-color .18s;display:grid}.contact-channels a>span{gap:3px;min-width:0;display:grid}.contact-channels strong{color:var(--text);font-size:16px;font-weight:600}.contact-channels small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.contact-channel-arrow{transition:transform .22s cubic-bezier(.16,1,.3,1)}.contact-channels a:hover,.contact-channels a:focus-visible{color:var(--accent-orange);border-color:#f28a5b7a}.contact-channels a:hover .contact-channel-arrow,.contact-channels a:focus-visible .contact-channel-arrow{transform:translate(3px,-3px)}.contact-form-panel{border-radius:var(--radius-block);background:linear-gradient(145deg,#252529 0%,#151519 52%,#09090b 100%);min-width:0;padding:clamp(28px,3vw,44px)}.contact-form-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(30px,3vw,40px);display:flex}.contact-form-heading h2,.contact-form-success h2{letter-spacing:-.03em;margin:0;font-size:clamp(32px,3.4vw,48px);font-weight:400;line-height:1.04}.contact-form-heading p{color:var(--text-muted);margin:0 0 5px;font-size:13px}.contact-form-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.contact-field-wide{grid-column:1/-1}.contact-form-panel .checkout-field textarea{resize:vertical;border:1px solid var(--border-strong);border-radius:var(--radius-medium);background:var(--surface);width:100%;min-height:132px;color:var(--text);font:inherit;outline:0;padding:16px;font-size:16px;font-weight:450;line-height:1.5;transition:border-color .16s,background-color .16s,box-shadow .18s}.contact-form-panel .checkout-field textarea:hover{border-color:#f28a5ba8}.contact-form-panel .checkout-field textarea:focus{border-color:var(--accent-orange);background:#f28a5b0d;box-shadow:0 8px 22px #f28a5b1a}.contact-form-panel .checkout-field textarea[aria-invalid=true]{border-color:var(--error)}.contact-consent{margin-top:22px}.contact-submit{border-color:var(--accent-orange);background:#f28a5b1f;width:100%;margin-top:26px;box-shadow:0 12px 28px #f28a5b29}.contact-submit:disabled{cursor:not-allowed;box-shadow:none;opacity:.7}.contact-submit:disabled:hover{border-color:var(--accent-orange);box-shadow:none;background:#f28a5b1f}.contact-form-success{flex-direction:column;justify-content:center;align-items:flex-start;min-height:560px;display:flex}.contact-form-success>svg{color:var(--accent-orange);margin-bottom:26px}.contact-form-success p{max-width:560px;color:var(--text-secondary);margin:22px 0 34px;font-size:17px;line-height:1.6}.shop-catalog{--shop-intro-space:calc(var(--header-height) + 8px + clamp(32px, 4vw, 56px) + clamp(24px, 3vw, 44px) * 1.1 + clamp(36px, 4vw, 56px))}.shop-world{isolation:isolate;background:var(--canvas);position:relative}.shop-world:before,.shop-world:after{content:"";z-index:-1;pointer-events:none;opacity:.85;background:url(/media/hero-polygon-desktop.webp) 100% 0/auto 100% no-repeat;width:60vw;position:absolute;top:0;bottom:0;-webkit-mask-image:linear-gradient(90deg,#0000 0% 42%,#0000002e 64%,#000 100%);mask-image:linear-gradient(90deg,#0000 0% 42%,#0000002e 64%,#000 100%)}.shop-world:before{left:calc(50% - 50vw);transform:scaleX(-1)}.shop-world:after{right:calc(50% - 50vw)}.shop-poster-block:first-child:before,.shop-poster-block:first-child:after{top:calc(-1 * var(--shop-intro-space))}.shop-page{width:min(100%, var(--page-width));min-height:calc(100dvh - 88px);padding:clamp(32px, 4vw, 56px) var(--page-padding) clamp(80px, 9vw, 144px);margin-inline:auto}.shop-heading{text-align:center;justify-items:center;gap:20px;margin-bottom:clamp(36px,4vw,56px);display:grid}.shop-heading h1{letter-spacing:-.03em;white-space:nowrap;max-width:100%;margin:0;font-size:clamp(24px,3vw,44px);font-weight:300;line-height:1.1}.shop-heading h1 span{color:var(--accent-orange);display:inline}.shop-description{text-align:center;max-width:640px;margin:clamp(40px,5vw,72px) auto 0}.shop-description>p{color:var(--text-secondary);margin:0;font-size:18px;line-height:1.55}.shop-groups{--shop-group-gap:clamp(40px, 5vw, 72px);gap:var(--shop-group-gap);display:grid}.shop-group-divider{top:calc(var(--shop-group-gap) / -2);background:var(--border);pointer-events:none;height:1px;position:absolute;left:0;right:0;transform:translateY(-50%)}.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(48px,6vw,88px) clamp(16px,2vw,28px);padding-block:clamp(16px,2vw,28px);display:grid;position:relative}.shop-card{min-width:0;color:var(--text);gap:20px;display:grid}.shop-card-image{aspect-ratio:4/5;border-radius:var(--radius-media);background:linear-gradient(145deg,#3b3b3f 0%,#202024 58%,#09090b 100%);position:relative;overflow:hidden}.shop-card-image img{object-fit:contain;padding:clamp(14px,2vw,26px);transition:transform .52s cubic-bezier(.16,1,.3,1)}.shop-card-copy{justify-content:space-between;align-items:end;gap:20px;display:flex}.shop-card-copy h2{letter-spacing:-.03em;margin:0;font-size:clamp(26px,2.6vw,40px);font-weight:400;line-height:1}.shop-card-copy p{color:var(--text-secondary);margin:10px 0 0;font-size:16px}.shop-card-status{color:var(--text-muted);white-space:nowrap;flex:none;align-items:center;gap:7px;font-size:13px;display:inline-flex}.shop-card-status>span{background:var(--accent-orange);border-radius:50%;width:6px;height:6px}.shop-card:focus-visible{outline:2px solid var(--focus);outline-offset:6px;border-radius:var(--radius-media)}@media (hover:hover) and (pointer:fine){.shop-card:hover .shop-card-image img{transform:scale(.965)}}.shop-empty{flex-direction:column;justify-content:center;align-items:flex-start;min-height:50dvh;display:flex}.shop-empty h2{letter-spacing:-.04em;margin:0;font-size:clamp(44px,7vw,88px);font-weight:300;line-height:.96}.shop-empty p{color:var(--text-secondary);margin:24px 0 36px;font-size:18px}.exocad-index-page{width:min(100%, var(--page-width));min-height:calc(100dvh - 88px);padding:12px var(--page-padding) clamp(80px, 9vw, 144px);margin-inline:auto}.exocad-index-hero{border-radius:var(--radius-block);background:var(--surface);min-height:min(760px,100dvh - 112px);position:relative;overflow:hidden}.exocad-index-background{object-fit:cover;object-position:center;opacity:.76;filter:saturate(.72)contrast(1.04)}.exocad-index-overlay{background:linear-gradient(90deg,#050507f0 0%,#050507b3 46%,#0505072e 82%),linear-gradient(#0000 54%,#050507d1 100%);position:absolute;inset:0}.exocad-index-logo{width:clamp(174px,16vw,220px);position:absolute;top:clamp(28px,4vw,54px);left:clamp(28px,4vw,58px)}.exocad-index-logo img{width:100%;height:auto;display:block}.exocad-index-copy{z-index:1;width:min(760px,100% - 56px);position:absolute;bottom:clamp(76px,9vw,126px);left:clamp(28px,5vw,72px)}.exocad-index-copy h1{letter-spacing:-.04em;text-wrap:balance;max-width:8ch;margin:0;font-size:clamp(62px,9vw,132px);font-weight:300;line-height:.9;animation:.7s cubic-bezier(.16,1,.3,1) both hero-enter}.exocad-index-copy h1 span{color:var(--accent-orange)}.exocad-index-copy p{max-width:650px;color:var(--text-secondary);margin:34px 0 0;font-size:18px;line-height:1.6;animation:.7s cubic-bezier(.16,1,.3,1) .1s both hero-enter}.exocad-index-status{z-index:1;color:var(--text-muted);margin:0;font-size:14px;position:absolute;bottom:clamp(28px,4vw,52px);right:clamp(28px,4vw,58px)}.footer-bottom a{align-items:center;min-height:44px;transition:color .16s;display:inline-flex}.footer-bottom a:hover,.footer-bottom a:focus-visible{color:var(--text)}.service-page{width:min(100%, var(--page-width));min-height:calc(100dvh - 88px);padding:clamp(40px, 6vw, 96px) var(--page-padding) clamp(72px, 9vw, 144px);place-items:center;margin-inline:auto;display:grid}.service-state{border-radius:var(--radius-block);background:linear-gradient(145deg, var(--border) 0%, var(--surface-raised) 54%, var(--surface) 100%);width:min(100%,980px);padding:clamp(36px,7vw,96px)}.service-state h1,.privacy-document h1{letter-spacing:-.04em;text-wrap:balance;max-width:11ch;margin:0;font-size:clamp(54px,8vw,104px);font-weight:300;line-height:.94}.service-state h1 span,.privacy-document h1 span{color:var(--accent-orange)}.service-state>p{max-width:620px;color:var(--text-secondary);margin:clamp(28px,4vw,48px) 0 0;font-size:18px;line-height:1.65}.service-actions{flex-wrap:wrap;gap:12px;margin-top:clamp(34px,5vw,56px);display:flex}.service-actions .button{min-width:180px}.privacy-page{place-items:start center}.privacy-document{width:min(100%,980px)}.privacy-document h1{max-width:12ch}.privacy-lead{max-width:760px;color:var(--text-secondary);margin:clamp(36px,5vw,64px) 0 clamp(56px,7vw,88px);font-size:clamp(19px,2vw,24px);line-height:1.55}.privacy-document section{border-top:1px solid var(--border);grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:clamp(28px,6vw,88px);padding:clamp(28px,4vw,48px) 0;display:grid}.privacy-document section:last-child{border-bottom:1px solid var(--border)}.privacy-document h2{letter-spacing:-.03em;margin:0;font-size:clamp(24px,3vw,36px);font-weight:400;line-height:1.12}.privacy-document section p{max-width:68ch;color:var(--text-secondary);margin:0;font-size:17px;line-height:1.7}.privacy-document section .button{grid-column:2;justify-self:start;margin-top:-10px}.global-service-page{min-height:100dvh}.exocad-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,42px);margin-top:clamp(64px,7vw,104px);display:grid}.exocad-work-card{min-width:0;color:var(--text);gap:22px;display:grid}.exocad-work-image{aspect-ratio:4/3;border-radius:var(--radius-media);background:var(--surface);position:relative;overflow:hidden}.exocad-work-image img{object-fit:cover;transition:transform .52s cubic-bezier(.16,1,.3,1)}.exocad-work-copy{gap:10px;display:grid}.exocad-work-copy strong{letter-spacing:-.03em;font-size:clamp(28px,3vw,44px);font-weight:400;line-height:1}.exocad-work-copy small{max-width:58ch;color:var(--text-secondary);font-size:16px;line-height:1.55}.exocad-work-card:focus-visible{outline:2px solid var(--focus);outline-offset:7px;border-radius:var(--radius-media)}@media (hover:hover) and (pointer:fine){.exocad-work-card:hover .exocad-work-image img{transform:scale(1.025)}}.exocad-empty{justify-content:space-between;align-items:flex-end;gap:48px;min-height:clamp(390px,46vw,620px);padding:clamp(72px,9vw,132px) clamp(4px,4vw,56px);display:flex}.exocad-empty h2{letter-spacing:-.04em;text-wrap:balance;max-width:10ch;margin:0;font-size:clamp(48px,7vw,96px);font-weight:300;line-height:.96}.exocad-empty p{max-width:600px;color:var(--text-secondary);margin:28px 0 0;font-size:18px;line-height:1.6}.exocad-empty-action{border-color:var(--accent-orange);background:#f28a5b1f;gap:10px;box-shadow:0 12px 28px #f28a5b29}.exocad-empty-actions{flex-direction:column;flex:none;align-items:center;gap:20px;display:flex}.exocad-empty-contact{border-bottom:1px solid var(--border-strong);min-height:44px;color:var(--text-secondary);align-items:center;padding:9px 2px;font-weight:600;transition:border-color .18s,color .18s;display:inline-flex}.exocad-empty-contact:hover,.exocad-empty-contact:focus-visible{border-color:var(--accent-orange);color:var(--text)}.exocad-case-page{width:min(100%, var(--page-width));padding:clamp(42px, 6vw, 92px) var(--page-padding) clamp(88px, 10vw, 156px);margin-inline:auto}.exocad-case-intro{padding-bottom:clamp(52px,7vw,96px)}.exocad-case-draft-note{border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:24px;padding:15px 0;font-size:14px;display:flex}.exocad-case-draft-note strong{color:var(--accent-orange);font-weight:600}.exocad-case-heading{grid-template-columns:minmax(0,1.5fr) minmax(280px,.55fr);align-items:end;gap:clamp(36px,6vw,104px);margin-top:clamp(54px,8vw,112px);display:grid}.exocad-case-heading h1{letter-spacing:-.04em;text-wrap:balance;max-width:9ch;margin:0;font-size:clamp(68px,9.2vw,138px);font-weight:300;line-height:.9}.exocad-case-heading h1 span{color:var(--accent-orange)}.exocad-case-heading>div{padding-bottom:7px}.exocad-case-heading img{width:clamp(156px,15vw,190px);height:auto}.exocad-case-heading p{max-width:460px;color:var(--text-secondary);margin:32px 0 0;font-size:18px;line-height:1.6}.exocad-case-media-nav{border-bottom:1px solid var(--border);gap:clamp(22px,3vw,42px);margin-bottom:20px;display:flex}.exocad-case-media-nav button{min-height:52px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 0 16px;font-weight:600;transition:color .18s;position:relative}.exocad-case-media-nav button:after{content:"";background:var(--accent-orange);transform-origin:0;height:2px;transition:transform .36s cubic-bezier(.16,1,.3,1);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.exocad-case-media-nav button:hover,.exocad-case-media-nav button:focus-visible,.exocad-case-media-nav button.is-active{color:var(--text)}.exocad-case-media-nav button:focus-visible{outline:2px solid var(--focus);outline-offset:5px}.exocad-case-media-nav button.is-active:after{transform:scaleX(1)}.exocad-case-stage,.exocad-case-fallback{aspect-ratio:16/9;border-radius:var(--radius-media);background:var(--surface);position:relative;overflow:hidden}.exocad-case-gallery-track{touch-action:pan-y;-webkit-user-select:none;user-select:none;will-change:transform;transition:transform .68s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;inset:0}.exocad-case-gallery-track.is-dragging{cursor:grabbing;transition:none}.exocad-case-gallery-slide{background:var(--surface);flex:0 0 100%;height:100%;margin:0;position:relative}.exocad-case-gallery-slide img,.exocad-case-fallback>img{object-fit:cover;pointer-events:none}.exocad-case-gallery-controls{z-index:2;inset-inline:clamp(14px,2vw,28px);pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.exocad-case-gallery-controls button{width:52px;height:52px;color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;pointer-events:auto;background:#050507c2;border:1px solid #ffffff6b;border-radius:50%;place-items:center;transition:border-color .18s,background-color .18s,opacity .18s;display:grid}.exocad-case-gallery-controls button:hover,.exocad-case-gallery-controls button:focus-visible{border-color:var(--accent-orange);background:#050507eb}.exocad-case-gallery-controls button:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.exocad-case-gallery-controls button:disabled{opacity:.28;cursor:default;border-color:#ffffff40}.exocad-case-gallery-meta{min-height:58px;color:var(--text-secondary);justify-content:space-between;gap:24px;padding:18px 2px 0;display:flex}.exocad-case-gallery-meta p,.exocad-case-gallery-meta span{margin:0}.exocad-case-gallery-meta span{color:var(--text-muted);font-variant-numeric:tabular-nums;flex:none;font-size:14px}.exocad-case-fallback:after{content:"";background:linear-gradient(90deg,#050507eb 0%,#0505079e 50%,#05050729 100%);position:absolute;inset:0}.exocad-case-fallback>img{filter:saturate(.52)contrast(1.04)}.exocad-case-fallback>div{z-index:1;width:min(500px,100% - 56px);position:absolute;top:50%;left:clamp(28px,6vw,92px);transform:translateY(-50%)}.exocad-case-fallback svg{color:var(--accent-orange);margin-bottom:26px}.exocad-case-fallback strong{letter-spacing:-.04em;max-width:12ch;font-size:clamp(38px,5vw,72px);font-weight:300;line-height:.98;display:block}.exocad-case-fallback p{max-width:480px;color:var(--text-secondary);margin:24px 0 0;font-size:17px;line-height:1.55}.exocad-case-media-hint{color:var(--text-muted);align-items:center;gap:10px;margin:26px 0 0;font-size:14px;display:flex}.exocad-case-description{border-top:1px solid var(--border);grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(44px,8vw,128px);margin-top:clamp(96px,11vw,168px);padding-top:clamp(38px,5vw,68px);display:grid}.exocad-case-description h2{letter-spacing:-.04em;text-wrap:balance;max-width:8ch;margin:0;font-size:clamp(46px,6vw,84px);font-weight:300;line-height:.98}.exocad-case-description>div>p{max-width:680px;color:var(--text-secondary);margin:0;font-size:clamp(18px,1.65vw,23px);line-height:1.6}.exocad-case-description dl{margin:clamp(52px,6vw,84px) 0 0}.exocad-case-description dl div{border-top:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;gap:24px;min-height:58px;padding:14px 0;display:grid}.exocad-case-description dl div:last-child{border-bottom:1px solid var(--border)}.exocad-case-description dt{color:var(--text-muted)}.exocad-case-description dd{color:var(--text);text-align:right;margin:0}.product-header{z-index:10;min-height:88px;padding:16px var(--page-padding);border-bottom:1px solid var(--border);background:var(--canvas);grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:relative}.product-back,.product-cart{cursor:pointer;min-height:44px;color:var(--text-secondary);background:0 0;place-items:center;gap:9px;font-weight:600;display:inline-flex}.product-back:hover,.product-back:focus-visible{color:var(--accent-orange)}.product-logo{min-height:44px;color:var(--text);letter-spacing:-.03em;align-items:center;font-size:22px;font-weight:300;display:inline-flex}.product-logo span{color:var(--accent-orange)}.product-cart{border:1px solid var(--border-strong);width:46px;color:var(--text);border-radius:50%;justify-content:center;justify-self:end;position:relative}.product-cart>span{background:var(--accent-orange);width:18px;height:18px;color:var(--on-accent-orange);border-radius:50%;place-items:center;font-size:11px;font-weight:700;line-height:1;display:grid;position:absolute;top:-4px;right:-4px}.product-page{width:min(100%, var(--page-width));padding:clamp(20px, 3vw, 48px) var(--page-padding) clamp(72px, 8vw, 120px);grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);align-items:start;gap:clamp(36px,5vw,88px);margin-inline:auto;display:grid}.product-gallery{min-width:0}.product-image-stage{aspect-ratio:3/2;border-radius:var(--radius-media);background:#000;position:relative;overflow:hidden}.product-gallery-track{touch-action:pan-y;-webkit-user-select:none;user-select:none;will-change:transform;transition:transform .72s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;inset:0}.product-gallery-track.is-dragging{cursor:grabbing;transition:none}.product-gallery-slide{background:#000;flex:0 0 100%;height:100%;margin:0;position:relative}.product-gallery-slide.is-original{background:linear-gradient(#09090b 0%,#242427 48%,#444447 100%)}.product-gallery-slide img{object-fit:contain;pointer-events:none}.product-gallery-slide.is-original img{padding:clamp(18px,3vw,40px)}.product-gallery-controls{z-index:2;inset-inline:16px;pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.product-gallery-controls button{width:48px;height:48px;color:var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;background:#050507b8;border:1px solid #ffffff59;border-radius:50%;place-items:center;transition:border-color .18s,background-color .18s;display:grid}.product-gallery-controls button:hover,.product-gallery-controls button:focus-visible{border-color:var(--accent-orange);background:#050507e6}.product-gallery-controls button:disabled{opacity:.3;cursor:default;border-color:#fff3}.product-thumbnails{scrollbar-width:none;gap:10px;margin-top:12px;padding-bottom:4px;display:flex;overflow-x:auto}.product-thumbnails::-webkit-scrollbar{display:none}.product-thumbnails button{border:1px solid var(--border);border-radius:var(--radius-medium);background:var(--surface);opacity:.58;flex:0 0 104px;height:76px;transition:opacity .16s,border-color .16s;position:relative;overflow:hidden}.product-thumbnails button:hover,.product-thumbnails button:focus-visible,.product-thumbnails button.is-active{border-color:var(--accent-orange);opacity:1}.product-thumbnails img{object-fit:cover}.related-posters{margin-top:clamp(28px,4vw,52px)}.related-posters h2{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(24px,2.4vw,34px);font-weight:400}.related-posters-track{scroll-snap-type:x proximity;scrollbar-width:none;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;overscroll-behavior-inline:contain;gap:12px;padding-bottom:6px;display:flex;overflow-x:auto}.related-posters-track.is-dragging{cursor:grabbing;scroll-snap-type:none}.related-posters-track::-webkit-scrollbar{display:none}.related-poster{color:var(--text);scroll-snap-align:start;flex:0 0 clamp(132px,15vw,172px);gap:10px;font-size:15px;font-weight:600;display:grid}.related-poster-image{aspect-ratio:4/5;border-radius:var(--radius-medium);background:linear-gradient(#09090b 0%,#202023 46%,#3b3b3e 100%);transition:background-color .18s;position:relative;overflow:hidden}.related-poster-image img{object-fit:contain;pointer-events:none;padding:10px;transition:transform .42s cubic-bezier(.16,1,.3,1)}.related-poster:hover .related-poster-image img,.related-poster:focus-visible .related-poster-image img{transform:scale(.96)}.product-info{border-radius:var(--radius-media);background:linear-gradient(145deg,#29292c 0%,#171719 54%,#0b0b0d 100%);flex-direction:column;min-height:100%;padding:clamp(28px,3.5vw,52px);display:flex;position:sticky;top:24px}.product-kind{color:var(--accent-orange);margin:0 0 14px;font-size:15px;font-weight:600}.product-info h1{letter-spacing:-.04em;text-wrap:balance;max-width:9ch;margin:0;font-size:clamp(52px,6vw,96px);font-weight:300;line-height:.96}.product-description{max-width:500px;color:var(--text-secondary);margin:28px 0 0;font-size:18px;line-height:1.55}.product-size-picker{border:0;margin:clamp(36px,4vw,56px) 0 0;padding:0}.product-size-picker legend{color:var(--text-secondary);padding:0;font-size:15px;font-weight:600}.product-size-picker>div{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.product-size-picker button{text-align:left;border:1px solid var(--border-strong);border-radius:var(--radius-medium);min-height:76px;color:var(--text);background:0 0;gap:5px;padding:14px 16px;transition:border-color .16s,background-color .16s;display:grid}.product-size-picker button span:first-child{font-size:18px;font-weight:600}.product-size-picker button span:last-child{color:var(--text-muted);font-size:14px}.product-size-picker button:hover,.product-size-picker button:focus-visible,.product-size-picker button.is-active{border-color:var(--accent-orange);background:#f28a5b14}.product-buy{padding-top:28px}.product-price{letter-spacing:-.03em;margin:0 0 20px;font-size:clamp(36px,3.5vw,52px);font-weight:500}.product-add{justify-content:center;gap:10px;width:100%}.product-note{color:var(--text-muted);margin:16px 0 0;font-size:14px;line-height:1.5}.keyboard-detail-page{padding-top:12px;padding-bottom:clamp(72px,8vw,120px)}.keyboard-product-hero{align-items:stretch;padding-bottom:clamp(48px,6vw,88px)}.keyboard-product-info{min-height:0;position:static}.keyboard-product-gallery{align-self:start}@media (min-width:1280px){.keyboard-product-info{padding:clamp(24px,2vw,32px)}.keyboard-product-hero .keyboard-product-info h1{max-width:none;font-size:clamp(32px,2.6vw,42px)}.keyboard-product-info .product-description{margin-top:18px;font-size:16px}.keyboard-product-info .keyboard-product-facts{margin-top:24px}.keyboard-product-info .keyboard-product-facts div{min-height:48px;padding-block:12px}.keyboard-product-info .keyboard-product-action{padding-top:24px}.keyboard-product-info .keyboard-product-action p{margin-top:12px;font-size:13px}}@media (min-width:768px) and (max-width:1279px){.keyboard-product-hero{grid-template-columns:1fr}}.keyboard-product-gallery .product-gallery-slide img{object-fit:cover}.keyboard-product-counter{z-index:2;border-radius:var(--radius-pill);color:var(--text);font-variant-numeric:tabular-nums;background:#050507b8;margin:0;padding:9px 13px;font-size:12px;font-weight:700;position:absolute;bottom:18px;right:20px}.keyboard-product-info h1{max-width:10ch;font-size:clamp(44px,3.8vw,58px)}.keyboard-product-facts{margin:clamp(36px,4vw,56px) 0 0}.keyboard-product-facts div{border-top:1px solid var(--border-strong);justify-content:space-between;align-items:center;gap:20px;min-height:58px;padding-block:15px;display:flex}.keyboard-product-facts div:last-child{border-bottom:1px solid var(--border-strong)}.keyboard-product-facts dt{color:var(--text-muted);font-size:14px}.keyboard-product-facts dd{color:var(--text);text-align:right;margin:0;font-weight:650}.keyboard-product-action{margin-top:auto;padding-top:clamp(36px,5vw,64px)}.keyboard-product-action .button{width:100%}.keyboard-product-action p{color:var(--text-muted);margin:18px 0 0;font-size:14px;line-height:1.55}.keyboard-model-section,.keyboard-request-section{width:min(calc(100% - (var(--page-padding) * 2)), calc(var(--page-width) - (var(--page-padding) * 2)));margin-inline:auto}.keyboard-model-section{border-radius:var(--radius-block);background:var(--surface);grid-template-columns:minmax(280px,.7fr) minmax(0,1.55fr);min-height:clamp(520px,58vw,760px);display:grid;overflow:hidden}.keyboard-model-copy{flex-direction:column;justify-content:flex-end;padding:clamp(34px,5vw,72px);display:flex}.keyboard-model-copy>svg{color:var(--accent-orange);margin-bottom:auto}.keyboard-model-copy h2{letter-spacing:-.04em;margin:clamp(54px,8vw,110px) 0 0;font-size:clamp(42px,4.8vw,72px);font-weight:300;line-height:.98}.keyboard-model-copy p{max-width:44ch;color:var(--text-secondary);margin:24px 0 0;line-height:1.6}.keyboard-model-fallback{border-radius:var(--radius-media) 0 0 var(--radius-media);min-height:440px;position:relative;overflow:hidden}.keyboard-model-fallback:after{content:"Статичная замена";border-radius:var(--radius-pill);color:var(--text-secondary);background:#050507c2;padding:9px 13px;font-size:12px;font-weight:650;position:absolute;bottom:18px;right:18px}.keyboard-model-fallback img{object-fit:cover}.keyboard-request-section{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);align-items:start;gap:clamp(36px,7vw,116px);margin-top:clamp(72px,9vw,132px);display:grid}.keyboard-request-copy{position:sticky;top:28px}.keyboard-request-copy h2{letter-spacing:-.04em;margin:0;font-size:clamp(48px,6vw,92px);font-weight:300;line-height:.96}.keyboard-request-copy h2 span{color:var(--accent-orange)}.keyboard-request-copy p{max-width:42ch;color:var(--text-secondary);margin:28px 0 0;line-height:1.65}.keyboard-request-form{border-radius:var(--radius-media);background:var(--surface-raised);padding:clamp(26px,4vw,54px)}.keyboard-request-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.keyboard-request-email{grid-column:1/-1}.keyboard-request-consent{margin-top:26px}.keyboard-request-submit{width:100%;margin-top:28px}.keyboard-request-submit:disabled{opacity:.48;cursor:not-allowed}.keyboard-request-success{flex-direction:column;justify-content:center;align-items:flex-start;min-height:380px;display:flex}.keyboard-request-success>svg{color:var(--accent-orange)}.keyboard-request-success h3{letter-spacing:-.035em;margin:24px 0 0;font-size:clamp(34px,4vw,52px);font-weight:350}.keyboard-request-success p{max-width:52ch;color:var(--text-secondary);margin:18px 0 28px;line-height:1.6}.cart-page{width:min(100%, var(--page-width));min-height:calc(100dvh - 88px);padding:clamp(48px, 7vw, 104px) var(--page-padding) clamp(72px, 8vw, 120px);margin-inline:auto}.cart-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(40px,5vw,72px);display:flex}.cart-heading h1,.cart-empty h1{letter-spacing:-.04em;margin:0;font-size:clamp(56px,8vw,112px);font-weight:300;line-height:.95}.cart-heading p{color:var(--text-secondary);margin:0 0 8px;font-size:18px}.cart-layout{grid-template-columns:minmax(0,1fr) minmax(320px,390px);align-items:start;gap:clamp(40px,6vw,96px);display:grid}.cart-list{border-top:1px solid var(--border);min-width:0}.cart-item{border-bottom:1px solid var(--border);grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:24px;padding:24px 0;display:grid}.cart-item-image{aspect-ratio:4/5;border-radius:var(--radius-medium);background:linear-gradient(#09090b 0%,#242427 48%,#444447 100%);position:relative;overflow:hidden}.cart-item-image img{object-fit:contain;padding:10px;transition:transform .36s cubic-bezier(.16,1,.3,1)}.cart-item-image:hover img,.cart-item-image:focus-visible img{transform:scale(.97)}.cart-item-copy{flex-direction:column;justify-content:space-between;gap:20px;min-width:0;min-height:128px;display:flex}.cart-item-copy h2{letter-spacing:-.03em;margin:0;font-size:clamp(25px,2.5vw,38px);font-weight:400;line-height:1.05}.cart-item-copy>div p{color:var(--text-muted);margin:8px 0 0}.cart-item-copy>div .cart-item-unavailable{color:var(--accent-orange)}.cart-item-price{margin:0;font-size:20px;font-weight:600}.cart-item-actions{flex-direction:column;justify-content:space-between;align-items:flex-end;gap:20px;min-height:128px;display:flex}.quantity-control{border:1px solid var(--border-strong);border-radius:999px;grid-template-columns:44px 38px 44px;align-items:center;min-height:46px;display:grid}.quantity-control button,.cart-remove{min-width:44px;min-height:44px;color:var(--text-secondary);background:0 0;border:0;place-items:center;transition:color .16s,background-color .16s;display:grid}.quantity-control button:first-child{border-radius:999px 0 0 999px}.quantity-control button:last-child{border-radius:0 999px 999px 0}.quantity-control button:hover,.quantity-control button:focus-visible,.cart-remove:hover,.cart-remove:focus-visible{color:var(--accent-orange);background:#f28a5b14}.quantity-control span{text-align:center;font-weight:650}.cart-remove{border-radius:50%}.cart-summary{border-radius:var(--radius-media);background:linear-gradient(145deg,#29292c 0%,#171719 54%,#0b0b0d 100%);padding:clamp(28px,3vw,40px);position:sticky;top:24px}.cart-summary h2{letter-spacing:-.03em;margin:0 0 34px;font-size:34px;font-weight:400}.cart-summary-row{color:var(--text-secondary);border-bottom:1px solid #ffffff14;justify-content:space-between;gap:20px;padding:13px 0;display:flex}.cart-summary-row span:last-child{text-align:right}.cart-summary-total{justify-content:space-between;align-items:baseline;gap:20px;padding:30px 0;display:flex}.cart-summary-total strong{letter-spacing:-.03em;font-size:32px;font-weight:500}.cart-checkout{border-color:var(--accent-orange);width:100%;color:var(--text);background:#f28a5b1f;box-shadow:0 12px 28px #f28a5b29}.cart-checkout:hover,.cart-checkout:focus-visible{border-color:var(--accent-orange);background:#f28a5b33;box-shadow:0 16px 34px #f28a5b38}.cart-checkout:after{opacity:.9;animation:none;transform:scaleX(.72)}.cart-checkout.is-disabled{cursor:not-allowed;opacity:.48;box-shadow:none}.cart-summary>p{color:var(--text-muted);margin:16px 0 0;font-size:13px;line-height:1.55}.cart-empty,.cart-loading{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.cart-empty{max-width:940px}.cart-empty p{max-width:520px;color:var(--text-secondary);margin:28px 0 36px;font-size:19px}.cart-loading{color:var(--text-secondary);font-size:18px}.checkout-page{width:min(100%, var(--page-width));min-height:calc(100dvh - 88px);padding:clamp(48px, 7vw, 104px) var(--page-padding) clamp(72px, 8vw, 120px);margin-inline:auto}.checkout-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(40px,5vw,72px);display:flex}.checkout-heading h1,.checkout-empty h1,.payment-state h1{letter-spacing:-.04em;margin:0;font-size:clamp(54px,7vw,96px);font-weight:300;line-height:.98}.checkout-heading p{color:var(--text-secondary);margin:0 0 8px;font-size:18px}.checkout-layout{grid-template-columns:minmax(0,1fr) minmax(340px,420px);align-items:start;gap:clamp(44px,7vw,112px);display:grid}.checkout-form{min-width:0}.checkout-form-section{padding:0 0 clamp(42px,5vw,64px)}.checkout-form-section+.checkout-form-section{border-top:1px solid var(--border);padding-top:clamp(42px,5vw,64px)}.checkout-form-section h2,.checkout-summary h2{letter-spacing:-.03em;margin:0 0 28px;font-size:clamp(28px,3vw,40px);font-weight:400;line-height:1.05}.checkout-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.checkout-field{min-width:0;color:var(--text-secondary);align-content:start;gap:9px;font-size:14px;font-weight:600;display:grid}.required-mark{color:var(--accent-orange);font-weight:750}.checkout-field-wide{grid-column:1/-1}.checkout-form-section>.checkout-field+.delivery-methods,.delivery-methods+.checkout-field{margin-top:28px}.checkout-field input,.checkout-field select{border:1px solid var(--border-strong);border-radius:var(--radius-medium);background:var(--surface);width:100%;min-height:58px;color:var(--text);font:inherit;outline:0;padding:14px 16px;font-size:16px;font-weight:450;transition:border-color .16s,background-color .16s,box-shadow .18s}.checkout-field input::placeholder{color:var(--text-muted)}.checkout-field select option{color:#17131c;background:#fff}.checkout-field input:hover,.checkout-field select:hover{border-color:#f28a5ba8}.checkout-field input:focus,.checkout-field select:focus{border-color:var(--accent-orange);background:#f28a5b0d;box-shadow:0 8px 22px #f28a5b1a}.checkout-field input[aria-invalid=true],.checkout-field select[aria-invalid=true]{border-color:var(--error)}.checkout-field small,.checkout-consent small{color:var(--error);font-size:13px;font-weight:500;line-height:1.45}.checkout-field .field-note{color:var(--text-muted)}.delivery-methods{border:0;margin:0;padding:0}.delivery-methods legend{color:var(--text-secondary);margin-bottom:10px;padding:0;font-size:14px;font-weight:600}.delivery-methods>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.delivery-methods label{border:1px solid var(--border-strong);border-radius:var(--radius-medium);cursor:pointer;align-items:flex-start;gap:12px;min-height:82px;padding:16px;transition:border-color .16s,background-color .16s;display:flex}.delivery-methods label:hover,.delivery-methods label:focus-within,.delivery-methods label.is-active{border-color:var(--accent-orange);background:#f28a5b14}.delivery-methods input{width:18px;height:18px;accent-color:var(--accent-orange);flex:none;margin:2px 0 0}.delivery-methods span{gap:5px;display:grid}.delivery-methods strong{font-size:16px}.delivery-methods small{color:var(--text-muted);font-size:13px;font-weight:450}.checkout-consent{max-width:680px;color:var(--text-secondary);cursor:pointer;grid-template-columns:22px 1fr;gap:8px 12px;display:grid}.checkout-consent input{width:20px;height:20px;accent-color:var(--accent-orange);margin:2px 0 0}.checkout-consent small{grid-column:2}.checkout-submit{border-color:var(--accent-orange);background:#f28a5b1f;width:min(100%,440px);margin-top:34px;box-shadow:0 12px 28px #f28a5b29}.checkout-submit:disabled{cursor:not-allowed;box-shadow:none;opacity:.45}.checkout-submit:disabled:hover{border-color:var(--accent-orange);box-shadow:none;background:#f28a5b1f}.checkout-submit-error{color:#ff9b76;max-width:440px;margin:14px 0 0;font-size:14px;line-height:1.5}.checkout-summary{border-radius:var(--radius-media);background:linear-gradient(145deg,#29292c 0%,#171719 54%,#0b0b0d 100%);padding:clamp(28px,3vw,40px);position:sticky;top:24px}.checkout-products{margin-bottom:22px}.checkout-product{border-bottom:1px solid #ffffff14;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.checkout-product-image{aspect-ratio:4/5;border-radius:var(--radius-small);background:linear-gradient(#09090b 0%,#242427 48%,#444447 100%);position:relative;overflow:hidden}.checkout-product-image img{object-fit:contain;padding:4px}.checkout-product>span:nth-child(2){gap:3px;min-width:0;display:grid}.checkout-product strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.checkout-product small{color:var(--text-muted);font-size:12px}.checkout-product>span:last-child{font-size:14px;font-weight:600}.checkout-summary-row,.checkout-summary-total{justify-content:space-between;gap:20px;display:flex}.checkout-summary-row{color:var(--text-secondary);padding:12px 0}.checkout-summary-total{border-top:1px solid #ffffff1a;align-items:baseline;margin-top:10px;padding-top:28px}.checkout-summary-total strong{letter-spacing:-.03em;font-size:32px;font-weight:500}.checkout-summary>p{color:var(--text-muted);margin:24px 0 0;font-size:13px;line-height:1.55}.checkout-loading,.checkout-empty,.payment-page{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.checkout-loading{color:var(--text-secondary);font-size:18px}.checkout-empty{max-width:1000px}.checkout-empty p{max-width:540px;color:var(--text-secondary);margin:28px 0 36px;font-size:19px}.payment-page{align-items:center}.payment-state{border-radius:var(--radius-block);background:linear-gradient(145deg,#29292c 0%,#171719 56%,#0b0b0d 100%);width:min(100%,760px);padding:clamp(36px,6vw,72px)}.payment-state-icon{border:1px solid;border-radius:50%;place-items:center;width:58px;height:58px;margin-bottom:42px;display:grid}.payment-state.is-pending .payment-state-icon{color:var(--accent-orange)}.payment-state.is-success .payment-state-icon{color:var(--success)}.payment-state.is-error .payment-state-icon{color:var(--error)}.payment-state>p{max-width:600px;color:var(--text-secondary);margin:28px 0 0;font-size:18px}.payment-state-total{border-top:1px solid #ffffff1f;justify-content:space-between;align-items:baseline;gap:24px;margin-top:48px;padding-top:28px;display:flex}.payment-state-total strong{font-size:34px;font-weight:500}.payment-state .checkout-submit{width:100%}.payment-back{color:var(--text-secondary);text-underline-offset:5px;margin-top:24px;text-decoration:underline;display:inline-block}.payment-back:hover,.payment-back:focus-visible{color:var(--accent-orange)}.order-page{width:min(100%, var(--page-width));min-height:calc(100dvh - 88px);padding:clamp(48px, 7vw, 104px) var(--page-padding) clamp(72px, 8vw, 120px);margin-inline:auto}.order-layout{grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);align-items:stretch;gap:clamp(32px,5vw,72px);display:grid}.order-status,.order-summary{border-radius:var(--radius-media);background:linear-gradient(145deg,#29292c 0%,#171719 56%,#0b0b0d 100%)}.order-status{flex-direction:column;align-items:flex-start;min-height:min(760px,100dvh - 184px);padding:clamp(34px,5vw,72px);display:flex}.order-status-icon{border:1px solid;border-radius:50%;place-items:center;width:60px;height:60px;margin-bottom:clamp(48px,7vw,88px);display:grid}.order-status.is-pending .order-status-icon{color:var(--accent-orange)}.order-status.is-success .order-status-icon{color:var(--success)}.order-status.is-error .order-status-icon{color:var(--error)}.order-status h1,.order-missing h1{letter-spacing:-.04em;max-width:9ch;margin:0;font-size:clamp(56px,7vw,104px);font-weight:300;line-height:.96}.order-status-copy{max-width:620px;color:var(--text-secondary);margin:30px 0 0;font-size:19px;line-height:1.55}.order-number{color:var(--text-muted);margin:36px 0 0;font-size:14px}.order-number strong{color:var(--text-secondary);overflow-wrap:anywhere;font-weight:650}.order-demo-note{max-width:620px;color:var(--text-muted);margin:14px 0 0;font-size:13px}.order-actions{gap:18px;width:min(100%,520px);margin-top:auto;padding-top:48px;display:grid}.order-primary{border-color:var(--accent-orange);background:#f28a5b1f;width:100%;box-shadow:0 12px 28px #f28a5b29}.order-primary:disabled{cursor:not-allowed;opacity:.62}.order-secondary{color:var(--text-secondary);text-underline-offset:5px;justify-self:center;text-decoration:underline}.order-secondary:hover,.order-secondary:focus-visible{color:var(--accent-orange)}.order-summary{padding:clamp(28px,3vw,40px)}.order-summary h2{letter-spacing:-.03em;margin:0 0 30px;font-size:clamp(28px,3vw,40px);font-weight:400;line-height:1.05}.order-summary>p{color:var(--text-muted);margin:24px 0 0;font-size:13px;line-height:1.55}.order-loading,.order-missing{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.order-loading{color:var(--text-secondary);font-size:18px}.order-missing{max-width:1000px}.order-missing p{max-width:620px;color:var(--text-secondary);margin:28px 0 36px;font-size:19px}@media (max-width:900px){.contact-page{grid-template-columns:1fr}.contact-intro{position:static}.shop-heading{grid-template-columns:1fr;align-items:start}.exocad-work-grid{grid-template-columns:1fr}.exocad-empty{flex-direction:column;align-items:flex-start}.exocad-case-heading{grid-template-columns:1fr}.exocad-case-heading>div{grid-template-columns:170px minmax(0,1fr);align-items:start;gap:36px;display:grid}.exocad-case-heading p{margin-top:0}.exocad-case-description,.cart-layout{grid-template-columns:1fr}.cart-summary{position:static}.checkout-layout{grid-template-columns:1fr}.checkout-summary{position:static}.order-layout{grid-template-columns:1fr}.order-status{min-height:680px}}@media (max-width:767px){.contact-page{gap:54px;padding:48px 16px 88px}.contact-intro h1{max-width:9ch;font-size:clamp(52px,15vw,66px)}.contact-intro>p{margin-top:24px;font-size:16px}.contact-channels{margin-top:42px}.contact-channels a{min-height:78px}.contact-form-panel{border-radius:24px;padding:28px 20px}.contact-form-heading{margin-bottom:34px;display:block}.contact-form-heading p{margin-top:10px}.contact-form-fields{grid-template-columns:1fr;gap:20px}.contact-field-wide{grid-column:auto}.contact-form-success{min-height:470px}.shop-page{padding:28px 16px 88px}.shop-catalog{--shop-intro-space:calc(var(--header-height) + 8px + 28px + clamp(30px, 8vw, 42px) * 2.2 + 32px)}.shop-heading{gap:16px;margin-bottom:32px}.shop-heading h1{white-space:normal;text-wrap:balance;max-width:100%;font-size:clamp(30px,8vw,42px)}.shop-description>p{font-size:16px}.shop-grid{grid-template-columns:1fr;gap:42px 12px}.shop-card{gap:14px}.shop-card-image{border-radius:20px}.shop-card-image img{padding:10px}.shop-card-copy{display:block}.shop-card-copy h2{font-size:clamp(22px,6.5vw,28px)}.shop-card-copy p{margin-top:7px;font-size:14px}.shop-card-status{margin-top:10px;font-size:11px}.exocad-index-page{padding:8px 8px 80px}.exocad-index-hero{border-radius:24px;min-height:calc(100dvh - 88px)}.exocad-index-background{object-position:61% center}.exocad-index-overlay{background:linear-gradient(#05050726 0%,#050507b3 42%,#050507f5 100%),linear-gradient(90deg,#0505078a 0%,#0000 100%)}.exocad-index-logo{width:154px;top:24px;left:24px}.exocad-index-copy{width:calc(100% - 48px);bottom:86px;left:24px}.exocad-index-copy h1{max-width:7ch;font-size:clamp(54px,16vw,70px);line-height:.92}.exocad-index-copy p{margin-top:24px;font-size:16px;line-height:1.55}.exocad-index-status{font-size:12px;bottom:24px;left:24px;right:auto}.exocad-work-grid{gap:48px;margin-top:56px}.exocad-work-image{border-radius:20px}.exocad-empty{gap:42px;min-height:500px;padding:86px 16px 24px}.exocad-empty h2{font-size:clamp(42px,11.2vw,58px)}.exocad-empty p{margin-top:24px;font-size:16px}.exocad-empty-action{width:100%}.exocad-empty-actions{align-items:stretch;width:100%}.exocad-empty-contact{align-self:center}.exocad-case-page{padding:32px 12px 88px}.exocad-case-draft-note{flex-direction:column;align-items:flex-start;gap:5px;font-size:13px}.exocad-case-heading{gap:42px;margin-top:58px}.exocad-case-heading h1{max-width:8ch;font-size:clamp(54px,15.7vw,68px);line-height:.92}.exocad-case-heading>div{display:block}.exocad-case-heading img{width:144px}.exocad-case-heading p{margin-top:24px;font-size:16px}.exocad-case-media-nav{justify-content:space-between;gap:16px;margin-bottom:12px}.exocad-case-media-nav button{flex:1;min-width:0;min-height:48px;padding-bottom:13px;font-size:14px}.exocad-case-stage,.exocad-case-fallback{aspect-ratio:4/5;border-radius:var(--radius-media)}.exocad-case-gallery-slide img,.exocad-case-fallback>img{object-position:center}.exocad-case-gallery-controls{inset-inline:10px}.exocad-case-gallery-controls button{width:46px;height:46px}.exocad-case-gallery-meta{padding-top:14px;font-size:14px}.exocad-case-fallback:after{background:linear-gradient(#05050729 0%,#050507b8 46%,#050507f5 100%)}.exocad-case-fallback>div{width:calc(100% - 48px);top:auto;bottom:30px;left:24px;transform:none}.exocad-case-fallback svg{margin-bottom:20px}.exocad-case-fallback strong{font-size:clamp(36px,10.5vw,46px)}.exocad-case-fallback p{margin-top:18px;font-size:15px}.exocad-case-media-hint{align-items:flex-start;font-size:13px}.exocad-case-media-hint svg{flex:none;margin-top:1px}.exocad-case-description{gap:36px;margin-top:92px;padding-top:36px}.exocad-case-description h2{font-size:clamp(44px,12vw,56px)}.exocad-case-description>div>p{font-size:17px}.exocad-case-description dl{margin-top:48px}.exocad-case-description dl div{grid-template-columns:1fr;gap:5px}.exocad-case-description dd{text-align:left}.cart-page{padding:48px 16px 80px}.cart-heading{align-items:baseline;margin-bottom:32px}.cart-heading h1,.cart-empty h1{font-size:clamp(50px,16vw,68px)}.cart-heading p{font-size:15px}.cart-layout{gap:38px}.cart-item{grid-template-columns:104px minmax(0,1fr);align-items:start;gap:16px;padding:20px 0}.cart-item-copy{min-height:130px}.cart-item-copy h2{font-size:25px}.cart-item-copy>div p{font-size:14px}.cart-item-actions{flex-direction:row;grid-column:1/-1;align-items:center;min-height:0;padding-left:120px}.cart-summary{padding:28px 22px}.cart-empty{min-height:calc(100dvh - 88px)}.checkout-page{padding:48px 16px 80px}.checkout-heading{align-items:baseline;margin-bottom:38px}.checkout-heading h1,.checkout-empty h1,.payment-state h1{font-size:clamp(46px,14vw,62px)}.checkout-heading p{font-size:15px}.checkout-layout{gap:46px}.checkout-fields,.delivery-methods>div{grid-template-columns:1fr}.checkout-field-wide{grid-column:auto}.checkout-form-section h2,.checkout-summary h2{font-size:30px}.checkout-submit{width:100%}.checkout-summary{padding:28px 22px}.checkout-empty,.checkout-loading,.payment-page{min-height:calc(100dvh - 88px)}.payment-state{border-radius:24px;padding:34px 22px}.payment-state-total{flex-direction:column;align-items:flex-start;gap:8px}.order-page{padding:28px 12px 72px}.order-layout{gap:12px}.order-status{min-height:620px;padding:30px 22px}.order-status-icon{margin-bottom:54px}.order-status h1,.order-missing h1{font-size:clamp(48px,14vw,64px)}.order-status-copy{margin-top:24px;font-size:17px}.order-summary{padding:28px 22px}.order-summary h2{font-size:30px}.order-loading,.order-missing{min-height:calc(100dvh - 88px)}}@keyframes mobile-menu-enter{0%{opacity:0;clip-path:inset(0 0 100% round 24px);transform:translateY(-24px)}to{opacity:1;clip-path:inset(0 round 24px);transform:translateY(0)}}@keyframes mobile-menu-exit{0%{opacity:1;clip-path:inset(0 round 24px);transform:translateY(0)}to{opacity:0;clip-path:inset(0 0 100% round 24px);transform:translateY(-24px)}}@media (min-width:768px) and (max-width:900px){.desktop-nav{font-size:12px;left:calc(50% + 12px)}.site-header .desktop-nav a,.site-header .desktop-nav .contact-navigation-trigger{padding-inline:7px}}@media (max-width:1100px){.site-header{grid-template-columns:120px 1fr auto;gap:22px}.desktop-nav{gap:2px}.desktop-nav a,.desktop-nav .contact-navigation-trigger{padding-inline:10px}.header-actions .button{display:none}.tile-mosaic .projects,.tile-mosaic .exocad-section,.tile-mosaic .keyboard-section,.tile-mosaic .posters,.tile-mosaic .about{grid-column:1/-1}.tile-mosaic .projects,.tile-mosaic .exocad-section{min-height:820px}}@media (max-width:767px){:root{--header-height:72px;--page-padding:20px;--spatial-transition-duration:.72s}.product-header{min-height:72px;padding-inline:18px}.product-back{justify-content:center;width:44px;font-size:0}.product-logo{font-size:19px}.service-page{min-height:calc(100dvh - 72px);padding:12px 12px 72px}.service-state{border-radius:24px;padding:36px 22px}.service-state h1,.privacy-document h1{font-size:clamp(48px,14vw,64px)}.service-state>p{font-size:16px}.service-actions{display:grid}.service-actions .button{width:100%;min-width:0}.privacy-page{padding:48px 20px 88px}.privacy-lead{font-size:18px}.privacy-document section{grid-template-columns:1fr;gap:18px}.privacy-document section .button{grid-column:1;margin-top:8px}.product-page{padding:12px 12px 72px;display:block}.product-image-stage{aspect-ratio:3/2;border-radius:var(--radius-media);min-height:0}.product-gallery-controls{inset-inline:10px}.product-thumbnails button{flex-basis:88px;height:68px}.product-info{min-height:0;margin-top:34px;padding:28px 20px;position:static}.product-info h1{font-size:clamp(48px,15vw,66px)}.keyboard-product-hero{padding-bottom:56px}.keyboard-product-gallery .product-image-stage{aspect-ratio:4/3}.keyboard-product-info h1{font-size:clamp(44px,13vw,58px)}.keyboard-model-section,.keyboard-request-section{width:calc(100% - 24px)}.keyboard-model-section{border-radius:24px;flex-direction:column;min-height:0;display:flex}.keyboard-model-copy{min-height:390px;padding:28px 22px 34px}.keyboard-model-copy h2{margin-top:54px;font-size:clamp(42px,12vw,54px)}.keyboard-model-fallback{border-radius:var(--radius-media);min-height:320px}.keyboard-request-section{margin-top:76px;display:block}.keyboard-request-copy{position:static}.keyboard-request-copy h2{font-size:clamp(46px,13vw,58px)}.keyboard-request-copy p{margin-top:22px}.keyboard-request-form{margin-top:34px;padding:26px 20px}.keyboard-request-fields{grid-template-columns:1fr}.keyboard-request-email{grid-column:auto}.product-description{margin-top:20px;font-size:16px}.product-size-picker{margin-top:38px;padding-top:0}.product-size-picker>div{grid-template-columns:1fr}.product-size-picker button{min-height:68px}.product-buy{padding-top:30px}.site-header{width:calc(100% - 16px);height:var(--header-height);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;padding-inline:12px;top:8px;left:8px}.section-block{border-radius:24px;width:calc(100% - 16px);margin-top:8px}.tile-mosaic{grid-template-columns:1fr;gap:8px;width:calc(100% - 16px);margin-top:8px}.tile-mosaic .section-block{grid-column:1;width:100%;margin:0}.route-stage{min-height:0}.hero{min-height:620px}.logo-link{grid-area:1/2;justify-content:center;justify-self:center;width:min(104px,28vw);height:56px}.logo-link .brand-logo{height:54px}.desktop-nav,.header-actions .button{display:none}.cart-button{top:22px;left:20px;right:auto}.header-actions{grid-area:1/1;justify-self:start;gap:0;padding-right:0}.cart-button{width:44px;height:44px}.mobile-menu{grid-area:1/3;justify-self:end;width:88px;height:44px;display:block}.mobile-menu-trigger{z-index:110;cursor:pointer;min-width:88px;min-height:44px;color:var(--text);background:#050507b8;border:1px solid #ffffff1f;border-radius:999px;place-items:center;padding:0;font-size:13px;list-style:none;transition:border-color .16s,background-color .16s;display:grid;position:fixed;top:22px;right:20px;overflow:hidden}.mobile-menu-trigger:after{content:"";background:var(--accent-orange);opacity:.48;height:3px;animation:4.8s ease-in-out infinite button-ambient;position:absolute;bottom:0;left:14px;right:14px;transform:scaleX(.32)}.mobile-menu-trigger:hover,.mobile-menu-trigger:focus-visible,.mobile-menu.is-open .mobile-menu-trigger{border-color:var(--accent-orange);background:#f28a5b1a}.mobile-menu nav{z-index:109;background:var(--surface-raised);transform-origin:top;border:1px solid #ffffff1a;border-radius:24px;flex-direction:column;max-height:calc(100dvh - 90px);padding:18px 20px 28px;display:flex;position:fixed;top:78px;left:8px;right:8px;overflow-y:auto;box-shadow:0 24px 70px #00000075}.mobile-menu.is-open nav{animation:.76s cubic-bezier(.65,0,.35,1) both mobile-menu-enter}.mobile-menu.is-closing nav{animation-name:mobile-menu-exit}.mobile-menu nav a:not(.button){border-bottom:1px solid #ffffff14;align-items:center;min-height:52px;display:flex}.mobile-menu nav .mobile-menu-contact{min-height:52px;margin-top:20px}.hero-content{justify-content:center;min-height:600px;padding-top:80px;padding-bottom:80px}.hero h1{width:100%;font-size:clamp(46px,13vw,58px);line-height:1.02}.hero-content>p{max-width:330px;margin-top:24px;font-size:18px}.hero-actions{flex-direction:column;width:100%;margin-top:32px}.hero-actions .button{width:100%}.section{padding-top:96px;padding-bottom:96px}.section.section-block{padding-inline:24px}.tile-mosaic .section.section-block{padding:0}.tile-mosaic .projects{min-height:760px}.tile-mosaic .projects .section-heading{width:calc(100% - 48px);top:28px;left:24px}.tile-mosaic .project-note{width:calc(100% - 48px);min-height:190px;padding:22px;bottom:24px;right:24px}.tile-mosaic .project-main>p{display:none}.tile-mosaic .exocad-section,.tile-mosaic .keyboard-section{min-height:700px}.tile-mosaic .exocad-copy,.tile-mosaic .keyboard-copy{padding:28px 24px}.tile-mosaic .keyboard-copy{background:var(--canvas);width:100%;min-height:368px;text-shadow:none;padding:28px 24px;inset:0 0 auto}.tile-mosaic .keyboard-copy h2{margin:0;position:static}.tile-mosaic .keyboard-copy>p{margin:26px 0 0;position:static}.tile-mosaic .keyboard-button{width:max-content;margin:0;position:absolute;bottom:27px;left:24px}.tile-mosaic .posters{min-height:0;display:block}.tile-mosaic .section.section-block.posters{padding:28px 20px 0}.tile-mosaic .posters-title-wrap h2{font-size:clamp(34px,9.6vw,38px)}.tile-mosaic .poster-rail{-webkit-overflow-scrolling:touch;scroll-snap-type:none;grid-auto-columns:78vw;margin-top:24px}.tile-mosaic .poster-controls{display:none}.poster-controls button:first-child:after{--arrow-ring-direction:reverse;--arc-origin:270deg}.poster-controls button:last-child:after{--arc-origin:90deg}.poster-controls button:hover:not(:active):not(:focus-visible){background:0 0;border-color:#ffffff2e}.poster-controls button:hover:not(:active):not(:focus-visible):after{background:var(--poster-arrow-ring);opacity:.9;animation:var(--arrow-ring-animation,arrow-ring-orbit 5.2s linear infinite);animation-direction:var(--arrow-ring-direction,normal)}.tile-mosaic .about{min-height:520px;padding:32px 24px}.section-heading{margin-left:0}.section h2,.site-footer h2{font-size:40px}.section-heading>p:last-child,.exocad-copy>p:last-child,.keyboard-copy>p:last-child,.posters-title-wrap>p:last-child,.about>p,.footer-brand>p{font-size:16px}.project-layout,.exocad-grid,.keyboard-panel,.about,.footer-main{grid-template-columns:1fr}.project-layout{margin-top:56px}.placeholder-media,.exocad-media{min-height:440px}.project-note{min-height:250px;padding:28px 4px 0}.exocad-grid{gap:52px}.exocad-copy{padding-left:0}.keyboard-panel{min-height:0}.tile-mosaic .keyboard-section{min-height:720px}.tile-mosaic .keyboard-media{background:var(--canvas);border-radius:0 0 24px 24px;top:0}.keyboard-gallery-track{border-radius:var(--radius-media);height:auto;position:absolute;inset:368px 0 0}.keyboard-gallery-image{object-fit:cover}.keyboard-gallery-shade{border-radius:var(--radius-media);background:linear-gradient(#0000 56%,#050507b3 100%);top:368px;bottom:0}.keyboard-gallery-controls{z-index:5;pointer-events:none;background:0 0;height:auto;padding:0;display:block;inset:0}.keyboard-gallery-position{pointer-events:auto;background:0 0;align-items:center;gap:7px;height:64px;padding:0 20px 4px;font-size:11px;display:flex;position:absolute;bottom:0;left:0;right:0}.keyboard-gallery-progress{flex:1;gap:2px;width:auto}.keyboard-gallery-progress button{min-width:0}.keyboard-gallery-arrows{pointer-events:auto;gap:6px;position:absolute;top:290px;right:12px}.keyboard-gallery-arrows button{width:46px;height:46px}.keyboard-gallery-arrows button:hover:not(:active):not(:focus-visible){color:var(--text);background:#050507a8;border-color:#ffffff6b}.keyboard-gallery-arrows button:hover:not(:active):not(:focus-visible):after{background:var(--keyboard-arrow-ring);opacity:.9;animation:var(--arrow-ring-animation,arrow-ring-orbit 5.2s linear infinite);animation-direction:var(--arrow-ring-direction,normal)}.keyboard-gallery-arrows button:first-child:after{--arc-origin:270deg}.keyboard-gallery-arrows button:last-child:after{--arc-origin:90deg}.about{gap:56px}.poster-rail{grid-auto-columns:78vw;gap:12px;margin-top:56px}.poster-card{border-radius:var(--radius-media)}.site-footer{border-radius:24px;width:calc(100% - 16px);margin:8px auto}.footer-contact-actions{flex-direction:column;align-items:stretch;gap:20px}.footer-contact-button{width:100%;min-height:52px}.footer-socials{justify-content:center}.footer-brand .brand-logo{margin-bottom:64px}.footer-socials a:hover:not(:active):not(:focus-visible){color:var(--text);background:0 0;border-color:#fff3}.footer-bottom{flex-direction:column;justify-content:center;align-items:flex-start;margin-top:72px;padding-top:24px;padding-bottom:24px}}@media (max-width:400px){.tile-mosaic .keyboard-copy{min-height:438px}.tile-mosaic .keyboard-section{min-height:calc(75vw + 490px)}.keyboard-gallery-track,.keyboard-gallery-shade{top:438px}.keyboard-gallery-arrows{top:362px}}@media (max-width:340px){.tile-mosaic .keyboard-button{padding-left:10px;padding-right:10px}}@keyframes arrow-ring-orbit{to{transform:rotate(360deg)}}@media (hover:none),(pointer:coarse){.poster-controls button:after,.keyboard-gallery-arrows button:after{--arrow-ring-animation:arrow-ring-orbit 5.2s linear infinite;--arc-grow:120deg;--arc-gap:0deg}}@media (prefers-reduced-motion:reduce){.poster-controls button:after,.keyboard-gallery-arrows button:after{--arrow-ring-animation:arrow-ring-orbit 16s linear infinite;--arc-grow:120deg;--arc-gap:0deg}}@media (max-width:767px){.site-header .cart-button,.site-header .mobile-menu-trigger{--controls-edge:-16px;transform-origin:0 0;transform:translate3d(calc(var(--mobile-controls-progress,0) * var(--controls-edge)), calc(var(--mobile-controls-progress,0) * -16px), 0) scale(calc(1 - var(--mobile-controls-progress,0) * .72));opacity:calc(1 - var(--mobile-controls-progress,0))}.site-header .mobile-menu-trigger{--controls-edge:16px;transform-origin:100% 0}.site-header[data-mobile-controls-moving] .cart-button,.site-header[data-mobile-controls-moving] .mobile-menu-trigger{will-change:transform, opacity}.site-header[data-mobile-controls-hidden] .cart-button,.site-header[data-mobile-controls-hidden] .mobile-menu-trigger{visibility:hidden;pointer-events:none}}@media (max-width:767px) and (prefers-reduced-motion:reduce){.site-header .cart-button,.site-header .mobile-menu-trigger{transform:none}}@media (prefers-reduced-motion:reduce){.hero h1,.hero-content>p,.hero-actions,.exocad-index-copy h1,.exocad-index-copy p{animation-name:hero-soft-enter}}
