:root{--paper:#eeede8;--ink:#232521;--muted:#777971;--line:#c9c9c0;--orange:#d65a36;--serif:'PT Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'PT Sans',Arial,sans-serif;font-size:14px;font-weight:400}a{color:inherit;text-decoration:none}.topbar{height:74px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:absolute;top:0;width:100%;z-index:3}.wordmark{font-size:18px;font-weight:700;letter-spacing:-1.2px}.wordmark span{color:var(--orange);padding-left:4px}.topbar nav{display:flex;gap:34px;margin-left:9vw}.topbar nav a,.availability{font-size:11px}.topbar nav a:hover,.contact-bottom a:hover{color:var(--orange)}.availability{display:flex;align-items:center;gap:8px}.availability i{width:6px;height:6px;border-radius:50%;background:#7b8c72}.availability span{padding-left:6px}.menu-toggle{display:none;background:none;border:0;font-size:20px}.hero{padding:114px 5vw 0}.hero-kicker,.hero-role,.hero-image-label,.eyebrow,.filters,.contact-top,.contact-bottom,footer,.experience span,.hero-note .text-link{font-family:'DM Mono',monospace;text-transform:uppercase;letter-spacing:.06em;font-size:9px}.hero-kicker{display:flex;justify-content:space-between;color:var(--muted)}.hero-title{display:grid;grid-template-columns:1fr 260px;align-items:end;padding:44px 0 39px}.hero h1{font-size:clamp(76px,12.8vw,190px);letter-spacing:-.055em;line-height:.84;margin:0;font-weight:700}.hero h1 em,.section-head h2 em,.statement p em,.about h2 em,.contact h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.075em}.hero-note{padding:0 0 4px 12px;position:relative}.hero-note p{font-size:13px;line-height:1.55;margin:10px 0 22px}.cross{font-size:24px;color:var(--orange)}.text-link{font-size:9px;display:flex;gap:16px;align-items:center}.text-link b{font-size:16px;font-weight:400}.hero-image{height:auto;min-height:0;background:linear-gradient(145deg,#b1ad9f,#78776d 48%,#464d49);position:relative;overflow:hidden}.hero-image:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(20,23,20,.45));pointer-events:none}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 54%;filter:saturate(.7);display:block}.hero-image video{width:100%;height:auto;object-fit:initial;filter:saturate(.7);display:block}.hero-image-label{position:absolute;bottom:20px;left:24px;right:24px;color:#fff;display:flex;justify-content:space-between}.hero-role{display:flex;gap:28px;padding:20px 0 0;color:var(--muted)}.hero-role span:first-child{color:var(--ink)}.section-pad{padding:150px 9vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:56px}.eyebrow{color:var(--muted)}.section-head h2,.about h2{font-size:clamp(45px,6.2vw,86px);letter-spacing:-.045em;line-height:.96;font-weight:700;margin:23px 0 0}.section-head>p{max-width:260px;color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 5px}.filters{display:flex;gap:26px;border-bottom:1px solid var(--line);padding:0 0 15px;margin-bottom:24px}.filter{font:inherit;border:0;background:none;padding:0;color:#92938d;cursor:pointer}.filter.active,.filter:hover{color:var(--ink)}.filter sup{font-size:8px;color:var(--orange);margin-left:3px}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:52px 22px}.project-card{grid-column:span 6;cursor:pointer}.project-card:nth-child(4n+2),.project-card:nth-child(4n+4){margin-top:78px}.project-card:nth-child(4n+1),.project-card:nth-child(4n+4){grid-column:span 7}.project-card:nth-child(4n+2),.project-card:nth-child(4n+3){grid-column:span 5}.project-visual{height:clamp(240px,35vw,470px);background:#ccc8bb;overflow:hidden;position:relative}.project-card:nth-child(3n+2) .project-visual{height:clamp(230px,29vw,395px)}.project-visual img,.project-visual video{width:100%;height:100%;object-fit:cover;display:block}.project-visual img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s;filter:saturate(.75)}.project-card:hover img{transform:scale(1.035);filter:saturate(1)}.project-visual:after{content:'VIEW PROJECT ↗';position:absolute;right:16px;bottom:16px;padding:10px 12px;background:var(--paper);font:9px 'DM Mono',monospace;opacity:0;transform:translateY(5px);transition:.3s}.project-card:hover .project-visual:after{opacity:1;transform:none}.visual-placeholder{height:100%;position:relative;overflow:hidden;background:linear-gradient(135deg,#a9a89e,#d1c9b8)}.visual-placeholder:before,.visual-placeholder:after{content:'';position:absolute;transform:skewY(-30deg);border:1px solid rgba(255,255,255,.6)}.visual-placeholder:before{width:70%;height:58%;right:-3%;top:12%;background:linear-gradient(130deg,rgba(243,237,219,.75),rgba(102,109,99,.4));box-shadow:-55px 37px 0 rgba(45,54,50,.17)}.visual-placeholder:after{width:38%;height:50%;left:13%;bottom:-12%;background:linear-gradient(125deg,rgba(55,64,57,.35),rgba(233,223,196,.48))}.tone-2{background:linear-gradient(145deg,#c1b9a6,#756e5b)}.tone-3{background:linear-gradient(145deg,#a5a7a0,#555c58)}.tone-4{background:linear-gradient(145deg,#d7cbb4,#948676)}.tone-5{background:linear-gradient(145deg,#8e9b93,#4c5a55)}.tone-6{background:linear-gradient(145deg,#d5d1c5,#77766b)}.tone-7{background:linear-gradient(145deg,#c2a784,#84715d)}.tone-8{background:linear-gradient(145deg,#bcc4be,#64716d)}.tone-9{background:linear-gradient(145deg,#c5bba8,#726d61)}.project-meta{display:flex;justify-content:space-between;color:var(--muted);font:9px 'DM Mono',monospace;margin-top:16px}.project-card h3{font-size:22px;letter-spacing:-.03em;font-weight:700;margin:7px 0 4px}.project-card p{font-size:11px;color:var(--muted);margin:0}.statement{padding:115px 12vw;background:#dcdad2;text-align:center;position:relative}.statement-mark{font:90px var(--serif);line-height:.7;color:var(--orange)}.statement p{font-size:clamp(42px,7vw,90px);line-height:.95;letter-spacing:-.04em;margin:22px auto 32px}.statement>span{font:9px 'DM Mono',monospace;color:var(--muted);letter-spacing:.08em}.capabilities{padding-top:138px;padding-bottom:125px}.cap-list{border-top:1px solid var(--line)}.cap-list article{display:grid;grid-template-columns:60px 1fr 1.1fr 20px;align-items:center;border-bottom:1px solid var(--line);padding:24px 0}.cap-list article>span{font:10px 'DM Mono',monospace;color:var(--orange)}.cap-list h3{font-size:22px;font-weight:400;letter-spacing:-.04em;margin:0}.cap-list p{font-size:11px;color:var(--muted)}.cap-list b{font-weight:400}.toolkit{background:#deddd6;padding-top:125px;padding-bottom:130px}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.tool-card{min-height:190px;padding:22px 24px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.tool-index{font:9px 'DM Mono',monospace;letter-spacing:.06em;color:var(--muted)}.tool-title{display:flex;align-items:center;gap:14px;margin:20px 0 8px}.tool-title img{width:42px;height:42px;flex:none}.tool-card h3{font-size:clamp(25px,3vw,38px);font-weight:700;letter-spacing:-.035em;margin:0}.tool-card p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}.tool-card p a{text-decoration:underline;text-underline-offset:3px}.tool-card:hover{background:rgba(255,255,255,.35)}.tool-others{display:grid;grid-template-columns:1fr 3fr;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.tool-other-list{display:flex;flex-wrap:wrap;gap:12px 26px}.tool-other-list span{display:flex;align-items:center;gap:9px;font-size:12px}.tool-other-list img{width:28px;height:28px}.workflow-ai{display:grid;grid-template-columns:44px 1fr;gap:18px;align-items:center;padding:24px 28px;margin-top:28px;border:1px solid var(--line)}.workflow-mark{font-size:26px;color:var(--orange)}.workflow-ai p{font-size:13px;line-height:1.65;margin:0;max-width:850px}.workflow-ai strong{font-weight:700}.about{background:#deddd6;display:grid;grid-template-columns:1fr 2fr;gap:8vw}.about-index{font:12px 'DM Mono',monospace;line-height:2.1;color:var(--muted);margin-top:120px}.about-index:first-line{color:var(--ink)}.about h2{font-size:clamp(54px,7vw,94px);margin:0 0 35px}.about-copy>p{font-size:12px;line-height:1.8;max-width:620px;color:#62645e}.about-copy .about-note{font-size:10px;border-top:1px solid var(--line);padding-top:16px;margin-top:30px;max-width:none}.about-copy .about-lead{font-size:17px;line-height:1.55;max-width:600px;color:var(--ink)}.experience{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;border-top:1px solid var(--line);margin-top:42px;padding-top:18px}.experience>div{display:flex;flex-direction:column;gap:9px}.experience span{color:var(--muted);font-size:8px}.experience b{font-size:11px;font-weight:500}.experience small{font-size:10px;color:var(--muted);line-height:1.65}.contact{padding:70px 9vw 30px;background:#282a25;color:var(--paper)}.contact-top{display:flex;justify-content:space-between;color:#b2b2a9}.contact-top .eyebrow{color:#b2b2a9}.contact h2{font-weight:700;font-size:clamp(70px,12vw,155px);letter-spacing:-.055em;line-height:.96;margin:100px 0 40px}.contact-cta{display:flex;justify-content:space-between;border-bottom:1px solid #71736c;padding:20px 0;font-size:13px}.contact-cta span{font-size:20px;color:#d47a5e}.contact-email{display:flex;align-items:center;gap:18px;padding:17px 0;border-bottom:1px solid #71736c}.contact-email .eyebrow{font-size:8px;color:#b2b2a9}.contact-email>a{font-size:12px}.contact-email button{margin-left:auto;background:transparent;border:1px solid #71736c;color:var(--paper);padding:9px 12px;font:9px 'DM Mono',monospace;text-transform:uppercase;cursor:pointer}.contact-email button:hover{border-color:var(--paper)}.contact-email #copy-status{font:9px 'DM Mono',monospace;color:#b2b2a9}.contact-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;padding-top:38px;color:#b2b2a9;line-height:1.8;font-size:8px}.contact-bottom div{display:flex;gap:20px}.contact-bottom span:last-child{text-align:right}footer{height:70px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:8px}footer .wordmark{font-family:'PT Sans',Arial,sans-serif;color:var(--ink);font-size:17px}dialog{border:0;padding:0;width:min(840px,calc(100% - 30px));max-height:88vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:rgba(25,27,24,.76);backdrop-filter:blur(3px)}.dialog-close{position:sticky;float:right;top:0;z-index:2;border:0;background:var(--paper);font-size:28px;width:42px;height:42px;cursor:pointer}.dialog-inner{padding:45px 7vw 55px}.dialog-inner .eyebrow{font:9px 'DM Mono',monospace}.dialog-inner h2{font-size:clamp(34px,7vw,68px);font-weight:400;letter-spacing:-.07em;line-height:.95;margin:18px 0}.dialog-inner p{max-width:580px;color:var(--muted);font-size:13px;line-height:1.7}.dialog-image{height:330px;background:#b9b7ad;margin:28px 0}.dialog-image img,.dialog-image video{width:100%;height:100%;object-fit:cover}.dialog-source{display:inline-block;margin-top:14px;border-bottom:1px solid var(--ink);padding-bottom:5px;font:9px 'DM Mono',monospace;text-transform:uppercase}
@media(max-width:760px){.topbar{height:62px}.topbar nav{display:none;position:absolute;top:61px;left:0;width:100%;padding:24px 5vw;background:var(--paper);margin:0;border-bottom:1px solid var(--line)}.topbar nav.open{display:flex}.availability{margin-left:auto;margin-right:20px;font-size:9px}.menu-toggle{display:block}.hero{padding:95px 5vw 0}.hero-kicker span:last-child{max-width:150px;text-align:right}.hero-title{grid-template-columns:1fr;padding:46px 0 28px}.hero h1{font-size:clamp(72px,17vw,130px)}.hero-note{margin:32px 0 0 auto;padding:0;width:190px}.hero-image{height:auto;min-height:0}.hero-role{gap:10px;flex-wrap:wrap;font-size:8px}.section-pad{padding:95px 6vw}.section-head{display:block;margin-bottom:36px}.section-head>p{margin-top:24px}.section-head h2{font-size:62px}.filters{gap:17px;overflow:auto;white-space:nowrap}.project-grid{display:block}.project-card,.project-card:nth-child(n){margin:0 0 35px}.project-card:nth-child(n) .project-visual{height:68vw;min-height:260px}.project-card h3{font-size:20px}.statement{padding:90px 6vw}.cap-list article{grid-template-columns:30px 1fr 20px;row-gap:6px}.cap-list article p{grid-column:2;grid-row:2;margin:0}.cap-list h3{font-size:19px}.cap-list b{grid-column:3;grid-row:1}.about{display:block}.tool-grid{grid-template-columns:repeat(2,1fr)}.tool-card{min-height:160px;padding:18px}.tool-others{grid-template-columns:1fr;gap:12px}.contact-email{flex-wrap:wrap;gap:10px}.contact-email .eyebrow{width:100%}.contact-email button{margin-left:auto}.about-index{margin:26px 0 55px}.about h2{font-size:70px}.experience{grid-template-columns:1fr;gap:21px}.contact{padding:50px 6vw 25px}.contact-top span:last-child{max-width:120px;text-align:right}.contact h2{margin:105px 0 35px;font-size:clamp(70px,17vw,112px)}.contact-bottom{grid-template-columns:1fr 1fr;gap:24px}.contact-bottom span:last-child{grid-column:1/-1;text-align:left}.contact-bottom div{justify-content:flex-end;flex-direction:column;gap:3px}footer{padding:0 6vw}footer>span{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}









.dialog-gallery{display:grid;gap:22px;margin:28px 0}.dialog-gallery figure{margin:0;background:#deddd6}.dialog-gallery img{display:block;width:100%;max-height:68vh;object-fit:contain}.dialog-gallery figcaption{padding:9px 12px;color:var(--muted);font:9px 'DM Mono',monospace}
@media(max-width:760px){.dialog-gallery{gap:14px;margin:20px 0}.dialog-gallery img{max-height:58vh}}

.project-visual video{object-fit:contain;background:#ccc8bb}.dialog-image.video-frame{height:auto;min-height:0;aspect-ratio:16 / 9}.dialog-image.video-frame video{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain}
@media(max-width:760px){.dialog-image.video-frame video{max-height:58vh}}

.project-visual .project-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:saturate(.75);transform:scale(1);transition:opacity .9s ease,transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}.project-visual .project-slide.is-active{opacity:1}.project-card:hover .project-visual .project-slide,.project-card:hover .project-visual video{transform:scale(1.035);filter:saturate(1)}.project-visual video{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}

.dialog-video{position:relative;width:100%;aspect-ratio:16 / 9;background:#222;margin:28px 0}.dialog-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:760px){.dialog-video{margin:20px 0}}

.youtube-fallback{margin:28px 0;background:#deddd6}.youtube-fallback img{display:block;width:100%;max-height:54vh;object-fit:cover}.youtube-fallback>div{padding:18px 20px}.youtube-fallback a{display:inline-block;border-bottom:1px solid var(--ink);padding-bottom:5px;font:10px 'DM Mono',monospace;text-transform:uppercase}.youtube-fallback p{margin:12px 0 0;font-size:11px;color:var(--muted)}
@media(max-width:760px){.youtube-fallback{margin:20px 0}.youtube-fallback>div{padding:15px}}

.thesis-reader{margin:34px 0 44px;border:1px solid var(--line);background:#deddd6}.thesis-reader-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;background:#deddd6;border-bottom:1px solid var(--line)}.thesis-reader-header>div{display:grid;gap:6px}.thesis-reader-header .eyebrow{font-size:8px}.thesis-page-count{font:10px 'DM Mono',monospace;letter-spacing:.04em}.thesis-reader-controls{display:flex;gap:8px}.thesis-reader-controls button{background:transparent;border:1px solid #aaa99f;color:var(--ink);padding:9px 12px;font:9px 'DM Mono',monospace;cursor:pointer}.thesis-reader-controls button:hover:not(:disabled){background:var(--ink);color:var(--paper)}.thesis-reader-controls button:disabled{opacity:.4;cursor:default}.thesis-book-stage{display:flex;justify-content:center;padding:clamp(14px,4vw,36px);background:#c8c6bd}.thesis-book-page{width:min(100%,510px);background:#fff;box-shadow:0 12px 35px rgba(30,30,26,.2);line-height:0}.thesis-page-image{display:block;width:100%;height:auto}.thesis-reader-footer{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;font:9px 'DM Mono',monospace;color:var(--muted)}.thesis-reader-footer a{color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px}.thesis-reader-footer span{text-align:right}
@media(max-width:600px){.thesis-reader{margin:26px -4vw 34px}.thesis-reader-header{align-items:flex-start;flex-direction:column;padding:12px}.thesis-reader-controls{width:100%}.thesis-reader-controls button{flex:1}.thesis-book-stage{padding:12px}.thesis-reader-footer{flex-direction:column}.thesis-reader-footer span{text-align:left}}

dialog.thesis-dialog{width:min(1100px,calc(100% - 30px))}.thesis-dialog .dialog-inner{padding:45px clamp(24px,5vw,70px) 55px}.thesis-book-spread{display:flex;align-items:stretch;justify-content:center;gap:1px;width:min(100%,850px)}.thesis-book-page{position:relative;flex:1 1 0;width:50%;max-width:425px;margin:0;background:#fff;box-shadow:0 12px 35px rgba(30,30,26,.2);line-height:0}.thesis-book-page img{display:block;width:100%;height:auto}.thesis-book-spread.is-single .thesis-book-page{flex:none;width:min(100%,510px);max-width:510px}.thesis-book-spread:not(.is-single) .thesis-book-page:first-child{box-shadow:-8px 10px 30px rgba(30,30,26,.16)}.thesis-book-spread:not(.is-single) .thesis-book-page:last-child{box-shadow:8px 10px 30px rgba(30,30,26,.16)}
@media(max-width:760px){.thesis-dialog .dialog-inner{padding:32px 6vw 40px}.thesis-book-spread:not(.is-single){flex-direction:column;align-items:center;gap:12px}.thesis-book-spread:not(.is-single) .thesis-book-page{flex:none;width:min(100%,510px);max-width:510px}.thesis-book-spread:not(.is-single) .thesis-book-page:first-child,.thesis-book-spread:not(.is-single) .thesis-book-page:last-child{box-shadow:0 8px 22px rgba(30,30,26,.16)}}
.study-card .project-visual{width:min(100%,260px);background:#d7d6cf}.study-card .project-visual img{object-fit:contain}

.video-showcase{margin:0 0 44px}.video-showcase-space{width:100%;aspect-ratio:16 / 9;border:1px solid var(--line);background:rgba(201,201,192,.12)}.video-showcase[hidden]{display:none}

.video-showcase-space{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;border:1px solid var(--line);background:#292b27}.video-showcase-space video{display:block;width:100%;height:100%;object-fit:contain}.showcase-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;background:rgba(238,237,232,.92);color:var(--ink);font-size:25px;line-height:1;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s ease,background .2s ease}.showcase-arrow:hover{background:#fff}.showcase-previous{left:18px}.showcase-next{right:18px}.video-showcase-space:hover .showcase-arrow,.showcase-arrow:focus-visible{opacity:1;pointer-events:auto}@media(hover:none){.showcase-arrow{opacity:1;pointer-events:auto}}

.video-showcase-space video{object-fit:cover;filter:saturate(.75);transform:scale(1);transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}.video-showcase-space:hover video{transform:scale(1.035);filter:saturate(1)}.showcase-arrow{width:48px;height:48px;border:1px solid rgba(255,255,255,.72);background:rgba(35,37,33,.82);color:#fff;display:grid;place-items:center}.showcase-arrow:hover,.showcase-arrow:focus-visible{background:var(--orange);outline:none}.showcase-arrow svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;display:block}
.language-switch{display:flex;align-items:center;gap:7px;font:10px 'DM Mono',monospace;color:var(--muted)}.language-switch button{border:0;background:none;padding:5px 2px;color:inherit;font:inherit;cursor:pointer}.language-switch button.active,.language-switch button:hover{color:var(--ink)}.language-switch button:focus-visible{outline:1px solid var(--orange);outline-offset:2px}.about{background:var(--paper)}
@media(max-width:760px){.language-switch{margin-left:auto;margin-right:14px}.menu-toggle{margin-left:0}}
