@font-face{font-family:Chakra;src:url(/assets/portfolio/fonts/ChakraPetch-500.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Chakra;src:url(/assets/portfolio/fonts/ChakraPetch-600.woff2) format("woff2");font-weight:600 800;font-display:swap}@font-face{font-family:InterTight;src:url(/assets/portfolio/fonts/InterTight-var.woff2) format("woff2");font-weight:100 900;font-display:swap}:root{--ivory:#fafaf8;--ink:#141413;--copper:#c06b3e;--muted:#69675f;--line:rgba(20,20,19,.13);font-family:InterTight,Arial,sans-serif;color:var(--ink);background:var(--ivory);font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid var(--copper);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}::selection{background:#c06b3e40}section[id]{scroll-margin-top:100px}.eyebrow,.micro{font-family:Chakra,monospace;font-size:10px;letter-spacing:.14em;font-weight:500}.eyebrow{color:var(--copper)}.content-width{width:min(1180px,calc(100% - 100px));margin-inline:auto}.skip-link{position:fixed;top:10px;left:20px;z-index:1000;background:var(--ink);color:#fff;padding:14px;transform:translateY(-150%)}.skip-link:focus{transform:none}.portfolio-nav{height:88px;padding:0 50px;position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(var(--ivory),#fafaf8e8 75%,#fafaf800);gap:30px}.personal-brand{display:flex;align-items:center;gap:14px;font-family:Chakra,sans-serif;font-size:13px}.ab-mark{font-family:InterTight,sans-serif;font-weight:300;font-size:27px;letter-spacing:-6px;margin-right:5px}.portfolio-nav nav{display:flex;align-items:center;gap:34px;font-size:13px}.portfolio-nav nav a:hover,.text-link:hover{color:var(--copper)}.portfolio-nav nav a:last-child span{color:var(--copper);margin-left:8px}.studio-link{display:flex;gap:10px;align-items:center;font-family:Chakra,monospace;font-size:10px;letter-spacing:.18em}.studio-link img{width:25px;height:25px}.scroll-experience{height:520vh;position:relative}.hero-stage{height:100svh;position:sticky;top:0;overflow:hidden;background:#eeece6;isolation:isolate;--intro-opacity:1}.hero-grain{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23888888' opacity='.1' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");opacity:.4;pointer-events:none}.hero-intro{position:absolute;top:112px;left:0;right:0;text-align:center;z-index:6;opacity:var(--intro-opacity);pointer-events:none}.hero-intro h1,.static-hero h1{font-family:Chakra,sans-serif;font-weight:500;font-size:clamp(38px,5.1vw,76px);letter-spacing:-.045em;line-height:1.1;margin:15px 0 13px}.hero-intro h1 span,.static-hero h1 span{color:var(--copper)}.hero-intro p{font-size:13px;letter-spacing:.025em;color:var(--muted)}.hero-character{position:absolute;z-index:2;bottom:0;left:50%;transform:translate(-50%);width:min(1180px,110vw);max-width:none;height:auto;pointer-events:none}.scene-layer{position:absolute;inset:0;pointer-events:none}.scene-layer>div{pointer-events:none!important}.rear-scene{z-index:1}.front-scene{z-index:5}.hero-aside{position:absolute;bottom:145px;left:50px;z-index:6;opacity:var(--intro-opacity);pointer-events:none}.small-cross{font-size:32px;color:var(--copper);font-weight:300}.hero-aside p{font-size:18px;line-height:1.5;margin:12px 0 22px}.hero-aside .micro{font-size:8px}.hero-bottom{position:absolute;inset:auto 50px 35px;display:flex;justify-content:space-between;align-items:center;z-index:8;opacity:var(--intro-opacity)}.hero-bottom .micro{font-size:8px;color:#5b574e}.scroll-cue{font-size:12px;display:flex;align-items:center;gap:15px}.scroll-cue span{border:1px solid #c06b3e80;width:34px;height:42px;display:grid;place-items:center;border-radius:30px;color:var(--copper)}.glass-sheet{position:absolute;z-index:3;left:max(24px,calc((100% - 1060px)/2));width:min(1060px,calc(100% - 48px));height:calc(100% - 126px);top:0;border-radius:42px 42px 24px 24px;background:linear-gradient(145deg,#ffffff95,#fafaf855 50%,#ffffff90);backdrop-filter:blur(16px) saturate(.85);-webkit-backdrop-filter:blur(16px) saturate(.85);border:1px solid #ffffffc4;box-shadow:inset 0 1px #fff,inset 0 -2px 12px #ffffff65,0 -14px 50px #3c2b1612;transform:translateY(110vh);will-change:transform;pointer-events:none}.glass-rim{position:absolute;inset:-1px -1px auto;height:28px;border-radius:50% 50% 0 0/18px 18px 0 0;border-top:2px solid #ffffffef;background:linear-gradient(#ffffff70,#ffffff05);-webkit-backdrop-filter:blur(4px) contrast(1.1);backdrop-filter:blur(4px) contrast(1.1);box-shadow:inset 0 4px 8px #ffffff70;pointer-events:none}.drag-indicator{position:absolute;top:14px;left:50%;width:34px;height:3px;background:#49413142;border-radius:4px;transform:translate(-50%)}.glass-heading{position:absolute;top:32px;left:30px;right:30px;display:flex;align-items:flex-end;justify-content:space-between}.glass-heading .eyebrow{font-size:8px}.glass-heading h2{font-family:Chakra,sans-serif;font-size:25px;font-weight:500;letter-spacing:-.04em;margin-top:5px}.glass-heading h2 span{color:var(--copper)}.project-count{font:11px Chakra,monospace;color:var(--muted)}.grid-slots{position:absolute;inset:98px 30px 42px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:15px}.grid-slot{position:relative;min-width:0;min-height:0}.glass-footnote{position:absolute;bottom:17px;left:30px;right:30px;font-size:10px;color:#625b51}.spatial-card{pointer-events:auto;backface-visibility:hidden;will-change:transform}.project-surface{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;border:1px solid #ffffffb0;border-radius:9px;background:#fafaf8;box-shadow:0 10px 30px #2918091c,0 1px 4px #29180912;padding:0;text-align:left;transition:box-shadow .25s}.project-surface:hover{box-shadow:0 16px 40px #29180928,0 0 0 1px #c06b3e90}.browser-bar{height:17px;display:flex;gap:3px;align-items:center;padding:0 7px;flex-shrink:0;background:#f9f8f5;border-bottom:1px solid #00000008}.browser-bar i{width:3px;height:3px;background:#b6b1a7;border-radius:50%}.browser-bar span{font-size:5px;color:#7b776d;margin-left:auto;letter-spacing:.06em}.project-surface>img{width:100%;height:0;min-height:0;flex:1;object-fit:cover;object-position:top}.card-caption{padding:7px 10px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:#fffefb;border-top:1px solid #00000007}.card-caption strong{display:block;font-family:Chakra,sans-serif;font-size:12px;font-weight:600}.card-caption div>span{display:block;font-size:8px;color:#797365;margin-top:1px}.card-caption>span{color:var(--copper);font-size:18px}.project-index{padding-top:95px;padding-bottom:110px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:45px}.section-heading h2{font-family:Chakra,sans-serif;font-weight:500;font-size:clamp(25px,3vw,42px);line-height:1.24;letter-spacing:-.04em;margin-top:18px}.section-heading h2 span{color:#8b8175}.section-heading>p{font-size:13px;line-height:1.7;color:var(--muted)}.index-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.index-item{position:relative;display:flex;align-items:center;gap:17px;padding:21px 0;border:0;border-top:1px solid var(--line);text-align:left;background:transparent;min-width:0}.index-item:hover .index-title{color:var(--copper)}.index-number{font:10px Chakra,monospace;color:var(--muted)}.index-title{font:500 16px Chakra,sans-serif;flex:1}.index-title small{display:block;font:11px InterTight,sans-serif;color:var(--muted);margin-top:6px}.index-item>span:last-child{color:var(--copper)}.about-section{padding-block:80px 100px;border-top:1px solid var(--line)}.about-columns{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;margin-top:28px}.about-columns h2{font:500 clamp(28px,3.6vw,48px)/1.2 Chakra,sans-serif;letter-spacing:-.04em}.about-columns em{font-style:normal;color:var(--copper)}.about-columns p{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:18px}.about-columns .about-lead{font-size:20px;color:var(--ink);line-height:1.55}.text-link{font-size:13px;display:inline-flex;gap:45px;border-bottom:1px solid var(--line);padding-block:8px}.capabilities{margin-top:65px;display:flex;gap:18px;justify-content:space-between;font:9px Chakra,monospace;letter-spacing:.03em}.contact-section{background:var(--ink);color:var(--ivory);padding:80px 0}.contact-section h2{font:500 clamp(50px,8vw,112px)/1 Chakra,sans-serif;letter-spacing:-.06em;position:relative;margin-block:25px 50px}.contact-section h2 em{font-style:normal;color:#d48a60}.contact-arrow{position:absolute;right:0;top:0;font-weight:300;color:#d48a60}.contact-links{display:flex;flex-wrap:wrap;gap:35px;font-size:14px}.contact-links a{padding-bottom:8px;border-bottom:1px solid #ffffff35}.portfolio-footer{padding:30px 50px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.motion-controls{position:fixed;bottom:16px;left:16px;z-index:90;display:flex;gap:5px}.motion-controls button{background:#fafaf8e8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #14141320;border-radius:30px;min-height:34px;padding:8px 12px;font-size:10px}.motion-controls button[aria-pressed=true]{background:var(--ink);color:#fff}.project-dialog{width:min(850px,calc(100% - 32px));max-height:88svh;border:1px solid #fff9;border-radius:22px;padding:0;background:var(--ivory);color:var(--ink)}.project-dialog::backdrop{background:#14141385;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dialog-content{position:relative}.dialog-close{position:sticky;float:right;top:14px;margin:14px 14px -60px 0;width:40px;height:40px;z-index:3;border:1px solid var(--line);border-radius:50%;background:#fafaf8e8;font-size:26px}.detail-image{width:100%;max-height:370px;object-fit:contain;background:#e8e5df;object-position:top}.detail-copy{padding:32px}.detail-copy h2{font:500 34px Chakra,sans-serif;letter-spacing:-.04em;margin:12px 0}.detail-copy>p:not(.eyebrow){line-height:1.75;color:var(--muted);font-size:15px}.scope-list{display:flex;gap:10px;list-style:none;padding:0;margin:25px 0;flex-wrap:wrap}.scope-list li{border-bottom:1px solid var(--line);padding:6px 0;margin-right:15px;font-size:12px}.primary-link{display:inline-flex;align-items:center;gap:45px;background:var(--copper);color:#fff;border-radius:40px;padding:14px 22px;font-size:13px}.project-disclosure{padding-top:15px;border-top:1px solid var(--line)}.static-hero{padding:140px 50px 50px;min-height:650px;display:flex;align-items:center;overflow:hidden;background:#eeece6}.static-hero>div{width:50%;z-index:1;flex-shrink:0}.static-hero p{margin-bottom:25px}.static-hero>img{width:80%;max-width:none;margin-left:-22%}.expanded-index .index-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.expanded-index .index-item{display:grid;grid-template-columns:auto 1fr auto;align-content:start;border:0}.expanded-index .index-item>img{grid-column:1/-1;width:100%;height:180px;object-fit:cover;object-position:top;margin-bottom:5px;border-radius:8px}@media(min-width:1600px){.hero-character{width:1300px}.hero-intro{top:140px}.glass-sheet{width:1160px;left:calc((100% - 1160px)/2)}}@media(max-width:1000px){.hero-aside{max-width:180px;left:30px;bottom:110px}.hero-aside p{font-size:14px}.hero-aside .micro{display:none}.portfolio-nav{padding-inline:28px}.hero-bottom{left:28px;right:28px}.hero-bottom>.micro{display:none}.hero-bottom{justify-content:center}.content-width{width:calc(100% - 56px)}.about-columns{gap:35px}.capabilities{flex-wrap:wrap}.expanded-index .index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.portfolio-nav{height:70px;padding-inline:19px;gap:12px}.personal-brand>span:last-child,.studio-link span{display:none}.portfolio-nav nav{gap:22px;font-size:12px}.studio-link img{width:23px}.scroll-experience{height:380svh}.hero-intro{top:100px;padding-inline:15px}.hero-intro h1{font-size:43px;margin-top:13px}.hero-intro .eyebrow{font-size:8px}.hero-intro p{font-size:11px}.hero-character{width:850px;bottom:35px}.hero-aside{bottom:104px;left:22px}.hero-aside p{font-size:12px;max-width:125px}.small-cross{font-size:24px}.hero-bottom{bottom:28px}.glass-sheet{left:12px;width:calc(100% - 24px);border-radius:30px 30px 16px 16px;height:calc(100% - 125px)}.glass-heading{left:16px;right:16px;top:29px}.glass-heading .eyebrow{font-size:6px}.glass-heading h2{font-size:21px}.grid-slots{inset:82px 16px 15px;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:9px}.glass-footnote{display:none}.project-count{font-size:9px}.content-width{width:calc(100% - 40px)}.project-index{padding-block:65px}.section-heading{display:block}.section-heading>p{margin-top:20px;font-size:12px}.index-grid{grid-template-columns:1fr;gap:0}.index-item{padding-block:18px}.index-title{font-size:15px}.about-section{padding-block:55px}.about-columns{grid-template-columns:1fr;gap:30px}.about-columns .about-lead{font-size:18px}.capabilities{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:8px}.contact-section{padding-block:55px}.contact-section h2{font-size:60px}.contact-arrow{font-size:48px}.contact-links{gap:20px;flex-direction:column;align-items:flex-start;font-size:13px}.portfolio-footer{padding:25px 20px 70px;flex-wrap:wrap;font-size:9px}.portfolio-footer>span:nth-child(2){display:none}.detail-copy{padding:24px}.detail-copy h2{font-size:27px}.detail-copy .eyebrow{font-size:8px}.scope-list{gap:5px}.static-hero{display:block;min-height:0;padding:120px 20px 0;text-align:center}.static-hero>div{width:100%}.static-hero>img{width:160%;margin:0 0 0 -30%}.static-hero h1{font-size:44px}.expanded-index .index-grid{grid-template-columns:1fr}.expanded-index .index-item>img{height:230px}}@media(max-height:650px)and (min-width:701px){.hero-intro{top:85px}.hero-intro h1{font-size:42px;margin:7px}.hero-character{width:850px}.hero-aside{bottom:90px}.glass-heading{top:25px}.glass-heading h2{font-size:20px}.grid-slots{top:78px;bottom:28px;gap:9px}.glass-footnote{font-size:8px;bottom:9px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}.spatial-card{backface-visibility:visible;transform-style:preserve-3d}.project-surface.paper-button{position:relative;display:block;overflow:visible;transform-style:preserve-3d;border:0;border-radius:0;background:transparent;box-shadow:none}.project-surface.paper-button:hover{box-shadow:none}.paper-strip{position:absolute;top:0;height:100%;transform-style:preserve-3d;transform-origin:50% 50%;pointer-events:auto}.paper-face{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#fffefb}.paper-front{transform:translateZ(.35px)}.paper-back{transform:rotateY(180deg) translateZ(.35px);background:#ece5d8}.paper-face:after{content:"";position:absolute;inset:0;pointer-events:none;background:rgb(49 35 20 / var(--paper-shade, 0));box-shadow:inset 0 1px #fff9,inset 0 -1px #4e382033}.paper-print{position:absolute;top:0;width:280px;height:100%;display:flex;flex-direction:column}.paper-print>img{width:100%;height:0;min-height:0;flex:1;object-fit:cover;object-position:top}.paper-print .card-caption>span:first-child>span{display:block;font-size:8px;color:#797365;margin-top:1px}.paper-print .card-caption>span:first-child{color:var(--ink);font-size:inherit}.paper-strip:first-child .paper-front,.paper-strip:last-child .paper-back{border-radius:4px 0 0 4px}.paper-strip:last-child .paper-front,.paper-strip:first-child .paper-back{border-radius:0 4px 4px 0}.paper-reverse{position:absolute;top:0;width:280px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:18px;text-align:center;background:radial-gradient(ellipse at 30% 10%,#fffdf8,transparent 80%),#ece5d8}.paper-back-mark{font:500 24px Chakra,sans-serif;color:var(--copper)}.paper-back-mark span{font-size:9px;letter-spacing:.15em;color:var(--ink)}.paper-reverse>strong{font:500 16px Chakra,sans-serif}.paper-reverse>span:not(.paper-back-mark){font-size:9px;color:var(--muted)}.paper-back-rule{width:26px;height:2px;background:var(--copper)}.paper-webgl{position:absolute;inset:0;pointer-events:none}.webgl-papers .paper-strip{visibility:hidden}
