@font-face{font-family:Awesome Serif Italic;src:url(/fonts/AwesomeSerifItalic-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Awesome Serif Italic;src:url(/fonts/AwesomeSerifItalic-MedRegular.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}:root{--black:#101010;--text:#555;--stroke:#d7d7d7;--purple:#e1ccfa;--purple-strong:#8a38f5;--green:#dcfcd4;--orange:#fcdcc5;--pink:#fde2f8;--blue:#cadcf6;--yellow:#fcf4cd;--grey-fill:#f3f3f3;--page:#f4f4f4;--font-sans:"Manrope", sans-serif;--font-serif:"Awesome Serif Italic", Georgia, serif;--content:min(1280px, calc(100% - 2.5rem))}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;font-family:var(--font-sans);color:var(--black);background:var(--page);-webkit-font-smoothing:antialiased;margin:0}img{max-width:100%;display:block}button,a{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}a{text-decoration:none}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{isolation:isolate;position:relative;overflow-x:clip}.grid-bg{z-index:-1;background-color:var(--page);pointer-events:none;background-image:url(/assets/grid-pattern.svg);background-repeat:repeat;background-size:60px 60px;position:fixed;inset:0}.nav{z-index:10;width:var(--content);border:1px solid var(--stroke);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;margin:40px auto 0;padding:12px 24px;animation:.7s both rise;display:flex;position:relative;box-shadow:0 4px 17px #0000000d}.nav-brand{font-family:var(--font-serif);letter-spacing:.02em;margin:0;font-size:clamp(1.4rem,2vw,2rem);font-style:normal;font-weight:500}a.nav-brand:hover{opacity:.75}.nav-links{align-items:center;gap:.35rem;display:flex}.nav-links .nav-washi{letter-spacing:-.05em;padding:10px 14px;font-size:1.125rem}.nav-washi{z-index:0;transition:opacity .2s;position:relative}.nav-washi:hover{opacity:.65}.nav-washi.is-active{opacity:1}.nav-washi.is-active:before{content:"";background-color:var(--nav-washi);z-index:-1;pointer-events:none;height:1.75rem;position:absolute;top:50%;left:2px;right:2px;transform:translateY(-52%)rotate(-1.2deg);-webkit-mask-image:url(/assets/nav/washi-mask.png);mask-image:url(/assets/nav/washi-mask.png);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.nav-washi--work{--nav-washi:var(--pink)}.nav-washi--about{--nav-washi:var(--purple)}.nav-washi--connect{--nav-washi:var(--green)}.dock{left:50%;bottom:max(1.25rem, env(safe-area-inset-bottom,0px) + .75rem);z-index:40;opacity:0;pointer-events:none;transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .3s;position:fixed;transform:translate(-50%)translateY(120%)}.dock.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.bottom-nav{width:min(700px,100% - 2rem)}.bottom-nav-bar,.case-dock-bar{border:1px solid var(--stroke);background:#fff;border-radius:12px;box-shadow:0 4px 17px #0000000d}.bottom-nav-bar{justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:16px 24px;display:flex}.bottom-nav-brand{font-family:var(--font-serif);letter-spacing:.02em;white-space:nowrap;margin:0;padding:4px 8px;font-size:2rem;font-style:normal;font-weight:500;line-height:1.2}.bottom-nav-brand:hover{opacity:.75}.bottom-nav-links{align-items:center;gap:19px;display:flex}.bottom-nav-links .nav-washi{letter-spacing:-.05em;white-space:nowrap;padding:10px 14px;font-size:1.125rem}.case-dock{width:max-content;max-width:calc(100% - 1.5rem);overflow:visible}.case-dock-bar{align-items:center;gap:17px;padding:20px 24px;display:flex;overflow:visible}.case-dock-main{-webkit-overflow-scrolling:touch;scrollbar-width:none;align-items:center;gap:17px;min-width:0;display:flex;overflow-x:auto}.case-dock-main::-webkit-scrollbar{display:none}.case-dock-pager{flex-shrink:0;align-items:center;gap:17px;display:flex}.case-dock-divider{background:var(--stroke);flex-shrink:0;width:1px;height:30px}.case-dock-item{color:var(--black);letter-spacing:-.05em;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:10px 14px;font-size:1.125rem;transition:background .2s,border-color .2s,box-shadow .2s;display:inline-flex}.case-dock-item img{flex-shrink:0;width:24px;height:24px}.case-dock-item:hover{background:#f7f2fd}.case-dock-item.is-active{border-color:var(--purple-strong);background:#ecdefc;box-shadow:2px 2px 12px #0000001f}.case-dock-nav-wrap{flex-shrink:0;display:inline-flex;position:relative}.case-dock-nav{box-sizing:border-box;border:1px solid var(--stroke);width:45px;min-width:45px;height:45px;min-height:45px;color:var(--black);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .2s,border-color .2s,opacity .2s;display:inline-flex}.case-dock-nav img{object-fit:contain;flex-shrink:0;width:24px;min-width:24px;height:24px;min-height:24px;display:block}.case-dock-nav--next img{transform:scaleX(-1)}.case-dock-nav-wrap:not(.is-disabled) .case-dock-nav:hover{background:#f7f2fd}.case-dock-nav-wrap.is-disabled .case-dock-nav{opacity:.35;cursor:not-allowed}.case-dock-tooltip{background:var(--black);color:#fff;letter-spacing:-.05em;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;z-index:2;border-radius:4px;justify-content:center;align-items:center;gap:10px;padding:6px 12px;font-size:1rem;line-height:22px;transition:opacity .15s,visibility .15s;display:inline-flex;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}.case-dock-tooltip-caret{width:13px;height:10px;margin-top:-1px;position:absolute;top:100%;left:50%;transform:translate(-50%)rotate(180deg)}.case-dock-nav-wrap:hover .case-dock-tooltip,.case-dock-nav-wrap:focus-within .case-dock-tooltip{opacity:1;visibility:visible}.preloader{z-index:100;background:var(--page);pointer-events:none;opacity:1;place-items:center;transition:opacity .42s;display:grid;position:fixed;inset:0}.preloader--out{opacity:0}.preloader-grid{opacity:.55;background-image:url(/assets/grid-pattern.svg);background-repeat:repeat;background-size:60px 60px;position:absolute;inset:0}.preloader-mark{flex-direction:column;align-items:center;gap:1rem;animation:.55s both preloader-in;display:flex;position:relative}.preloader-name{font-family:var(--font-serif);letter-spacing:.02em;color:var(--black);margin:0;font-size:clamp(2rem,5vw,2.75rem);font-weight:500}.preloader-line{background:var(--black);transform-origin:0;border-radius:999px;width:72px;height:2px;animation:.9s ease-in-out infinite preloader-line;display:block}@keyframes preloader-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes preloader-line{0%{opacity:.35;transform:scaleX(.25)}50%{opacity:1;transform:scaleX(1)}to{opacity:.35;transform:scaleX(.25)}}.section{width:var(--content);margin:clamp(5rem,10vw,7.5rem) auto 0}.section-intro{text-align:center;max-width:48rem;margin:0 auto 3.5rem}.section-intro h1,.section-intro h2{margin:0 0 .55rem;font-size:clamp(1.85rem,3.6vw,3rem);font-weight:700;line-height:1.15}.section-intro .sans{letter-spacing:-.05em}.section-intro .serif,.project-text .serif,.connect-content .serif,.job-title .company{font-family:var(--font-serif);letter-spacing:.02em;font-style:normal;font-weight:400}.section-intro p{color:var(--text);letter-spacing:-.05em;margin:0;font-size:clamp(1rem,1.3vw,1.125rem);line-height:1.55}.hero{width:var(--content);z-index:1;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;column-gap:clamp(1rem,3vw,2.5rem);margin:100px auto 0;animation:.8s 80ms both rise;display:grid;position:relative}.hero-copy{z-index:2;flex-direction:column;justify-content:flex-start;max-width:46rem;padding-top:.5rem;padding-right:0;display:flex;position:relative}.hero-greeting{letter-spacing:-.05em;margin:0 0 .35rem;font-size:clamp(1.4rem,2.2vw,2rem);font-weight:600}.hero-headline{width:fit-content;max-width:min(100%,46rem);position:relative}.hero-headline h1{flex-direction:column;align-items:flex-start;width:fit-content;max-width:100%;margin:0;font-size:clamp(2.4rem,5vw,4.25rem);font-weight:700;line-height:1.05;display:flex}.hero-headline .line{width:fit-content;max-width:100%;display:block;position:relative}.hero-headline .line--inline-pill{flex-wrap:nowrap;align-items:center;column-gap:.65rem;display:inline-flex}.hero-headline .line-phrase{white-space:nowrap}.hero-headline .line.sans{letter-spacing:-.05em}.hero-headline .line.serif{font-family:var(--font-serif);letter-spacing:.04em;font-size:1.18em;font-style:normal;font-weight:400}.pill{z-index:2;font-family:var(--font-sans);letter-spacing:-.05em;white-space:nowrap;border-radius:100px;flex-shrink:0;justify-content:center;align-items:center;padding:8px 12px;font-size:clamp(.7rem,1vw,1rem);font-weight:700;line-height:1;animation:9s ease-in-out infinite drift;display:inline-flex;box-shadow:0 6px 16px #0000000f}.pill-coffee{background:var(--orange);animation-delay:0s;position:absolute;top:-1.7rem;left:58%;transform:rotate(5deg)}.pill-problem{background:var(--purple);animation-delay:1.5s;position:relative;top:0;left:0;transform:rotate(-2deg)}.word-digital{display:inline-block}.pill-creative{background:var(--green);animation-delay:3s;position:absolute;top:calc(100% + .45rem);left:2.5rem;transform:rotate(-3.9deg)}.hero-body{max-width:40rem;color:var(--text);letter-spacing:-.05em;margin:4.25rem 0 0;font-size:clamp(1rem,1.35vw,1.125rem);line-height:1.55}.hero-visual{--badge-card-start:.55;width:min(386px,40vw);aspect-ratio:772 / calc(2653 * (1 - var(--badge-card-start)));pointer-events:none;z-index:1;justify-self:end;margin-top:-2.5rem;position:relative;overflow:visible}.id-badge{z-index:4;filter:drop-shadow(0 18px 28px #00000029);position:absolute;inset:0}.id-badge-swing{width:100%;height:calc(100% / (1 - var(--badge-card-start)));left:0;top:calc(-1 * var(--badge-card-start) / (1 - var(--badge-card-start)) * 100% - 36px);transform-origin:50% 0;animation:10s ease-in-out infinite hang-swing;position:absolute}.id-badge-tilt{transform-origin:50% 42%;width:100%;height:100%;position:relative;transform:rotate(3.63deg)}.id-badge-frame{z-index:1;object-fit:fill;width:100%;height:100%;display:block;position:absolute;inset:0}.id-badge-photo-wrap{z-index:2;width:88.47%;height:37.73%;position:absolute;top:60.69%;left:5.31%;overflow:hidden}.id-badge-photo{object-fit:cover;object-position:center 12%;width:100%;height:100%;position:absolute;inset:0}.id-badge-butterfly{z-index:5;width:19.7%;position:absolute;top:62.6%;left:77%;transform:rotate(-4.86deg)}.id-badge-star{z-index:5;position:absolute}.id-badge-star--lg{width:16%;top:79%;left:0%}.id-badge-star--md{width:5.8%;top:85.1%;left:9.2%;transform:rotate(62.93deg)}.id-badge-star--sm{width:4.1%;top:84.1%;left:-2.9%;transform:rotate(62.93deg)}.id-badge-star--xs{width:5.8%;top:76.3%;left:-5.4%;transform:rotate(62.93deg)}.id-badge-star--tiny{width:3.2%;top:79.8%;left:-7.6%;transform:rotate(62.93deg)}.project-list{flex-direction:column;gap:5rem;max-width:1068px;margin:0 auto;display:flex}.project-shell{padding:24px;position:relative}.project-shell--pink{background:var(--pink)}.project-shell--blue{background:var(--blue)}.project-shell--yellow{background:var(--yellow)}.project-shell--green{background:var(--green)}.project-card{border:1px solid var(--stroke);background:#fff;border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(220px,455px);align-items:center;gap:clamp(1.25rem,3vw,2.5rem);padding:24px;display:grid}.project-card--link{color:inherit;cursor:pointer;text-decoration:none;transition:border-color .25s,box-shadow .25s,transform .25s}.project-card--link:hover,.project-card--link:focus-visible{border-color:#cfcfcf;transform:translateY(-2px);box-shadow:0 14px 28px #10101014}.project-card--link:hover .case-link,.project-card--link:focus-visible .case-link{color:#984df4}.project-card--link:hover .case-link .btn-arrow,.project-card--link:focus-visible .case-link .btn-arrow{opacity:1;width:26.96px;transform:translate(0)}.project-card--link:hover .case-link>span:first-child,.project-card--link:focus-visible .case-link>span:first-child{text-decoration-color:#984df4}.project-card--link:focus-visible{outline:2px solid var(--purple-strong);outline-offset:3px}.project-copy{flex-direction:column;gap:clamp(2rem,8vw,8rem);min-width:0;display:flex}.tags{background:var(--grey-fill);border:1px solid var(--stroke);white-space:nowrap;border-radius:100px;flex-wrap:wrap;align-items:center;gap:8px;width:fit-content;padding:8px 16px;font-size:1.125rem;font-weight:500;display:inline-flex}.tags .dot{background:var(--black);border-radius:50%;width:5px;height:5px}.project-text{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.project-text h3{letter-spacing:-.05em;margin:0;font-size:clamp(1.35rem,2.4vw,2rem);font-weight:600;line-height:1.2}.project-text p{color:var(--text);letter-spacing:-.05em;margin:0;font-size:1.125rem;line-height:1.45}.case-link{min-height:46.72px;color:var(--black);letter-spacing:-.05em;align-items:center;gap:5px;padding:10px;font-size:1.125rem;font-weight:700;text-decoration:none;transition:color .25s;display:inline-flex}.case-link--soon{opacity:.45;cursor:default;pointer-events:none}.case-link--soon>span:first-child{text-decoration:none}.case-link>span:first-child{text-underline-offset:4px;text-decoration:underline}.case-link .btn-arrow{opacity:0;justify-content:center;align-items:center;width:0;height:26.72px;transition:width .25s,opacity .25s,transform .25s;display:flex;overflow:hidden;transform:translate(-6px)}.case-link .btn-arrow img{width:18px;height:20.08px;transform:rotate(-49.63deg)}.case-link:hover{color:#984df4}.case-link:hover .btn-arrow{opacity:1;width:26.96px;transform:translate(0)}.case-link:hover>span:first-child{text-decoration-color:#984df4}.project-media{aspect-ratio:1;background:linear-gradient(#cdabf7,#b8d0f3);border-radius:24px;overflow:hidden}.project-shell--blue .project-media{background:linear-gradient(#fae997,#fbc3f1)}.project-shell--yellow .project-media{background:linear-gradient(#fac197,#c6fab9)}.project-shell--green .project-media{background:linear-gradient(#b8d0f3,#fae997)}.project-media img{object-fit:cover;width:100%;height:100%}.project-media-img--leads{object-position:left center}.project-media-img--mobile{object-position:center 20%}.sticker{z-index:3;pointer-events:none;filter:drop-shadow(0 6px 10px #0000001f);animation:5s ease-in-out infinite float;position:absolute}.sticker-pencil{width:66px;top:48%;left:-48px;transform:translateY(-50%)rotate(163.35deg)scaleY(-1)}.sticker-star{width:75px;top:-18px;right:-28px;transform:rotate(-8deg)}.sticker-smiley{width:91px;bottom:-28px;left:249px}.sticker-flower{width:100px;top:-18px;right:-22px}.sticker-clip{width:38px;animation-duration:5.2s;top:20%;left:-28px;transform:rotate(-75deg)}.sticker-cursor{width:49px;animation-duration:4.8s;animation-delay:.4s;bottom:12%;right:-18px;transform:rotate(-24.78deg)}.sticker-flower-orange{width:71px;animation-duration:5.4s;top:-12px;left:-18px}.sticker-rocket{width:98px;animation-duration:4.6s;animation-delay:.6s;bottom:-34px;left:42%;transform:translate(-50%)}.explore-btn{background:var(--purple);border:1px solid var(--purple-strong);width:fit-content;color:var(--black);letter-spacing:-.05em;white-space:nowrap;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:0;margin:3.5rem auto 0;padding:10px 14px;font-size:1.125rem;font-weight:400;line-height:normal;text-decoration:none;transition:background-color .25s,color .25s,border-color .25s,gap .25s;display:flex;overflow:hidden;box-shadow:2px 2px 12px #0000001f}.explore-btn-icon{opacity:0;background:currentColor;flex-shrink:0;width:0;height:24px;transition:width .25s,opacity .25s,transform .25s;display:block;transform:scaleY(-1)rotate(180deg)translate(-4px);-webkit-mask:url(/assets/work/arrow-explore-more.svg) 50%/24px 24px no-repeat;mask:url(/assets/work/arrow-explore-more.svg) 50%/24px 24px no-repeat}.explore-btn:hover{background:var(--purple-strong);border-color:var(--purple-strong);color:#fff;gap:10px}.explore-btn:hover .explore-btn-icon{opacity:1;width:24px;transform:scaleY(-1)rotate(180deg)translate(0)}.case--adnet{--case-wide:1080px;--case-prose:800px;--case-gutter:2.5rem;--case-frame-pad:24px;--case-radius:24px;padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:0}.case--adnet #overview,.case--adnet #process,.case--adnet #execution,.case--adnet #impact{scroll-margin-top:6rem}.case-hero{width:min(var(--case-wide), calc(100% - var(--case-gutter)));text-align:center;flex-direction:column;align-items:center;gap:clamp(2rem,4vw,3rem);margin:0 auto;animation:.7s both rise;display:flex}.case-hero-copy{flex-direction:column;align-items:center;gap:1.25rem;max-width:52rem;display:flex}.case-hero-copy h1{letter-spacing:-.05em;margin:0;font-size:clamp(1.85rem,4vw,3rem);font-weight:700;line-height:1.15}.case-hero-line{display:inline}.case-hero-copy h1 .serif{font-family:var(--font-serif);letter-spacing:.02em;font-weight:500}.case-hero-copy>p{max-width:44rem;color:var(--text);letter-spacing:-.05em;margin:0;font-size:clamp(1rem,1.6vw,1.125rem);line-height:1.45}.case-hero-media{border-radius:var(--case-radius);width:100%;transition:transform .35s;overflow:hidden}.case-hero-media:hover{transform:translateY(-4px)}.case-hero-media img{width:100%;height:auto}.case-body{width:min(var(--case-prose), calc(100% - var(--case-gutter)));flex-direction:column;gap:clamp(3rem,6vw,3.75rem);margin:clamp(3.5rem,7vw,5rem) auto 0;display:flex}.case-body>*{animation:.65s both rise}.case-body>:first-child{animation-delay:50ms}.case-body>:nth-child(2){animation-delay:.1s}.case-body>:nth-child(3){animation-delay:.15s}.case-body>:nth-child(4){animation-delay:.18s}.case-body>:nth-child(5){animation-delay:.2s}.case-body>:nth-child(n+6){animation-delay:.22s}.case-overview{max-width:var(--case-prose);grid-template-columns:minmax(0,1fr) minmax(220px,284px);align-items:center;gap:clamp(1.5rem,4vw,3.25rem);width:100%;margin:0 auto;display:grid}.case-overview-copy,.case-block,.case-prose{flex-direction:column;gap:1.125rem;display:flex}.case-overview-copy h2,.case-block h2,.case-prose h2{letter-spacing:-.05em;margin:0;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;line-height:1.2}.case-block h3,.case-prose h3{letter-spacing:-.05em;margin:.5rem 0 0;font-size:1.5rem;font-weight:700;line-height:1.3}.case-overview-copy p,.case-block p,.case-prose p,.case-block li,.case-prose li{color:var(--text);letter-spacing:-.05em;margin:0;font-size:1.125rem;line-height:1.5}.case-block,.case-block--wide>.case-prose,.case-learnings{max-width:var(--case-prose);width:100%;margin-inline:auto}.case-block--wide{flex-direction:column;gap:2.5rem;max-width:none;display:flex}.case-meta{flex-direction:column;gap:12px;display:flex}.case-meta-card{border:1px dashed var(--stroke);background:#fff;border-radius:12px;padding:18px;transition:transform .25s,box-shadow .25s,border-color .25s}.case-meta-card:hover{border-color:#c9b0f5;transform:translateY(-3px);box-shadow:0 8px 18px #1010100f}.case-meta-label{color:#9747ff;font-family:var(--font-serif);letter-spacing:.02em;margin:0 0 8px;font-size:1rem}.case-meta-value{color:var(--text);letter-spacing:-.05em;margin:0;font-size:18px;font-weight:500;line-height:1.3}.case-emphasis{color:var(--purple-strong);font-family:var(--font-serif);letter-spacing:.03em;font-style:normal}.case-callout-group{margin-top:.375rem;padding-top:27px;position:relative}.case-callout{border-radius:12px;margin-top:.375rem;padding:2.125rem 1.7rem 1.75rem;transition:transform .3s;position:relative}.case-callout-group .case-callout{margin-top:0}.case-callout:hover,.case-callout-group:hover .case-callout{transform:translateY(-3px)rotate(-.4deg)}.case-callout-group:hover .case-callout__plate{transform:rotate(1.2deg)}.case-callout--pink{z-index:1;box-shadow:none;background:#feecfa}.case-callout__plate{z-index:0;box-sizing:border-box;transform-origin:50%;pointer-events:none;background:#f47cba;border:14px solid #f77de1;border-radius:12px;transition:transform .3s;position:absolute;inset:24px 0 -3px;transform:rotate(1.86deg)}.case-callout--pink>p{z-index:1;position:relative}.case-callout p{color:var(--black);letter-spacing:-.05em}.case-sticker{pointer-events:none;-webkit-user-select:none;user-select:none;object-fit:contain;max-width:none;position:absolute;height:auto!important}.case-sticker-wrap{pointer-events:none;line-height:0;position:absolute}.case-sticker-wrap--revamp{z-index:2;width:56px;top:0;right:19px}.case-sticker-wrap--learn{transform-origin:bottom;width:7rem;animation:5s ease-in-out infinite case-rainbow-sway;top:42%;right:-2.25rem;transform:translateY(-50%)}.case-sticker-wrap .case-sticker{width:100%;position:relative;top:auto;right:auto;height:auto!important}.case-sticker-wrap--revamp .case-sticker{animation:4.5s ease-in-out infinite case-sticker-sway}.case-figure{border-radius:var(--case-radius);border:1px solid var(--stroke);background:#fff;width:100%;margin:0;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.case-figure:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1010100f}.case-figure--flush:hover,.case-figure--narrow:hover{box-shadow:none;transform:none}.case-figure>img:not(.case-sticker),.case-figure picture,.case-figure>.case-media-video,.case-figure picture img{width:100%;height:auto;display:block}.case-media-video{background:#f5f5f5}.case-figure--flush{background:0 0;border:none;border-radius:0;overflow:visible}.case-figure--framed{width:100%;max-width:var(--case-prose);padding:var(--case-frame-pad);border:1px solid var(--stroke);border-radius:var(--case-radius);background:#fff;margin-inline:auto;overflow:hidden}.case-block--wide>.case-figure--framed{max-width:var(--case-wide)}.case-figure--framed .case-media-video,.case-figure--framed>img:not(.case-sticker),.case-figure--framed picture img{border-radius:14px}.case-figure--framed .case-media-video{background:#f5f5f5;width:100%}.case-figure--narrow{max-width:var(--case-prose);background:0 0;border:none;border-radius:0;margin-inline:auto;overflow:visible}.case-block ol,.case-prose ol{flex-direction:column;gap:12px;margin:0;padding-left:1.5rem;display:flex}.case-impact{max-width:var(--case-prose);grid-template-columns:repeat(2,minmax(0,1fr));gap:43px;width:100%;margin:0 auto;display:grid}.case-impact-card{aspect-ratio:378/389;transform-origin:50%;will-change:transform;cursor:default;justify-content:center;align-items:center;padding:9.7%;transition:transform .25s;display:flex;position:relative}.case-impact-card:hover,.case-impact-card:focus-within{animation:.65s both impact-card-pop}.case-impact-frame{object-fit:fill;pointer-events:none;width:100%;height:100%;transition:filter .25s;position:absolute;inset:0}.case-impact-card:hover .case-impact-frame,.case-impact-card:focus-within .case-impact-frame{filter:drop-shadow(0 10px 18px #1010101f)}.case-impact-inner{z-index:1;background:#fff;border-radius:9px;flex-direction:column;align-items:stretch;gap:26px;width:100%;padding:19px;display:flex;position:relative}.case-impact-top{flex-direction:column;align-items:center;gap:13px;width:100%;display:flex}.case-impact-audience{border-bottom:1px dashed var(--stroke);width:100%;color:var(--text);text-align:center;letter-spacing:-.05em;margin:0;padding-bottom:13px;font-size:19px;line-height:1.15}.case-block .case-impact-metric{color:var(--black);font-family:var(--font-serif);letter-spacing:.02em;transform-origin:bottom;will-change:transform;margin:0;font-size:76px;font-weight:400;line-height:1;transition:transform .2s;display:inline-block}.case-impact-card:hover .case-impact-metric,.case-impact-card:focus-within .case-impact-metric{animation:.65s both impact-metric-jiggle}@keyframes impact-card-pop{0%{transform:translateY(0)rotate(0)scale(1)}20%{transform:translateY(-6px)rotate(-1.4deg)scale(1.035)}40%{transform:translateY(-2px)rotate(1.2deg)scale(1.045)}60%{transform:translateY(-5px)rotate(-.8deg)scale(1.03)}80%{transform:translateY(-2px)rotate(.5deg)scale(1.02)}to{transform:translateY(0)rotate(0)scale(1)}}@keyframes impact-metric-jiggle{0%{transform:translate(0)rotate(0)scale(1)}18%{transform:translate(-4px)rotate(-4deg)scale(1.06)}36%{transform:translate(4px)rotate(3.5deg)scale(1.08)}54%{transform:translate(-3px)rotate(-2.5deg)scale(1.05)}72%{transform:translate(2px)rotate(1.5deg)scale(1.03)}to{transform:translate(0)rotate(0)scale(1)}}.case-impact-detail{text-align:center;letter-spacing:-.05em;width:100%;color:var(--black);border-radius:9px;margin:0;padding:13px;font-size:17px;line-height:1.35}.case-impact-detail--blue{background:var(--blue)}.case-impact-detail--yellow{background:var(--yellow)}.case-impact-detail--green{background:var(--green)}.case-impact-detail--grey{background:var(--grey-fill)}.case-learnings{position:relative}.case-learn-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.case-learn-card{border:1px solid var(--stroke);transform-origin:50%;will-change:transform;background:#fff;border-radius:8px;justify-content:center;align-items:center;padding:2.5rem;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex}.case-learn-card:hover,.case-learn-card:focus-within{border-color:#cfcfcf;animation:.55s both learn-card-pop;box-shadow:0 10px 22px #10101012}.case-learn-card p{color:var(--black);text-align:center;letter-spacing:-.05em;margin:0;font-size:1.125rem;line-height:1.45;transition:transform .25s}.case-learn-card:hover p,.case-learn-card:focus-within p{animation:.55s both learn-text-nudge}@keyframes learn-card-pop{0%{transform:translateY(0)scale(1)}35%{transform:translateY(-5px)scale(1.02)}65%{transform:translateY(-2px)scale(1.015)}to{transform:translateY(-3px)scale(1.01)}}@keyframes learn-text-nudge{0%,to{transform:translateY(0)}40%{transform:translateY(-2px)}}@keyframes case-sticker-sway{0%,to{transform:rotate(6deg)}50%{transform:rotate(12deg)}}@keyframes case-rainbow-sway{0%,to{transform:translateY(-50%)rotate(-8deg)}50%{transform:translateY(-50%)rotate(-3deg)}}.case-token{gap:2.5rem}.case-token-compare{max-width:var(--case-prose);flex-direction:column;gap:1.25rem;width:100%;margin-inline:auto;display:flex}.case-token-path{border:1px dashed var(--stroke);background:#fff;border-radius:12px;grid-template-columns:minmax(200px,272px) minmax(0,1fr);gap:14px;padding:18px;transition:transform .25s,box-shadow .25s;display:grid}.case-token-path:hover{transform:translateY(-3px);box-shadow:0 10px 22px #1010100d}.case-token-swatches{border:1px dashed var(--stroke);background:#fff;border-radius:8px;flex-direction:column;justify-content:center;gap:12px;padding:14px 24px;display:flex}.case-token-chip{color:#303030;letter-spacing:-.02em;white-space:nowrap;background:#fff;border:1px solid #b3b3b3;border-radius:4px;align-items:center;gap:4px;width:fit-content;padding:4px 8px 4px 4px;font-size:.875rem;font-weight:500;display:inline-flex}.case-swatch{border-radius:3px;flex-shrink:0;width:22px;height:22px}.case-token-verdict{background:#fdf8dd;border-radius:8px;flex-direction:column;justify-content:center;gap:1rem;padding:18px;display:flex}.case-token-verdict-title{color:var(--black);letter-spacing:-.05em;margin:0;font-size:1.125rem;font-weight:600}.case-token-verdict ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.case-token-verdict li{color:var(--text);letter-spacing:-.05em;align-items:flex-start;gap:10px;font-size:1rem;line-height:1.4;display:flex}.case-token-verdict li img{flex-shrink:0;width:32px;height:32px}.case-token-layers{max-width:var(--case-prose);grid-template-columns:minmax(0,1fr) minmax(260px,322px);align-items:center;gap:1.5rem;width:100%;margin-inline:auto;display:grid}.case-token-layer-cards{flex-direction:column;gap:1.5rem;display:flex}.case-token-layer-card{border:1px dashed var(--stroke);background:#fff;border-radius:12px;flex-direction:column;gap:14px;padding:18px;transition:transform .25s,box-shadow .25s;display:flex}.case-token-layer-card:hover{transform:translateY(-3px);box-shadow:0 8px 18px #1010100d}.case-token-layer-head{border-bottom:1px dashed var(--stroke);color:var(--text);letter-spacing:-.05em;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:14px;font-size:1rem;display:flex}.case-token-anno{color:#303030;background:#fff;border:1px solid #b3b3b3;border-radius:8px;padding:4px 8px;font-size:.875rem;font-weight:500}.case-token-layer-note{background:var(--green);color:var(--black);letter-spacing:-.05em;border-radius:8px;margin:0;padding:12px 8px;font-size:1rem;line-height:1.4}.case-token-sticky{aspect-ratio:322/332;width:100%;transition:transform .3s;position:relative}.case-token-sticky:hover{transform:translateY(-3px)}.case-token-sticky-bg{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.case-token-sticky p{z-index:1;color:var(--black);letter-spacing:-.05em;margin:0;padding:21.7% 14% 18% 18%;font-size:1.125rem;line-height:1.35;position:relative}.case-token-sticky strong{font-weight:600}.case-prose--center{text-align:center;max-width:var(--case-prose)}.case-prose--center p{text-align:center}.case--jop{--case-wide:1080px;--case-prose:800px;--case-gutter:2.5rem;--case-frame-pad:24px;--case-radius:24px;padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:0;overflow:visible}.case--jop .case-block,.case--jop .case-insight-grid-wrap,.case--jop .case-prose--impact{position:relative}.case--jop .case-insight-grid-wrap{width:100%}.case--jop .case-sticker-wrap--bee{z-index:2;width:3.75rem;animation:4.8s ease-in-out infinite case-sticker-sway;top:.35rem;right:-1.1rem}.case--jop .case-sticker-wrap--duck{z-index:2;width:4.125rem;animation:5.2s ease-in-out .4s infinite case-sticker-sway;top:-1.15rem;right:-.35rem}.case--jop .case-sticker-wrap--star{z-index:2;width:4.05rem;animation:4.6s ease-in-out .8s infinite case-sticker-sway;top:-23.5rem;left:-1.85rem}.case--jop .case-sticker-wrap--butterfly{z-index:2;width:3.25rem;animation:5s ease-in-out .2s infinite case-sticker-sway;top:auto;bottom:64.5rem;right:-1.6rem}.case--jop .case-sticker-wrap--rainbow{z-index:2;width:6.875rem;animation:5s ease-in-out infinite case-rainbow-sway;top:-2.75rem;left:-.35rem}.case--jop #overview,.case--jop #research,.case--jop #problem,.case--jop #audience,.case--jop #prioritization,.case--jop #rules,.case--jop #user-flow,.case--jop #exploring,.case--jop #principles,.case--jop #final-screens,.case--jop #impact,.case--jop #learnings{scroll-margin-top:6rem}.case--jop .case-explore{gap:40px}.case--jop .case-explore-head{flex-direction:column;gap:18px;width:100%;display:flex}.case--jop .case-explore-head p{color:#555}.case--jop .case-explore-card{background:#fff;border:1px solid #d7d7d7;border-radius:18px;animation:.6s both case-jop-rise;overflow:hidden}.case--jop .case-explore-card:first-of-type{animation-delay:80ms}.case--jop .case-explore-card:nth-of-type(2){animation-delay:.18s}.case--jop .case-explore-card:last-of-type{border-color:#dfdfdf}.case--jop .case-explore-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #10101014}.case--jop .case-explore-card picture img{border-radius:0}.case--jop .case-callout-title{color:var(--black);letter-spacing:-.05em;margin:0;font-weight:600}.case--jop .case-callout--pink,.case--jop .case-callout--purple{flex-direction:column;gap:12px;display:flex}.case--jop .case-callout-group,.case--jop #research>p{margin-top:24px}.case--jop .case-callout-group--plain{padding-top:0}.case--jop .case-callout__plate--purple{background:#8a38f5;border-color:#8a38f5;top:0}.case--jop .case-callout--purple{background:#e9dafd}.case--jop .case-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;width:100%;display:grid}.case--jop .case-insight-card{border:1px solid var(--stroke);background:#fff;border-radius:8px;justify-content:center;align-items:center;padding:1.5rem 2.5rem;transition:transform .25s,box-shadow .25s,border-color .25s;animation:.55s both case-jop-rise;display:flex}.case--jop .case-insight-card:first-child{animation-delay:50ms}.case--jop .case-insight-card:nth-child(2){animation-delay:.12s}.case--jop .case-insight-card:nth-child(3){animation-delay:.19s}.case--jop .case-insight-card:nth-child(4){animation-delay:.26s}.case--jop .case-insight-card:hover{border-color:#cfcfcf;transform:translateY(-3px);box-shadow:0 10px 22px #10101012}.case--jop .case-insight-card p{color:var(--black);text-align:center;letter-spacing:-.05em;margin:0;font-size:1.125rem;line-height:1.45}.case--jop .case-problem-card{border:1px dashed var(--stroke);background:#fff;border-radius:12px;flex-direction:column;gap:14px;width:100%;padding:18px;transition:transform .25s,box-shadow .25s;animation:.6s both case-jop-rise;display:flex}.case--jop .case-problem-card:hover{transform:translateY(-3px);box-shadow:0 10px 22px #1010100f}.case--jop .case-problem-label{color:var(--text);letter-spacing:-.05em;margin:0;font-size:1rem}.case--jop .case-problem-rule{border:0;border-top:1px dashed var(--stroke);margin:0}.case--jop .case-problem-statement{color:var(--black);letter-spacing:-.05em;background:#fcdcc5;border-radius:8px;margin:0;padding:12px 8px;font-size:1rem;line-height:1.45;animation:1.4s .35s both case-jop-soft-glow}.case--jop .case-audience-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:100%;padding-top:1.25rem;display:grid}.case--jop .case-audience-card{background:#fff;border-radius:8px;flex-direction:column;gap:18px;padding:30px 18px 18px;transition:transform .25s,box-shadow .25s;animation:.55s both case-jop-rise;display:flex;position:relative;box-shadow:4px 4px 5.5px #0000001a}.case--jop .case-audience-card:first-child{animation-delay:60ms}.case--jop .case-audience-card:nth-child(2){animation-delay:.14s}.case--jop .case-audience-card:nth-child(3){animation-delay:.22s}.case--jop .case-audience-card:hover{transform:translateY(-4px);box-shadow:6px 10px 16px #0000001f}.case--jop .case-audience-tape{transform-origin:50%;pointer-events:none;width:120px;line-height:0;animation:5.5s ease-in-out infinite case-jop-tape-sway;position:absolute;top:-15px;left:50%;transform:translate(-50%)}.case--jop .case-audience-tape img{width:100%;height:auto;display:block}.case--jop .case-audience-head{border-radius:8px;flex-direction:column;gap:5px;padding:12px;display:flex}.case--jop .case-audience-card--green .case-audience-head{background:#dcfcd4}.case--jop .case-audience-card--pink .case-audience-head{background:#fde2f8}.case--jop .case-audience-card--yellow .case-audience-head{background:#fcf4cd}.case--jop .case-audience-title,.case--jop .case-audience-detail{color:var(--black);letter-spacing:-.05em;margin:0}.case--jop .case-audience-title{font-size:1.25rem;font-weight:700}.case--jop .case-audience-detail{font-size:1rem}.case--jop .case-audience-body{flex-direction:column;gap:12px;display:flex}.case--jop .case-audience-body p{color:var(--text);letter-spacing:-.05em;margin:0;font-size:1rem;line-height:1.4}.case--jop .case-audience-body strong{font-weight:700}.case--jop .case-phase-track{width:100%;height:25px;position:relative}.case--jop .case-phase-line{pointer-events:none;transform-origin:0;width:100%;height:1.6px;animation:.9s cubic-bezier(.22,1,.36,1) .15s both case-jop-line-draw;display:block;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)scaleX(0)}.case--jop .case-phase-dot{pointer-events:none;width:25px;height:25px;animation:.45s cubic-bezier(.22,1,.36,1) both case-jop-dot-pop;display:block;position:absolute;top:0}.case--jop .case-phase-dot--1{animation-delay:.7s;left:calc(25% - 18.5px)}.case--jop .case-phase-dot--2{animation-delay:.95s;left:calc(75% - 6.5px)}.case--jop .case-phase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;width:100%;display:grid}.case--jop .case-phase-card,.case--jop .case-rules-card{border:1px dashed var(--stroke);background:#fff;border-radius:12px;flex-direction:column;gap:14px;padding:18px;transition:transform .25s,box-shadow .25s,border-color .25s;animation:.55s both case-jop-rise;display:flex}.case--jop .case-phase-card:first-child,.case--jop .case-rules-card:first-child{animation-delay:60ms}.case--jop .case-phase-card:nth-child(2),.case--jop .case-rules-card:nth-child(2){animation-delay:.14s}.case--jop .case-rules-card:nth-child(3){animation-delay:.22s}.case--jop .case-rules-card:nth-child(4){animation-delay:.3s}.case--jop .case-phase-card:hover,.case--jop .case-rules-card:hover{border-color:#cfcfcf;transform:translateY(-3px);box-shadow:0 10px 22px #1010100f}.case--jop .case-phase-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.case--jop .case-phase-badge{color:var(--black);letter-spacing:-.05em;white-space:nowrap;border:1px solid #b3b3b3;border-radius:8px;justify-content:center;align-items:center;padding:4px 8px;font-size:1rem;display:inline-flex}.case--jop .case-phase-title{color:var(--black);letter-spacing:-.05em;text-align:right;margin:0;font-size:1rem;font-weight:600}.case--jop .case-phase-rule{border:0;border-top:1px dashed var(--stroke);margin:0}.case--jop .case-phase-detail{color:var(--black);letter-spacing:-.05em;background:#fcf4cd;border-radius:8px;flex:1;margin:0;padding:12px 8px;font-size:1rem;line-height:1.45}.case--jop .case-rules-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px;width:100%;display:grid;position:relative}.case--jop .case-rules-question{color:var(--black);letter-spacing:-.05em;margin:0;font-size:1rem;font-weight:600;line-height:1.35}.case--jop .case-rules-answer{color:var(--black);letter-spacing:-.05em;background:#cadcf6;border-radius:8px;margin:0;padding:12px 8px;font-size:1rem;line-height:1.45}.case--jop .case-principles{flex-direction:column;gap:18px;width:100%;display:flex}.case--jop .case-principle-card{border:1px dashed var(--stroke);background:#fff;border-radius:12px;flex-direction:column;gap:14px;padding:18px;transition:transform .25s,box-shadow .25s,border-color .25s;animation:.55s both case-jop-rise;display:flex}.case--jop .case-principle-card:first-child{animation-delay:60ms}.case--jop .case-principle-card:nth-child(2){animation-delay:.14s}.case--jop .case-principle-card:nth-child(3){animation-delay:.22s}.case--jop .case-principle-card:hover{border-color:#cfcfcf;transform:translateY(-3px);box-shadow:0 10px 22px #1010100f}.case--jop .case-principle-title{color:var(--black);letter-spacing:-.05em;margin:0;font-size:1rem;font-weight:600;line-height:1.35}.case--jop .case-principle-body{color:var(--black);letter-spacing:-.05em;background:#dcfcd4;border-radius:8px;margin:0;padding:12px 8px;font-size:1rem;line-height:1.45}.case--jop .case-final{gap:40px}.case--jop .case-final-head{flex-direction:column;gap:18px;width:100%;display:flex}.case--jop .case-final-head p{color:#555}.case--jop .case-final-phase{flex-direction:column;gap:40px;width:100%;display:flex}.case--jop .case-final-copy{flex-direction:column;gap:18px;width:100%;display:flex}.case--jop .case-final-heading{flex-direction:column;gap:8px;width:100%;display:flex}.case--jop .case-final-kicker{margin:0}.case--jop .case-final-title{color:var(--black);letter-spacing:-.05em;margin:0;font-size:1.5rem;font-weight:500;line-height:1.25}.case--jop .case-final-stage{width:100%;max-width:var(--case-prose);background-image:linear-gradient(#fae997 0%,#fbc3f1 100%),linear-gradient(123.03deg,#ffccf1 0%,#ffefb8 46.15%,#b8e5ff 98.56%);border:none;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:32px;margin-inline:auto;padding:50px 50px 40px;transition:transform .3s,box-shadow .3s;animation:.65s both case-jop-rise;display:flex;position:relative;overflow:visible}.case--jop .case-final-phase .case-final-stage{animation-delay:80ms}.case--jop .case-final-phase+.case-final-phase .case-final-stage{animation-delay:.18s}.case--jop .case-final-stage:hover{transform:translateY(-2px);box-shadow:0 16px 32px #10101014}.case--jop .case-final-slider{width:100%;max-width:700px}.case--jop .case-final-video{aspect-ratio:700/443;object-fit:cover;pointer-events:none;background:#f5f5f5;border-radius:8px;width:100%;height:auto;display:block;box-shadow:1.515px 3.03px 7.574px #00000026}.case--jop .case-final-video::-webkit-media-controls{display:none!important}.case--jop .case-final-nav{z-index:2;border:1px solid var(--purple-strong);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background .2s,border-color .2s,opacity .2s,transform .2s;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:2px 2px 12px #0000001f}.case--jop .case-final-nav--prev{background:#e1ccfa;left:-16px}.case--jop .case-final-nav--next{background:var(--purple-strong);right:-16px}.case--jop .case-final-nav img{width:20px;height:20px;display:block}.case--jop .case-final-nav-icon--next{transform:scaleX(-1)}.case--jop .case-final-nav--prev:hover:not(:disabled){background:#d4b6f8;transform:translateY(-50%)scale(1.05)}.case--jop .case-final-nav--next:hover:not(:disabled){background:#7a2ee0;transform:translateY(-50%)scale(1.05)}.case--jop .case-final-nav:disabled{opacity:.35;cursor:not-allowed}.case--jop .case-final-caption{color:var(--black);letter-spacing:-.05em;text-align:center;margin:0;font-size:1rem;line-height:1.35}.case--jop .case-learn-card--wide{grid-column:1/-1}.case--jop .case-hero-media{animation:.75s cubic-bezier(.22,1,.36,1) .12s both case-jop-media-in}.case--jop .case-meta-card{animation:.5s both case-jop-rise}.case--jop .case-meta-card:first-child{animation-delay:80ms}.case--jop .case-meta-card:nth-child(2){animation-delay:.16s}.case--jop .case-meta-card:nth-child(3){animation-delay:.24s}.case--jop .case-callout-group{animation:.55s both case-jop-rise}.case--jop .case-figure--framed{animation:.6s both case-jop-rise}.case--jop #research .case-figure--framed{animation-delay:60ms}.case--jop #user-flow .case-figure--framed{animation-delay:80ms}@keyframes case-jop-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes case-jop-media-in{0%{opacity:0;transform:translateY(20px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes case-jop-line-draw{0%{opacity:.35;transform:translateY(-50%)scaleX(0)}to{opacity:1;transform:translateY(-50%)scaleX(1)}}@keyframes case-jop-dot-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes case-jop-tape-sway{0%,to{transform:translate(-50%)rotate(-1.5deg)}50%{transform:translate(-50%)rotate(2deg)}}@keyframes case-jop-soft-glow{0%{box-shadow:inset 0 0 #fcdcc500}40%{box-shadow:inset 0 0 0 6px #fcb88c59}to{box-shadow:inset 0 0 #fcdcc500}}@media (width<=720px){.case--jop .case-final-stage{gap:1.25rem;padding:1.75rem 1.25rem 1.5rem}.case--jop .case-final-nav--prev{left:-12px}.case--jop .case-final-nav--next{right:-12px}.case--jop .case-insight-grid,.case--jop .case-phase-grid,.case--jop .case-rules-grid,.case--jop .case-audience-grid{grid-template-columns:1fr}.case--jop .case-phase-dot--1{left:12px}.case--jop .case-phase-dot--2{left:auto;right:12px}.case--jop .case-learn-card--wide{grid-column:auto}.case--jop .case-sticker-wrap--bee,.case--jop .case-sticker-wrap--duck,.case--jop .case-sticker-wrap--star,.case--jop .case-sticker-wrap--butterfly,.case--jop .case-sticker-wrap--rainbow{width:3.25rem}.case--jop .case-sticker-wrap--bee,.case--jop .case-sticker-wrap--duck,.case--jop .case-sticker-wrap--butterfly{right:.25rem}.case--jop .case-sticker-wrap--star,.case--jop .case-sticker-wrap--rainbow{left:.25rem}.case--jop .case-sticker-wrap--rainbow{width:4.5rem;top:-1.75rem}}@media (prefers-reduced-motion:reduce){.case--jop .case-hero-media,.case--jop .case-meta-card,.case--jop .case-callout-group,.case--jop .case-figure--framed,.case--jop .case-insight-card,.case--jop .case-problem-card,.case--jop .case-problem-statement,.case--jop .case-audience-card,.case--jop .case-audience-tape,.case--jop .case-phase-line,.case--jop .case-phase-dot,.case--jop .case-phase-card,.case--jop .case-rules-card,.case--jop .case-explore-card,.case--jop .case-principle-card,.case--jop .case-final-stage{animation:none!important}.case--jop .case-phase-line{transform:translateY(-50%)scaleX(1)}}.case--ppn{--case-wide:1080px;--case-prose:800px;--case-gutter:2.5rem;--case-frame-pad:24px;--case-radius:24px;padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:0;overflow:visible}.case--ppn .case-block{position:relative}.case--ppn #overview,.case--ppn #research,.case--ppn #competitor,.case--ppn #problem,.case--ppn #personas,.case--ppn #architecture,.case--ppn #blueprint,.case--ppn #business-model,.case--ppn #final-screens,.case--ppn #learnings{scroll-margin-top:6rem}.case--ppn .case-hero{gap:40px;animation:.7s both case-ppn-rise}.case--ppn .case-hero-copy{gap:24px;max-width:860px}.case--ppn .case-hero-copy h1{letter-spacing:-.05em;flex-direction:column;gap:9px;font-size:clamp(2rem,4vw,3rem);line-height:1.15;display:flex}.case--ppn .case-hero-line{display:block}.case--ppn .case-hero-media{aspect-ratio:1080/600;background:linear-gradient(#fac197 0%,#c6fab9 100%);border-radius:24px;transition:transform .35s;animation:.75s cubic-bezier(.22,1,.36,1) .12s both case-ppn-media-in;overflow:hidden}.case--ppn .case-hero-media:hover{transform:translateY(-4px)}.case--ppn .case-hero-media img{object-fit:cover;width:100%;height:100%}.case--ppn .case-body{gap:60px;margin-top:60px}.case--ppn .case-overview{align-items:start;gap:52px}.case--ppn .case-research{width:100%;max-width:var(--case-prose);flex-direction:column;gap:18px;margin-inline:auto;display:flex}.case--ppn .case-research>h2{margin:0}.case--ppn .case-research>p{color:#555;letter-spacing:-.05em;margin:0;font-size:1.125rem;line-height:1.45}.case--ppn .case-callout-title{color:var(--black);letter-spacing:-.05em;margin:0;font-weight:600}.case--ppn .case-callout-group--plain{margin-top:0;padding-top:0}.case--ppn .case-callout-group+.case-callout-group{margin-top:18px}.case--ppn .case-callout{flex-direction:column;gap:12px;padding:1.375rem 1.5rem;display:flex}.case--ppn .case-callout--pink{background:#feecfa}.case--ppn .case-callout--yellow{z-index:1;box-shadow:none;background:#fcf4cd}.case--ppn .case-callout__plate--yellow{background:#fcd517;border-color:#fcd517}.case--ppn .case-callout ul{color:var(--black);letter-spacing:-.05em;margin:0;padding-left:1.35rem;font-size:1.125rem;line-height:1.45}.case--ppn .case-callout ul li+li{margin-top:12px}.case--ppn .case-callout--yellow>p:not(.case-callout-title){color:var(--black);letter-spacing:-.05em;margin:0;font-size:1.125rem;line-height:1.45}.case--ppn .case-callout--pink>*,.case--ppn .case-callout--yellow>*{z-index:1;position:relative}.case--ppn .case-section-head{flex-direction:column;gap:18px;width:100%;display:flex}.case--ppn .case-section-head h2,.case--ppn .case-problem>h2,.case--ppn .case-final-head h2,.case--ppn .case-learnings>h2{margin:0}.case--ppn .case-section-head p,.case--ppn .case-problem>p,.case--ppn .case-final-head p{color:#555;letter-spacing:-.05em;margin:0;font-size:1.125rem;line-height:1.45}.case--ppn .case-final-head p{font-size:1rem}.case--ppn .case-media-section,.case--ppn .case-problem,.case--ppn .case-business,.case--ppn .case-final{width:100%;max-width:var(--case-prose);flex-direction:column;gap:40px;margin-inline:auto;display:flex}.case--ppn .case-framed-stack{flex-direction:column;gap:24px;width:100%;display:flex}.case--ppn .case-figure--framed{border-radius:18px;max-width:100%}.case--ppn .case-figure--framed picture img.case-media--contain{object-fit:contain;background:#fff}.case--ppn .case-problem{gap:18px}.case--ppn .case-problem-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:100%;display:grid}.case--ppn .case-problem-card{border:1px dashed var(--stroke);background:#fff;border-radius:12px;flex-direction:column;gap:14px;width:100%;height:100%;padding:18px;display:flex}.case--ppn .case-problem-label{color:#555;letter-spacing:-.05em;margin:0;font-size:1rem;line-height:1.35}.case--ppn .case-problem-rule{border:0;border-top:1px dashed var(--stroke);margin:0}.case--ppn .case-problem-grid .case-problem-body{flex:auto;min-height:0}.case--ppn .case-problem-body{color:var(--black);letter-spacing:-.05em;border-radius:8px;margin:0;padding:12px 8px;font-size:1rem;line-height:1.45}.case--ppn .case-problem-body--green{background:#dcfcd4}.case--ppn .case-problem-body--yellow{background:#fcf4cd}.case--ppn .case-problem-body--pink{background:#fde2f8}.case--ppn .case-problem-body--orange{background:#fcdcc5}.case--ppn .case-problem-question{color:var(--black);letter-spacing:-.05em;margin:.5rem 0 0;font-size:1.5rem;font-weight:600;line-height:1.3}.case--ppn .case-business-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:100%;display:grid}.case--ppn .case-business-card{background:#fff;border-radius:8px;flex-direction:column;gap:18px;padding:30px 18px 18px;display:flex;position:relative;box-shadow:4px 4px 5.5px #0000001a}.case--ppn .case-business-chip{border-radius:8px;flex-direction:column;gap:5px;padding:12px;display:flex}.case--ppn .case-business-chip--green{background:#dcfcd4}.case--ppn .case-business-chip--pink{background:#fde2f8}.case--ppn .case-business-chip-title{color:var(--black);letter-spacing:-.05em;margin:0;font-size:1.25rem;font-weight:700}.case--ppn .case-business-chip-sub,.case--ppn .case-business-card>p{color:#555;letter-spacing:-.05em;margin:0;font-size:1rem;line-height:1.45}.case--ppn .case-final{gap:40px}.case--ppn .case-final-head{flex-direction:column;gap:18px;width:100%;display:flex}.case--ppn .case-final-stage{width:100%;max-width:var(--case-prose);background:linear-gradient(123.03deg,#ffccf1 0%,#ffefb8 46.15%,#b8e5ff 98.56%);border:none;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:32px;margin-inline:auto;padding:50px 50px 40px;display:flex;position:relative;overflow:visible}.case--ppn .case-final-slider{width:100%;max-width:700px}.case--ppn .case-final-video{aspect-ratio:1080/747;object-fit:contain;pointer-events:none;background:#f5f5f5;border-radius:8px;width:100%;height:auto;display:block;box-shadow:1.515px 3.03px 7.574px #00000026}.case--ppn .case-final-video::-webkit-media-controls{display:none!important}.case--ppn .case-final-nav{z-index:2;border:1px solid var(--purple-strong);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:2px 2px 12px #0000001f}.case--ppn .case-final-nav--prev{background:#e1ccfa;left:-16px}.case--ppn .case-final-nav--next{background:var(--purple-strong);right:-16px}.case--ppn .case-final-nav img{width:20px;height:20px;display:block}.case--ppn .case-final-nav-icon--next{transform:scaleX(-1)}.case--ppn .case-final-nav:disabled{opacity:.35;cursor:not-allowed}.case--ppn .case-final-caption{color:var(--black);letter-spacing:-.05em;text-align:center;margin:0;font-size:1rem;line-height:1.35}.case--ppn .case-learnings{max-width:var(--case-prose);flex-direction:column;gap:18px;width:100%;margin-inline:auto;display:flex}.case--ppn .case-learn-grid-wrap{width:100%;position:relative}.case--ppn .case-learn-grid{gap:24px}.case--ppn .case-sticker-wrap--duck{z-index:2;width:4.5rem;top:-.5rem;right:-1.25rem}.case--ppn .case-sticker-wrap--star{z-index:2;width:4.25rem;top:-25.25rem;right:-1.5rem}.case--ppn .case-sticker-wrap--smiley{z-index:2;width:4.25rem;top:auto;bottom:1rem;right:-1.25rem}.case--ppn .case-sticker-wrap--bee{z-index:2;width:4rem;top:9rem;left:22.75rem;transform:rotate(-24deg)}.case--ppn .case-sticker-wrap--tape{z-index:2;width:120px;top:-15px;left:50%;transform:translate(-50%)}.case--ppn .case-sticker-wrap--learn{z-index:2;width:56px;top:49%;left:47%;transform:translate(-50%,-50%)}.case--ppn .case-sticker-wrap--learn .case-sticker{width:56px;height:auto}.case--ppn .case-body>*{animation:.65s both case-ppn-rise}.case--ppn .case-body>:first-child{animation-delay:50ms}.case--ppn .case-body>:nth-child(2){animation-delay:.1s}.case--ppn .case-body>:nth-child(3){animation-delay:.15s}.case--ppn .case-body>:nth-child(4){animation-delay:.18s}.case--ppn .case-body>:nth-child(5){animation-delay:.2s}.case--ppn .case-body>:nth-child(n+6){animation-delay:.22s}.case--ppn .case-meta-card{transition:transform .25s,box-shadow .25s;animation:.5s both case-ppn-rise}.case--ppn .case-meta-card:first-child{animation-delay:80ms}.case--ppn .case-meta-card:nth-child(2){animation-delay:.16s}.case--ppn .case-meta-card:nth-child(3){animation-delay:.24s}.case--ppn .case-meta-card:hover{transform:translateY(-3px);box-shadow:0 10px 22px #10101012}.case--ppn .case-callout-group{animation:.55s both case-ppn-rise}.case--ppn .case-figure--framed{transition:transform .3s,box-shadow .3s;animation:.6s both case-ppn-rise}.case--ppn .case-figure--framed:hover{transform:translateY(-4px);box-shadow:0 14px 28px #10101014}.case--ppn .case-problem-card{transition:transform .25s,box-shadow .25s;animation:.55s both case-ppn-rise}.case--ppn .case-problem-grid .case-problem-card:first-child{animation-delay:60ms}.case--ppn .case-problem-grid .case-problem-card:nth-child(2){animation-delay:.14s}.case--ppn .case-problem-grid .case-problem-card:nth-child(3){animation-delay:.22s}.case--ppn .case-problem-card:hover{transform:translateY(-3px);box-shadow:0 10px 22px #10101012}.case--ppn .case-business-card{transition:transform .25s,box-shadow .25s;animation:.55s both case-ppn-rise}.case--ppn .case-business-card:first-child{animation-delay:80ms}.case--ppn .case-business-card:nth-child(2){animation-delay:.16s}.case--ppn .case-business-card:hover{transform:translateY(-3px);box-shadow:4px 8px 16px #0000001f}.case--ppn .case-final-stage{transition:transform .3s,box-shadow .3s;animation:.65s both case-ppn-rise}.case--ppn .case-final-stage:hover{transform:translateY(-2px);box-shadow:0 16px 32px #10101014}.case--ppn .case-learn-card{transition:transform .25s,box-shadow .25s;animation:.55s both case-ppn-rise}.case--ppn .case-learn-card:first-child{animation-delay:60ms}.case--ppn .case-learn-card:nth-child(2){animation-delay:.14s}.case--ppn .case-learn-card:nth-child(3){animation-delay:.22s}.case--ppn .case-learn-card:nth-child(4){animation-delay:.3s}.case--ppn .case-learn-card:hover{transform:translateY(-3px);box-shadow:0 10px 22px #10101012}.case--ppn .case-sticker-wrap--duck .case-sticker,.case--ppn .case-sticker-wrap--star .case-sticker,.case--ppn .case-sticker-wrap--smiley .case-sticker,.case--ppn .case-sticker-wrap--bee .case-sticker,.case--ppn .case-sticker-wrap--learn .case-sticker{animation:4.8s ease-in-out infinite case-sticker-sway}.case--ppn .case-sticker-wrap--star .case-sticker{animation-delay:.35s}.case--ppn .case-sticker-wrap--smiley .case-sticker{animation-delay:.7s}.case--ppn .case-sticker-wrap--bee .case-sticker{animation-delay:.2s}.case--ppn .case-sticker-wrap--tape .case-sticker{animation:5.5s ease-in-out infinite case-ppn-tape-sway}@keyframes case-ppn-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes case-ppn-media-in{0%{opacity:0;transform:translateY(20px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes case-ppn-tape-sway{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(2deg)}}@media (width<=860px){.case--ppn .case-overview{gap:1.5rem}.case--ppn .case-callout__plate,.case--ppn .case-callout__plate--yellow{transform:rotate(1deg)}.case--ppn .case-problem-grid,.case--ppn .case-business-grid,.case--ppn .case-learn-grid{grid-template-columns:1fr}.case--ppn .case-final-stage{gap:1.25rem;padding:1.75rem 1.25rem 1.5rem}.case--ppn .case-final-nav--prev{left:-12px}.case--ppn .case-final-nav--next{right:-12px}.case--ppn .case-sticker-wrap--duck,.case--ppn .case-sticker-wrap--star,.case--ppn .case-sticker-wrap--smiley,.case--ppn .case-sticker-wrap--bee{display:none}}@media (prefers-reduced-motion:reduce){.case--ppn .case-hero,.case--ppn .case-hero-media,.case--ppn .case-body>*,.case--ppn .case-meta-card,.case--ppn .case-callout-group,.case--ppn .case-figure--framed,.case--ppn .case-problem-card,.case--ppn .case-business-card,.case--ppn .case-final-stage,.case--ppn .case-learn-card,.case--ppn .case-sticker,.case--ppn .case-sticker-wrap--tape .case-sticker{animation:none!important}.case--ppn .case-hero-media,.case--ppn .case-meta-card,.case--ppn .case-figure--framed,.case--ppn .case-problem-card,.case--ppn .case-business-card,.case--ppn .case-final-stage,.case--ppn .case-learn-card,.case--ppn .case-callout,.case--ppn .case-callout__plate{transition:none}}.stack-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,4vw,3.75rem);max-width:980px;margin:0 auto;display:grid;position:relative;overflow:visible}.stack-hint{z-index:4;pointer-events:none;margin:0;position:absolute;top:-3.65rem;left:-3.15rem}.stack-hint-label{color:#1863ef;font-family:var(--font-serif);letter-spacing:.02em;white-space:nowrap;transform-origin:0;margin:0;font-size:clamp(1.15rem,2vw,1.75rem);font-weight:500;line-height:1.2;transform:rotate(-12deg)}.stack-hint-arrow{width:3.1rem;height:auto;display:block;position:absolute;top:1.35rem;left:6.5rem;transform:rotate(-155deg)}.stack-card{border:1px solid var(--stroke);background:#fff;border-radius:24px;flex-direction:column;justify-content:flex-end;min-height:460px;padding:14px;display:flex;position:relative;overflow:hidden}.stack-card--toolkit{cursor:pointer;z-index:1;outline:none;overflow:visible}.stack-card--toolkit:is(:hover,:focus-within){z-index:3}.stack-card--toolkit:focus-visible{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--purple-strong)}.stack-card--toolkit .tool-scatter{overflow:visible}.stack-card--design{cursor:pointer;z-index:1;outline:none;overflow:visible}.stack-card--design:is(:hover,:focus-within){z-index:3}.stack-card--design:focus-visible{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--purple-strong)}.stack-card--design .skill-scatter{overflow:visible}.tool-scatter,.skill-scatter{z-index:0;pointer-events:none;position:absolute;inset:0}.tool-icon{object-fit:cover;background:#fff;border-radius:27px;width:100px;height:100px;transition:left .55s cubic-bezier(.22,1,.36,1),top .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);position:absolute;box-shadow:0 8px 18px #00000014}.tool-icon img{z-index:1;object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block;position:relative}.tool-plate{z-index:0;border-radius:27px;width:100px;height:100px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 18px #00000014}.tool-plate--white{background:#fff;border:1px solid #d3d3d3}.tool-plate--peach{background:#fff4eb}.stack-card--toolkit .tool-figma{background:#000;top:168px;left:126px;transform:rotate(0)}.stack-card--toolkit .tool-miro{top:165px;left:229px;transform:rotate(0)}.stack-card--toolkit .tool-ai{top:177px;left:306px;transform:rotate(15.71deg)}.stack-card--toolkit .tool-xd{width:103px;height:100px;top:184px;left:13px;transform:rotate(-17.41deg)}.stack-card--toolkit .tool-framer{border-radius:31px;top:214px;left:59px;transform:rotate(11.55deg)}.stack-card--toolkit .tool-loom{top:203px;left:153px;transform:rotate(-2.39deg)}.stack-card--toolkit .tool-notion{border-radius:15px;top:215px;left:304px;transform:rotate(0)}.stack-card--toolkit .tool-github{width:83px;height:83px;box-shadow:none;background:0 0;top:234px;left:151px;transform:rotate(12.58deg)}.stack-card--toolkit .tool-analytics{width:76px;height:76px;box-shadow:none;background:0 0;border-radius:27px;top:calc(50% + 74px);left:calc(50% + 79px);transform:translate(-50%,-50%)rotate(0)}.stack-card--toolkit:is(:hover,:focus-within) .tool-figma{top:-24px;left:118px;transform:rotate(-12.8deg)}.stack-card--toolkit:is(:hover,:focus-within) .tool-miro{top:-24px;left:238px;transform:rotate(12.63deg)}.stack-card--toolkit:is(:hover,:focus-within) .tool-ai{top:79px;left:330px;transform:rotate(15.71deg)}.stack-card--toolkit:is(:hover,:focus-within) .tool-xd{top:36px;left:-12px;transform:rotate(-24.86deg)}.stack-card--toolkit:is(:hover,:focus-within) .tool-framer{top:79px;left:103px;transform:rotate(11.55deg)}.stack-card--toolkit:is(:hover,:focus-within) .tool-loom{top:167px;left:184px;transform:rotate(-2.39deg)}.stack-card--toolkit:is(:hover,:focus-within) .tool-notion{top:79px;left:221px;transform:rotate(0)}.stack-card--toolkit:is(:hover,:focus-within) .tool-github{top:163px;left:41px;transform:rotate(-7.95deg)}.stack-card--toolkit:is(:hover,:focus-within) .tool-analytics{top:calc(50% + 23px);left:calc(50% + 108px);transform:translate(-50%,-50%)rotate(11.69deg)}.skill-chip{letter-spacing:-.05em;white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;padding:8px 12px;font-size:1.125rem;font-weight:500;transition:left .55s cubic-bezier(.22,1,.36,1),top .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);display:inline-flex;position:absolute;box-shadow:0 4px 10px #0000000d}.stack-card--design .skill-product-thinking{top:171px;left:24px;transform:rotate(-26.59deg)}.stack-card--design .skill-ux-research{top:195px;left:108px;transform:rotate(5.06deg)}.stack-card--design .skill-user-flows{top:199px;left:207px;transform:rotate(-22.62deg)}.stack-card--design .skill-info-arch{top:223px;left:14px;transform:rotate(5.06deg)}.stack-card--design .skill-wireframing{top:221px;left:284px;transform:rotate(-11.9deg)}.stack-card--design .skill-prototyping{top:216px;left:55px;transform:rotate(-15.61deg)}.stack-card--design .skill-interaction{top:211px;left:163px;transform:rotate(22.11deg)}.stack-card--design .skill-design-systems{top:241px;left:277px;transform:rotate(5.06deg)}.stack-card--design .skill-usability{top:262px;left:349px;transform:rotate(16.01deg)}.stack-card--design .skill-design-strategy{top:232px;left:163px;transform:rotate(-16.77deg)}.stack-card--design .skill-collaboration{top:263px;left:250px;transform:rotate(5.06deg)}.stack-card--design .skill-problem-solving{top:229px;left:35px;transform:rotate(-23.63deg)}.stack-card--design .skill-accessibility{top:237px;left:135px;transform:rotate(5.06deg)}.stack-card--design .skill-vibe-coding{top:248px;left:62px;transform:rotate(-38.3deg)}.stack-card--design .skill-conversational-ux{top:261px;left:126px;transform:rotate(5.06deg)}.stack-card--design .skill-ai-assisted{top:279px;left:179px;transform:rotate(5.06deg)}.stack-card--design .skill-journey-mapping{top:273px;left:272px;transform:rotate(-12.49deg)}.stack-card--design .skill-more{top:312px;left:327px;transform:rotate(5.06deg)}.stack-card--design:is(:hover,:focus-within) .skill-product-thinking{top:-41px;left:5px;transform:rotate(-26.59deg)}.stack-card--design:is(:hover,:focus-within) .skill-ux-research{top:-52px;left:146px;transform:rotate(-9.71deg)}.stack-card--design:is(:hover,:focus-within) .skill-user-flows{top:29px;left:173px;transform:rotate(-9.42deg)}.stack-card--design:is(:hover,:focus-within) .skill-info-arch{top:17px;left:-27px;transform:rotate(-19.48deg)}.stack-card--design:is(:hover,:focus-within) .skill-wireframing{top:80px;left:357px;transform:rotate(12deg)}.stack-card--design:is(:hover,:focus-within) .skill-prototyping{top:95px;left:-1px;transform:rotate(-8.54deg)}.stack-card--design:is(:hover,:focus-within) .skill-interaction{top:-17px;left:267px;transform:rotate(14.65deg)}.stack-card--design:is(:hover,:focus-within) .skill-design-systems{top:23px;left:316px;transform:rotate(-13.58deg)}.stack-card--design:is(:hover,:focus-within) .skill-usability{top:129px;left:369px;transform:rotate(-7.27deg)}.stack-card--design:is(:hover,:focus-within) .skill-design-strategy{top:85px;left:111px;transform:rotate(11.11deg)}.stack-card--design:is(:hover,:focus-within) .skill-collaboration{top:81px;left:235px;transform:rotate(5.06deg)}.stack-card--design:is(:hover,:focus-within) .skill-problem-solving{top:138px;left:-16px;transform:rotate(-23.63deg)}.stack-card--design:is(:hover,:focus-within) .skill-accessibility{top:133px;left:122px;transform:rotate(22deg)}.stack-card--design:is(:hover,:focus-within) .skill-vibe-coding{top:168px;left:50px;transform:rotate(-38.3deg)}.stack-card--design:is(:hover,:focus-within) .skill-conversational-ux{top:211px;left:153px;transform:rotate(5.06deg)}.stack-card--design:is(:hover,:focus-within) .skill-ai-assisted{top:237px;left:247px;transform:rotate(-13.55deg)}.stack-card--design:is(:hover,:focus-within) .skill-journey-mapping{top:145px;left:229px;transform:rotate(1deg)}.stack-card--design:is(:hover,:focus-within) .skill-more{top:185px;left:312px;transform:rotate(-14.53deg)}.folder{z-index:2;min-height:178px;position:relative}.folder-shape{object-fit:fill;width:100%;height:178px}.folder-copy{flex-direction:column;gap:18px;display:flex;position:absolute;inset:24px 24px auto}.folder-title{color:var(--black);font-family:var(--font-sans);letter-spacing:-.04em;margin:0;font-size:2rem;font-style:normal;font-weight:700;line-height:1}.folder-rule{border:none;border-top:1px solid var(--black);opacity:.35;margin:0}.folder-body{color:var(--text);letter-spacing:-.05em;margin:0;font-size:1.125rem;line-height:1.4}@media (width<=1100px){.stack-hint,.stack-hint-arrow{display:none}.stack-card--toolkit .tool-xd,.stack-card--toolkit .tool-figma,.stack-card--toolkit .tool-miro,.stack-card--toolkit .tool-notion,.stack-card--toolkit .tool-ai,.stack-card--toolkit .tool-github,.stack-card--toolkit .tool-framer,.stack-card--toolkit .tool-loom,.stack-card--toolkit .tool-analytics{width:72px;height:72px;top:auto;left:auto;transform:none}.stack-card--toolkit .tool-scatter{flex-wrap:wrap;place-content:center;gap:8px;display:flex;inset:16px 16px 190px}.stack-card--toolkit .tool-icon{position:relative}.stack-card--toolkit .tool-plate{width:72px;height:72px}.stack-card--toolkit:is(:hover,:focus-within) .tool-icon{top:auto;left:auto;transform:none}.stack-card--design .skill-chip{position:relative;top:auto!important;left:auto!important;transform:none!important}.stack-card--design .skill-scatter{flex-wrap:wrap;place-content:center;gap:.4rem .25rem;display:flex;inset:16px 16px 190px}}.about{flex-direction:column;align-items:center;margin-top:clamp(3rem,5.5vw,5.25rem);display:flex}.about-intro{text-align:center;width:min(100%,42.625rem);animation:.8s both rise}.about-intro h1{flex-direction:column;align-items:center;margin:0;font-size:clamp(2.25rem,5vw,4.375rem);font-weight:700;line-height:1.05;display:flex}.about-line{width:100%;display:block}.about-line.sans{letter-spacing:-.05em;margin-bottom:-5px}.about-line--split{flex-wrap:wrap;justify-content:center;align-items:center;gap:.2em .2rem;width:auto;display:inline-flex}.about-line--split .sans{letter-spacing:-.05em}.about-line--split .serif{font-family:var(--font-serif);letter-spacing:.02em;width:2.95em;font-weight:400}.about-stage{width:min(100%,41.1875rem);margin-top:clamp(4rem,7vw,6.75rem);position:relative}.about-hint{z-index:2;color:#1863ef;font-family:var(--font-serif);letter-spacing:.02em;text-align:center;white-space:nowrap;pointer-events:none;margin:0;font-size:clamp(1.1rem,2vw,1.75rem);font-weight:500;line-height:1.285;transition:opacity .55s;position:absolute;top:-1.6rem;left:clamp(-1rem,-8vw,-4.5rem);transform:rotate(-5.13deg)}.about-hint-arrow{z-index:2;pointer-events:none;width:3.1rem;height:auto;transition:opacity .55s;position:absolute;top:.1rem;left:clamp(4.5rem,18vw,8.5rem);transform:rotate(-154.77deg)}:is(.about-stage:has(.about-letter--open) .about-hint,.about-stage:has(.about-letter--rising) .about-hint,.about-stage:has(.about-letter--retracting) .about-hint,.about-stage:has(.about-letter--open) .about-hint-arrow,.about-stage:has(.about-letter--rising) .about-hint-arrow,.about-stage:has(.about-letter--retracting) .about-hint-arrow){opacity:0}.about-letter{aspect-ratio:659/652;width:100%;margin:0 auto;animation:.85s .1s both rise;display:block;position:relative;overflow:visible}.about-letter-back,.about-letter-front,.about-letter-sheet,.about-letter-seal,.about-letter-stamp{pointer-events:none;position:absolute}.about-letter-back{z-index:1;width:100%;height:99.23%;top:0;left:0}.about-letter-back img,.about-letter-front img{object-fit:fill;width:100%;height:100%}.about-letter-sheet{z-index:2;will-change:top;width:89.53%;height:79.75%;transition:top .72s cubic-bezier(.45,.05,.25,1),filter .55s;top:8.44%;left:5.31%}.about-letter--rising .about-letter-sheet{z-index:2;transition-duration:.72s;transition-timing-function:cubic-bezier(.33,.1,.2,1);top:-39.88%}.about-letter--open .about-letter-sheet{z-index:5;filter:drop-shadow(0 10px 18px #0000001f);transition-duration:.85s;transition-timing-function:cubic-bezier(.22,.61,.36,1);top:6.44%}.about-letter--retracting .about-letter-sheet{z-index:5;filter:drop-shadow(0 10px 18px #0000001a);transition-duration:.64s;transition-timing-function:cubic-bezier(.4,0,.2,1);top:-39.88%}.about-letter-paper{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.about-letter-paper img{transform-origin:50%;width:88.5%;max-width:none;height:113.3%;transform:rotate(-90deg)}.about-letter-copy{z-index:1;text-align:left;flex-direction:column;align-items:flex-start;gap:1.7rem;width:78.5%;display:flex;position:absolute;top:12.5%;left:10.85%}.about-letter-body{color:var(--text);letter-spacing:-.05em;flex-direction:column;gap:1em;font-size:clamp(.8rem,1.35vw,1.125rem);line-height:1.45;display:flex}.about-letter-body p{margin:0}.about-letter-sign{align-items:center;gap:8px;display:flex}.about-letter-avatar{object-fit:cover;border-radius:4.56px;width:clamp(1.75rem,3vw,2.375rem);height:clamp(1.75rem,3vw,2.375rem)}.about-letter-name{font-family:var(--font-serif);letter-spacing:.02em;white-space:nowrap;font-size:clamp(1.05rem,1.9vw,1.5rem)}.about-letter-front{z-index:3;width:100%;height:63.8%;top:36.2%;left:0}.about-letter-front img{object-fit:fill;width:103%;max-width:none;height:103.5%;margin:-1.3% 0 0 -1.5%}.about-letter-seal{z-index:4;width:18.5%;top:59%;left:41.1%}.about-letter-seal img{object-fit:contain;width:100%;height:auto}.about-letter-stamp{z-index:4;justify-content:center;align-items:center;width:27.15%;height:27.15%;display:flex;top:76.7%;left:66.8%}.about-letter-stamp-inner{width:85.2%;height:84.7%;position:relative;overflow:hidden;transform:rotate(11.36deg);box-shadow:2px 7px 4px #00000040}.about-letter-stamp-inner img{object-fit:cover;width:133.69%;max-width:none;height:135.87%;position:absolute;top:-17.66%;left:-16.84%}.road-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,3vw,2.5rem);display:grid}.education{aspect-ratio:528/629;width:min(100%,528px);margin:0 auto;position:relative}.education-paper{object-fit:cover;filter:drop-shadow(0 4px 23px #00000026);width:100%;height:100%;display:block}.education-sticker{z-index:2;pointer-events:none;filter:drop-shadow(0 6px 10px #0000001f);animation:5s ease-in-out infinite float;position:absolute}.education-sticker--bear{width:18.7%;animation-duration:4.5s;top:2.7%;left:-6.6%;transform:rotate(-15deg)}.education-sticker--star{width:20.5%;animation-duration:5.5s;animation-delay:.7s;top:80.4%;left:84.7%}.education-list{z-index:1;flex-direction:column;gap:clamp(2rem,5.5vw,3.625rem);width:74.4%;display:flex;position:absolute;top:16.7%;left:15.9%}.education-entry{flex-direction:column;gap:8px;display:flex}.education-school{letter-spacing:-.05em;margin:0;font-size:clamp(1.05rem,2vw,1.5rem);font-weight:500;line-height:1.25}.education-detail{font-family:var(--font-serif);color:var(--purple-strong);letter-spacing:.02em;margin:0;font-size:clamp(1.05rem,2vw,1.5rem);line-height:1.25}.education-period{color:var(--text);letter-spacing:-.05em;margin:0;font-size:clamp(.9rem,1.4vw,1rem)}.experience-list{flex-direction:column;gap:20px;display:flex}.job{border:1px dashed var(--stroke);background:#fff;border-radius:12px;flex-direction:column;gap:14px;padding:18px;display:flex}.job-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.job-title{flex-wrap:wrap;align-items:center;gap:8px;font-size:clamp(1.1rem,1.8vw,1.5rem);display:flex}.job-title .role{letter-spacing:-.05em;font-weight:500}.period{color:var(--text);letter-spacing:-.05em;white-space:nowrap;font-size:1rem}.job hr{border:none;border-top:1px solid var(--stroke);margin:0}.job-body{border-radius:8px;padding:8px}.job-body p{color:var(--text);letter-spacing:-.05em;margin:0;font-size:1rem;line-height:1.45}.job-body--pink{background:var(--pink)}.job-body--yellow{background:var(--yellow)}.job-body--purple{background:var(--purple)}.job-body--green{background:var(--green)}.life{width:var(--content);flex-direction:column;align-items:center;gap:clamp(2.5rem,5vw,3.75rem);margin:clamp(5rem,10vw,7.5rem) auto 0;display:flex}.life .section-intro{width:100%;max-width:48rem;margin:0}.life-board{aspect-ratio:1280/880;background:#efe6f7;border-radius:24px;width:100%;position:relative;overflow:visible}.life-board:before{content:"";border-radius:inherit;z-index:0;pointer-events:none;background:url(/assets/life/pieces/gingham.jpg) 50%/cover no-repeat;position:absolute;inset:0}.life-board>*{z-index:1}.life-note{z-index:5;font-family:var(--font-serif);letter-spacing:.02em;color:var(--black);pointer-events:none;margin:0;font-size:clamp(.85rem,2.2vw,1.75rem);font-weight:500;line-height:1.3;position:absolute}.life-note--books{text-align:center;width:18.5%;top:3.4%;left:1.5%;transform:rotate(-11.82deg)}.life-note--coffee{text-align:center;width:15.4%;top:2.5%;left:34.6%}.life-note--moments{white-space:nowrap;top:4%;left:66.9%}.life-note--music{width:14.4%;top:34.5%;left:26.2%}.life-note--cooking{text-align:center;width:15.4%;top:35.2%;left:49.7%}.life-note--foodie{white-space:nowrap;top:54.9%;left:1.3%}.life-note--mountains{white-space:nowrap;top:61.4%;left:22.5%}.life-note--sketch{text-align:center;width:15.4%;top:63.1%;left:61.1%}.life-note--crochet{text-align:right;width:21%;top:44.9%;left:76.8%}.life-piece{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;display:block;position:absolute}.life-arrow{z-index:6}.life-arrow--books{width:3.98%;top:8.84%;left:16.56%}.life-arrow--coffee{width:4.38%;top:7.94%;left:31.72%}.life-arrow--moments{width:8.67%;top:11.11%;left:76.02%}.life-arrow--music{width:3.28%;top:39.46%;left:23.36%}.life-arrow--cook{width:5%;top:43.76%;left:57.11%}.life-arrow--foodie{width:6.88%;top:60.88%;left:2.03%}.life-arrow--mountains{width:4.69%;top:65.53%;left:32.03%}.life-arrow--sketch{width:5.16%;top:71.77%;left:67.03%}.life-arrow--crochet{z-index:3;width:5.47%;top:53.17%;left:77.5%}.life-polaroid{z-index:3;pointer-events:none;background:#fff;padding:.55% .75% 2.8%;position:absolute;box-shadow:0 4px 8px #0000002e}.life-polaroid>img:first-child{object-fit:cover;width:100%;height:100%;display:block}.life-polaroid--coffee{aspect-ratio:142/136;width:12.8%;top:12.3%;left:30.2%;transform:rotate(-2.4deg)}.life-polaroid--tower{aspect-ratio:172/147;z-index:4;width:14.8%;top:16%;left:65.1%;transform:rotate(-13.46deg)}.life-polaroid--leaves{aspect-ratio:189/162;z-index:3;width:16.3%;top:11.7%;left:79.4%}.life-polaroid--mountain-a{aspect-ratio:187/160;z-index:4;width:16.1%;top:67.5%;left:22.7%;transform:rotate(-13.46deg)}.life-polaroid--mountain-b{aspect-ratio:184/120;z-index:3;width:15.8%;top:76.8%;left:34%}.life-polaroid--friends{aspect-ratio:169/224;z-index:4;width:14.6%;top:59.4%;left:79.1%;transform:rotate(11.88deg)}.life-sticker-heart-blue{object-fit:contain;width:18%;max-width:none;height:auto;position:absolute;bottom:-2%;left:34%;transform:rotate(-11.88deg)}.life-clip{z-index:7;width:1.8%}.life-clip--tower{top:13%;left:70.5%;transform:rotate(-18.6deg)}.life-clip--leaves{top:8.8%;left:87.6%;transform:rotate(4.27deg)}.life-clip--mountain-a{top:69.2%;left:23.7%;transform:rotate(-18deg)}.life-clip--mountain-b{top:73.9%;left:41.2%}.life-clip--friends{top:59.3%;left:89.5%;transform:rotate(3.66deg)}.life-book--hyunam{width:9.5%;top:16.9%;left:4.6%;transform:rotate(-1.29deg)}.life-book--palace{width:8.9%;top:15.7%;left:13.2%;transform:rotate(10.22deg)}.life-sticker--flower{width:6.6%;top:22.7%;left:1.9%}.life-coffee-cup{width:12.8%;top:12.7%;left:41.3%;transform:rotate(9.86deg)}.life-sticker--heart-pink{z-index:6;width:2.4%;top:10.6%;left:35.5%}.life-sticker--sun{z-index:4;width:6.1%;top:18.1%;left:61.1%}.life-sticker--camera{z-index:8;width:7.9%;top:25.1%;left:76.1%}.life-cassette{width:14.4%;top:43.8%;left:19.8%}.life-earphones{width:7.5%;top:44.6%;left:29.7%;transform:rotate(75.74deg)}.life-food-bowl{width:13%;top:41.9%;left:44.3%;transform:rotate(-12.57deg)}.life-food-cookie{width:8.8%;top:50.2%;left:52.8%}.life-drink{width:19.8%;top:59%;left:0}.life-pizza{border-radius:0 0 19px;width:18.7%;top:59.5%;left:.15%}.life-sketch--gg{width:11.5%;top:69.9%;left:53.4%;transform:rotate(-9.32deg)}.life-sketch--nanami{width:8.9%;top:77%;left:66.4%;transform:rotate(88.64deg)}.life-sticker--artist{width:6.7%;top:85.3%;left:75.3%}@media (width<=720px){.life-note{font-size:clamp(.7rem,2.8vw,1rem)}}.connect{width:var(--content);border:1px solid var(--stroke);border-radius:24px;justify-content:center;align-items:flex-start;height:clamp(22rem,40vw,31.25rem);margin:clamp(3.75rem,6vw,5rem) auto clamp(4rem,8vw,7.75rem);display:flex;position:relative;overflow:hidden}.case .connect{margin-bottom:calc(max(1.25rem, env(safe-area-inset-bottom,0px) + .75rem) + 5.75rem + 1.25rem)}.connect-bg{object-fit:cover;object-position:center top;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.connect-fade{border-radius:inherit;background:linear-gradient(178.74deg,#f8f8f8 2.66%,#f8f8f8e6 22.55%,#f8f8f8cc 38.95%,#f8f8f880 55.01%,#f8f8f800 80.5%);position:absolute;inset:0}.connect-content{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:18px;padding:60px 1.5rem 124px;animation:.8s both rise;display:flex;position:relative}.connect-content h2{flex-direction:column;align-items:center;gap:0;margin:0;display:flex}.connect-content .sans{letter-spacing:-.05em;font-size:clamp(1.85rem,3.8vw,3rem);font-weight:700;line-height:1.15}.connect-content .serif{letter-spacing:.02em;font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.375}.socials{align-items:center;gap:14px;display:flex}.socials a{width:48px;height:48px;transition:transform .2s}.socials a:hover{transform:translateY(-3px)}.socials img{width:100%;height:100%;display:block}.not-found{z-index:1;width:var(--content);place-items:center;min-height:calc(100svh - 11rem);margin:0 auto;padding:clamp(3rem,8vw,5.5rem) 0 clamp(6rem,12vw,8rem);display:grid;position:relative}.not-found-stage{text-align:center;border:1px solid var(--stroke);background:linear-gradient(#ffffffeb 0%,#f8f8f8e0 100%);border-radius:24px;flex-direction:column;align-items:center;width:min(100%,40rem);padding:clamp(2.25rem,5vw,3.5rem) clamp(1.25rem,4vw,2.5rem);animation:.8s both rise;display:flex;position:relative;box-shadow:0 18px 40px #1010100f}.not-found-pill{pointer-events:none;z-index:2;position:absolute}.not-found-pill--lost{background:var(--yellow);animation:7s ease-in-out infinite hang-swing;top:-.85rem;left:8%;transform:rotate(-8deg)}.not-found-pill--turn{background:var(--pink);animation:8.5s ease-in-out infinite drift;top:1.1rem;right:6%;transform:rotate(7deg)}.not-found-pill--sketch{background:var(--green);animation:6.5s ease-in-out infinite float;bottom:-.75rem;left:50%;transform:rotate(-3deg)}.not-found-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--text);margin:0 0 .65rem;font-size:.95rem;font-weight:700}.not-found-title{flex-direction:column;align-items:center;gap:.1rem;margin:0;display:flex}.not-found-title .sans{letter-spacing:-.05em;font-size:clamp(2.4rem,6vw,3.75rem);font-weight:700;line-height:1.05}.not-found-title .serif{font-family:var(--font-serif);letter-spacing:.03em;font-size:clamp(2.1rem,5.2vw,3.25rem);font-weight:400;line-height:1.15}.not-found-copy{letter-spacing:-.02em;max-width:28rem;color:var(--text);margin:1.1rem 0 0;font-size:clamp(1rem,1.6vw,1.125rem);line-height:1.55}.not-found-path{background:var(--grey-fill);border:1px solid var(--stroke);max-width:100%;color:var(--text);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;margin:1.35rem 0 0;padding:.55rem .9rem;font-size:.92rem;overflow:hidden}.not-found-path code{font-family:var(--font-sans);color:var(--black);letter-spacing:-.03em;font-weight:700}.not-found-actions{flex-direction:column;align-items:center;gap:1.15rem;margin-top:1.75rem;display:flex}.not-found-home{margin:0}.not-found-links{flex-wrap:wrap;justify-content:center;gap:.35rem 1.15rem;display:flex}.not-found-links a{letter-spacing:-.04em;color:var(--black);text-underline-offset:.22em;font-size:1.05rem;-webkit-text-decoration:underline #10101038;text-decoration:underline #10101038;transition:opacity .2s,text-decoration-color .2s}.not-found-links a:hover{opacity:.7;text-decoration-color:#1010108c}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{translate:0}50%{translate:0 -8px}}@keyframes drift{0%,to{translate:0}50%{translate:6px}}@keyframes hang-swing{0%,to{transform:rotate(1.6deg)}50%{transform:rotate(-1.4deg)}}@keyframes sway{0%,to{transform:rotate(1.5deg)}50%{transform:rotate(-1.5deg)}}@media (width<=1100px){.hero{grid-template-columns:1fr;margin-top:48px}.hero-copy{order:2;max-width:none}.hero-visual{order:1;width:min(240px,55%);margin:0 auto 1rem}.project-card{grid-template-columns:1fr}.project-copy{gap:1.5rem}.project-media{width:100%;max-width:420px;margin:0 auto}.road-grid,.stack-grid{grid-template-columns:1fr}.about-hint{font-size:1.15rem;top:-3.5rem;left:0}.about-hint-arrow{width:2.5rem;top:-1.5rem;left:7.5rem}.sticker-pencil,.sticker-star,.sticker-smiley,.sticker-flower{width:64px}.sticker-pencil{left:-36px}.sticker-star{top:-12px;right:-16px}.sticker-smiley{bottom:-18px;left:18%}.sticker-flower{top:-14px;right:-14px}.sticker-clip{width:32px;left:-16px}.sticker-cursor{width:40px;right:-10px}.sticker-flower-orange{width:56px;left:-10px}.sticker-rocket{width:72px;bottom:-24px}}@media (width<=720px){.nav{flex-direction:column;align-items:flex-start;margin-top:16px;padding:14px 16px}.nav-links{justify-content:space-between;gap:0;width:100%}.nav-links .nav-washi{padding:8px 6px;font-size:.95rem}.nav-washi.is-active:before{height:1.45rem}.bottom-nav{width:min(100% - 1.25rem,700px);bottom:max(.75rem, env(safe-area-inset-bottom,0px) + .5rem)}.bottom-nav-bar{gap:.5rem;padding:12px 14px}.bottom-nav-brand{font-size:1.35rem}.bottom-nav-links{gap:0}.bottom-nav-links .nav-washi{padding:8px;font-size:.92rem}.case-dock{bottom:max(.75rem, env(safe-area-inset-bottom,0px) + .5rem);max-width:calc(100% - 1rem)}.case-dock-bar{gap:8px;padding:12px}.case-dock-main,.case-dock-pager{gap:8px}.case-dock-item{gap:6px;padding:8px 10px;font-size:.92rem}.case-dock-item img{width:20px;height:20px}.case-dock-nav{width:38px;min-width:38px;height:38px;min-height:38px;padding:0}.case-dock-nav img{width:20px;min-width:20px;height:20px;min-height:20px}.case-dock-tooltip{padding:5px 10px;font-size:.875rem;line-height:1.25}.hero-body{margin-top:2.5rem}.pill{margin:.35rem .35rem 0 0;display:inline-flex;position:static}.hero-headline{flex-direction:column;align-items:flex-start;display:flex}.hero-headline h1{order:-1;margin-bottom:.75rem}.tags{font-size:.9rem}.job-head{flex-direction:column;align-items:flex-start}.about-intro h1{font-size:clamp(1.85rem,9vw,2.5rem)}.about-hint{margin:0 auto .75rem;position:relative;top:auto;left:auto;transform:rotate(-3deg)}.about-hint-arrow{display:none}.about-stage{flex-direction:column;align-items:center;margin-top:2rem;display:flex}.about-letter-copy{gap:.85rem}.tool-icon{width:72px;height:72px}.stack-card{min-height:400px}.connect{border-radius:16px;height:auto;min-height:20rem}.connect-content{padding:2rem 1rem 5rem}.case-overview,.case-impact,.case-learn-grid{grid-template-columns:1fr}.case-impact{gap:1.5rem;max-width:22rem}.case-block .case-impact-metric{font-size:4rem}.case-token-path,.case-token-layers{grid-template-columns:1fr}.case-token-sticky{max-width:20.125rem;margin-inline:auto}.case-sticker-wrap--learn{width:4.5rem;animation:4.5s ease-in-out infinite case-sticker-sway;top:auto;bottom:-1rem;right:.25rem;transform:none}.case-learn-card{padding:1.5rem}.not-found{min-height:calc(100svh - 14rem);padding-top:2.5rem}.not-found-stage{padding:2.25rem 1.15rem 2.5rem}.not-found-pill--lost{font-size:.72rem;left:2%}.not-found-pill--turn{font-size:.72rem;right:2%}.not-found-pill--sketch{font-size:.72rem}.not-found-links{gap:.5rem .9rem}.not-found-links a{font-size:.98rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
