:root{--bg: #eef0e9;--surface: #e2e6dc;--ink: #0f1a10;--muted: #4a574b;--accent: #ff5a14;--accent-ink: #0f1a10;--grass: #1f4a1a;--grass-deep: #0d2210;--grass-ink: #e9f0df;--wood: #b98552;--wood-deep: #1c130c;--wood-ink: #f1e6d6;--f-display: "Newsreader", "Times New Roman", serif;--f-text: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--step-small: clamp(.8125rem, .79rem + .1vw, .875rem);--step-body: clamp(1.0625rem, 1.02rem + .2vw, 1.1875rem);--step-lead: clamp(1.25rem, 1.1rem + .7vw, 1.75rem);--step-head: clamp(2.25rem, 1.4rem + 3.6vw, 4.75rem);--step-display: clamp(4rem, 1rem + 12.5vw, 15rem);--m: clamp(16px, 2.2vw, 32px);--gap: clamp(12px, 1.4vw, 20px);--section: clamp(120px, 14vw, 220px);--radius: 0px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.76, 0, .24, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-text);font-size:var(--step-body);line-height:1.55;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}body.is-loading{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}h1,h2,h3,p,ul,ol,figure,table{margin:0;padding:0}ul,ol{list-style:none}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;left:var(--m);top:-100px;z-index:200;background:var(--ink);color:var(--bg);padding:12px 18px}.skip:focus{top:var(--m)}.h-display{font-family:var(--f-display);font-weight:300;font-size:clamp(3rem,1rem + 7vw,8.5rem);line-height:.92;letter-spacing:-.045em}.h-head{font-family:var(--f-display);font-weight:400;font-size:var(--step-head);line-height:1;letter-spacing:-.035em}.h-sub{font-family:var(--f-text);font-weight:600;font-size:var(--step-body);letter-spacing:-.01em}.split-line-mask{padding:.16em 0 .08em;margin:-.16em 0 -.08em}.split-line{will-change:transform}.btn{--h: 48px;position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--h);padding:0 24px;border-radius:999px;font-family:var(--f-text);font-weight:500;font-size:.9375rem;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;isolation:isolate;transition:background-color .3s,color .3s}.btn>span{position:relative;z-index:1;display:inline-block}.btn:after{content:"";position:absolute;inset:0;z-index:0;background:var(--ink);border-radius:inherit;transform:translateY(101%);transition:transform .55s var(--ease-out)}.btn:hover:after,.btn:focus-visible:after{transform:translateY(0)}.btn:active:after{transform:translateY(0) scale(.94)}.btn--accent{background:var(--accent);color:var(--accent-ink)}.btn--accent:hover,.btn--accent:focus-visible{color:var(--bg)}.btn--ghost{background:var(--surface);color:var(--ink)}.btn--ghost:hover{color:var(--bg)}.btn--lg{--h: 60px;padding:0 32px;font-size:1rem}.link-underline{position:relative;font-weight:500;font-size:.9375rem;padding:4px 0}.link-underline:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease-out)}.link-underline:hover:after,.link-underline:focus-visible:after{transform:scaleX(1);transform-origin:left}.loader{position:fixed;inset:0;z-index:100;background:var(--grass-deep);color:var(--grass-ink);display:grid;place-items:center;clip-path:inset(0 0 0 0)}.loader__mark{width:96px;height:96px;fill:none;stroke:var(--grass-ink);stroke-width:3;stroke-linecap:round}.loader__ring{stroke-dasharray:340;stroke-dashoffset:340;transform:rotate(-90deg);transform-origin:50% 50%}.loader__field{stroke:#8fc35a;stroke-dasharray:120;stroke-dashoffset:120}.loader__count{position:absolute;right:var(--m);bottom:calc(var(--m) - .12em);font-family:var(--f-display);font-weight:300;font-size:clamp(5rem,16vw,14rem);line-height:.8;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.loader__name{position:absolute;left:var(--m);bottom:var(--m);font-size:var(--step-small);font-weight:500}.no-js .loader{display:none}.cursor{position:fixed;left:0;top:0;z-index:90;pointer-events:none;display:none;mix-blend-mode:normal}.has-cursor .cursor{display:block}.cursor__dot,.cursor__ring{position:fixed;left:0;top:0;border-radius:50%;will-change:transform}.cursor__dot{width:8px;height:8px;margin:-4px 0 0 -4px;background:var(--accent)}.cursor__ring{width:44px;height:44px;margin:-22px 0 0 -22px;border:1.5px solid rgba(15,26,16,.55);display:grid;place-items:center;transition:width .45s var(--ease-out),height .45s var(--ease-out),margin .45s var(--ease-out),background-color .3s,border-color .3s}.cursor__label{font-size:12.5px;font-weight:600;color:var(--ink);opacity:0;transition:opacity .25s;white-space:nowrap}.cursor.is-link .cursor__ring{width:64px;height:64px;margin:-32px 0 0 -32px;border-color:var(--accent)}.cursor.is-label .cursor__ring{width:92px;height:92px;margin:-46px 0 0 -46px;background:var(--accent);border-color:var(--accent)}.cursor.is-label .cursor__label{opacity:1}.cursor.is-label .cursor__dot{opacity:0}.cursor.is-mow .cursor__ring{width:120px;height:120px;margin:-60px 0 0 -60px;border-color:#fffc;border-style:dashed}.cursor.is-light .cursor__ring{border-color:#f1e6d6b3}.cursor.is-hidden{opacity:0}.has-cursor,.has-cursor a,.has-cursor button,.has-cursor label{cursor:none}.has-cursor input[type=range],.has-cursor select,.has-cursor textarea{cursor:auto}.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:32px;padding:18px var(--m);transition:background-color .4s,color .4s}.nav.is-solid{background:var(--bg)}.nav.on-dark{color:var(--grass-ink)}.nav.on-dark.is-solid{background:var(--grass-deep)}.nav.on-wood{color:var(--wood-ink)}.nav.on-wood.is-solid{background:var(--wood-deep)}.nav__brand{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:.9375rem;letter-spacing:-.01em}.nav__mark{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}.nav__mark circle{stroke:var(--accent)}.nav__links{display:flex;gap:28px;margin-left:auto;font-size:.9375rem;font-weight:500}.nav__links a{position:relative;padding:6px 0;display:inline-block}.nav__links a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease-out)}.nav__links a:hover:after,.nav__links a:focus-visible:after{transform:scaleX(1);transform-origin:left}.nav__cta{--h: 44px}.nav__menu{display:none;margin-left:auto;height:44px;padding:0 20px;border-radius:999px;background:var(--ink);color:var(--bg);font-weight:500;font-size:.9375rem}.menu{position:fixed;inset:0;z-index:49;background:var(--grass-deep);color:var(--grass-ink);display:flex;flex-direction:column;justify-content:space-between;padding:96px var(--m) var(--m)}.menu[hidden]{display:none}.menu nav{display:flex;flex-direction:column;gap:4px}.menu nav a{font-family:var(--f-display);font-size:clamp(2.5rem,12vw,4rem);line-height:1.05;letter-spacing:-.04em;font-weight:300}.menu__foot{display:flex;flex-direction:column;gap:8px;font-size:1.0625rem}.hero{position:relative;height:130svh;background:var(--bg)}.hero__sticky{position:sticky;top:0;height:100svh;overflow:hidden}.hero__gl,.hero__fallback{position:absolute;inset:0;width:100%;height:100%}.hero__fallback{object-fit:cover;opacity:0}.no-webgl .hero__fallback{opacity:1}.no-webgl .hero__title,.no-webgl .hero__aside{color:#fff}.hero__gl{touch-action:pan-y}.hero__inner{position:absolute;left:var(--m);right:var(--m);top:clamp(88px,15vh,160px);pointer-events:none}.hero__title{font-family:var(--f-display);font-weight:300;font-size:var(--step-display);line-height:.88;letter-spacing:-.055em;margin-left:-.04em}.hero__line{display:block;overflow:clip;padding:.14em 0 .06em;margin:-.14em 0 -.06em}.hero__line .ch{display:inline-block;will-change:transform}.hero__line--two{display:flex;align-items:flex-end}.hero__aside{position:absolute;right:0;bottom:.4vw;width:min(32vw,440px);pointer-events:auto}.hero__lead{font-size:var(--step-lead);line-height:1.3;letter-spacing:-.015em;font-weight:400}.hero__actions{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}.hero__meta{position:absolute;left:var(--m);right:var(--m);bottom:var(--m);display:flex;justify-content:space-between;align-items:flex-end;gap:16px;color:#f4f7ee;font-size:var(--step-small);font-weight:500;pointer-events:none}.hero__counter{background:var(--ink);color:var(--bg);padding:10px 14px;font-variant-numeric:tabular-nums;font-size:.9375rem}.hero__counter span{display:inline-block;min-width:3ch;text-align:right}.hero__hint{background:#0f1a1099;padding:10px 14px;font-size:.9375rem}.hint-touch{display:none}@media(hover:none){.hint-fine{display:none}.hint-touch{display:inline}}.intro{padding:var(--section) var(--m) 0;position:relative;background:var(--bg)}.statement{font-family:var(--f-display);font-weight:400;font-size:clamp(1.75rem,.9rem + 3.4vw,4rem);line-height:1.1;letter-spacing:-.035em;max-width:21em;margin:0 auto;text-align:center}.statement .word{color:#0f1a102e;transition:color .2s}.statement .word.is-on{color:var(--ink)}.inframe{display:inline-block;vertical-align:-.1em;height:.82em;width:1.5em;margin:0 .1em;border-radius:.16em;overflow:hidden;position:relative;transition:transform .9s var(--ease-out),opacity .5s}.js .inframe{transform:scale(.3) rotate(-6deg);opacity:0}.js .inframe.is-on{transform:none;opacity:1}.inframe img{width:100%;height:100%;object-fit:cover;transform:scale(1.3);transition:transform 1.4s var(--ease-out)}.inframe.is-on img{transform:none}.about{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);margin-top:var(--section);align-items:start}.about__photo{grid-column:1 / span 5;aspect-ratio:4 / 5;overflow:hidden}.about__photo img{width:100%;height:115%;object-fit:cover}.about__text{grid-column:7 / span 6;padding-top:4vw}.about__text>p{margin-top:1.1em;max-width:34em}.about__text .h-head{margin-bottom:1.2em;max-width:11em}.about .h-sub{margin-top:2.4em;margin-bottom:.9em}.clients{display:flex;flex-wrap:wrap;gap:8px}.clients li{background:var(--surface);padding:9px 14px;font-size:.9375rem;font-weight:500}.services{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);padding:var(--section) var(--m)}.services__aside{grid-column:1 / span 4}.services__aside>*{position:sticky;top:120px}.services__aside .h-display{font-size:clamp(2.75rem,1rem + 4.6vw,6.25rem)}.services__count{top:auto;position:sticky;margin-top:40vh;font-family:var(--f-display);font-size:var(--step-lead);color:var(--muted);display:none}.services__list{grid-column:5 / span 8}.svc{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:start;padding:36px 0 44px}.svc+.svc{margin-top:8px}.svc__title{font-family:var(--f-display);font-weight:400;font-size:clamp(1.875rem,1.2rem + 2.2vw,3.25rem);line-height:1;letter-spacing:-.035em;margin-bottom:.45em;transition:color .3s}.svc__text p{max-width:34ch;font-size:1.0625rem}.svc__img{overflow:hidden;position:relative}.svc__img img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 1.2s var(--ease-out)}.svc:hover .svc__img img{transform:scale(1.02)}.svc:hover .svc__title{color:var(--grass)}.svc__img--a{width:clamp(200px,25vw,400px);aspect-ratio:4 / 5}.svc__img--b{width:clamp(220px,30vw,480px);aspect-ratio:3 / 2}.svc__img--c{width:clamp(160px,19vw,300px);aspect-ratio:1}.svc__img--d{width:clamp(180px,21vw,330px);aspect-ratio:3 / 4}.terrain{position:relative;height:380vh;background:var(--grass-deep);color:var(--grass-ink)}.terrain__stage{position:sticky;top:0;height:100svh;overflow:hidden;display:grid;place-items:center}.terrain__title{position:absolute;inset:0;z-index:3;pointer-events:none;font-family:var(--f-display);font-weight:300;font-size:clamp(3rem,1rem + 6.6vw,8.25rem);line-height:.92;letter-spacing:-.05em}.terrain__a,.terrain__b{position:absolute;left:0;right:0;text-align:center;white-space:nowrap}.terrain__a{top:9vh}.terrain__b{bottom:9vh}.terrain__frame{position:relative;z-index:2;width:30vw;aspect-ratio:4 / 5;overflow:hidden;will-change:clip-path}.terrain__frame img{width:100%;height:100%;object-fit:cover;transform-origin:50% 50%;will-change:transform}.js .terrain__frame img{position:absolute;left:50%;top:50%;max-width:none;object-fit:fill;width:max(100vw,100svh * 1.328);height:max(100svh,100vw / 1.328);margin-left:calc(max(100vw,100svh * 1.328)/-2);margin-top:calc(max(100svh,100vw / 1.328)/-2)}.terrain__caption{position:absolute;z-index:3;right:var(--m);top:50%;transform:translateY(-50%);width:26ch;font-size:1.0625rem;color:var(--grass-ink)}.js .terrain__caption{opacity:0}.compare{padding:var(--section) var(--m);background:var(--bg)}.compare__head{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);align-items:end;margin-bottom:48px}.compare__head .h-display{grid-column:1 / span 7}.compare__lead{grid-column:9 / span 4;font-size:var(--step-lead);line-height:1.3;letter-spacing:-.015em}.compare__tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.compare__tabs button{height:44px;padding:0 18px;border-radius:999px;background:var(--surface);font-weight:500;font-size:.9375rem;transition:background-color .3s,color .3s,transform .4s var(--ease-out)}.compare__tabs button:hover{transform:translateY(-2px)}.compare__tabs button[aria-selected=true]{background:var(--ink);color:var(--bg)}.compare__viewer{--pos: 50%;position:relative;aspect-ratio:16 / 9;overflow:hidden;background:var(--surface);touch-action:pan-y;user-select:none;-webkit-user-select:none}.compare__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.compare__before{position:absolute;inset:0;clip-path:var(--clip, inset(0 50% 0 0))}.compare__tag{position:absolute;top:20px;z-index:2;padding:8px 14px;font-weight:600;font-size:.9375rem;background:var(--ink);color:var(--bg)}.compare__tag--before{left:20px}.compare__tag--after{right:20px;background:var(--accent);color:var(--accent-ink)}.compare__handle{position:absolute;top:0;bottom:0;left:var(--pos);z-index:3;width:72px;margin-left:-36px;display:grid;place-items:center;cursor:ew-resize;outline:none}.compare__knob{width:64px;height:64px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;transition:transform .4s var(--ease-out)}.compare__handle:hover .compare__knob,.compare__handle:focus-visible .compare__knob,.compare__viewer.is-drag .compare__knob{transform:scale(1.12)}.compare__handle:focus-visible .compare__knob{outline:3px solid var(--bg);outline-offset:3px}.compare__knob svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.wood-intro{position:relative;height:260vh;background:var(--bg)}.wood-intro__stage{position:sticky;top:0;height:100svh;overflow:hidden;display:grid;place-items:center}.wood-intro__word{font-family:var(--f-display);font-weight:400;font-size:clamp(6rem,2rem + 24vw,26rem);line-height:.85;letter-spacing:-.06em;white-space:nowrap;color:var(--wood-deep);will-change:transform}.wood-o{display:inline-block}.wood-intro__line{position:absolute;left:0;right:0;bottom:12vh;text-align:center;font-family:var(--f-display);font-size:var(--step-lead);letter-spacing:-.02em}.wood-intro__hole{position:absolute;inset:0;z-index:2;clip-path:circle(0px at 50% 50%);background:var(--wood-deep)}.wood-intro__hole img{width:100%;height:100%;object-fit:cover}.chips{position:relative;height:300vh;background:var(--wood-deep);color:var(--wood-ink)}.chips__stage{position:sticky;top:0;height:100svh;overflow:hidden}.chips__gl{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y}.chips__content{position:absolute;left:var(--m);top:clamp(96px,14vh,150px);width:min(40vw,560px);z-index:2;pointer-events:none}.h-display--light{color:var(--wood-ink)}.chips__lead{margin-top:28px;font-size:var(--step-lead);line-height:1.3;letter-spacing:-.015em;max-width:24em}.chips__uses{margin-top:36px;display:grid;gap:14px;font-size:1.0625rem}.chips__uses li{display:grid;grid-template-columns:7.5em 1fr;gap:12px}.chips__uses strong{font-weight:600;color:#f2b26b}.chips__hint{position:absolute;right:var(--m);bottom:var(--m);font-size:.9375rem;font-weight:500;z-index:2;background:#1c130cb3;padding:10px 14px}.diff{padding:var(--section) var(--m);background:var(--surface)}.diff__title{font-family:var(--f-display);font-weight:400;font-size:clamp(2.25rem,1.2rem + 3.4vw,4.75rem);line-height:.98;letter-spacing:-.04em;max-width:16em;text-indent:3vw}.diff__body{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);margin-top:96px;align-items:end}.diff__photo{grid-column:1 / span 3;aspect-ratio:4 / 5;overflow:hidden}.diff__photo img{width:100%;height:115%;object-fit:cover}.diff__table{grid-column:5 / span 8;border-collapse:collapse;font-size:1.0625rem}.diff__table thead th{font-size:var(--step-small);color:var(--muted);font-weight:500;text-align:left;padding:0 16px 18px 0}.diff__table tbody th{font-family:var(--f-display);font-weight:400;font-size:clamp(1.5rem,1rem + 1.4vw,2.25rem);letter-spacing:-.03em;text-align:left;vertical-align:top;padding:26px 24px 26px 0;white-space:nowrap}.diff__table td{vertical-align:top;padding:30px 24px 26px 0;max-width:30ch}.diff__table tbody tr{border-top:1px solid rgba(15,26,16,.16)}.tech{position:relative;padding:var(--section) var(--m);background:var(--bg)}.tech__para{font-family:var(--f-display);font-weight:400;font-size:clamp(2.25rem,1rem + 4.4vw,5rem);line-height:1.12;letter-spacing:-.04em;color:#0f1a1052}.tech__head{display:inline;font:inherit;color:var(--ink)}.tech__item{font:inherit;letter-spacing:inherit;color:inherit;transition:color .3s;text-align:left}.tech__item:hover,.tech__item:focus-visible{color:var(--ink)}.tframe{display:inline-block;vertical-align:-.08em;margin-left:.14em;height:.78em;width:1.2em;overflow:hidden;border-radius:.12em;transform-origin:left center;transition:transform .6s var(--ease-out)}.tech__item:hover .tframe,.tech__item:focus-visible .tframe{transform:scale(1.6)}.tframe img{width:100%;height:100%;object-fit:cover}.tech__note{margin-top:40px;font-size:.9375rem;color:var(--muted);max-width:40em}.tech__preview{position:fixed;left:0;top:0;z-index:40;pointer-events:none;width:22vw;aspect-ratio:4 / 3;overflow:hidden;opacity:0;will-change:transform}.tech__preview img{width:100%;height:100%;object-fit:cover}.region{padding:var(--section) var(--m);background:var(--grass-deep);color:var(--grass-ink)}.region__title{font-family:var(--f-display);font-weight:300;font-size:clamp(2.5rem,1.2rem + 4vw,5.5rem);line-height:.96;letter-spacing:-.045em;max-width:13em}.region__body{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);margin-top:72px;align-items:center}.region__map{grid-column:1 / span 7}.region__map svg{width:100%;height:auto;overflow:visible}.map__river{fill:none;stroke:#6fb3c9;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.map__ring{fill:none;stroke:#e9f0df24;stroke-width:1.5}.map__route{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-dasharray:6 8;opacity:0;transition:opacity .3s}.map__route.is-on{opacity:1}.map__town circle{fill:var(--grass-ink);transition:r .4s var(--ease-out),fill .3s}.map__town text{fill:var(--grass-ink);font-family:var(--f-text);font-size:17px;font-weight:500;transition:fill .3s}.map__town.is-home circle{fill:var(--accent)}.map__town.is-on circle{fill:var(--accent)}.map__town.is-on text{fill:#fff}.map__town circle.map__pulse{fill:none;stroke:var(--accent);stroke-width:2}.region__list{grid-column:9 / span 4}.region__label{font-size:var(--step-small);color:#e9f0dfb3;margin-bottom:12px}.region__table{width:100%;border-collapse:collapse}.region__table tr{cursor:default;transition:background-color .3s}.region__table th,.region__table td{padding:15px 0;font-size:1.0625rem;text-align:left;font-weight:400}.region__table td{text-align:right;font-variant-numeric:tabular-nums;color:#e9f0dfbf}.region__table tr+tr th,.region__table tr+tr td{border-top:1px solid rgba(233,240,223,.14)}.region__table tr.is-on th{color:var(--accent)}.region__table tr.is-on td{color:var(--grass-ink)}.region__table th span{display:inline-block;transition:transform .5s var(--ease-out)}.region__table tr.is-on th span{transform:translate(8px)}.prints{position:relative;height:100svh;min-height:680px;overflow:hidden;background:var(--accent);color:var(--ink);display:grid;place-items:center}.prints__title{font-family:var(--f-display);font-weight:300;font-size:clamp(6rem,1rem + 15vw,15rem);line-height:.82;letter-spacing:-.06em;text-align:center;pointer-events:none;user-select:none}.prints__title span{display:block}.prints__table{position:absolute;inset:0}.print{position:absolute;width:clamp(150px,14.5vw,250px);aspect-ratio:3 / 4;background:#fbfaf6;padding:8px 8px 30px;touch-action:none;user-select:none;will-change:transform}.print img{width:100%;height:100%;object-fit:cover;pointer-events:none;-webkit-user-drag:none}.print.is-drag{z-index:30}.prints__note{position:absolute;left:var(--m);bottom:var(--m);font-size:.9375rem;font-weight:500;max-width:30em}.contact{padding:var(--section) var(--m) var(--m);background:var(--ink);color:var(--bg)}.contact__top{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);align-items:end}.contact__top .h-head{grid-column:1 / span 6}.contact__lead{grid-column:8 / span 5;font-size:var(--step-lead);line-height:1.3;letter-spacing:-.015em;color:#eef0e9db}.quote{margin-top:72px;display:grid;gap:40px;max-width:1200px}.quote__group{border:0;margin:0;padding:0;min-width:0}.quote legend,.quote label[for]{display:block;font-size:var(--step-small);font-weight:500;color:#eef0e9b3;margin-bottom:14px;padding:0}.chips-select{display:flex;flex-wrap:wrap;gap:8px}.chips-select label,.seg label{position:relative}.chips-select input,.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:inherit}.chips-select span,.seg span{display:inline-flex;align-items:center;height:46px;padding:0 18px;border-radius:999px;background:#eef0e914;color:var(--bg);font-size:.9375rem;font-weight:500;transition:background-color .3s,color .3s,transform .4s var(--ease-out)}.chips-select label:hover span,.seg label:hover span{background:#eef0e929}.chips-select input:checked+span,.seg input:checked+span{background:var(--accent);color:var(--accent-ink)}.chips-select input:focus-visible+span,.seg input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.chips-select input:active+span{transform:scale(.95)}.seg{display:flex;gap:8px}.quote__row{display:grid;grid-template-columns:1fr 1fr;gap:40px}.quote select,.quote textarea{width:100%;font:inherit;font-size:1.0625rem;color:var(--bg);background:#eef0e914;border:0;border-radius:0;padding:14px 16px}.quote select{height:52px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23eef0e9' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.quote select option{color:var(--ink)}.quote textarea{resize:vertical;min-height:96px}.quote textarea::placeholder{color:#eef0e973}.area{display:grid;grid-template-columns:140px 1fr;gap:32px;align-items:center}.area__viz{width:140px;height:140px;display:grid;place-items:end start;background:#eef0e90f}.area__plot{width:40%;height:40%;background:#3f7a22;position:relative;transition:width .25s var(--ease-out),height .25s var(--ease-out)}.area__court{position:absolute;left:0;bottom:0;background:var(--accent);width:20%;height:20%}.area__value{display:block;font-family:var(--f-display);font-size:clamp(2.5rem,1.5rem + 3vw,4.25rem);line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.area__compare{margin-top:10px;color:#eef0e9bf;font-size:.9375rem}.area input[type=range]{width:100%;margin-top:18px;accent-color:var(--accent);height:28px}.quote__actions{display:flex;gap:12px;flex-wrap:wrap}.quote__msg{color:var(--accent);font-weight:500;font-size:.9375rem;margin:-6px 0 12px;min-height:0}.quote__msg:empty{display:none}.contact .btn--ghost{background:#eef0e91a;color:var(--bg)}.contact .btn:after{background:var(--bg)}.contact .btn:hover,.contact .btn:focus-visible{color:var(--ink)}.contact__mail{display:inline-block;margin-top:var(--section);font-family:var(--f-display);font-weight:300;letter-spacing:-.05em;line-height:1;font-size:9.6vw;white-space:nowrap;transition:color .4s}.contact__mail:hover,.contact__mail:focus-visible{color:var(--accent)}.contact__corners{display:flex;justify-content:space-between;align-items:flex-end;margin-top:40px;font-size:.9375rem}.contact__corners address{font-style:normal;line-height:1.6}.contact__corners a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.contact__corners a:hover{color:var(--accent)}.footer{position:relative;min-height:100svh;overflow:hidden;background:var(--grass-deep);color:var(--grass-ink);display:flex;flex-direction:column;padding:var(--section) var(--m) 0}.footer__top{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);align-items:start}.footer__invite{grid-column:1 / span 7;font-family:var(--f-display);font-weight:300;font-size:clamp(2.5rem,1rem + 4.6vw,5.75rem);line-height:.96;letter-spacing:-.045em}.footer__top .btn{grid-column:1 / span 4;justify-self:start;margin-top:12px}.footer__links{grid-column:10 / span 3;grid-row:1;display:grid;gap:10px;font-size:1.0625rem}.footer__links a{transition:color .3s}.footer__links a:hover{color:var(--accent)}.footer .btn:after{background:var(--grass-ink)}.footer .btn:hover{color:var(--ink)}.footer__legal{margin-top:auto;display:flex;justify-content:space-between;font-size:var(--step-small);padding-bottom:12px;position:relative;z-index:2;color:#e9f0dfbf}.footer__legal a:hover{color:var(--accent)}.footer__mark{font-family:var(--f-display);font-weight:400;font-size:21.5vw;line-height:.8;letter-spacing:-.06em;white-space:nowrap;transform:translateY(26%);margin-left:-.03em;color:#e9f0df}.footer__grass{position:absolute;left:0;right:0;bottom:0;width:100%;height:15vw;max-height:26vh;pointer-events:none;z-index:3}.lightbox{padding:0;border:0;background:transparent;max-width:100vw;max-height:100vh;width:100vw;height:100vh;overflow:hidden}.lightbox::backdrop{background:#0a100aeb}.lightbox img{position:absolute;inset:0;margin:auto;max-width:calc(100vw - 2 * var(--m));max-height:calc(100vh - 140px);width:auto;height:auto;object-fit:contain}.lightbox__close{position:absolute;right:var(--m);top:var(--m);height:48px;padding:0 22px;border-radius:999px;background:var(--bg);color:var(--ink);font-weight:500}.reveal-img{overflow:hidden}@media(max-width:1024px){.nav__links,.nav__cta{display:none}.nav__menu{display:inline-flex;align-items:center}.hero__aside{position:static;width:auto;max-width:30em;margin-top:28px}.services__aside{grid-column:1 / -1}.services__aside>*{position:static}.services__list{grid-column:1 / -1;margin-top:48px}.compare__head .h-display,.compare__lead,.region__map,.region__list{grid-column:1 / -1}.region__list{margin-top:40px}.contact__top .h-head,.contact__lead{grid-column:1 / -1}}@media(max-width:768px){.hero{height:120svh}.hero__inner{top:96px}.hero__title{font-size:15.5vw}.hero__lead{font-size:1.125rem}.hero__meta{flex-direction:column;align-items:flex-start;gap:8px}.statement{text-align:left;font-size:7.6vw;line-height:1.15}.inframe{width:1.3em}.about{margin-top:96px}.about__photo{grid-column:1 / -1}.about__text{grid-column:1 / -1;padding-top:32px}.svc{grid-template-columns:1fr;gap:20px;padding:32px 0}.svc:nth-child(3n+1) .svc__img{width:100%}.svc:nth-child(3n+2) .svc__img{width:72%;justify-self:end}.svc:nth-child(3n) .svc__img{width:58%}.terrain__frame{width:72vw}.terrain__title{font-size:12.5vw}.terrain__a,.terrain__b{white-space:normal;padding:0 var(--m)}.terrain__a{top:11vh}.terrain__b{bottom:8vh}.terrain__caption{left:var(--m);right:var(--m);top:calc(11vh + 68px);transform:none;width:auto;text-align:center;font-size:.9375rem}.compare__viewer{aspect-ratio:4 / 5}.compare__knob{width:52px;height:52px}.wood-intro__word{font-size:27vw}.chips__content{width:auto;right:var(--m);top:88px}.chips__uses{display:none}.chips__lead{font-size:1.0625rem}.diff__title{text-indent:0;font-size:9.5vw}.diff__body{margin-top:48px}.diff__table{grid-column:1 / -1}.diff__table thead{display:none}.diff__table tr{display:grid;padding:24px 0}.diff__table tbody th,.diff__table td{padding:4px 0;max-width:none}.diff__photo{grid-column:5 / -1;grid-row:2;margin-top:32px}.tech__para{font-size:9vw;line-height:1.2}.tech__item{padding:3px 0}.tframe{display:none}.tech__item:nth-of-type(-n+3) .tframe{display:inline-block}.tech__preview{display:none}.region__title{font-size:10vw}.region__body{margin-top:40px}.prints__title{font-size:30vw}.print{width:36vw;padding:5px 5px 18px}.quote__row{grid-template-columns:1fr}.area{grid-template-columns:96px 1fr;gap:20px}.area__viz{width:96px;height:96px}.quote__actions .btn{width:100%}.btn--lg{--h: 56px}.contact__mail{font-size:11.5vw;white-space:normal;word-break:break-all}.contact__corners{flex-direction:column;align-items:flex-start;gap:16px}.footer__invite{grid-column:1 / -1;font-size:11vw}.footer__top .btn{grid-column:1 / -1;justify-self:stretch}.footer__links{grid-column:1 / -1;grid-row:auto;margin-top:32px}.footer__mark{font-size:34vw}.footer__legal{flex-direction:column;gap:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.inframe{transform:none;opacity:1}.statement .word{color:var(--ink)}}
