:root{--ink:#171816;--paper:#f3f0e8;--muted:#6e6c65;--line:rgba(23,24,22,.22);--accent:#8c3b20;--display:Georgia,"Times New Roman",serif;--body:Arial,Helvetica,sans-serif;--pad:clamp(1.25rem,4vw,4.5rem);--max:1600px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid currentColor;outline-offset:4px}.skip{position:fixed;left:1rem;top:-4rem;background:#fff;color:#000;padding:.7rem 1rem;z-index:20}.skip:focus{top:1rem}.topbar{height:76px;padding:0 var(--pad);display:flex;align-items:center;gap:2rem;border-bottom:1px solid var(--line);position:relative;z-index:10}.mark{display:none}.name{font-weight:700;letter-spacing:-.02em}.topbar nav{display:flex;gap:1.5rem;margin-left:auto}.topbar nav a,.concept-no{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.concept-no{color:var(--muted)}main,footer{max-width:var(--max);margin:auto}.hero{min-height:calc(100vh - 76px);position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr}.hero-image{min-height:640px;overflow:hidden}.hero-image-b img{filter:grayscale(1)}.hero-copy{position:absolute;inset:auto auto 7% var(--pad);z-index:2;color:#fff;max-width:min(760px,75vw);text-shadow:0 1px 24px rgba(0,0,0,.35)}.eyebrow,.section-kicker{margin:0 0 1.1rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em}.hero h1{font:400 clamp(3.3rem,7vw,7.6rem)/.9 var(--display);letter-spacing:-.055em;margin:0}.hero h1 em{font-weight:400}.lede{max-width:640px;font-size:clamp(1.05rem,1.5vw,1.3rem);margin:1.5rem 0}.affiliation{font-size:.8rem}.hero-link,.text-link{display:inline-block;margin-top:1.2rem;border-bottom:1px solid;padding-bottom:.2rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.hero-caption{position:absolute;right:var(--pad);bottom:5%;z-index:2;color:#fff;text-align:right;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}.hero-caption span{display:block;max-width:320px;margin-top:.4rem;font-size:.65rem;text-transform:none;letter-spacing:.03em}.statement,.work,.capabilities,.career,.writing{padding:clamp(5rem,10vw,10rem) var(--pad)}.statement{display:grid;grid-template-columns:1fr 3fr;gap:2rem}.statement h2,.section-head h2,.cap-grid h2,.field h2,footer h2{font:400 clamp(2.5rem,5.5vw,6rem)/.98 var(--display);letter-spacing:-.045em;margin:0}.statement-copy{grid-column:2;display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:900px;margin-top:3rem;font-size:1.05rem}.section-head{display:grid;grid-template-columns:1fr 3fr;gap:2rem;margin-bottom:5rem}.project{display:grid;grid-template-columns:.45fr 2fr 1fr;gap:2rem;padding:3rem 0;border-top:1px solid var(--line);align-items:start}.project-index{font:italic 1.1rem var(--display);color:var(--muted)}.project h3{font:400 clamp(2rem,3.5vw,4rem)/1 var(--display);letter-spacing:-.04em;margin:0 0 1.2rem}.project-body>p:not(.eyebrow,.caveat){font-size:1.05rem;max-width:760px}.caveat{font-size:.85rem;color:var(--muted);max-width:730px}.tags{font-size:.75rem;line-height:1.8;text-transform:uppercase;letter-spacing:.08em}.capabilities{background:var(--ink);color:var(--paper)}.cap-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:4rem}.cap-grid ul{list-style:none;margin:0;padding:0}.cap-grid li{border-top:1px solid rgba(255,255,255,.25);padding:1rem 0}.field{padding-top:clamp(5rem,10vw,10rem)}.field-intro{padding:0 var(--pad) 4rem;display:grid;grid-template-columns:1fr 3fr;gap:2rem}.field-grid{height:80vh;min-height:600px;display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:8px}.field-grid figure{margin:0;overflow:hidden}.field-1{grid-row:1/3}.career-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.career article{border-top:1px solid var(--line);padding-top:1rem}.career span{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.career h3{font:400 1.6rem/1.1 var(--display);margin:2rem 0 .8rem}.career p{font-size:.85rem}.writing{border-top:1px solid var(--line)}.writing ol{list-style:none;margin:4rem 0 0;padding:0}.writing li{display:grid;grid-template-columns:.5fr 3fr 1fr;gap:2rem;padding:1.3rem 0;border-top:1px solid var(--line);align-items:baseline}.writing li span,.writing small{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.writing li a{font:400 clamp(1.2rem,2vw,2rem)/1.2 var(--display)}footer{padding:6rem var(--pad) 3rem;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:2fr 1fr;gap:4rem}footer h2{max-width:850px}.footer-links{display:flex;flex-direction:column;gap:1rem;align-self:end}.footer-note{grid-column:1/-1;margin:5rem 0 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.25);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}

/* 01 — photographic split */
.split-landscape{--paper:#f4f1e9;--accent:#d4b078}.split-landscape .hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.13),transparent 60%)}.split-landscape .hero-image-a img{object-position:50% 55%}.split-landscape .project-1{padding-top:0}.split-landscape .field-grid{grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr}.split-landscape .field-1{grid-row:auto}.split-landscape .field-2{transform:translateY(4rem)}

/* 02 — notebook / documentary */
.field-notes{--paper:#eee9dd;--ink:#26241f;--accent:#304b37;--display:"Courier New",monospace;background-image:linear-gradient(rgba(38,36,31,.055) 1px,transparent 1px);background-size:100% 28px}.field-notes .topbar{position:absolute;width:100%;color:#fff;border-color:rgba(255,255,255,.35)}.field-notes .hero{display:block}.field-notes .hero-image-a{height:100vh}.field-notes .hero-image-b{position:absolute;width:18vw;height:25vw;min-height:0;right:6vw;bottom:-9vw;border:10px solid var(--paper);transform:rotate(2deg)}.field-notes .hero-copy{max-width:850px;background:rgba(24,31,22,.86);padding:2.5rem;text-shadow:none}.field-notes .hero h1{font-size:clamp(3rem,6vw,6.2rem)}.field-notes .hero-caption{top:7rem;bottom:auto}.field-notes .statement{padding-top:13rem}.field-notes .project{grid-template-columns:90px 1fr;position:relative}.field-notes .project .tags{grid-column:2}.field-notes .project-index{font:700 2rem "Courier New",monospace}.field-notes .project-index:after{content:" / LOG";font-size:.6rem}.field-notes .caveat{border-left:3px solid var(--accent);padding-left:1rem}.field-notes .field-grid{height:auto;padding:0 var(--pad);grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:520px}.field-notes .field-1{grid-row:auto;transform:rotate(-1deg)}.field-notes .field-2{transform:translateY(3rem) rotate(1deg)}

/* 03 — stark monochrome */
.monochrome-lab{--paper:#fff;--ink:#050505;--muted:#555;--display:Arial,Helvetica,sans-serif}.monochrome-lab img{filter:grayscale(1) contrast(1.12)}.monochrome-lab .topbar{background:#000;color:#fff}.monochrome-lab .hero{grid-template-columns:68% 32%;background:#000}.monochrome-lab .hero-image-b{border-left:3px solid #fff}.monochrome-lab .hero-copy{left:4%;max-width:900px}.monochrome-lab .hero h1{text-transform:uppercase;font-weight:800;letter-spacing:-.07em}.monochrome-lab .hero h1 em{font-weight:800;font-style:normal;color:transparent;-webkit-text-stroke:2px #fff}.monochrome-lab .statement h2,.monochrome-lab .section-head h2,.monochrome-lab .project h3,.monochrome-lab footer h2{font-weight:800;text-transform:uppercase;letter-spacing:-.06em}.monochrome-lab .project{grid-template-columns:100px 1fr;padding:5rem 0}.monochrome-lab .project .tags{grid-column:2;border:1px solid;padding:.7rem;width:max-content}.monochrome-lab .project-index{font:700 3rem Arial}.monochrome-lab .field-grid{gap:0}.monochrome-lab .field-grid figure{border:2px solid #fff}

/* 04 — warm desert magazine */
.desert-editorial{--paper:#e9d9c4;--ink:#421f15;--muted:#865f4b;--line:rgba(66,31,21,.28);--accent:#c04721}.desert-editorial .topbar{position:absolute;width:100%;color:#fff;border:0}.desert-editorial .hero{display:block;height:100vh}.desert-editorial .hero-image-a{height:100%}.desert-editorial .hero-image-b{display:none}.desert-editorial .hero-copy{left:50%;bottom:10%;transform:translateX(-50%);text-align:center;width:min(1100px,90%);max-width:none}.desert-editorial .hero h1{font-size:clamp(4rem,10vw,10rem)}.desert-editorial .hero-caption{left:var(--pad);right:auto;text-align:left}.desert-editorial .statement{grid-template-columns:1fr 2fr 1fr}.desert-editorial .statement h2{grid-column:2}.desert-editorial .statement-copy{grid-column:2}.desert-editorial .section-head{grid-template-columns:1fr 2fr 1fr}.desert-editorial .project{grid-template-columns:1fr 2fr 1fr}.desert-editorial .project-body{grid-column:2}.desert-editorial .project-index{font-size:4rem}.desert-editorial .field-grid{grid-template-columns:1fr 1.5fr;gap:18px;padding:0 var(--pad)}

/* 05 — calm Scandinavian grid */
.nordic-research{--paper:#f5f7f4;--ink:#19312d;--muted:#6b7b77;--accent:#b8d8d0;--display:Arial,Helvetica,sans-serif}.nordic-research .topbar{height:94px}.nordic-research .mark{display:block;width:42px;height:42px;background:var(--ink);color:#fff;place-content:center;text-align:center}.nordic-research .name{display:none}.nordic-research .hero{min-height:760px;grid-template-columns:42% 58%;padding:var(--pad);gap:4rem}.nordic-research .hero-image-a{grid-column:2;min-height:650px}.nordic-research .hero-image-b{display:none}.nordic-research .hero-copy{position:static;grid-column:1;grid-row:1;color:var(--ink);text-shadow:none;align-self:center}.nordic-research .hero h1{font-size:clamp(3rem,5vw,5.8rem);font-weight:600}.nordic-research .hero h1 em{font-style:normal;color:#6d8b84}.nordic-research .hero-caption{color:var(--ink);right:calc(var(--pad) * 2);bottom:calc(var(--pad) * 1.4)}.nordic-research .section-head,.nordic-research .statement{grid-template-columns:1fr 2fr}.nordic-research .project{grid-template-columns:80px 2fr 1fr;padding:4.5rem 0}.nordic-research .project h3{font-family:Arial;font-weight:500}.nordic-research .capabilities{background:#dbe7e2;color:var(--ink)}.nordic-research .cap-grid li{border-color:var(--line)}.nordic-research footer{background:#19312d}

/* 06 — portrait-led cinematic chapters */
.full-bleed-profile{--paper:#f1eee6;--ink:#151515}.full-bleed-profile .topbar{position:absolute;width:100%;color:#fff;border:0}.full-bleed-profile .hero{display:block;height:100vh}.full-bleed-profile .hero-image-a{height:100%}.full-bleed-profile .hero-image-a img{object-position:center 45%}.full-bleed-profile .hero-image-b{display:none}.full-bleed-profile .hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 62%)}.full-bleed-profile .hero-copy{bottom:8%;max-width:1000px}.full-bleed-profile .hero h1{font-size:clamp(3.5rem,8vw,8rem)}.full-bleed-profile .statement{min-height:80vh;align-content:center}.full-bleed-profile .project{min-height:68vh;padding:8rem var(--pad);margin:0 calc(var(--pad) * -1);grid-template-columns:.4fr 2fr 1fr;align-content:center}.full-bleed-profile .project:nth-child(even){background:#d7d0c2}.full-bleed-profile .project-2{background:linear-gradient(90deg,rgba(12,12,12,.78),rgba(12,12,12,.45)),url(../shared/assets/forest-rays.jpeg) center/cover;color:#fff}.full-bleed-profile .field-grid{height:100vh;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr;gap:0}.full-bleed-profile .field-1{grid-row:auto}

/* 07 — research journal */
.scientific-journal{--paper:#f6f2e9;--ink:#17213a;--muted:#667084;--accent:#d6563a;--display:Georgia,serif}.scientific-journal .topbar{border-top:7px solid var(--ink)}.scientific-journal .hero{min-height:auto;padding:5rem var(--pad);grid-template-columns:1.2fr 1fr;grid-template-rows:auto auto;gap:2rem}.scientific-journal .hero-copy{position:static;color:var(--ink);text-shadow:none;grid-column:1;grid-row:1}.scientific-journal .hero h1{font-size:clamp(3rem,6vw,6.5rem)}.scientific-journal .hero-image-a{grid-column:2;min-height:560px}.scientific-journal .hero-image-b{grid-column:1/3;min-height:320px;height:34vh}.scientific-journal .hero-caption{color:var(--ink);right:calc(var(--pad) * 1.4);bottom:6rem}.scientific-journal .hero-link{color:var(--accent)}.scientific-journal .statement{border-top:3px solid var(--ink)}.scientific-journal .project{grid-template-columns:100px 1fr 270px}.scientific-journal .project-index{font:700 2.5rem Georgia}.scientific-journal .project .tags:before{content:"KEYWORDS";display:block;font-size:.6rem;font-weight:700;margin-bottom:.7rem}.scientific-journal .caveat{background:#e7e1d6;padding:1rem}.scientific-journal .writing li{grid-template-columns:80px 1fr 180px}.scientific-journal footer{background:var(--ink)}

/* 08 — engineering atelier */
.technical-atelier{--paper:#151817;--ink:#eceee8;--muted:#929a94;--line:rgba(236,238,232,.18);--accent:#b7ff72;--display:"Courier New",monospace}.technical-atelier .topbar{background:#151817}.technical-atelier .mark{display:block;color:var(--accent)}.technical-atelier .name{font-family:"Courier New",monospace}.technical-atelier .hero{grid-template-columns:36% 64%;padding:2rem var(--pad);gap:1rem}.technical-atelier .hero-image-a{grid-column:2;border:1px solid var(--line)}.technical-atelier .hero-image-b{position:absolute;left:var(--pad);bottom:4rem;width:22%;height:28%;min-height:0;border:1px solid var(--accent)}.technical-atelier .hero-copy{left:var(--pad);top:10%;bottom:auto;color:var(--ink);text-shadow:none;width:55%;mix-blend-mode:normal}.technical-atelier .hero h1{font-family:"Courier New",monospace;font-size:clamp(2.8rem,5vw,5.8rem);background:var(--paper);padding:1rem 0}.technical-atelier .hero h1 em{color:var(--accent);font-style:normal}.technical-atelier .hero-caption{color:var(--ink)}.technical-atelier .statement h2,.technical-atelier .section-head h2,.technical-atelier .project h3,.technical-atelier footer h2{font-family:"Courier New",monospace}.technical-atelier .project{grid-template-columns:80px 1fr 280px}.technical-atelier .project-index{color:var(--accent)}.technical-atelier .project .tags{border-left:1px solid var(--accent);padding-left:1rem}.technical-atelier .capabilities{background:#242927}.technical-atelier .text-link,.technical-atelier .hero-link{color:var(--accent)}.technical-atelier .field-grid{height:65vh;filter:saturate(.7)}.technical-atelier footer{background:#0c0e0d}

/* 09 — alternating photo essay */
.photo-essay-cv{--paper:#f2efe8;--ink:#25201b;--muted:#7d746b;--accent:#537a89}.photo-essay-cv .topbar{position:absolute;width:100%;color:#fff;border:0}.photo-essay-cv .hero{display:block;height:100vh}.photo-essay-cv .hero-image-a{height:100%}.photo-essay-cv .hero-image-b{position:absolute;left:8%;top:18%;width:25%;height:58%;min-height:0;border:12px solid rgba(255,255,255,.9)}.photo-essay-cv .hero-copy{left:40%;bottom:13%;max-width:800px}.photo-essay-cv .hero h1{font-size:clamp(3.2rem,6vw,6.5rem)}.photo-essay-cv .project{grid-template-columns:1fr 1.4fr;min-height:55vh;align-content:center}.photo-essay-cv .project-index{font-size:5rem}.photo-essay-cv .project .tags{grid-column:2}.photo-essay-cv .project:nth-of-type(even) .project-index{grid-column:2}.photo-essay-cv .project:nth-of-type(even) .project-body{grid-column:1;grid-row:1}.photo-essay-cv .project:nth-of-type(even) .tags{grid-column:1}.photo-essay-cv .field-grid{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:70vh 70vh;gap:var(--pad);padding:var(--pad)}.photo-essay-cv .field-1{grid-row:1/2}.photo-essay-cv .field-2{grid-row:1/3}.photo-essay-cv .field-3{grid-row:2}.photo-essay-cv .career-grid{grid-template-columns:1fr}.photo-essay-cv .career article{display:grid;grid-template-columns:1fr 2fr 2fr;gap:2rem}

/* 10 — spatial research map */
.neural-cartography{--paper:#e7eee9;--ink:#0d3535;--muted:#56716e;--accent:#ef6c4f;--display:Arial,Helvetica,sans-serif;background-image:linear-gradient(rgba(13,53,53,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(13,53,53,.06) 1px,transparent 1px);background-size:48px 48px}.neural-cartography .topbar{background:rgba(231,238,233,.92);backdrop-filter:blur(12px);position:sticky;top:0}.neural-cartography .mark{display:block;border:1px solid var(--ink);border-radius:50%;width:40px;height:40px;text-align:center;line-height:38px}.neural-cartography .name{display:none}.neural-cartography .hero{min-height:850px;grid-template-columns:1fr 1fr;padding:var(--pad)}.neural-cartography .hero-image-a{clip-path:circle(38% at 55% 48%);grid-column:2}.neural-cartography .hero-image-b{position:absolute;width:22vw;height:22vw;min-height:0;right:4vw;bottom:3vw;clip-path:circle(48%)}.neural-cartography .hero-copy{position:static;grid-column:1;grid-row:1;color:var(--ink);text-shadow:none;align-self:center}.neural-cartography .hero h1{font-size:clamp(3rem,5.5vw,6.5rem);font-weight:700}.neural-cartography .hero h1 em{color:var(--accent);font-style:normal}.neural-cartography .hero-caption{color:var(--ink)}.neural-cartography .statement h2{max-width:1000px}.neural-cartography .project{grid-template-columns:90px 1fr 1fr;position:relative}.neural-cartography .project:before{content:"";position:absolute;left:37px;top:5rem;bottom:-3rem;border-left:1px solid var(--accent)}.neural-cartography .project-index{width:76px;height:76px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;background:var(--paper);z-index:1}.neural-cartography .project .tags{padding:1.5rem;border:1px solid var(--line);align-self:center}.neural-cartography .capabilities{background:var(--ink)}.neural-cartography footer{background:var(--ink)}

@media(max-width:760px){.topbar{height:64px;padding:0 1rem}.name{font-size:.82rem}.concept-no{display:none}.topbar nav{gap:.8rem}.topbar nav a{font-size:.62rem}.hero,.nordic-research .hero,.scientific-journal .hero,.technical-atelier .hero,.neural-cartography .hero{min-height:760px;height:auto;display:block;padding:0}.hero-image-a,.nordic-research .hero-image-a,.scientific-journal .hero-image-a,.technical-atelier .hero-image-a,.neural-cartography .hero-image-a{height:760px;min-height:0;clip-path:none}.hero-image-b,.field-notes .hero-image-b,.photo-essay-cv .hero-image-b,.technical-atelier .hero-image-b,.neural-cartography .hero-image-b,.scientific-journal .hero-image-b{display:none}.hero-copy,.nordic-research .hero-copy,.scientific-journal .hero-copy,.technical-atelier .hero-copy,.neural-cartography .hero-copy,.photo-essay-cv .hero-copy{position:absolute;left:1.2rem;right:1.2rem;top:auto;bottom:3rem;transform:none;width:auto;max-width:none;color:#fff;text-shadow:0 1px 20px rgba(0,0,0,.5);background:none;padding:0;z-index:3}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.74),transparent 70%)}.hero h1,.nordic-research .hero h1,.scientific-journal .hero h1,.technical-atelier .hero h1,.neural-cartography .hero h1{font-size:clamp(2.7rem,14vw,4.5rem);background:none;padding:0}.hero-caption{display:none}.statement,.work,.capabilities,.career,.writing{padding:5rem 1.2rem}.statement,.section-head,.field-intro,.nordic-research .statement,.nordic-research .section-head,.desert-editorial .statement,.desert-editorial .section-head{display:block}.statement h2,.section-head h2,.cap-grid h2,.field h2,footer h2{font-size:2.6rem}.statement-copy{grid-column:auto;display:block;margin-top:2rem}.section-head{margin-bottom:3rem}.project,.field-notes .project,.monochrome-lab .project,.desert-editorial .project,.nordic-research .project,.scientific-journal .project,.technical-atelier .project,.photo-essay-cv .project,.neural-cartography .project{display:block;min-height:0;padding:3rem 0;margin:0}.project-index{margin-bottom:1.5rem;font-size:1rem}.project .tags,.field-notes .project .tags,.monochrome-lab .project .tags,.photo-essay-cv .project .tags{grid-column:auto;margin-top:1.5rem;width:auto}.neural-cartography .project:before{display:none}.cap-grid{display:block}.cap-grid ul{margin-top:3rem}.field-intro{padding:5rem 1.2rem 2rem}.field-grid,.split-landscape .field-grid,.field-notes .field-grid,.desert-editorial .field-grid,.full-bleed-profile .field-grid,.photo-essay-cv .field-grid{height:auto;min-height:0;display:block;padding:0;transform:none}.field-grid figure,.field-notes .field-grid figure,.photo-essay-cv .field-grid figure{height:65vh;transform:none;margin-bottom:5px}.career-grid{grid-template-columns:1fr 1fr}.photo-essay-cv .career article{display:block}.writing li,.scientific-journal .writing li{grid-template-columns:55px 1fr}.writing small{grid-column:2}footer{display:block;padding:5rem 1.2rem 2rem}.footer-links{margin-top:3rem}.footer-note{margin-top:4rem}.field-notes .statement{padding-top:7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{overflow-x:hidden}
@media(max-width:760px){.topbar nav{display:none}.hero-copy,.field-notes .hero-copy,.photo-essay-cv .hero-copy,.technical-atelier .hero-copy{width:calc(100vw - 2.4rem);max-width:calc(100vw - 2.4rem);right:auto;overflow-wrap:break-word}.hero h1,.nordic-research .hero h1,.scientific-journal .hero h1,.technical-atelier .hero h1,.neural-cartography .hero h1{font-size:clamp(2.35rem,11.5vw,3.15rem)}}
