:root{--red:#ed3926;--cream:#f3efdf;--ink:#191916}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid currentColor;outline-offset:6px}em{font-family:Georgia,serif;font-weight:400}header{position:absolute;z-index:10;top:0;width:100%;padding:28px 4%;display:flex;align-items:center;justify-content:space-between;color:var(--cream)}.brand{font-size:14px;font-weight:800;letter-spacing:-.03em}.brand span{display:block;font-size:8px;letter-spacing:.12em;margin-top:5px}header button{background:none;border:1px solid #ffffff60;color:inherit;border-radius:30px;padding:12px 20px;font-size:11px}header button span{margin-left:24px}.hero{height:max(760px,100svh);position:relative;background:var(--red);overflow:hidden;color:var(--cream);padding:115px 4% 30px}.hero-top,.hero-bottom{display:flex;justify-content:space-between;position:relative;z-index:3;font-size:10px;letter-spacing:.08em}.hero h1{position:relative;z-index:2;margin:25px 0 0;line-height:.79;font-weight:900;letter-spacing:-.085em;font-size:clamp(100px,22vw,360px)}.hero h1 span{display:block}.hero h1 .surname{font-size:.46em;letter-spacing:-.07em;margin-top:.12em}.portrait{position:absolute;width:43%;height:76%;bottom:0;right:16%;transform:rotate(-5deg);transform-origin:bottom;will-change:transform;z-index:1;border:12px solid var(--cream);border-radius:46% 46% 0 0;overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;filter:grayscale(1) contrast(1.1)}.hero-bottom{position:absolute;bottom:30px;left:4%;right:4%;align-items:flex-end}.hero-bottom p:first-child{font-size:25px;line-height:1.1;letter-spacing:-.04em}.hero-bottom p:last-child{line-height:2}.hero-bottom span{opacity:.65}.round-link{border:1px solid currentColor;border-radius:50%;width:70px;height:70px;display:grid;place-items:center;font-size:30px;background:var(--red)}.side-note{position:absolute;right:20px;top:45%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.1em}.eyebrow{font-size:10px;letter-spacing:.15em}.intro{padding:110px 7%}.intro h2,.section-title h2,.background h2{font-size:clamp(48px,8vw,130px);line-height:.95;letter-spacing:-.07em;font-weight:700;margin:50px 0}.intro h2 em{color:var(--red)}.intro-bottom{display:grid;grid-template-columns:1fr 2fr 1fr;gap:50px;align-items:center}.intro-bottom p{font-size:19px;line-height:1.6;max-width:480px}.intro-bottom a,.background>a{font-size:11px;border-bottom:1px solid;padding:15px 0}.asterisk{font-size:100px;color:var(--red)}.journey{height:160vh;background:#1b0909;color:var(--cream)}.journey-sticky{height:100svh;position:sticky;top:0;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden}.journey h2{position:relative;text-align:center;font-size:clamp(50px,9vw,145px);line-height:.88;letter-spacing:-.065em;z-index:1}.orb{position:absolute;width:50vw;height:50vw;border-radius:50%;background:repeating-radial-gradient(ellipse at 30% 30%,#e6392430 0%,#ff533350 4%,#140604 8%,#ff694030 12%);box-shadow:0 0 100px #e6392420;transform:rotate(var(--turn,0deg)) scale(var(--scale,1));filter:blur(1px)}.journey .eyebrow{z-index:1}.skills{display:flex;gap:25px;flex-wrap:wrap;justify-content:center;z-index:1;font-size:10px;color:#dfa397}.work{padding:90px 5%}.section-title h2 sup{font:12px Arial;letter-spacing:0;vertical-align:top;margin-left:15px}.project{display:grid;grid-template-columns:1.3fr 1fr;gap:7%;align-items:center;margin:110px 0 140px}.project.reverse{grid-template-columns:1fr 1.3fr}.reverse .project-art{order:2}.project-art{aspect-ratio:1.12;position:relative;overflow:hidden;display:grid;place-items:center;border-radius:3px}.project-copy>span,.tags,.art-label{font-size:9px;letter-spacing:.1em}.project-copy h3{font-size:clamp(32px,4vw,65px);line-height:1;letter-spacing:-.055em;margin:30px 0}.project-copy>p:not(.tags){font-size:15px;line-height:1.7;max-width:360px;color:#625f57}.tags{margin:24px 0 35px;color:#777269}.project-copy a{font-size:10px;border-bottom:1px solid;padding:12px 0;display:inline-block}.project-links{display:flex;gap:25px}.art-label{position:absolute;bottom:20px;left:25px;right:20px;font-size:8px}.tracker-art{background:#dbd9be}.mini-app{background:#f7f6ee;width:82%;padding:25px;transform:rotate(-7deg);box-shadow:0 25px 60px #29291225;border-radius:8px}.mini-nav{font-size:8px;display:flex;justify-content:space-between}.mini-app h3{font-size:30px;letter-spacing:-.04em}.mini-stats{display:flex;gap:25px;align-items:center}.progress-ring{border:9px solid #63763b;border-left-color:#dfe3ce;border-radius:50%;width:105px;height:105px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:27px}.progress-ring span{font-size:6px;margin-top:3px}.bars{display:flex;gap:7px;align-items:flex-end;height:90px;flex:1}.bars i{background:#718445;width:12%;height:45%}.bars i:nth-child(2n){height:70%}.bars i:nth-child(3n){height:95%}.mini-app p{font-size:8px;margin-top:25px;display:flex;justify-content:space-between}.security-art{background:#171d18;color:#b9ed85}.radar{position:absolute;width:65%;aspect-ratio:1;border:1px solid #91c56950;border-radius:50%;background:conic-gradient(from 20deg,transparent 70%,#a2da5120);right:-10%;top:0}.radar i{position:absolute;inset:15%;border:1px solid #91c56940;border-radius:50%}.radar i:nth-child(2){inset:30%}.radar b{position:absolute;inset:45%;font-weight:400}.terminal{font:clamp(11px,1.2vw,18px)/1.8 monospace;position:relative;width:80%}.car-art{background:#e44c2d;color:#ffdbc0}.circuit{width:60%;aspect-ratio:1;border:1px solid #ffdbc060;display:grid;place-items:center;transform:rotate(-12deg);position:relative}.circuit:before,.circuit:after{content:'';position:absolute;inset:12%;border:1px solid}.circuit:after{inset:-12%;opacity:.3}.circuit span{font-size:70px;line-height:.9;font-weight:800;letter-spacing:-.08em}.circuit b{position:absolute;bottom:-30%;font-size:7px;letter-spacing:.12em}.vision-art{background:#bcb5cd;color:#453d63}.vision-art svg{width:80%;transform:rotate(-12deg)}.background{padding:90px 7%;background:#e7e2d4}.background>div{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.background dl{margin:30px 0}.background dt{font-size:9px;letter-spacing:.12em;margin-top:30px}.background dd{margin:10px 0 0;font-size:20px;line-height:1.5}.background small{font-size:12px;color:#696359}footer{padding:80px 5% 25px;background:var(--red);color:var(--cream)}.contact-title{font-size:clamp(70px,15vw,240px);line-height:1.4;letter-spacing:-.07em;display:flex;justify-content:space-between}.contact-title span{font-size:.7em}.footer-links,.footer-end{display:flex;gap:35px;flex-wrap:wrap;font-size:10px}.footer-end{justify-content:space-between;margin-top:90px;padding-top:25px;border-top:1px solid #ffffff50}dialog{border:0;padding:10vh 12%;width:100%;max-width:none;height:100svh;max-height:none;background:var(--cream);color:var(--red)}dialog::backdrop{background:#19191680}dialog nav{display:flex;flex-direction:column}dialog nav>a:not(.menu-mail){font-size:clamp(50px,9vw,130px);letter-spacing:-.07em;line-height:1.05}dialog i{font:10px Arial;letter-spacing:0;vertical-align:top}dialog .menu-mail{font-size:12px;margin-top:35px}#closeMenu{position:absolute;right:5%;top:35px;border:0;background:none;color:inherit;font-size:12px}.skip{position:fixed;top:-80px;z-index:50;padding:15px;background:var(--cream)}.skip:focus{top:0}.reveal{opacity:0;transform:translateY(35px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@media(max-width:800px){.hero{height:850px}.portrait{width:65%;right:12%;height:63%}.hero h1{margin-top:60px}.intro-bottom{grid-template-columns:1fr 3fr;gap:20px}.intro-bottom>a{grid-column:2}.project,.project.reverse{gap:5%}.mini-app{padding:16px}.mini-app h3{font-size:23px}.progress-ring{width:75px;height:75px;font-size:20px}.mini-stats{gap:10px}.background>div{gap:5%}}@media(max-width:560px){header{padding-top:22px}.brand{font-size:11px}.brand span{font-size:6px}.hero{height:780px;padding-top:100px}.hero-top{font-size:8px}.hero h1{font-size:24vw;margin-top:45px}.hero h1 .surname{font-size:.48em}.portrait{width:85%;right:3%;height:60%;border-width:8px}.hero-bottom p:first-child{font-size:19px;max-width:130px}.hero-bottom p:last-child{display:none}.round-link{width:50px;height:50px}.side-note{display:none}.intro,.work,.background{padding:65px 6%}.intro h2{margin:35px 0}.intro-bottom{grid-template-columns:1fr}.intro-bottom .asterisk{display:none}.intro-bottom>a{grid-column:1;justify-self:start}.intro-bottom p{font-size:16px}.journey{height:125vh}.journey h2{font-size:15vw}.orb{width:100vw;height:100vw}.skills{max-width:300px;gap:16px;font-size:9px}.project,.project.reverse{grid-template-columns:1fr;gap:30px;margin:50px 0 80px}.reverse .project-art{order:0}.project-copy h3{font-size:42px;margin:20px 0}.project-copy>p:not(.tags){max-width:none}.project-art{aspect-ratio:1.05}.mini-app{padding:25px}.mini-app h3{font-size:30px}.background>div{grid-template-columns:1fr}.background h2{margin:30px 0}.background dl{margin:0 0 35px}.contact-title{font-size:21vw}.footer-links{gap:24px}.footer-end{font-size:8px;margin-top:60px}dialog{padding:20vh 8%}dialog nav>a:not(.menu-mail){font-size:17vw}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.portrait,.orb{transform:none!important}}
@media(min-width:801px){.portrait{right:3%;width:40%}.hero h1{font-size:20vw}.hero h1 .surname{font-size:.42em}}
@media(min-width:561px) and (max-width:800px){.portrait{height:50%}}
/* Cinematic opening and continuous scroll choreography */
@font-face{font-family:Signature;src:url('Allura-Regular.ttf') format('truetype');font-display:swap}
body{background:#100909}main{position:relative;z-index:1}.js #opening{display:grid}#opening{display:none;position:fixed;inset:0;z-index:100;background:#080909;color:#dcccab;place-items:center;clip-path:circle(150% at 50% 50%)}.opening-inner{text-align:center;transform:translateY(-2%)}.opening-note,.opening-bottom{font-size:8px;letter-spacing:.24em;opacity:0;animation:openingSmall .8s .6s forwards}.signature{font-family:Signature,'Segoe Script',cursive;font-weight:400;font-size:clamp(48px,8vw,120px);line-height:1.4;clip-path:inset(0 100% 0 0);animation:writeName 1.9s .15s cubic-bezier(.3,0,.2,1) forwards;padding:0 25px}.signature-stroke{display:block;margin:-18px auto 30px;width:65%;height:40px;fill:none;stroke:#dcccab;stroke-width:1;stroke-dasharray:1;stroke-dashoffset:1;animation:writeStroke 1s 1.4s forwards}.opening-bottom{animation-delay:1.5s;font-size:7px}#skipIntro{position:absolute;bottom:35px;right:5%;border:0;background:none;color:#dcccab;font-size:10px;padding:15px}#opening.departing{animation:openCurtain 1.3s cubic-bezier(.76,0,.24,1) forwards}#opening.departing .opening-inner{transform:scale(1.12);opacity:0;transition:transform .7s,opacity .45s}.intro-complete #opening{display:none}.opening-running{overflow:hidden}.opening-running main,.opening-running header{pointer-events:none}.opening-running .hero-stage{transform:scale(1.08)}.hero-stage{transition:transform 1.6s cubic-bezier(.16,1,.3,1)}@keyframes writeName{to{clip-path:inset(0 0 0 0)}}@keyframes writeStroke{to{stroke-dashoffset:0}}@keyframes openingSmall{to{opacity:.65}}@keyframes openCurtain{0%{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}100%{clip-path:polygon(0 0,100% 0,100% 0,0 0)}}
#flowCanvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.reading-line{position:fixed;left:0;top:0;height:2px;background:#e5cea6;width:var(--read,0%);z-index:80;pointer-events:none}.hero{height:185svh;min-height:0;padding:0;background:transparent;overflow:visible}.hero-stage{position:sticky;top:0;height:100svh;min-height:720px;padding:115px 4% 30px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 50% 55%,#ff5031,#d42319 90%);border-radius:0 0 var(--hero-radius,0px) var(--hero-radius,0px)}.hero h1{will-change:transform;transform:translate3d(var(--name-x,0px),var(--name-y,0px),0);opacity:var(--name-opacity,1)}.hero-orbit{position:absolute;width:55vw;height:55vw;border:1px solid #f9ecd470;border-radius:48% 42% 51% 39%;right:1%;top:12%;z-index:0;transform:rotate(var(--orbit-turn,0deg));box-shadow:0 0 0 25px #f9ecd408,0 0 0 80px #f9ecd408}.portrait{z-index:1}.hero h1{z-index:2}.intro{position:relative;background:var(--cream);margin-top:-1px;border-radius:var(--intro-radius,0px) var(--intro-radius,0px) 0 0}.intro h2{background:linear-gradient(95deg,#191916 var(--ink-progress,100%),#bdb8ab var(--ink-progress,100%));background-clip:text;color:transparent}.intro h2 em{color:inherit}.journey{height:360svh;background:transparent;position:relative}.journey-sticky{background:radial-gradient(ellipse,transparent,#10090955);min-height:600px}.chapter-scene{position:relative;width:100%;height:62%;display:grid;place-items:center}.motion-chapter{position:absolute;text-align:center;width:94%;opacity:0;pointer-events:none;transform:translateY(55px) scale(.93);filter:blur(8px);transition:opacity .65s,transform .85s cubic-bezier(.16,1,.3,1),filter .65s}.motion-chapter.active{opacity:1;transform:translateY(0) scale(1);filter:blur(0);pointer-events:auto}.motion-chapter>span{font-size:9px;letter-spacing:.19em;color:#ebcdb1}.motion-chapter h2{margin:28px 0;font-size:clamp(55px,8.5vw,132px);line-height:.92}.motion-chapter h2 em{font-family:Signature,Georgia,cursive;letter-spacing:-.015em;line-height:1.1;font-size:1.12em}.motion-chapter p{font-size:11px;letter-spacing:.06em;color:#d5b7a7}.motion-chapter a{display:inline-block;font-size:9px;margin-top:17px;padding-bottom:10px;border-bottom:1px solid #d5b7a760}.chapter-rail{display:flex;gap:9px;margin-top:20px}.chapter-rail i{height:2px;width:35px;background:#ffffff30}.chapter-rail i.active{background:#ebcdb1}.scroll-caption{font-size:8px;letter-spacing:.15em;position:absolute;bottom:35px;color:#d5b7a7}.work{background:linear-gradient(#10090900,#100909c9 10%,#100909e8);color:var(--cream);position:relative;padding-top:130px}.section-title{position:relative;z-index:1}.section-title h2{transform:translateX(var(--heading-x,0px))}.section-title h2 em{font-family:Signature,Georgia,cursive;font-size:1.25em;letter-spacing:0}.project{perspective:1000px;margin-bottom:180px}.project-art{transform:translateY(var(--art-y,0px)) rotateX(var(--art-tilt,0deg));will-change:transform;box-shadow:0 30px 80px #0003}.project-copy{transform:translateY(var(--copy-y,0px));will-change:transform}.project-copy>p:not(.tags){color:#c3b4a7}.project-copy .tags{color:#ad8f7f}.project-copy h3 em{color:#e3ab81}.background{position:relative;border-radius:var(--bio-radius,0px) var(--bio-radius,0px) 0 0;z-index:2}.background h2 em{font-family:Signature,Georgia,cursive;letter-spacing:0;font-size:1.3em}.contact-title em{font-family:Signature,Georgia,cursive;font-size:1.2em;letter-spacing:0}.footer-end button{color:inherit;border:0;background:none;font-size:10px;padding:0}footer{overflow:hidden;position:relative}.contact-title{transform:translateY(var(--contact-y,0px))}dialog[open]{animation:menuUnfold .55s cubic-bezier(.16,1,.3,1)}dialog nav>a{animation:menuWord .65s both}dialog nav>a:nth-child(2){animation-delay:.06s}dialog nav>a:nth-child(3){animation-delay:.12s}dialog nav>a:nth-child(4){animation-delay:.18s}@keyframes menuUnfold{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}@keyframes menuWord{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@media(max-width:800px){.hero-stage{height:100svh;min-height:850px}.hero-orbit{width:90vw;height:90vw;right:-15%;top:25%}.journey{height:320svh}.project{margin-bottom:110px}.motion-chapter h2{font-size:10vw}}@media(max-width:560px){.hero{height:145svh}.hero-stage{min-height:780px;padding-top:100px}.hero-orbit{top:35%;width:110vw;height:110vw;right:-10%}.signature{font-size:58px;padding:0 10px}.signature-stroke{margin-top:-10px}.opening-note{font-size:7px}.opening-bottom{font-size:6px}.journey{height:310svh}.journey-sticky{min-height:560px}.motion-chapter h2{font-size:13vw}.motion-chapter>span{font-size:8px}.motion-chapter p{font-size:9px}.work{padding-top:65px}.project{margin-bottom:90px}.project-art{will-change:auto}.footer-end button{font-size:8px}.hero-bottom{bottom:28px}.hero-bottom p:first-child{background:#d52b20cc;padding:10px;border-radius:3px}}@media(prefers-reduced-motion:reduce){.js #opening{display:none}.opening-running{overflow:auto}.hero{height:auto}.hero-stage{position:relative;transform:none!important;border-radius:0}.hero h1,.project-art,.project-copy,.section-title h2,.contact-title{transform:none!important;opacity:1!important}.hero-orbit{transform:none!important}.journey{height:auto}.journey-sticky{position:relative;height:auto;padding:80px 5%;min-height:0}.chapter-scene{display:block;height:auto}.motion-chapter{position:relative;opacity:1;transform:none;filter:none;pointer-events:auto;margin:65px auto}.chapter-rail,.scroll-caption{display:none}.motion-chapter,.hero-stage,dialog,dialog nav>a{animation:none;transition:none}.intro h2{color:var(--ink);background:none}}
html,body{overflow-x:clip}@media(min-width:561px){.hero-stage{min-height:620px}}
@media(min-width:561px) and (max-width:800px){.hero-stage{min-height:780px}.portrait{height:45%}}
.hero-bottom p{background:#d62b20d9;padding:9px 12px;border-radius:3px}
/* Profile 2.0 — editorial refinement */
header{position:fixed;padding:23px 4%;transition:background .35s,padding .35s,backdrop-filter .35s}header.scrolled{background:#110b0beb;backdrop-filter:blur(16px);padding-top:14px;padding-bottom:14px;border-bottom:1px solid #fff1}.brand{letter-spacing:.01em}.hero-stage{background:radial-gradient(ellipse at 72% 38%,#ff6847 0,#e83b28 46%,#bd231d 100%);min-height:720px;isolation:isolate}.hero h1{font-size:clamp(78px,12vw,180px);line-height:.8;margin-top:65px;width:57%;letter-spacing:-.075em}.hero h1 .surname{font-size:.94em;line-height:.85;letter-spacing:-.075em;margin-top:.08em}.name-period{display:inline!important;color:#58211c}.portrait{right:-1%;bottom:0;width:52%;height:88%;border:0;border-radius:0;overflow:visible;mix-blend-mode:multiply;mask-image:linear-gradient(to bottom,black 80%,transparent 100%);transform: none}.portrait img{object-fit:cover;object-position:center 15%;filter:grayscale(1) contrast(1.18);border-radius:0;clip-path:inset(1%);mask-image:linear-gradient(to right,transparent,black 10%,black 93%,transparent)}.portrait-caption{position:absolute;bottom:12%;right:10%;font:8px monospace;letter-spacing:.12em;color:#30120c;writing-mode:vertical-rl}.hero-orbit{width:60vw;height:60vw;right:-14%;top:3%;border-color:#ffe1bf50;box-shadow:0 0 0 35px #ffdfbb05,0 0 0 70px #ffdfbb06}.hero-bottom{gap:30px}.hero-bottom p{background:none;padding:0}.hero-bottom p:first-child{font-size:20px;max-width:220px;line-height:1.25}.hero-bottom p:last-child{color:#ffe8d1;font-size:8px;text-shadow:0 1px 8px #611a15}.hero-bottom .round-link{margin-left:auto;margin-right:20%;background:#f3efdf;color:#bb2c20;border:0;transition:transform .3s,background .3s}.round-link:hover{transform:rotate(45deg)}.hero-top{font-size:9px}.intro{padding-top:95px;padding-bottom:95px}.intro-bottom a{justify-self:start}.intro h2{letter-spacing:-.065em}.intro h2 em{font-family:Signature,Georgia,cursive;letter-spacing:0;font-size:1.1em}.journey{height:325svh}.motion-chapter h2{font-size:clamp(48px,7.6vw,115px)}.motion-chapter p{color:#f0d8c5}.motion-chapter a{transition:color .25s,border-color .25s}.motion-chapter a:hover{color:white;border-color:white}.section-title h2{margin-bottom:45px}.project-index{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 30px;border-bottom:1px solid #f3efdf30}.project-index a{font-size:10px;letter-spacing:.03em;border:1px solid #f3efdf30;padding:12px 18px;border-radius:30px;transition:color .25s,background .25s}.project-index a:hover{background:var(--cream);color:var(--ink)}.project{margin-top:90px;margin-bottom:100px;padding-bottom:90px;border-bottom:1px solid #f3efdf25;gap:6%;grid-template-columns:1.25fr 1fr}.project.reverse{grid-template-columns:1fr 1.25fr}.project-art{aspect-ratio:1.02;border-radius:18px;outline:1px solid #ffffff14;transition:box-shadow .4s}.project-art:hover{box-shadow:0 35px 100px #0006}.project-copy>span{color:#dfad88}.project-copy h3{margin:22px 0;font-size:clamp(34px,3.8vw,60px)}.project-copy>p:not(.tags){font-size:14px}.project-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px;padding-top:20px;border-top:1px solid #f3efdf20}.project-facts span{font-size:8px;letter-spacing:.1em;color:#ab8b77}.project-facts strong{display:block;margin-top:9px;font-size:12px;line-height:1.5;font-weight:400;letter-spacing:0;color:#e3d7c8}.project-links{gap:20px}.project-copy a{transition:color .2s,padding .2s}.project-copy a:hover{color:#ffb28b;padding-left:5px}.mini-app{transition:transform .6s cubic-bezier(.2,.8,.2,1)}.tracker-art:hover .mini-app{transform:rotate(-2deg) translateY(-5px)}.radar{background:conic-gradient(from var(--radar-angle,20deg),transparent 70%,#a2da5133)}.security-art:hover .radar{animation:radarSweep 7s linear infinite}.circuit{transition:transform .8s cubic-bezier(.2,.8,.2,1)}.car-art:hover .circuit{transform:rotate(3deg) scale(1.04)}.vision-art svg{transition:transform .8s}.vision-art:hover svg{transform:rotate(0deg) scale(1.06)}.work{padding-bottom:0}.work .project:last-child{border-bottom:0;margin-bottom:0;padding-bottom:120px}.background>div{gap:8%}footer{background:radial-gradient(ellipse at 80% 20%,#f85332,#d52a20)}.contact-title{line-height:1.2;margin:35px 0 55px}.footer-links a{padding:10px 0;border-bottom:1px solid transparent}.footer-links a:hover{border-color:currentColor}.footer-end{margin-top:55px}#replayIntro{min-height:32px}.signature{font-size:clamp(55px,8vw,120px);line-height:1.6}.signature-stroke{margin-top:-20px}.opening-note{letter-spacing:.3em}.opening-inner{padding:20px}.opening-bottom{margin-top:15px}@keyframes radarSweep{to{transform:rotate(360deg)}}
@media(min-width:801px) and (max-height:760px){.hero-stage{min-height:660px}.hero h1{margin-top:40px;font-size:11vw}.hero-bottom p:first-child{font-size:18px}}
@media(max-width:800px){.hero-stage{min-height:760px}.hero h1{font-size:16vw;margin-top:65px;width:61%}.portrait{width:65%;height:71%;right:-12%}.hero-bottom p:last-child{display:none}.hero-bottom .round-link{margin-right:0}.hero-orbit{width:100vw;height:100vw;right:-35%;top:20%}.project,.project.reverse{gap:5%}.project-facts{grid-template-columns:1fr;gap:15px}.project-art{border-radius:12px}.motion-chapter h2{font-size:9vw}}
@media(max-width:560px){header{padding:20px 6%}.hero-stage{padding-top:95px;min-height:740px}.hero{height:135svh}.hero h1{font-size:21vw;margin-top:55px;position:relative;width:88%;line-height:.85}.hero h1 .surname{font-size:.76em;line-height:.9}.portrait{right:-20%;width:90%;height:64%;bottom:0;opacity:.9}.hero-orbit{width:120vw;height:120vw;right:-40%;top:30%}.hero-bottom{left:6%;right:6%;bottom:24px}.hero-bottom p:first-child{font-size:15px;max-width:170px;text-shadow:0 2px 8px #b22820}.hero-bottom .round-link{width:48px;height:48px;font-size:24px}.portrait-caption{display:none}.hero-top{font-size:7px}.intro{padding:70px 6%}.intro h2{font-size:13vw}.journey{height:295svh}.motion-chapter h2{font-size:11.5vw}.motion-chapter h2 em{font-size:1.32em}.project,.project.reverse{grid-template-columns:1fr;gap:34px;margin-top:45px;padding-bottom:55px;margin-bottom:55px}.project-art{aspect-ratio:1.12}.project-facts{grid-template-columns:1fr 1fr}.project-index{gap:7px}.project-index a{font-size:9px;padding:10px 12px}.project-copy h3{font-size:40px}.project-copy>p:not(.tags){font-size:14px}.work .project:last-child{padding-bottom:75px}.section-title h2{font-size:14vw}.signature{font-size:55px;white-space:nowrap}.opening-inner{padding:8px}.contact-title{margin:25px 0 30px}.footer-links{gap:20px}}
@media(prefers-reduced-motion:reduce){.hero{height:auto}.portrait{transform:none!important}.mini-app,.circuit,.vision-art svg,.round-link,.project-art{transition:none!important}.radar{animation:none!important}.journey{height:auto}}
.tracker-art{color:#303728}.mini-app h3 em{color:#68783f}
.credentials{background:#f3efdf;color:#24231e;padding:100px 6%;position:relative;overflow:hidden}.credential-heading{display:grid;grid-template-columns:1.2fr 1fr;column-gap:10%;align-items:end}.credential-heading>.eyebrow{grid-column:1/-1;color:#8c4131}.credential-heading h2{font-size:clamp(55px,7vw,110px);line-height:.92;letter-spacing:-.065em;margin:32px 0 55px}.credential-heading h2 em{font-family:Signature,Georgia,cursive;color:#bd3525;letter-spacing:0;font-size:1.2em}.credential-heading>p:last-child{max-width:300px;line-height:1.7;font-size:14px;color:#716b5c;margin-bottom:60px}.credential-list{border-top:1px solid #bdb7a5}.credential{position:relative;display:grid;grid-template-columns:45px 1fr 180px;gap:28px;align-items:center;padding:35px 16px;border-bottom:1px solid #cfc8b7;transition:background .3s,transform .7s,opacity .7s}.credential:hover{background:#e8e1cf}.credential-number{align-self:start;margin-top:3px;font:11px monospace;color:#a79d87}.credential-type{font-size:8px;letter-spacing:.14em;color:#9a4937}.credential h3{font-size:clamp(24px,3vw,44px);line-height:1.08;font-weight:500;letter-spacing:-.04em;margin:12px 0}.credential p{font-size:13px;margin:8px 0;color:#5d594e}.credential-detail{font-size:11px;color:#797264}.credential-end{display:flex;flex-direction:column;align-items:flex-end;gap:20px}.credential-end strong{font-size:54px;font-weight:400;letter-spacing:-.06em;color:#af3424}.credential-end strong span{font-size:23px}.credential-end>span:last-child,.participation-link{font-size:9px;letter-spacing:.06em}.credential-symbol{font-size:48px;color:#b14a35}.participation{margin-top:25px;background:#e9e3d4;border:0;border-radius:4px}.participation .credential-type{color:#76684a}.participation h3{font-size:clamp(23px,2.8vw,35px)}.participation-link{border-bottom:1px solid #7d725c;padding:12px 0;justify-self:end}.credential-access{font-size:10px;color:#847d6d;margin:23px 0 0;line-height:1.6}dialog nav>a:nth-child(5){animation-delay:.24s}@media(max-width:560px){.credentials{padding:65px 6%}.credential-heading{grid-template-columns:1fr}.credential-heading h2{font-size:15vw;margin-bottom:25px}.credential-heading>p:last-child{margin-bottom:35px;font-size:13px}.credential{grid-template-columns:24px 1fr;gap:12px;padding:26px 5px}.credential h3{font-size:27px}.credential-end{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;gap:15px;margin-top:6px}.credential-end strong{font-size:37px}.credential-symbol{font-size:30px}.participation{padding:25px 12px}.participation-link{grid-column:2;justify-self:start}.credential-detail{font-size:10px}.credential-access{font-size:9px}dialog{padding-top:14vh}dialog nav>a:not(.menu-mail){font-size:14vw}}@media(prefers-reduced-motion:reduce){.credential{transition:none}}
.project-story{grid-column:1/-1;border-top:1px solid #f3efdf25;margin-top:5px}.project-story summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;padding:22px 0;font-size:10px;letter-spacing:.12em}.project-story summary::-webkit-details-marker{display:none}.project-story summary>span:last-child{font-size:20px;transition:transform .25s}.project-story[open] summary>span:last-child{transform:rotate(45deg)}.project-story summary:focus-visible{outline:2px solid #e7b58e;outline-offset:5px}.story-body{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:12px 0 25px;animation:menuWord .4s both}.story-body h4{grid-column:1/-1;font-family:Signature,Georgia,cursive;font-size:42px;font-weight:400;line-height:1.1;color:#e8bda0;margin:0 0 10px}.story-body>div>span{font-size:8px;letter-spacing:.15em;color:#bc8e70}.story-body p{font-size:13px;line-height:1.8;color:#cbbbaf;margin-top:12px}.story-demo{grid-column:1/-1;font-size:10px;text-decoration:underline;text-underline-offset:6px;justify-self:start;padding:4px 0 15px}.building{padding:90px 6%;background:#251c17;color:#eee4d4;border-top:1px solid #70544340}.building-label{font-size:9px;letter-spacing:.12em;display:flex;align-items:center;gap:10px}.status-dot{display:block;width:6px;height:6px;background:#c9e68d;border-radius:50%;box-shadow:0 0 0 5px #c9e68d10}.building-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;margin-top:35px}.building h2{font-size:clamp(58px,8vw,120px);letter-spacing:-.07em;line-height:1;margin:0 0 20px}.building h2 em{font-family:Signature,Georgia,cursive;color:#ecb591;letter-spacing:0}.building-lead{font-size:22px!important;line-height:1.35!important;color:#eee4d4!important;letter-spacing:-.02em}.building p{font-size:14px;line-height:1.8;color:#c8b5a5;max-width:460px}.building a{display:inline-block;font-size:10px;border-bottom:1px solid #ad8061;padding:12px 0;margin-top:15px}.building-flow{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid #80644f50;padding-top:30px;margin-top:45px;font:10px monospace;letter-spacing:.03em;color:#d1b49a}.building-flow b{font-weight:400;color:#8b6750}.community{padding:95px 6% 110px;background:#e9e2d3;color:#25211b}.community-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 10%;align-items:end}.community-heading .eyebrow{grid-column:1/-1;color:#964f3c}.community-heading h2{font-size:clamp(55px,7.5vw,110px);line-height:.95;letter-spacing:-.06em;margin:25px 0 55px}.community-heading h2 em{font-family:Signature,Georgia,cursive;font-size:1.15em;letter-spacing:0;color:#ae3c28}.community-heading>p:last-child{max-width:350px;font-size:14px;line-height:1.8;color:#766c5b;margin:0 0 60px}.community-gallery{display:grid;grid-template-columns:1.08fr 1fr;gap:6%;align-items:start}.community figure{margin:0}.community figure img{display:block;width:100%;object-fit:cover;border-radius:4px}.talk-photo img{aspect-ratio:4/5;height:auto;object-position:50% 30%}.pitch-photo{padding-top:110px}.pitch-photo img{aspect-ratio:4/3;height:auto;object-position:50% 50%}.community figcaption{padding-top:23px}.community figcaption>span{font-size:8px;letter-spacing:.1em;color:#956348}.community h3{font-size:clamp(22px,2.6vw,36px);line-height:1.15;letter-spacing:-.04em;font-weight:500;margin:13px 0}.community figcaption p{font-size:13px;line-height:1.8;color:#716655;max-width:370px}@media(max-width:560px){.story-body{grid-template-columns:1fr;gap:15px}.story-body h4{font-size:35px}.story-body p{margin-bottom:5px}.building,.community{padding:65px 6%}.building-grid,.community-heading{grid-template-columns:1fr;gap:15px}.building h2{font-size:19vw}.building-lead{font-size:20px!important}.building-flow{flex-wrap:wrap;justify-content:flex-start;font-size:8px;gap:12px;line-height:2}.building-flow b:last-of-type{display:none}.community-heading h2{font-size:16vw;margin-bottom:15px}.community-heading>p:last-child{margin-bottom:25px;font-size:13px}.community-gallery{grid-template-columns:1fr;gap:40px}.pitch-photo{padding-top:0}.talk-photo img{aspect-ratio:4/5;object-position:50% 26%}.community h3{font-size:27px}.community figcaption p{font-size:13px}}@media(prefers-reduced-motion:reduce){.story-body{animation:none}.project-story summary>span:last-child{transition:none}}
/* Always-visible stories, isolated from the visual/copy row. */
.project{align-items:start;row-gap:40px}.project-art{align-self:start;min-width:0}.project-copy{align-self:center;min-width:0}.project-story{grid-column:1/-1;display:block;padding:30px 0 0;margin-top:0;border-top:1px solid #f3efdf25;min-width:0}.story-kicker{font-size:8px;letter-spacing:.18em;color:#b89176;margin:0 0 22px}.story-body{animation:none;padding:0;gap:24px 35px}.story-body h4{font-size:clamp(31px,3.8vw,48px);margin-bottom:5px}.story-body>div{border-left:1px solid #ba8b6a35;padding-left:20px}.story-body p{margin:10px 0 0;font-size:13px;line-height:1.8}.story-demo{font-size:9px;margin-top:-5px}.project.reverse .project-art{grid-column:2;grid-row:1;order:0}.project.reverse .project-copy{grid-column:1;grid-row:1}.project.reverse .project-story{grid-row:2}.hero-introduction{position:relative;max-width:320px;padding:16px 0 0;border-top:1px solid #fff5;color:#fff1da}.hero-introduction>span{font-size:8px;letter-spacing:.16em;opacity:.8}.hero-bottom .hero-introduction p{font-size:clamp(18px,2vw,28px);line-height:1.15;letter-spacing:-.025em;margin:12px 0 16px;max-width:none;background:none;padding:0;text-shadow:none;display:block}.hero-introduction em{font-family:Signature,Georgia,cursive;font-size:1.3em}.hero-introduction>a{font-size:9px;letter-spacing:.09em;display:inline-flex;gap:35px;align-items:center;padding:4px 0}.hero-introduction>a span{font-size:17px;opacity:1}.hero-introduction>a:hover{color:white}.hero-bottom{align-items:end}.hero-bottom>.round-link{flex-shrink:0}.project-art .art-label{line-height:1.5}.community-gallery{align-items:start}.community figure img{max-width:100%}@media(max-width:800px){.hero-introduction{max-width:260px}.hero-bottom .hero-introduction p{font-size:22px}.story-body{gap:20px}.story-body>div{padding-left:13px}.hero-bottom .hero-introduction p:last-child{display:block}}@media(max-width:560px){.project{row-gap:27px}.project.reverse .project-art,.project.reverse .project-copy,.project.reverse .project-story{grid-column:1;grid-row:auto}.project.reverse .project-art{order:0}.project-story{padding-top:23px}.story-body{grid-template-columns:1fr;gap:22px}.story-body h4{font-size:36px}.story-body>div{padding-left:16px}.hero-introduction{max-width:230px;background:linear-gradient(90deg,#b5251de0,#b5251d00);padding:12px 8px 4px 0}.hero-introduction>span{font-size:7px}.hero-bottom .hero-introduction p{font-size:18px;line-height:1.25;margin:8px 0}.hero-introduction>a{font-size:8px;padding-top:6px;gap:22px}.hero-bottom .round-link{margin-bottom:8px}.hero-stage{min-height:790px}.hero-bottom{bottom:20px;gap:12px}.project-art{aspect-ratio:1.12}}

/* Portfolio 2.0: course emphasis, contained photo zoom, natural contact spacing. */
.contact-title{justify-content:flex-start;gap:.16em;align-items:baseline}
.contact-title>span{margin-left:auto}
.community-image{overflow:hidden;border-radius:4px}
.community-image img{transition:transform .45s cubic-bezier(.2,.65,.3,1)}
.credential{transition:background .25s,scale .3s ease,box-shadow .3s,transform .7s,opacity .7s;transform-origin:center}
.credential:focus-visible{scale:1.015;background:#e8e1cf;z-index:1;box-shadow:0 10px 28px #24231e12}
@media(hover:hover) and (pointer:fine){
 .credential:hover{scale:1.015;z-index:1;box-shadow:0 10px 28px #24231e12}
 .community figure:hover .community-image img{transform:scale(1.055)}
}
@media(prefers-reduced-motion:reduce){.credential,.community-image img{transition:none}.credential:hover,.credential:focus-visible{scale:1}.community figure:hover .community-image img{transform:none}}
