:root{color-scheme:dark;--background: #0a0a0a;--anthracite: #111111;--foreground: #f2f2f0;--muted: #454545;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scrollbar-gutter:stable}.site-shell,.page-outlet{min-height:100dvh}body{margin:0}.home,.loader{width:100%;min-height:100vh;height:100dvh}.home{--title-size: clamp(120px, 24vw, 420px);position:relative;isolation:isolate;overflow:hidden}.background{position:absolute;inset:0;z-index:-1;background:var(--background);pointer-events:none}.ambient-blob{position:absolute;width:min(1050px,110vw);top:80px;right:-18%;opacity:.17;filter:blur(3px);pointer-events:none}.ambient-blob svg{display:block;width:100%;height:auto;overflow:visible}.ambient-blob path{fill:#bdcf9c}.contact-page .ambient-blob{top:140px;right:auto;left:-30%;opacity:.2}.contact-page .ambient-blob path{fill:#d6df9d}.background__light,.background__grain,.background__grid{position:absolute;inset:0}.background__light{background:url(/textures/light.svg) center / cover no-repeat}.background__grain{background:url(/textures/grain.svg) repeat;opacity:.08;mix-blend-mode:screen}.grid-line{position:absolute;display:block;background:#ffffff0d}.grid-line--top{top:72px;left:0;right:0;height:1px}.grid-line--bottom{bottom:72px;left:0;right:0;height:1px}.grid-line--vertical{top:72px;bottom:72px;left:72%;width:1px}.grid-line--left{top:72px;bottom:72px;left:24%;width:1px}.organic-art{opacity:0;pointer-events:none}.organic-art svg{width:100%;height:100%;overflow:visible}.side-shapes{position:absolute;inset:0;pointer-events:none}.side-shape{position:absolute;width:36vw;height:auto;overflow:visible;opacity:.17}.side-shape--left{left:-19vw;top:5%}.side-shape--right{right:-22vw;top:1%;width:42vw}.navbar{position:fixed;z-index:6;top:calc(22px + env(safe-area-inset-top,0px));left:50vw;transform:translate(-50%);display:flex;align-items:center;gap:clamp(36px,4.5vw,72px);white-space:nowrap;font-size:clamp(18px,1.4vw,20px);font-weight:600;line-height:1.1;letter-spacing:-.035em;text-transform:uppercase}.navbar__item{display:inline-flex;align-items:flex-start;gap:7px;color:var(--foreground);text-decoration:none}.navbar__number{padding-top:1px;color:#f2f2f073;font-size:10px;font-weight:400;letter-spacing:0;line-height:1}.navbar__label{position:relative}.navbar__label:after{content:"";position:absolute;bottom:-6px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .38s cubic-bezier(.16,1,.3,1)}.navbar__item:hover .navbar__label:after,.navbar__item:focus-visible .navbar__label:after{transform:scaleX(1)}.navbar [aria-disabled]{cursor:default}.navbar a:focus-visible{outline:1px solid var(--foreground);outline-offset:7px}.hero-frame{position:absolute;top:52%;left:50%;transform:translate(-50%,-50%);width:calc(var(--title-size) * 2.7);height:calc(var(--title-size) * 1.02)}.title-composition{z-index:1}.hero-title{--cursor-x: -1000px;--cursor-y: -1000px;--lens-radius: 0px;--lens-mask: radial-gradient(circle var(--lens-radius) at var(--cursor-x) var(--cursor-y), #fff 99%, transparent 100%);position:relative;width:100%;height:100%;z-index:1;display:grid;margin:0;font-size:var(--title-size);font-weight:700;letter-spacing:-.065em;line-height:.9;white-space:nowrap}.hero-title__window{display:block;overflow:hidden;padding:.06em .09em;margin:0 -.09em}.hero-title__letter{position:relative;display:block;transform:translateY(115%) scaleY(1.12);transform-origin:center bottom}.hero-title__layer{grid-area:1 / 1;display:flex;justify-content:center;padding-right:.065em;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mask-mode:match-source}.organic-mask-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.graphic-marks{position:absolute;inset:0;pointer-events:none;color:#f2f2f059;font:9px/1.9 Arial,sans-serif;letter-spacing:.08em}.graphic-marks i{display:block;font-style:normal}.graphic-marks__index{position:absolute;top:23%;left:5%;display:flex;align-items:center;gap:14px}.mark-cross{font-size:17px;font-weight:400}.mark-vertical{height:22px;width:1px;background:currentColor;margin-left:12px}.graphic-marks__left{position:absolute;left:5%;bottom:110px;display:flex;align-items:center;gap:22px}.mark-square{width:9px;height:9px;border:1px solid currentColor}.mark-rule{width:60px;height:1px;background:currentColor}.graphic-marks__right{position:absolute;right:5%;top:65%;display:grid;gap:15px}.mark-circle{width:13px;height:13px;border:1px solid currentColor;border-radius:50%}.graphic-marks__right .mark-rule{width:26px}.graphic-marks__date{position:absolute;right:5%;bottom:24px;display:flex;align-items:center;gap:15px}.hero-title__layer--fill{color:var(--foreground);-webkit-mask-image:var(--mask-outside);mask-image:var(--mask-outside)}.hero-title__layer--stroke{color:transparent;-webkit-text-stroke:1px var(--foreground);-webkit-mask-image:var(--mask-inside);mask-image:var(--mask-inside);pointer-events:none}.hero-title__layer--lens-fill,.hero-title__layer--lens-stroke{visibility:hidden;pointer-events:none}@supports (mask-composite: subtract){.hero-title__layer--fill{-webkit-mask-image:var(--mask-outside),var(--lens-mask);mask-image:var(--mask-outside),var(--lens-mask);-webkit-mask-composite:source-out;mask-composite:subtract}.hero-title__layer--stroke{-webkit-mask-image:var(--mask-inside),var(--lens-mask);mask-image:var(--mask-inside),var(--lens-mask);-webkit-mask-composite:source-out;mask-composite:subtract}.hero-title__layer--lens-fill{visibility:visible;color:var(--foreground);-webkit-mask-image:var(--mask-inside),var(--lens-mask);mask-image:var(--mask-inside),var(--lens-mask);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-title__layer--lens-stroke{visibility:visible;color:transparent;-webkit-text-stroke:1px var(--foreground);-webkit-mask-image:var(--mask-outside),var(--lens-mask);mask-image:var(--mask-outside),var(--lens-mask);-webkit-mask-composite:source-in;mask-composite:intersect}}.hero-title[data-live-clip] .hero-title__layer{-webkit-mask-image:none;mask-image:none}.hero-title[data-live-clip] .hero-title__layer--fill,.hero-title[data-live-clip] .hero-title__layer--lens-stroke{clip-path:url(#live-blob-outside)}.hero-title[data-live-clip] .hero-title__layer--stroke,.hero-title[data-live-clip] .hero-title__layer--lens-fill{clip-path:url(#live-blob-inside)}.hero-title[data-live-clip] .hero-title__layer--lens-fill,.hero-title[data-live-clip] .hero-title__layer--lens-stroke{visibility:hidden}@media(hover:hover)and (pointer:fine){@supports (mask-composite: subtract){.hero-title[data-live-clip] .hero-title__layer--fill,.hero-title[data-live-clip] .hero-title__layer--stroke{-webkit-mask-image:linear-gradient(#fff,#fff),var(--lens-mask);mask-image:linear-gradient(#fff,#fff),var(--lens-mask);-webkit-mask-composite:source-out;mask-composite:subtract}.hero-title[data-live-clip] .hero-title__layer--lens-fill,.hero-title[data-live-clip] .hero-title__layer--lens-stroke{visibility:visible;-webkit-mask-image:var(--lens-mask);mask-image:var(--lens-mask);-webkit-mask-composite:source-over;mask-composite:add}}}.hero-baseline{position:absolute;top:calc(100% - var(--title-size) * .16 + 24px);left:50%;width:max-content;max-width:92vw;margin:0;translate:-50% 0;transform:translateY(8px);opacity:0;font-size:clamp(12px,.95vw,15px);font-weight:400;line-height:1.5;letter-spacing:.14em;color:#f2f2f0a6;text-align:center;text-transform:uppercase}.taoo-cursor{position:fixed;top:0;left:0;width:0;height:0;z-index:20;pointer-events:none;visibility:hidden}.taoo-cursor:after{content:"";position:absolute;width:24px;height:24px;translate:-50% -50%;border:1px solid rgb(242 242 240 / 65%);border-radius:50%;transition:width .35s ease,height .35s ease,opacity .35s ease}.taoo-cursor.is-visible{visibility:visible}.taoo-cursor.is-nav:after{width:38px;height:38px;opacity:.65}.taoo-cursor.is-profile:after{border-color:#090909a6}.profile-card{position:absolute;z-index:3;top:calc(12px + env(safe-area-inset-top,0px));right:calc(18px + env(safe-area-inset-right,0px));width:340px;max-width:calc(100% - 32px);opacity:0;transform:translateY(-8px)}.profile-card__surface{position:relative;display:flex;align-items:stretch;gap:10px;padding:5px;background:#f2f2f0;color:#090909;border-radius:5px;transition:transform .3s ease}.profile-card__photo{display:block;flex:0 0 64px;width:64px;height:64px;object-fit:cover;object-position:51% 45%;border-radius:2px}.profile-card__surface{text-decoration:none}.profile-card__surface:focus-visible{outline:1px solid var(--foreground);outline-offset:4px}.profile-card__copy{min-width:0;padding:3px 15px 2px 0;display:flex;flex-direction:column}.profile-card__title{margin:0 0 auto;font-size:14px;font-weight:600;line-height:1.1;letter-spacing:-.035em}.profile-card__name{margin:0 0 3px;font-size:12px;font-weight:500;line-height:1}.profile-card__role{margin:0;font-size:10px;font-weight:400;line-height:1.1;color:#0909097f}.profile-card__pixel{position:absolute;top:8px;right:8px;width:12px;height:12px}.profile-card__pixel i{position:absolute;display:block;width:4px;height:4px;background:#090909;transition:translate .3s ease}.profile-card__pixel i:nth-child(1){top:0;right:0}.profile-card__pixel i:nth-child(2){top:4px;right:4px}.profile-card__pixel i:nth-child(3){top:8px;right:8px}@media(hover:hover)and (prefers-reduced-motion:no-preference){.profile-card:hover .profile-card__surface{transform:translateY(-2px)}.profile-card:hover .profile-card__pixel i:first-child{translate:1px -1px}.profile-card:hover .profile-card__pixel i:last-child{translate:-1px 1px}}@media(max-width:1200px){.profile-card{top:calc(86px + env(safe-area-inset-top,0px))}}@media(max-width:600px){.profile-card{top:calc(82px + env(safe-area-inset-top,0px));right:calc(16px + env(safe-area-inset-right,0px));width:320px}.profile-card__surface{gap:8px}.profile-card__photo{width:60px;height:60px;flex-basis:60px}.profile-card__title{font-size:13px}}@media(max-height:500px)and (min-width:601px)and (max-width:1200px){.profile-card{top:64px;width:300px}.profile-card__photo{width:54px;height:54px;flex-basis:54px}.profile-card__title{font-size:12px}}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.custom-cursor-active,.custom-cursor-active *{cursor:none!important}}@media(prefers-reduced-motion:reduce){.navbar__label:after{transition:none}}.loader{position:fixed;inset:0;z-index:10;display:grid;place-items:center;background:var(--background)}.loader__wordmark{position:relative;font-size:clamp(38px,8vw,120px);font-weight:700;line-height:1.1;letter-spacing:-.055em;white-space:nowrap}.loader__base{color:var(--muted)}.loader__fill{position:absolute;inset:0;color:var(--foreground);clip-path:inset(0 100% 0 0)}@media(max-width:600px){.hero-baseline{font-size:clamp(9px,2.5vw,12px);letter-spacing:.12em;top:calc(100% - var(--title-size) * .12 + 20px)}.side-shape{opacity:.12}.side-shape--left{width:340px;left:-265px;top:6%}.side-shape--right{width:390px;right:-310px;top:27%}.home{--title-size: 30vw}.navbar{top:calc(22px + env(safe-area-inset-top,0px));gap:clamp(16px,4vw,24px);font-size:clamp(14px,3.8vw,18px)}.navbar__item{gap:4px}.navbar__number{font-size:9px}.loader__wordmark{font-size:clamp(38px,9vw,54px)}.grid-line--top{top:66px}.grid-line--bottom{bottom:62px}.grid-line--vertical,.grid-line--left{top:66px;bottom:62px}.graphic-marks__left{bottom:90px}.graphic-marks__left .mark-rule{width:35px}.graphic-marks__index{top:22%}.graphic-marks__right{top:68%}}@media(max-height:500px)and (min-width:601px){.home{--title-size: min(24vw, 42dvh)}.hero-frame{top:55%}}.contact-page{position:relative;isolation:isolate;min-height:100dvh;overflow:clip;background:var(--background)}.contact-content{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:7vw;width:88%;max-width:1440px;margin:0 auto;padding:clamp(130px,17dvh,190px) 0 80px;align-items:start}.contact-address,.contact-form{opacity:0;min-width:0}.contact-kicker{font-size:10px;letter-spacing:.16em;color:#c7cec0;margin:0 0 38px}.contact-intro h1{margin:0;font-size:clamp(46px,5.8vw,90px);font-weight:400;line-height:1.02;letter-spacing:-.02em}.contact-intro h1 span{color:#e6edb8}.contact-summary{max-width:32ch;margin:28px 0 56px;color:#aeb5a8;font-size:15px;line-height:1.8}.contact-label,.contact-field label{display:block;font-size:10px;font-weight:400;line-height:1.5;letter-spacing:.13em;color:#c0c7b9}.contact-address>.contact-label{border-top:1px solid #ffffff26;padding-top:26px}.contact-address a{display:inline-block;max-width:100%;margin-top:14px;font-size:clamp(21px,2.25vw,34px);letter-spacing:-.035em;color:#e6edb8;text-decoration:none;overflow-wrap:anywhere;text-underline-offset:7px}.contact-address a:hover{text-decoration:underline}.contact-form{border:1px solid #e8dcc242;background:radial-gradient(ellipse at 2% 0%,#efe2b21f,transparent 65%),radial-gradient(ellipse at 100% 35%,#e7b1a21a,transparent 60%),radial-gradient(ellipse at 15% 100%,#b9d8c91c,transparent 65%),#141714f5;padding:30px;box-shadow:inset 0 1px #f3e6c812}.contact-form-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:24px;margin-bottom:28px;border-bottom:1px solid #ffffff24;color:#e6edb8;font-size:10px;letter-spacing:.12em}.contact-form-heading>span:last-child{font-size:24px}.contact-field{margin-bottom:24px}.contact-field label{margin-bottom:10px}.contact-field input,.contact-field textarea{display:block;width:100%;padding:14px 16px;border:1px solid #ffffff30;outline:none;box-shadow:none;border-radius:0;background:#0e110e;color:#f2f2f0;font:400 16px/1.6 Helvetica Neue,Helvetica,Arial,sans-serif;transition:border-color .2s}.contact-field textarea{min-height:185px;resize:vertical}.contact-field input:focus,.contact-field textarea:focus{border-color:#e6edb8}.contact-field [aria-invalid=true]{border-color:#efb39e}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#7f8878;opacity:1}.contact-send{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:54px;padding:14px 20px;border:1px solid #e6edb8;border-radius:0;background:#e6edb8;color:#182014;font:500 11px/1.5 Helvetica Neue,Helvetica,Arial,sans-serif;letter-spacing:.12em;cursor:pointer;transition:background .2s,color .2s}.contact-send{background:linear-gradient(110deg,#f0e7ce,#e6edb8 45%,#cddfce);background-size:180% 100%;border-color:#e8e8c7;transition:background-position .7s ease,border-color .3s}.contact-send:hover{background-position:100% 50%;color:#182014;border-color:#f2f2f0}.contact-send-arrow{font-size:23px}.contact-send:disabled{opacity:.5;cursor:wait}.contact-send:focus-visible,.contact-address a:focus-visible{outline:2px solid #e6edb8;outline-offset:5px}.contact-error,.contact-status{margin:10px 0 0;color:#efb39e;font-size:12px;line-height:1.6}.contact-status{color:#cddfce}.contact-form[data-state=error] .contact-status{color:#efb39e}.contact-error:empty,.contact-status:empty{display:none}.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:900px){.contact-content{gap:5vw}.contact-form{padding:24px}.contact-intro h1{font-size:6vw}}@media(max-width:700px){.contact-content{grid-template-columns:minmax(0,1fr);gap:36px;padding:118px 0 60px}.contact-intro h1{font-size:clamp(44px,10vw,68px)}.contact-kicker{margin-bottom:26px}.contact-summary{margin:22px 0 28px;font-size:14px}.contact-address a{font-size:clamp(22px,5.7vw,32px)}.contact-form{padding:22px 18px}.contact-field textarea{min-height:160px}.contact-page .ambient-blob{width:160vw;left:-55%;top:70px}}@media(prefers-reduced-motion:reduce){.contact-field input,.contact-field textarea,.contact-send{transition:none}}.portfolio-page{position:relative;isolation:isolate;min-height:100dvh;padding:145px 0 40px;overflow:hidden}.portfolio-heading{position:relative;margin:0 6vw 45px;display:grid;grid-template-columns:1fr auto;align-items:end}.portfolio-heading p{grid-column:1 / -1;font-size:10px;letter-spacing:.16em;color:#b7bcb5;margin:0 0 18px}.portfolio-heading h1{margin:0;font-size:clamp(48px,6.5vw,100px);font-weight:400;line-height:1;letter-spacing:-.065em}.portfolio-heading h1 span{color:#e6edb8}.portfolio-count{font-size:10px;letter-spacing:.12em;color:#c3c6bd;padding-bottom:8px}.portfolio-carousel{position:relative;display:flex;gap:22px;overflow-x:auto;padding:12px 6vw 26px;scrollbar-width:none;overscroll-behavior-x:contain;outline:none}.portfolio-carousel{overflow-anchor:none}.portfolio-carousel .portfolio-project{width:var(--card-width, clamp(280px, 31vw, 430px))}.portfolio-carousel[data-layout=loop] .portfolio-project[data-active=true]{border-color:var(--card-accent)}.portfolio-carousel::-webkit-scrollbar{display:none}.portfolio-project{flex:0 0 auto;width:clamp(280px,31vw,430px);aspect-ratio:1;position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;padding:22px;text-align:left;font:inherit;color:#f2f2f0;background:#141614;border:1px solid #ffffff26;border-radius:0;cursor:pointer;transition:border-color .25s,background .25s;overflow:hidden}.portfolio-project:hover{border-color:var(--card-accent);background:#1b1e1a}.portfolio-project__top{display:flex;justify-content:space-between;color:var(--card-accent);font-size:9px;letter-spacing:.12em}.portfolio-project__art{position:relative;overflow:hidden;background:var(--card-accent);display:grid;place-items:center;color:#23271f}.portfolio-project__monogram{font-size:clamp(64px,9vw,150px);letter-spacing:-.08em;font-weight:500}.portfolio-project__art img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;transition:transform .6s ease}.portfolio-project:hover img{transform:scale(1.035)}.portfolio-project__caption{display:flex;justify-content:space-between;align-items:end;gap:12px}.portfolio-project__caption strong{font-size:clamp(20px,2.1vw,32px);font-weight:400;letter-spacing:-.04em;text-transform:uppercase;overflow-wrap:anywhere;line-height:1.05;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.portfolio-project__caption>span{flex-shrink:0;font-size:8px;letter-spacing:.08em;color:#b6bdb0;padding-bottom:3px}.portfolio-project:focus-visible,.portfolio-carousel:focus-visible{outline:2px solid #e6edb8;outline-offset:-3px}.portfolio-note{position:relative;margin:18px 6vw 0;padding-top:22px;border-top:1px solid #ffffff24;color:#90988b;font-size:9px;letter-spacing:.12em;line-height:1.8}.portfolio-empty{padding:60px 0;color:#b6bdb0}@media(max-width:600px){.portfolio-page{padding-top:120px}.portfolio-heading{margin-bottom:28px}.portfolio-project{width:82vw;padding:18px;gap:16px}.portfolio-carousel{gap:14px}.portfolio-count{font-size:8px}}@media(prefers-reduced-motion:reduce){.portfolio-project,.portfolio-project img{transition:none}}.home{height:auto}.profile-card__role{color:#62625d}.navbar__number{color:#8b8b84;opacity:1}.home-hero{position:relative;isolation:isolate;height:100dvh;min-height:560px;overflow:hidden}.studio-summary{position:relative;margin:0 auto;padding:60px 0;width:88%;max-width:1280px;border-top:1px solid #ffffff26}.studio-summary{display:grid;grid-template-columns:1fr 1fr;column-gap:8vw}.section-kicker{font-size:10px;letter-spacing:.13em;color:#b7bcb5}.studio-summary>.section-kicker{grid-column:1/-1}.studio-summary h2{font-size:clamp(26px,3vw,44px);font-weight:400;letter-spacing:-.04em;margin:18px 0}.studio-summary>p:not(.section-kicker){font-size:15px;line-height:1.8;color:#bfc3ba;max-width:70ch}.editorial-links{display:flex;flex-wrap:wrap;gap:24px;grid-column:2}.editorial-links a{font-size:12px;color:#e6edb8;text-underline-offset:5px}.site-footer{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin:0 6%;padding:20px 0;border-top:1px solid #ffffff26;color:#b4b8af;font-size:10px;letter-spacing:.06em;line-height:1.8}.site-footer a{color:inherit;text-decoration:none}.motion-toggle{margin-left:auto;color:inherit;font:inherit;letter-spacing:inherit;background:none;border:0;padding:6px 0;cursor:pointer}.legal-page{width:88%;max-width:850px;margin:auto;padding:150px 0 80px;line-height:1.8;overflow-wrap:anywhere}.legal-page h1{font-size:clamp(36px,6vw,72px);font-weight:400;letter-spacing:-.045em;line-height:1.1}.legal-page h2{font-size:22px;font-weight:400;margin-top:44px;color:#e6edb8}.legal-page p,.legal-page dd{color:#bfc3ba;font-size:15px}.legal-page dd{margin:0 0 18px}.legal-page dt{font-size:13px}.legal-page a{color:#e6edb8;text-underline-offset:4px}.legal-pending{border-left:1px solid #e6edb8;padding-left:18px}.contact-privacy{color:#bdc3b6;font-size:12px;line-height:1.7;margin:18px 0 0}.contact-privacy a{color:inherit;text-underline-offset:3px}.contact-field input,.contact-field textarea{border-color:#798171}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-160%);background:#e6edb8;color:#111;padding:12px;z-index:1000}.skip-link:focus{transform:none}a:focus-visible,button:focus-visible{outline:2px solid #e6edb8;outline-offset:5px}.static-hero{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:24px}.static-hero h1{font-size:clamp(120px,24vw,420px);line-height:.85;margin:0;letter-spacing:-.065em;font-weight:500}.static-hero .hero-baseline{opacity:1;transform:none;position:static}.static-hero a{color:#bfc3ba;font-size:12px}.static-contact .contact-address{opacity:1}.static-contact .privacy-link{font-size:14px}@media(max-width:600px){.studio-summary{grid-template-columns:1fr;padding:40px 0}.editorial-links{grid-column:1}.motion-toggle{margin-left:0}.home-hero{min-height:480px}}@media(prefers-reduced-motion:reduce){.motion-toggle{display:none}}.portfolio-detail{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;overflow:hidden;color:#f2f2f0}.portfolio-detail::backdrop{background:#0000009e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.portfolio-detail__panel{position:absolute;background:#111211;border:1px solid #f2f2f033;box-shadow:0 24px 100px #0008;overflow:hidden}.portfolio-detail__reading{position:absolute;inset:0;width:100%;height:100%}.portfolio-detail__reading{opacity:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.portfolio-detail__header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 32px;border-bottom:1px solid #f2f2f02b}.portfolio-detail__eyebrow{margin:0;font-size:10px;font-weight:400;letter-spacing:.13em;color:#c6c9c3}.portfolio-detail__close{display:flex;align-items:center;justify-content:center;gap:22px;min-height:44px;padding:0 15px;border:1px solid #f2f2f040;border-radius:0;background:transparent;color:inherit;font:inherit;font-size:10px;letter-spacing:.1em;cursor:pointer;transition:background .2s,border-color .2s}.portfolio-detail__close i{font-size:22px;font-weight:300;font-style:normal;line-height:1}.portfolio-detail__close:hover{background:#f2f2f00d;border-color:var(--detail-accent)}.portfolio-detail__scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#f2f2f040 transparent;padding:42px 40px}.portfolio-detail__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:42px;align-items:start}.portfolio-detail__intro{min-width:0}.portfolio-detail__index{font-size:10px;letter-spacing:.15em;color:var(--detail-accent);margin:0 0 24px}.portfolio-detail h2{font-size:clamp(38px,4.6vw,78px);line-height:.98;letter-spacing:-.055em;font-weight:500;margin:0 0 26px;text-transform:uppercase;overflow-wrap:anywhere;text-wrap:balance}.portfolio-detail__description{margin:0;max-width:36ch;white-space:pre-wrap;overflow-wrap:anywhere;font-size:clamp(14px,1.08vw,17px);line-height:1.65;color:#b9bdb6}.portfolio-detail__footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 32px;border-top:1px solid #f2f2f02b;background:#141614}.portfolio-detail__destination{color:#b9bdb6;font-size:10px;letter-spacing:.09em;overflow-wrap:anywhere}.portfolio-detail__demo{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-shrink:0;min-height:52px;min-width:220px;max-width:100%;padding:12px 20px;color:#111312;background:var(--detail-accent);border:1px solid var(--detail-accent);font-size:11px;font-weight:500;letter-spacing:.1em;text-decoration:none;transition:background .2s,color .2s}.portfolio-detail__demo:hover{background:transparent;color:var(--detail-accent)}.portfolio-detail__demo i{font-size:23px;font-style:normal;transition:transform .2s}.portfolio-detail__demo:hover i{transform:translate(3px,-3px)}.portfolio-detail__figure{min-width:0;margin:0}.portfolio-detail__visual{position:relative;aspect-ratio:1.25;max-height:52vh;overflow:hidden;border:1px solid #f2f2f01a}.portfolio-detail__visual.has-image{display:flex;justify-content:center;aspect-ratio:auto;max-height:none;border:0;background:transparent!important}.portfolio-detail__visual img{width:auto;max-width:100%;height:auto;max-height:min(52vh,520px);object-fit:contain;display:block}.portfolio-detail__figure figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:16px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#adb2a9}.portfolio-detail__caption{overflow-wrap:anywhere}.portfolio-detail__placeholder{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:7%;color:#182018}.portfolio-detail__placeholder:after{content:"";position:absolute;inset:0;background:url(/textures/grain.svg);opacity:.055;pointer-events:none}.portfolio-detail__placeholder span{position:relative;z-index:1;font-size:9px;letter-spacing:.1em}.portfolio-detail__placeholder strong{font-weight:400;font-size:clamp(90px,14vw,230px);line-height:.85;letter-spacing:-.09em;align-self:center}.portfolio-detail__placeholder:before{content:"";position:absolute;width:78%;height:68%;border:1px solid #1820183b;border-radius:47% 38% 46% 35%;left:11%;top:18%;rotate:-23deg}.portfolio-detail__visual.has-image .portfolio-detail__placeholder{display:none}.portfolio-detail :focus-visible{outline:1px solid var(--detail-accent);outline-offset:5px}body.portfolio-detail-open .taoo-cursor{visibility:hidden}body.portfolio-detail-open .portfolio-detail,body.portfolio-detail-open .portfolio-detail *{cursor:auto!important}body.portfolio-detail-open .portfolio-detail a,body.portfolio-detail-open .portfolio-detail button{cursor:pointer!important}@media(max-width:700px){.portfolio-detail__header{padding:14px 18px}.portfolio-detail__eyebrow{font-size:8px;max-width:110px;line-height:1.6}.portfolio-detail__close{font-size:9px;padding-inline:12px;gap:15px}.portfolio-detail__scroll{padding:28px 22px}.portfolio-detail__grid{grid-template-columns:minmax(0,1fr);gap:28px}.portfolio-detail__index{margin-bottom:18px;font-size:9px}.portfolio-detail h2{font-size:clamp(34px,10vw,58px);margin-bottom:20px}.portfolio-detail__description{font-size:14px}.portfolio-detail__visual,.portfolio-detail__visual img{max-height:none}.portfolio-detail__placeholder strong{font-size:32vw}.portfolio-detail__footer{padding:14px 18px;flex-wrap:wrap;gap:12px}.portfolio-detail__destination{font-size:9px}.portfolio-detail__demo{width:100%;min-width:0;min-height:48px}}@media(max-height:500px)and (min-width:701px){.portfolio-detail__header,.portfolio-detail__footer{padding:10px 24px}.portfolio-detail__scroll{padding:24px}.portfolio-detail h2{font-size:38px}}@media(prefers-reduced-motion:reduce){.portfolio-detail *{transition:none!important}}.demo-viewer{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#171917;color:#e9ede4;overflow:hidden}.demo-viewer[open]{display:grid;grid-template-columns:88px minmax(0,1fr)}.demo-viewer::backdrop{background:#0b0d0b}.demo-viewer__tools{display:flex;flex-direction:column;align-items:center;gap:20px;padding:24px 12px;background:#0e100e;border-right:1px solid #ffffff26}.demo-viewer__brand{font-size:24px;letter-spacing:-.08em}.demo-viewer__brand span{display:block;font-size:7px;letter-spacing:.15em;margin-top:6px}.demo-viewer__modes{display:grid;gap:10px;margin-top:auto;margin-bottom:auto}.demo-viewer button,.demo-viewer a{color:#bac1b5;background:transparent;border:1px solid #ffffff26;width:58px;min-height:52px;display:grid;place-items:center;text-decoration:none;cursor:pointer;font:inherit}.demo-viewer button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4}.demo-viewer__modes button{gap:6px;padding:10px 4px}.demo-viewer__modes button span{font-size:8px;letter-spacing:.1em}.demo-viewer button[aria-pressed=true]{background:#e6edb8;color:#192015;border-color:#e6edb8}.demo-viewer button:hover,.demo-viewer a:hover{border-color:#e6edb8}.demo-viewer button:focus-visible,.demo-viewer a:focus-visible{outline:2px solid #e6edb8;outline-offset:3px}.demo-viewer .demo-viewer__close,.demo-viewer .demo-viewer__external{font-size:25px}.demo-viewer__workspace{display:grid;grid-template-rows:52px minmax(0,1fr) 38px;min-width:0;min-height:0}.demo-viewer__workspace header{padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #ffffff1a;font-size:10px;letter-spacing:.09em}.demo-viewer__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}.demo-viewer__size{color:#a4ae9d;flex-shrink:0}.demo-viewer__canvas{display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden;background-image:radial-gradient(#ffffff16 1px,transparent 1px);background-size:16px 16px}.demo-viewer__device{position:relative;background:#fff;box-shadow:0 15px 55px #0005;overflow:hidden;outline:1px solid #ffffff30}.demo-viewer iframe{display:block;border:0;transform-origin:top left;background:#fff}.demo-viewer__help{text-align:center;font-size:10px;color:#a4ae9d;padding:0 12px;margin:auto}body.portfolio-detail-open .demo-viewer,body.portfolio-detail-open .demo-viewer *{cursor:auto!important}body.portfolio-detail-open .demo-viewer button,body.portfolio-detail-open .demo-viewer a{cursor:pointer!important}@media(max-width:600px){.demo-viewer[open]{grid-template-columns:minmax(0,1fr);grid-template-rows:64px minmax(0,1fr)}.demo-viewer__tools{flex-direction:row;padding:8px 12px;gap:10px;border-right:0;border-bottom:1px solid #ffffff26}.demo-viewer__brand{font-size:20px}.demo-viewer__brand span{font-size:6px}.demo-viewer__modes{display:flex;margin:0 auto;gap:6px}.demo-viewer button,.demo-viewer a{width:42px;min-height:42px}.demo-viewer__modes button{padding:6px;gap:3px}.demo-viewer__modes button span{font-size:6px}.demo-viewer__workspace header{padding:0 14px;font-size:9px}.demo-viewer__help{font-size:9px}}.demo-viewer__notice{position:absolute;right:20px;bottom:20px;z-index:2;box-sizing:border-box;width:360px;max-width:calc(100% - 40px);max-height:calc(100% - 40px);padding:20px;background:#101210;border:1px solid #ffffff26;box-shadow:0 12px 36px #0005;color:#f2f2f0;overflow:auto}.demo-viewer__notice h2{margin:0 0 8px;font-size:18px;line-height:1.3;font-weight:400;letter-spacing:-.02em}.demo-viewer__notice p{margin:10px 0 0;font-size:12px;line-height:1.6;overflow-wrap:anywhere;color:#c4c8bd}.demo-viewer__notice .demo-viewer__notice-host{margin-top:0;font-size:10px;color:#919b89}.demo-viewer__notice>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.demo-viewer__notice button{width:auto;min-height:40px;max-width:100%;background:#dce5ce;color:#151a13;border:1px solid #dce5ce;border-radius:0;padding:10px 12px;font-size:9px;letter-spacing:.06em;cursor:pointer}.demo-viewer__canvas{position:relative}@media(max-width:600px){.demo-viewer__notice{right:12px;bottom:12px;max-width:calc(100% - 24px);max-height:calc(100% - 24px);padding:16px}}
