:root{--ink:#151714;--paper:#f3f0e9;--acid:#d8ff45;--muted:#a8aaa3;--line:rgba(21,23,20,.18);--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.nav{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{font-family:'Manrope';font-size:25px;font-weight:700;letter-spacing:-2px}.brand span{color:#9dbd22}.nav nav{display:flex;gap:36px;font-size:13px}.nav nav a{position:relative}.nav nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--ink);transition:.25s}.nav nav a:hover:after{right:0}.nav-cta{font-size:13px;border-bottom:1px solid;padding:9px 0}.nav-cta span{margin-left:20px}.menu{display:none;background:none;border:0}.hero{padding:72px 4.5vw 0;overflow:hidden}.eyebrow,.kicker{font-size:11px;text-transform:uppercase;letter-spacing:.2em;font-weight:600;display:flex;align-items:center;gap:15px}.eyebrow i{width:42px;height:1px;background:var(--ink)}h1,h2,h3,p{margin-top:0}.hero h1{font:400 clamp(62px,9.4vw,148px)/.86 'Manrope',sans-serif;letter-spacing:-.075em;margin:46px 0 48px}.hero h1 em,.about h2 em,.contact h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}.hero-bottom{display:grid;grid-template-columns:1fr auto;align-items:end;margin-left:51%;gap:40px}.hero-bottom p{max-width:530px;font-size:19px;line-height:1.5}.circle-link{width:58px;height:58px;border:1px solid;border-radius:50%;display:grid;place-items:center;font-size:24px;transition:.25s}.circle-link:hover{background:var(--ink);color:var(--paper)}.hero-art{height:390px;margin-top:45px;background:#20231f;position:relative;overflow:hidden;color:rgba(255,255,255,.5)}.grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:60px 60px}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-a{width:380px;height:380px;background:radial-gradient(circle at 35% 25%,#f4ffba,var(--acid) 35%,#7c9f00 75%);left:18%;top:70px}.orb-b{width:270px;height:270px;border:45px solid #716f68;right:13%;top:-55px}.hero-art span{position:absolute;font:500 10px 'Manrope';letter-spacing:.25em}.hero-art span:nth-of-type(1){left:3%;top:45%}.hero-art span:nth-of-type(2){right:3%;top:22%}.hero-art span:nth-of-type(3){right:4%;bottom:7%}.metrics{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.metrics div{padding:28px 3%;border-right:1px solid var(--line);display:flex;align-items:baseline;gap:18px}.metrics div:last-child{border:0}.metrics strong{font:500 38px 'Manrope';letter-spacing:-.05em}.metrics span{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.marquee{background:var(--acid);overflow:hidden;padding:17px 0;white-space:nowrap;font:600 12px 'Manrope';letter-spacing:.22em}.marquee div{text-align:center}.marquee b{margin:0 30px}.section{padding:130px 4.5vw}.section-head{display:grid;grid-template-columns:1fr 2fr 1fr;gap:50px;align-items:start;margin-bottom:80px}.section-head>span{font-size:11px;text-transform:uppercase;letter-spacing:.18em}.section-head h2{font:500 clamp(42px,5vw,76px)/1 'Manrope';letter-spacing:-.06em}.section-head>p{font-size:15px;line-height:1.6;color:#555}.projects{display:grid;grid-template-columns:1fr 1fr;gap:65px 24px}.project.large{grid-column:1/-1}.project-visual{height:440px;position:relative;overflow:hidden;background:#d3d0c7}.large .project-visual{height:620px}.project-visual b{position:absolute;right:22px;bottom:18px;font:500 12px 'Manrope'}.artifact-label{position:absolute;top:22px;left:22px;font-size:9px;letter-spacing:.18em;z-index:2}.cooler{background:linear-gradient(130deg,#8c918a,#d7d8d3 45%,#555b55)}.product-shape{position:absolute;width:45%;height:62%;left:29%;top:19%;background:linear-gradient(135deg,#303632 0 48%,#191d1a 49%);border-radius:22px 22px 45px 45px;box-shadow:0 45px 70px #30332d99}.product-shape:before{content:'';position:absolute;left:10%;right:10%;top:-7%;height:12%;border:12px solid #181b18;border-radius:12px}.precision{background:#d7ff4f}.rings{position:absolute;width:310px;height:310px;border:55px solid var(--ink);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.rings:after{content:'';position:absolute;width:95px;height:95px;background:var(--paper);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.system{background:#1e211e}.blocks{position:absolute;width:280px;height:200px;background:#e8e4d9;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-9deg);box-shadow:45px 45px 0 var(--acid),-45px -45px 0 #73786f}.system .artifact-label,.system b{color:white}.project-copy{display:grid;grid-template-columns:1fr 1fr 130px;gap:30px;padding-top:20px;border-top:1px solid;margin-top:14px}.project:not(.large) .project-copy{grid-template-columns:1fr}.project-copy span{font-size:10px;letter-spacing:.15em}.project-copy h3{font:500 25px 'Manrope';letter-spacing:-.035em;margin-top:8px}.project-copy p{font-size:14px;line-height:1.55;color:#555}.project-copy button{background:none;border:0;border-bottom:1px solid;padding:0 0 8px;text-align:left;align-self:start;cursor:pointer;font-size:12px}.statement{background:var(--ink);color:var(--paper);padding:140px 10vw}.statement p{font:400 clamp(38px,6.3vw,90px)/1.06 'Manrope';letter-spacing:-.06em;max-width:1200px}.statement em{font-family:var(--serif);font-weight:400;color:var(--acid)}.about{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.portrait{min-height:700px;background:#cac8c1;position:relative;display:grid;place-items:center;overflow:hidden}.portrait:before{content:'';width:76%;aspect-ratio:1;border:1px solid rgba(21,23,20,.3);border-radius:50%;position:absolute}.portrait-mark{font:500 170px 'Manrope';letter-spacing:-.12em;color:#b0aea7}.portrait>span{position:absolute;bottom:20px;left:20px;font-size:10px;text-transform:uppercase;letter-spacing:.15em}.about-copy h2{font:500 clamp(48px,6vw,82px)/.98 'Manrope';letter-spacing:-.06em;margin:48px 0}.about-copy .lead{font-size:22px;line-height:1.45}.about-copy>p:not(.lead){line-height:1.7;color:#555}.capabilities{display:flex;flex-wrap:wrap;gap:8px;margin-top:45px}.capabilities span{border:1px solid var(--line);border-radius:30px;padding:10px 14px;font-size:11px}.experience{background:#dedbd2}.section-head.compact{grid-template-columns:1fr 3fr}.timeline{margin-left:25%}.role{display:grid;grid-template-columns:120px 1fr auto;gap:40px;border-top:1px solid var(--line);padding:28px 0}.role>span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.role h3{font:500 22px 'Manrope';margin-bottom:5px}.role p{font-size:13px;color:#62645f}.resume-link{display:flex;justify-content:space-between;border-bottom:1px solid;padding:18px 0;margin:55px 0 0 25%;font-size:14px}.contact{background:var(--ink);color:var(--paper);padding:130px 4.5vw 35px}.contact>span{font-size:10px;text-transform:uppercase;letter-spacing:.17em;color:var(--muted)}.contact h2{font:500 clamp(52px,8vw,115px)/.95 'Manrope';letter-spacing:-.07em;margin:80px 0 35px}.contact h2 em{color:var(--acid)}.contact>p{font-size:16px;color:var(--muted)}.contact>a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #777;padding:28px 0;margin-top:70px;font:400 clamp(22px,3vw,42px) 'Manrope'}.contact footer{margin-top:110px;padding-top:25px;border-top:1px solid #494c47;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}.contact footer p{font-size:11px;color:var(--muted);margin:0}.contact footer p:last-child{text-align:right}.inverse{color:white}dialog{max-width:650px;border:0;padding:60px;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px #0007}dialog::backdrop{background:#121411c9;backdrop-filter:blur(8px)}dialog>span{text-transform:uppercase;letter-spacing:.16em;font-size:10px}dialog h2{font:500 45px 'Manrope';letter-spacing:-.05em;margin:22px 0}dialog p{line-height:1.7;color:#555}dialog>a{display:inline-block;border-bottom:1px solid;margin-top:20px;padding-bottom:8px}.close{position:absolute;right:20px;top:14px;border:0;background:none;font-size:35px;cursor:pointer}
@media(max-width:800px){.nav{height:70px}.nav nav,.nav-cta{display:none}.menu{display:block}.hero{padding-top:48px}.hero h1{font-size:16vw;margin:35px 0}.hero-bottom{margin:0;grid-template-columns:1fr auto}.hero-bottom p{font-size:16px}.hero-art{height:320px}.orb-a{width:270px;height:270px;left:5%;top:70px}.orb-b{right:-25%;width:220px;height:220px}.metrics{grid-template-columns:1fr}.metrics div{border-right:0;border-bottom:1px solid}.section{padding:85px 5vw}.section-head,.section-head.compact{grid-template-columns:1fr}.section-head{gap:20px;margin-bottom:45px}.projects{grid-template-columns:1fr}.project.large{grid-column:auto}.project-visual,.large .project-visual{height:400px}.project-copy{grid-template-columns:1fr}.statement{padding:90px 6vw}.about{grid-template-columns:1fr}.portrait{min-height:480px}.timeline,.resume-link{margin-left:0}.role{grid-template-columns:85px 1fr}.role>b{display:none}.contact{padding-top:90px}.contact h2{margin-top:55px}.contact footer{grid-template-columns:1fr;gap:15px}.contact footer p:last-child{text-align:left}.marquee div{animation:slide 18s linear infinite}@keyframes slide{to{transform:translateX(-60%)}}}
@media(prefers-reduced-motion:no-preference){.project{transition:transform .35s}.project:hover{transform:translateY(-5px)}}
.impact-strip{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 70px 25%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.impact-strip div{padding:28px 18px;border-right:1px solid var(--line)}.impact-strip div:last-child{border:0}.impact-strip strong{display:block;font:500 32px 'Manrope';letter-spacing:-.06em}.impact-strip span,.credentials span{font-size:10px;text-transform:uppercase;letter-spacing:.08em}.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:70px 0 0 25%;border-top:1px solid var(--line);padding-top:30px}.credentials p{font-size:13px;line-height:1.75;margin-top:14px}.contact .phone{margin-top:18px}.contact .phone a{color:var(--muted);font-size:14px}dialog #dialog-details{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0}dialog #dialog-details div{border-top:1px solid var(--line);padding-top:14px}dialog #dialog-details strong{display:block;font:500 24px 'Manrope';margin-bottom:5px}dialog #dialog-details span{font-size:11px;line-height:1.4;color:#62645f}
@media(max-width:800px){.impact-strip{grid-template-columns:1fr 1fr;margin-left:0}.impact-strip div:nth-child(2){border-right:0}.credentials{grid-template-columns:1fr;margin-left:0}.credentials div{border-bottom:1px solid var(--line);padding-bottom:20px}dialog #dialog-details{grid-template-columns:1fr}}
.portrait{margin:0;display:block}.portrait:before{display:none}.portrait img{width:100%;height:100%;min-height:700px;display:block;object-fit:cover;object-position:50% 38%}.portrait figcaption{position:absolute;bottom:20px;left:20px;background:rgba(243,240,233,.88);backdrop-filter:blur(8px);padding:9px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.portrait .portrait-mark,.portrait>span{display:none}
@media(max-width:800px){.portrait img{min-height:480px;object-position:50% 35%}}
.cooler{background:#b8b0a6}.cooler>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 62%;filter:saturate(.86) contrast(1.04)}.cooler .artifact-label,.cooler>b{color:white;text-shadow:0 1px 8px #000}.cooler .artifact-label{background:rgba(21,23,20,.7);padding:8px 10px}.cooler .product-shape{display:none}#case-dialog:has(#dialog-gallery img){max-width:min(1080px,92vw)}#dialog-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:30px 0}#dialog-gallery img{width:100%;aspect-ratio:1;object-fit:contain;background:#eee}#dialog-gallery img:first-child{grid-row:span 2;background:#111}@media(max-width:800px){#dialog-gallery{grid-template-columns:1fr}#dialog-gallery img:first-child{grid-row:auto}}
.hopper{background:#857a67}.hopper>img{width:100%;height:100%;display:block;object-fit:cover}.hopper .artifact-label,.hopper>b{color:white;text-shadow:0 1px 8px #000}.hopper .artifact-label{background:rgba(21,23,20,.7);padding:8px 10px}
.crossroads{background:#c69b3b}.crossroads>img{width:100%;height:100%;display:block;object-fit:cover}.crossroads .artifact-label,.crossroads>b{color:white;text-shadow:0 1px 8px #000}.crossroads .artifact-label{background:rgba(21,23,20,.7);padding:8px 10px}
.backpack{background:#3d5e58}.backpack>img{width:100%;height:100%;display:block;object-fit:cover}.backpack .artifact-label,.backpack>b{color:white;text-shadow:0 1px 8px #000}.backpack .artifact-label{background:rgba(21,23,20,.7);padding:8px 10px}
.trailhead{background:#6c665a}.trailhead>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 82%}.brand-page .project.large .trailhead{height:min(72vw,860px)}.trailhead .artifact-label,.trailhead>b{color:white;text-shadow:0 1px 8px #000}.trailhead .artifact-label{background:rgba(21,23,20,.7);padding:8px 10px}
.rambler{background:#b4a06d}.rambler>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.rambler .artifact-label,.rambler>b{color:white;text-shadow:0 1px 8px #000}.rambler .artifact-label{background:rgba(21,23,20,.7);padding:8px 10px}.brand-group{grid-column:1/-1;display:grid;grid-template-columns:1fr 2fr 1fr;gap:50px;align-items:start;border-top:1px solid var(--ink);padding-top:22px;margin-top:4px}.brand-group span{font-size:10px;text-transform:uppercase;letter-spacing:.18em}.brand-group h3{font:500 30px 'Manrope';letter-spacing:-.04em;margin:0}.brand-group p{font-size:13px;line-height:1.6;color:#555}.brand-group.secondary{margin-top:20px}.brand-group.secondary h3{grid-column:2/-1}@media(max-width:800px){.brand-group{grid-template-columns:1fr;gap:10px}.brand-group.secondary h3{grid-column:auto}}
.case-trigger{position:absolute;inset:0;z-index:3;border:0;background:linear-gradient(180deg,transparent 58%,rgba(12,14,12,.55));cursor:pointer;text-align:left;color:white;padding:0}.case-trigger span{position:absolute;left:22px;bottom:20px;padding:12px 16px;background:rgba(21,23,20,.88);border:1px solid rgba(255,255,255,.55);font-size:12px;letter-spacing:.04em;transition:transform .25s,background .25s,color .25s}.case-trigger:hover span,.case-trigger:focus-visible span{transform:translateY(-4px);background:var(--acid);color:var(--ink);border-color:var(--acid)}.case-trigger:focus-visible{outline:3px solid var(--acid);outline-offset:-3px}.case-trigger.dark{color:var(--ink);background:linear-gradient(180deg,transparent 58%,rgba(243,240,233,.45))}.case-trigger.dark span{background:rgba(243,240,233,.92);color:var(--ink);border-color:rgba(21,23,20,.45)}.project-visual b{z-index:4;pointer-events:none}.artifact-label{z-index:4;pointer-events:none}@media(max-width:800px){.case-trigger span{left:16px;bottom:16px;padding:11px 14px}}
.marquee a{display:inline;font:inherit;letter-spacing:inherit;border-bottom:1px solid transparent;transition:border-color .2s}.marquee a:hover,.marquee a:focus-visible{border-color:var(--ink)}.view-brand{grid-column:1/-1;background:var(--acid);display:flex;align-items:center;justify-content:space-between;padding:30px 34px;margin-top:-20px;transition:background .2s,color .2s}.view-brand span{font:500 25px 'Manrope';letter-spacing:-.035em}.view-brand b{font-size:12px;font-weight:600}.view-brand:hover,.view-brand:focus-visible{background:var(--ink);color:var(--paper)}
.brand-page-hero{padding:70px 4.5vw 90px}.back-link{display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:80px;border-bottom:1px solid;padding-bottom:7px}.brand-page-heading{display:grid;grid-template-columns:1fr 2fr 1fr;gap:50px;align-items:end}.brand-page-heading>span{align-self:start;font-size:10px;text-transform:uppercase;letter-spacing:.18em}.brand-page-heading h1{font:500 clamp(54px,7vw,108px)/.92 'Manrope';letter-spacing:-.07em;margin:0}.brand-page-heading h1 em{font-family:var(--serif);font-weight:400}.brand-page-heading p{font-size:15px;line-height:1.65;color:#555;margin:0}.category-nav{position:sticky;top:0;z-index:8;background:var(--acid);display:flex;justify-content:center;gap:50px;padding:18px 4.5vw;font-size:11px;text-transform:uppercase;letter-spacing:.13em}.category-nav a{border-bottom:1px solid transparent}.category-nav a:hover,.category-nav a:focus-visible{border-color:var(--ink)}.brand-work{padding-top:85px}.category-head{grid-column:1/-1;display:grid;grid-template-columns:1fr 3fr;gap:50px;border-top:1px solid var(--ink);padding-top:22px;margin-top:35px;scroll-margin-top:80px}.category-head:first-child{margin-top:0}.category-head span{font-size:10px;text-transform:uppercase;letter-spacing:.18em}.category-head h2{font:500 clamp(34px,4vw,58px)/1 'Manrope';letter-spacing:-.055em;margin:0}.brand-page-contact{background:var(--ink);color:var(--paper);padding:100px 4.5vw 32px}.brand-page-contact>span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.17em}.brand-page-contact h2{font:500 clamp(50px,7vw,100px)/.95 'Manrope';letter-spacing:-.07em;margin:55px 0 40px}.brand-page-contact>a{display:flex;justify-content:space-between;border-bottom:1px solid #666;padding:20px 0;font-size:18px}.brand-page-contact footer{display:flex;justify-content:space-between;align-items:center;margin-top:90px;padding-top:24px;border-top:1px solid #494c47}.brand-page-contact footer p{font-size:11px;color:var(--muted);margin:0}
@media(max-width:800px){.view-brand{align-items:flex-start;flex-direction:column;gap:16px;padding:24px}.view-brand span{font-size:21px}.brand-page-hero{padding:45px 5vw 65px}.back-link{margin-bottom:50px}.brand-page-heading,.category-head{grid-template-columns:1fr;gap:18px}.brand-page-heading h1{font-size:15vw}.category-nav{justify-content:flex-start;gap:26px;overflow-x:auto;white-space:nowrap}.brand-work{padding-top:60px}.category-head{margin-top:20px}.brand-page .project.large .trailhead{height:400px}.brand-page-contact{padding-top:80px}}
.hero h1 em{color:var(--ink);opacity:0;animation:beliefFade 4s cubic-bezier(.22,1,.36,1) .5s forwards}@keyframes beliefFade{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.hero h1 em{opacity:1;animation:none}}
@media(max-width:800px){.marquee{display:flex;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x}.marquee::-webkit-scrollbar{display:none}.marquee div{flex:0 0 auto;width:max-content;min-width:0;padding:0 5vw;text-align:left;animation:none;user-select:none}}
