*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px;--bg:#000;--fg:#fff;--accent:#07c42c;--muted:#aaa;--line:#ffffff30;--surface:#111}html[data-theme=light]{--bg:#f4f1e9;--fg:#121212;--accent:#078526;--muted:#555;--line:#12121230;--surface:#e9e5dc}body{margin:0;background:var(--bg);color:var(--fg);font-family:Figtree,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.skip{position:fixed;left:20px;top:-60px;z-index:100;background:var(--accent);color:#000;padding:16px}.skip:focus{top:10px}header{position:absolute;top:0;left:0;right:0;z-index:3;padding:34px 4%;display:flex;align-items:flex-start;justify-content:space-between;color:#fff}.logo{font-size:54px;line-height:.8;font-weight:800;letter-spacing:-7px}.logo span{font-size:12px;letter-spacing:0;vertical-align:top;margin-left:7px}.header-right{display:flex;gap:9vw;font-size:12px;line-height:1.8}nav{display:grid}nav a:hover,.text-link:hover{color:var(--accent)}.header-contact{display:flex;flex-direction:column;gap:8px}.header-contact span{color:#bbb}.header-contact button{background:none;color:#fff;border:0;border-bottom:1px solid #ffffff60;padding:0 0 4px;text-align:left;font-size:11px;width:max-content}.hero{min-height:100dvh;position:relative;isolation:isolate;background:#000;color:white;display:flex;flex-direction:column;justify-content:flex-end;padding:0 4% 36px}.hero-photo{position:absolute;inset:0;z-index:-2;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000 0%,transparent 45%),linear-gradient(90deg,#0008,transparent 70%)}.hero-kicker{font-size:11px;line-height:1.7;letter-spacing:.08em;position:absolute;top:34%;left:4%;color:#ddd}h1{font-size:clamp(86px,17.1vw,300px);line-height:.8;letter-spacing:-.075em;font-weight:600;margin:35vh 0 40px;white-space:nowrap}h1 span{color:transparent;-webkit-text-stroke:1.5px #fff}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid #ffffff40;padding-top:24px;gap:25px}.hero-bottom p{font-size:15px;line-height:1.5;margin:0}.button{padding:19px 24px;border:1px solid var(--line);font-size:12px;display:inline-flex;gap:45px;justify-content:space-between;align-items:center;min-height:54px}.filled{background:var(--fg);color:var(--bg);border:0}.hero .filled{background:#fff;color:#000}.button:hover{background:var(--accent);color:#000}.scroll-link{font-size:11px;letter-spacing:.05em}.section{padding:68px 4% 50px;min-height:100dvh;border-top:1px solid var(--line);scroll-margin-top:0}.section-top{display:flex;justify-content:space-between;gap:25px;font-size:11px;letter-spacing:.05em;margin-bottom:60px}.section-top span:last-child{color:var(--muted)}h2{font-size:clamp(45px,6.5vw,110px);font-weight:500;line-height:1;letter-spacing:-.06em;margin:0 0 55px}em{font-style:normal;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project:nth-child(2){margin-top:110px}.project-art{position:relative;aspect-ratio:1.33;overflow:hidden;padding:30px;display:flex;flex-direction:column;justify-content:space-between;color:white;transition:transform .6s}.project:hover .project-art{transform:translateY(-8px)}.art-label,.art-bottom{font-size:10px;letter-spacing:.12em;z-index:1}.wapi{background:#052917}.wapi strong{font-size:clamp(50px,8vw,145px);letter-spacing:-.08em;line-height:.8;z-index:1;font-weight:700}.wapi strong>span{font-size:.5em;color:#7aee9c;margin-left:20px}.wapi small{display:block;font-size:.27em;letter-spacing:.5em;margin-top:18px}.art-grid{position:absolute;inset:0;background:linear-gradient(135deg,transparent 45%,#38a76338),repeating-linear-gradient(90deg,transparent 0 69px,#ffffff0b 70px),repeating-linear-gradient(0deg,transparent 0 69px,#ffffff0b 70px);transform:rotate(-10deg) scale(1.4)}.amazing{background:#bd7045;color:#241b12}.amazing strong{font-size:clamp(32px,4.6vw,80px);letter-spacing:-.06em;line-height:.95;position:relative;font-weight:500}.amazing em{color:#fff2d2}.sun{width:45%;aspect-ratio:1;border-radius:50%;background:#dfad64;position:absolute;right:8%;top:16%}.project-caption{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding-top:22px;border-bottom:1px solid var(--line);padding-bottom:22px}.project-caption h3{font-size:24px;font-weight:500;margin:0;letter-spacing:-.04em}.project-caption span{color:var(--muted);font-size:11px}.editorial-note{font-size:12px;line-height:1.6;color:var(--muted);max-width:610px;margin-top:35px}.about-layout{display:grid;grid-template-columns: .85fr 1fr;gap:9vw;align-items:center}.about-image{position:relative}.about-image img{width:100%;height:600px;object-fit:cover;object-position:72%;filter:grayscale(1)}.about-image>span{font-size:10px;display:block;margin-top:15px;letter-spacing:.1em}.about h2{font-size:clamp(45px,5.3vw,90px);margin-bottom:35px}.large-copy{font-size:clamp(21px,2.2vw,32px);letter-spacing:-.025em;line-height:1.4}.about-details{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);padding-top:25px;margin-top:40px;font-size:12px;gap:15px}.about-details p{margin:0;color:var(--muted);line-height:1.8}.text-link{display:inline-block;margin-top:35px;border-bottom:1px solid var(--line);padding-bottom:8px;font-size:11px}.expertise h2{max-width:1000px}.services details{border-top:1px solid var(--line)}.services details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;padding:30px 0;gap:4vw;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary>span{font-size:12px;color:var(--muted)}summary h3{font-size:clamp(25px,3.8vw,60px);font-weight:400;letter-spacing:-.04em;margin:0}summary b{margin-left:auto;font-size:30px;font-weight:300;color:var(--accent)}details[open] summary b{transform:rotate(45deg)}details>p{margin:0 0 35px 6%;max-width:580px;color:var(--muted);font-size:18px;line-height:1.6}.contact-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:10vw}.contact h2{position:relative}.accent{display:block;color:var(--accent);margin-top:20px}form{padding-top:10px}label{display:block;font-size:12px;margin-top:25px}input,select,textarea{width:100%;background:transparent;color:var(--fg);border:0;border-bottom:1px solid var(--line);padding:13px 0;border-radius:0}select option{background:var(--bg);color:var(--fg)}textarea{resize:vertical}form .button{width:100%;margin-top:25px}.form-note{font-size:11px;color:var(--muted);line-height:1.6}footer{margin-top:100px;padding-top:30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:10px}footer .logo{font-size:36px}dialog{width:min(850px,92vw);max-height:90dvh;background:var(--bg);color:var(--fg);border:1px solid var(--line);padding:50px}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}dialog h2{font-size:50px;margin:30px 0}dialog p{line-height:1.7}.close{position:absolute;top:15px;right:20px;border:0;background:none;color:var(--fg);font-size:24px}.eyebrow{font-size:11px;color:var(--muted)}#case-tabs{display:flex;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:20px}#case-tabs button{padding:10px;border:1px solid var(--line);background:none;color:var(--fg);font-size:12px}#case-tabs button[aria-pressed=true]{background:var(--fg);color:var(--bg)}#case-content{min-height:180px;padding-top:20px}html.motion .reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}html.motion .reveal.visible{opacity:1;transform:none}@media(min-width:1700px){.section{padding-left:max(4%,calc((100vw - 1600px)/2));padding-right:max(4%,calc((100vw - 1600px)/2))}}@media(max-width:760px){header{padding:25px 5%}.logo{font-size:45px}.header-right{gap:24px;font-size:10px}.header-contact span{max-width:100px}.hero{padding:0 5% 25px;min-height:100svh}.hero-photo img{object-position:65%}.hero-kicker{top:32%;left:5%;font-size:10px}h1{font-size:17vw;margin-bottom:40px}.hero-bottom{flex-wrap:wrap}.hero-bottom p{font-size:12px}.hero-bottom .button{padding:15px;gap:20px;font-size:10px}.scroll-link{width:100%;margin-top:10px}.section{padding:45px 5%;min-height:auto}.section-top{margin-bottom:45px;font-size:9px}.section-top span:last-child{text-align:right;max-width:160px}h2{margin-bottom:40px}.project-grid,.about-layout,.contact-layout{grid-template-columns:1fr;gap:45px}.project:nth-child(2){margin-top:0}.project-art{padding:24px}.wapi strong{font-size:22vw}.amazing strong{font-size:12vw}.project-caption h3{font-size:23px}.project-caption span{font-size:10px}.about-image img{height:440px}.about h2{font-size:52px}.about-details{font-size:11px}footer{margin-top:65px;flex-wrap:wrap}dialog{padding:40px 24px}dialog h2{font-size:38px}.contact-layout{gap:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1!important;transform:none!important}}

