:root{--lime:#abdb23;--paper:#f0f0ee;--ink:#10110e;--pad:4vw;--header:76px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header)}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--lime);outline-offset:6px}button:focus-visible{outline-color:currentColor}.micro{font-family:'Arial Narrow',Arial,sans-serif;font-size:10px;letter-spacing:.05em;line-height:1.4;text-transform:uppercase}.access-skip{position:fixed;top:-60px;left:10px;background:var(--lime);padding:14px;z-index:200}.access-skip:focus{top:10px}.site-header{height:var(--header);padding:0 var(--pad);position:fixed;inset:0 0 auto;z-index:50;background:rgba(240,240,238,.96);display:flex;align-items:center;gap:12vw;border-bottom:1px solid #1111;backdrop-filter:blur(12px)}.logo{width:128px;flex-shrink:0}.logo img{width:100%;height:auto;display:block}.site-header nav{display:flex;align-items:center;justify-content:space-between;flex:1}.site-header nav a{font-size:14px;position:relative;padding:12px 0}.site-header nav a:after{content:'';position:absolute;bottom:6px;left:0;right:0;height:3px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .3s}.site-header nav a:hover:after{transform:scaleX(1)}
.hero{min-height:100svh;padding-top:calc(var(--header) + 4vw);display:flex;align-items:center;flex-direction:column;position:relative}.hero-word{font-family:'Arial Black',Arial,Helvetica,sans-serif;font-size:22.25vw;line-height:.92;font-weight:900;letter-spacing:-.065em;margin-left:-.035em;animation:hero-enter 1s cubic-bezier(.2,.7,.2,1) both}.lime-button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--lime);color:#10110e;padding:8px 16px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:.28em;transition:box-shadow .25s,transform .25s}.hero-cta{margin:4.5vw 0 2.2vw}.arrow{font-size:23px;line-height:14px;letter-spacing:0;transition:transform .3s}.lime-button:hover{box-shadow:0 0 0 5px #abdb2333;transform:translateY(-2px)}.lime-button:hover .arrow{transform:translate(3px,-3px)}.roles{width:100%;display:flex;justify-content:space-around;gap:10px;padding:5px 2vw;background:#fff9;font-family:'Arial Narrow',Arial,sans-serif;font-size:9px}.hero-intro{max-width:770px;width:65%;font-size:12px;line-height:1.32;text-align:center;margin:7vw auto 5vw}.hero-bottom{margin-top:auto;width:100%;padding:0 var(--pad) 22px;display:flex;justify-content:space-between}.hero-bottom a{border-bottom:1px solid #777;padding-bottom:4px}
.project-world,.approach{position:relative;isolation:isolate;overflow:clip}.project-world{background:linear-gradient(#10110e 0%,#171813 42%,#80817d 100%);color:var(--paper)}.contours{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.24}.world-intro{padding:38px var(--pad) 8vw}.section-meta,.approach-top{display:flex;justify-content:space-between;gap:20px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--lime);margin-right:8px;box-shadow:0 0 12px #abdb2355}.statement{font-size:clamp(36px,6vw,110px);line-height:.96;font-weight:600;letter-spacing:-.055em;margin:7vw 0 5vw;max-width:1200px}.serif{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;color:var(--lime);letter-spacing:-.055em}.intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:11vw;margin-left:27%;max-width:900px}.intro-copy p{font-size:14px;line-height:1.5;max-width:360px}.horizontal{position:relative}.gallery-sticky{height:calc(100svh - var(--header));position:sticky;top:var(--header);display:flex;flex-direction:column;justify-content:space-between;padding:26px 0}.gallery-toolbar,.gallery-footer{padding:0 var(--pad);display:flex;justify-content:space-between;align-items:center;gap:16px}.bracket{color:var(--lime);margin-left:25px}.gallery-hint{opacity:.65}.gallery-window{width:100%;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-y;flex:1;display:flex;align-items:center;cursor:grab}.gallery-window::-webkit-scrollbar{display:none}.gallery-window.dragging{cursor:grabbing}.gallery-track{display:flex;align-items:center;gap:7vw;width:max-content;padding:16px var(--pad);will-change:transform}.project-card{flex-shrink:0;width:37vw;border:0;background:none;padding:0;text-align:left;display:block;position:relative;cursor:pointer}.project-card:nth-child(3n+1){margin-top:70px}.project-card:nth-child(3n+2){margin-top:-70px}.card-eyebrow{font-size:9px;display:block;opacity:.72;margin-bottom:5px}.card-name{font-size:13px;letter-spacing:-.025em;font-weight:500;color:var(--lime);display:flex;justify-content:space-between;margin-bottom:10px}.card-name .card-arrow{transition:transform .3s}.card-image{position:relative;overflow:hidden;aspect-ratio:1.95;background:#20221a}.card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.2,1),filter .5s}.card-image:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#10110e35 3px 4px);opacity:0;transition:opacity .4s;pointer-events:none}.project-card:hover img{transform:scale(1.045)}.project-card:hover .card-image:after{opacity:1}.project-card:hover .card-arrow{transform:translate(3px,-3px)}.card-caption{display:flex;justify-content:space-between;margin-top:10px;font-size:9px;line-height:1.4;gap:20px;opacity:.8}.gallery-footer{min-height:38px}.gallery-controls{display:flex;align-items:center;gap:18px}.gallery-controls button{width:32px;height:30px;border:1px solid currentColor;background:transparent;transition:background .2s,color .2s}.gallery-controls button:hover{background:var(--lime);color:#10110e;border-color:var(--lime)}.gallery-controls button:disabled{opacity:.25;cursor:default}.gallery-count{min-width:48px;text-align:center}.progress-ticks{width:140px;height:12px;background:repeating-linear-gradient(90deg,currentColor 0 1px,transparent 1px 6px);position:relative;opacity:.8}.progress-ticks span{display:block;background:var(--lime);height:100%;width:8px;transition:width .15s}
.approach{background:linear-gradient(#80817d,#f0f0ee 36%);padding-top:34px}.approach>.contours{opacity:.14}.approach-top{padding:0 var(--pad)}.process-echo{display:flex;flex-direction:column;text-align:center;gap:0;margin:8vw auto 5vw;line-height:.72;letter-spacing:-.06em;font-size:clamp(65px,14vw,230px);font-weight:800;color:transparent;-webkit-text-stroke:1px #1115;transform:skewY(-3deg)}.process-echo span:nth-child(2){transform:translateX(3vw);-webkit-text-stroke-color:#e9ebdcaa}.approach-statement{font-size:clamp(24px,3.4vw,58px);line-height:1.08;letter-spacing:-.04em;max-width:1050px;width:85%;margin:0 auto;text-align:center;font-weight:700}.approach-statement em{font-style:normal;color:var(--ink);background:linear-gradient(transparent 76%,var(--lime) 76%)}.approach-copy{font-size:18px;line-height:1.25;text-align:center;margin:48px auto 30px}.process-label{text-align:center;margin-bottom:6vw}.crosshair{color:#638000;font-size:26px;vertical-align:middle;margin-right:10px}.framed-gallery .gallery-track{gap:3vw}.framed-gallery .project-card{width:32vw;padding:18px;border:1px solid #707368;border-radius:7px;background:#f0f0ee70;transition:border-color .3s,background .3s,box-shadow .3s;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px))}.framed-gallery .project-card:before,.framed-gallery .project-card:after{content:'';position:absolute;width:20px;height:20px;z-index:2;border-color:#767b68;pointer-events:none}.framed-gallery .project-card:before{top:5px;left:5px;border-left:2px solid;border-top:2px solid}.framed-gallery .project-card:after{bottom:5px;right:5px;border-right:2px solid;border-bottom:2px solid}.framed-gallery .card-name{color:#171a11;font-size:12px}.framed-gallery .card-eyebrow{font-size:8px;letter-spacing:.1em}.framed-gallery .project-card:hover{border-color:#6c8e00;background:#abdb2320;box-shadow:inset 0 0 0 1px #8bab42}.framed-gallery .project-card:nth-child(3n+1){margin-top:55px}.framed-gallery .project-card:nth-child(3n+2){margin-top:-55px}.framed-gallery .card-image{aspect-ratio:1.8}.framed-gallery .card-caption{font-size:9px}.framed-gallery .gallery-footer{border-top:1px solid #1112;padding-top:16px}
footer{padding:100px var(--pad) 22px;background:linear-gradient(#f0f0ee 0%,#eaf2d2 35%,var(--lime) 86%);text-align:center}footer>p{font-size:13px;text-transform:uppercase;max-width:940px;line-height:1.4;margin:16px auto 35px}.contact-link{font-size:11px;letter-spacing:.1em;border-bottom:1px solid;padding-bottom:6px}.footer-word{display:block;font-family:'Arial Black',Arial,sans-serif;font-weight:900;letter-spacing:-.075em;font-size:22vw;line-height:1.1;margin-top:45px;text-shadow:0 12px 0 #10110e25}.footer-meta{display:flex;justify-content:space-between;margin-top:30px;padding-top:20px;border-top:1px solid #1114}.view-cursor{position:fixed;top:0;left:0;background:var(--lime);color:#10110e;border-radius:50%;width:66px;height:66px;display:grid;place-items:center;font-size:10px;pointer-events:none;z-index:100;opacity:0;transform:translate(-50%,-50%);transition:opacity .2s}.view-cursor.visible{opacity:1}.project-dialog{border:1px solid #666;background:var(--paper);color:var(--ink);max-width:940px;width:90vw;max-height:90svh;padding:45px;border-radius:8px}.project-dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}.dialog-close{display:block;margin:0 0 25px auto;background:var(--lime);border:0;padding:10px 16px;font-size:11px}.dialog-content img{width:100%;max-height:52vh;object-fit:contain;background:#161910}.dialog-content h2{font-size:clamp(24px,4vw,44px);letter-spacing:-.04em;margin:22px 0 12px}.dialog-content p{font-size:15px;line-height:1.6;max-width:65ch}.dialog-content .micro{margin-bottom:12px}.dialog-content a{display:inline-block;margin-top:22px;border-bottom:1px solid}.art-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}.art-grid img{height:150px;object-fit:cover}.reveal{transition:opacity .9s,transform .9s}.motion .reveal:not(.seen){opacity:.25;transform:translateY(30px)}@keyframes hero-enter{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:769px) and (prefers-reduced-motion:no-preference){.motion .horizontal{height:calc(100svh + var(--travel,1600px))}.motion .gallery-window{overflow:hidden}.motion .gallery-track{transform:translate3d(var(--x,0px),0,0)}}
@media(min-width:1600px){.hero{padding-top:calc(var(--header) + 5vw)}.hero-intro{font-size:15px}.micro{font-size:12px}.intro-copy p{font-size:18px}}
@media(max-width:768px){:root{--header:64px;--pad:6vw}.site-header{gap:6vw}.logo{width:88px}.site-header nav{gap:15px}.site-header nav a{font-size:10px}.hero{min-height:88svh;padding-top:calc(var(--header) + 15vw)}.hero-word{font-size:23vw}.hero-cta{margin:12vw 0 8vw;font-size:10px}.roles{font-size:7px;gap:8px;flex-wrap:wrap;justify-content:center;padding:8px 6vw}.hero-intro{width:85%;font-size:11px;margin:14vw auto 12vw}.hero-bottom{font-size:8px;gap:15px}.hero-bottom>span:first-child{display:none}.world-intro{padding-top:25px}.section-meta{font-size:8px}.section-meta>span:first-child{max-width:160px}.statement{font-size:9vw;margin:18vw 0 12vw}.intro-copy{margin-left:15%;grid-template-columns:1fr;gap:24px}.intro-copy p{font-size:13px}.gallery-sticky{height:auto;min-height:650px;padding:40px 0;gap:32px;position:relative;top:0}.gallery-window{touch-action:pan-x pan-y;scroll-snap-type:x mandatory;min-height:380px}.gallery-track{gap:8vw}.project-card,.framed-gallery .project-card{width:78vw;scroll-snap-align:center}.project-card:nth-child(n),.framed-gallery .project-card:nth-child(n){margin-top:0}.card-name{font-size:12px}.gallery-toolbar{font-size:8px}.bracket{display:block;margin:4px 0 0}.gallery-hint{max-width:90px;text-align:right}.gallery-footer>span{font-size:8px;max-width:95px}.gallery-controls{gap:8px}.progress-ticks{width:55px}.approach-top{font-size:8px}.process-echo{margin:25vw auto 18vw}.approach-statement{font-size:6.3vw}.approach-copy{font-size:17px;margin-top:34px}.process-label{font-size:8px;margin-bottom:40px}.framed-gallery .gallery-track{gap:6vw}.framed-gallery .project-card{padding:16px}.gallery-count{font-size:9px}.approach .gallery-sticky{min-height:600px}footer{padding-top:60px}.footer-meta{font-size:8px;gap:15px;flex-wrap:wrap}footer>p{font-size:11px}.footer-word{font-size:23vw}.project-dialog{padding:20px}.art-grid{grid-template-columns:1fr 1fr}.art-grid img{height:120px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.gallery-window{touch-action:pan-x pan-y}.gallery-track{transform:none!important}.process-echo{transform:none}.view-cursor{display:none}}

@media(max-width:768px){.site-header{gap:5vw}.logo{width:80px}.site-header nav{gap:10px}.site-header nav a{font-size:9px;white-space:nowrap}}
.video-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}

.video-button {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 4px 14px;
  background: #abdb231c;
  color: var(--ink);
  border: 1px solid #abdb2370;
  font-size: 13px;
  text-decoration: none;
  transition:
    background-color .25s ease,
    border-color .25s ease,
    box-shadow .25s ease,
    transform .25s ease;
}

.video-button .video-arrow {
  display: inline-block;
  transition: transform .25s ease;
}

.video-button:hover {
  background: #abdb2340;
  border-color: #abdb23;
  box-shadow: 0 0 0 4px #abdb2325;
  transform: translateY(-2px);
}

.video-button:hover .video-arrow {
  transform: translate(3px, -3px);
}
/* Restored low-poly hero model from the original portfolio interaction. */
.hero-model{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;pointer-events:none}
.hero>*:not(.hero-model){position:relative;z-index:1}
