:root{--ink:#100e0b;--soft:#1b1711;--map:#2c2417;--paper:#e6d4ad;--bone:#f2e7cf;--brass:#c99b42;--line:#e6d4ad3d;--muted:#aa9a7b;--pointer-x:50vw;--pointer-y:50vh;color:var(--bone);background:var(--ink);font-family:Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ink);margin:0;overflow-x:hidden}a{color:inherit}button{font:inherit}::selection{background:var(--brass);color:var(--ink)}.skip-link{z-index:30;background:var(--bone);color:var(--ink);padding:10px 14px;position:fixed;top:-60px;left:16px}.skip-link:focus{top:16px}.site-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#100e0bbd,#0000);border-bottom:1px solid #e6d4ad29;align-items:center;width:100%;height:74px;padding:0 clamp(20px,4vw,68px);display:flex;position:fixed;top:0;left:0}.monogram{letter-spacing:.08em;font:400 25px Marcellus,serif;text-decoration:none}.monogram span{color:var(--brass)}.site-header nav{gap:clamp(16px,2.4vw,38px);margin-left:auto;margin-right:26px;display:flex}.site-header nav a,.language-toggle,.eyebrow{letter-spacing:.1em;text-transform:uppercase;font:500 14px/1 DM Mono,monospace}.site-header nav a{color:var(--muted);text-decoration:none}.site-header nav a:hover{color:var(--bone)}.language-toggle{border:1px solid var(--line);color:var(--bone);cursor:pointer;background:0 0;padding:8px 9px}.language-toggle:hover{border-color:var(--brass);color:var(--brass)}.hero{isolation:isolate;min-height:100svh;position:relative;overflow:hidden}.hero-map{z-index:-2;background:url(/hero/hero-map-v6-illustrated.png) 50%/cover no-repeat;transition:transform .8s;position:absolute;inset:0;transform:scale(1.025)}.hero:hover .hero-map{transform:scale(1.05)translate(-.35%)}.hero:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#100e0b45,#0000 48%),linear-gradient(#0000 67%,#100e0b80);position:absolute;inset:0}.spotlight{z-index:3;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(280px circle at var(--pointer-x) var(--pointer-y),#ffd2782e,transparent 74%);position:fixed;inset:0}.hero-panel{z-index:4;flex-direction:column;align-items:flex-start;gap:20px;display:flex;position:absolute;bottom:clamp(28px,7vh,76px);left:clamp(20px,4vw,68px)}.hero-mark{letter-spacing:.12em;font-size:15px}.hero-location{color:#d0bd94;max-width:260px;margin:0;font-size:19px;line-height:1.45}.hero-actions{color:var(--paper);letter-spacing:.07em;align-items:center;gap:16px;font:500 15px DM Mono,monospace;display:flex}.round-action{border:1px solid var(--brass);width:60px;height:60px;color:var(--bone);border-radius:50%;place-items:center;font-size:23px;text-decoration:none;transition:all .25s;display:grid}.round-action:hover{background:var(--brass);color:var(--ink);transform:translateY(-4px)}.hero-hotspot{z-index:2;border-radius:50%;outline:1px solid #0000;transition:all .2s;display:block;position:absolute}.hero-hotspot:hover,.hero-hotspot:focus-visible{outline-color:var(--brass);background:#f1d28e1f}.hero-gear{z-index:1;aspect-ratio:1;opacity:.6;border:12px dotted #c99b4280;border-radius:50%;width:66px;animation:16s linear infinite turn;position:absolute;box-shadow:inset 0 0 0 10px #100e0baa}.gear-a{bottom:6%;right:17%}.gear-b{width:42px;animation-duration:10s;animation-direction:reverse;bottom:1.5%;right:11%}.section{padding:clamp(82px,11vw,160px) clamp(20px,8vw,138px)}.section-label,.section-heading .eyebrow{color:var(--brass)}.split-heading{grid-template-columns:1.25fr .75fr;gap:10vw;margin-top:clamp(38px,7vw,104px);display:grid}.split-heading h1,.section-heading h2,.contact h2,.photo-archive h2{letter-spacing:-.05em;margin:0;font:400 clamp(49px,6.4vw,104px)/.98 Marcellus,Noto Sans SC,serif}.split-heading h1 span,.section-heading h2 span,.contact h2 span,.photo-archive h2 span{display:block}.lead{color:#d1c09e;max-width:570px;margin:4px 0 0;font-size:20px;line-height:1.8}.under-link{color:var(--brass);letter-spacing:.03em;border-bottom:1px solid;gap:13px;margin-top:38px;padding-bottom:8px;font-size:19px;text-decoration:none;display:inline-flex}.under-link:hover{color:var(--bone)}.work{background:var(--soft)}.section-heading{grid-template-columns:.65fr 1.35fr;align-items:start;gap:6vw;margin-bottom:52px;display:grid}.section-heading .eyebrow{padding-top:12px}.work-grid{grid-template-columns:repeat(12,1fr);gap:clamp(18px,2vw,32px);display:grid}.work-card{border-bottom:1px solid var(--line);grid-column:span 6;padding-bottom:20px;text-decoration:none;display:block;position:relative}.work-card-3{grid-column:2/span 5}.work-card-4{grid-column:7/span 5}.work-card figure{background:#252018;height:clamp(250px,33vw,510px);margin:0 0 18px;position:relative;overflow:hidden}.work-card-3 figure,.work-card-4 figure{height:clamp(230px,29vw,430px)}.work-card img{object-fit:cover;filter:saturate(.75)contrast(.94);width:100%;height:100%;transition:all .65s}.work-card:hover img{filter:saturate()contrast(1.03);transform:scale(1.045)}.work-card figure:after{content:"";background:linear-gradient(#0000 63%,#100e0b8c);position:absolute;inset:0}.work-card figcaption{z-index:1;color:var(--paper);font:10px DM Mono,monospace;position:absolute;top:14px;left:15px}.work-card p,.work-card span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font:10px DM Mono,monospace}.work-card h3{margin:7px 0 3px;font:400 clamp(24px,2.7vw,42px)/1.05 Marcellus,Noto Sans SC,serif}.work-card b{color:var(--brass);opacity:0;font:500 11px DM Mono,monospace;transition:all .2s;position:absolute;bottom:20px;right:0}.work-card:hover b{opacity:1}.photography{background:#17130f}.photo-archive{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:45px;margin-top:clamp(42px,7vw,90px);padding-top:clamp(48px,9vw,130px);display:flex}.photo-link{border-bottom:1px solid var(--brass);color:var(--brass);flex:none;align-items:center;gap:13px;padding-bottom:8px;font-size:16px;text-decoration:none;display:inline-flex}.foodknowing{color:#17130f;background:#e8dac0;overflow:hidden}.app-top{justify-content:space-between;align-items:start;display:flex}.app-top .eyebrow{color:#766243;margin:0}.app-top .under-link{color:#573c16;margin:0}.app-layout{grid-template-columns:.78fr 1.22fr;align-items:center;gap:5vw;margin-top:clamp(42px,8vw,100px);display:grid}.app-identity{white-space:nowrap;align-items:center;gap:20px;display:flex}.app-copy>img{border-radius:19px;width:74px;height:74px;box-shadow:0 12px 24px #47331529}.app-copy h2{letter-spacing:-.05em;margin:0;font:400 clamp(36px,4.5vw,66px)/1 Marcellus,serif}.app-copy p{color:#5f533e;max-width:460px;font-size:20px;line-height:1.65}.phone-stack{width:min(100%,700px);height:clamp(390px,48vw,600px);margin-left:auto;position:relative}.phone{border:5px solid #2a2926;border-radius:clamp(22px,3vw,42px);width:auto;height:100%;position:absolute;box-shadow:0 28px 60px #382c1d61}.phone-back{opacity:.85;right:14%;transform:rotate(7deg)translateY(3%)}.phone-front{right:0;transform:rotate(-3deg)}.craft{background:var(--map)}.skill-list{border-top:1px solid var(--line);margin:clamp(46px,7vw,92px) 0 0;padding:0;list-style:none}.skill-list li{border-bottom:1px solid var(--line);grid-template-columns:12% 1fr auto;align-items:center;gap:20px;min-height:94px;display:grid}.skill-list span{color:var(--brass);font:10px DM Mono,monospace}.skill-list h3{margin:0;font:400 clamp(23px,3vw,42px)/1.1 Marcellus,Noto Sans SC,serif}.skill-list i{border:1px solid var(--brass);border-radius:50%;width:25px;height:25px;position:relative}.skill-list i:after{content:"+";color:var(--brass);font:15px serif;position:absolute;top:2px;left:6px}.skill-list li:hover i{animation:1.4s linear infinite turn}.tool-row{color:var(--muted);grid-template-columns:.65fr 1.35fr;gap:6vw;margin-top:clamp(42px,7vw,86px);display:grid}.tool-row p{margin:0;line-height:1.9}.tool-row p:last-child{letter-spacing:.02em;white-space:nowrap;flex-wrap:nowrap;justify-content:space-between;gap:clamp(12px,2vw,32px);font:17px DM Mono,monospace;display:flex}.contact{background:var(--brass);min-height:70svh;color:var(--ink)}.contact .eyebrow{color:#624615}.contact h2{max-width:850px;margin-top:clamp(48px,9vw,120px)}.email{letter-spacing:-.04em;border-bottom:1px solid;align-items:center;gap:15px;margin-top:clamp(56px,11vw,145px);padding-bottom:8px;font:400 clamp(24px,4vw,57px)/1 Marcellus,Noto Sans SC,serif;text-decoration:none;display:inline-flex}.email span{color:#f1e4cb}.socials{flex-wrap:wrap;gap:28px;margin-top:32px;display:flex}.socials a{color:#563b0d;letter-spacing:.04em;align-items:center;gap:9px;font:500 15px DM Mono,monospace;text-decoration:none;display:inline-flex}.socials a:hover{color:var(--ink);text-decoration:underline}.social-icon{flex:none;width:24px;height:24px}footer{color:#8e7c5d;background:var(--ink);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:12px;padding:18px clamp(20px,4vw,68px);font:10px DM Mono,monospace;display:flex}footer a{text-decoration:none}footer a:hover{color:var(--brass)}a:focus-visible,button:focus-visible{outline:2px solid var(--brass);outline-offset:5px}@keyframes turn{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width<=720px){.site-header{height:61px;padding:0 20px}.site-header nav{display:none}.site-header nav a,.language-toggle,.eyebrow{font-size:11px}.hero-map{background-position:56%}.hero-panel{bottom:25px;left:20px}.hero-mark{font-size:12px}.hero-location{font-size:16px}.hero-actions{font-size:12px}.round-action{width:50px;height:50px}.spotlight,.hero-gear,.hero-hotspot{display:none}.section{padding:76px 20px}.split-heading,.section-heading,.app-layout,.tool-row{grid-template-columns:1fr;gap:28px}.section-heading{margin-bottom:35px}.section-heading .eyebrow{padding:0}.split-heading h1,.section-heading h2,.contact h2,.photo-archive h2{font-size:clamp(42px,12vw,61px)}.lead,.app-copy p{font-size:17px}.under-link{font-size:16px}.work-grid{grid-template-columns:1fr;gap:32px}.work-card,.work-card-3,.work-card-4{grid-column:auto}.work-card figure,.work-card-3 figure,.work-card-4 figure{height:64vw}.work-card b{opacity:1;margin-top:14px;display:block;position:static}.photo-archive{margin-top:45px;padding-top:50px;display:block}.photo-link{margin-top:36px;font-size:14px}.app-top{gap:17px}.app-top .under-link{text-align:right}.app-identity{gap:14px}.app-copy>img{width:58px;height:58px}.app-copy h2{font-size:37px}.app-layout{margin-top:45px}.phone-stack{height:400px}.phone-back{right:13%}.skill-list li{grid-template-columns:16% 1fr auto;min-height:76px}.skill-list h3{font-size:23px}.tool-row{gap:16px}.tool-row p:last-child{white-space:normal;flex-wrap:wrap;gap:10px 18px;font-size:15px}.contact{min-height:64svh}.email{font-size:25px}.socials{gap:18px}.socials a{font-size:13px}footer{font-size:9px}footer span:nth-child(2){display:none}}.hero-panel{background:linear-gradient(135deg,#0808078a,#0808070f);border-left:1px solid #c99b426b;padding:26px 30px}.hero-mark{font-size:18px}.hero-location{font-size:24px}.hero-actions{font-size:17px}.round-action{width:68px;height:68px}.hero-hotspot{cursor:pointer;place-items:end center;display:grid}.hero-hotspot span{color:var(--bone);letter-spacing:.06em;white-space:nowrap;opacity:.78;background:#100e0bc7;border:1px solid #c99b42b3;margin-bottom:-34px;padding:9px 13px;font:500 13px DM Mono,monospace;transition:all .2s;display:block}.hero-hotspot:hover span,.hero-hotspot:focus-visible span{opacity:1;background:var(--brass);color:var(--ink)}.section-heading>.eyebrow,.section>.eyebrow{letter-spacing:.08em;font-size:20px}.photo-grid{grid-template-columns:repeat(12,1fr);gap:18px;margin-top:clamp(45px,7vw,92px);display:grid}.photo{background:#201b13;margin:0;overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%;transition:transform .6s,filter .3s;display:block}.photo:hover img{filter:brightness(1.08);transform:scale(1.035)}.photo-1{grid-column:span 7;height:42vw;max-height:620px}.photo-2{grid-column:span 5;height:42vw;max-height:620px}.photo-3,.photo-4,.photo-5{grid-column:span 4;height:31vw;max-height:430px}.photo-6{grid-column:span 5;height:37vw;max-height:500px}.photo-7{grid-column:span 7;height:37vw;max-height:500px}.photo-8{grid-column:3/span 7;height:48vw;max-height:680px}.socials a{white-space:nowrap}@media (width<=720px){.hero-panel{padding:17px 18px}.hero-mark{font-size:13px}.hero-location{font-size:18px}.hero-actions{font-size:13px}.round-action{width:55px;height:55px}.hero-hotspot{display:none}.section-heading>.eyebrow,.section>.eyebrow{font-size:14px}.app-copy>img{width:54px;height:54px}.app-copy h2{font-size:38px}.photo-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:40px}.photo-1,.photo-2,.photo-3,.photo-4,.photo-5,.photo-6,.photo-7,.photo-8{grid-column:auto;height:57vw;max-height:none}.photo-1,.photo-4,.photo-7{grid-column:span 2;height:80vw}.photo-8{height:80vw}.socials a{font-size:13px}}.split-heading h1{line-height:1.16}.video-list{border-top:1px solid var(--line)}.video-row{border-bottom:1px solid var(--line);min-height:132px;color:var(--bone);grid-template-columns:9% 28% 1fr auto;align-items:center;gap:20px;text-decoration:none;transition:background .2s,padding .2s;display:grid}.video-row:hover{background:#c99b420f;padding-left:18px}.video-row>span,.video-row p,.video-row b{letter-spacing:.06em;margin:0;font:500 15px DM Mono,monospace}.video-row>span{color:var(--brass)}.video-row p{color:var(--muted)}.video-row h3{margin:0;font:400 clamp(31px,3.6vw,58px)/1 Marcellus,Noto Sans SC,serif}.video-row b{color:var(--brass);font-size:13px}.photo-archive{display:block}.photo-carousel{margin-top:clamp(44px,7vw,85px);overflow:hidden}.photo-track{gap:18px;width:max-content;animation:44s linear infinite carousel;display:flex}.portrait-track{margin-top:18px;animation-name:carousel-reverse;animation-duration:34s}.photo-track:hover{animation-play-state:paused}.photo-slide{cursor:zoom-in;background:#201b13;border:0;flex:none;padding:0;display:block;overflow:hidden}.photo-slide img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.photo-slide:hover img{transform:scale(1.04)}.photo-slide.landscape{width:clamp(360px,31vw,560px);height:clamp(230px,20vw,365px)}.photo-slide.portrait{width:clamp(180px,15.5vw,275px);height:clamp(270px,25vw,460px)}@keyframes carousel{to{transform:translate(-50%)}}@keyframes carousel-reverse{0%{transform:translate(-50%)}to{transform:translate(0)}}.photo-lightbox{z-index:40;cursor:zoom-out;background:#050403e8;place-items:center;padding:5vw;display:grid;position:fixed;inset:0}.photo-lightbox img{object-fit:contain;cursor:default;max-width:100%;max-height:88svh}.lightbox-close{border:1px solid var(--line);width:44px;height:44px;color:var(--bone);cursor:pointer;background:#100e0bcc;border-radius:50%;font-size:28px;line-height:1;position:absolute;top:24px;right:28px}.socials{justify-content:space-between;width:min(100%,640px)}.socials a{font-size:18px}.socials .social-icon{width:29px;height:29px}.app-copy>img{width:60px;height:60px}@media (width<=720px){.video-row{grid-template-columns:42px 1fr auto;gap:10px;min-height:92px}.video-row p{grid-area:1/2;font-size:11px}.video-row h3{grid-area:2/2;font-size:28px}.video-row b{grid-area:1/3/3;font-size:10px}.video-row>span{grid-row:1/3}.photo-track{gap:10px;animation-duration:32s}.portrait-track{margin-top:10px;animation-duration:27s}.photo-slide.landscape{width:72vw;height:46vw}.photo-slide.portrait{width:38vw;height:58vw}.socials{justify-content:flex-start;gap:14px;width:100%}.socials a{font-size:14px}.socials .social-icon{width:23px;height:23px}}.lens-hotspot,.camera-hotspot,.cine-hotspot{width:132px;height:128px;transform:translate(-50%,-50%)}.lens-hotspot{width:200px;height:600px;top:29.36%;left:61.16%}.lens-hotspot:hover,.lens-hotspot:focus-visible,.camera-hotspot:hover,.camera-hotspot:focus-visible,.cine-hotspot:hover,.cine-hotspot:focus-visible{background:0 0;outline-color:#0000}.camera-hotspot{width:200px;height:500px;top:39.54%;left:75.29%}.cine-hotspot{width:200px;height:600px;top:33.46%;left:88.53%}.hero-hotspot span{margin:0}.about{background:#11100d;position:relative;overflow:hidden}.about>*{z-index:1;position:relative}.about:before{content:"";opacity:.32;background:radial-gradient(80% 65% at 78% 48%,#0000 0 28%,#c99b422e 28.3% 28.7%,#0000 29% 40%,#c99b421f 40.3% 40.6%,#0000 41% 52%,#c99b4217 52.3% 52.6%,#0000 53%),repeating-linear-gradient(35deg,#0000 0 54px,#c99b420b 55px 56px,#0000 57px 100px);position:absolute;inset:0}.about:after{content:"";opacity:.5;background:linear-gradient(90deg,#0000,#c99b4280,#0000);width:52vw;height:1px;position:absolute;top:57%;right:-5vw;transform:rotate(-17deg);box-shadow:0 -115px 0 -.5px #c99b4224,0 112px 0 -.5px #c99b421f}.video-row{grid-template-columns:9% 1fr auto}.video-row p{color:var(--bone);letter-spacing:-.035em;font-family:Marcellus,Noto Sans SC,serif;font-size:clamp(30px,3.4vw,54px)}.video-row b{font-size:14px}.app-layout{grid-template-columns:1fr 1fr;align-items:start}.app-copy{padding-top:22px}.app-identity img{border-radius:16px;flex:none;width:60px;height:60px;box-shadow:0 12px 24px #47331529}.app-copy h2{font-size:60px}.app-identity{gap:18px}.app-copy p{margin-top:30px}.foodknowing{background:radial-gradient(circle at 69% 58%,#fffaebc7,#0000 25%),repeating-linear-gradient(90deg,#0000 0 94px,#573c160b 95px 96px),#e8dac0}.app-top .eyebrow{letter-spacing:.08em;font-size:20px}.app-layout{grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);align-items:center;gap:clamp(48px,9vw,170px);min-height:clamp(370px,34vw,500px);margin-top:clamp(54px,6vw,90px)}.app-copy{align-self:center;padding:clamp(26px,3.5vw,50px) 0 clamp(26px,3.5vw,50px) clamp(28px,4vw,64px);position:relative}.app-copy:before{content:"";background:linear-gradient(#0000,#8f6b2d 16% 84%,#0000);width:1px;position:absolute;inset:0 auto 0 0}.app-copy p{max-width:390px;margin-top:25px}.phone-stack{width:min(100%,460px);height:clamp(325px,31vw,455px);margin-right:clamp(0px,2vw,30px)}@media (width<=720px){.app-top .eyebrow{font-size:14px}.app-layout{grid-template-columns:1fr;gap:32px;min-height:0;margin-top:45px}.app-copy{padding:24px 0 24px 24px}.phone-stack{height:400px;margin-right:0}.lens-hotspot,.camera-hotspot,.cine-hotspot{display:none}.about:after{width:90vw;right:-30vw}.video-row{grid-template-columns:42px 1fr auto}.video-row p{grid-area:1/2/3;font-size:28px}.video-row b{grid-area:1/3/3}.app-layout{grid-template-columns:1fr}.app-copy{padding-top:0}}
