@font-face{font-family:Suisse;src:url(/assets/suisse.woff2)format("woff2");font-display:swap}*{box-sizing:border-box}html,body{color:#1a1a1a;background:#f4f4f4;min-height:100%;margin:0;font-family:Suisse,Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:5px;outline:1px solid #1a1a1a}svg{flex-shrink:0;width:16px;height:16px}.portfolio{--card:clamp(230px,23.4vw,490px);--button:clamp(40px,3.35vw,64px);--ease:cubic-bezier(.76,0,.24,1);--soft:cubic-bezier(.22,1,.36,1);height:100dvh;position:relative;overflow:hidden}.identity{z-index:4;width:31%;transition:top 1s var(--soft),transform 1s var(--soft);position:absolute;top:50%;left:17.9%;transform:translateY(-50%)}.identity-title{animation:title-in .8s var(--soft) both}.identity h1,.identity-title>p{letter-spacing:-.045em;margin:0;font-size:clamp(25px,2.1vw,44px);font-weight:400;line-height:1.04}.identity-title>p{color:#999}.controls{transition:margin .8s var(--soft),top .8s var(--soft);align-items:center;gap:7px;margin-top:clamp(38px,3.6vw,70px);animation:1s .2s both appear;display:flex}.icon-button{width:var(--button);height:var(--button);background:#fff;border:0;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;transition:background .3s,color .3s,border-radius .4s,transform .3s,opacity .4s;display:inline-flex;box-shadow:0 2px 10px #00000001}.icon-button:hover,.icon-button.dark{color:#fff;background:#1a1a1a;border-radius:50%}.icon-button:active{transform:scale(.92)}.social-links{opacity:0;max-width:0;transition:max-width .6s var(--soft),opacity .4s;gap:7px;display:flex;overflow:hidden}.social-links .icon-button{opacity:0;transform:translate(-18px)scale(.8)}.expanded .social-links{opacity:1;max-width:700px;overflow:visible}.expanded .social-links .icon-button{opacity:1;transform:none}.is-project .identity{top:32%;transform:none}.is-project .controls{margin:0;position:absolute;top:31vh}.live-link{width:var(--button);transition:width .4s var(--soft),border-radius .3s,background .3s,color .3s;gap:0;overflow:hidden}.live-link span{opacity:0;white-space:nowrap;max-width:0;font-size:14px;transition:max-width .4s,opacity .3s,margin .4s}.live-link:hover,.live-link:focus-visible{border-radius:26px;width:116px}.live-link:hover span,.live-link:focus-visible span{opacity:1;max-width:75px;margin-right:12px}.live-link svg{width:15px}.gallery-ghosts{width:var(--card);height:var(--card);perspective:1000px;transition:opacity .55s,transform 1s var(--soft);animation:1.2s .3s backwards appear;position:absolute;top:50%;left:70.5%;transform:translate(-50%,-50%)}.ghost{filter:blur(.8px);opacity:.7;pointer-events:none;background:#e9e9e9;border-radius:20px;width:94%;height:36px;position:absolute;left:3%}.ghost-top{top:-55%;transform:rotateX(58deg)}.ghost-top-far{opacity:.35;top:-68%;transform:rotateX(65deg)scale(.96)}.ghost-bottom{top:155%;transform:rotateX(-58deg)}.ghost-bottom-far{opacity:.35;top:168%;transform:rotateX(-65deg)scale(.96)}.ghost span{color:#c5c5c5;font-size:14px;position:absolute;bottom:10%;left:9%}.is-switching .ghost{animation:ghost-shift .95s var(--soft)}.work-surface{left:calc(70.5% - var(--card)/2);top:calc(50% - var(--card)/2);width:var(--card);height:var(--card);z-index:5;perspective:1200px;transition:left .95s var(--ease),top .95s var(--ease),width .95s var(--ease),height .95s var(--ease),border-radius .95s var(--ease),opacity .65s,transform .9s var(--soft);animation:surface-intro 1.2s var(--soft) backwards;border-radius:36px;position:absolute;overflow:hidden}.project-stack{scrollbar-width:none;height:100%;transition:padding .95s var(--ease);border-radius:inherit;padding:0;overflow:hidden}.project-stack::-webkit-scrollbar{display:none}.project-tile{aspect-ratio:1;isolation:isolate;width:100%;transition:border-radius .95s var(--ease);perspective:1200px;border-radius:36px;position:relative;overflow:hidden}.additional-tile{display:none}.media-face{z-index:2;border-radius:inherit;opacity:1;filter:blur();transition:opacity .75s var(--soft),filter .75s var(--soft),transform .9s var(--soft);background:inherit;position:absolute;inset:0;overflow:hidden;transform:scale(1)}.media-face video,.media-face img{object-fit:cover;width:100%;height:100%;display:block}.media-placeholder{background:#ddd;width:100%;height:100%}.card-label{letter-spacing:-.025em;opacity:1;font-size:clamp(12px,.8vw,16px);transition:opacity .3s;position:absolute;bottom:8.5%;left:9%}.card-label.light{color:#fff}.tile-toggle{z-index:4;border-radius:inherit;cursor:pointer;background:0 0;border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.tile-toggle:focus-visible{outline-offset:-6px}.info-face{z-index:1;border-radius:inherit;opacity:0;transition:opacity .7s var(--soft);background:#fdfdfc;flex-direction:column;justify-content:space-between;padding:8.5%;display:flex;position:absolute;inset:0}.info-face h2{transition:transform .7s var(--soft);margin:0;font-size:13px;font-weight:400;transform:translateY(15px)}.info-face p{letter-spacing:-.035em;white-space:pre-line;transition:transform .85s var(--soft);margin:0;font-size:clamp(17px,1.75vw,28px);line-height:1.2;transform:translateY(30px)}.info-revealed .info-face{opacity:1}.info-revealed .info-face h2,.info-revealed .info-face p{transform:none}.info-revealed .media-face{opacity:0;filter:blur(12px);pointer-events:none;transform:scale(1.035)}.is-project .work-surface{border-radius:0;width:49.3%;height:100%;top:0;left:50.7%}.is-project .project-stack{padding:12px 12px 12px 0;overflow-y:auto}.is-project .project-tile{border-radius:clamp(32px,4.5vw,72px);margin-bottom:12px}.is-project .additional-tile{animation:.6s .35s both appear;display:block}.is-project .card-label{opacity:0}.is-project .gallery-ghosts,.is-project .pagination{opacity:0;pointer-events:none}.collapse{left:calc(50.7% - var(--button) - 18px);z-index:8;opacity:0;pointer-events:none;transition:transform .6s var(--soft),opacity .4s;position:absolute;top:50%;transform:translateY(-50%)scale(.8)}.is-project .collapse{opacity:1;pointer-events:auto;transition-delay:.5s;transform:translateY(-50%)scale(1)}.collapse:hover{transform:translateY(-50%)scale(1.07)}.pagination{flex-direction:column;transition:opacity .5s;animation:1.2s .4s backwards appear;display:flex;position:absolute;top:50%;right:5.1%;transform:translateY(-50%)}.pagination button{background:0 0;border:0;place-items:center;width:24px;height:15px;padding:0;display:grid}.pagination span{background:#c8c8c8;border-radius:50%;width:3px;height:3px;transition:background .3s,transform .3s}.pagination button[aria-current] span{background:#252525;transform:scale(1.15)}.is-switching .work-surface,.is-switching .project-stack,.is-switching .first-tile{overflow:visible}.is-switching .first-tile{background:0 0!important}.carousel-in{animation:carousel-in .95s var(--soft) both}.carousel-out{animation:carousel-out .95s var(--soft) both;z-index:3}.reverse .carousel-in{animation-name:carousel-in-reverse}.reverse .carousel-out{animation-name:carousel-out-reverse}.about-copy{letter-spacing:-.025em;color:#999;margin-top:65px;font-size:clamp(20px,1.4vw,28px);line-height:1.2;display:none}.is-about .identity{scrollbar-width:none;height:100%;padding-top:32vh;padding-bottom:18vh;top:0;overflow-y:auto;transform:none;-webkit-mask-image:linear-gradient(#0000,#000 8% 83%,#0000);mask-image:linear-gradient(#0000,#000 8% 83%,#0000)}.is-about .controls{margin-top:clamp(38px,3.6vw,70px)}.is-about .contact-toggle{display:none}.is-about .about-copy{animation:1s .15s both about-in;display:block}.about-copy p{margin:0 0 34px}.about-copy strong{color:#1a1a1a;font-weight:400}.about-copy section{color:#1a1a1a;margin:65px 0}.about-copy h2{color:#999;letter-spacing:0;margin:0 0 25px;font-size:13px;font-weight:400}.about-copy section span{color:#999}.about-copy .availability{color:#555}.about-copy .credits{margin-top:60px;font-size:14px;line-height:1.3}.is-about .work-surface{opacity:0;pointer-events:none;transform:translateY(30px)scale(.95)}.is-about .gallery-ghosts,.is-about .pagination{opacity:0;pointer-events:none}.globe-stage{opacity:0;pointer-events:none;width:32%;transition:opacity .9s,transform 1.2s var(--soft);position:absolute;top:50%;left:61%;transform:translateY(-45%)scale(.9)}.is-about .globe-stage{opacity:1;pointer-events:auto;transform:translateY(-50%)scale(1)}.globe-button{color:#999;background:0 0;border:0;width:100%;padding:0;font-size:13px;display:block}.globe-canvas{width:100%;height:clamp(280px,29vw,560px)}.globe-button span{margin-top:-20px;display:block}.empty-gallery{color:#999;position:absolute;top:50%;left:60%}.sr-only{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}@keyframes appear{0%{opacity:0}to{opacity:1}}@keyframes title-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes surface-intro{0%{opacity:0;transform:translateY(25px)scale(.97)}to{opacity:1;transform:none}}@keyframes about-in{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes carousel-in{0%{opacity:0;transform:translateY(115%)rotateX(-76deg)scale(.88)}35%{opacity:.25}to{opacity:1;transform:none}}@keyframes carousel-out{0%{opacity:1;transform:none}65%{opacity:.2}to{opacity:0;transform:translateY(-115%)rotateX(76deg)scale(.88)}}@keyframes carousel-in-reverse{0%{opacity:0;transform:translateY(-115%)rotateX(76deg)scale(.88)}35%{opacity:.25}to{opacity:1;transform:none}}@keyframes carousel-out-reverse{0%{opacity:1;transform:none}65%{opacity:.2}to{opacity:0;transform:translateY(115%)rotateX(-76deg)scale(.88)}}@keyframes ghost-shift{50%{opacity:.2;filter:blur(3px)}}@media (min-width:1800px){.icon-button svg{width:21px;height:21px}}@media (max-width:760px){.portfolio{--card:min(66vw,340px);--button:46px}.identity{width:84%;top:12%;left:8%;transform:none}.identity h1,.identity-title>p{font-size:28px}.controls{margin-top:26px}.work-surface{left:calc(50% - var(--card)/2);top:calc(64% - var(--card)/2);border-radius:28px}.gallery-ghosts{top:64%;left:50%}.ghost-top{top:-30%}.ghost-top-far{top:-43%}.ghost-bottom{top:130%}.ghost-bottom-far{top:143%}.pagination{top:64%;right:5%}.project-tile{border-radius:28px}.card-label{font-size:12px}.is-project .identity{width:80%;top:5%}.is-project .identity h1{font-size:25px}.is-project .identity-title>p{font-size:23px}.is-project .controls{margin-top:20px;position:static}.is-project .work-surface{width:100%;height:72%;top:28%;left:0}.is-project .project-stack{padding:8px}.is-project .project-tile{border-radius:30px;min-height:380px;margin-bottom:8px}.info-face{padding:28px}.info-face p{font-size:18px}.collapse{width:42px;height:42px;top:18%;left:auto;right:7%;transform:scale(.8)}.is-project .collapse{transform:scale(1)}.collapse:hover{transform:scale(1.05)}.is-about .identity{z-index:3;width:84%;padding-top:10vh;padding-bottom:20vh;-webkit-mask-image:linear-gradient(#0000,#000 4% 92%,#0000);mask-image:linear-gradient(#0000,#000 4% 92%,#0000)}.about-copy{width:100%;margin-top:45px;padding-top:240px;font-size:23px}.globe-stage{z-index:4;width:55%;top:27%;left:42%;transform:scale(.9)}.is-about .globe-stage{pointer-events:none;transform:scale(1)}.globe-button{pointer-events:auto}.globe-canvas{height:230px}.globe-button span{margin-top:-15px;font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (min-width:761px){.portfolio{--card:clamp(300px,30vw,570px);--button:clamp(46px,3.75vw,70px)}.identity h1,.identity-title>p{font-size:clamp(30px,2.6vw,52px)}.identity{width:36%;left:15%}.is-project .identity h1,.is-project .identity-title>p{font-size:clamp(27px,2.3vw,46px)}.is-project .identity{width:32%;left:15%}.gallery-ghosts .ghost-top{top:-38%}.gallery-ghosts .ghost-top-far{top:-49%}.gallery-ghosts .ghost-bottom{top:138%}.gallery-ghosts .ghost-bottom-far{top:149%}}.home-tagline{letter-spacing:-.015em;color:#969696;max-width:300px;margin:26px 0 0;font-size:15px;line-height:1.35;animation:1.2s .4s backwards appear}.social-links{flex-wrap:wrap}.expanded .social-links{max-width:700px}.resume-unconfigured{cursor:default;opacity:.45!important}.copy-toast{z-index:20;color:#666;font-size:13px;position:fixed;bottom:35px;left:50%;transform:translate(-50%)}.copy-toast:not(:empty){background:#fff;border-radius:25px;padding:12px 20px;box-shadow:0 5px 30px #00000008}.sound-playing svg{animation:3s ease-in-out infinite sound-pulse}.career-section .timeline-entry{grid-template-columns:75px 1fr;gap:14px;margin-bottom:24px;display:grid}.timeline-entry>span{color:#999;padding-top:4px;font-size:12px}.timeline-entry p{color:#1a1a1a;margin:0;font-size:clamp(18px,1.3vw,25px)}.timeline-entry small{color:#999;margin-top:5px;font-size:14px;line-height:1.35;display:block}.project-context{background:#fff;border-radius:clamp(32px,4.5vw,72px);margin-bottom:12px;padding:8.5%;animation:.8s both about-in}.context-kicker,.cover-kicker{text-transform:uppercase;letter-spacing:.08em;color:#888;font-size:11px}.project-context h2{letter-spacing:-.05em;margin:45px 0 28px;font-size:clamp(28px,2.7vw,48px);font-weight:400;line-height:1.05}.context-meta{gap:35px;margin:40px 0;display:flex}.context-meta>div{flex:1}.context-meta span,.install-command>span,.paper-abstract>span{color:#999;font-size:12px}.context-meta p{margin:12px 0 0;font-size:18px;line-height:1.3}.stack-chips{flex-wrap:wrap;gap:7px;margin-top:26px;display:flex}.stack-chips span{background:#f0f1ed;border-radius:20px;padding:9px 13px;font-size:12px}.context-open-source{background:#f7f8f4}.project-context .repo-title{overflow-wrap:anywhere;align-items:center;gap:13px;font-size:clamp(24px,2vw,36px);display:flex}.repo-title svg{width:26px;height:26px}.context-description,.paper-abstract p{letter-spacing:-.025em;font-size:clamp(17px,1.3vw,24px);line-height:1.35}.install-command{margin-top:40px}.install-command pre{color:#e6eddd;background:#242723;border-radius:15px;padding:22px;font-size:14px;line-height:1.5;overflow:auto}.paper-authors{font-size:17px;line-height:1.4}.paper-venue{color:#999;font-size:13px}.paper-abstract{border-top:1px solid #e9e9e4;margin-top:35px;padding-top:30px}.paper-link{border:1px solid #ddd;border-radius:25px;align-items:center;gap:30px;margin-top:20px;padding:15px 20px;font-size:14px;display:inline-flex}.generated-cover{background:inherit;color:#30332b;flex-direction:column;justify-content:flex-end;width:100%;height:100%;padding:10%;display:flex;position:relative}.generated-cover h2{letter-spacing:-.06em;overflow-wrap:anywhere;margin:24px 0 12px;font-size:clamp(25px,3vw,48px);font-weight:400;line-height:1}.generated-cover p{white-space:pre-line;opacity:.65;max-width:90%;margin:0 0 25px;font-size:12px;line-height:1.4}.cover-kicker{color:inherit;opacity:.6;position:absolute;top:10%;left:10%}.cover-open-source{color:#e7f0dd;background:#232a24}.terminal-symbol{color:#c7ddb0;margin-top:20%;margin-bottom:auto;font:50px monospace}.hackathon-symbol{color:#67744d;margin-top:18%;margin-bottom:auto;font-size:85px;line-height:1}.cover-research{background:#efeee7}.paper-lines{background:repeating-linear-gradient(#8e9683 0 1px,#0000 1px 15px);height:14%;position:absolute;top:30%;left:10%;right:10%;-webkit-mask-image:linear-gradient(90deg,#000,#0000);mask-image:linear-gradient(90deg,#000,#0000)}.is-project .generated-cover h2{font-size:clamp(34px,4vw,70px)}.is-project .generated-cover p{font-size:17px}.is-project .controls{flex-wrap:wrap;gap:7px;max-width:90%}.project-context.context-hackathon{background:#f1f3e9}.context-research{background:#fdfdf9}.project-context.context-research h2{line-height:1.15}.globe-button{cursor:default}@keyframes sound-pulse{50%{opacity:.5}}@media (max-width:760px){.portfolio{--card:min(76vw,380px)}.identity h1,.identity-title>p{font-size:29px}.identity-title>p{max-width:310px}.home-tagline{margin-top:18px;font-size:13px}.work-surface{top:calc(67% - var(--card)/2)}.gallery-ghosts,.pagination{top:67%}.expanded .social-links{row-gap:7px;max-width:calc(84vw - 110px)}.is-about .expanded .social-links{max-width:calc(84vw - 53px)}.project-context{border-radius:30px;padding:28px}.context-meta{flex-direction:column;gap:20px}.is-project .identity-title>p{font-size:21px}.is-project .controls{margin-top:15px}.is-project .work-surface{height:70%;top:30%}.is-project .generated-cover h2{font-size:40px}.career-section .timeline-entry{grid-template-columns:65px 1fr}}.social-links{height:var(--button);flex-wrap:nowrap;flex-shrink:0}.controls{min-height:var(--button)}@media (max-width:760px){.social-links{height:var(--button);flex-wrap:wrap;flex-shrink:1}.expanded .social-links{height:auto;max-height:110px}.controls{align-items:flex-start}}.is-project .controls{flex-wrap:wrap;align-items:center;gap:10px;margin-top:clamp(30px,3.5vw,58px);position:static;top:auto}.is-project .controls .icon-button{width:clamp(46px,3.5vw,60px);height:clamp(46px,3.5vw,60px)}.is-project .controls .live-link:hover,.is-project .controls .live-link:focus-visible{width:124px}.is-project .project-stack{overscroll-behavior-y:contain}@media (max-width:760px){.is-project .controls{gap:8px;margin-top:18px}.is-project .controls .icon-button{width:42px;height:42px}}@media (min-width:761px){.is-project .work-surface{width:min(40vw,680px,78dvh);height:100%;top:0;left:calc(74% - min(40vw,680px,78dvh)/2);overflow:hidden}.is-project .project-stack{padding:6dvh 0 12dvh}.is-project .project-tile{border-radius:36px;margin-bottom:24px}.is-project .project-context{border-radius:36px;margin-bottom:24px;padding:7%}.is-project .info-face{padding:7%}.is-project .info-face p{letter-spacing:-.025em;font-size:clamp(16px,1.15vw,22px);line-height:1.35}.is-project .info-face h2{font-size:12px}.is-project .project-context h2{font-size:clamp(25px,2vw,36px)}}@media (max-width:760px){.is-project .project-stack{padding:14px 6vw 10vh}.is-project .project-tile{aspect-ratio:1;border-radius:26px;min-height:0;margin-bottom:18px}.is-project .info-face{padding:7%}.is-project .info-face p{font-size:clamp(14px,3.8vw,18px);line-height:1.3}}@media (prefers-reduced-motion:no-preference){.is-project .media-face>video,.is-project .media-face>img{transform:translateY(var(--media-drift,0px)) scale(1.065);will-change:transform}}@media (max-width:760px){.portfolio{--button:44px;--card:min(78vw,44dvh,380px)}.identity{width:88%;left:6%;top:max(6dvh,env(safe-area-inset-top));transform:none}.identity h1,.identity-title>p{font-size:clamp(25px,6.8vw,32px);line-height:1.08}.identity-title>p{max-width:100%;font-size:clamp(21px,5.7vw,28px)}.controls{flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;margin-top:20px}.social-links{flex-basis:100%;gap:6px;height:0;max-height:0}.expanded .social-links{max-width:100%;height:auto;max-height:110px;overflow:visible}.social-links .icon-button{width:44px;height:44px}.home-tagline{max-width:90%;margin-top:16px;font-size:13px}.has-contact:not(.is-about):not(.is-project) .home-tagline{display:none}.work-surface{left:calc(50% - var(--card)/2);top:calc(65% - var(--card)/2)}.pagination{top:auto;left:50%;right:auto;bottom:max(4dvh,env(safe-area-inset-bottom));flex-direction:row;gap:12px;display:flex;transform:translate(-50%)}.pagination button{width:28px;height:28px}.is-project .identity{top:max(18px,env(safe-area-inset-top));width:88%;left:6%}.is-project .identity h1{font-size:clamp(24px,6.5vw,32px)}.is-project .identity-title>p{font-size:20px}.is-project .controls{gap:8px;max-width:100%;margin-top:14px}.is-project .work-surface{width:100%;height:calc(100% - clamp(180px,22dvh,200px));top:clamp(180px,22dvh,200px);left:0}.is-project .project-stack{padding:8px 6vw max(40px,env(safe-area-inset-bottom))}.is-project .project-tile{border-radius:26px}.is-project .info-face p{font-size:clamp(14px,3.8vw,18px)}.is-about .identity{width:100%;height:100%;padding:max(30px,env(safe-area-inset-top)) 6vw max(60px,env(safe-area-inset-bottom));overscroll-behavior:contain;top:0;left:0;-webkit-mask-image:none;mask-image:none}.is-about .controls{flex-wrap:nowrap;gap:8px;margin-top:24px}.is-about .social-links{flex-wrap:nowrap;flex-shrink:0;flex-basis:auto;max-width:none;height:44px;max-height:44px}.is-about .about-copy{margin-top:24px;padding-top:0;font-size:21px;line-height:1.35}.is-about .about-copy section{margin:44px 0}.is-about .globe-stage{display:none}.mobile-globe{width:230px;max-width:100%;margin:0 auto 40px}.mobile-globe .globe-canvas{height:230px}.mobile-globe .globe-button span{text-align:center;margin-top:-14px}.career-section .timeline-entry{grid-template-columns:76px minmax(0,1fr);gap:12px;margin-bottom:26px}.timeline-entry p{overflow-wrap:anywhere;font-size:18px;line-height:1.25}.timeline-entry small{font-size:14px;line-height:1.45}.project-context{overflow-wrap:anywhere}}@media (max-width:760px) and (max-height:500px) and (orientation:landscape){.portfolio{--card:min(42dvh,34vw)}.identity{width:40%;top:50%;left:6%;transform:translateY(-50%)}.identity h1,.identity-title>p{font-size:22px}.controls{margin-top:16px}.work-surface{left:calc(73% - var(--card)/2);top:calc(50% - var(--card)/2)}.pagination{bottom:12px;left:73%}.is-project .identity{width:40%;top:20%;transform:none}.is-project .work-surface{width:50%;height:100%;top:0;left:50%}.is-project .project-stack{padding:16px}.is-about .identity{transform:none}}.nature-stage{background-size:cover;background-position:center calc(50% + var(--media-drift,0px));justify-content:center;align-items:center;width:100%;height:100%;padding:10%;display:flex;position:relative}.nature-stage:before{content:"";background:linear-gradient(#00000008,#00000012 65%,#0005);position:absolute;inset:0}.framed-preview{background:#fafaf8;border:1px solid #ffffffa8;border-radius:10px;width:100%;position:relative;overflow:hidden;box-shadow:0 16px 40px #00000030}.media-face .framed-preview video,.media-face .framed-preview img{object-fit:contain;width:100%;height:auto;max-height:100%;display:block;transform:none}@media (max-width:760px){.nature-stage{padding:9%}.framed-preview{border-radius:7px}}.project-context-links{flex-wrap:wrap;gap:10px;display:flex}.project-context-links:empty{display:none}.story-card{background:#fff;border-radius:28px;flex-direction:column;gap:42px;margin:12px 0;padding:clamp(24px,4vw,58px);display:flex}.story-card>span{color:#888;letter-spacing:.02em;font-size:12px}.story-card>p{letter-spacing:-.025em;max-width:38ch;margin:0;font-size:clamp(18px,1.45vw,24px);line-height:1.4}.controls .icon-button[hidden]{display:none}@media (max-width:760px){.story-card{border-radius:22px;gap:28px;padding:28px}.story-card>p{font-size:18px}}.card-label{text-shadow:0 1px 12px #00000024;flex-direction:column;gap:8px;max-width:82%;display:flex}.card-label strong{font-size:clamp(22px,1.65vw,32px);font-weight:500;line-height:1.05}.card-label small{opacity:.8;font-size:clamp(12px,.85vw,16px);line-height:1.3}.card-label:has(small){color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0000008c;border-radius:18px;max-width:88%;padding:14px 18px;bottom:6%;left:6%}@media (max-width:760px){.card-label strong{font-size:24px}.card-label small{font-size:12px}.card-label:has(small){padding:12px 16px}}.work-index-link{text-underline-offset:4px;margin-top:12px;text-decoration:underline;display:block}.work-index{background:#f4f4f4;padding:clamp(24px,6vw,90px);position:fixed;inset:0;overflow:auto}.work-index nav{justify-content:space-between;font-size:14px;display:flex}.work-index header{max-width:1000px;margin:80px auto 50px}.work-index h1{letter-spacing:-.04em;max-width:900px;font-size:clamp(34px,5vw,68px);font-weight:500;line-height:1.05}.work-index header>p{color:#777;line-height:1.5}.work-index>div{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;max-width:1000px;margin:auto;display:grid}.work-index article{background:#fff;border-radius:24px;padding:32px}.work-index article>p{font-size:16px;line-height:1.5}.work-index article>p:first-child,.work-index small{color:#777;font-size:12px}.work-index h2{letter-spacing:-.03em;font-size:28px;font-weight:500}
