.work-gallery{--work-nav-height:76px;--work-panel-width:min(48vw, 740px);--work-name-width:calc((94vw - var(--work-panel-width)) / 5);color:var(--ink);background:var(--hero-paper);scroll-margin-top:var(--work-nav-height);padding:0;overflow:visible}.work-gallery[data-mode=pinned]{height:calc(100svh - var(--work-nav-height) + var(--work-travel))}.work-sticky{top:var(--work-nav-height);height:calc(100svh - var(--work-nav-height));flex-direction:column;min-height:500px;padding:24px 3vw 18px;display:flex;position:sticky;overflow:hidden}.work-gallery-heading{flex:0 0 32px;align-items:center;gap:24px;margin-bottom:20px;display:flex}.work-gallery-heading h2,.work-gallery-heading p{margin:0;font-size:13px;font-weight:450;line-height:1.4}.work-gallery-heading h2{letter-spacing:.04em}.work-scroll-hint{color:var(--muted);margin-left:auto!important}.work-scroll-hint span{margin-left:10px}.work-counter{color:#93969e;font-family:var(--font-geist-mono), monospace}.work-current{color:var(--ink)}.work-accordion{flex:1;width:100%;min-height:0;display:flex}.work-item{--reveal:0;--panel-opacity:0;flex:none;min-width:0;height:100%;display:flex}.work-item:first-child{--reveal:1;--panel-opacity:1}.work-name{flex-direction:column;flex:0 0 var(--work-name-width);width:var(--work-name-width);color:#92959c;text-align:left;background:0 0;border:0;border-radius:0;justify-content:flex-end;align-items:flex-start;height:100%;padding:10px 12px 6px;transition:color .18s;display:flex;position:relative}.work-name-label{writing-mode:vertical-rl;white-space:nowrap;letter-spacing:-.035em;font-size:clamp(23px,2.1vw,33px);font-weight:430;line-height:1.12;transform:rotate(180deg)}.work-name-number{font-family:var(--font-geist-mono), monospace;color:#93969e;font-size:11px;position:absolute;top:8px;left:12px}.work-item[data-active=true] .work-name{color:var(--ink)}.work-item[data-active=true] .work-name-number,.work-name:hover{color:var(--blue)}.work-name:focus-visible{outline:2px solid var(--blue);outline-offset:-3px;border-radius:6px}.work-panel{width:calc(var(--work-panel-width) * var(--reveal));border-radius:14px;flex:none;height:100%;overflow:hidden}.work-panel-inner{width:var(--work-panel-width);height:100%;opacity:var(--panel-opacity);position:relative}.work-gallery .project-card{width:100%;height:100%;min-height:0;color:var(--ink);background:0 0;border:0;border-radius:14px;padding:0;position:relative;overflow:hidden;transform:none}.work-gallery .project-topline{z-index:4;letter-spacing:.06em;border:0;justify-content:space-between;align-items:center;padding:0;font-size:10px;display:flex;position:absolute;top:22px;left:22px;right:22px}.work-gallery .project-topline>span:first-child{display:none}.work-gallery :is(.project-blue,.project-yellow,.project-ink) .project-topline{color:#fff}.work-gallery .project-stage{border-radius:inherit;border:0;width:100%;height:100%;margin:0;position:absolute;inset:0}.work-gallery :is(.ausleap-wordmark,.community-wordmark,.dishroller-wordmark,.relief-wordmark,.coded-escape-wordmark){font-size:clamp(65px,7vw,110px);top:65px}.work-gallery :is(.ausleap-screen,.dishroller-screen,.relief-screen){border-width:4px;border-radius:26px;width:30%;max-width:205px;height:auto;top:18%;left:50%;transform:translate(-50%)}.work-gallery :is(.screen-home,.dishroller-screen-storage,.relief-screen-tasks){top:21%;left:24%;transform:translate(-50%)rotate(-9deg)}.work-gallery :is(.screen-profile,.dishroller-screen-recipe,.relief-screen-help){top:21%;left:76%;transform:translate(-50%)rotate(9deg)}.work-gallery :is(.screen-shift,.dishroller-screen-selection,.relief-screen-progress){z-index:3}.work-gallery .screen-label{display:none}.work-gallery .community-screen-posts{width:75%;height:62%;top:18%;left:5%;transform:rotate(-3deg)}.work-gallery .community-screen-spaces{width:65%;height:53%;top:24%;right:-12%;transform:rotate(5deg)}.work-gallery .coded-escape-board{width:63%;height:35%;top:22%;left:-5%;transform:rotate(-9deg)}.work-gallery .coded-escape-final{width:48%;height:57%;top:18%;right:3%;transform:rotate(7deg)}.work-gallery .coded-escape-label{display:none}.work-gallery .project-card{--copy-surface:#08080ca3;--copy-ink:#f8f9fc;--copy-line:#ffffff3d;--tag-surface:#ffffff12;--copy-button-fill:#1747ff;--copy-button-ink:#fff}.work-gallery .project-blue{--copy-surface:#051028a3}.work-gallery .project-yellow{--copy-surface:#08080aa3}.work-gallery .project-green{--copy-surface:#d4efded1;--copy-ink:#183b2b;--copy-line:#183b2b38;--tag-surface:#183b2b0f}.work-gallery .project-relief{--copy-surface:#dbe1fad1;--copy-ink:#252f55;--copy-line:#252f5538;--tag-surface:#252f550f}.work-gallery .project-copy{z-index:5;background:var(--copy-surface);color:var(--copy-ink);-webkit-backdrop-filter:blur(24px)brightness(.55)saturate(115%);border:0;border-radius:10px;flex-direction:column;align-items:stretch;gap:18px;padding:10px 22px 18px;display:flex;position:absolute;inset:auto 8px 8px;box-shadow:0 10px 30px #00000029}.work-gallery .project-description{flex-direction:column;gap:18px;display:flex}.work-gallery .project-copy p{max-width:none;font-size:14px;line-height:1.65}main[data-language=zh] .work-gallery .project-copy p{line-height:1.7}.work-gallery .project-copy ul{letter-spacing:.025em;color:var(--copy-ink);gap:6px;margin:0;font-size:10px;font-weight:650}.work-gallery .project-copy li{background:var(--tag-surface);border:1px solid #ffffff6b;border-radius:99px;padding:4px 8px}.work-gallery .project-copy li:before{content:"";margin:0}.work-gallery .project-result{border-top:1px solid var(--copy-line);flex-wrap:wrap;gap:12px;padding-top:12px;font-size:11px}.work-gallery .project-result>span{flex:130px}.work-gallery .project-links{gap:12px}.work-gallery .project-source-link{border-bottom-width:1px;padding-bottom:4px;font-size:14px;font-weight:400;transition:color .18s}.work-gallery .project-source-link:is(:hover,:focus-visible){color:#a8c3ff}.work-gallery .project-arrow{background:var(--tag-surface);border:0;flex-basis:44px;width:44px;height:44px;font-size:23px;font-weight:400;transition:background-color .18s,color .18s}.work-gallery .project-card:hover .project-arrow{transform:none}.work-gallery .project-arrow:is(:hover,:focus-visible){background:var(--copy-button-fill);color:var(--copy-button-ink)}.work-gallery :is(.project-green,.project-relief) .project-copy{-webkit-backdrop-filter:blur(24px)saturate(110%);box-shadow:0 8px 24px #19284114}.work-gallery :is(.project-green,.project-relief) .project-copy li{border-color:var(--copy-line)}.work-gallery :is(.project-green,.project-relief) .project-source-link:is(:hover,:focus-visible){color:#1747ff}.work-progress{background:#d7d9de;flex:0 0 1px;height:1px;margin-top:18px;overflow:hidden}.work-progress-fill{background:var(--blue);transform-origin:0;height:100%;display:block;transform:scaleX(.2)}@media (min-width:761px) and (max-height:740px){.work-sticky{padding-top:16px}.work-gallery-heading{flex-basis:26px;margin-bottom:10px}.work-gallery .project-copy{gap:10px;padding:8px 16px 16px;inset:auto 8px 8px}.work-gallery .project-copy p{font-size:13px}.work-gallery :is(.ausleap-screen,.dishroller-screen,.relief-screen){width:25%;top:13%}}@media (min-width:761px) and (max-width:1050px){.work-gallery{--work-panel-width:57vw}.work-name{padding-left:6px}.work-name-number{left:6px}.work-gallery .project-copy{gap:10px;padding:8px 16px 16px}.work-gallery .project-copy p{font-size:13px}}@media (max-width:760px){.work-gallery{--work-panel-width:calc(100vw - 88px);--work-name-width:40px;height:auto}.work-sticky{height:auto;min-height:0;padding:40px 22px 30px;position:relative;top:0;overflow:hidden}.work-gallery-heading{gap:14px;margin-bottom:22px}.work-gallery-heading h2,.work-gallery-heading p{font-size:11px}.work-scroll-hint{display:none}.work-counter{margin-left:auto!important}.work-accordion{scroll-snap-type:x mandatory;scrollbar-width:none;flex:none;gap:16px;height:620px;overflow-x:auto}.work-item{scroll-snap-align:start;scroll-snap-stop:always}.work-name{padding-left:0}.work-name-label{font-size:23px}.work-name-number{left:0}.work-panel{width:var(--work-panel-width)}.work-panel-inner{opacity:1}.work-gallery .project-topline{font-size:9px;inset:18px 14px auto}.work-gallery .project-copy{gap:12px;padding:8px 14px 14px;inset:auto 6px 6px}.work-gallery .project-copy p{font-size:13px}.work-gallery .project-copy ul{margin:0;font-size:10px}.work-gallery .project-result{flex-wrap:wrap;gap:12px;font-size:10px}.work-gallery .project-result>span{max-width:100%}.work-gallery .project-links{margin-left:auto}.work-gallery :is(.ausleap-screen,.dishroller-screen,.relief-screen){border-width:3px;border-radius:17px;width:34%;top:20%}.work-gallery :is(.ausleap-wordmark,.community-wordmark,.dishroller-wordmark,.relief-wordmark,.coded-escape-wordmark){font-size:58px}.work-gallery .community-screen-posts{height:46%;top:20%}.work-gallery .community-screen-spaces{height:40%;top:25%}}@media (prefers-reduced-motion:reduce){.work-gallery{height:auto}.work-sticky{position:relative;top:0}.work-gallery *,.work-gallery :before{transition:none!important}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.work-gallery .project-card:hover :is(.screen-shift,.dishroller-screen-selection,.relief-screen-progress){transform:translate(-50%)translateY(-6px)}.work-gallery .project-card:hover :is(.screen-home,.dishroller-screen-storage,.relief-screen-tasks){transform:translate(-50%)translateY(-4px)rotate(-10deg)}.work-gallery .project-card:hover :is(.screen-profile,.dishroller-screen-recipe,.relief-screen-help){transform:translate(-50%)translateY(-4px)rotate(10deg)}.work-gallery .project-card:hover .coded-escape-board{transform:translateY(-5px)rotate(-10deg)}.work-gallery .project-card:hover .coded-escape-final{transform:translateY(-5px)rotate(8deg)}}@media (prefers-reduced-motion:reduce),(hover:none){.work-gallery .project-card:hover :is(.screen-shift,.dishroller-screen-selection,.relief-screen-progress){transform:translate(-50%)}.work-gallery .project-card:hover :is(.screen-home,.dishroller-screen-storage,.relief-screen-tasks){transform:translate(-50%)rotate(-9deg)}.work-gallery .project-card:hover :is(.screen-profile,.dishroller-screen-recipe,.relief-screen-help){transform:translate(-50%)rotate(9deg)}.work-gallery .project-card:hover .coded-escape-board{transform:rotate(-9deg)}.work-gallery .project-card:hover .coded-escape-final{transform:rotate(7deg)}.work-gallery .project-card:hover .community-screen-posts{transform:rotate(-3deg)}.work-gallery .project-card:hover .community-screen-spaces{transform:rotate(5deg)}}
.portfolio-home .portrait-hero{margin-bottom:0}.portrait-hero .portrait-stage .portrait-fallback{opacity:0;animation:0s 5s forwards portrait-poster-rescue}.portrait-hero .portrait-stage[data-ready=true] .portrait-fallback{opacity:0;animation:none}.portrait-hero .portrait-stage[data-phase=fallback] .portrait-fallback{opacity:1;visibility:visible;animation:none}.portrait-hero .portrait-stage[data-phase=fallback] canvas{visibility:hidden}@keyframes portrait-poster-rescue{to{opacity:1}}@media (prefers-reduced-motion:reduce){.portrait-hero .portrait-stage .portrait-fallback,.portrait-hero .portrait-stage[data-ready] .portrait-fallback{opacity:1;visibility:visible}.portrait-hero .portrait-stage canvas{visibility:hidden}}.portrait-hero .portrait-title{--title-progress:0;--title-compact-width:4.272em;--title-left-shift:calc((100cqw - min(100cqw, var(--title-compact-width))) / 2);--title-right-shift:calc((min(100cqw, var(--title-compact-width)) - 100cqw) / 2 - .04em);container-type:inline-size}.portrait-hero .portrait-title>span:first-child{translate:calc(var(--title-left-shift) * (1 - var(--title-progress))) 0}.portrait-hero .portrait-title>span:last-child{translate:calc(var(--title-right-shift) * (1 - var(--title-progress))) 0}@media (max-width:900px){.portrait-hero .portrait-title{--title-compact-width:5.033em}}@media (max-width:600px){.portrait-hero .portrait-title{--title-compact-width:4.973em}}@media (prefers-reduced-motion:reduce){.portrait-hero .portrait-title>span{translate:none!important}}
.photo-folders{--folder-ease:cubic-bezier(.22,1,.36,1);background:var(--hero-paper);color:#171a25;padding:100px 0 70px;scroll-margin-top:80px;overflow:clip}.photo-folders .folders-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:22px 9%;max-width:1400px;margin:auto;padding:0 clamp(24px,5vw,88px);display:grid}.photo-folders .folders-eyebrow{color:#254fff;grid-column:1/-1;margin:0;font-size:14px}.photo-folders .folders-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(34px,4.5vw,64px);font-weight:550;line-height:1.24}.photo-folders .folders-intro{color:#697184;justify-self:end;max-width:360px;margin:0 0 4px;font-size:15px;line-height:1.9}.photo-folders .folder-orbit{--folder-width:clamp(190px,22vw,310px);--orbit-step:clamp(155px,20vw,290px);--photo-step:170px;--photo-width:158px;--photo-height:204px}.photo-folders .folder-stage{isolation:isolate;max-width:1600px;height:510px;margin:auto;position:relative}.photo-folders .folder-item{--folder-color:153,181,225;width:var(--folder-width);height:230px;margin-left:calc(var(--folder-width) / -2);transform:translate(calc(var(--slot) * var(--orbit-step)),var(--drop)) rotate(var(--angle));transform-origin:50% 120%;transition:transform .8s var(--folder-ease),opacity .4s;position:absolute;top:140px;left:50%}.photo-folders .folder-gradstack{--folder-color:174,163,209}.photo-folders .folder-dishroller{--folder-color:161,191,173}.photo-folders .folder-vivid{--folder-color:202,166,142}.photo-folders .folder-architecture{--folder-color:164,177,189}.photo-folders .has-open-folder .folder-item:not(.is-selected){opacity:.4;transform:translate(calc(var(--slot) * var(--orbit-step)),calc(var(--drop) + 38px)) rotate(var(--angle)) scale(.88)}.photo-folders .folder-item.is-open{transform:translateY(90px)}.photo-folders .folder-back{background:linear-gradient(145deg,rgba(var(--folder-color),.86),rgba(var(--folder-color),.4));border-radius:22px;width:92%;height:66%;position:absolute;bottom:18px;left:4%;box-shadow:inset 0 1px #fff,0 24px 35px -28px #35445a}.photo-folders .folder-object{color:inherit;perspective:900px;z-index:3;background:0 0;border:0;padding:0;position:absolute;inset:0}.photo-folders .folder-front{transform-origin:50% 100%;width:100%;height:68%;transition:transform .65s var(--folder-ease);position:absolute;bottom:0;left:0}.photo-folders .folder-glass{background:linear-gradient(145deg,#ffffffd6,rgba(var(--folder-color),.86) 58%,#ffffffe6);-webkit-backdrop-filter:blur(14px);position:absolute;inset:0;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 260' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M30 1H210Q228 1 239 17L258 44Q270 61 288 61H470Q499 61 499 90V230Q499 259 470 259H30Q1 259 1 230V30Q1 1 30 1Z'/%3E%3C/svg%3E") 50%/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 260' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M30 1H210Q228 1 239 17L258 44Q270 61 288 61H470Q499 61 499 90V230Q499 259 470 259H30Q1 259 1 230V30Q1 1 30 1Z'/%3E%3C/svg%3E") 50%/100% 100% no-repeat}.photo-folders .folder-front>svg{width:100%;height:100%;position:absolute;inset:0}.photo-folders .folder-label{text-align:left;flex-direction:column;align-items:flex-start;display:flex;position:absolute;inset:32% 15% 10% 8%}.photo-folders .folder-filetype{color:#49566b;margin-bottom:7px;font-size:12px}.photo-folders .folder-title{letter-spacing:-.025em;font-size:clamp(16px,1.6vw,23px);font-weight:550;line-height:1.2}.photo-folders .folder-count{color:#4c5a70;margin-top:auto;font-size:12px}.photo-folders .folder-arrow{background:color-mix(in srgb,rgb(var(--folder-color)) 60%,#243044);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;transition:background .2s;display:grid;position:absolute;bottom:12%;right:6%;box-shadow:inset 0 0 0 1px #ffffff50}.photo-folders .folder-arrow svg{width:17px;height:17px;transition:transform .35s var(--folder-ease)}.photo-folders .is-open .folder-arrow svg{transform:rotate(180deg)}.photo-folders .folder-object:hover .folder-arrow{background:color-mix(in srgb,rgb(var(--folder-color)) 45%,#243044)}.photo-folders .is-open .folder-front{transform:rotateX(-24deg)}.photo-folders .folder-contents{pointer-events:none;position:absolute;inset:0}.photo-folders .folder-photo{width:var(--photo-width);height:var(--photo-height);margin-left:calc(var(--photo-width) / -2);transform:translate(calc(var(--photo-slot) * 17px),0) rotate(calc(var(--photo-slot) * 9deg)) scale(.82);transition:transform .75s var(--folder-ease),box-shadow .25s;background:#fff;border:6px solid #fff;border-radius:25px;padding:0;position:absolute;top:9px;left:50%;overflow:hidden;box-shadow:0 10px 28px #27334919}.photo-folders .folder-photo img{object-fit:cover;width:100%;height:100%;display:block}.photo-folders .folder-photo>span{color:#fff;text-shadow:0 1px 6px #000;justify-content:space-between;font-size:12px;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.photo-folders .is-open .folder-contents{z-index:4}.photo-folders .is-open .folder-photo{pointer-events:auto;transform:translate(calc(var(--photo-slot) * var(--photo-step)),calc(-210px + var(--photo-slot) * var(--photo-slot) * 13px)) rotate(calc(var(--photo-slot) * 7deg));transition-delay:calc(var(--i) * 65ms)}.photo-folders .folder-empty{opacity:0;width:280px;min-height:165px;transition:opacity .3s,transform .65s var(--folder-ease);text-align:center;background:#ffffffd9;border:1px solid #fff;border-radius:25px;padding:24px;position:absolute;top:-185px;left:50%;transform:translate(-50%,160px)scale(.8);box-shadow:0 12px 36px #27334912}.photo-folders .is-open .folder-empty{opacity:1;transform:translate(-50%)scale(1)}.photo-folders .folder-empty>span{color:#717b8d;margin-bottom:16px;font-size:12px;display:block}.photo-folders .folder-empty strong{font-size:18px;font-weight:500}.photo-folders .folder-empty p{color:#717b8d;font-size:14px;line-height:1.7}.photo-folders .folder-navigation{z-index:30;justify-content:center;align-items:center;gap:42px;display:flex;position:relative}.photo-folders .folder-navigation>button{background:0 0;border:1px solid #ccd1dd;border-radius:50%;width:44px;height:44px;font-size:20px}.photo-folders .folder-current{text-align:center;min-width:240px}.photo-folders .folder-current>span{color:#7b8495;letter-spacing:.14em;font-size:12px}.photo-folders .folder-current h3{margin:10px 0 8px;font-size:18px;font-weight:500}.photo-folders .folder-current button{color:#254fff;background:0 0;border:0;padding:6px;font-size:14px}.photo-folders button{cursor:pointer}.photo-folders button:focus-visible{outline-offset:5px;outline:2px solid #254fff}@media (hover:hover){.photo-folders .folder-object:hover .folder-front{transform:rotateX(-16deg)}.photo-folders .is-open .folder-photo:hover{transform:translate(calc(var(--photo-slot) * var(--photo-step)),-230px) rotate(0deg) scale(1.06);z-index:5;transition-delay:0s;box-shadow:0 20px 35px #27334933}.photo-folders .folder-navigation>button:hover{color:#fff;background:#254fff;border-color:#254fff}}.portfolio-home .folder-lightbox{-webkit-backdrop-filter:blur(9px);color:#fff;background:#0f131b4d;border:0;width:100vw;max-width:none;height:100svh;max-height:none;margin:0;padding:32px 72px 205px;display:block;position:fixed;inset:0}.portfolio-home .folder-lightbox::backdrop{background:#11172340}.portfolio-home .folder-lightbox figure{justify-content:center;align-items:center;width:100%;height:100%;margin:0;display:flex}.portfolio-home .folder-lightbox figure>img{object-fit:contain;background:#fff;border:7px solid #fff;border-radius:25px;width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:0 24px 70px #0004}.portfolio-home .folder-lightbox figcaption{text-align:left;color:#fff;-webkit-backdrop-filter:blur(24px);width:min(850px,100% - 40px);animation:folder-sheet-in .45s var(--folder-ease,cubic-bezier(.22,1,.36,1));background:#131924d1;border:1px solid #ffffff29;border-radius:24px;grid-template-columns:1fr auto;gap:10px 24px;margin:0;padding:23px 30px;font-family:inherit;display:grid;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 15px 60px #0003}.portfolio-home .folder-lightbox figcaption>span{color:#dbe1ec;font-size:14px}.portfolio-home .folder-lightbox figcaption p{grid-column:1/-1;margin:0}.portfolio-home .folder-lightbox .folder-photo-description{color:#fff;font-size:18px;line-height:1.45}.portfolio-home .folder-lightbox .folder-photo-context{color:#c4ccdc;font-size:14px;line-height:1.7}.portfolio-home .folder-lightbox .photo-lightbox-nav{background:#1b2336aa;border:1px solid #fff5;border-radius:50%;width:44px;height:44px;position:fixed;top:40%}.portfolio-home .folder-lightbox .photo-lightbox-prev{left:20px}.portfolio-home .folder-lightbox .photo-lightbox-next{right:20px}.portfolio-home .folder-lightbox .photo-lightbox-close{z-index:2;background:#1b2336aa;border-radius:50%;width:44px;height:44px;position:fixed;top:20px;right:20px}@keyframes folder-sheet-in{0%{opacity:0;translate:0 35px}to{opacity:1;translate:0}}@media (max-width:700px){.photo-folders{padding:64px 0 50px;scroll-margin-top:112px}.photo-folders .folders-heading{grid-template-columns:1fr;gap:18px;padding:0 24px}.photo-folders .folders-heading h2{font-size:38px}.photo-folders .folders-intro{justify-self:start;font-size:14px}.photo-folders .folder-orbit{--folder-width:190px;--orbit-step:155px;--photo-width:94px;--photo-height:134px;--photo-step:83px}.photo-folders .folder-stage{height:420px}.photo-folders .folder-item{height:190px;top:84px}.photo-folders .folder-front{height:80%}.photo-folders .folder-back{height:76%}.photo-folders .folder-label{inset:32% 14% 10% 8%}.photo-folders .folder-filetype{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:12px;overflow:hidden}.photo-folders .folder-title{font-size:16px}.photo-folders .folder-photo{border-width:5px;border-radius:25px}.photo-folders .is-open .folder-photo{transform:translate(calc(var(--photo-slot) * var(--photo-step)),calc(-132px + var(--photo-slot) * var(--photo-slot) * 10px)) rotate(calc(var(--photo-slot) * 7deg))}.photo-folders .folder-empty{width:260px;min-height:130px;padding:20px;top:-135px}.photo-folders .folder-navigation{gap:14px}.photo-folders .folder-current{min-width:210px}.photo-folders .folder-current h3{font-size:16px}.portfolio-home .folder-lightbox{padding:72px 20px 265px}.portfolio-home .folder-lightbox figcaption{gap:10px;width:calc(100% - 28px);padding:20px;bottom:14px}.portfolio-home .folder-lightbox .folder-photo-description{font-size:16px}.portfolio-home .folder-lightbox .folder-photo-context{font-size:13px}.portfolio-home .folder-lightbox .photo-lightbox-nav{width:38px;height:38px;top:45%}.portfolio-home .folder-lightbox .photo-lightbox-prev{left:8px}.portfolio-home .folder-lightbox .photo-lightbox-next{right:8px}}@media (prefers-reduced-motion:reduce){.photo-folders *,.portfolio-home .folder-lightbox,.portfolio-home .folder-lightbox figcaption{transition:none!important;animation:none!important}}
.architecture-reader{color:#f5f6fa;background:#20242b;border:0;width:100vw;max-width:none;height:100svh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.architecture-reader[open]{flex-direction:column;display:flex}.architecture-reader::backdrop{background:#111827b3}.architecture-reader .architecture-reader-toolbar{background:#171b22;border-bottom:1px solid #ffffff1a;flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;padding:18px 28px;display:flex}.architecture-reader .architecture-reader-toolbar h2{margin:0;font-size:18px;font-weight:500;line-height:1.3}.architecture-reader .architecture-reader-toolbar p{color:#aab3c1;margin:5px 0 0;font-size:12px}.architecture-reader .architecture-reader-controls{align-items:center;gap:20px;display:flex}.architecture-reader .architecture-reader-page{color:#aab3c1;align-items:center;gap:8px;font-size:13px;display:flex}.architecture-reader select{color:#fff;background:#303744;border:1px solid #ffffff26;border-radius:8px;padding:9px 6px;font-size:14px}.architecture-reader .architecture-reader-zoom{align-items:center;gap:8px;display:flex}.architecture-reader button{color:#fff;cursor:pointer;background:#303744;border:1px solid #ffffff29;border-radius:50%;width:36px;height:36px;padding:0;font-size:22px}.architecture-reader button:disabled{opacity:.35;cursor:default}.architecture-reader output{text-align:center;color:#d3d9e3;min-width:40px;font-size:12px}.architecture-reader a{color:#e4e9f2;white-space:nowrap;font-size:14px}.architecture-reader :is(button,select,a):focus-visible{outline-offset:4px;outline:2px solid #a4baff}.architecture-reader .architecture-reader-close{width:40px;height:40px;font-size:27px}.architecture-reader .architecture-reader-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:24px;overflow:auto}.architecture-reader .architecture-reader-pages{width:calc(100% * var(--reader-zoom));max-width:calc(900px * var(--reader-zoom));margin:0 auto}.architecture-reader figure{margin:0 0 24px;scroll-margin-top:16px}.architecture-reader figure img{background:#fff;width:100%;height:auto;display:block;box-shadow:0 5px 24px #0004}.architecture-reader figcaption{text-align:center;color:#aab3c1;padding-top:12px;font-size:12px}@media (max-width:760px){.architecture-reader .architecture-reader-toolbar{flex-wrap:wrap;gap:12px;padding:14px 16px}.architecture-reader .architecture-reader-toolbar h2{padding-right:45px;font-size:16px}.architecture-reader .architecture-reader-controls{justify-content:space-between;gap:12px;width:100%}.architecture-reader .architecture-reader-close{position:absolute;top:14px;right:16px}.architecture-reader .architecture-reader-page>span{display:none}.architecture-reader .architecture-reader-scroll{padding:14px 10px}.architecture-reader .architecture-reader-zoom{gap:6px}}
.experience-section{align-items:start;padding-bottom:clamp(112px,14svh,180px)}.experience-section .conversation{scrollbar-width:thin;scrollbar-color:#c3c7d7 transparent;outline:none;min-width:0;height:calc(100svh - 170px);min-height:500px;padding:18px 20px 52px 12px;scroll-margin-top:112px;overflow-y:auto}.experience-section .conversation:focus-visible{outline:2px solid var(--blue);outline-offset:6px;border-radius:18px}.experience-section .chat-message{width:fit-content;max-width:87%;margin:0 0 26px auto;position:relative}.experience-section .chat-question{max-width:85%;margin:40px auto 32px 0}.experience-section .chat-question:first-child{margin-top:0}.experience-section .chat-bubble{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform-origin:100% 100%;background:linear-gradient(135deg,#f3f8ffbd,#e3efff80);border:1px solid #fffffffa;border-radius:26px 26px 5px;padding:clamp(22px,2vw,32px);position:relative;box-shadow:0 10px 30px #2943750e,inset 0 0 0 1px #6e9eff1c}.experience-section .chat-question .chat-bubble{transform-origin:0 100%;background:linear-gradient(130deg,#ffffffc7,#ffffff54);border-radius:25px 25px 25px 5px}.experience-section .chat-text{color:#505a72;overflow-wrap:anywhere;font-size:clamp(16px,1.18vw,21px);line-height:1.85}.experience-section .chat-text p{margin:0}.experience-section .chat-question .chat-text{color:#15171e;font-weight:550;line-height:1.6}.experience-section .chat-text h3{font-size:inherit;color:#1d2b4e;letter-spacing:0;margin:0 0 12px;font-weight:650;line-height:1.55}.experience-section .chat-wide{max-width:85%}.experience-section .chat-wide .chat-bubble{padding:24px}.experience-section .conversation .timeline{border-top:0}.experience-section .conversation .timeline article{border-color:#b8bfce;grid-template-columns:92px minmax(0,1fr);gap:20px;padding:22px 0}.experience-section .conversation .timeline article:first-child{padding-top:0}.experience-section .conversation .timeline article:last-child{border:0;padding-bottom:0}.experience-section .conversation .timeline h3{margin:0;font-size:21px;font-weight:500}.experience-section .conversation .timeline-detail{font-size:16px;line-height:1.8}.experience-section .chat-typing{display:none}.experience-section .chat-enhanced .chat-message:not(.is-revealed)>.chat-bubble,.experience-section .chat-enhanced .chat-nebula:not(.is-revealed)>.skill-nebula{opacity:0;transform:translateY(20px)scale(.94)}.experience-section .chat-enhanced .chat-bubble{transition:opacity .38s,transform .6s cubic-bezier(.2,.85,.3,1.15)}.experience-section .chat-enhanced .is-revealed>.chat-bubble{opacity:1;transform:none}.experience-section .chat-enhanced .is-typing .chat-typing{background:#eaf0fc;border-radius:24px;align-items:center;gap:5px;padding:20px 24px;display:flex;position:absolute;top:0;right:0}.experience-section .chat-enhanced .chat-question.is-typing .chat-typing{background:#fff9;left:0;right:auto}.experience-section .chat-typing i{background:#7890c2;border-radius:50%;width:5px;height:5px;animation:.6s ease-in-out infinite alternate chat-dot}.experience-section .chat-typing i:nth-child(2){animation-delay:.12s}.experience-section .chat-typing i:nth-child(3){animation-delay:.24s}.experience-section .chat-nebula{width:100%;max-width:100%;margin-top:38px}.experience-section .chat-nebula>.skill-nebula{transition:opacity .7s,transform .7s}@keyframes chat-dot{to{opacity:.4;transform:translateY(-4px)}}@media (min-width:981px){.experience-section{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.experience-section .experience-intro{height:calc(100svh - 170px);min-height:500px}}@media (max-width:980px){.experience-section .conversation{height:auto;min-height:0;padding:10px 4px 40px;overflow:visible}.experience-section .chat-message{max-width:90%}.experience-section .chat-nebula{max-width:100%}.experience-section .chat-wide{max-width:85%}.experience-section .chat-text{font-size:17px}}@media (max-width:600px){.experience-section .chat-bubble{border-radius:22px 22px 5px;padding:20px}.experience-section .chat-question{margin-top:30px}.experience-section .chat-text{font-size:16px;line-height:1.8}.experience-section .chat-wide{max-width:90%}.experience-section .chat-wide .chat-bubble{padding:20px}.experience-section .conversation .timeline article{grid-template-columns:minmax(0,1fr);gap:8px}.experience-section .conversation .timeline-period{grid-column:1/-1}.experience-section .conversation .timeline-detail{font-size:16px}}@media (prefers-reduced-motion:reduce){.experience-section .chat-enhanced .chat-message>.chat-bubble,.experience-section .chat-enhanced .chat-nebula>.skill-nebula{transition:none;opacity:1!important;transform:none!important}.experience-section .chat-typing{display:none!important}}.experience-section .chat-bubble:after{content:"";z-index:-1;background:#e6f0ffb8;border-bottom:1px solid #fff;border-right:1px solid #fff;border-radius:0 0 2px 12px;width:12px;height:17px;position:absolute;bottom:-1px;right:-6px;transform:skew(25deg)}.experience-section .chat-question .chat-bubble:after{background:#ffffffa6;border-left:1px solid #fff;border-right:0;border-radius:0 0 12px 2px;left:-6px;right:auto;transform:skew(-25deg)}@media (max-width:980px){.experience-section{padding-bottom:96px}}@media (max-width:600px){.experience-section{padding-bottom:72px}}
.experience-section .conversation.bot-conversation{background:linear-gradient(145deg,#ffffff70,#eaf0ff55 55%,#f5efff50);border:1px solid #fff;border-radius:28px;flex-direction:column;min-height:560px;padding:0;display:flex;overflow:hidden;box-shadow:0 12px 44px #30497508,inset 0 0 0 1px #6e9eff12}.bot-conversation .bot-toolbar{border-bottom:1px solid #52638815;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;min-height:76px;padding:12px 22px;display:flex}.bot-conversation .bot-identity{color:#1d2b4e;align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.bot-conversation .bot-identity small{color:#768098;margin-top:3px;font-size:11px;font-weight:400;display:block}.bot-conversation .bot-back{color:#485670;font:inherit;cursor:pointer;background:#ffffff90;border:1px solid #b7c3dd60;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;display:inline-flex}.bot-conversation .bot-back:hover{color:#254fff;background:#fff}.bot-conversation .bot-history-shortcut{color:#667080;font:inherit;cursor:pointer;background:#e9ecf1;border:1px solid #d5d9e180;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:8px 11px;font-size:12px;display:inline-flex}.bot-conversation .bot-history-shortcut:hover{color:#394458;background:#dfe4ec}.bot-conversation .bot-body{scrollbar-width:thin;scrollbar-color:#c3c7d7 transparent;overscroll-behavior-y:auto;flex:1;min-height:0;padding:22px 22px 30px;overflow:hidden auto}.bot-conversation .bot-body:focus-visible{outline-offset:-3px;outline:2px solid #254fff}.bot-conversation [data-view-title]:focus{outline:none}.bot-conversation .bot-welcome{text-align:center;max-width:550px;margin-inline:auto}.bot-conversation .bot-avatar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px;padding:8px 0 24px;display:grid}.bot-conversation .bot-avatar>.bot-orb{grid-area:1/2}.bot-conversation .bot-avatar>.bot-speech{box-sizing:border-box;overflow-wrap:anywhere;grid-area:1/3;justify-self:start;width:max-content;max-width:100%}.bot-conversation .bot-speech{color:#637aac;text-align:left;background:#ffffffb8;border:1px solid #fff;border-radius:16px 16px 16px 4px;max-width:155px;padding:12px 15px;font-size:12px;line-height:1.6;animation:5.5s ease-in-out infinite bot-speech-fade;position:relative;box-shadow:0 6px 24px #7087bc12}.bot-conversation .bot-speech:before{content:"";background:#f9faff;border-bottom:1px solid #fff;border-left:1px solid #fff;width:8px;height:8px;position:absolute;top:50%;left:-5px;transform:translateY(-50%)rotate(45deg)}.bot-conversation .bot-avatar:hover .bot-speech,.bot-conversation .bot-avatar:focus-within .bot-speech{opacity:1;animation:none}.bot-conversation .bot-welcome>h3,.bot-conversation .bot-skills>h3{letter-spacing:-.035em;color:#171a25;margin:0 0 10px;font-size:clamp(21px,1.8vw,27px);font-weight:550;line-height:1.35}.bot-conversation .bot-intro{color:#748099;margin:0 0 22px;font-size:14px;line-height:1.7}.bot-conversation .bot-welcome>h3{margin-bottom:24px}.bot-conversation .bot-questions{text-align:left;gap:10px;display:grid}.bot-conversation .bot-question-option{color:#283650;width:100%;font:inherit;text-align:left;cursor:pointer;background:#ffffff83;border:1px solid #fff;border-radius:16px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px;padding:13px 16px;font-size:15px;line-height:1.5;transition:background .16s,border-color .16s;display:grid}.bot-conversation .bot-question-number{color:#6c80af;font-variant-numeric:tabular-nums;font-size:11px}.bot-conversation .bot-question-option:hover{background:#fff;border-color:#b8c9ff}.bot-conversation button:focus-visible{outline-offset:4px;outline:2px solid #254fff}.bot-conversation .bot-progress{letter-spacing:.06em;color:#79839a;margin:0 0 20px;font-size:12px}.bot-conversation .bot-next{color:#254fff;text-align:left;width:100%;font:inherit;cursor:pointer;background:#f9fbffca;border:1px solid #bbcaff85;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;margin:26px 0 2px;padding:16px 20px;font-size:15px;line-height:1.55;display:flex}.bot-conversation .bot-next small{color:#7a88aa;margin-bottom:5px;font-size:12px;display:block}.bot-conversation .bot-next>span[aria-hidden=true]{flex-shrink:0;font-size:20px}.bot-conversation .bot-next:hover{background:#fff;border-color:#8ca5ff}.bot-conversation .bot-history-button{color:#fff;background:#254fff;border-color:#254fff}.bot-conversation .bot-history-button:hover{background:#4166ff;border-color:#4166ff}.experience-section .bot-conversation .chat-message{max-width:94%;margin-bottom:22px}.experience-section .bot-conversation .chat-question{max-width:92%;margin-top:0;margin-bottom:24px}.experience-section .bot-conversation .chat-bubble{padding:clamp(18px,1.5vw,26px)}.experience-section .bot-conversation .chat-question h3{color:#171a25;margin:0;font-size:17px}.experience-section .bot-conversation .chat-text{font-size:16px;line-height:1.85}.experience-section .bot-conversation .chat-wide{max-width:94%}.experience-section .bot-conversation .timeline article{grid-template-columns:80px minmax(0,1fr);gap:14px}.experience-section .bot-conversation .timeline h3{font-size:18px}.experience-section .bot-conversation .timeline-detail{font-size:15px}.bot-conversation .bot-answer{animation:.34s both bot-answer-enter}.bot-conversation .bot-reply-arrival,.bot-conversation .bot-reply-actions{animation:.3s ease-out both bot-answer-enter}.bot-conversation .bot-reply-typing{color:#768098;justify-content:flex-end;align-items:center;gap:10px;margin:4px 0 22px;font-size:12px;display:flex}.bot-conversation .bot-typing-dots{background:#eaf1ffa6;border:1px solid #fff;border-radius:18px 18px 4px;gap:5px;padding:16px 20px;display:inline-flex;box-shadow:0 8px 22px #30497508}.bot-conversation .bot-typing-dots i{background:#7189b2;border-radius:50%;width:5px;height:5px;animation:.9s ease-in-out infinite bot-typing-pulse}.bot-conversation .bot-typing-dots i:nth-child(2){animation-delay:.15s}.bot-conversation .bot-typing-dots i:nth-child(3){animation-delay:.3s}@keyframes bot-typing-pulse{0%,70%,to{opacity:.4;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}.bot-conversation .bot-skills{text-align:center}.bot-conversation[data-view=skills] .bot-body{padding-top:8px;padding-bottom:14px;overflow:hidden}.bot-conversation[data-view=skills] .bot-skills{flex-direction:column;height:100%;min-height:0;display:flex}.bot-conversation[data-view=skills] .skill-nebula{flex-direction:column;flex:1;min-height:0;display:flex}.bot-conversation[data-view=skills] .bot-skills .nebula-field{aspect-ratio:auto;flex:1;min-height:0;max-height:none;margin-bottom:24px}.bot-conversation[data-view=skills] .nebula-label{pointer-events:none}.bot-conversation[data-view=skills] .nebula-caption{flex-shrink:0;padding:10px 8px 0;font-size:13px}.bot-conversation[data-view=skills] .nebula-caption small{margin-top:5px;font-size:11px}.bot-conversation[data-view=skills] .bot-next{flex-shrink:0;margin:12px 0 0;padding:10px 14px;font-size:14px}.bot-conversation .bot-body .nebula-field{width:calc(100% - 48px);min-height:400px;max-height:none;margin-inline:24px}.bot-conversation .bot-history-heading{color:#53617d;margin:0 0 28px;font-size:18px;font-weight:550}.bot-conversation .bot-history-group+.bot-history-group{margin-top:38px}.bot-conversation .bot-orb{--orb-size:132px;width:var(--orb-size);height:var(--orb-size);cursor:pointer;isolation:isolate;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;flex-shrink:0;padding:0;display:block;position:relative}.bot-conversation .bot-orb.is-small{--orb-size:40px}.bot-conversation .bot-orb-halo{filter:blur(18px);background:conic-gradient(#769cff70,#c5a4ff80,#ffc9e675,#779dff70);border-radius:50%;animation:6s ease-in-out infinite alternate bot-glow;position:absolute;inset:6%}.bot-conversation .bot-orb-orbit{border:1px solid #0000;border-color:#c8b6f955 #0000 #0000 #a995ee85;border-radius:50%;animation:12s linear infinite bot-orbit;position:absolute;inset:1%;transform:rotate(-25deg)}.bot-conversation .bot-orb-core{background:radial-gradient(circle at 27% 20%,#ffffffea,#0000 42%),radial-gradient(circle at 78% 76%,#ffd4efb0,#0000 48%),radial-gradient(circle at 44% 60%,#86a8f2c4,#bea0f5a6 55%,#f9edff);border:1px solid #ffffff60;border-radius:50%;transition:transform .25s;position:absolute;inset:9%;box-shadow:inset 1px 2px 5px #fff9,inset -4px -6px 15px #fff6,0 9px 22px #7b91d827}.bot-conversation .bot-orb:hover .bot-orb-core{transform:scale(1.055)}.bot-conversation .bot-logo{color:#171a25;font-size:calc(var(--orb-size) * .4);letter-spacing:-.11em;justify-content:center;align-items:center;padding-right:.12em;font-weight:850;line-height:1;display:flex;position:absolute;inset:0}.bot-conversation .bot-logo>span{color:#254fff}.bot-conversation .bot-orb.is-small .bot-orb-halo{filter:blur(6px)}.bot-conversation:not([data-playing=true]) .bot-orb-halo,.bot-conversation:not([data-playing=true]) .bot-orb-orbit,.bot-conversation:not([data-playing=true]) .bot-speech{animation-play-state:paused}@keyframes bot-speech-fade{0%,40%,to{opacity:1}65%,80%{opacity:0}}@keyframes bot-glow{to{opacity:.65;transform:scale(1.12)rotate(30deg)}}@keyframes bot-orbit{to{transform:rotate(335deg)}}@keyframes bot-answer-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (max-width:980px){.experience-section .conversation.bot-conversation{height:min(780px,82svh);min-height:600px;margin-top:20px}}@media (max-width:600px){.experience-section .conversation.bot-conversation{border-radius:22px;min-height:580px}.bot-conversation .bot-toolbar{min-height:68px;padding:10px 16px}.bot-conversation .bot-body{padding:20px 15px 26px}.bot-conversation .bot-orb:not(.is-small){--orb-size:112px}.bot-conversation .bot-avatar{gap:8px;padding-bottom:18px}.bot-conversation .bot-avatar>.bot-speech{padding:8px;font-size:11px}.bot-conversation .bot-question-option{gap:8px;padding:12px;font-size:14px}.experience-section .bot-conversation .chat-text{font-size:15px}.experience-section .bot-conversation .timeline article{grid-template-columns:minmax(0,1fr);gap:8px}.bot-conversation .bot-body .nebula-field{min-height:440px}.bot-conversation .bot-next{padding:14px;font-size:14px}}@media (prefers-reduced-motion:reduce){.bot-conversation *,.bot-conversation :before,.bot-conversation :after{transition:none!important;animation:none!important}}
.journey-intro .journey-letter{font:inherit;font-style:inherit;position:relative}.journey-intro[data-entrance=waiting] .journey-letter,.journey-intro[data-entrance=typing] .journey-letter:not([data-typed=true]){visibility:hidden}.journey-intro .journey-letter[data-caret=true]:after{content:"";background:#254fff;width:2px;position:absolute;top:.12em;bottom:.08em;right:-.045em}.journey-intro[data-entrance] .journey-character{opacity:0;pointer-events:none;transition:none}.journey-intro[data-entrance=portrait] .journey-character{opacity:1;transition:opacity .85s}.journey-intro[data-entrance=complete] .journey-character{opacity:1}@media (prefers-reduced-motion:reduce){.journey-intro[data-entrance] .journey-letter{visibility:visible}.journey-intro[data-entrance] .journey-character{opacity:1;transition:none}.journey-intro .journey-letter[data-caret]:after{display:none}}
.journey-intro .journey-greeting{aspect-ratio:512/1032;display:block}.journey-intro[data-entrance=complete] .journey-greeting{pointer-events:auto}.journey-intro .journey-outfit-button{width:100%;height:100%;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:pan-y;background:0 0;border:0;border-radius:28px;padding:0;display:block;position:relative}.journey-intro .journey-outfit-button:disabled{cursor:progress}.journey-intro .journey-outfit-button:focus-visible{outline-offset:10px;outline:2px solid #254fff}.journey-intro .journey-media{pointer-events:none;width:100%;height:100%;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.journey-intro [data-outfit=architect] .journey-media,.journey-intro [data-outfit=reader] .journey-media,.journey-intro [data-outfit=casual] .journey-media{width:118.594%;height:110%}.journey-intro .journey-video{display:block;position:absolute;inset:0}.journey-intro .journey-video>img,.journey-intro .journey-video>canvas,.journey-intro .journey-decoration{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.journey-intro .journey-video>video{display:none}.journey-intro .journey-video>canvas{visibility:hidden}.journey-intro .journey-video[data-rendered=true]>canvas{visibility:visible}.journey-intro .journey-video[data-rendered=true]>img{visibility:hidden}.journey-intro .journey-outfit-speech{z-index:2;box-sizing:border-box;color:#384966;text-align:left;pointer-events:none;background:#fff;border:1px solid #fff;border-radius:16px 16px 4px;width:max-content;max-width:165px;padding:12px 15px;font-size:12px;line-height:1.6;animation:5.5s ease-in-out infinite journey-speech-fade;position:absolute;top:70%;right:76%;box-shadow:0 6px 24px #7087bc12}.journey-intro .journey-outfit-speech:before{content:"";background:#fff;border-top:1px solid #fff;border-right:1px solid #fff;width:8px;height:8px;position:absolute;top:50%;right:-5px;transform:translateY(-50%)rotate(45deg)}.journey-intro .journey-greeting:hover .journey-outfit-speech,.journey-intro .journey-greeting:focus-within .journey-outfit-speech{opacity:1;animation:none}.journey-intro .journey-greeting:not([data-turn=idle]) .journey-outfit-speech{visibility:hidden}@keyframes journey-speech-fade{0%,40%,to{opacity:1}65%,80%{opacity:0}}@media (max-width:600px){.journey-intro .journey-outfit-speech{max-width:clamp(100px,100vw - 240px,136px);padding:9px 10px;font-size:11px}}@media (prefers-reduced-motion:reduce){.journey-intro .journey-video>canvas{visibility:hidden}.journey-intro .journey-video>img{visibility:visible}.journey-intro .journey-outfit-speech{opacity:1;animation:none}}.journey-intro .journey-smoke{z-index:3;pointer-events:none;visibility:hidden;width:146%;height:124%;position:absolute;bottom:-4%;left:-23%;overflow:hidden}.journey-intro .journey-greeting:not([data-turn=idle]) .journey-smoke{visibility:visible}.journey-intro .journey-smoke-core,.journey-intro .journey-smoke-puff{opacity:0;transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:reduce){.journey-intro .journey-greeting .journey-smoke{display:none}}
.skill-nebula{color:#244eea;isolation:isolate;width:100%;position:relative}.skill-nebula .nebula-field{aspect-ratio:1.4;width:100%;min-height:400px;max-height:calc(100svh - 300px);position:relative}.skill-nebula .nebula-cloud{z-index:-1;filter:blur(28px);pointer-events:none;background:radial-gradient(at 44% 43%,#728eff42,#0000 57%),radial-gradient(at 68% 65%,#b3a5ff2b,#0000 54%);border-radius:50%;animation:8s ease-in-out infinite alternate nebula-breathe;position:absolute;inset:8% 3%}.skill-nebula .nebula-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.skill-nebula .nebula-link line{stroke:#496ddd;stroke-width:.16px;stroke-dasharray:.6 1.25;opacity:.22;transition:opacity .3s,stroke-width .3s}.skill-nebula .nebula-link.is-active line{opacity:.7;stroke-width:.24px}.skill-nebula .nebula-particle{fill:#345aff;opacity:.65;animation:5s linear infinite nebula-travel}.skill-nebula .nebula-node{color:#526388;cursor:pointer;z-index:1;width:44px;height:44px;min-height:44px;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.skill-nebula .nebula-star{background:#4564ee;border-radius:50%;flex:none;width:12px;height:12px;transition:transform .45s cubic-bezier(.2,.8,.2,1.3),box-shadow .4s;display:block;box-shadow:0 0 15px #6575ec55}.skill-nebula .nebula-core .nebula-star{outline-offset:7px;outline:1px solid #5070ff55;width:25px;height:25px}.skill-nebula .nebula-label{text-align:center;width:108px;max-width:108px;font-size:13px;line-height:1.3;transition:transform .3s,color .3s;display:block;position:absolute;top:42px;left:50%;transform:translate(-50%)}.skill-nebula .nebula-node:hover .nebula-star,.skill-nebula .nebula-node:focus-visible .nebula-star{transform:scale(1.65);box-shadow:0 0 25px #365eff66}.skill-nebula .nebula-node.is-selected{z-index:3}.skill-nebula .nebula-node.is-selected .nebula-star{transform:scale(2.4);box-shadow:0 0 0 6px #7590ff1a,0 0 30px #4269ff88}.skill-nebula .nebula-node.is-selected .nebula-label{color:#103ecf;background:#f4f6fccf;border-radius:6px;font-weight:600;transform:translate(-50%,8px)scale(1.12)}.skill-nebula .nebula-node:focus-visible{outline-offset:4px;border-radius:12px;outline:2px solid #365dff}.skill-nebula .nebula-caption{text-align:right;padding:18px 8px 4px;font-size:16px}.skill-nebula .nebula-caption small{color:#64718c;margin-top:10px;font-size:12px;display:block}.skill-nebula:not(.nebula-playing) .nebula-particle,.skill-nebula:not(.nebula-playing) .nebula-cloud{animation-play-state:paused}@keyframes nebula-breathe{to{opacity:.7;transform:scale(1.12)translate(1%,-2%)}}@keyframes nebula-travel{0%{transform:translate(var(--start-x),var(--start-y));opacity:0}15%,85%{opacity:.7}to{transform:translate(calc(var(--start-x) + var(--travel-x)),calc(var(--start-y) + var(--travel-y)));opacity:0}}@media (max-width:600px){.skill-nebula .nebula-field{min-height:460px;max-height:none}.skill-nebula .nebula-label{max-width:74px;font-size:12px}}@media (prefers-reduced-motion:reduce){.skill-nebula .nebula-particle,.skill-nebula .nebula-cloud{animation:none}.skill-nebula .nebula-particle{display:none}.skill-nebula *{transition:none!important}}
.site-cursor{z-index:2147483000;pointer-events:none;visibility:hidden;mix-blend-mode:difference;width:0;height:0;position:fixed;top:0;left:0}.site-cursor[data-visible=true]{visibility:visible}.site-cursor>span{background:#fff;border-radius:50%;width:36px;height:36px;transition:width .16s,height .16s,top .16s,left .16s,transform .1s;position:absolute;top:-18px;left:-18px}.site-cursor[data-interactive=true]>span{width:54px;height:54px;top:-27px;left:-27px}.site-cursor[data-pressed=true]>span{transform:scale(.8)}.site-cursor[data-contact=true]{mix-blend-mode:normal}.site-cursor[data-contact=true]>span{background:0 0;border:1px solid #8ca5ff;width:12px;height:12px;top:-6px;left:-6px}.site-cursor[data-contact=true][data-interactive=true]>span{width:24px;height:24px;top:-12px;left:-12px}@media (hover:hover) and (pointer:fine){html.custom-cursor-enabled,html.custom-cursor-enabled *{cursor:none!important}}@media (prefers-reduced-motion:reduce),(pointer:coarse),(hover:none){.site-cursor{display:none}html.custom-cursor-enabled,html.custom-cursor-enabled *{cursor:auto!important}}
.portfolio-home .contact-section{--contact-heading-size:clamp(28px, 3.5vw, 48px);color:#f4f5f6;background:#181c1f;padding:0;scroll-margin-top:76px}.contact-section .contact-stage{position:relative}.contact-section .contact-curtain{display:none}.contact-section .contact-invitation{background:var(--hero-paper);color:#171a25;max-width:1400px;margin:auto;padding:28px clamp(24px,5vw,88px) 24px}.contact-section .contact-invitation p{font-size:var(--contact-heading-size);letter-spacing:-.035em;margin:0;font-weight:550;line-height:1.55}.contact-section .contact-invitation p>.contact-intro{color:#697184;letter-spacing:0;margin-bottom:10px;font-size:clamp(16px,1.6vw,22px);font-weight:400;display:block}.contact-section .contact-invitation>a{color:#254fff;align-items:center;gap:18px;margin-top:18px;padding:12px 0;font-size:14px;display:inline-flex}.contact-section .contact-invitation>a span{font-size:24px}.portfolio-home .contact-section[data-motion=curtain]{height:calc(var(--curtain-stage) + var(--curtain-travel));background:var(--hero-paper);scroll-margin-top:var(--curtain-top)}.contact-section[data-motion=curtain] .contact-stage{top:var(--curtain-top);height:var(--curtain-stage);isolation:isolate;background:#181c1f;position:sticky;overflow:clip}.contact-section[data-motion=curtain] .contact-curtain{z-index:2;background:var(--hero-paper);transform-origin:top;pointer-events:none;will-change:transform;display:block;position:absolute;inset:0}.contact-section[data-motion=curtain] .contact-invitation{z-index:3;will-change:transform;background:0 0;width:100%;position:absolute;top:0;left:50%}.contact-section[data-motion=curtain] .contact-invitation>a{opacity:var(--contact-hint-opacity,1);position:absolute;top:calc(100% - 24px)}.contact-section[data-motion=curtain][data-revealed=true] .contact-invitation>a{visibility:hidden}.contact-section[data-motion=curtain] .contact-inner{top:var(--curtain-edge);min-height:calc(var(--curtain-stage) - var(--curtain-edge));flex-direction:column;padding-top:0;display:flex;position:absolute;left:0;right:0}.contact-section[data-motion=curtain] .contact-actions{margin-top:auto}.contact-section[data-motion=curtain] .contact-copy{padding-bottom:32px}.contact-section .contact-inner{flex-direction:column;max-width:1400px;margin:auto;padding:24px clamp(24px,5vw,88px) 16px;scroll-margin-top:100px;display:flex}.contact-section .contact-copy{border-top:1px solid #ffffff30;padding-top:clamp(18px,2.5vw,32px)}.contact-section .contact-copy h2{font-size:var(--contact-heading-size);letter-spacing:-.055em;text-wrap:balance;margin:0;font-weight:550;line-height:1.24}.contact-section .contact-copy h2 span{white-space:pre-wrap;display:inline-block}.contact-section .contact-copy p{color:#b9bdc7;text-wrap:pretty;max-width:1000px;margin:14px 0 16px;font-size:14px;line-height:1.85}.contact-section .contact-actions{justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;display:flex}.contact-section .contact-channels{flex-wrap:wrap;align-items:flex-end;gap:20px 32px;min-width:0;display:flex}.contact-section .contact-channel{align-items:center;gap:12px;min-width:0;max-width:100%;display:inline-flex}.contact-section .contact-channel>svg{color:#b9bdc7;flex-shrink:0}.contact-section .contact-channel>span{overflow-wrap:anywhere;font-size:16px;line-height:1.5}.contact-section a.contact-channel:hover{text-underline-offset:4px;text-decoration:underline}.contact-section .contact-channels:focus-visible{outline-offset:8px;border-radius:4px;outline:1px solid #a6b6ff}.contact-section .contact-cta{color:#0b0b0c;background:#fff;border:0;border-radius:999px;flex-shrink:0;align-self:center;align-items:center;gap:10px;min-height:44px;margin-left:auto;padding:10px 18px;font-size:16px;font-weight:500;line-height:1.4;text-decoration:none;transition:background .16s,color .16s;display:inline-flex}.contact-section .contact-cta:hover{color:#fff;background:#254fff}.contact-section a:focus-visible{outline-offset:7px;outline:2px solid #a6b6ff}.contact-section .contact-meta{color:#a8adb7;border-top:1px solid #ffffff24;justify-content:space-between;align-items:center;gap:20px;margin-top:0;padding-top:12px;font-size:12px;line-height:1.7;display:flex}.contact-section .contact-meta>div{flex-wrap:wrap;gap:24px;display:flex}.contact-section .contact-meta a:hover{color:#fff;text-underline-offset:4px;text-decoration:underline}@media (max-width:700px){.portfolio-home .contact-section{scroll-margin-top:112px}.contact-section .contact-copy p{margin-top:12px;font-size:13px}.contact-section .contact-cta{min-height:40px;padding:9px 16px;font-size:14px}.contact-section .contact-channels{gap:16px}.contact-section .contact-channel{gap:10px}.contact-section .contact-channel>span{font-size:14px}.contact-section .contact-meta{flex-wrap:wrap;gap:16px 24px}.contact-section .contact-meta>span:first-child{width:100%}.contact-section .contact-meta>span:last-child{margin-left:auto}}@media (prefers-reduced-motion:reduce){.contact-section .contact-cta{transition:none}}
.contact-section .contact-reveal-line{display:block}.contact-section .contact-reveal-word{white-space:nowrap;display:inline-block}.contact-section .contact-reveal-glyph{white-space:pre;display:inline-block}.contact-section .contact-reveal-accessible{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.contact-section .contact-reveal[data-reveal=waiting] .contact-reveal-glyph{opacity:0;filter:blur(6px);transform:translateY(.2em)}.contact-section .contact-reveal[data-reveal=playing] .contact-reveal-glyph{animation:contact-letter-enter .6s cubic-bezier(.22, 1, .36, 1) var(--letter-delay) both}@keyframes contact-letter-enter{0%{opacity:0;filter:blur(6px);transform:translateY(.2em)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.contact-section .contact-reveal[data-reveal] .contact-reveal-glyph{opacity:1;filter:none;animation:none;transform:none}}
.contact-section .contact-inner{isolation:isolate;position:relative}.contact-section .contact-landscape{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000);mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000)}.contact-section .contact-landscape canvas{opacity:.8;width:100%;height:100%;display:block}.contact-section .contact-landscape:after{content:"";background:linear-gradient(#181c1f 0%,#181c1ff2 22%,#181c1f55 46%,#181c1f22 63%,#181c1fdb 83%,#181c1f 96%);position:absolute;inset:0}@media (max-width:700px){.contact-section .contact-landscape canvas{opacity:.5}}
.contact-section .contact-channels{position:relative}.contact-section .contact-social{color:#b9bdc7;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin:-4px 0;display:inline-flex}.contact-section a.contact-social:hover{color:#afc0ff;background:#254fff20}.contact-section a.contact-social:focus-visible{outline-offset:4px;outline:2px solid #a6b6ff}.contact-section button.contact-channel{appearance:none;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-user-select:text;user-select:text;background:0 0;border:0;margin:-6px 0;padding:6px 0}.contact-section button.contact-channel:hover{color:#afc0ff}.contact-section button.contact-channel:hover>svg{color:#8ca5ff}.contact-section button.contact-channel:focus-visible{outline-offset:7px;border-radius:3px;outline:2px solid #a6b6ff}.contact-section .contact-copy-feedback{color:#d4dfff;pointer-events:none;opacity:0;background:#19223b;border:1px solid #7899ff45;border-radius:8px;max-width:min(340px,76vw);padding:8px 12px;font-size:12px;line-height:1.5;transition:opacity .16s,transform .16s;position:absolute;bottom:calc(100% + 16px);left:0;transform:translateY(4px)}.contact-section .contact-copy-feedback[data-visible=true]{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.contact-section .contact-copy-feedback{transition:none}}
.page-transition-content{display:contents}.page-transition{z-index:2147483100;isolation:isolate;color:#0b0b0c;font-family:var(--font-geist-sans), Arial, sans-serif;background:#f4f5f6;outline:none;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.page-transition[hidden]{display:none}html .page-transition,html .page-transition *{cursor:wait!important}.page-transition .page-transition-brand{text-align:center;z-index:1;position:relative}.page-transition .page-transition-logo{letter-spacing:-.11em;padding-right:.12em;font-size:clamp(88px,12vw,140px);font-weight:850;line-height:1}.page-transition .page-transition-logo span{color:#254fff}.page-transition .page-transition-signature{letter-spacing:.18em;margin-top:24px;font-size:10px;font-weight:500;display:block}.page-transition output{color:#737b8b;letter-spacing:.06em;margin:16px 0 0;font-size:12px;display:block}.page-transition .page-transition-orbit{aspect-ratio:1;border:1px solid #254fff12;border-radius:50%;width:min(66vw,380px);position:absolute}.page-transition .page-transition-orbit:before{content:"";background:radial-gradient(circle,#254fff08,#0000 65%);border-radius:50%;position:absolute;inset:-40%}.page-transition .page-transition-orbit i{border:1px solid #0000;border-top-color:#254fff80;border-radius:50%;animation:2.4s linear infinite page-transition-orbit;position:absolute;inset:-1px}.page-transition .page-transition-orbit b{background:#254fff;border-radius:50%;width:5px;height:5px;animation:1.6s ease-in-out infinite page-transition-breathe;position:absolute;top:-3px;left:calc(50% - 2px);box-shadow:0 0 14px #254fff50}.page-transition .page-transition-corner{bottom:max(28px, env(safe-area-inset-bottom));letter-spacing:.14em;color:#8a91a0;font-size:9px;position:absolute;left:5vw}html .page-transition a{color:#254fff;text-underline-offset:5px;margin-top:24px;font-size:13px;display:inline-block;cursor:pointer!important}.page-transition a[hidden]{display:none}.page-transition a:focus-visible{outline-offset:6px;outline:2px solid #254fff}@keyframes page-transition-orbit{to{transform:rotate(360deg)}}@keyframes page-transition-breathe{50%{opacity:.3;transform:scale(.7)}}@media (max-width:600px){.page-transition .page-transition-orbit{width:290px}.page-transition .page-transition-signature{font-size:9px}}@media (prefers-reduced-motion:reduce){.page-transition .page-transition-orbit i,.page-transition .page-transition-orbit b{animation:none}}
main.project-case{--case-gutter:max(5vw, calc((100vw - 1320px) / 2));--case-section-space:clamp(56px, 5.5vw, 88px);--case-title:clamp(36px, 4.5vw, 64px);--case-heading:clamp(28px, 2.8vw, 40px);--case-subheading:clamp(20px, 1.7vw, 24px);font-size:15px}main.project-case[lang] :is(h1,h2,h3){overflow-wrap:break-word;text-wrap:balance;font-family:inherit}main.project-case[lang] h1{font-size:var(--case-title);letter-spacing:-.055em;font-weight:650;line-height:1.08}main.project-case[lang] h2{font-size:var(--case-heading);letter-spacing:-.035em;white-space:normal;font-weight:550;line-height:1.3}main.project-case[lang] h3{font-size:var(--case-subheading);letter-spacing:-.025em;font-weight:600;line-height:1.4}main.project-case[lang] p{font-size:15px;line-height:1.8}main.project-case[lang] blockquote{letter-spacing:-.025em;font-size:clamp(20px,2vw,28px);line-height:1.5}main.project-case :is(.aus-case-section,.hub-section,.escape-section,.relief-section,.dish-story,.dish-tech,.dish-end){padding:var(--case-section-space) var(--case-gutter)}main.project-case :is(.aus-case-section-head,.aus-case-feature-heading,.hub-section-heading,.escape-section-head,.relief-section-head,.dish-section-heading,.dish-tech-intro){grid-template-columns:150px minmax(0,1fr);align-items:start;gap:16px 32px;display:grid}main.project-case :is(.aus-case-section-head,.aus-case-feature-heading,.hub-section-heading,.escape-section-head,.relief-section-head)>span{padding-top:8px;font-size:12px;line-height:1.6}main.project-case :is(.aus-case-section-head,.aus-case-feature-heading,.hub-section-heading,.escape-section-head,.relief-section-head,.dish-section-heading) h2{max-width:24em}main.project-case :is(.dish-section-heading>div,.dish-tech-intro>p:last-child){grid-column:2;max-width:720px}main.project-case :is(.aus-case-research-intro,.aus-case-process-intro,.hub-section-intro,.escape-section-intro,.relief-section-intro){max-width:760px;margin:24px 0 40px 182px}main.project-case[lang] :is(.aus-case-eyebrow,.aus-case-overline,.hub-eyebrow,.escape-eyebrow,.relief-overline,.dish-detail-eyebrow,.dish-section-heading>p,.dish-tech-intro>p:first-child,.dish-end>p){letter-spacing:.045em;font-size:12px;line-height:1.6}main.project-case :is(.aus-case-hero,.escape-hero,.relief-hero,.dish-detail-hero){min-height:600px}main.project-case :is(.aus-case-hero-copy,.escape-hero-copy,.relief-hero-copy,.dish-detail-hero-copy){min-height:0;padding:32px 32px 48px var(--case-gutter);justify-content:center}main.project-case :is(.aus-case-back,.escape-back,.relief-back,.dish-detail-back,.hub-back){margin-bottom:36px}main.project-case :is(.escape-eyebrow,.relief-overline){margin:0 0 16px}main.project-case :is(.aus-case-hero,.escape-hero,.relief-hero,.dish-detail-hero) h1{margin:0}main.project-case[lang] :is(.aus-case-hero,.escape-hero,.relief-hero,.hub-hero-bottom) h2{max-width:24em;margin:22px 0 14px;font-size:clamp(22px,2vw,28px);font-weight:550;line-height:1.4}main.project-case :is(.aus-case-hero-detail,.escape-hero-intro,.relief-hero-text,.dish-detail-intro,.hub-hero-bottom p){max-width:620px}main.project-case .dish-detail-intro{margin-top:22px;font-weight:400}main.project-case :is(.aus-case-hero-actions,.escape-hero-actions,.relief-hero-actions,.dish-detail-hero-actions){gap:16px;margin-top:24px}main.project-case .hub-hero-inner{min-height:0;padding:32px var(--case-gutter) 48px}main.project-case .hub-hero-bottom{align-items:center;gap:24px;margin-top:20px}main.project-case .hub-hero-bottom h2{margin-top:0}main.project-case .escape-hero-code{font-size:clamp(30px,3.5vw,52px)}main.project-case[lang] :is(.aus-case-feature-copy,.aus-case-secondary,.hub-feature,.escape-evolution-grid,.escape-iteration-copy,.relief-subhead,.relief-research-guide,.relief-map-heading,.dish-evidence-copy,.dish-reflection) h3{font-size:clamp(23px,2.1vw,30px);line-height:1.35}main.project-case :is(.aus-case-challenge-body,.hub-context-body){gap:40px;margin:36px 0 48px}main.project-case :is(.aus-case-feature,.hub-feature){gap:40px;padding-block:48px}main.project-case :is(.aus-case-feature-heading,.hub-experience .hub-section-heading){margin-bottom:40px}main.project-case :is(.aus-case-outcome-grid,.hub-outcome-grid){margin-block:40px}main.project-case :is(.escape-iteration-list,.relief-metaphor,.relief-solution-grid){margin-top:40px}main.project-case .dish-end h2{margin-top:32px}main.project-case :is(.hub-model-grid,.hub-process-grid) h3,main.project-case :is(.escape-role-grid,.escape-findings) h3{margin-top:28px}main.project-case .escape-iteration-copy h3{margin-block:20px}main.project-case :is(.escape-facts,.aus-case-facts,.hub-facts,.relief-facts)>div{gap:10px;min-height:112px}@media (max-width:900px){main.project-case{--case-gutter:24px}main.project-case :is(.aus-case-section-head,.aus-case-feature-heading,.hub-section-heading,.escape-section-head,.relief-section-head,.dish-section-heading,.dish-tech-intro){grid-template-columns:116px minmax(0,1fr);gap:16px 24px}main.project-case :is(.aus-case-research-intro,.aus-case-process-intro,.hub-section-intro,.escape-section-intro,.relief-section-intro){margin-left:140px}}@media (max-width:760px){main.project-case{--case-gutter:22px;--case-section-space:48px;--case-title:clamp(34px, 8.5vw, 46px);--case-heading:clamp(26px, 6.4vw, 32px);--case-subheading:20px}main.project-case[lang] p{font-size:14px;line-height:1.8}main.project-case :is(.aus-case-hero,.escape-hero,.relief-hero,.dish-detail-hero){min-height:0}main.project-case :is(.aus-case-hero-copy,.escape-hero-copy,.relief-hero-copy,.dish-detail-hero-copy),main.project-case .hub-hero-inner{padding:28px var(--case-gutter) 36px}main.project-case :is(.aus-case-section-head,.aus-case-feature-heading,.hub-section-heading,.escape-section-head,.relief-section-head,.dish-section-heading,.dish-tech-intro){grid-template-columns:minmax(0,1fr);gap:14px}main.project-case :is(.aus-case-section-head,.aus-case-feature-heading,.hub-section-heading,.escape-section-head,.relief-section-head)>span{margin:0;padding:0}main.project-case :is(.dish-section-heading>div,.dish-tech-intro>p:last-child){grid-column:auto}main.project-case :is(.aus-case-research-intro,.aus-case-process-intro,.hub-section-intro,.escape-section-intro,.relief-section-intro){margin:20px 0 28px}main.project-case :is(.aus-case-feature,.hub-feature){gap:24px;padding-block:32px}main.project-case :is(.aus-case-challenge-body,.hub-context-body){gap:24px;margin:28px 0 36px}}
