*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}:root{--bg:#f6f4f0;--surface:#fffdfa;--text:#16140f;--muted:#75706a;--faint:#a8a39b;--line:#e7e2da;--line2:#efebe4;--inv:#16140f;--inv-text:#f6f4f0;--band:#f1ece2;--band-text:#16140f;--band-line:#e4ded3;--accent:#e7d44e;--accent-ink:#1a1808;--accent-grad:linear-gradient(135deg, #f3e27a 0%, #e6c63c 100%);--accent-text:#806200}html[data-theme=dark]{--bg:#100f0d;--surface:#191815;--text:#f0ede7;--muted:#8f8980;--faint:#5e594f;--line:#272420;--line2:#211f1c;--inv:#f0ede7;--inv-text:#100f0d;--band:#1b1916;--band-text:#f3efe8;--band-line:#322e28;--accent:#ecda57;--accent-ink:#1a1808;--accent-grad:linear-gradient(135deg, #f6e88a 0%, #e8c845 100%);--accent-text:#ecda57}body{background:var(--bg);color:var(--text);font-family:Hanken Grotesk,system-ui,sans-serif;transition:background .5s,color .5s;overflow-x:hidden}@media (pointer:fine){html.cursorhide,html.cursorhide *{cursor:none!important}html.cursorhide input,html.cursorhide textarea,html.cursorhide select{cursor:text!important}}::selection{background:var(--text);color:var(--bg)}@media (max-width:820px),(pointer:coarse){.cursor-layer{display:none!important}}@keyframes pageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@keyframes revUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}[data-reveal]{opacity:1}[data-reveal][data-shown]{animation:.7s cubic-bezier(.2,.7,.2,1) both revUp}.client-logo{background:var(--muted);flex:none;height:30px;transition:background .3s;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.client-logo:hover{background:var(--text)}.btn-accent,.btn-inv{transition:transform .25s cubic-bezier(.2,.7,.2,1),filter .2s,box-shadow .2s}.btn-accent:hover,.btn-inv:hover{filter:brightness(1.08);box-shadow:0 10px 26px -10px #0000006b}.btn-accent:active,.btn-inv:active{filter:brightness(.9);box-shadow:0 3px 10px -6px #0006}.btn-outline{transition:transform .25s cubic-bezier(.2,.7,.2,1),filter .2s,box-shadow .2s,background .2s,border-color .2s}.btn-outline:hover{background:var(--surface);border-color:var(--muted);box-shadow:0 10px 26px -10px #00000047}.btn-outline:active{filter:brightness(.95);box-shadow:0 3px 10px -6px #0000004d}.navlink{text-underline-offset:5px;text-decoration:none;transition:color .2s,opacity .12s}.navlink:hover{text-decoration:underline;color:var(--text)!important}.navlink:active{opacity:.55}.card{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}.card:hover{border-color:var(--faint);transform:translateY(-6px);box-shadow:0 22px 50px -24px #0006}.bento-grid{grid-template-columns:repeat(4,1fr);gap:clamp(16px,1.8vw,24px);display:grid}.bento-hero{grid-column:1/-1}.bento-wide{grid-column:span 2}.bento-small{grid-column:span 1}.hike-card{color:var(--text);flex-direction:column;text-decoration:none;display:flex}.hike-card:hover .proj-arrow-ic{transform:translate(3px,-3px)rotate(-8deg)}.proj-arrow-ic{color:var(--faint);transition:transform .35s cubic-bezier(.2,.8,.2,1)}.stat-chip{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:0 0;border-radius:100px;align-items:center;padding:6px 12px;font-size:12px;line-height:1;transition:background .25s,color .25s,border-color .25s;display:inline-flex}.hike-card:hover .stat-chip{background:var(--line2);color:var(--text);border-color:var(--line)}.stack-wrap{width:100%;position:relative}.stack-img{border:3px solid var(--surface);height:100%;transform:translateX(var(--ix,0px));will-change:transform;border-radius:12px;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .35s;position:absolute;top:0;left:0;overflow:hidden;box-shadow:0 10px 24px -14px #0009}.stack-img img{object-fit:cover;width:100%;height:100%;display:block}.hike-card:hover .stack-img{transform:translateX(var(--tx,0px)) rotate(var(--r,0deg))}.hike-card:hover .stack-img--solo{transform:scale(1.03)}@media (max-width:900px),(hover:none){.stack-img{transform:translateX(var(--tx,0px)) rotate(var(--r,0deg))}}@media (prefers-reduced-motion:reduce){.card:hover{transform:none}.hike-card:hover .stack-img{transform:translateX(var(--ix,0px))}.hike-card:hover .stack-img--solo{transform:none}}@media (max-width:900px){.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-hero,.bento-wide{grid-column:span 2}.bento-small{grid-column:span 1}}@media (max-width:560px){.bento-grid{grid-template-columns:1fr;grid-auto-rows:auto}.bento-hero,.bento-wide,.bento-small{grid-column:span 1}}@keyframes labDrift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.lab-cover{background-size:220% 220%;transition:transform .55s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.lab-cover--anim{animation:16s ease-in-out infinite labDrift}.lab-buildcard:hover .lab-cover{transform:scale(1.06)}.lab-buildcard .proj-arrow-ic{color:var(--accent-text)}@media (prefers-reduced-motion:reduce){.lab-cover--anim{animation:none}.lab-buildcard:hover .lab-cover{transform:none}}.proj-rail{scrollbar-width:thin;scrollbar-color:var(--faint) transparent;-webkit-overflow-scrolling:touch;padding-top:8px}.proj-rail::-webkit-scrollbar{height:6px}.proj-rail::-webkit-scrollbar-thumb{background:var(--faint);border-radius:100px}.proj-rail::-webkit-scrollbar-track{background:0 0}.logo-btn{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.logo-btn:hover{transform:translateY(-2px)}@keyframes breathe{0%{opacity:.45;transform:translate(-50%,-50%)scale(1)}to{opacity:.85;transform:translate(-50%,-50%)scale(1.12)}}.footer-aurora{pointer-events:none;background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--accent) 14%, transparent) 0%, color-mix(in srgb, var(--accent) 5%, transparent) 45%, transparent 70%);filter:blur(90px);border-radius:50%;width:70vw;height:55vh;animation:10s ease-in-out infinite alternate breathe;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.footer-grid{background-size:56px 56px;background-image:linear-gradient(to right, color-mix(in srgb, var(--band-text) 4%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in srgb, var(--band-text) 4%, transparent) 1px, transparent 1px);-webkit-mask-image:linear-gradient(#0000,#000 25% 75%,#0000);mask-image:linear-gradient(#0000,#000 25% 75%,#0000)}.footer-giant{font-size:12.5vw}.footer-giant span{background:linear-gradient(180deg, color-mix(in srgb, var(--band-text) 10%, transparent) 0%, transparent 62%);color:#0000;-webkit-text-stroke:1px color-mix(in srgb, var(--band-text) 7%, transparent);-webkit-background-clip:text;background-clip:text}.footer-giant .footer-giant-w{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 24%, transparent) 0%, transparent 62%);-webkit-text-stroke:1px color-mix(in srgb, var(--accent) 20%, transparent);-webkit-background-clip:text;background-clip:text}.footer-social{transition:color .3s}.footer-social:hover{color:var(--band-text)!important}.footer-top-btn{transition:color .3s}.footer-top-btn:hover{color:var(--band-text)}.footer-top-btn:hover span{transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.footer-aurora{animation:none}}.contact-row{transition:background .25s,padding-left .25s,color .25s}.contact-row:hover{background:var(--surface);color:var(--accent-text);padding-left:22px}.field{transition:border-color .2s,background .2s,box-shadow .2s}.field:hover{border-color:var(--muted)}.field:focus{border-color:var(--accent-text);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-text) 18%, transparent)}@media (max-width:900px){.work-grid,.strat-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:820px){.nav-desktop{display:none!important}.nav-bottom{display:flex!important}main{padding-bottom:104px!important}.hero-band{padding-bottom:116px!important}}@media (max-width:560px){.work-grid,.strat-grid{grid-template-columns:1fr!important}nav{padding-left:16px!important;padding-right:16px!important}.logo-full{display:none!important}.logo-mini{display:inline!important}.about-head{flex-direction:column!important;align-items:flex-start!important;gap:18px!important}}
