:root{--bg:#0b0c10;--ink:#f4e9e5;--muted:#aaa5b5;--line:#ffffff20;--lime:#d9b8ae;--peach:#ecc7b6;--lavender:#9990c9}body{font-family:'Space Grotesk',Arial,sans-serif;background:radial-gradient(ellipse at 50% 0,#272332 0,transparent 850px),var(--bg);overflow-x:hidden}header{position:relative;z-index:5;height:100px;border-color:#ffffff13}nav a{transition:color .2s}nav a:hover{color:var(--peach)}.wordmark{color:var(--peach)}.clock,.nav-name span{color:var(--muted)}.hero{min-height:1020px;padding-top:30px;isolation:isolate;--mx:50%;--my:30%}.hero:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(340px circle at var(--mx) var(--my),#b999ec22,transparent 75%)}.hero-top{color:#aaa4b7;font-size:10px}.dot{background:#d5b7ee;box-shadow:0 0 15px #d5b7ee88}.hero-intro{text-align:center;margin:66px auto 23px;color:#b7b0c6;font-size:clamp(16px,2vw,26px);letter-spacing:-.04em}h1{font-family:Tanker,Impact,'Arial Narrow',sans-serif;font-size:clamp(110px,16vw,240px);font-weight:400;line-height:.83;letter-spacing:-.012em;text-align:center;width:100%;margin:0 auto 35px;color:var(--peach);text-shadow:0 12px 65px #d9aef419}h1 em{font:inherit;font-style:normal;background:linear-gradient(180deg,#f3caba 2%,#afa0c7 50%,#544c70 100%);background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:inherit}.asterisk{position:absolute;right:14%;top:3%;font-size:.33em;color:var(--lavender);filter:drop-shadow(0 0 20px #aba0e04d);animation:spin 25s linear infinite}.hero-bottom{width:100%;max-width:740px;margin:0 auto;justify-content:center;text-align:center;gap:30px}.hero-bottom p{font-size:15px;line-height:1.65;color:#b6b0c0}.round-link{border-color:#ffffff30;flex-shrink:0}.round-link:hover{color:#17121e}.small-label{display:none}.archive{position:relative;top:auto;right:auto;width:min(760px,87%);height:355px;margin:38px auto 0;background:transparent;border:0;transition:transform .3s ease;perspective:1100px}.archive-grid{background:radial-gradient(ellipse,#75618a22,transparent 66%)}.archive-caption{left:-8%;top:78px;color:#c4b3d3;font-size:9px;transform:rotate(-90deg)}.archive-caption span{display:none}.paper{width:47%;height:214px;top:45px;left:26%;padding:8px;background:#1b1b24;border:1px solid #ffffff25;border-radius:14px;box-shadow:0 22px 50px #0009;overflow:hidden;color:#bcb5c9}.paper img{height:171px;border-radius:8px;object-fit:cover}.paper span{font-family:'Space Grotesk',sans-serif;font-size:9px;padding-top:10px}.paper-back{transform:translate(190px,-10px) rotate(13deg)}.paper-mid{transform:translate(-190px,-15px) rotate(-13deg)}.paper-front{transform:translate(0,35px) rotate(-2deg)}.archive:hover .paper-back{transform:translate(215px,-30px) rotate(17deg)}.archive:hover .paper-mid{transform:translate(-215px,-30px) rotate(-17deg)}.archive:hover .paper-front{transform:translate(0,58px) rotate(2deg)}.paper:hover{border-color:#e5c1f0;box-shadow:0 15px 55px #a790cc38;z-index:3}.archive-stamp{background:linear-gradient(140deg,#f4c6ba,#9990c9);color:#201b2a;right:-2%;bottom:12%;box-shadow:inset -5px -8px 15px #35214550,0 8px 25px #0008}.archive-foot{left:35%;bottom:0;color:#817b91}.floating-orbit{position:absolute;left:12%;top:310px;transform:rotate(-15deg);animation:bob 7s ease-in-out infinite;pointer-events:none}.chrome-orb{width:82px;height:82px;border-radius:28%;background:radial-gradient(circle at 25% 20%,#fff4dd 0,#e1abc8 20%,#8674be 45%,#343457 65%,#a6e2dc 85%,#c99fb5);box-shadow:inset -7px -8px 13px #171326,0 5px 40px #bba6fc2b;transform:rotate(25deg)}.floating-orbit span{display:block;margin-top:20px;font-size:9px;letter-spacing:.12em;color:#bbafc9}.work,.about,.contact{padding:55px 7% 85px}.eyebrow{color:#9d93ae}.work-heading{align-items:end;margin:55px 0 35px}h2,.about-copy h2,.dialog-intro h2{font-family:Tanker,Impact,'Arial Narrow',sans-serif;font-weight:400;letter-spacing:0;line-height:.97;color:var(--peach)}h2{font-size:clamp(60px,7.8vw,115px)}.work-heading>span{font-size:15px}.filters button{border-color:#ffffff25;color:#b8b0c5;padding:11px 20px}.filters button:hover{background:#ffffff0b;color:white}.filters button.active{background:var(--peach);color:#241c25;border-color:var(--peach)}.projects{gap:54px 30px;perspective:1500px}.project{transition:transform .25s ease;transform-style:preserve-3d;will-change:transform}.project-image{border-radius:16px;background:#20212a;border:1px solid #ffffff18;box-shadow:0 12px 35px #0005}.project-image:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(350px at var(--px,50%) var(--py,50%),#fff2,transparent);opacity:0;transition:opacity .3s}.project:hover .project-image:after{opacity:1}.project-info h3{font-size:22px;color:#e7c5b9}.project-info p,.project-info>span{font-size:11px}.project-image .project-arrow{color:#241c25}.motion-link{padding:35px 0}.motion-link strong{font-size:36px;color:var(--peach)}.about{background:radial-gradient(ellipse at 10% 35%,#2b24394d,transparent 60%),#101115}.portrait{background:#23222b;border:1px solid #ffffff20;border-radius:18px;padding:10px 10px 20px;box-shadow:0 22px 60px #0007}.portrait img{border-radius:10px;filter:grayscale(.2)}.portrait span{color:#c6b9cd}.about-copy h2{font-size:clamp(45px,4.7vw,72px)}.about-copy p{color:#aea8ba}.disciplines span,.text-link,.experience article{border-color:#ffffff22}.experience h3{color:var(--peach)}.contact{background:radial-gradient(ellipse at 50% 100%,#43304888,transparent 75%),#151219}.contact h2{font-size:clamp(65px,9.5vw,145px)}.contact h2 em{font:inherit;color:#a497ce}.contact h2 a:hover{color:#c6b1e3}.contact-bottom{border-color:#ffffff22}.contact-bottom button{border-color:#8c788f;color:#ddc2d3}footer{color:#a39aac}.dialog-bar button{background:#dac0d4;color:#201921}.dialog-intro p{color:#b4aebb}dialog{border:1px solid #66566e;border-radius:18px;background:#131218;box-shadow:0 40px 120px #000a}dialog[open]{animation:enter .35s ease-out}dialog::backdrop{background:#06050be0;backdrop-filter:blur(16px)}.dialog-bar{background:#19171f}.next-project{color:#241e2b;background:linear-gradient(100deg,#e9c4b5,#a698cf)}#dialog-images img{border-radius:8px}.reading-progress{position:fixed;top:0;left:0;height:2px;width:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--peach),var(--lavender));z-index:100;pointer-events:none}.reveal{opacity:0;transform:translateY(35px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:translateY(0)}#cursor,#cursor-label{display:none;pointer-events:none;position:fixed;z-index:9999;left:0;top:0}@media(hover:hover) and (pointer:fine){body.custom-cursor,body.custom-cursor a,body.custom-cursor button{cursor:none}#cursor{display:grid;place-items:center;width:22px;height:22px;color:#d7f3ff;font-size:24px;text-shadow:0 0 5px #4fbaf5,0 0 16px #6ebcff;will-change:transform;opacity:0}#cursor-label{display:block;padding:7px 12px;border-radius:20px;background:#eac8bd;color:#241e2b;font-size:10px;letter-spacing:.1em;opacity:0;transition:opacity .2s}#cursor-label.active{opacity:1}}a:focus-visible,button:focus-visible{outline-color:#ccaaef}@keyframes bob{50%{translate:0 -20px;rotate:8deg}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{from{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:none}}@media(min-width:1500px){.hero{min-height:1200px}.archive{height:380px}.paper{height:235px}.paper img{height:191px}}@media(max-width:1000px){.hero{min-height:980px}.floating-orbit{left:7%;top:260px}.chrome-orb{width:60px;height:60px}.asterisk{right:8%}.paper-back{transform:translate(135px,-10px) rotate(13deg)}.paper-mid{transform:translate(-135px,-15px) rotate(-13deg)}.archive:hover .paper-back{transform:translate(155px,-30px) rotate(17deg)}.archive:hover .paper-mid{transform:translate(-155px,-30px) rotate(-17deg)}}@media(max-width:680px){header{height:78px}.hero{min-height:0;padding-bottom:40px}.hero-intro{margin:45px 0 25px;font-size:15px}h1{font-size:27vw;margin-bottom:25px}.asterisk{right:2%;top:0;font-size:.28em}.floating-orbit{left:4%;top:244px}.chrome-orb{width:35px;height:35px;border-radius:12px}.floating-orbit span{display:none}.hero-bottom{gap:20px}.hero-bottom p{font-size:12px}.hero-top{font-size:8px}.archive{width:100%;height:270px;margin-top:25px}.paper{width:60%;left:20%;top:35px;height:160px;border-radius:10px;padding:6px}.paper img{height:122px}.paper span{font-size:7px}.paper-back{transform:translate(65px,0) rotate(13deg)}.paper-mid{transform:translate(-65px,-5px) rotate(-13deg)}.paper-front{transform:translate(0,30px) rotate(-2deg)}.archive:hover .paper-back{transform:translate(70px,-10px) rotate(15deg)}.archive:hover .paper-mid{transform:translate(-70px,-10px) rotate(-15deg)}.archive:hover .paper-front{transform:translate(0,40px) rotate(2deg)}.archive-caption{display:none}.archive-stamp{width:60px;height:60px;font-size:9px;right:0;bottom:12px}.archive-foot{left:8%;font-size:7px}.work,.about,.contact{padding:35px 6% 55px}.work-heading{margin-top:35px}h2{font-size:65px}.projects{gap:32px}.project-info h3{font-size:20px}.motion-link strong{font-size:28px}.contact h2{font-size:15vw}.about-copy h2{font-size:48px}.filters button{padding:9px 13px}.portrait{width:72%}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.project{transform:none!important}.floating-orbit{animation:none}#cursor,#cursor-label{display:none!important}body.custom-cursor,body.custom-cursor a,body.custom-cursor button{cursor:auto}}

#cursor svg{display:block;overflow:visible;filter:drop-shadow(0 0 3px #4fbaf5) drop-shadow(0 0 7px #6ebcff99)}

.portrait img{display:block;height:auto;max-height:none;object-fit:contain;filter:none}
.experience article{grid-template-columns:1.2fr 1.8fr 1.3fr;align-items:start}
.role-location{grid-column:2 / -1;font-size:10px;color:var(--muted)}
.role-details{grid-column:2 / -1;font-size:12px;line-height:1.75;color:var(--muted)}
.role-details summary{cursor:pointer;color:var(--peach);width:fit-content;padding:5px 0}
.role-details summary:focus-visible{outline:2px solid #ccaaef;outline-offset:4px}
.role-details ul{padding-left:18px;margin:10px 0 0}.role-details li{margin:7px 0}
@media(max-width:1000px){.experience article{grid-template-columns:1fr 1.8fr}.role-location,.role-details{grid-column:2}}
@media(max-width:480px){.role-details{grid-column:1 / -1}}

/* Project layouts: full-width cases and compact visual explorations. */
.work-heading{display:block;text-align:center}.work-heading h2 br{display:none}.work-heading h2{background:linear-gradient(180deg,#edcbbd,#8e859f);background-clip:text;-webkit-text-fill-color:transparent}.work-heading>span{display:block;margin:22px 0 0;font-size:18px;line-height:1.6}.filters{justify-content:center;margin:35px 0 65px}
.projects{display:flex;flex-direction:column;gap:90px;max-width:1080px;margin:0 auto}.project{width:100%;display:block}.project[hidden]{display:none}.project-image{aspect-ratio:16/9;border-radius:18px;background:#111216}.project-image img{object-fit:contain}.project-info{display:grid;grid-template-columns:40px minmax(0,1fr) 42px;gap:22px;padding:28px 5px 0;text-align:left}.project-info h3{font-family:Tanker,Impact,sans-serif;font-size:38px;font-weight:400;line-height:1.1;letter-spacing:0;color:#e6c6ba;margin:0 0 18px}.project-info>.project-index{font-size:13px;color:#eee3dd;padding-top:9px}.project-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.project-tags span{background:#ffffff19;color:#b0a8b5;border-radius:30px;padding:4px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.02em}.project-info .project-client{font-size:12px;color:#a99bad;margin:0 0 9px}.project-info .project-description{font-size:16px;line-height:1.65;color:#aea9b3;margin:0;max-width:900px}.project-info>.project-open{font-size:42px;line-height:1;color:#fff;padding:0;transition:transform .25s}.project:hover .project-open{transform:translateX(6px)}.project-view{position:absolute;right:20px;bottom:20px;background:#f8f2ee;color:#17151c;border-radius:30px;padding:10px 18px;font-family:Tanker,Impact,sans-serif;font-size:22px;opacity:0;transform:translateY(10px);transition:.25s}.project:hover .project-view,.project:focus-visible .project-view{opacity:1;transform:none}.project-side{display:grid;grid-template-columns:1.6fr 1fr;align-items:center;gap:45px}.project-side .project-info{display:block;padding:0}.project-side .project-index{display:block;margin-bottom:14px}.project-side .project-open{display:none}.project-side .project-info h3{font-size:34px}.project-side .project-description{font-size:15px}.project-side .project-view{bottom:24px;right:16px}
.tools-section{padding:65px 0 90px;background:radial-gradient(ellipse at 50% 0,#25213455,transparent 65%),#0b0c10;border-top:1px solid var(--line);overflow:hidden}.tools-heading{position:relative;max-width:1080px;margin:0 auto 50px;text-align:center;padding:0 20px}.tools-heading h2{font-size:86px;background:linear-gradient(180deg,#edcbbd,#8e859f);background-clip:text;-webkit-text-fill-color:transparent}.tools-heading button{position:absolute;right:20px;bottom:0;color:#aaa1b4;background:transparent;border:1px solid #ffffff24;border-radius:20px;padding:7px 12px;font-size:10px}.tools-window{max-width:1200px;margin:auto;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}.tools-track{display:flex;width:max-content;animation:tools-drift 34s linear infinite;will-change:transform}.tools-group{display:flex;gap:12px;padding-right:12px}.tool-card{width:218px;height:174px;flex:none;border:1px solid #ffffff16;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:19px;background:#ffffff01}.tool-icon{width:54px;height:54px;display:grid;place-items:center}.tool-icon>span{display:grid;place-items:center;width:54px;height:54px;background:var(--tool-bg);color:var(--tool-color);border-radius:10px;font:600 29px Arial,sans-serif;letter-spacing:-1px}.tool-icon svg{height:54px;width:36px}.tool-name{font-family:Tanker,Impact,sans-serif;font-size:20px;color:#a8a3ad}.tools-section.paused .tools-track,.tools-window:hover .tools-track{animation-play-state:paused}@keyframes tools-drift{to{transform:translateX(-50%)}}@media(max-width:760px){.projects{gap:60px}.project-info{grid-template-columns:25px minmax(0,1fr) 24px;gap:12px;padding-top:20px}.project-info h3{font-size:29px}.project-info .project-description{font-size:14px}.project-info>.project-open{font-size:30px}.project-tags span{font-size:10px}.project-side{display:block}.project-side .project-info{padding-top:20px}.project-side .project-info h3{font-size:29px}.project-side .project-index{font-size:12px}.project-image{border-radius:12px}.work-heading>span{font-size:15px}.project-view{font-size:17px;padding:8px 14px;opacity:1;transform:none}.tools-section{padding:45px 0 60px}.tools-heading h2{font-size:65px}.tools-heading{margin-bottom:32px}.tool-card{width:170px;height:145px}.tools-heading button{right:6%}.filters{margin-bottom:40px}}
@media(prefers-reduced-motion:reduce){.tools-track{animation:none;transform:none}.tools-window{overflow-x:auto}.tools-group[aria-hidden]{display:none}#tools-toggle{display:none}.tools-track{will-change:auto}}

.ui-icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex-shrink:0;pointer-events:none}.asterisk .ui-icon{width:1em;height:1em}.round-link .ui-icon{width:25px;height:25px}.project-open .ui-icon{width:34px;height:34px}#cursor svg{width:22px;height:22px}dialog #cursor,dialog #cursor-label{position:fixed}.hero-object{position:absolute;pointer-events:none;z-index:3;animation:hero-float 7s ease-in-out infinite;will-change:transform}.hero-object img{display:block;width:100%;height:auto;filter:drop-shadow(0 12px 22px #0005)}.hero-mac{width:clamp(150px,18vw,250px);left:1%;top:210px;transform:rotate(-12deg)}.hero-ps{width:clamp(100px,12vw,170px);right:3%;top:200px;animation-delay:-2s;transform:rotate(14deg)}.hero-pen{width:clamp(100px,11vw,160px);right:9%;top:450px;animation-delay:-4s;transform:rotate(-16deg)}@keyframes hero-float{50%{translate:0 -16px}}@media(max-width:1000px){.hero-mac{left:-2%;width:145px;top:195px}.hero-ps{right:0;width:105px;top:175px}.hero-pen{right:2%;width:100px;top:385px}}@media(max-width:680px){.hero-intro{margin-top:125px}.hero-mac{width:105px;top:40px;left:3%}.hero-ps{width:76px;top:60px;right:5%}.hero-pen{width:70px;top:32px;right:30%}.hero-object{animation-duration:8s}}@media(prefers-reduced-motion:reduce){.hero-object{animation:none;will-change:auto}}

/* Keep the floating objects anchored to the lettering, at a balanced visual scale. */
.hero-title-wrap{position:relative;isolation:isolate;max-width:1280px;margin:0 auto;--object-size:clamp(115px,14vw,195px)}
.hero-title-wrap h1{z-index:2}
.hero-title-wrap .hero-object{width:var(--object-size);height:var(--object-size);z-index:3}
.hero-title-wrap .hero-object img{width:100%;height:100%;object-fit:contain}
.hero-title-wrap .hero-mac{width:calc(var(--object-size)*1.18);left:14%;right:auto;top:7%;bottom:auto;transform:rotate(-12deg)}
.hero-title-wrap .hero-ps{width:calc(var(--object-size)*.91);height:calc(var(--object-size)*.91);right:18%;left:auto;top:-10%;bottom:auto;transform:rotate(14deg)}
.hero-title-wrap .hero-pen{right:15%;left:auto;top:auto;bottom:-7%;transform:rotate(-18deg)}
@media(max-width:1000px) and (min-width:681px){.hero-title-wrap .hero-mac{left:11%}.hero-title-wrap .hero-ps{right:15%}.hero-title-wrap .hero-pen{right:12%}}
@media(max-width:680px){.hero-intro{margin-top:52px;margin-bottom:32px}.hero-title-wrap{--object-size:clamp(82px,24vw,150px)}.hero-title-wrap .hero-mac{left:-5%;top:12%}.hero-title-wrap .hero-ps{right:0;top:-17%}.hero-title-wrap .hero-pen{right:-3%;bottom:-10%}.hero-title-wrap h1{margin-bottom:40px}}

.hero-title-wrap .hero-ai{width:calc(var(--object-size)*.91);height:calc(var(--object-size)*.91);left:18%;right:auto;top:auto;bottom:-7%;transform:rotate(10deg);animation-delay:-3s}
@media(max-width:1000px) and (min-width:681px){.hero-title-wrap .hero-ai{left:15%}}
@media(max-width:680px){.hero-title-wrap .hero-ai{left:1%;bottom:-10%;transform:rotate(10deg)}}
