
:root{--paper:#f2f1ee;--sand:#efe5cf;--charcoal:#171715;--soft:#5b5d58;--line:rgba(23,23,21,.14);--accent:#c8b189;--sans:"Inter",system-ui,sans-serif;--serif:"Cormorant Garamond",Georgia,serif;--pad:clamp(18px,4vw,56px);--ease:cubic-bezier(.22,.7,.22,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--charcoal);font-family:var(--sans);background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(255,255,255,0)),var(--paper);overflow-x:hidden}body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.08;background-image:radial-gradient(rgba(0,0,0,.28) .45px,transparent .55px);background-size:4px 4px;mix-blend-mode:multiply}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button{font:inherit}.page{min-height:100vh;padding-top:110px}.shell{padding-inline:var(--pad)}.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:18px}.eyebrow::before{content:"";width:34px;height:1px;background:var(--soft)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid var(--charcoal);font-size:12px;letter-spacing:.05em;transition:transform .32s var(--ease),background .32s var(--ease),color .32s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--charcoal);color:#f5f2ea}.btn.primary:hover{background:#3b3d37}.btn.soft{background:rgba(255,255,255,.48)}h1,h2,h3,h4{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}p{line-height:1.7;color:#555851}
.nav{position:fixed;inset:0 0 auto 0;z-index:100;padding:18px var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:linear-gradient(to bottom,rgba(242,241,238,.96),rgba(242,241,238,.76),transparent);backdrop-filter:blur(5px)}.nav-links{display:flex;gap:24px;font-size:12px}.nav-right{justify-content:flex-end}.nav-logo img{height:56px;width:auto;object-fit:contain;margin:auto}.nav a.link{position:relative}.nav a.link::after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease)}.nav a.link:hover::after,.nav a.active::after{transform:scaleX(1);transform-origin:left}
@media(pointer:fine){body,a,button{cursor:none}.cursor-dot,.cursor-ring{position:fixed;left:0;top:0;transform:translate(-50%,-50%);pointer-events:none;z-index:10000}.cursor-dot{width:5px;height:5px;border-radius:50%;background:var(--charcoal)}.cursor-ring{width:40px;height:40px;border-radius:50%;border:1px solid rgba(23,23,21,.45);display:flex;align-items:center;justify-content:center;font-size:8px;letter-spacing:.09em;text-transform:uppercase;color:transparent;backdrop-filter:blur(3px);transition:width .28s var(--ease),height .28s var(--ease),background .28s,color .28s}.cursor-ring.is-hover{width:78px;height:78px;background:rgba(242,241,238,.8);color:var(--charcoal);border-color:rgba(23,23,21,.1)}}
.page-hero{padding:70px var(--pad) 84px;display:grid;grid-template-columns:.55fr 1.45fr;gap:6vw;align-items:end}.page-hero h1{font-size:clamp(68px,10vw,150px);line-height:.82;margin:0;max-width:1000px}.page-hero p{max-width:560px;font-size:17px}.home-hero{min-height:calc(100svh - 30px);padding:120px var(--pad) 40px;display:grid;grid-template-columns:1fr 1.05fr;align-items:end;gap:clamp(26px,4vw,64px)}.home-copy{padding-bottom:8vh}.home-copy h1{font-size:clamp(70px,10vw,150px);line-height:.82;margin:0}.home-copy p{max-width:420px;margin:22px 0 0 6px;font-size:16px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.hero-art{min-height:680px;position:relative;overflow:hidden;border-radius:22px;border:1px solid rgba(23,23,21,.08);box-shadow:0 30px 120px rgba(78,69,52,.12);background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,255,255,.15))}.hero-sky{position:absolute;inset:0 0 26% 0;background:url('assets/sky.jpg') center/cover no-repeat;filter:saturate(.82)}.hero-forest{position:absolute;left:8%;right:8%;bottom:6%;height:36%;background:url('assets/forest.jpg') center/cover no-repeat;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.12);filter:saturate(.75)}.hero-mark{position:absolute;left:-10%;top:-2%;width:68%;opacity:.16;mix-blend-mode:multiply}.hero-panel{position:absolute;inset:14% 12% auto auto;width:44%;min-height:280px;background:rgba(242,241,238,.66);backdrop-filter:blur(14px);border:1px solid rgba(23,23,21,.08);padding:20px 22px;display:flex;flex-direction:column;justify-content:space-between}.hero-panel h2{font-size:52px;line-height:.93;margin:0}.hero-panel p{font-size:14px;max-width:220px}
.teaser{padding:110px var(--pad)}.teaser-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px}.teaser-head h2{font-size:clamp(56px,7vw,104px);line-height:.9;margin:0}.teaser-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.teaser-card{border-top:1px solid var(--line);padding-top:24px}.teaser-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:22px}.teaser-card h3{font-size:46px;margin:18px 0 8px}.teaser-card p{max-width:450px;margin:0}.small-link{display:inline-block;margin-top:16px;font-size:12px;border-bottom:1px solid var(--charcoal);padding-bottom:3px}
.work-grid{padding:0 var(--pad) 100px}.project-row{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;padding:30px 0 70px;border-top:1px solid var(--line);align-items:center}.project-row:nth-child(even){grid-template-columns:.85fr 1.15fr}.project-row:nth-child(even) .project-image{order:2}.project-image img{width:100%;aspect-ratio:16/11;object-fit:cover;border-radius:24px}.project-info h2{font-size:clamp(48px,6vw,82px);line-height:.92;margin:0}.project-info small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.chip{border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:10px;letter-spacing:.07em;text-transform:uppercase;background:rgba(255,255,255,.4)}
.services-grid{padding:0 var(--pad) 100px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{min-height:400px;padding:30px;border:1px solid rgba(23,23,21,.08);border-radius:22px;background:rgba(255,255,255,.5);display:flex;flex-direction:column;justify-content:space-between}.service-card h2{font-size:48px;line-height:.94;margin:0}.service-card ul{padding-left:18px;color:#5b5e57;line-height:1.8}.value-section{padding:90px var(--pad);display:grid;grid-template-columns:.55fr 1.45fr;gap:6vw;border-top:1px solid var(--line)}.value-section h2{font-size:clamp(54px,7vw,100px);line-height:.92;margin:0}.value-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px}.value-item{padding:22px;border-top:1px solid var(--line)}
.about-grid{padding:0 var(--pad) 110px;display:grid;grid-template-columns:.82fr 1.18fr;gap:44px;align-items:start}.about-grid img{border-radius:26px}.about-copy h2{font-size:clamp(54px,7vw,96px);line-height:.92;margin-top:0}.about-copy p{max-width:600px;font-size:16px}.start-wrap{padding:0 var(--pad) 100px}.start-panel{background:#161714;color:#f4f0e8;border-radius:28px;padding:48px;display:grid;grid-template-columns:.9fr 1.1fr;gap:54px}.start-panel p{color:#c8c7c2}.start-panel h2{font-size:clamp(54px,7vw,96px);line-height:.9;margin:0}.form-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:28px}.choice{width:100%;text-align:left;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:15px 16px;background:transparent;color:#f4f0e8;margin-top:10px}.choice:hover,.choice.active{background:#f4f0e8;color:#161714}
.case-hero{padding:60px var(--pad) 30px}.case-hero h1{font-size:clamp(66px,10vw,140px);line-height:.82;margin:0}.case-cover{padding:0 var(--pad) 60px}.case-cover img{width:100%;max-height:780px;object-fit:cover;border-radius:28px}.case-content{padding:30px var(--pad) 110px;display:grid;grid-template-columns:.55fr 1.45fr;gap:6vw}.case-content h2{font-size:clamp(48px,6vw,84px);line-height:.95;margin:0}.case-copy{max-width:720px}.case-copy h3{font-size:34px;margin:46px 0 8px}footer{padding:48px var(--pad) 28px}.footer-logo{width:220px}.footer-grid{margin-top:32px;display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:22px}.footer-grid small{font-size:11px;color:#6b6d67}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.in{opacity:1;transform:none}
@media(max-width:1000px){.nav{grid-template-columns:1fr auto}.nav-links.left{display:none}.home-hero,.page-hero,.project-row,.project-row:nth-child(even),.about-grid,.start-panel,.case-content,.value-section{grid-template-columns:1fr}.project-row:nth-child(even) .project-image{order:0}.services-grid{grid-template-columns:1fr}.teaser-grid,.value-list{grid-template-columns:1fr}.hero-art{min-height:600px}}@media(max-width:680px){.nav-right .link:not(.always){display:none}.nav-logo img{height:42px}.page{padding-top:90px}.home-hero{padding-top:104px}.home-copy h1,.page-hero h1{font-size:clamp(58px,16vw,84px)}.hero-art{min-height:470px}.hero-panel{inset:auto 16px 16px 16px;width:auto;min-height:auto}.hero-panel h2{font-size:38px}.start-panel{border-radius:0;margin-inline:calc(var(--pad) * -1);padding:34px 20px}}
