html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}:root{--bg:#efeeeb;--ink:#0a0a0a;--muted:#6b6a66;--muted2:#858481;--line:#0a0a0a29;--line-strong:#0a0a0a4d;--inv-bg:#0d0d0c;--inv-ink:#efeeeb;--inv-muted:#8f8e8a;--inv-line:#efeeeb42;--accent:#d12424;--photo-bg:#fff;--dot:#0a0a0a16;--pad:clamp(20px, 4.4vw, 64px);--display:"Funnel Display", "Helvetica Neue", Arial, sans-serif;--body:"Archivo", "Helvetica Neue", Arial, sans-serif;--alt:"Space Grotesk", "Helvetica Neue", Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#0d0d0c;--ink:#efeeeb;--muted:#8f8e8a;--muted2:#6e6d69;--line:#efeeeb29;--line-strong:#efeeeb4d;--inv-bg:#efeeeb;--inv-ink:#0a0a0a;--inv-muted:#6b6a66;--inv-line:#0a0a0a42;--photo-bg:#fff;--dot:#efeeeb13;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--cursor-arrow:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2232%22 height=%2232%22 viewBox=%220 0 32 32%22%3E %3Cdefs%3E %3ClinearGradient id=%22g%22 x1=%220%22 y1=%220%22 x2=%221%22 y2=%221%22%3E%3Cstop offset=%220%22 stop-color=%22%2343f5cf%22/%3E%3Cstop offset=%22.5%22 stop-color=%22%233f7dff%22/%3E%3Cstop offset=%221%22 stop-color=%22%23a14bff%22/%3E%3C/linearGradient%3E %3CclipPath id=%22c%22%3E%3Cpath d=%22M3.5 2.5 L3.5 25.5 L9.2 20.4 L13 29.2 L17.3 27.3 L13.5 18.8 L21.2 18.8 Z%22/%3E%3C/clipPath%3E %3C/defs%3E %3Cpath d=%22M3.5 2.5 L3.5 25.5 L9.2 20.4 L13 29.2 L17.3 27.3 L13.5 18.8 L21.2 18.8 Z%22 fill=%22url(%23g)%22/%3E %3Cg clip-path=%22url(%23c)%22 fill=%22none%22 stroke-linecap=%22round%22%3E %3Cpath d=%22M2 11 C8 5 12 17 19 11 S25 14 23 21%22 stroke=%22%23c8fff3%22 stroke-width=%222.6%22 opacity=%22.75%22/%3E %3Cpath d=%22M3 19 C9 13 11 25 18 19%22 stroke=%22%23ff86e6%22 stroke-width=%222.2%22 opacity=%22.65%22/%3E %3Cpath d=%22M5 27 C10 22 13 29 19 24%22 stroke=%22%237bffe0%22 stroke-width=%222%22 opacity=%22.55%22/%3E %3C/g%3E %3Cpath d=%22M3.5 2.5 L3.5 25.5 L9.2 20.4 L13 29.2 L17.3 27.3 L13.5 18.8 L21.2 18.8 Z%22 fill=%22none%22 stroke=%22%230a0f2c%22 stroke-width=%221.9%22 stroke-linejoin=%22round%22/%3E %3Cpath d=%22M5.4 5.8 L5.4 20%22 stroke=%22%23fff%22 stroke-width=%221%22 stroke-linecap=%22round%22 opacity=%22.55%22/%3E %3C/svg%3E") 3 2, default;--cursor-hand:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2232%22 height=%2232%22 viewBox=%220 0 32 32%22%3E %3Cdefs%3E %3ClinearGradient id=%22g%22 x1=%220%22 y1=%220%22 x2=%221%22 y2=%221%22%3E%3Cstop offset=%220%22 stop-color=%22%2343f5cf%22/%3E%3Cstop offset=%22.5%22 stop-color=%22%233f7dff%22/%3E%3Cstop offset=%221%22 stop-color=%22%23a14bff%22/%3E%3C/linearGradient%3E %3CclipPath id=%22c%22%3E %3Crect x=%228.5%22 y=%222.8%22 width=%225.4%22 height=%2217%22 rx=%222.7%22/%3E %3Crect x=%2213.5%22 y=%229.5%22 width=%225%22 height=%2212%22 rx=%222.5%22/%3E %3Crect x=%2218.1%22 y=%2211.5%22 width=%224.8%22 height=%2211%22 rx=%222.4%22/%3E %3Crect x=%2222.5%22 y=%2213.5%22 width=%224.3%22 height=%2210%22 rx=%222.15%22/%3E %3Crect x=%228.5%22 y=%2216%22 width=%2218.3%22 height=%2212.5%22 rx=%225.6%22/%3E %3Cellipse cx=%227.2%22 cy=%2221.5%22 rx=%222.9%22 ry=%225.6%22 transform=%22rotate(-22 7.2 21.5)%22/%3E %3C/clipPath%3E %3C/defs%3E %3Cg stroke=%22%230a0f2c%22 stroke-width=%223.4%22 stroke-linejoin=%22round%22 fill=%22%230a0f2c%22%3E %3Crect x=%228.5%22 y=%222.8%22 width=%225.4%22 height=%2217%22 rx=%222.7%22/%3E %3Crect x=%2213.5%22 y=%229.5%22 width=%225%22 height=%2212%22 rx=%222.5%22/%3E %3Crect x=%2218.1%22 y=%2211.5%22 width=%224.8%22 height=%2211%22 rx=%222.4%22/%3E %3Crect x=%2222.5%22 y=%2213.5%22 width=%224.3%22 height=%2210%22 rx=%222.15%22/%3E %3Crect x=%228.5%22 y=%2216%22 width=%2218.3%22 height=%2212.5%22 rx=%225.6%22/%3E %3Cellipse cx=%227.2%22 cy=%2221.5%22 rx=%222.9%22 ry=%225.6%22 transform=%22rotate(-22 7.2 21.5)%22/%3E %3C/g%3E %3Cg fill=%22url(%23g)%22%3E %3Crect x=%228.5%22 y=%222.8%22 width=%225.4%22 height=%2217%22 rx=%222.7%22/%3E %3Crect x=%2213.5%22 y=%229.5%22 width=%225%22 height=%2212%22 rx=%222.5%22/%3E %3Crect x=%2218.1%22 y=%2211.5%22 width=%224.8%22 height=%2211%22 rx=%222.4%22/%3E %3Crect x=%2222.5%22 y=%2213.5%22 width=%224.3%22 height=%2210%22 rx=%222.15%22/%3E %3Crect x=%228.5%22 y=%2216%22 width=%2218.3%22 height=%2212.5%22 rx=%225.6%22/%3E %3Cellipse cx=%227.2%22 cy=%2221.5%22 rx=%222.9%22 ry=%225.6%22 transform=%22rotate(-22 7.2 21.5)%22/%3E %3C/g%3E %3Cg clip-path=%22url(%23c)%22 fill=%22none%22 stroke-linecap=%22round%22%3E %3Cpath d=%22M6 12 C11 7 14 19 20 13 S27 17 26 24%22 stroke=%22%23c8fff3%22 stroke-width=%222.6%22 opacity=%22.7%22/%3E %3Cpath d=%22M6 21 C11 16 14 28 21 22%22 stroke=%22%23ff86e6%22 stroke-width=%222.2%22 opacity=%22.6%22/%3E %3Cpath d=%22M10 28 C15 24 18 29 25 25%22 stroke=%22%237bffe0%22 stroke-width=%222%22 opacity=%22.5%22/%3E %3C/g%3E %3Cpath d=%22M10.6 5.5 L10.6 14%22 stroke=%22%23fff%22 stroke-width=%221%22 stroke-linecap=%22round%22 opacity=%22.55%22/%3E %3C/svg%3E") 11 3, pointer}html,body{cursor:var(--cursor-arrow)}a,button,select,summary,label,[role=button]{cursor:var(--cursor-hand)}input,textarea{cursor:text}html{-webkit-text-size-adjust:100%}body{background-color:var(--bg);background-image:radial-gradient(circle at 1px 1px, var(--dot) 1.1px, transparent 1.4px);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;background-size:24px 24px;font-size:16px;line-height:1.5;transition:background-color .5s,color .5s;overflow-x:clip}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:var(--cursor-hand);background:0 0;border:none}ul{list-style:none}img{max-width:100%;display:block}.wrap{padding-inline:var(--pad)}.label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}.intro{z-index:200;color:var(--ink);cursor:var(--cursor-hand);place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.intro-bg{background:var(--bg);position:absolute;inset:0}.intro-stage{position:relative}.intro-row{white-space:nowrap;font-family:var(--display);text-transform:uppercase;letter-spacing:-.005em;justify-content:center;align-items:center;gap:.28em;font-size:clamp(2.2rem,9.2vw,9rem);font-weight:500;line-height:1;display:flex;position:relative}.intro-word{display:flex}.il{margin-bottom:-.08em;padding-bottom:.08em;display:inline-block;overflow:hidden}.il>span{display:inline-block}.intro-meta{margin-top:clamp(14px,2.4vw,30px);position:absolute;top:100%;left:0;right:0}.intro-rule{background:var(--accent);transform-origin:0;height:3px;display:block}.intro-labels{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);justify-content:space-between;gap:16px;margin-top:12px;font-size:12px;font-weight:500;display:flex}.intro-flyer{background:var(--photo-bg);position:fixed;overflow:hidden}.intro-flyer-img{object-fit:contain;display:block;position:absolute}.intro-hint{right:var(--pad);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500;position:absolute;bottom:22px}@media (width<=700px){.intro-row{flex-direction:column;gap:.02em;font-size:clamp(3rem,22vw,6.4rem);line-height:.95}.intro-labels{flex-direction:column;gap:6px}}.header{z-index:100;padding:24px var(--pad);color:#fff;mix-blend-mode:difference;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.header>*{pointer-events:auto}.wordmark{letter-spacing:.005em;font-size:15px;font-weight:600}.burger{flex-direction:column;justify-content:center;gap:9px;width:40px;height:22px;display:flex}.burger span{background:currentColor;width:100%;height:2px;transition:transform .5s cubic-bezier(.76,0,.24,1);display:block}.burger.is-open span:first-child{transform:translateY(5.5px)rotate(45deg)}.burger.is-open span:last-child{transform:translateY(-5.5px)rotate(-45deg)}.menu{z-index:90;background:var(--inv-bg);color:var(--inv-ink);padding:100px var(--pad) 28px;flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}.menu-links{flex-direction:column;display:flex}.menu-mask{overflow:hidden}.menu-link{text-align:left;width:100%;font-family:var(--display);letter-spacing:-.02em;align-items:baseline;gap:22px;font-size:clamp(2.4rem,8vh,5.6rem);font-weight:500;line-height:1.06;transition:color .3s,padding-left .45s cubic-bezier(.22,1,.36,1);display:flex}.menu-link small{font-family:var(--body);letter-spacing:0;color:var(--inv-muted);width:28px;font-size:14px}.menu-link:hover{color:var(--accent);padding-left:20px}.menu-foot{text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;font-size:14px;font-weight:500;display:flex}.menu-foot a:hover{color:var(--accent)}.menu-social{gap:18px;display:flex}.theme-toggle{border:1px solid var(--inv-line);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:10px;padding:9px 14px;font-size:12px;transition:border-color .3s;display:inline-flex}.theme-toggle:hover{border-color:currentColor}.theme-dot{background:linear-gradient(90deg,currentColor 50%,#0000 50%);border:1px solid;border-radius:50%;width:12px;height:12px;transition:transform .5s}.theme-dot.dark{transform:rotate(180deg)}.btn{isolation:isolate;font-family:var(--body);color:var(--ink);background:0 0;border:1px solid;align-items:center;gap:12px;padding:12px 16px;font-size:15px;font-weight:500;line-height:1.2;transition:color .35s,border-color .35s;display:inline-flex;position:relative;overflow:hidden}.btn-fill{z-index:-1;background:var(--ink);transition:transform .45s cubic-bezier(.76,0,.24,1);position:absolute;inset:0;transform:translateY(101%)}.btn:hover .btn-fill{transform:none}.btn:hover{color:var(--bg)}.btn svg{transition:transform .4s cubic-bezier(.22,1,.36,1)}.btn:hover svg{transform:translate(4px)}.btn-solid{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn-solid .btn-fill{background:var(--accent)}.btn-solid:hover{color:#fff;border-color:var(--accent)}.btn-light{background:var(--inv-ink);color:var(--inv-bg);border-color:var(--inv-ink)}.btn-light .btn-fill{background:var(--accent)}.btn-light:hover{color:#fff;border-color:var(--accent)}.btn-row{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips li{border:1px solid var(--line-strong);padding:9px 16px;font-size:13px;font-weight:500;transition:background .3s,color .3s}.chips li:hover{background:var(--ink);color:var(--bg)}.chips-sm li{padding:6px 12px;font-size:12px}.art{background:color-mix(in srgb, var(--a) 22%, #fbfaf7);position:absolute;inset:0;overflow:hidden}.art-blob{aspect-ratio:1;filter:blur(42px);opacity:.95;will-change:transform;border-radius:50%;width:74%;position:absolute}.art-a{background:var(--a);top:-26%;left:-12%}.art-b{background:var(--b);bottom:-36%;right:-14%}.art-grain{opacity:.32;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.hero{min-height:100svh;padding:92px var(--pad) 0;flex-direction:column;display:flex;position:relative}.hero-grid{flex:1;grid-template-columns:1fr minmax(0,min(54%,640px));align-items:stretch;display:grid}.hero-left{z-index:2;flex-direction:column;justify-content:flex-end;padding:0 24px clamp(24px,9vh,110px) 0;display:flex;position:relative}.hero-sign-zone{flex:1;justify-content:center;align-items:center;min-height:120px;display:flex}.hero-sign{width:min(580px,94%);color:var(--ink);transform-origin:50%;cursor:var(--cursor-hand);transform:rotate(-9deg)}@media (width>=861px) and (height<=780px){.hero-sign-zone{padding-bottom:14px}.hero-sign{width:min(430px,88%)}}.hero-sign svg{width:100%;height:auto;display:block;overflow:visible}.hero-sign{position:relative;container-type:inline-size}.pen-wrap{pointer-events:none;opacity:0;z-index:3;width:0;height:0;transition:opacity .35s;position:absolute;top:0;left:0}.pen-wrap.on{opacity:1}.pen-wrap.away{opacity:0;--away:1;transition:opacity .7s .25s}.pen{transform-origin:0;width:44cqw;transform:translate(calc(var(--away,0) * 12cqw), calc(-50% - var(--up,0) * 2.4cqw - var(--away,0) * 14cqw)) rotate(calc(var(--tilt,-38) * 1deg));filter:drop-shadow(0 .6cqw .7cqw #00000047);transition:transform .9s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0}.pen svg{width:100%;height:auto;display:block}.pen-shadow{transform-origin:0;width:40cqw;height:2.6cqw;transform:translate(calc(1.2cqw + var(--up,0) * 3.6cqw), calc(-50% + 2.2cqw + var(--up,0) * 5.4cqw)) rotate(calc(var(--tilt,-38) * 1deg));filter:blur(calc(.5cqw + var(--up,0) * 1.4cqw));opacity:calc(.42 - var(--up,0) * .28);background:#0000008c;border-radius:50%;position:absolute;top:0;left:0}.hero-cta{margin-top:18px}.hero-name{font-family:var(--display);letter-spacing:-.032em;font-size:clamp(3.5rem,6.9vw,6.2rem);font-weight:500;line-height:.9}.split-line{margin-bottom:-.1em;padding-bottom:.1em;display:block;overflow:hidden}.hero-tag{margin:24px 0 26px;font-size:clamp(1.05rem,1.45vw,1.35rem);font-weight:400;line-height:1.3}.hero-photo{z-index:0;background:var(--photo-bg);place-items:end center;height:calc(100svh - 168px);min-height:460px;margin:0;transition:background-color .5s;display:grid;position:relative;overflow:visible}.hero-stage{z-index:2;aspect-ratio:1;visibility:hidden;touch-action:pan-y;width:min(100%,100svh - 168px);cursor:var(--cursor-arrow);-webkit-user-select:none;user-select:none;position:relative}.hero-stage.on{visibility:visible}.hero-stage.over{cursor:var(--cursor-hand)}.hero-circle{position:absolute;inset:0}.pf-img{object-fit:contain;-webkit-user-drag:none;width:100%;height:100%;display:block}.pull-canvas{pointer-events:none;opacity:0;width:164%;height:164%;position:absolute;top:-32%;left:-32%}.hero-stage.gl-on .pull-canvas{opacity:1}.hero-stage.gl-on .hero-circle{opacity:0}.spin-badge,.pull-hint,.float-tiles{transition:opacity .5s}.hero-photo:not(.landed) .spin-badge,.hero-photo:not(.landed) .pull-hint,.hero-photo:not(.landed) .float-tiles{opacity:0}.pull-hint{z-index:3;background:var(--bg);border:1px solid var(--line-strong);letter-spacing:.05em;text-transform:uppercase;pointer-events:none;align-items:center;gap:8px;padding:7px 12px;font-size:11px;font-weight:600;transition:opacity .4s,transform .4s;display:inline-flex;position:absolute;bottom:14px;left:14px}.pull-hint i{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.8s infinite pulse-red}.pull-hint.gone{opacity:0;transform:translateY(6px)}@keyframes pulse-red{70%{box-shadow:0 0 0 7px #d1242400}to{box-shadow:0 0 #d1242400}}.hero-foot{z-index:2;border-top:1px solid var(--line);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);justify-content:space-between;gap:16px;margin-top:12px;padding:14px 0 16px;font-size:12px;font-weight:500;display:flex;position:relative}.hero-status{align-items:center;gap:8px;display:inline-flex}.hero-status i{background:#22a55a;border-radius:50%;width:7px;height:7px;animation:2s infinite pulse;box-shadow:0 0 #22a55a99}@keyframes pulse{70%{box-shadow:0 0 0 8px #22a55a00}to{box-shadow:0 0 #22a55a00}}.trail{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.trail-tile{background:#fbfaf7;border:1px solid #0a0a0a1f;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:104px;height:104px;margin:-52px 0 0 -52px;display:flex;position:absolute;box-shadow:0 16px 40px #00000038}.trail-tile span{letter-spacing:.02em;color:#0a0a0a;font-size:11px;font-weight:600}@media (hover:none),(pointer:coarse){.trail{display:none}}.about{padding-top:clamp(110px,17vw,250px);padding-bottom:clamp(50px,7vw,100px)}.about-inner{position:relative}.statement{max-width:980px;font-family:var(--display);letter-spacing:-.015em;font-size:clamp(1.65rem,3.45vw,3.1rem);font-weight:500;line-height:1.08}.word{display:inline}.note{aspect-ratio:.9;width:260px;cursor:var(--cursor-hand);color:#0a0a0a;-webkit-user-select:none;user-select:none;position:absolute;top:-30px;right:1%}.note-back,.note-card{background:#fbfaf7;border:6px solid #fbfaf7;position:absolute;inset:0;box-shadow:0 24px 60px #00000047}.note-card{overflow:hidden}.note-back{box-shadow:0 10px 30px #00000029}.nb-1{transform:rotate(-6deg)translate(-8px,6px)}.nb-2{transform:rotate(5deg)translate(10px,10px)}.note .art{inset:0}.note-body{flex-direction:column;justify-content:flex-end;gap:2px;padding:18px;display:flex;position:absolute;inset:0}.note-count{letter-spacing:.06em;color:#0a0a0aa6;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600;position:absolute;top:14px;right:16px}.note-body .label{color:#0a0a0ab8}.note-body b{font-family:var(--display);letter-spacing:-.04em;margin-top:2px;font-size:3.4rem;font-weight:600;line-height:.95}.note-body b.long{font-size:2.35rem}.note-title{margin-top:8px;font-size:15px;font-weight:600;line-height:1.2}.note-sub{opacity:.75;font-size:13px;font-weight:500}.note-progress{justify-content:center;gap:6px;display:flex;position:absolute;bottom:-26px;left:0;right:0}.note-progress i{background:var(--line-strong);border-radius:50%;width:6px;height:6px;transition:background .3s,width .3s}.note-progress i.on{background:var(--accent);border-radius:4px;width:20px}.stats{border-top:1px solid var(--line-strong);grid-template-columns:repeat(5,1fr) 1.7fr;margin-top:clamp(60px,8vw,110px);display:grid}.stat{border-left:1px solid var(--line);flex-direction:column;gap:8px;padding:26px 18px 0;display:flex}.stat:first-child{border-left:none;padding-left:0}.stat-n{font-family:var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(2.2rem,4vw,3.6rem);font-weight:500;line-height:1}.stat-edu-t{font-family:var(--display);font-size:1.35rem;font-weight:500;line-height:1.15}.clients{grid-template-columns:305px minmax(0,1fr);align-items:start;gap:44px;padding-top:18px;padding-bottom:8px;display:grid;position:relative}.clients:before{content:"";top:0;left:var(--pad);right:var(--pad);border-top:1px solid var(--line-strong);position:absolute}.clients-art{height:176px;margin-bottom:18px;position:relative}.logo-show{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden;container-type:size}.logo-card{background:#fff;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;width:69cqw;height:66cqh;padding:6cqh 6cqw;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 32px #00001459}.logo-card img{object-fit:contain;width:100%;height:100%;display:block}.logo-card.cover{aspect-ratio:.97;width:auto;height:78cqh;padding:0}.logo-card.cover img{object-fit:cover}.logo-text{font-family:var(--display);letter-spacing:-.02em;text-transform:uppercase;text-align:center;color:#0a0a0a;font-size:17cqh;font-weight:600;line-height:.95}.clients-right{flex-direction:column;gap:14px;min-width:0;display:flex}.mq-row{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.mq-track{width:max-content;animation:46s linear infinite mq;display:flex}.mq-track.rev{animation-duration:54s;animation-direction:reverse}.mq-row:hover .mq-track{animation-play-state:paused}@keyframes mq{to{transform:translate(-50%)}}.logo{white-space:nowrap;color:var(--muted2);padding-right:60px;line-height:1.5;transition:color .3s}.logo:hover{color:var(--ink)}.logo-a{font-family:var(--display);letter-spacing:-.02em;font-size:28px;font-weight:600}.logo-b{font-family:var(--alt);text-transform:uppercase;letter-spacing:.01em;font-size:23px;font-weight:700}.logo-c{font-family:var(--body);letter-spacing:-.03em;font-size:27px;font-style:italic;font-weight:600}.logo-d{font-family:var(--display);text-transform:uppercase;letter-spacing:.14em;font-size:26px;font-weight:300}.section{padding-top:clamp(80px,12vw,170px)}.mask-heading{margin-bottom:-.12em;padding-bottom:.12em;overflow:hidden}.h2{font-family:var(--display);letter-spacing:-.022em;font-size:clamp(2.9rem,7.1vw,6.4rem);font-weight:500;line-height:1.02}.rows,.proj-list{border-top:1px solid var(--line-strong);margin-top:44px}.proj{border-bottom:1px solid var(--line-strong);color:var(--muted2);transition:color .5s}.proj.open{color:var(--ink)}.proj-head{cursor:var(--cursor-hand);grid-template-columns:minmax(0,1fr) 181px 330px;align-items:center;gap:40px;padding:26px 0;display:grid}.proj-title{font-family:var(--display);letter-spacing:-.025em;font-size:clamp(2.3rem,4.9vw,4.4rem);font-weight:500;line-height:1;transition:color .5s,transform .6s cubic-bezier(.22,1,.36,1)}.proj:not(.open):hover .proj-title{color:var(--ink);transform:translate(14px)}.proj.open .proj-title{color:var(--accent)}.proj-cta .btn{color:inherit}.proj-cta .btn:hover{color:var(--bg)}.proj-num{letter-spacing:.05em;justify-self:end;font-size:12px;font-weight:500}.proj-body{overflow:hidden}.proj-body-in{grid-template-columns:minmax(0,1fr) 330px;gap:40px;padding:4px 0 34px;display:grid}.proj-shot{background:#fff;display:block;position:absolute;inset:0}.proj-shot img{object-fit:cover;object-position:50% 0;width:100%;height:100%;transition:object-position 3.2s cubic-bezier(.45,0,.25,1);display:block}.proj-shot:hover img{object-position:50% 100%}.proj-shot.contain img,.proj-shot.contain:hover img{object-fit:contain;object-position:50% 50%}.proj-shot-tag{background:var(--ink);color:var(--bg);letter-spacing:.04em;text-transform:uppercase;opacity:0;padding:6px 10px;font-size:11px;font-weight:500;transition:opacity .3s,transform .3s;position:absolute;top:0;right:0;transform:translateY(-6px)}.proj-shot:hover .proj-shot-tag,.proj-shot:focus-visible .proj-shot-tag{opacity:1;transform:none}.proj-links{flex-wrap:wrap;gap:10px 22px;margin-top:22px;display:flex}.proj-link{border-bottom:1px solid;font-size:14px;font-weight:500;line-height:1.3;transition:color .3s;display:inline-block}.proj-link:hover{color:var(--accent)}.proj-desc{max-width:640px;color:var(--ink);opacity:.85;margin-bottom:30px;font-size:clamp(1.02rem,1.3vw,1.2rem);line-height:1.5}.meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 36px;max-width:640px;display:grid}.meta dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:11px;font-weight:500}.meta dd{color:var(--ink);font-size:15px;font-weight:500}.proj-art{aspect-ratio:3/2;align-self:start;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.proj-seal{aspect-ratio:1;object-fit:cover;background:#fff;border:3px solid #fff;border-radius:50%;width:58%;height:auto;position:relative;box-shadow:0 14px 34px #00000047}.exp{border-bottom:1px solid var(--line-strong);grid-template-columns:70px minmax(0,1fr) minmax(0,1.15fr);gap:40px;padding:38px 0;display:grid}.exp-main{position:relative}.exp-logo-slot{align-items:flex-end;display:flex;position:absolute;top:0;bottom:4px;right:3%}.exp-logo{cursor:var(--cursor-hand);background:#fff;width:clamp(96px,11vw,150px);display:block;box-shadow:0 22px 50px #00000038}.exp-logo.wide{width:clamp(120px,12vw,172px)}@media (width>=1600px){.exp-logo-slot{align-items:center;bottom:0}}.exp-logo img{object-fit:cover;width:100%;height:100%;display:block}.exp-role{font-family:var(--display);letter-spacing:-.02em;font-size:clamp(1.8rem,3.1vw,2.8rem);font-weight:500;line-height:1.05}.exp-company{color:var(--accent);margin:6px 0 12px;font-size:1.15rem;font-weight:500}.exp-detail ul:first-child{color:var(--ink);opacity:.82;gap:12px;margin-bottom:22px;font-size:1.02rem;display:grid}.exp-detail li{padding-left:18px;position:relative}.exp-detail ul:first-child li:before{content:"–";position:absolute;left:0}.exp-detail .chips li{padding:6px 12px}.award{border-bottom:1px solid var(--line-strong);cursor:var(--cursor-arrow);grid-template-columns:130px 250px minmax(0,1fr) auto;align-items:center;gap:24px;padding:26px 14px 26px 0;transition:color .45s,padding .5s cubic-bezier(.22,1,.36,1);display:grid;position:relative;overflow:hidden}.award>*{z-index:1;position:relative}.award-fill{background:var(--ink);transform-origin:bottom;transition:transform .55s cubic-bezier(.76,0,.24,1);inset:0;transform:scaleY(0);z-index:0!important;position:absolute!important}.award:hover .award-fill{transform:scaleY(1)}.award:hover{color:var(--bg);padding-left:18px}.award:hover .label{color:inherit;opacity:.65}.award-place{font-family:var(--display);letter-spacing:-.03em;color:var(--accent);font-size:clamp(2rem,3.8vw,3.3rem);font-weight:500;line-height:1}.award-info{flex-direction:column;gap:2px;display:flex}.award-info b{font-family:var(--display);letter-spacing:-.01em;font-size:clamp(1.2rem,1.8vw,1.6rem);font-weight:500}.award-info span{opacity:.65;font-size:14px}.award-links{flex-wrap:wrap;justify-content:flex-end;gap:8px 20px;font-size:14px;font-weight:500;display:flex}.award-links a{border-bottom:1px solid;line-height:1.3;transition:color .3s,opacity .3s}.award-links a:hover{color:var(--accent)}.duo{grid-template-columns:1fr 1fr;gap:20px;margin-top:44px;display:grid}.duo-panel{aspect-ratio:639/381;border:1px solid var(--line-strong);position:relative;overflow:hidden}.pub{color:#0a0a0a;flex-direction:column;justify-content:space-between;padding:26px;display:flex;position:absolute;inset:0}.pub-label{color:#0a0a0ab3}.pub h3{font-family:var(--display);letter-spacing:-.02em;max-width:54%;font-size:clamp(1.5rem,2.4vw,2.3rem);font-weight:500;line-height:1.05}.pub-shot{z-index:2;background:#fff;border:1px solid #0a0a0a2e;width:42%;transition:transform .6s cubic-bezier(.22,1,.36,1);position:absolute;top:50%;right:5%;transform:translateY(-50%)rotate(3.5deg);box-shadow:0 22px 50px #00000047}.pub-shot:hover{transform:translateY(-53%)rotate(.5deg)}.pub-shot img{width:100%;height:auto;display:block}.pub-shot span{background:var(--ink);color:var(--bg);letter-spacing:.04em;text-transform:uppercase;padding:6px 10px;font-size:11px;font-weight:500;display:block}.certs-panel{flex-direction:column;padding:26px;display:flex}.certs{flex-direction:column;flex:1;justify-content:space-between;margin-top:10px;display:flex}.certs li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;display:flex}.certs li:last-child{border-bottom:none;padding-bottom:0}.cert-t{font-size:clamp(1rem,1.35vw,1.2rem);font-weight:500}.certs .label{text-align:right}.cert-r{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.duo-text{max-width:600px;color:var(--muted);margin-top:26px;font-size:1.02rem;line-height:1.55}.duo-text em{color:var(--ink);font-style:normal;font-weight:500}.skills{background:var(--inv-bg);color:var(--inv-ink);margin-top:clamp(80px,12vw,170px);padding:clamp(70px,9vw,130px) 0 clamp(70px,9vw,120px);transition:background-color .5s,color .5s}.skill-rows{border-top:1px solid var(--inv-line);margin-top:56px}.skill{border-bottom:1px solid var(--inv-line);grid-template-columns:108px minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:24px;padding:48px 0;display:grid}.skill-n{color:var(--inv-muted);font-size:15px}.skill-t{font-family:var(--display);letter-spacing:-.02em;font-size:clamp(1.9rem,3.7vw,3.4rem);font-weight:500;line-height:1.05;transition:transform .6s cubic-bezier(.22,1,.36,1)}.skill:hover .skill-t{transform:translate(16px)}.skill-d{color:var(--inv-muted);font-size:1.05rem;line-height:1.55;transition:color .4s}.skill:hover .skill-d{color:var(--inv-ink)}.contact{min-height:100svh;padding:110px var(--pad);place-items:center;display:grid;position:relative;overflow:hidden}.sky{background:linear-gradient(#2a5ba6 0%,#5f93cf 50%,#cfe2f4 100%);position:absolute;inset:0}.cloud{filter:blur(50px);opacity:.88;background:#fff;border-radius:50%;animation:38s ease-in-out infinite alternate cloud;position:absolute}.c1{width:40vw;height:14vw;top:58%;left:-8vw}.c2{width:32vw;height:12vw;animation-duration:46s;animation-direction:alternate-reverse;top:18%;right:-6vw}.c3{width:46vw;height:16vw;animation-duration:52s;bottom:-6vw;left:30%}.c4{width:28vw;height:10vw;animation-duration:58s;animation-direction:alternate-reverse;top:6%;left:6%}@keyframes cloud{to{transform:translate(11vw)}}.card-form{background:var(--inv-bg);width:min(780px,100%);color:var(--inv-ink);padding:clamp(24px,4.6vw,52px);transition:background-color .5s,color .5s;position:relative}.card-form .label{color:var(--inv-muted)}.form-title{font-family:var(--display);letter-spacing:-.01em;margin:24px 0 14px;font-size:clamp(2.5rem,6.2vw,4.4rem);font-weight:500;line-height:1}.form-or{color:var(--inv-muted);margin-bottom:38px}.form-or a{color:var(--inv-ink);border-bottom:1px solid;font-weight:500;transition:color .3s}.form-or a:hover{color:var(--accent)}.fields{grid-template-columns:1fr 1fr;gap:26px 36px;display:grid}.fields label{flex-direction:column;gap:4px;display:flex}.fields label.wide{grid-column:1/-1}.fields span{letter-spacing:.06em;text-transform:uppercase;color:var(--inv-muted);font-size:11px;font-weight:500}.fields input,.fields select{border:0;border-bottom:1px solid var(--inv-line);color:inherit;font:inherit;background:0 0;border-radius:0;outline:none;padding:10px 0 12px;font-size:18px;transition:border-color .3s}.fields input::placeholder{color:var(--inv-muted);opacity:.8}.fields input:focus,.fields select:focus{border-bottom-color:var(--accent)}.fields select option{background:var(--inv-bg);color:var(--inv-ink)}.form-foot{flex-wrap:wrap;align-items:center;gap:22px;margin-top:34px;display:flex}.form-foot small{color:var(--inv-muted);font-size:13px}.form-status.sent{color:#4ade80}.form-status.error{color:#fca5a5}.form-status a{color:var(--inv-ink);border-bottom:1px solid}.footer{background:var(--inv-bg);color:var(--inv-ink);padding:clamp(46px,7vw,100px) 0 28px;transition:background-color .5s,color .5s}.fit{white-space:nowrap;width:100%;line-height:1.08;overflow:hidden}.fit span{font-family:var(--display);letter-spacing:-.025em;font-size:100px;font-weight:500;display:inline-block}.foot-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:40px;margin-top:clamp(36px,5vw,60px);display:flex}.foot-tag{font-family:var(--display);text-transform:uppercase;letter-spacing:-.01em;font-size:clamp(1.3rem,2.6vw,2.4rem);font-weight:500;line-height:1.05}.foot-links{text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:24px;font-size:17px;font-weight:500;display:flex}.foot-links a,.foot-links button{text-transform:inherit;font-weight:inherit;transition:color .3s}.foot-links a:hover,.foot-links button:hover{color:var(--accent)}.foot-copy{color:var(--inv-muted);margin-top:clamp(36px,5vw,64px);font-size:14px}.ribbon{position:relative;overflow:hidden}.ribbon-x{height:clamp(150px,26vw,250px);margin-top:clamp(20px,4vw,50px)}.ribbon-x .ribbon-band{margin-top:calc(var(--rb-h) / -2);position:absolute;top:50%;left:-8%;right:-8%}.ribbon-one{padding:clamp(46px,7vw,92px) 0}.ribbon-one .ribbon-band{margin:0 -6%}.ribbon-band{--rb-h:clamp(52px, 9vw, 92px);height:var(--rb-h);will-change:transform;align-items:center;display:flex;overflow:hidden}.rb-track{width:max-content;display:flex}.rb-copy{flex-shrink:0;display:flex}.rb-item{font-family:var(--display);text-transform:uppercase;letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:clamp(18px,3vw,34px);padding-right:clamp(18px,3vw,34px);font-size:clamp(1.6rem,5.2vw,3.4rem);font-weight:600;line-height:1;display:flex}.rb-star{background:currentColor;flex-shrink:0;width:.34em;height:.34em;transform:rotate(45deg)}.rb-ink{background:var(--ink);color:var(--bg)}.rb-accent{background:var(--accent);color:#fff}.rb-outline{color:#0000;-webkit-text-stroke:1.5px var(--ink);border-block:1px solid var(--line-strong);background:0 0}.rb-outline .rb-star{border:1.5px solid var(--ink);background:0 0}.ribbon+.about{padding-top:clamp(50px,8vw,120px)}.ribbon-one+.section{padding-top:clamp(30px,5vw,70px)}.ribbon+.skills{margin-top:0}.float-tiles{z-index:1;pointer-events:none;display:none;position:absolute;inset:0}@media (hover:none),(pointer:coarse){.float-tiles{display:block}}.float-tile{aspect-ratio:1;width:clamp(54px,17vw,78px);transform:rotate(var(--r));animation:5.2s ease-in-out infinite bob;animation-delay:var(--d);background:#fbfaf7;border:1px solid #0a0a0a1f;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;box-shadow:0 12px 28px #0003}.float-tile svg{width:46%;height:auto}.float-tile b{letter-spacing:.02em;color:#0a0a0a;font-size:9px;font-weight:600}@keyframes bob{0%,to{transform:translateY(0) rotate(var(--r))}50%{transform:translateY(-9px) rotate(calc(var(--r) * -.5))}}.spin-badge{z-index:3;aspect-ratio:1;background:var(--ink);width:clamp(86px,24vw,124px);color:var(--bg);pointer-events:none;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:clamp(10px,3%,26px);right:clamp(10px,3%,26px);box-shadow:0 14px 34px #00000047}.spin-badge svg{width:100%;height:100%;animation:18s linear infinite badge-spin;position:absolute;inset:0}.spin-badge text{font-family:var(--body);letter-spacing:.04em;fill:currentColor;font-size:8.4px;font-weight:600}.spin-badge-core{font-family:var(--display);color:var(--accent);font-size:clamp(1.1rem,3.6vw,1.7rem);font-weight:600;position:relative}@keyframes badge-spin{to{transform:rotate(360deg)}}@media (width<=1000px){.stats{grid-template-columns:repeat(3,1fr)}.stat{padding-bottom:22px}.stat:nth-child(4){border-left:none;padding-left:0}.stat-edu{border-left:none;border-top:1px solid var(--line);grid-column:1/-1;padding-left:0}.award{grid-template-columns:110px 160px minmax(0,1fr) auto}}@media (width<=860px){.hero-grid{grid-template-columns:1fr}.hero-left{order:1;padding:40px 0 28px}.hero-photo{aspect-ratio:1;order:0;width:100%;height:auto;min-height:0;max-height:68svh}.hero-stage{width:min(100%,68svh)}.hero{padding-top:84px}.note{width:230px;margin:36px 12px 36px auto;position:relative;top:auto;right:auto}.clients{grid-template-columns:1fr;gap:20px}.clients-art{height:120px;margin-bottom:0}.proj-head{grid-template-columns:minmax(0,1fr) auto;gap:16px}.proj-num{display:none}.proj-body-in{grid-template-columns:1fr;gap:28px}.exp{grid-template-columns:1fr;gap:18px}.exp-logo-slot{margin-top:20px;position:static}.exp-logo{width:110px}.exp-logo.wide{width:170px}.exp-num{display:none}.award{grid-template-columns:84px minmax(0,1fr);gap:6px 14px}.award-date{grid-area:1/1/auto/3}.award-place{grid-area:2/1;font-size:1.7rem}.award-info{grid-area:2/2}.award-links{grid-area:3/2;justify-content:flex-start;margin-top:4px}.duo{grid-template-columns:1fr;gap:56px}.duo-panel:not(.certs-panel){aspect-ratio:auto;min-height:430px}.pub h3{max-width:100%}.pub-shot{width:56%;top:56px;transform:rotate(3deg)}.pub-shot:hover{transform:translateY(-3px)rotate(.5deg)}.skill{grid-template-columns:44px minmax(0,1fr);gap:12px 16px;padding:34px 0}.skill-d{grid-column:2}.fields{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(4){border-left:1px solid var(--line);padding-left:18px}.stat:nth-child(odd){border-left:none;padding-left:0}.stat:nth-child(2n){padding-left:18px}.hero-sign-zone{flex:none;justify-content:flex-start;min-height:0;margin-bottom:6px}.hero-sign{transform-origin:0;width:min(420px,92%);transform:rotate(-7deg)}}@media (width<=600px){.hero-foot span:first-child,.hero-foot span:last-child{display:none}.hero-foot{justify-content:flex-start}}@media (width<=700px){.section{padding-top:64px}.about{padding-top:70px}.ribbon-one{padding:34px 0}.ribbon-one+.section{padding-top:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
