@font-face{font-family:Manrope;src:url(assets/manrope.ttf) format('truetype');font-weight:200 800;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f7f5f0;color:#292732;font:15px/1.7 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h2{font-size:clamp(34px,4.1vw,58px);font-weight:500;margin-bottom:28px}h3{font-size:23px;font-weight:600}em{font-style:normal;color:#817099}p{color:#65616d}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #7751be;outline-offset:5px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}header{height:94px;display:flex;align-items:center;justify-content:space-between;width:min(1360px,calc(100% - 80px));margin:auto;border-bottom:1px solid #dedbd4;gap:24px}.brand{display:flex;align-items:center;font-weight:800;font-size:28px;letter-spacing:-2px;gap:15px}.brand span{font-size:13px;letter-spacing:0;font-weight:600}.brand:before{content:'';width:7px;height:7px;background:#a18cc5;border-radius:50%}header nav{display:flex;gap:30px;font-size:13px}.contact-top{border-bottom:1px solid #292732;font-size:13px}.hero{padding-top:83px;padding-bottom:70px;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.eyebrow,.section-label{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:9px;color:#766685}.dot{width:7px;height:7px;background:#9a86ba;border-radius:50%}h1{font-size:clamp(70px,7.7vw,110px);font-weight:500;line-height:.99;letter-spacing:-.075em;margin:30px 0}.period{color:#a68bc7}.hero-role{font-size:23px;line-height:1.4;color:#292732;letter-spacing:-.035em;margin-bottom:20px}.intro{max-width:470px;font-size:15px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{padding:15px 22px;border-radius:8px;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;font-weight:600;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.dark{background:#292732;color:#fff}.outline{border:1px solid #c9c4ce}.location{font-size:11px;margin-top:28px;color:#756e7c}.location span{margin:0 9px}.hero-art{height:550px;background:#e5deef;border:1px solid #d7cde4;border-radius:22px;position:relative;overflow:hidden}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#cec0df55 1px,transparent 1px),linear-gradient(90deg,#cec0df55 1px,transparent 1px);background-size:45px 45px;mask-image:linear-gradient(#0008,transparent)}.orbit{border:1px solid #b09bc755;border-radius:50%;position:absolute;width:440px;height:440px;left:40px;top:75px}.orbit-two{width:330px;height:330px;left:100px;top:130px}.art-label{position:absolute;top:30px;left:30px;font-size:9px;letter-spacing:.2em;color:#766383}.art-card{position:absolute;width:77%;padding:26px;background:#fdfcf9;border:1px solid #d0c4de;border-radius:14px;box-shadow:0 20px 40px #4b326c12}.art-card span{display:block;font-size:8px;letter-spacing:.14em;color:#8c7b9a}.art-card strong{display:block;font-size:33px;font-weight:500;letter-spacing:-.05em;margin:5px 0}.art-card small{font-size:10px;color:#7a7083}.card-one{left:7%;top:82px;transform:rotate(-7deg)}.card-two{left:16%;top:223px;transform:rotate(4deg);background:#c7b5e2;border-color:#bba3d7}.card-three{left:8%;top:361px;transform:rotate(-4deg);background:#302c39;color:white}.card-three span,.card-three small{color:#c8b9dc}.art-footer{position:absolute;bottom:17px;left:30px;font-size:7px;letter-spacing:.13em;color:#766383}.facts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #dad6ce;padding:32px 0;gap:24px}.facts div{border-right:1px solid #dad6ce;padding-left:24px}.facts div:first-child{padding-left:0}.facts div:last-child{border:0}.facts strong{display:block;font-weight:500;font-size:35px;letter-spacing:-.05em}.facts span{font-size:11px;color:#766f7c}.section{padding-top:95px;padding-bottom:35px}.section-label{margin-bottom:30px;color:#90829d}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px}.large{font-size:21px;color:#332e3a;line-height:1.6}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:40px}.section-heading p{max-width:360px;font-size:13px}.case-nav{display:flex;gap:12px;padding:18px 0 28px;border-bottom:1px solid #ded8e2}.case-nav a{font-size:13px;padding:12px 22px;border:1px solid #d7cfdc;border-radius:40px}.case-nav a:hover{background:#e5ddef}.case-nav span{margin-left:15px;font-size:9px;color:#857293}.subheading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin:55px 0 25px;scroll-margin-top:30px}.subheading h3{font-size:25px;margin:0}.subheading p{font-size:12px;margin:0}.projects{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.project{background:#fffdfa;border:1px solid #ded9df;border-radius:16px;overflow:hidden}.screen{display:block;background:#eae6ee;padding:24px 24px 0;height:265px;overflow:hidden;border-bottom:1px solid #ded9df}.screen img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:7px 7px 0 0;box-shadow:0 5px 22px #40334c1a;transition:transform .4s}.screen:hover img{transform:translateY(-4px)}.project-body{padding:25px 28px}.project h3{margin:12px 0;font-size:25px}.project p{font-size:13px}.provenance{font-size:10px!important;line-height:1.6;color:#8a818e!important}.text-link{display:flex;justify-content:space-between;padding-top:14px;border-top:1px solid #e8e2e8;font-size:12px;margin-top:22px}.stories{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.story{border:1px solid #d9cfdf;background:#eee8f3;border-radius:14px;padding:28px}.story-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}.case-num{font-size:22px;color:#aa99b9}.story h3{font-size:23px;line-height:1.25;min-height:85px}.story dt{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-top:20px}.story dd{font-size:12px;line-height:1.7;color:#60566a;margin:6px 0}.marketing{grid-template-columns:repeat(2,1fr)}.marketing .story{background:#f0eee7;border-color:#dedbd1}.marketing .story h3{min-height:0}.source-note{font-size:11px;max-width:800px;margin:25px 0}.skills-section{background:#efebe4;margin-top:60px;padding-bottom:65px}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 30px;margin-top:25px}.skill{border-top:1px solid #cec6d4;padding-top:25px}.skill h3{font-size:20px;margin-bottom:20px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{font-size:11px;border:1px solid #d7cfdc;border-radius:6px;padding:6px 10px;background:#f8f5f1}.job{display:grid;grid-template-columns:250px 1fr;gap:40px;padding:30px 0;border-top:1px solid #ded8df}.job-date{font-size:12px;color:#877492;letter-spacing:.03em}.job h3{font-size:25px;margin-bottom:9px}.role{font-size:13px;font-weight:600;margin-bottom:12px}.job p{font-size:13px;max-width:720px;margin-bottom:0}.education{display:grid;grid-template-columns:1fr 1.4fr;gap:65px}.education article{border-top:1px solid #ded8df;padding-top:20px;margin-bottom:25px}.education article span{font-size:12px;color:#877492}.education article h3{font-size:19px;margin:8px 0}.education article p{font-size:12px}.resume-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.resume-actions button{background:transparent;border:1px solid #d0c8d8;border-radius:6px;padding:9px 14px;font-size:11px}.resume-page{border-top:1px solid #ded8df}.resume-page:last-child{border-bottom:1px solid #ded8df}summary{padding:20px 0;cursor:pointer;font-size:14px;display:flex;justify-content:space-between;gap:20px}summary span{font-size:10px;color:#877492}.resume-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.9;max-width:900px;padding:20px 0 35px;color:#615967}.contact-section{background:#302b39;color:#f7f3fb;margin-top:85px;padding:75px 0}.contact-section h2{font-size:clamp(37px,5vw,70px);font-weight:400}.contact-section em{color:#c9b6e4}.contact-section p{color:#c6becd;font-size:14px}.contact-section .section-label{color:#ad96c7}.light{background:#e6d9f6;color:#302b39}.ghost{border:1px solid #736582;color:#eee5f7}.phone{display:inline-block;font-size:20px;margin-top:30px}.contact-meta{font-size:11px;color:#b4a7c1;margin-top:15px}.contact-meta a{text-decoration:underline}footer{padding:26px 0;display:flex;justify-content:space-between;font-size:10px;color:#82748e}.skip{position:fixed;top:-100px;left:15px;background:white;z-index:9;padding:15px}.skip:focus{top:10px}@media(min-width:1100px){.hero-art{animation:arrive .7s ease-out}.card-two{animation:float 9s ease-in-out infinite}@keyframes float{50%{transform:translateY(-8px) rotate(3deg)}}@keyframes arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}}@media(max-width:1000px){.wrap,header{width:calc(100% - 48px)}.hero{gap:28px}.hero-art{height:515px}.art-card{padding:22px}.art-card strong{font-size:28px}.card-three{top:340px}.card-two{top:211px}.intro{font-size:13px}.stories{grid-template-columns:1fr}.story h3{min-height:0}.story dl{display:grid;grid-template-columns:100px 1fr;gap:10px}.story dt,.story dd{margin:0}.story-top{margin-bottom:20px}.skills-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:40px}.job{grid-template-columns:180px 1fr}.screen{height:220px}}@media(max-width:700px){header{height:auto;min-height:90px;flex-wrap:wrap;gap:12px;padding:18px 0}.brand{font-size:24px}.brand span{font-size:11px}header nav{order:3;width:100%;justify-content:space-between;gap:10px;font-size:11px}.contact-top{font-size:11px}.wrap,header{width:calc(100% - 36px)}.hero{grid-template-columns:1fr;padding-top:45px;padding-bottom:40px;gap:35px}h1{font-size:78px}.hero-role{font-size:21px}.hero-art{height:470px;width:100%;max-width:470px;margin:auto}.art-card{width:77%;padding:20px}.card-one{top:70px}.card-two{top:189px}.card-three{top:308px}.art-card strong{font-size:30px}.art-card small{font-size:9px}.facts{grid-template-columns:1fr 1fr;padding:24px 0;gap:22px 10px}.facts div{padding-left:15px}.facts div:nth-child(odd){padding-left:0}.facts div:nth-child(2){border:0}.facts strong{font-size:30px}.facts span{font-size:10px}.section{padding-top:65px;padding-bottom:15px}.section-label{font-size:9px;margin-bottom:23px}.section-heading,.subheading{display:block}.section-heading p{margin-bottom:25px}.about-grid,.projects,.skills-grid,.education{grid-template-columns:1fr;gap:25px}.large{font-size:19px}.case-nav{gap:7px;justify-content:space-between}.case-nav a{font-size:10px;padding:10px}.case-nav span{margin-left:6px;font-size:8px}.subheading{margin:40px 0 20px}.subheading h3{font-size:22px;margin-bottom:10px}.screen{height:235px;padding:16px 16px 0}.project-body{padding:23px}.story{padding:23px}.story dl{display:block}.story dt{margin-top:16px}.story dd{margin-top:6px}.job{grid-template-columns:1fr;gap:12px;padding:25px 0}.job h3{font-size:23px}.job-date{font-size:10px}.skills-section{padding-bottom:40px}.contact-section{margin-top:65px;padding:55px 0}.button{padding:14px 16px;gap:13px;font-size:11px}.location{font-size:10px}.location span{margin:0 4px}footer{gap:20px}.contact-meta{line-height:2}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media print{header,.hero-art,.case-nav,.actions,.resume-actions,.contact-section,footer{display:none}.wrap{width:100%}.section{padding-top:30px}.projects{grid-template-columns:1fr 1fr}.project,.story,.job{break-inside:avoid}.screen{height:160px}body{background:white;font-size:11px}.hero{display:block;padding:0}h1{font-size:45px}h2{font-size:30px}.resume-text{font-size:10px}.hero-copy .intro{max-width:none}}
@media(max-width:380px){h1{font-size:68px}h2{font-size:30px}.hero .eyebrow{font-size:8px}.location{font-size:9px}}
