@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/stroim/_next/static/media/onest-cyrillic-ext-wght-normal.8860201a.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/stroim/_next/static/media/onest-cyrillic-wght-normal.20151429.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/stroim/_next/static/media/onest-math-wght-normal.cad38c99.woff2) format("woff2-variations");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-208e,u+2090-209c,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/stroim/_next/static/media/onest-symbols-wght-normal.d64d8e2d.woff2) format("woff2-variations");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ad,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f7??,u+1f800-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fa89,u+1fa8f-1fac6,u+1face-1fadc,u+1fadf-1fae9,u+1faf0-1faf8,u+1fb??}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/stroim/_next/static/media/onest-vietnamese-wght-normal.4250ef26.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/stroim/_next/static/media/onest-latin-ext-wght-normal.79c53978.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/stroim/_next/static/media/onest-latin-wght-normal.89c3d590.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/stroim/_next/static/media/jetbrains-mono-cyrillic-ext-wght-normal.0d2c2f66.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/stroim/_next/static/media/jetbrains-mono-cyrillic-wght-normal.23645aad.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/stroim/_next/static/media/jetbrains-mono-greek-wght-normal.c6c31cb1.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/stroim/_next/static/media/jetbrains-mono-vietnamese-wght-normal.93fc40a8.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/stroim/_next/static/media/jetbrains-mono-latin-ext-wght-normal.9c9751ca.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/stroim/_next/static/media/jetbrains-mono-latin-wght-normal.a865edea.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--ink:#1e2023;--ink-2:#4a4c50;--ink-3:#7d7a74;--paper:#f2efe9;--paper-2:#ebe7df;--concrete:#d9d5cd;--line:#b9b3a8;--line-2:#d6d0c5;--accent:#b5713a;--accent-ink:#8d5426;--night:#14171c;--window:#f4c27a;--font:"Onest Variable","Onest",system-ui,sans-serif;--mono:"JetBrains Mono Variable","JetBrains Mono",ui-monospace,monospace;--gutter:clamp(16px,4vw,48px);--max:1440px;--header:64px;--radius:2px;--ease:cubic-bezier(0.22,1,0.36,1)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--paper)}html.menu-open{overflow:hidden}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip}body,h1,h2,h3,p{margin:0}h1,h2{font-weight:600;letter-spacing:-.025em;line-height:1.02;text-wrap:balance}h1{font-size:clamp(42px,6.4vw,104px)}h2{font-size:clamp(32px,4.4vw,68px)}h3{font-size:21px;font-weight:600;letter-spacing:-.01em;line-height:1.2}a{color:inherit}img{display:block;max-width:100%}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}::selection{background:var(--accent);color:var(--paper)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}@media (min-width:1025px){.container{padding-right:calc(var(--gutter) + 56px)}}.world{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;pointer-events:none}.footer,main{z-index:1}.footer,.pin,main{position:relative}.pin__view{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden}.eyebrow{display:flex;gap:14px;align-items:center;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.eyebrow span+span:before{content:"";display:inline-block;width:28px;height:1px;background:var(--line);vertical-align:middle;margin-right:14px}.lead{font-size:clamp(17px,1.45vw,21px);line-height:1.5;color:var(--ink-2);max-width:40em}.note{margin-top:28px;font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border:1px solid var(--ink);border-radius:var(--radius);background:var(--ink);color:var(--paper);font-size:16px;font-weight:500;text-decoration:none;transition:background .25s,color .25s,border-color .25s}.btn:hover{background:var(--accent);border-color:var(--accent)}.btn--ghost{background:transparent;color:var(--ink)}.btn--ghost:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.btn--small{min-height:40px;padding:0 16px;font-size:14px}.btn--wide{width:100%}.chip{height:34px;padding:0 14px;border:1px solid var(--ink);border-radius:999px;background:var(--paper);font-size:13px}.chip.is-on{background:var(--ink);color:var(--paper)}[data-reveal]{transition:opacity .9s var(--ease),transform .9s var(--ease)}.js [data-reveal]:not(.is-in){opacity:0;transform:translateY(28px)}@media (prefers-reduced-motion:reduce){.js [data-reveal]:not(.is-in),[data-reveal]{opacity:1;transform:none;transition:none}}.section{position:relative;padding:clamp(80px,12vh,140px) 0}.section:before{content:"";position:absolute;left:var(--gutter);right:var(--gutter);top:0;height:8px;border-top:1px solid var(--line-2);background:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 60px);opacity:.6}.head{display:grid;grid-gap:22px;gap:22px;margin-bottom:clamp(40px,6vh,72px);max-width:980px}.header{position:fixed;inset:0 0 auto 0;z-index:50}.header__bar{gap:28px;height:var(--header);padding:0 var(--gutter);background:color-mix(in srgb,var(--paper) 86%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line-2)}.header__bar,.header__logo{display:flex;align-items:center}.header__logo{gap:10px;font-weight:600;letter-spacing:-.01em;text-decoration:none;white-space:nowrap}.header__nav{display:flex;gap:24px;margin-left:auto;font-size:15px}.header__nav a,.header__phone{text-decoration:none;color:var(--ink-2);transition:color .2s}.header__nav a:hover,.header__phone:hover{color:var(--ink)}.header__phone{font-family:var(--mono);font-size:14px;white-space:nowrap}.header__msg{display:flex;gap:4px;margin-left:-16px}.header__msg a{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:var(--ink-2);transition:color .2s,background .2s}.header__msg a:hover{color:var(--ink);background:var(--paper-2)}.header__cta--price span{opacity:.65;font-weight:400}.header__burger{display:none;width:44px;height:44px;border:0;background:none;position:relative}.header__burger span{position:absolute;left:11px;right:11px;height:1.5px;background:var(--ink);transition:transform .3s var(--ease)}.header__burger span:first-child{top:17px}.header__burger span:last-child{top:26px}.header__burger[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.header__burger[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.header-mark{display:none}.menu{position:fixed;inset:var(--header) 0 0 0;background:var(--paper);padding:24px var(--gutter) 32px;display:flex;flex-direction:column;justify-content:space-between;overflow:auto}.menu[hidden]{display:none}.menu__list{display:grid}.menu__list a,.menu__list button{display:flex;width:100%;border:0;background:none;text-align:left;color:inherit;gap:16px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--line-2);font-size:26px;font-weight:500;text-decoration:none}.footer__nav i,.menu__list i{font-family:var(--mono);font-style:normal;font-size:12px;color:var(--ink-3)}.menu__list button span{color:var(--ink-3)}.menu__foot{display:grid;grid-gap:6px;gap:6px;margin-top:32px;font-family:var(--mono);font-size:14px}@media (max-width:1279px){.header__nav{display:none}.header__phone{margin-left:auto}}@media (max-width:720px){.header__bar{gap:12px}.header__cta,.header__msg,.header__phone{display:none}.header__burger{display:block;margin-left:auto}.header-mark{display:block;position:fixed;z-index:51;top:22px;right:calc(var(--gutter) + 52px);font-family:var(--mono);font-size:12px;color:var(--ink-3);pointer-events:none}}.rail{position:fixed;z-index:40;right:18px;top:calc(var(--header) + 40px);bottom:120px;width:44px;pointer-events:none;display:none}.rail__scale{position:absolute;inset:0;container-type:size;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end}.rail__scale>i{display:block;width:6px;height:1px;background:var(--line)}.rail__scale>i[data-major]{width:14px;background:var(--ink-3)}.rail__mark{position:absolute;right:0;width:30px;height:14px;margin-top:-7px;padding:0;border:0;background:none;pointer-events:auto}.rail__mark:before{content:"";position:absolute;right:0;top:6px;width:22px;height:2px;background:var(--ink);transition:width .2s var(--ease),background .2s}.rail__mark em{position:absolute;right:34px;top:50%;transform:translate(6px,-50%);padding:3px 8px;border:1px solid var(--ink);background:var(--paper);font-family:var(--mono);font-size:11px;font-style:normal;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s var(--ease)}.rail__mark:focus-visible:before,.rail__mark:hover:before{width:30px;background:var(--accent)}.rail__mark:focus-visible em,.rail__mark:hover em{opacity:1;transform:translateY(-50%)}.rail__marker{position:absolute;top:0;right:0;height:0;will-change:transform}.rail__marker:before{content:"";position:absolute;right:18px;top:-6px;border:6px solid transparent;border-top:0;border-bottom:10px solid var(--accent);transform:rotate(180deg)}.rail__marker span{position:absolute;right:18px;top:-24px;color:var(--ink);white-space:nowrap}.rail__marker span,.stamp{font-family:var(--mono);font-size:11px}.stamp{position:fixed;z-index:40;left:var(--gutter);bottom:18px;display:none;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--ink);background:color-mix(in srgb,var(--paper) 88%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.stamp>span{padding:6px 10px;border-right:1px solid var(--ink)}.stamp>span:last-child{border-right:0}.stamp b{font-weight:600}.stamp__title{min-width:15ch}@media (min-width:1025px){.rail{display:block}.stamp{display:flex}}.hero{height:130vh}.hero .pin__view{display:flex;align-items:center}.hero__grid{display:grid;height:100%;padding-top:calc(var(--header) + 4vh);padding-bottom:6vh;grid-template-rows:1fr auto}.hero__copy{align-self:center;max-width:min(640px,48vw);display:grid;grid-gap:clamp(16px,2.9vh,26px);gap:clamp(16px,2.9vh,26px)}.hero__copy h1{max-width:11ch;font-size:min(clamp(42px,6.4vw,104px),9.2vh)}.hero__actions{display:flex;flex-wrap:wrap;gap:12px}.hero__facts{display:flex;gap:clamp(24px,4vw,64px);margin:0}.hero__facts div{border-top:1px solid var(--ink);padding-top:10px;min-width:120px}.hero__facts dt{font-size:clamp(26px,2.6vw,38px);font-weight:600;letter-spacing:-.02em}.hero__facts dd{margin:0;font-size:14px;color:var(--ink-3);max-width:19ch}.hero__hint{position:absolute;right:calc(var(--gutter) + 70px);bottom:6vh;font-family:var(--mono);font-size:12px;color:var(--ink-3)}.hero__hint span{color:var(--ink)}@media (min-width:1025px){.hero__grid{padding-bottom:max(6vh,84px)}}@media (min-width:1025px) and (max-height:820px){.hero__grid{padding-top:calc(var(--header) + 2vh)}.hero__copy h1{font-size:8vh}}@media (max-width:820px){.hero .pin__view:before{content:"";position:absolute;inset:0 0 auto;height:64%;background:linear-gradient(var(--paper) 70%,color-mix(in srgb,var(--paper) 0%,transparent));opacity:.85;pointer-events:none}.hero__grid{position:relative;grid-template-rows:auto 1fr auto;padding-top:calc(var(--header) + 24px)}.hero__copy{max-width:none;align-self:start;gap:16px}.hero__copy .lead{font-size:16px}.hero__facts{grid-row:3;gap:16px}.hero__facts div{min-width:0;flex:1 1}.hero__facts dt{font-size:24px}.hero__facts dd{font-size:12px}.hero__hint{display:none}}.transit--village{height:160vh}.transit__labels{position:absolute;inset:0;pointer-events:none}.tag{position:absolute;top:0;left:0;opacity:0;visibility:hidden;will-change:transform,opacity}.tag>*{display:block;white-space:nowrap}.tag:before{top:0;width:36px;height:1px;background:var(--ink)}.tag:after,.tag:before{content:"";position:absolute}.tag:after{top:-3px;width:7px;height:7px;border-radius:50%;background:var(--accent)}.tag[data-side=left]:before{right:0}.tag[data-side=left]:after{right:-3px}.tag[data-side=left]>*{transform:translate(calc(-100% - 46px),-50%);text-align:right}.tag[data-side=right]:before{left:0}.tag[data-side=right]:after{left:-3px}.tag[data-side=right]>*{transform:translate(46px,-50%)}.tag__name{font-size:15px;font-weight:500;background:color-mix(in srgb,var(--paper) 85%,transparent);padding:2px 6px}.tag__mm,.tag__note{font-family:var(--mono);font-size:11px;color:var(--ink-3);padding:0 6px;margin-top:2px}.tag__mm{margin-top:0}.tag>.tag__mm:first-child{position:relative;top:-2px}.tag--docked{top:auto;bottom:calc(24px + env(safe-area-inset-bottom));max-width:calc(50% - 24px);transform:none!important;transition:opacity .25s}.tag--docked[data-side=left]{left:var(--gutter)}.tag--docked[data-side=right]{left:auto;right:var(--gutter);text-align:right}.tag--docked:after,.tag--docked:before{display:none}.tag--docked>*,.tag--docked[data-side]>*{transform:none!important;white-space:normal;text-align:inherit}.tag--docked .tag__name{display:inline-block}.tag[data-kind=alert] .tag__name{color:var(--paper);background:var(--ink)}.tag--pin:before{left:0;top:auto;bottom:0;width:1px;height:34px}.tag--pin:after{left:-3px;top:-3px}.tag--pin>*{text-align:center}.tag--pin .tag__mm,.tag--pin>*{transform:translate(-50%,-54px)}.tag--pin{display:grid}.tag--empty .tag__name{background:var(--ink);color:var(--paper)}.transit__title{position:absolute;left:50%;top:calc(var(--header) + 24px);transform:translateX(-50%);display:flex;gap:18px;align-items:center;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}.transit__title b{color:var(--ink);font-weight:600;padding:4px 10px;border:1px solid var(--ink)}.transit__title>*{background:color-mix(in srgb,var(--paper) 85%,transparent)}.transit__title>span{padding:2px 6px}@media (max-width:720px){.transit__title{flex-direction:column;gap:6px}.tag__name{font-size:13px}.tag:not(.tag--pin):before{width:20px}.tag[data-side=left]>*{transform:translate(calc(-100% - 28px),-50%)}.tag[data-side=right]>*{transform:translate(28px,-50%)}}.callout,.dim,.therm{position:absolute;top:0;left:0;opacity:0;visibility:hidden;will-change:transform,opacity}.callout:before{content:"";position:absolute;left:-.5px;top:calc(-1 * var(--lead));width:1px;height:var(--lead);background:var(--ink)}.callout:after{content:"";position:absolute;left:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:var(--accent)}.callout__text{position:absolute;top:calc(-1 * var(--lead));display:flex;gap:10px;align-items:baseline;padding:2px 6px 3px;border-bottom:1px solid var(--ink);background:color-mix(in srgb,var(--paper) 85%,transparent);white-space:nowrap;font-size:14px;line-height:1.2}.callout__text b{font-weight:500}.callout__text span{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.callout[data-side=frame] .callout__text{right:0;transform:translateY(-100%)}.callout[data-side=block] .callout__text{left:0;transform:translateY(-100%)}.callout__n{display:none}.wall--compact .callout:before{top:calc(-1 * var(--lead-n));height:var(--lead-n)}.wall--compact .callout__text{display:none}.wall--compact .callout__n{position:absolute;top:calc(-1 * var(--lead-n));display:grid;place-items:center;width:18px;height:18px;transform:translate(-50%,-100%);border:1px solid var(--ink);border-radius:50%;background:var(--paper);font-family:var(--mono);font-size:10px}.wall-legend{position:absolute;left:var(--gutter);right:var(--gutter);bottom:calc(24px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;opacity:0;visibility:hidden;pointer-events:none;font-family:var(--mono);font-size:10.5px;line-height:1.45;color:var(--ink-2)}.wall-legend ol{margin:0;padding:6px 8px 6px 24px;background:color-mix(in srgb,var(--paper) 88%,transparent)}.wall-legend ol[data-side=block]{align-self:end}.dim>span,.therm>span{display:block;white-space:nowrap;transform:translate(-50%,calc(-100% - 3px));font-family:var(--mono);font-size:11px;color:var(--ink)}.dim--total>span{font-size:13px;font-weight:600}.dim--r>span{transform:translate(-50%);color:var(--ink-2)}.therm>span{padding:2px 7px;font-size:12px;background:color-mix(in srgb,var(--paper) 80%,transparent)}.therm b{font-weight:600}.therm--warm b{color:#b9581f}.therm--cold b{color:#3f6790}.therm--cold>span{transform:translate(-50%,6px)}.therm--surface>span{display:grid;transform:translate(8px,6px);line-height:1.25}.therm--surface[data-side=block]>span{transform:translate(calc(-100% - 8px),6px);text-align:right}.therm--dew>span{transform:translate(calc(-100% + 0px),calc(-100% - 3px));color:var(--ink-2)}.wall-note{position:absolute;left:50%;top:calc(var(--header) + 76px);max-width:min(560px,calc(100% - 2 * var(--gutter)));margin:0;transform:translateX(-50%);padding:8px 14px;border:1px solid var(--ink);background:color-mix(in srgb,var(--paper) 90%,transparent);font-size:14px;line-height:1.4;text-align:center;opacity:0;visibility:hidden}.wall--compact .wall-note{top:auto;bottom:calc(88px + env(safe-area-inset-bottom));font-size:12.5px}.wall--compact .therm--surface[data-side=block]>span{transform:translate(calc(-100% - 8px),36px)}.wall--compact .wall-legend{bottom:calc(84px + env(safe-area-inset-bottom))}.wall--compact .dim:not(.dim--total,.dim--r),.wall--compact .therm--cold{display:none}.wall--compact .dim>span,.wall--compact .therm>span{font-size:10px}.wall--compact .dim--total>span{font-size:11px}.compare{border-top:1px solid var(--ink)}.compare__row{display:grid;grid-template-columns:minmax(140px,1fr) 2fr 2fr;grid-gap:24px;gap:24px;padding:18px 0;border-bottom:1px solid var(--line-2)}.compare__row>span:first-child{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding-top:3px}.compare__row--head{font-size:22px;font-weight:600}@media (max-width:720px){.compare__row{grid-template-columns:1fr 1fr;gap:6px 16px}.compare__row>span:first-child{grid-column:1/-1}.compare__row--head>span:first-child{display:none}.compare__row--head{font-size:18px}}.pie__bar{display:flex;gap:2px;height:56px}.pie__bar i{flex-basis:0;background:var(--concrete)}.pie__bar i[data-kind=plank]{background:#a8693c}.pie__bar i[data-kind=battens]{background:repeating-linear-gradient(90deg,#d9bb8c 0 6px,transparent 6px 12px)}.pie__bar i[data-kind=membrane]{background:#dfe4e3}.pie__bar i[data-kind=frame]{background:#cdbf8c}.pie__bar i[data-kind=vapour]{background:#b9c4c9}.pie__bar i[data-kind=install]{background:#ddd0a0}.pie__bar i[data-kind=gypsum]{background:#e9e5dd;outline:1px solid var(--line-2)}.pie__bar i[data-kind=plaster]{background:#e6e0d6;outline:1px solid var(--line-2)}.pie__bar i[data-kind=block]{background:radial-gradient(circle,#c5c0b6 1px,transparent 1.5px) 0 0 /7px 7px,#e4e1da}.pie__bar i[data-kind=plasterIn]{background:#ede9e2;outline:1px solid var(--line-2)}.projects__tools{flex-wrap:wrap;gap:14px 28px}.projects__tools,.teaser{display:flex;align-items:center}.teaser{gap:14px;padding:6px 14px 6px 6px;border:1px dashed var(--line);border-radius:var(--radius);background:none;text-align:left;transition:border-color .2s,background .2s}.teaser:hover{border-color:var(--ink);border-style:solid;background:color-mix(in srgb,var(--paper-2) 60%,transparent)}.teaser__bar{width:96px;height:34px;flex-shrink:0}.teaser__text{display:grid;line-height:1.3}.teaser__text b{font-weight:500;font-size:15px}.sheet-link,.teaser__text>span{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink)}.sheet-link{padding:0;border:0;border-bottom:1px dashed;background:none;white-space:nowrap}.sheet-link:hover{color:var(--ink)}.switch{display:inline-flex;border:1px solid var(--ink);border-radius:999px;padding:3px;justify-self:start}.switch button{border:0;background:none;border-radius:999px;padding:8px 18px;font-size:15px}.switch button[aria-checked=true]{background:var(--ink);color:var(--paper)}.cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:clamp(16px,2vw,28px);gap:clamp(16px,2vw,28px)}@media (max-width:1024px){.cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.cards{display:flex;gap:12px;margin:0 calc(-1 * var(--gutter));padding:0 var(--gutter) 4px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 var(--gutter);scrollbar-width:none;overscroll-behavior-x:contain}.cards::-webkit-scrollbar{display:none}.card{flex:0 0 86%;scroll-snap-align:start}.card__body{padding:18px}}.card{display:flex;flex-direction:column;border:1px solid var(--line-2);background:var(--paper)}.card__media{position:relative;aspect-ratio:880/620;background:var(--paper-2);overflow:hidden;border-bottom:1px solid var(--line-2)}.card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .6s var(--ease),transform .8s var(--ease)}.card__x{opacity:0}.card:focus-within .card__x,.card:hover .card__x{opacity:1}.card:hover .card__media img:not(.card__x){opacity:0}.card__num{left:14px;font-size:12px}.card__hint,.card__num{position:absolute;z-index:1;top:12px;font-family:var(--mono);color:var(--ink-3)}.card__hint{right:14px;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.card__wait{position:absolute;inset:22% 26%;border:1px dashed var(--line);animation:wait 1.4s ease-in-out infinite alternate}@keyframes wait{to{opacity:.3}}.card__body{display:grid;grid-gap:16px;gap:16px;padding:22px;flex:1 1}.card__body h3{font-size:26px}.card__facts{display:grid;grid-template-columns:repeat(3,1fr);margin:0;border-top:1px solid var(--line-2)}.card__facts div{padding-top:10px}.card__facts dt{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}.card__facts dd{margin:2px 0 0;font-weight:500}.card__feature{color:var(--ink-2);font-size:15px}.card__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;align-self:end}.card__price{font-size:22px;font-weight:600;letter-spacing:-.01em}.card__price span{font-size:14px;font-weight:400;color:var(--ink-3)}.config__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr);grid-gap:clamp(20px,3vw,48px);gap:clamp(20px,3vw,48px);align-items:start}.config__stage{position:-webkit-sticky;position:sticky;top:calc(var(--header) + 20px);height:calc(100vh - var(--header) - 40px);min-height:420px;border:1px solid var(--line-2);cursor:-webkit-grab;cursor:grab;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.config__stage.is-dragging{cursor:-webkit-grabbing;cursor:grabbing}.config__hud{position:absolute;left:14px;right:14px;top:14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.config__dims{font-family:var(--mono);font-size:12px;color:var(--ink-2)}.config__drag{position:absolute;left:14px;bottom:12px;font-family:var(--mono);font-size:11px;color:var(--ink-3)}.config__panel{display:grid;grid-gap:22px;gap:22px}@media (max-width:960px){.config__grid{grid-template-columns:1fr}.config__stage{position:relative;top:0;height:62vh;min-height:340px}}.config__bar{display:none}@media (max-width:960px){.config__bar{position:-webkit-sticky;position:sticky;bottom:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 calc(-1 * var(--gutter));padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--ink);background:var(--paper);transition:opacity .2s,transform .2s}.config__bar.is-off{opacity:0;transform:translateY(8px);pointer-events:none}.config__bar p{display:grid;grid-gap:2px;gap:2px;margin:0;min-width:0}.config__bar b{font-size:19px;font-weight:600;letter-spacing:-.01em;white-space:nowrap}.config__bar .chip{flex-shrink:0;white-space:nowrap}.config__bar span{font-family:var(--mono);font-size:11px;color:var(--ink-2)}}.field{border:0;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px;min-width:0}.attach>span,.field legend,.field__row span,.input>span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:0;margin-bottom:10px}.field legend{gap:12px;width:100%}.field legend,.field__row{display:flex;justify-content:space-between;align-items:baseline}.field__row span{margin:0}.field__row output{font-family:var(--mono);font-size:15px}.seg{display:flex;flex-wrap:wrap;gap:6px}.seg button,.seg__radio span{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:1px solid var(--line);border-radius:var(--radius);background:transparent;font-size:14px;transition:border-color .2s,background .2s,color .2s}.seg button:hover:not(:disabled),.seg__radio:hover span{border-color:var(--ink)}.seg button[aria-checked=true],.seg button[aria-pressed=true],.seg__radio input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--paper)}.seg button:disabled{opacity:.35;cursor:not-allowed}.seg__radio input{position:absolute;opacity:0;pointer-events:none}.seg__radio{cursor:pointer}.seg__radio input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}input[type=range]{width:100%;accent-color:var(--ink);height:24px}.checks{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.check{display:flex;gap:10px;align-items:center;font-size:15px;cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--accent)}.estimate{display:grid;grid-gap:12px;gap:12px;padding:22px;border:1px solid var(--ink);background:var(--paper)}.estimate__label{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.estimate__sum{font-size:clamp(26px,2.4vw,34px);font-weight:600;letter-spacing:-.02em;line-height:1.1}.estimate__term{color:var(--ink-2);font-size:15px}.estimate__lines{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-2)}.estimate__lines li{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px dashed var(--line-2);font-size:14px}.estimate__lines li span:last-child{font-family:var(--mono);font-size:13px}.process{height:220vh}.process__grid{height:100%;display:flex;align-items:center;padding-top:var(--header)}.process__copy{width:min(540px,44vw)}.process .head{margin-bottom:26px;gap:14px}.process h2{font-size:clamp(28px,3vw,44px)}.stages{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}.stage{display:grid;grid-template-columns:34px 1fr auto;grid-gap:12px;gap:12px;padding:10px 0;border-bottom:1px solid var(--line-2);color:var(--ink-3);transition:color .3s}.stage__num{font-family:var(--mono);font-size:12px;padding-top:3px}.stage__name{font-weight:500}.stage__result{font-size:14px;max-height:0;overflow:hidden;opacity:0;transition:max-height .5s var(--ease),opacity .4s}.stage__bar{display:block;height:2px;margin-top:8px;background:var(--line-2);overflow:hidden;opacity:0}.stage__bar i{display:block;height:100%;background:var(--accent);transform-origin:left;transform:scaleX(0)}.stage__meta{display:grid;justify-items:end;font-family:var(--mono);font-size:12px}.stage.is-done{color:var(--ink-2)}.stage.is-on{color:var(--ink)}.stage.is-on .stage__result{max-height:60px;opacity:1;margin-top:4px}.stage.is-on .stage__bar{opacity:1}.stage.is-on .stage__meta b{color:var(--accent-ink)}@media (max-width:820px){.process__grid{align-items:flex-end;padding-bottom:20px}.process__copy{width:100%;background:color-mix(in srgb,var(--paper) 92%,transparent);padding-top:12px}.process .head{display:none}.stage{padding:6px 0}.stage:not(.is-on) .stage__meta,.stage:not(.is-on):not(:nth-child(-n+7)){display:none}.stage:not(.is-on){grid-template-columns:34px 1fr;font-size:14px}.process .note{display:none}}.ground__cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:2px;gap:2px}@media (max-width:820px){.ground__cards{grid-template-columns:1fr}}.gcard{display:grid;grid-gap:14px;gap:14px;align-content:start;padding:28px 24px 34px;background:var(--paper);min-height:280px}.gcard__mark{font-family:var(--mono);font-size:28px;letter-spacing:-.02em;color:var(--accent-ink);padding-bottom:14px;border-bottom:1px dashed var(--line)}.gcard h4{margin:0;font-size:21px;font-weight:600;letter-spacing:-.01em;line-height:1.2}.gcard p{color:var(--ink-2);font-size:16px}.badge-line{margin-top:28px;padding:16px 20px;border:1px solid var(--ink);font-weight:500;display:inline-block}.cases__grid{display:grid;grid-template-columns:minmax(220px,.9fr) 2.6fr;grid-gap:clamp(20px,3vw,48px);gap:clamp(20px,3vw,48px)}@media (max-width:960px){.cases__grid{grid-template-columns:1fr}}.cases__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}.cases__list button{width:100%;display:grid;grid-template-columns:34px 1fr;grid-gap:2px 10px;gap:2px 10px;padding:14px 0;border:0;border-bottom:1px solid var(--line-2);background:none;text-align:left;color:var(--ink-3);transition:color .2s}.cases__list button:hover,.cases__list button[aria-selected=true]{color:var(--ink)}.cases__list button[aria-selected=true] .cases__num{color:var(--accent-ink)}.cases__num{font-family:var(--mono);font-size:12px;padding-top:5px;grid-row:span 2}.cases__place{font-size:20px;font-weight:500}.cases__meta{font-size:14px}@media (max-width:960px){.cases__list{display:flex;overflow-x:auto;gap:6px;border:0;scrollbar-width:none}.cases__list button{border:1px solid var(--line);padding:10px 14px;white-space:nowrap}.cases__list button[aria-selected=true]{border-color:var(--ink)}.cases__meta{display:none}.cases__place{font-size:16px}.cases__num{grid-row:auto}}.case{display:grid;grid-gap:24px;gap:24px}.case__media{position:relative;aspect-ratio:1200/820;background:var(--paper-2);overflow:hidden}.case__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.03);transition:opacity .7s var(--ease),transform 1.2s var(--ease)}.case__media img.is-on{opacity:1;transform:none}.case__tag{position:absolute;left:14px;top:12px;font-family:var(--mono);font-size:12px;padding:4px 8px;background:var(--paper);border:1px solid var(--ink)}.case__body{display:grid;grid-template-columns:1fr 1.3fr;grid-gap:18px 32px;gap:18px 32px}@media (max-width:720px){.case__body{grid-template-columns:1fr}}.case__facts{display:grid;grid-template-columns:repeat(3,1fr);margin:0;border-top:1px solid var(--ink)}.case__facts div{padding-top:10px}.case__facts dt{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-3);letter-spacing:.06em}.case__facts dd{margin:2px 0 0;font-size:19px;font-weight:500}.case__story{display:grid;grid-gap:16px;gap:16px;justify-items:start;align-content:start}.case__challenge{font-size:18px;line-height:1.45}.timeline{grid-column:1/-1;position:relative;height:64px;margin:8px 40px 0 0;border-top:2px solid var(--ink)}.timeline span{position:absolute;top:-6px;display:grid;grid-gap:2px;gap:2px;white-space:nowrap}.timeline i{width:10px;height:10px;background:var(--paper);border:2px solid var(--ink);border-radius:50%}.timeline span:last-child i{background:var(--accent);border-color:var(--accent)}.timeline b{font-size:13px;font-weight:500}.timeline small{font-family:var(--mono);font-size:11px;color:var(--ink-3)}@media (max-width:720px){.timeline{height:auto;border-top:0;border-left:2px solid var(--ink);margin:8px 0 0 4px;display:grid;grid-gap:10px;gap:10px;padding-left:14px}.timeline span{position:relative;left:0!important;top:0;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.timeline i{margin-left:-21px}}.quotes{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(20px,3vw,48px);gap:clamp(20px,3vw,48px);margin-top:clamp(56px,9vh,100px)}@media (max-width:720px){.quotes{grid-template-columns:1fr}}.quotes figure{margin:0;padding-top:18px;border-top:1px solid var(--line)}.quotes blockquote{margin:0 0 10px;font-size:clamp(20px,1.8vw,26px);line-height:1.35;letter-spacing:-.01em}.quotes figcaption{font-family:var(--mono);font-size:12px;color:var(--ink-3)}.contract__grid{display:grid;grid-template-columns:1.25fr 1fr;grid-gap:clamp(28px,4vw,64px);gap:clamp(28px,4vw,64px);align-items:start}@media (max-width:960px){.contract__grid{grid-template-columns:1fr}}.clauses{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line-2)}@media (max-width:600px){.clauses{grid-template-columns:1fr}}.clauses li{display:grid;grid-gap:8px;gap:8px;align-content:start;padding:20px 20px 24px;border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.clauses h3{font-size:19px}.clauses__num{font-family:var(--mono);font-size:12px;color:var(--accent-ink)}.clauses p{color:var(--ink-2);font-size:15px}.faq__title{margin-bottom:14px;font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.faq__list{border-top:1px solid var(--ink)}.faq__list details{border-bottom:1px solid var(--line-2)}.faq__list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:17px 0;font-size:18px;font-weight:500}.faq__list summary::-webkit-details-marker{display:none}.faq__list summary:after{content:"+";font-family:var(--mono);font-weight:400;transition:transform .3s var(--ease)}.faq__list details[open] summary:after{transform:rotate(45deg)}.faq__list details p{padding:0 40px 22px 0;color:var(--ink-2)}.request{padding-top:40px}.request:before{display:none}.plot{position:relative;padding:clamp(28px,5vw,72px)}.plot__frame{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.plot__frame rect{width:calc(100% - 2px);height:calc(100% - 2px);fill:none;stroke:var(--ink);stroke-width:1.5;stroke-dasharray:10 7}.request.is-sent .plot__frame rect{stroke:var(--accent);stroke-dasharray:none;fill:color-mix(in srgb,var(--accent) 6%,transparent);transition:fill .8s,stroke .4s}.plot__peg{position:absolute;width:9px;height:9px;background:var(--accent)}.plot__peg[data-at=tl]{left:-4px;top:-4px}.plot__peg[data-at=tr]{right:-4px;top:-4px}.plot__peg[data-at=bl]{left:-4px;bottom:-4px}.plot__peg[data-at=br]{right:-4px;bottom:-4px}.plot__inner{position:relative;display:grid;grid-template-columns:1fr 1.2fr;grid-gap:clamp(24px,4vw,64px);gap:clamp(24px,4vw,64px);align-items:start}@media (max-width:900px){.plot__inner{grid-template-columns:1fr}}.plot__inner .head{margin-bottom:0}.form{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.input--wide{grid-column:1/-1}@media (max-width:600px){.form{grid-template-columns:1fr}}.input{display:grid}.input>span{margin-bottom:6px}.input input,.input textarea{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--paper) 70%,white);font-size:16px;resize:vertical;transition:border-color .2s}.input input:focus,.input textarea:focus{outline:none;border-color:var(--ink)}.attach{position:relative;display:grid;padding:14px 16px;border:1px dashed var(--accent);background:color-mix(in srgb,var(--accent) 5%,transparent)}.attach>span{margin-bottom:4px}.attach p{font-size:15px;padding-right:70px}.attach button{position:absolute;right:12px;top:12px;border:0;background:none;font-size:13px;color:var(--ink-3);text-decoration:underline}.form__error{color:#a3341f;font-size:15px}.form__foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.form__foot small{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.form__alt{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;font-size:15px;color:var(--ink-2)}.messengers{display:inline-flex;gap:14px}.messengers a{text-underline-offset:3px}.messengers a:hover{color:var(--accent-ink)}.done{display:grid;grid-gap:18px;gap:18px;align-content:start;justify-items:start}.done__num{font-size:22px;color:var(--accent-ink)}.demo-note,.done__num{font-family:var(--mono)}.demo-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:11px;line-height:1.4;color:var(--ink-3)}.demo-note b{padding:2px 6px;border:1px solid var(--accent);color:var(--accent-ink);font-weight:500;letter-spacing:.08em;text-transform:uppercase}.quick{display:grid;grid-gap:12px;gap:12px;justify-items:start}.quick--inline{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px 24px}@media (max-width:600px){.quick--inline{grid-template-columns:1fr}}.quick__done small{font-family:var(--mono);font-size:12px;color:var(--ink-3)}.callback{position:relative;background:var(--paper);padding-bottom:clamp(24px,4vh,48px)}.callback__box{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);grid-gap:24px 56px;gap:24px 56px;align-items:center;padding:clamp(24px,3vw,40px);border:1px solid var(--ink);background:color-mix(in srgb,var(--accent) 6%,var(--paper))}.callback__copy{display:grid;grid-gap:10px;gap:10px}.callback__copy h3{font-size:clamp(24px,2.2vw,32px);letter-spacing:-.02em}.callback__copy p{color:var(--ink-2)}.callback__copy small{font-family:var(--mono);font-size:12px;color:var(--ink-3)}@media (max-width:960px){.callback__box{grid-template-columns:1fr}}.modal{width:min(560px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);margin:auto;padding:0;border:1px solid var(--ink);border-radius:var(--radius);background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain;box-shadow:0 30px 80px rgba(20,23,28,.25);transition:opacity .3s var(--ease),transform .4s var(--ease)}@starting-style{.modal[open]{opacity:0;transform:translateY(18px)}}.modal::-webkit-backdrop{background:rgba(20,23,28,.42)}.modal::backdrop{background:rgba(20,23,28,.42)}.modal__bar{position:-webkit-sticky;position:sticky;top:0;z-index:1;display:grid;grid-template-columns:1fr auto;grid-gap:6px 20px;gap:6px 20px;align-items:end;padding:18px 22px 16px;background:var(--paper);border-bottom:1px solid var(--line-2)}.modal__bar h2{grid-column:1;font-size:clamp(22px,2.2vw,30px)}.modal__bar .sheet__close{grid-column:2;grid-row:1/span 2}.modal__content{display:grid;grid-gap:22px;gap:22px;padding:22px}.modal--plan{width:min(1240px,calc(100vw - 24px))}@media (max-width:600px){.modal__bar .sheet__close kbd{display:none}}.card__plan{justify-self:start}.projects__foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:28px}.projects__foot .note{margin:0}.planbox{display:grid;grid-template-columns:minmax(0,1fr) 320px}.planbox__drawing{display:grid;grid-gap:16px;gap:16px;align-content:start;padding:22px;border-right:1px solid var(--line-2)}.planbox__drawing .seg{justify-self:start}.planbox__scroll{overflow-x:auto}.planbox__aside{display:grid;grid-gap:14px;gap:14px;align-content:start;padding:22px}.planbox__sum{display:grid;grid-gap:6px;gap:6px;margin:0}.planbox__sum div{display:flex;justify-content:space-between;gap:12px;font-size:14px}.planbox__sum dt{color:var(--ink-2)}.planbox__sum dd{margin:0;font-family:var(--mono);font-weight:600}.planbox__note{font-size:13px;color:var(--ink-3)}.planbox__actions{display:grid;grid-gap:10px;gap:10px}@media (max-width:960px){.planbox{grid-template-columns:1fr}.planbox__drawing{border-right:0;border-bottom:1px solid var(--line-2)}}.plan{display:block;width:100%;min-width:520px;height:auto;max-height:calc(100dvh - 190px);font-family:var(--font)}.plan text,.plan__wall{fill:var(--ink)}.plan__floor,.plan__room rect{fill:var(--paper)}.plan__room rect{stroke:var(--ink);stroke-width:.1}.plan__room[data-kind=living] rect{fill:color-mix(in srgb,var(--accent) 9%,var(--paper))}.plan__room[data-kind=wet] rect{fill:color-mix(in srgb,#7f9db0 16%,var(--paper))}.plan__room[data-kind=tech] rect{fill:color-mix(in srgb,var(--concrete) 70%,var(--paper))}.plan__room[data-kind=hall] rect,.plan__room[data-kind=stair] rect{fill:var(--paper-2)}.plan__room[data-kind=void] rect{stroke-dasharray:.25 .15}.plan__treads line,.plan__void line{stroke:var(--ink-2);stroke-width:.03}.plan__void line{stroke-dasharray:.2 .15}.plan__label{font-weight:500;paint-order:stroke;stroke:var(--paper);stroke-width:.08;stroke-linejoin:round}.plan .plan__area{font-family:var(--mono);font-weight:400;fill:var(--ink-2)}.plan__terrace rect{fill:url(#plan-deck);stroke:var(--ink-2);stroke-width:.04}.plan pattern line{stroke:var(--line);stroke-width:.03}.plan__bay rect{fill:var(--paper);stroke:var(--ink);stroke-width:.2}.plan__bay--carport rect{stroke-width:.04;stroke-dasharray:.3 .2}.plan__roof rect{fill:none;stroke:var(--ink-3);stroke-width:.04;stroke-dasharray:.3 .2}.plan .plan__roof text{fill:var(--ink-3)}.plan__mansard line{stroke:var(--accent);stroke-width:.04;stroke-dasharray:.3 .15}.plan .plan__mansard text{font-family:var(--mono);fill:var(--accent-ink)}.plan__gap{fill:var(--paper)}.plan__door path{fill:var(--accent)}.plan .plan__dims text,.plan .plan__door text,.plan .plan__side{font-family:var(--mono);fill:var(--ink-2)}.plan__dims line{stroke:var(--ink-2);stroke-width:.03}.mortgage__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);grid-gap:32px 56px;gap:32px 56px;align-items:start}@media (max-width:1024px){.mortgage__grid{grid-template-columns:1fr}}.mortgage__info{display:grid;grid-gap:40px;gap:40px}.programmes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line-2)}.programmes li{display:grid;grid-gap:8px;gap:8px;align-content:start;padding:20px 20px 24px;border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.programmes__mark{font-family:var(--mono);font-size:26px;line-height:1.1;color:var(--accent-ink)}.programmes h3{font-size:19px}.programmes p{color:var(--ink-2);font-size:15px}@media (max-width:600px){.programmes{grid-template-columns:1fr}}.deal{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}.deal li{display:grid;grid-gap:6px;gap:6px;align-content:start;padding-top:14px;border-top:1px dashed var(--line)}.deal span{font-family:var(--mono);font-size:12px;color:var(--accent-ink)}.deal p{font-size:14px;color:var(--ink-2)}@media (max-width:720px){.deal{grid-template-columns:1fr 1fr}}.calc{display:grid;grid-gap:18px;gap:18px;padding:22px;border:1px solid var(--ink);background:var(--paper)}.calc>.seg button{flex:1 1}.field__row em{font-style:normal;text-transform:none;letter-spacing:0;color:var(--accent-ink)}.calc__rate{display:flex;justify-content:space-between;align-items:center;gap:12px}.calc__rate span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.calc__rate input{width:96px;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);font-family:var(--mono);font-size:14px;text-align:right}.calc__result{display:grid;grid-gap:10px;gap:10px;padding-top:16px;border-top:1px solid var(--line-2)}.calc__result small{font-size:12px;color:var(--ink-3)}.calc__split{font-size:13px;color:var(--accent-ink)}.estimate__mortgage{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border:0;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);background:none;text-align:left;font-size:15px;font-weight:500}.estimate__mortgage small{display:block;font-weight:400;font-size:12px;color:var(--ink-3)}.estimate__mortgage>span:last-child{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);white-space:nowrap}.estimate__mortgage:hover>span:last-child{color:var(--ink)}.docs{display:grid;grid-gap:24px;gap:24px;margin-top:clamp(48px,7vh,80px)}.docs__head{display:grid;grid-gap:8px;gap:8px}.docs__head h3{font-size:clamp(24px,2.2vw,32px);letter-spacing:-.02em}.docs__head p{color:var(--ink-2)}.docs__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px}@media (max-width:1024px){.docs__list{grid-template-columns:1fr 1fr}}@media (max-width:560px){.docs__list{grid-template-columns:1fr}}.doc{display:grid;grid-gap:8px;gap:8px;align-content:start;width:100%;height:100%;padding:20px 20px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);text-align:left;transition:border-color .2s,background .2s}.doc:hover{border-color:var(--ink);background:color-mix(in srgb,var(--accent) 5%,var(--paper))}.doc__sheet{position:relative;width:30px;height:38px;margin-bottom:6px;border:1px solid var(--ink);-webkit-clip-path:polygon(0 0,70% 0,100% 24%,100% 100%,0 100%);clip-path:polygon(0 0,70% 0,100% 24%,100% 100%,0 100%)}.doc__sheet:after{content:"";position:absolute;right:-1px;top:-1px;width:9px;height:9px;border-left:1px solid var(--ink);border-bottom:1px solid var(--ink)}.doc__sheet i{position:absolute;left:5px;right:7px;top:16px;height:12px;background:repeating-linear-gradient(var(--line) 0 1px,transparent 1px 4px)}.doc__tag{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.doc b{font-size:18px;font-weight:600}.doc__text{font-size:14px;color:var(--ink-2)}.doc__get{margin-top:6px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink)}.mbar{display:none}@media (max-width:720px){.mbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:auto auto 1fr;grid-gap:8px;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--ink);background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transform:translateY(110%);transition:transform .35s var(--ease)}.mbar.is-on{transform:none}html.menu-open .mbar,html.sheet-open .mbar{transform:translateY(110%)}.mbar a,.mbar__cta{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 12px;border:1px solid var(--ink);border-radius:var(--radius);background:var(--paper);font-size:14px;text-decoration:none;white-space:nowrap}.mbar__cta{background:var(--ink);color:var(--paper)}.mbar__cta b{font-weight:600}}@media (max-width:380px){.mbar a{font-size:0;gap:0}}.footer__top{display:grid;grid-template-columns:1fr 1.4fr 1fr;grid-gap:32px;gap:32px;padding-top:72px;padding-bottom:56px;border-top:1px solid var(--ink)}@media (max-width:900px){.footer__top{grid-template-columns:1fr}}.footer__brand{display:grid;grid-gap:8px;gap:8px;align-content:start}.footer__brand p{font-size:22px;font-weight:600}.footer__brand span{color:var(--ink-3);font-size:15px}.footer__nav{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px 24px;gap:6px 24px;align-content:start}.footer__nav a,.footer__nav button{text-decoration:none;padding:4px 0;border:0;background:none;text-align:left}.footer__nav a:hover,.footer__nav button:hover{color:var(--accent-ink)}.footer__contacts{display:grid;grid-gap:6px;gap:6px;align-content:start;font-family:var(--mono);font-size:14px}.footer__contacts a{text-decoration:none}.finale{height:120vh}.finale__copy{position:absolute;left:var(--gutter);right:var(--gutter);top:calc(var(--header) + 6vh);display:grid;grid-gap:14px;gap:14px;color:var(--paper);mix-blend-mode:difference}.finale__copy h2{font-size:clamp(56px,10vw,168px);letter-spacing:-.04em}.finale__act{overflow:hidden;font-family:var(--mono);font-size:13px;letter-spacing:.12em;white-space:nowrap}.finale__act span{display:inline-block;animation:act 18s linear infinite}@keyframes act{0%{transform:translateX(0)}to{transform:translateX(-30%)}}.finale__bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;font-family:var(--mono);font-size:12px;color:var(--paper);mix-blend-mode:difference}.finale__bottom a,.skip{text-decoration:none}.skip{position:absolute;right:calc(var(--gutter) + 70px);bottom:max(6vh,84px);padding:6px 12px;border:1px solid var(--ink);background:color-mix(in srgb,var(--paper) 88%,transparent);font-family:var(--mono);font-size:12px;transition:background .2s,color .2s}.skip:hover{background:var(--ink);color:var(--paper)}@media (max-width:1024px){.skip{right:var(--gutter);bottom:auto;top:calc(var(--header) + 14px)}}.sheet{--sheet-w:min(calc(100vw - 56px),1720px);--slide:0.56s}.sheet__backdrop{position:fixed;inset:0;z-index:60;background:color-mix(in srgb,var(--night) 42%,transparent);opacity:0;visibility:hidden;transition:opacity var(--slide) var(--ease),visibility 0s var(--slide)}.sheet__panel,.sheet__under{position:fixed;top:0;bottom:0;right:0;width:var(--sheet-w);transform:translateX(calc(100% + 40px));visibility:hidden;transition:transform var(--slide) var(--ease),visibility 0s var(--slide)}.sheet__under{z-index:61;background:var(--paper);box-shadow:-24px 0 60px rgba(20,23,28,.18)}.sheet__panel{z-index:63;display:flex;flex-direction:column}.sheet.is-open .sheet__backdrop{opacity:1;visibility:visible;transition:opacity var(--slide) var(--ease)}.sheet.is-open .sheet__panel,.sheet.is-open .sheet__under{transform:none;visibility:visible;transition:transform var(--slide) var(--ease)}html.sheet-open{overflow:hidden}html.sheet-open .world{z-index:62}.sheet__under:before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;border-left:1px solid var(--ink);background:repeating-linear-gradient(var(--line) 0 1px,transparent 1px 60px);opacity:.7}.sheet__bar{display:grid;grid-template-columns:1fr auto;grid-gap:4px 24px;gap:4px 24px;align-items:end;padding:18px var(--gutter) 16px calc(var(--gutter) + 8px);background:var(--paper);border-bottom:1px solid var(--line-2)}.sheet__bar h2{grid-column:1;font-size:clamp(22px,2.2vw,34px)}.sheet__close{grid-column:2;grid-row:1/span 2;align-self:center;display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 14px;border:1px solid var(--ink);border-radius:var(--radius);background:var(--paper);font-size:14px;transition:background .2s,color .2s}.sheet__close:hover{background:var(--ink);color:var(--paper)}.sheet__close kbd{font-family:var(--mono);font-size:10px;padding:1px 5px;border:1px solid;border-radius:2px;opacity:.6}.sheet__view{--header:0px;position:relative;flex:1 1;min-height:0;overflow:hidden;touch-action:none}.sheet__ctrl{display:flex;align-items:center;gap:18px;padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom)) calc(var(--gutter) + 8px);background:var(--paper);border-top:1px solid var(--line-2)}.sheet__play{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border:1px solid var(--ink);border-radius:50%;background:var(--ink);color:var(--paper);transition:background .2s,border-color .2s}.sheet__play:hover{background:var(--accent);border-color:var(--accent)}.sheet__steps{flex:1 1;display:flex;gap:4px;margin:0;padding:0;list-style:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer}.sheet__steps li{flex:1 1;min-width:0}.sheet__steps button{display:grid;grid-gap:8px;gap:8px;width:100%;padding:6px 0;border:0;background:none;text-align:left;color:var(--ink-3);transition:color .2s}.sheet__steps i{display:block;height:6px;background:var(--line-2);overflow:hidden}.sheet__steps b{display:block;height:100%;background:var(--ink);transform-origin:left;transform:scaleX(0)}.sheet__steps li:last-child b{background:var(--accent)}.sheet__steps span{overflow:hidden;font-size:13px;white-space:nowrap;text-overflow:ellipsis}.sheet__steps em{font-family:var(--mono);font-size:11px;font-style:normal}.sheet__steps li.is-on button{color:var(--ink)}.sheet__steps li.is-on em{color:var(--accent-ink)}.sheet__hint{flex-shrink:0;font-family:var(--mono);font-size:11px;color:var(--ink-3)}.sheet__card{position:absolute;inset:clamp(16px,4vh,40px) var(--gutter);max-width:1120px;margin:0 auto;display:grid;align-content:start;grid-gap:20px;gap:20px;padding:clamp(20px,3vw,40px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--ink);background:color-mix(in srgb,var(--paper) 95%,transparent);opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .45s var(--ease),transform .6s var(--ease),visibility 0s .45s;touch-action:pan-y}.sheet__view>:not(.sheet__card){transition:opacity .3s}.sheet[data-final] .sheet__view>:not(.sheet__card){opacity:0!important}.sheet[data-final] .sheet__card{opacity:1;visibility:visible;transform:none;transition:opacity .45s var(--ease),transform .6s var(--ease)}.sheet__card h3{font-size:clamp(24px,2.4vw,36px);letter-spacing:-.02em}.sheet__card .compare__row{padding:13px 0;font-size:15px}.sheet__card .gcard{min-height:0;background:var(--paper-2)}.sheet__card .ground__cards{gap:8px}.sheet__card .badge-line{margin:0}.sheet__cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px}@media (max-width:960px){.sheet{--sheet-w:100vw}.sheet__under:before{display:none}.sheet__bar{padding:12px var(--gutter)}.sheet__bar .eyebrow{font-size:11px}.sheet__bar .eyebrow span+span{display:none}.sheet__bar h2{font-size:20px}.sheet__close{height:36px;padding:0 12px}.sheet__close kbd,.sheet__hint{display:none}.sheet__ctrl{gap:12px;padding-left:var(--gutter)}.sheet__steps span{display:none}.sheet__steps li.is-on{flex:3 1}.sheet__steps li.is-on span{display:block}}[data-nowebgl] .transit{display:none}[data-nowebgl] .finale,[data-nowebgl] .hero,[data-nowebgl] .process{height:auto}[data-nowebgl] .pin__view{position:relative;height:auto;min-height:100vh}[data-nowebgl] .sheet__card{opacity:1;visibility:visible;transform:none}[data-nowebgl] .sheet__ctrl,[data-nowebgl] .sheet__view>:not(.sheet__card){display:none}