:root{--bg:#121212;--ink:#191919;--cream:#f2eadb;--paper:#e6dcc8;--yellow:#f3cf3d;--orange:#ee7b30;--green:#86b66e;--red:#d9473b;--blue:#1f4eb4;--teal:#3f9a88;--leaf:#86b66e;--earth:#8c9a70;--purple:#6b49ea;--violet:#3c289c;--lime:#daf65e;--pink:#f2557e;--radius:26px;--gap:18px;--font:"Archivo", "Arial Black", system-ui, sans-serif;--mono:"Space Mono", ui-monospace, Menlo, monospace;--ease:cubic-bezier(.2, .8, .2, 1);--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .7 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");--grain-light:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .7 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E")}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}body{background:var(--bg);color:var(--cream);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;padding-bottom:110px;font-size:16px;line-height:1.5;overflow-x:clip}body:after{content:"";z-index:90;pointer-events:none;background-image:var(--grain-light);opacity:.05;position:fixed;inset:0}a{color:inherit}ul{list-style:none}img,svg{max-width:100%;display:block}:focus-visible{outline:3px solid var(--lime);outline-offset:3px;border-radius:8px}::selection{background:var(--lime);color:var(--violet)}.sprite{width:0;height:0;position:absolute;overflow:hidden}.wrap{max-width:1240px;margin:0 auto;padding:0 clamp(16px,3vw,32px)}.mono{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;font-size:12px;line-height:1.45}.topbar{text-transform:uppercase;letter-spacing:.01em;justify-content:space-between;align-items:center;gap:16px;padding:34px 0 28px;font-size:15px;font-weight:800;font-stretch:112%;display:flex}.topbar a{text-decoration:none}.bento{gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.s-4{grid-column:span 4}.s-5{grid-column:span 5}.s-7{grid-column:span 7}.s-8{grid-column:span 8}.s-12{grid-column:span 12}.card{isolation:isolate;border-radius:var(--radius);color:var(--ink);transition:transform .55s var(--ease), opacity .9s var(--ease), translate .9s var(--ease);padding:clamp(22px,3vw,36px);position:relative;overflow:hidden}.card:after{content:"";z-index:6;border-radius:inherit;pointer-events:none;background-image:var(--grain);opacity:.38;mix-blend-mode:multiply;position:absolute;inset:0}.card--open{overflow:visible}.js .reveal{opacity:0;translate:0 34px}.js .reveal.in{opacity:1;translate:0}@media (hover:hover){.card:hover{transform:translateY(-6px)}.card:hover .spin{rotate:120deg}}.spin{transition:rotate 1.1s var(--ease)}.sec-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin:clamp(64px,9vw,110px) 0 22px;display:flex}.sec-title h2{letter-spacing:-.05em;font-size:clamp(48px,8vw,112px);font-weight:900;line-height:.85}.sec-title sup{letter-spacing:0;color:var(--lime);vertical-align:top;margin-left:.2em;font-size:.28em;font-weight:700}.sec-title .mono{color:#a9a294;text-align:right;max-width:30ch}.pills{flex-wrap:wrap;gap:8px;display:flex}.pill{border:1.5px solid var(--lime);color:var(--cream);border-radius:999px;align-items:center;gap:6px;padding:8px 16px;font-size:15px;font-weight:600;line-height:1.1;display:inline-flex}.pill--on{background:var(--lime);color:var(--violet);border-color:var(--lime)}.id{background:var(--cream);grid-template-columns:minmax(0,.82fr) minmax(0,1.3fr);gap:clamp(18px,2.4vw,30px);padding:18px;display:grid}.id__photo{background:radial-gradient(circle at 70% 18%,#ffffff59,#0000 38%),linear-gradient(160deg,#f7a63b 0%,#f0457a 48%,#6b49ea 100%);border-radius:16px;min-height:360px;position:relative;overflow:hidden}.id__photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.op{filter:drop-shadow(5px 6px #191919d9);width:42%;position:absolute}.op--a{top:9%;right:-6%}.op--b{width:34%;bottom:16%;left:-10%;transform:rotate(140deg)}.monogram{letter-spacing:-.07em;color:var(--cream);text-shadow:6px 6px 0 var(--ink);font-size:clamp(110px,13vw,180px);font-weight:900;font-stretch:90%;line-height:.78;position:absolute;bottom:54px;left:18px}.sticker{background:var(--cream);color:var(--violet);border:2px solid var(--violet);text-transform:uppercase;letter-spacing:.02em;box-shadow:3px 3px 0 var(--violet);border-radius:10px;padding:6px 12px 7px;font-size:17px;font-style:italic;font-weight:900;font-stretch:80%;position:absolute;bottom:16px;right:14px;rotate:-6deg}.sticker i{vertical-align:2px;background:#2bb34a;border-radius:50%;width:8px;height:8px;margin-right:7px;animation:1.8s ease-in-out infinite pulse;display:inline-block}.id__flower{z-index:3;--petal:var(--orange);--core:var(--yellow);width:86px;position:absolute;top:-10px;left:-10px}.id__body{flex-direction:column;gap:18px;min-width:0;padding:14px 10px 6px 0;display:flex}.id__name{letter-spacing:-.055em;flex-wrap:wrap;align-items:center;gap:.1em;font-size:clamp(46px,5.8vw,84px);font-weight:900;line-height:.82;display:flex}.id__name svg{width:.78em;height:.78em;color:var(--violet);--fill:#c9b8ff;transition:rotate .8s var(--ease);flex:none}.id:hover .id__name svg{rotate:-18deg}.id__sub{letter-spacing:-.01em;margin-top:6px;font-size:clamp(18px,2vw,26px);font-weight:800;font-stretch:118%;display:block}.id__bio{color:#2b2b2b;max-width:52ch;font-size:15.5px;line-height:1.5}.id__table{border:2px solid var(--ink);border-radius:4px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.id__table div{padding:9px 12px}.id__table div+div{border-left:2px solid var(--ink)}.id__table dt{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:#555;border-bottom:1.5px solid var(--ink);margin-bottom:6px;padding-bottom:6px;font-size:10.5px}.id__table dd{font-size:14.5px;font-weight:800;line-height:1.25}.id__contacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;display:grid}.id__contacts a{align-items:center;gap:10px;min-width:0;font-size:14px;font-weight:600;text-decoration:none;display:flex}.id__contacts a span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.id__contacts a:hover span{text-underline-offset:3px;text-decoration:underline}.ico{background:var(--ink);width:30px;height:30px;color:var(--cream);border-radius:8px;flex:none;place-items:center;display:grid}.ico svg{width:16px;height:16px}.ticker-wrap{margin:10px 0;padding:26px 0;overflow:hidden}.ticker{background:var(--lime);color:var(--ink);margin:0 -40px;padding:14px 0;overflow:hidden;rotate:-1.4deg;box-shadow:0 8px #00000059}.ticker__track{width:max-content;animation:38s linear infinite marquee;display:flex}.ticker__track span{text-transform:uppercase;letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:22px;padding-right:22px;font-size:clamp(20px,2.4vw,30px);font-weight:900;font-stretch:80%;display:flex}.ticker__track svg{width:22px;height:22px;color:var(--violet)}.exp{background:var(--yellow);grid-template-columns:minmax(0,1.45fr) minmax(0,.9fr);gap:10px 34px;padding-bottom:0;display:grid}.exp__head{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.exp__head h2{letter-spacing:-.06em;font-size:clamp(56px,10.4vw,150px);font-weight:900;line-height:.82}.exp__head .mono{padding-bottom:12px}.exp__list{padding:16px 0 clamp(22px,3vw,36px)}.exp__item{border-top:2px solid var(--ink);grid-template-columns:minmax(0,1fr) auto;gap:6px 28px;padding:22px 0;display:grid}.exp__item h3{letter-spacing:-.035em;font-size:clamp(28px,3.2vw,44px);font-weight:800;line-height:1}.exp__org{margin-top:8px;font-size:16px;font-weight:700}.exp__desc{color:#2b2b2b;max-width:56ch;margin-top:8px;font-size:15px}.exp__meta{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.exp__date{white-space:nowrap;font-size:18px;font-weight:800;font-stretch:112%}.exp__art{place-self:end center;width:min(100%,400px);margin-bottom:-8px;translate:0 -40px}.exp__art .blink{animation:1s step-end infinite blink}.pgrid{gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));grid-template-areas:"den den den den den dik dik dik dik dik dik dik""den den den den den phi phi phi phi phi phi phi""ana ana ana ana ana ana ana stp stp stp stp stp";display:grid}.p-den{grid-area:den}.p-dik{grid-area:dik}.p-phi{grid-area:phi}.p-ana{grid-area:ana}.p-stp{grid-area:stp}.p-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.p-tag{text-transform:uppercase;letter-spacing:.01em;text-align:right;font-size:13px;font-weight:800;line-height:1.2}.p-role{font-size:16px;font-weight:800;line-height:1.25}.p-desc{margin-top:8px;font-size:14.5px;line-height:1.5}.project-mockup{background:var(--cream);border:2px solid var(--ink);min-width:0;box-shadow:5px 6px 0 var(--ink);transition:transform .45s var(--ease);border-radius:14px;padding:7px;overflow:hidden}.project-mockup img{border-radius:7px;width:100%;height:auto}@media (min-width:761px) and (hover:hover) and (prefers-reduced-motion:no-preference){.card:hover .project-mockup{transform:translateY(-4px)rotate(-1deg)}}.p-den{background:var(--orange);color:var(--ink);flex-direction:column;gap:14px;min-height:560px;display:flex}.p-den .p-tag{color:var(--ink)}.p-den__art{width:100%;margin:6px 0 0}.p-den__title{letter-spacing:-.05em;margin-top:0;font-size:clamp(70px,8.6vw,124px);font-weight:800;font-stretch:92%;line-height:1}.p-den__org{letter-spacing:-.01em;font-size:18px;font-weight:700}.p-den .p-role{color:var(--ink)}.p-den ul{gap:6px;max-width:42ch;margin-top:2px;font-size:14.5px;display:grid}.p-den li{padding-left:18px;position:relative}.p-den li:before{content:"";background:var(--lime);border-radius:50%;width:8px;height:8px;position:absolute;top:.6em;left:0}.badge{z-index:8;filter:drop-shadow(0 10px 18px #0006);width:clamp(96px,10vw,128px);position:absolute}.p-den .badge{bottom:-30px;right:-26px}.p-dik{background:var(--blue);color:var(--cream);grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"top top""title art""body art";align-items:end;gap:14px 22px;display:grid}.p-dik .p-top{grid-area:top}.p-dik .p-top svg{width:30px;height:30px}.p-dik__title,.p-phi__title{letter-spacing:-.04em;grid-area:title;font-size:clamp(46px,5.4vw,76px);font-weight:900;font-stretch:72%;line-height:.84}.p-phi__subtitle{letter-spacing:.04em;margin-top:3px;font-size:clamp(14px,1.4vw,18px);font-weight:900;font-stretch:100%;line-height:1.2;display:block}.p-dik__body{grid-area:body}.p-dik .p-desc{color:var(--cream)}.p-dik__art{grid-area:art;place-self:center;width:100%;max-width:230px}.p-phi{color:var(--ink);background:radial-gradient(circle at 82% 20%, #35693f8c, transparent 42%), radial-gradient(circle at 12% 110%, #daf65e73, transparent 40%), var(--leaf);grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"top top""title art""cols art";align-items:end;gap:14px 22px;display:grid}.p-phi .p-tag{color:var(--ink)}.p-phi .p-top{grid-area:top}.p-phi__art{grid-area:art;place-self:center;width:100%;max-width:230px}.p-phi__cols{grid-area:cols}.p-phi .pill:not(.pill--on){color:var(--ink);border-color:var(--ink)}.p-phi__cols{gap:8px;font-size:14.5px;font-weight:400;line-height:1.5;display:grid}.p-phi__cols b{color:var(--ink);font-weight:800}.p-ana{background:linear-gradient(90deg, var(--earth) 0 58%, var(--cream) 58% 100%);grid-template-columns:58% 42%;padding:0;display:grid}.p-ana__text{flex-direction:column;gap:14px;padding:clamp(22px,3vw,36px);display:flex}.p-ana__title{letter-spacing:-.06em;font-size:clamp(48px,5.4vw,78px);font-weight:800;line-height:.82}.p-ana__list{text-transform:uppercase;text-align:right;align-self:flex-end;font-size:13px;font-weight:800;line-height:1.3}.p-ana__art{min-height:280px;position:relative;overflow:hidden}.p-ana__art img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.p-ana__art .ast{z-index:1;width:26px;height:26px;position:absolute;top:18px;right:18px}.p-stp{background:var(--cream);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.chunky{letter-spacing:.005em;text-transform:uppercase;color:var(--yellow);-webkit-text-stroke:7px var(--ink);paint-order:stroke fill;text-shadow:4px 5px 0 var(--ink);font-size:clamp(46px,5.2vw,76px);font-weight:900;font-stretch:62%;line-height:.92}.chunky svg{width:.55em;height:.55em;color:var(--purple);vertical-align:.1em;margin:0 .06em;display:inline-block}.p-stp .mono{color:#555}.project-open{z-index:9;border-radius:inherit;cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;position:absolute;inset:0}.project-open:focus-visible{outline:3px solid var(--ink);outline-offset:-6px}body.project-dialog-open{overflow:hidden}.project-dialog{border:2px solid var(--ink);border-radius:var(--radius);width:min(1100px,100% - 32px);max-width:none;max-height:calc(100dvh - 40px);color:var(--dialog-ink,var(--ink));background:var(--dialog-bg,var(--cream));overscroll-behavior:contain;font-family:var(--font);margin:auto;padding:0;overflow:auto;box-shadow:10px 12px #0006}.project-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0c0c0ccc}.project-dialog__layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:520px;display:grid}.project-dialog__copy{isolation:isolate;flex-direction:column;gap:24px;padding:clamp(26px,4vw,52px);display:flex;position:relative}.project-dialog__copy:after{content:"";z-index:-1;pointer-events:none;background-image:var(--grain);opacity:.3;mix-blend-mode:multiply;position:absolute;inset:0}.project-dialog__eyebrow{align-items:center;gap:10px;padding-right:28px;display:flex}.project-dialog__eyebrow svg{width:24px;height:24px}.project-dialog__title{letter-spacing:-.05em;overflow-wrap:anywhere;font-size:clamp(44px,5.5vw,76px);font-weight:900;line-height:.95}.project-dialog[data-project=dikari] .project-dialog__title{font-size:clamp(32px,4.8vw,64px)}.project-dialog__details{gap:16px;font-size:16px;line-height:1.6;display:grid}.project-dialog__details .p-role{border-block:1.5px solid;padding:14px 0;line-height:1.5}.project-dialog__details ul{gap:12px;padding-left:20px;list-style:outside;display:grid}.project-dialog__tags{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.project-dialog__tags .pill{color:inherit;border-color:currentColor;font-size:13px}.project-dialog__actions{justify-items:start;gap:10px;display:grid}.prototype-link{border:2px solid var(--ink);background:var(--cream);color:var(--ink);box-shadow:4px 4px 0 var(--ink);font:800 15px var(--font);transition:translate .2s var(--ease), box-shadow .2s var(--ease);border-radius:10px;align-items:center;gap:18px;padding:13px 20px;text-decoration:none;display:inline-flex}.prototype-link[href]:hover{box-shadow:2px 2px 0 var(--ink);translate:2px 2px}.prototype-link[aria-disabled=true]{opacity:.65;cursor:default;box-shadow:2px 2px 0 var(--ink)}.prototype-link__note{font-size:12px;line-height:1.5}.project-dialog__media{background:var(--cream);border-left:2px solid var(--ink);min-width:0;color:var(--ink);flex-direction:column;justify-content:center;gap:18px;padding:18px;display:flex}.project-carousel__stage{aspect-ratio:1;touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;border-radius:12px;width:100%;max-height:calc(100dvh - 150px);position:relative;overflow:hidden}.project-carousel__stage[data-dragging=true]{cursor:grabbing}.project-carousel__track{will-change:transform;width:100%;height:100%;transition:transform .45s cubic-bezier(.22,1,.36,1);display:flex}.project-carousel__stage[data-dragging=true] .project-carousel__track{transition:none}.project-carousel__stage img{object-fit:contain;pointer-events:none;border-radius:12px;flex:0 0 100%;width:100%;height:100%}@media (prefers-reduced-motion:reduce){.project-carousel__track{transition:none}}.project-carousel__controls{justify-content:center;align-items:center;gap:12px;display:flex}.project-carousel__controls[hidden]{display:none}.project-carousel__arrow{border:2px solid var(--ink);background:var(--cream);width:44px;height:44px;color:var(--ink);box-shadow:2px 3px 0 var(--ink);cursor:pointer;border-radius:50%;flex:none;font-size:22px}.project-carousel__pagination{justify-items:center;gap:8px;display:grid}.project-carousel__dots{flex-wrap:wrap;justify-content:center;display:flex}.project-carousel__dot{cursor:pointer;background:0 0;border:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.project-carousel__dot:before{content:"";border:1.5px solid var(--ink);background:0 0;border-radius:50%;width:9px;height:9px}.project-carousel__dot[aria-current=true]:before{background:var(--ink)}.project-dialog__close{z-index:2;border:2px solid var(--ink);background:var(--cream);width:44px;height:44px;color:var(--ink);cursor:pointer;box-shadow:2px 3px 0 var(--ink);border-radius:50%;place-items:center;font-size:28px;display:grid;position:absolute;top:12px;right:12px}@media (max-width:760px){.project-dialog__layout{grid-template-columns:1fr;min-height:0}.project-dialog__media{border-left:0;border-top:2px solid var(--ink);padding:14px}.project-dialog__copy{gap:20px;padding:28px 24px}.project-dialog__title{font-size:44px}.project-carousel__stage{max-height:none}}.award{background:var(--yellow);min-height:520px}.award__content{z-index:2;flex-direction:column;gap:18px;max-width:60%;height:100%;display:flex;position:relative}.award__top{z-index:3;text-align:right;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:absolute;top:clamp(22px,3vw,36px);right:clamp(22px,3vw,36px)}.award__top span{font-size:16px;font-weight:600}.clovers{gap:6px;display:flex}.clovers svg{width:26px;height:26px}.award__title{letter-spacing:-.065em;font-size:clamp(64px,8.4vw,124px);font-weight:900;line-height:.8}.award__title i{letter-spacing:-.03em;vertical-align:.62em;margin-left:.04em;font-size:.55em;font-style:italic;font-weight:800}.award__comp{text-transform:uppercase;letter-spacing:.02em;font-size:15px;font-weight:400;line-height:1.35}.award__arrow{width:58px;height:58px}.award__role{text-transform:uppercase;margin-top:auto;font-size:15px;font-weight:800;line-height:1.3}.award__role span{text-transform:none;max-width:40ch;margin-top:6px;font-size:14.5px;font-weight:600;display:block}.award__flowers{transform-origin:50%;z-index:1;width:min(70%,480px);height:auto;position:absolute;bottom:-190px;right:-105px;rotate:15deg}.edu{background:var(--orange);flex-direction:column;gap:16px;display:flex}.edu__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.edu__head h3{letter-spacing:-.055em;font-size:clamp(50px,5.4vw,80px);font-weight:900;line-height:.85}.edu__frame{flex:none;width:64px;rotate:6deg}.edu__school{letter-spacing:-.025em;margin-top:6px;font-size:clamp(22px,2.3vw,30px);font-weight:800;line-height:1.05}.edu__row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;font-size:14.5px;display:flex}.edu__row b{font-size:17px;font-weight:800;font-stretch:112%}.edu__stamp{background:var(--cream);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);text-transform:uppercase;border-radius:10px;align-self:flex-start;margin-top:4px;padding:6px 12px;font-size:16px;font-style:italic;font-weight:900;font-stretch:80%;rotate:-4deg}.edu__op{z-index:-1;width:190px;position:absolute;bottom:-46px;right:-46px;rotate:200deg}.gpa{background:var(--lime);color:var(--violet);box-shadow:5px 5px 0 var(--ink);border-radius:22px;align-self:flex-start;align-items:center;gap:12px;margin-top:auto;padding:12px 20px 12px 14px;display:flex;position:relative}.gpa svg{width:38px;height:38px}.gpa strong{letter-spacing:-.05em;font-size:clamp(44px,4.6vw,62px);font-weight:900;line-height:.9}.gpa small{text-transform:uppercase;font-size:13px;font-weight:700;line-height:1.2}.tools{background:var(--green);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:20px 28px;display:grid}.tools__art{width:100%;max-width:420px}.tools__visual{align-self:stretch;align-items:flex-end;min-width:0;display:flex;position:relative}.tools__monitor{width:100%;max-width:420px;position:relative}.tools__side{flex-direction:column;gap:20px;height:100%;display:flex}.tools__side h3{letter-spacing:-.05em;text-align:right;font-size:clamp(42px,4.2vw,62px);font-weight:900;font-stretch:84%;line-height:.86}.tools__cup{align-self:flex-end;width:52px}.tools__list{gap:0;margin-top:auto;display:grid}.tools__list li{border-top:2px solid var(--ink);justify-content:space-between;gap:12px;padding:9px 0;font-size:15px;font-weight:800;display:flex}.tools__list li span{font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;text-align:right;align-self:center;font-size:11.5px;font-weight:400}.stack{background:var(--violet);color:var(--cream);flex-direction:column;gap:22px;display:flex}.stack h3{letter-spacing:-.05em;font-size:clamp(36px,3.8vw,54px);font-weight:900;line-height:.9}.stack h3 em{color:var(--lime);font-style:italic;font-weight:600}.stack__group{gap:10px;display:grid}.stack__group .mono{color:var(--lime)}.contact{background:var(--lime);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(22px,4vw,56px);margin-top:clamp(64px,9vw,110px);display:grid}.chat{background:var(--violet);color:var(--cream);box-shadow:7px 7px 0 var(--ink);border-radius:20px;flex-direction:column;gap:12px;padding:20px;display:flex;rotate:-1.5deg}.chat__head{align-items:center;gap:10px;display:flex}.chat__avatar{border:2px solid var(--cream);background:linear-gradient(160deg,#f7a63b,#f0457a 50%,#6b49ea);border-radius:50%;place-items:center;width:40px;height:40px;font-size:15px;font-weight:900;display:grid}.chat__head b{font-size:15px;line-height:1.1;display:block}.chat__head small{color:var(--lime);font-size:12.5px}.bubble{border-radius:18px;max-width:88%;padding:12px 16px;font-size:15px;font-weight:600;line-height:1.35}.bubble--in{background:var(--lime);color:var(--ink);border-bottom-left-radius:4px}.bubble--out{background:var(--cream);color:var(--ink);border-bottom-right-radius:4px;align-self:flex-end}.voice{background:#ffffff1a;border-radius:999px;align-items:center;gap:12px;padding:6px 16px 6px 6px;display:flex}.voice__btn{background:var(--lime);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;display:grid}.voice__btn svg{width:14px;height:14px;color:var(--violet)}.wave{flex:1;align-items:center;gap:3px;height:26px;display:flex}.wave i{background:var(--cream);opacity:.85;border-radius:2px;flex:1;max-width:4px;height:35%;animation:1.2s ease-in-out infinite wave}.wave i:nth-child(3n){height:80%}.wave i:nth-child(4n+1){height:55%}.wave i:nth-child(5n+2){height:100%}.voice .mono{font-size:11px}.contact__body{color:var(--violet);flex-direction:column;gap:20px;display:flex;position:relative}.contact__star{width:clamp(60px,7vw,92px);color:var(--violet);animation:4s ease-in-out infinite twinkle;position:absolute;top:-10px;right:0}.contact__body h2{letter-spacing:-.06em;padding-right:80px;font-size:clamp(54px,7.4vw,108px);font-weight:900;line-height:.84}.contact__body h2 em{font-style:italic;font-weight:600}.contact__body p{color:#2a1f6e;max-width:46ch;font-size:16.5px;font-weight:500}.btns{flex-wrap:wrap;gap:10px;display:flex}.btn{border:2px solid var(--violet);transition:transform .3s var(--ease), background .3s, color .3s;border-radius:999px;align-items:center;gap:10px;padding:14px 22px;font-size:15.5px;font-weight:800;text-decoration:none;display:inline-flex}.btn svg{width:18px;height:18px;transition:transform .3s var(--ease)}.btn--solid{background:var(--violet);color:var(--lime)}.btn--ghost{color:var(--violet)}.btn:hover{transform:translateY(-2px)}.btn:hover svg{transform:translate(3px)rotate(-45deg)}.btn--ghost:hover{background:var(--violet);color:var(--lime)}.contact .badge{top:-36px;left:-26px}.foot{text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 28px;padding:44px 0 10px;font-size:14px;font-weight:800;font-stretch:108%;display:flex}.foot .clovers svg{width:22px;height:22px;color:var(--red)}.foot a{text-decoration:none}.foot a:hover{color:var(--lime)}.dock{z-index:80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#3c289ceb;border-radius:999px;align-items:center;gap:2px;padding:6px;display:flex;position:fixed;bottom:16px;left:50%;translate:-50%;box-shadow:0 14px 34px #00000080,inset 0 0 0 1px #ffffff1a}.dock a{color:var(--cream);white-space:nowrap;border-radius:999px;padding:10px 15px;font-size:14px;font-weight:700;text-decoration:none;transition:background .3s,color .3s}.dock a:hover{background:#ffffff1a}.dock a.is-active{background:var(--lime);color:var(--violet)}.dock__home{background:#ffffff1a;place-items:center;width:40px;height:40px;display:grid;padding:0!important}.dock__home svg{width:18px;height:18px;color:var(--lime)}@keyframes blink{50%{opacity:0}}@keyframes marquee{to{transform:translate(-50%)}}@keyframes turn{to{rotate:360deg}}@keyframes sway{0%{rotate:-5deg}to{rotate:6deg}}@keyframes float{50%{translate:0 -8px}}@keyframes beat{0%,to{scale:1}15%{scale:1.22}30%{scale:1}45%{scale:1.14}}@keyframes pulse{50%{opacity:.35}}@keyframes twinkle{50%{rotate:20deg;scale:.82}}@keyframes wave{50%{height:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.js .reveal{opacity:1;translate:none}}@media (max-width:1020px){.s-4,.s-5,.s-7,.s-8{grid-column:span 12}.pgrid{grid-template-areas:"den den den den den den dik dik dik dik dik dik""den den den den den den phi phi phi phi phi phi""ana ana ana ana ana ana ana ana ana ana ana ana""stp stp stp stp stp stp stp stp stp stp stp stp"}.p-dik{grid-template-columns:1fr;grid-template-areas:"top""title""body""art"}.p-dik__art{max-width:200px}.p-phi{grid-template-columns:1fr;grid-template-areas:"top""title""cols""art"}.p-phi__art{max-width:200px}}@media (max-width:760px){.topbar{font-size:13px}.topbar .hide-sm{display:none}.id{grid-template-columns:1fr}.id__photo{min-height:300px}.id__body{padding:6px 4px}.exp{grid-template-columns:1fr}.exp__art{display:none}.exp__item{grid-template-columns:1fr}.exp__meta{text-align:left;order:-1;align-items:flex-start}.pgrid{grid-template-columns:1fr;grid-template-areas:"den""dik""phi""ana""stp"}.p-den{min-height:0}.p-den .badge{bottom:-34px;right:14px}.p-ana{background:linear-gradient(180deg, var(--earth) 0 60%, var(--cream) 60% 100%);grid-template-columns:1fr}.p-ana__art{aspect-ratio:1;min-height:0}.pgrid .project-mockup,.pgrid .p-ana__art,.pgrid img{transition:none;animation:none;transform:none}.p-den,.p-dik,.p-phi{gap:14px;padding:22px;overflow:hidden}.p-den{grid-template-columns:minmax(0,1fr);grid-template-areas:"top""title""org""role""body""art";display:grid}.p-den .p-top{grid-area:top}.p-den__title{grid-area:title}.p-den .p-den__org{grid-area:org}.p-den .p-role{grid-area:role}.p-den ul{grid-area:body}.p-den__art{grid-area:art}.p-den .badge{display:none}.p-dik{grid-template-columns:minmax(0,1fr);grid-template-areas:"top""title""body""art"}.p-phi{grid-template-columns:minmax(0,1fr);grid-template-areas:"top""title""cols""art"}.p-den__art,.p-dik__art,.p-phi__art{width:calc(100% + 44px);max-width:none;box-shadow:none;border:0;border-radius:0;justify-self:start;margin:0 -22px -22px;padding:0}.p-den__art img,.p-dik__art img,.p-phi__art img{aspect-ratio:1;object-fit:cover;border-radius:0;width:100%;height:auto;display:block}.award{min-height:0}.award__content{max-width:none;height:auto}.award__top{text-align:left;align-items:flex-start;margin-bottom:18px;position:static}.award__flowers{width:min(90%,400px);margin:0;position:absolute;bottom:-150px;right:-195px}.tools{grid-template-columns:1fr}.tools__visual{justify-content:center}.tools__side{order:-1}.tools__side h3{text-align:left}.tools__cup{display:none}.contact{grid-template-columns:1fr}.contact__body{order:-1}.contact .badge{top:-30px;left:auto;right:14px}.sec-title .mono{text-align:left}}@media (max-width:520px){.id__table{grid-template-columns:1fr}.id__table div+div{border-left:0;border-top:2px solid var(--ink)}.id__table div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.id__table dt{border:0;margin:0;padding:0}.id__table dd{text-align:right}.id__contacts{grid-template-columns:1fr}.p-phi__cols{grid-template-columns:1fr 1fr}.dock .hide-xs{display:none}.dock a{padding:10px 12px}.foot{flex-direction:column;align-items:flex-start}}