.project-cover{padding:0;background:var(--surface);aspect-ratio:1.3}.project-cover>img{width:100%;height:100%;object-fit:cover}.cover-label{position:absolute;bottom:20px;left:20px;padding:12px;background:#000c;color:#fff;font-size:10px;letter-spacing:.08em}dialog{width:min(1100px,94vw)}.case-cover{width:100%;max-height:430px;object-fit:cover}.gallery-main{margin:0}.gallery-main>img{width:100%;max-height:55dvh;object-fit:contain;background:#171717}.gallery-main figcaption{display:flex;justify-content:space-between;gap:15px;font-size:12px;line-height:1.5;margin-top:15px}.gallery-main figcaption b{font-weight:400;color:var(--muted)}.gallery-controls{display:flex;gap:12px;align-items:center;margin-top:20px}.gallery-controls button{background:none;border:1px solid var(--line);color:var(--fg);min-width:40px;min-height:40px}.thumbnails{display:flex;gap:8px;flex:1}.thumbnails button{padding:3px;flex:1;min-width:0}.thumbnails img{width:100%;aspect-ratio:1.5;object-fit:cover;display:block}.thumbnails button[aria-pressed=true]{border:2px solid var(--accent)}#case-content li{line-height:1.7;margin:8px 0}#case-content h3{font-size:26px;font-weight:500;letter-spacing:-.03em;margin:28px 0 10px}@media(max-width:760px){.gallery-main figcaption{flex-direction:column;gap:4px}.gallery-controls{gap:5px}.thumbnails{gap:3px}.gallery-controls>button{min-width:32px}.project-caption{align-items:flex-start;flex-direction:column}.case-cover{max-height:300px}}
.layered-layout{display:grid;grid-template-columns: .8fr 1.2fr;gap:7vw;align-items:center}.layered-work{min-height:110dvh}.image-stack{height:780px;position:relative;perspective:1200px}.stack-card{position:absolute;width:60%;left:20%;top:25%;transform:rotate(-10deg) translateY(0);transition:transform 1.3s cubic-bezier(.2,.8,.2,1);z-index:calc(var(--i) + 1);box-shadow:0 15px 40px #0005;border:5px solid var(--bg)}.stack-card img{width:100%;aspect-ratio:1.5;object-fit:cover;display:block}.image-stack.spread .stack-card{transform:translate(calc((var(--i) - 2)*45px),calc((var(--i) - 2)*115px)) rotate(-10deg)}.stack-card:hover{z-index:8;filter:brightness(1.1)}.concierge{position:fixed;right:24px;bottom:24px;z-index:8}.concierge>button{background:var(--accent);color:#000;border:0;padding:17px 24px;font-size:12px;font-weight:600}.concierge>button span{margin-left:30px}#concierge-panel{position:absolute;right:0;bottom:65px;background:var(--surface);color:var(--fg);border:1px solid var(--line);width:min(360px,90vw);padding:25px;box-shadow:0 15px 80px #0007}#concierge-panel h3{font-size:25px;font-weight:500}#concierge-panel p{font-size:13px;line-height:1.6;color:var(--muted)}#concierge-panel a{display:block;border-top:1px solid var(--line);padding:15px 0;font-size:13px}#concierge-close{position:absolute;right:15px;top:10px;background:none;color:var(--fg);border:0;font-size:25px}.hero h1{animation:heroIn 1s both}.hero-kicker{animation:heroIn .8s .15s both}@keyframes heroIn{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}@media(max-width:760px){.layered-layout{grid-template-columns:1fr}.image-stack{height:640px}.stack-card{width:68%;left:13%}.image-stack.spread .stack-card{transform:translate(calc((var(--i) - 2)*16px),calc((var(--i) - 2)*95px)) rotate(-8deg)}.concierge{right:14px;bottom:14px}.layered-work{min-height:0}}@media(prefers-reduced-motion:reduce){.image-stack .stack-card{transform:translate(calc((var(--i) - 2)*25px),calc((var(--i) - 2)*110px)) rotate(-8deg)!important}.hero h1,.hero-kicker{animation:none}}
