.tech-text{display:block;position:relative;width:100%;height:100%;touch-action:auto;-webkit-user-select:none;user-select:none}.tech-text-canvas{display:block;width:100%;height:100%;visibility:hidden;pointer-events:none}.tech-text-fallback{display:block;position:absolute;top:50%;left:50%;width:max-content;max-width:none;line-height:1;white-space:nowrap;transform:translate(-50%,-50%);pointer-events:none}.tech-text[data-align=left] .tech-text-fallback{left:2px;transform:translateY(-50%)}.tech-text[data-canvas-ready=true] .tech-text-canvas{visibility:visible}.tech-text[data-canvas-ready=true] .tech-text-fallback{visibility:hidden}@media(prefers-reduced-motion:reduce){.tech-text[data-canvas-ready=true] .tech-text-canvas{visibility:hidden}.tech-text[data-canvas-ready=true] .tech-text-fallback{visibility:visible}}.pf-cap-motion{display:flow-root}.gravity-site{position:relative;isolation:isolate;color:var(--pf-text);background:transparent}.gravity-site>main,.gravity-site>.pf-footer{position:relative;z-index:1}.pf-section{padding:120px var(--pf-gutter);max-width:1600px;margin:0 auto;scroll-margin-top:100px}.pf-label{display:flex;gap:12px;align-items:center;font:10px/1.6 var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--pf-muted)}.pf-label>span{color:var(--pf-accent)}.pf-dot{color:var(--pf-accent)}.pf-text-link{display:inline-flex;align-items:center;gap:15px;font-size:13px;font-weight:500;transition:color .2s}.pf-text-link svg{width:17px;height:17px;transition:transform .3s}.pf-text-link:hover{color:var(--pf-accent)}.pf-text-link:hover svg{transform:translate(3px,-3px)}.pf-hero{position:relative;padding:96px var(--pf-gutter) 0;min-height:100svh}.pf-hero-stage{position:relative;display:flex;align-items:end;min-height:calc(100svh - 163px);max-width:1456px;margin:auto}.pf-hero-copy{width:100%;padding:0 0 44px}.pf-hero-intro{display:grid;grid-template-columns:1.65fr 1fr;align-items:end;gap:30px 5%}.pf-hero h1{font:600 clamp(58px,6.3vw,108px)/1.04 var(--font-display);letter-spacing:-.045em}.pf-hero-word{display:inline-block}.pf-hero-intro>p{font-size:15px;line-height:1.85;max-width:380px;justify-self:end;margin-right:36px;padding-bottom:4px;color:var(--pf-muted)}.pf-hero-actions{display:flex;gap:28px;align-items:center;grid-column:1 / -1}.pf-hero-actions [data-slot=button]{height:48px;border-radius:999px;padding:0 22px;box-shadow:0 6px 22px #eeeeee12}.pf-hero-side{position:absolute;right:0;top:35%;writing-mode:vertical-rl;font:9px var(--font-mono);letter-spacing:.14em;color:#939393}.pf-hero-bottom{display:flex;align-items:center;justify-content:space-between;min-height:67px;max-width:1456px;margin:auto;padding-right:216px;border-top:1px solid var(--pf-line);font:9px var(--font-mono);letter-spacing:.07em;color:#939393}.pf-hero-bottom a{display:flex;gap:14px;align-items:center}.pf-hero-bottom svg{width:14px;color:var(--pf-accent)}.pf-section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:54px}.pf-section-heading h2,.pf-about h2{font:600 clamp(42px,5.15vw,78px)/1.06 var(--font-display);letter-spacing:-.045em;margin-top:24px}.pf-section-heading h2>span,.pf-about h2>span{color:var(--pf-accent)}.pf-section-heading>p{max-width:300px;font-size:14px;line-height:1.85;color:var(--pf-muted);padding-bottom:4px}.pf-projects{border-bottom:1px solid var(--pf-line)}.pf-project{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) minmax(0,1.15fr);column-gap:clamp(24px,3.8vw,64px);padding:42px 0 44px;border-top:1px solid var(--pf-line)}.pf-project:before{content:"";position:absolute;top:-1px;left:0;width:100%;height:1px;background:#bdbdbd;transform:scaleX(0);transform-origin:left;transition:transform .65s cubic-bezier(.22,1,.36,1)}.pf-project:hover:before,.pf-project:focus-within:before{transform:scaleX(1)}.pf-project-number{padding-top:3px;color:#929292;font:11px/1.6 var(--font-mono)}.pf-project-identity{min-width:0}.pf-project-identity .pf-label{font-size:9px;letter-spacing:.07em}.pf-project-identity h3{margin:7px 0 8px;font:600 48px/1.2 var(--font-display);letter-spacing:-.045em}.pf-project-title{display:block;width:100%;text-align:left}.pf-project-lettering{display:block;width:100%;height:78px}.pf-project-lettering--brand{display:flex;align-items:center}.pf-xyris-wordmark{display:block;width:min(230px,100%);height:auto}.pf-xyris-icon{display:block;width:18px;height:18px;flex-shrink:0}.pf-project-period{display:flex;flex-wrap:wrap;gap:6px 18px;color:#8f8f8f;font:10px/1.6 var(--font-mono)}.pf-project-period>span+span{color:#b7b7b7}.pf-project-copy{min-width:0;padding-top:0}.pf-project-copy>p:not(.pf-project-stack){max-width:600px;font-size:14px;line-height:1.85;color:#b8b8b8}.pf-project-highlights{display:flex;flex-wrap:wrap;gap:5px 15px;padding:0;margin:15px 0 0;list-style:none;color:#b1b1b1;font:10px/1.7 var(--font-mono)}.pf-project-highlights li{display:flex;align-items:center;gap:7px}.pf-project-highlights li:before{content:"";width:3px;height:3px;flex-shrink:0;background:#777}.pf-project-stack{margin:16px 0 0;color:#878787;font:10px/1.8 var(--font-mono)}.pf-project-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:23px}.pf-project-links .pf-text-link{min-height:32px;font-size:12px;gap:10px}.pf-project-links .pf-text-link:after{content:"";position:absolute;bottom:2px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.pf-project-links .pf-text-link{position:relative}.pf-project-links .pf-text-link:hover:after,.pf-project-links .pf-text-link:focus-visible:after{transform:scaleX(1)}.pf-project-links .pf-project-visit{margin-top:0;color:#999}.pf-about{padding-top:0}.pf-about-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:8%;align-items:start;margin-top:32px}.pf-about-grid h2{margin:0 0 30px;font-size:clamp(42px,4.7vw,70px);line-height:1.12}.pf-about-grid p{max-width:530px;font-size:15px;line-height:1.9;color:var(--pf-muted);margin-top:20px}.pf-about-grid p:first-child{margin-top:0}.pf-about-grid .pf-text-link{margin-top:25px}.pf-focus-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid var(--pf-line);padding-top:28px;gap:25px}.pf-focus-row>span{display:flex;align-items:center;gap:20px;font-size:13px}.pf-focus-row>span>span{color:var(--pf-accent);font:9px var(--font-mono)}.pf-focus-row svg{width:15px;margin-left:auto;color:var(--pf-muted)}.pf-expertise{padding-top:105px}.pf-expertise-list{min-width:0;border-top:1px solid var(--pf-line)}.pf-expertise-list details{border-bottom:1px solid var(--pf-line)}.pf-expertise-list summary{display:flex;align-items:center;gap:24px;padding:30px 0;cursor:pointer;list-style:none}.pf-expertise-list summary::-webkit-details-marker{display:none}.pf-expertise-list summary:focus{outline:none}.pf-expertise-list summary:focus-visible h3{text-decoration:underline;text-decoration-color:var(--pf-accent);text-decoration-thickness:1px;text-underline-offset:6px}.pf-expertise-list summary:focus-visible>svg{outline:1px solid #eeeeeea6;outline-offset:5px;border-radius:50%}.pf-cap-num{color:var(--pf-accent);font:10px var(--font-mono);width:30px;flex-shrink:0}.pf-expertise-list h3{min-width:0;font:600 26px/1.3 var(--font-display);letter-spacing:-.045em;transition:color .25s,transform .25s}.pf-expertise-list summary:hover h3{transform:translate(3px)}.pf-expertise-list summary:hover>svg{transform:translate(2px)}.pf-cap-preview{margin-left:auto;color:var(--pf-muted);font:10px var(--font-mono)}.pf-expertise-list summary>svg{width:20px;height:20px;flex-shrink:0;color:var(--pf-accent);transition:transform .25s}.pf-expertise-list details[open] summary>svg{transform:rotate(45deg)}.pf-cap-body{min-width:0;margin:0 0 32px 54px;display:grid;grid-template-columns:1fr 1fr;gap:45px}.pf-cap-body>p{max-width:420px;font-size:13px;line-height:1.85;color:var(--pf-muted)}.pf-cap-body>div{min-width:0;display:flex;flex-wrap:wrap;align-content:start;row-gap:8px}.pf-cap-body>div>span{color:#c8c8c8;font:10px/1.6 var(--font-mono)}.pf-cap-body>div>span+span:before{content:"";display:inline-block;width:2px;height:2px;border-radius:50%;background:var(--pf-accent);vertical-align:middle;margin:0 10px}.pf-journal{padding-bottom:150px}.pf-journal-list{border-top:1px solid var(--pf-line)}.pf-journal-list a{display:grid;grid-template-columns:35px 1fr auto 38px;align-items:center;gap:25px;padding:32px 12px;border-bottom:1px solid var(--pf-line);transition:background .3s}.pf-journal-list a:hover{background:#1e1e1eb3}.pf-post-number{font:10px var(--font-mono);color:var(--pf-accent)}.pf-post-title>p{font:9px var(--font-mono);color:var(--pf-accent);text-transform:uppercase;letter-spacing:.04em;margin-bottom:13px}.pf-post-title>p>span{color:var(--pf-muted);margin-left:8px}.pf-post-title h3{font:600 clamp(20px,2.3vw,30px)/1.3 var(--font-display);letter-spacing:-.045em}.pf-journal-list time{font:9px var(--font-mono);color:var(--pf-muted)}.pf-journal-list svg{width:22px;color:var(--pf-accent);transition:transform .3s}.pf-journal-list a:hover svg{transform:translate(3px,-3px)}.pf-contact{position:relative;overflow:hidden;max-width:none;padding-top:0;padding-bottom:90px;border-radius:64px 64px 0 0;background:radial-gradient(ellipse at 88% 95%,#37373770,transparent 50%),#070707;color:var(--pf-text)}.pf-contact>div:last-child{max-width:1456px;margin:auto}.pf-contact .pf-label{color:var(--pf-muted)}.pf-contact .pf-label>span,.pf-contact .pf-dot{color:var(--pf-accent)}.gravity-marquee{margin:0 calc(-1 * var(--pf-gutter)) 90px;padding:45px 0;border-bottom:1px solid #ffffff1c;overflow:hidden}.gravity-marquee>div{display:flex;width:max-content;animation:gravity-marquee 26s linear infinite}.gravity-marquee>div>span{white-space:nowrap;padding-right:35px;font:600 clamp(45px,5.5vw,86px)/1.1 var(--font-display);letter-spacing:-.045em}.gravity-marquee i{font-style:normal;color:#939393}.gravity-marquee span>span{color:var(--pf-accent);padding:0 22px}@keyframes gravity-marquee{to{transform:translate(-50%)}}.pf-contact-row{display:flex;justify-content:space-between;align-items:center;gap:45px;margin-top:30px}.pf-contact h2{font:600 clamp(65px,8.6vw,132px)/1.02 var(--font-display);letter-spacing:-.045em}.pf-contact h2>span:not(.pf-dot){color:#979797}.pf-contact-arrow[data-slot=button]{width:clamp(85px,12vw,170px);height:clamp(85px,12vw,170px);border-radius:50%;flex-shrink:0;background:#eee;color:#212121;box-shadow:inset 0 3px 10px #fff,0 0 80px #eeeeee1a;transition:transform .4s,background .4s}.pf-contact-arrow[data-slot=button]:hover{transform:rotate(45deg);background:#fff}.pf-contact-arrow[data-slot=button] svg{width:40%;height:40%}.pf-contact-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:65px;gap:30px}.pf-contact-bottom p{font-size:14px;line-height:1.85;color:#adadad}.pf-contact-bottom .pf-text-link{padding-bottom:9px;border-bottom:1px solid #ffffff40}.gravity-site>.pf-footer{margin:0;padding:30px var(--pf-gutter);background:#070707;color:var(--pf-text);border-color:#ffffff1c}.gravity-site>.pf-footer p{color:#949494}.gravity-site>.pf-footer .pf-brand>span{color:var(--pf-accent)}.pf-loading-dialog{position:fixed;z-index:80;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0b0b0be6}.pf-project-dialog{display:flex;flex-direction:column;gap:22px;width:min(740px,calc(100% - 32px));max-width:none;height:min(740px,88svh);padding:32px;border-color:var(--pf-line);border-radius:24px;overflow:hidden}.pf-project-dialog-header{flex-shrink:0;gap:10px;padding-right:24px;text-align:left}.pf-project-dialog h2{font:600 34px/1.2 var(--font-display);letter-spacing:-.045em}.pf-project-dialog .pf-xyris-wordmark{width:min(180px,100%)}.pf-project-dialog [data-slot=dialog-description]{font-size:13px;line-height:1.75;color:var(--pf-muted)}.pf-project-tabs{min-height:0;flex:1;gap:18px}.pf-project-tabs>[data-slot=tabs-list]{flex-shrink:0;max-width:100%}.pf-project-panel{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#555 transparent;padding:0 10px 4px 0}.pf-project-panel:focus-visible{outline:1px solid var(--pf-line);outline-offset:-1px}.pf-project-meta{display:grid;gap:10px;margin:0 0 20px;padding:18px 0;border-block:1px solid var(--pf-line)}.pf-project-meta>div{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px}.pf-project-meta dt{font:9px/1.8 var(--font-mono);color:var(--pf-accent);text-transform:uppercase}.pf-project-meta dd{font-size:12px;line-height:1.7;color:var(--pf-muted)}.pf-project-intro{font-size:13px;line-height:1.85;color:var(--pf-muted);margin-bottom:8px}.pf-project-detail-list{list-style:none;margin:0;padding:0}.pf-project-detail-list>li{display:grid;grid-template-columns:25px minmax(0,1fr);gap:16px;padding:20px 0;border-bottom:1px solid var(--pf-line)}.pf-project-detail-list>li>span{padding-top:5px;font:9px/1.5 var(--font-mono);color:var(--pf-muted)}.pf-project-detail-list h3{margin:0 0 7px;font:600 16px/1.4 var(--font-display);letter-spacing:-.045em}.pf-project-detail-list p{font-size:13px;line-height:1.8;color:var(--pf-muted)}.pf-project-dialog .pf-project-note{margin-top:22px;font:9px/1.8 var(--font-mono);color:var(--pf-muted)}.pf-project-visit{margin-top:24px}.pf-dialog-detail{margin-top:12px;padding-top:20px;border-top:1px solid var(--pf-line)}.pf-dialog-detail h3{font:10px var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--pf-accent);margin-bottom:10px}.pf-dialog-detail p{font-size:13px;line-height:1.8;color:var(--pf-muted)}.gravity-controls{display:flex;gap:5px}.gravity-control[data-slot=button]{width:40px;height:40px;border-radius:50%;color:#c7c7c7}.gravity-control[data-slot=button]:hover{background:#eeeeee12}.gravity-control svg{width:17px;height:17px}.pf-wave-backdrop{position:fixed;z-index:0;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;background:var(--pf-bg)}.pf-wave-field{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;opacity:var(--wave-opacity,.52)}.pf-wave-field>.shape-waves{position:absolute;top:0;right:0;bottom:0;left:0}.pf-wave-poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(var(--wave-gain,1));transition:opacity .6s}.pf-wave-backdrop[data-ready=true] .pf-wave-poster{opacity:0}.pf-wave-shade{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#080808f5 0%,#08080826 20%,transparent 36%,#080808c7 57%,#080808f5 74%,#080808 100%),linear-gradient(90deg,#08080850,transparent 30%,transparent 70%,#08080850)}.gravity-site[data-paused=true] .gravity-marquee>div{animation-play-state:paused}@media(min-width:1700px){.pf-hero h1{font-size:108px}}@media(max-width:1000px){.pf-hero-intro{grid-template-columns:1.5fr 1fr;gap:24px}.pf-hero h1{font-size:7.2vw}.pf-hero-intro>p{font-size:12px}.pf-desktop-break,.pf-cap-preview{display:none}.pf-expertise-list summary>svg{margin-left:auto}.pf-about-grid{gap:5%}.pf-about-grid h2{font-size:45px}}@media(max-width:700px){.pf-section{padding:82px var(--pf-gutter);scroll-margin-top:78px}.pf-hero{padding-top:80px}.pf-hero-stage{min-height:calc(100svh - 206px)}.pf-hero-copy{min-width:0;padding-bottom:30px}.pf-hero-intro{grid-template-columns:minmax(0,1fr);gap:22px;padding-top:37svh}.pf-hero-intro>*{min-width:0;max-width:100%}.pf-hero h1{font-size:clamp(30px,10vw,68px);line-height:1.1;letter-spacing:-.045em}.pf-hero-intro>p{font-size:13px;max-width:310px;justify-self:start;margin-right:0;line-height:1.75;padding:0}.pf-hero-actions{flex-wrap:wrap;gap:12px 20px}.pf-hero-actions [data-slot=button]{height:46px;padding:0 20px;font-size:12px}.pf-hero-actions .pf-text-link{min-height:44px;font-size:12px;gap:8px;white-space:nowrap}.pf-hero-side{display:none}.pf-hero-bottom{min-height:126px;padding:0 0 64px;gap:16px;font-size:7px;letter-spacing:.02em}.pf-hero-bottom a{font-size:8px;gap:6px;white-space:nowrap}.pf-section-heading{flex-direction:column;align-items:start;gap:24px;margin-bottom:34px}.pf-section-heading h2,.pf-about h2{font-size:clamp(39px,9vw,60px)}.pf-section-heading>p{font-size:13px}.pf-project{grid-template-columns:24px minmax(0,1fr);gap:22px 16px;padding:29px 0 32px}.pf-project-identity h3{margin:7px 0;font-size:36px}.pf-project-lettering{height:66px}.pf-project-copy{grid-column:2}.pf-project-copy>p:not(.pf-project-stack){font-size:13px}.pf-project-highlights{font-size:9px;gap:6px 12px}.pf-project-links{margin-top:17px}.pf-project-links .pf-text-link{min-height:40px}.pf-about{padding-top:0}.pf-about-grid{display:flex;flex-direction:column;gap:6px}.pf-about-grid p{font-size:14px}.pf-focus-row{margin-top:35px;grid-template-columns:1fr;gap:21px}.pf-expertise-list summary{gap:12px;padding:26px 0}.pf-expertise-list h3{font-size:21px}.pf-cap-num{width:22px;font-size:9px}.pf-cap-body{grid-template-columns:minmax(0,1fr);gap:20px;margin:0 0 26px}.pf-cap-body>div>span{font-size:9px}.pf-journal-list a{grid-template-columns:20px 1fr 22px;gap:14px;padding:26px 0}.pf-journal-list time{grid-column:2;grid-row:2;font-size:8px;margin-top:-4px}.pf-journal-list svg{grid-column:3;grid-row:1;width:18px}.pf-post-title>p{font-size:8px;line-height:1.7;margin-bottom:9px}.pf-post-title>p>span{display:block;margin:2px 0 0}.pf-post-title h3{font-size:23px}.pf-contact{padding-top:0;border-radius:40px 40px 0 0;padding-bottom:58px}.gravity-marquee{margin-bottom:58px;padding:30px 0}.pf-contact-row{flex-direction:column;align-items:start;gap:35px}.pf-contact h2{font-size:clamp(54px,12.5vw,86px)}.pf-contact-arrow[data-slot=button]{width:88px;height:88px;align-self:end;margin-top:-10px}.pf-contact-bottom{flex-direction:column;align-items:start;gap:28px;margin-top:24px}.pf-contact-bottom p{font-size:13px}.pf-project-dialog{padding:23px 20px;gap:18px;border-radius:20px;height:min(740px,90svh)}.pf-project-dialog h2{font-size:27px}.pf-project-dialog [data-slot=dialog-description]{font-size:12px;line-height:1.7}.pf-project-detail-list>li{gap:10px;grid-template-columns:20px minmax(0,1fr);padding:17px 0}.gravity-control[data-slot=button]{width:44px;height:44px}.gravity-controls{gap:0}.pf-wave-shade{background:linear-gradient(180deg,#080808eb 0%,#08080820 17%,transparent 30%,#080808cc 57%,#080808f5 73%,#080808 95%)}}@media(max-height:550px){.pf-project-dialog{height:calc(100svh - 24px);padding:18px 24px;gap:12px}.pf-project-dialog-header{gap:6px}.pf-project-dialog h2{font-size:26px}.pf-project-dialog [data-slot=dialog-description]{font-size:12px;line-height:1.55}.pf-project-tabs{gap:12px}}@media(prefers-reduced-motion:reduce){.gravity-marquee>div{animation:none}.pf-wave-poster{transition:none}.pf-expertise-list h3,.pf-expertise-list summary>svg{transition:none}.pf-expertise-list summary:hover h3,.pf-expertise-list summary:hover>svg{transform:none}.pf-project:before,.pf-project-links .pf-text-link:after{transition:none}}
