@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{--paper:#f6f7f3;--paper-deep:#e7ece5;--ink:#17201c;--ink-soft:#5b665f;--line:#d5ddd5;--green:#175943;--green-deep:#103b2f;--accent:#e66b48;--accent-soft:#f4d6c7;--white:#fff;--sans:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--display:"Space Grotesk", var(--sans);--mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}::selection{color:var(--paper);background:var(--green)}img{max-width:100%;display:block}a{color:inherit}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.mono{font-family:var(--mono)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f6f7f3f0;justify-content:space-between;align-items:center;min-height:78px;padding:0 clamp(22px,5vw,74px);display:flex;position:sticky;top:0}.wordmark{letter-spacing:-.03em;align-items:center;gap:11px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.wordmark-mark{width:30px;height:30px;color:var(--paper);background:var(--ink);font-family:var(--mono);letter-spacing:-.09em;place-items:center;font-size:10px;display:grid}.site-nav{font-family:var(--mono);align-items:center;gap:clamp(18px,3vw,38px);font-size:11px;display:flex}.site-nav a{color:var(--ink-soft);text-decoration:none;transition:color .2s}.site-nav a:hover,.site-nav a:focus-visible{color:var(--accent)}.site-nav .nav-contact{color:var(--green)}.hero,.method,.work,.contact{width:min(1220px,100% - 44px);margin:0 auto}.hero{grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);align-items:start;gap:clamp(52px,8vw,120px);min-height:670px;padding:clamp(64px,7vw,100px) 0 clamp(82px,9vw,128px);display:grid}.hero-copy{max-width:700px}.kicker{color:var(--accent);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:12px;margin:0 0 23px;font-size:10px;line-height:1.4;display:flex}.kicker-rule{background:currentColor;width:36px;height:1px;display:inline-block}.hero h1{max-width:730px;font-family:var(--display);letter-spacing:-.085em;margin:0;font-size:clamp(54px,6.3vw,84px);font-weight:600;line-height:.91}.hero-lede{max-width:560px;color:var(--ink-soft);margin:34px 0 0;font-size:clamp(17px,1.55vw,20px);line-height:1.55}.hero-links{flex-wrap:wrap;gap:25px;margin-top:31px;display:flex}.arrow-link{color:var(--green);font-family:var(--mono);align-items:center;gap:12px;font-size:11px;font-weight:500;text-decoration:none;display:inline-flex}.arrow-link span:first-child{border-bottom:1px solid}.arrow-link-icon{border:1px solid;border-radius:50%;place-items:center;width:27px;height:27px;transition:transform .2s,background .2s,color .2s;display:grid}.arrow-link:hover .arrow-link-icon,.arrow-link:focus-visible .arrow-link-icon{color:var(--paper);background:var(--green);transform:rotate(45deg)}.hero-visual{justify-self:end;width:min(100%,450px);padding:4px 0 22px;position:relative}.hero-visual-top,.hero-visual-bottom{color:var(--green);letter-spacing:.08em;justify-content:space-between;align-items:center;gap:16px;font-size:9px;display:flex}.hero-visual-stage{min-height:535px;padding:27px 0 30px;position:relative}.hero-visual-backdrop{color:#175943ad;background:var(--paper-deep);font-family:var(--mono);letter-spacing:.14em;border-radius:30px;flex-direction:column;justify-content:space-between;padding:27px 22px;font-size:9px;display:flex;position:absolute;inset:53px 0 30px 48px;overflow:hidden}.hero-visual-backdrop span:nth-child(2){color:var(--accent);align-self:flex-end}.hero-device{z-index:1;width:min(72%,294px);margin:0 auto;position:relative}.hero-device:before{z-index:-1;border:1px solid var(--accent);content:"";border-radius:30px;position:absolute;inset:11px -10px -10px 10px}.device-shell{background:linear-gradient(145deg,#252b28 0%,#0e1110 42%,#252b28 100%);border:1px solid #3b433f;border-radius:49px;padding:8px;position:relative;box-shadow:0 26px 45px #17201c2e,inset 1px 1px 1px #ffffff2e}.device-screen{z-index:1;aspect-ratio:393/852;background:#fff;border:1px solid #050605;border-radius:41px;position:relative;overflow:hidden}.device-screen img{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.device-island{z-index:2;background:#080909;border-radius:20px;width:91px;height:26px;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:inset 0 -1px 1px #ffffff14}.device-island:after{content:"";background:#151b1c;border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:13px;box-shadow:inset 1px 1px 2px #5c899759}.device-button{z-index:0;background:#161b19;border:1px solid #303732;width:4px;position:absolute}.device-button-action{border-radius:3px 0 0 3px;height:23px;top:76px;left:-4px}.device-button-volume-up{border-radius:3px 0 0 3px;height:42px;top:119px;left:-4px}.device-button-volume-down{border-radius:3px 0 0 3px;height:42px;top:171px;left:-4px}.device-button-power{border-radius:0 3px 3px 0;height:78px;top:135px;right:-4px}.hero-proof-card{z-index:2;background:var(--white);border:1px solid var(--line);gap:4px;width:166px;padding:17px 18px;display:grid;position:absolute;bottom:57px;left:0;box-shadow:0 15px 30px #17201c17}.hero-proof-card span{color:var(--ink-soft);letter-spacing:.08em;font-size:9px}.hero-proof-card strong{color:var(--green);font-family:var(--display);letter-spacing:-.06em;font-size:27px;line-height:1}.hero-visual-bottom{border-top:1px solid var(--line);color:var(--ink-soft);padding-top:14px}.hero-visual-bottom span:last-child{color:var(--green)}.method{border-top:1px solid var(--line);grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(58px,11vw,160px);padding:clamp(82px,10vw,130px) 0;display:grid}.method-intro{max-width:490px}.method-intro .kicker{color:var(--accent)}.method-intro h2{color:var(--green);font-family:var(--display);letter-spacing:-.09em;margin:0;font-size:clamp(52px,6.3vw,82px);font-weight:600;line-height:.9}.method-intro h2 em{color:var(--ink);font-style:normal}.method-intro p:last-child{max-width:425px;color:var(--ink-soft);margin:31px 0 0;font-size:16px;line-height:1.65}.principles{border-top:1px solid var(--green)}.principle{border-bottom:1px solid #17594347;grid-template-columns:48px 1fr;gap:20px;padding:23px 0;display:grid}.principle-number{color:var(--accent);font-size:10px}.principle h3{font-family:var(--display);letter-spacing:-.04em;margin:0 0 7px;font-size:23px;font-weight:600}.principle p{max-width:470px;color:var(--ink-soft);margin:0;font-size:14px;line-height:1.6}.work{padding:clamp(82px,11vw,145px) 0 0}.section-heading{border-bottom:1px solid var(--line);padding-bottom:clamp(52px,7vw,92px)}.section-heading-row{grid-template-columns:minmax(0,1fr) minmax(260px,.44fr);align-items:end;gap:50px;display:grid}.section-heading h2{max-width:800px;font-family:var(--display);letter-spacing:-.085em;margin:0;font-size:clamp(46px,6.4vw,83px);font-weight:600;line-height:.92}.section-heading h2 em{color:var(--green);font-style:normal}.section-intro{max-width:365px;color:var(--ink-soft);margin:0 0 4px;font-size:15px;line-height:1.65}.project{border-bottom:1px solid var(--line);padding:clamp(66px,8vw,108px) 0}.project-topline{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.project-identity{align-items:center;gap:17px;display:flex}.project-icon{border-radius:22%;width:clamp(53px,5vw,66px);height:clamp(53px,5vw,66px);box-shadow:0 8px 16px #17201c21}.project-number{color:var(--accent);margin:0 0 5px;font-size:10px}.project h2{font-family:var(--display);letter-spacing:-.08em;margin:0;font-size:clamp(42px,5.2vw,70px);font-weight:600;line-height:.88}.project-meta{min-width:185px;color:var(--ink-soft);letter-spacing:.06em;text-align:right;grid-template-columns:auto 1fr;gap:4px 9px;font-size:9px;line-height:1.5;display:grid}.project-meta .status-dot{background:var(--accent);border-radius:50%;grid-row:span 2;width:7px;height:7px;margin-top:4px;box-shadow:0 0 0 4px #e66b481f}.project-meta span:nth-child(2),.project-meta span:nth-child(3){grid-column:2}.project-body{grid-template-columns:minmax(220px,.5fr) minmax(0,1.5fr);align-items:start;gap:clamp(45px,8vw,120px);margin-top:clamp(42px,6vw,72px);display:grid}.project-featured .project-body{display:block}.project-featured .project-copy{grid-template-columns:minmax(0,.8fr) minmax(240px,.5fr);align-items:end;gap:clamp(50px,10vw,150px);max-width:none;margin-bottom:clamp(48px,7vw,82px);display:grid}.project-copy{max-width:390px;padding-top:3px}.project-label{color:var(--green);letter-spacing:.1em;margin:0 0 17px;font-size:10px}.project-floorsnap .project-label{color:var(--accent)}.project-description{margin:0;font-size:clamp(17px,1.55vw,20px);line-height:1.55}.project-note{border-top:1px solid var(--line);color:var(--ink-soft);margin:21px 0 0;padding-top:15px;font-size:13px;line-height:1.55}.project-actions{margin-top:31px}.store-link{transition:transform .2s;display:inline-block}.store-link:hover,.store-link:focus-visible{transform:translateY(-3px)}.store-link img{width:auto;height:44px}.inline-form{margin-top:24px}.inline-form label{color:var(--ink-soft);font-family:var(--mono);margin-bottom:9px;font-size:10px;line-height:1.5;display:block}.inline-form-row{gap:8px;display:flex}.inline-form input,.contact-form input,.contact-form textarea{border:1px solid var(--line);min-width:0;color:var(--ink);background:#ffffff7a;border-radius:0;outline:0}.inline-form input{width:min(205px,100%);font-family:var(--mono);padding:11px 12px;font-size:11px}.inline-form button,.contact-form button{border:1px solid var(--ink);color:var(--paper);background:var(--ink);cursor:pointer;font-family:var(--mono);border-radius:0;padding:11px 14px;font-size:10px;transition:background .2s,color .2s}.inline-form button:hover,.inline-form button:focus-visible,.contact-form button:hover,.contact-form button:focus-visible{color:var(--ink);background:0 0}.form-confirmation,.contact-confirmation{color:var(--green);font-family:var(--mono);font-size:11px;line-height:1.6}.form-error{color:var(--accent);font-family:var(--mono);margin:11px 0 0;font-size:10px;line-height:1.5}.project-images{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(17px,2.5vw,29px);display:grid}.project-images-featured{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) minmax(0,.8fr)}.project-featured .project-images-featured{gap:clamp(22px,3vw,34px)}.project-shot{min-width:0;margin:0}.project-shot-primary{grid-row:span 2}.project-shot .device-shell{transition:transform .25s,box-shadow .25s;box-shadow:0 15px 27px #17201c21}.project-shot:hover .device-shell{transform:translateY(-5px);box-shadow:0 23px 35px #17201c2e}.project-shot figcaption{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;margin-top:10px;font-size:9px}.contact{border-top:1px solid var(--line);padding:30px 0 34px}.contact-topline,.contact-bottom{color:var(--ink-soft);letter-spacing:.08em;justify-content:space-between;gap:20px;font-size:9px;display:flex}.contact-grid{grid-template-columns:1fr .55fr;gap:50px;padding:clamp(62px,8vw,105px) 0 53px;display:grid}.contact h2{max-width:800px;font-family:var(--display);letter-spacing:-.09em;margin:0;font-size:clamp(54px,7.7vw,100px);font-weight:600;line-height:.89}.contact-side{align-self:end;max-width:320px}.contact-side p{color:var(--ink-soft);margin:0 0 23px;font-size:15px;line-height:1.65}.contact-email{width:fit-content;color:var(--green);font-family:var(--mono);margin:8px 0;font-size:12px;text-decoration:none;display:block}.contact-email:hover,.contact-email:focus-visible{color:var(--accent)}.contact-form{border-top:1px solid var(--line);padding:23px 0 65px}.contact-form-fields{grid-template-columns:1fr 1fr;gap:10px;max-width:780px;display:grid}.contact-form input,.contact-form textarea{width:100%;font-family:var(--mono);padding:14px;font-size:12px}.contact-form textarea{resize:vertical;display:block}.message-field{grid-column:1/-1}.contact-form button{width:fit-content;padding:13px 18px}.contact-bottom{border-top:1px solid var(--line);padding-top:21px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=930px){.hero{grid-template-columns:1fr;gap:66px;min-height:auto;padding-top:72px}.hero-copy{max-width:740px}.hero-visual{justify-self:center}.method,.section-heading-row,.contact-grid{grid-template-columns:1fr}.section-intro{max-width:500px}.method-intro{max-width:620px}.project-body{grid-template-columns:1fr;gap:45px}.project-featured .project-copy{grid-template-columns:1fr;gap:22px;margin-bottom:48px}.project-copy{max-width:600px}}@media (width<=620px){.site-header{min-height:65px;padding:0 17px}.wordmark{font-size:12px}.wordmark-mark{width:26px;height:26px;font-size:9px}.site-nav{gap:13px;font-size:9px}.site-nav a:nth-child(2){display:none}.hero,.method,.work,.contact{width:min(100% - 32px,1220px)}.hero{gap:52px;padding-top:56px;padding-bottom:78px}.hero h1{font-size:clamp(50px,14.6vw,75px)}.hero-lede{margin-top:26px;font-size:17px}.hero-links{gap:17px;display:grid}.hero-visual{width:calc(100% - 4px)}.hero-visual-stage{min-height:510px}.hero-visual-backdrop{left:26px}.hero-device{width:min(72%,268px)}.hero-proof-card{width:153px;padding:15px;bottom:55px;left:0}.hero-proof-card strong{font-size:24px}.method{gap:56px;padding:77px 0 87px}.method-intro h2,.section-heading h2{font-size:clamp(48px,14vw,70px)}.project-topline{display:block}.project-meta{text-align:left;margin:24px 0 0 2px}.project-meta span:nth-child(2),.project-meta span:nth-child(3){grid-column:2}.project-images,.project-images-featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.project-featured .project-copy{margin-bottom:42px}.project-shot-primary{grid-area:auto/1/auto/-1}.project-shot figcaption{font-size:8px}.inline-form-row{display:grid}.inline-form input{width:100%}.inline-form button{width:fit-content}.contact h2{font-size:clamp(52px,15.5vw,82px)}.contact-form-fields{grid-template-columns:1fr}.message-field{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.arrow-link-icon,.store-link,.device-shell{transition:none}}
