.site-header[data-astro-cid-zjh2n6yz]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding-block:1.25rem;display:flex}.brand[data-astro-cid-zjh2n6yz]{font-family:var(--font-heading);color:var(--brand-ink);font-size:1.25rem;font-weight:700;text-decoration:none}nav[data-astro-cid-zjh2n6yz] ul[data-astro-cid-zjh2n6yz]{flex-wrap:wrap;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}nav[data-astro-cid-zjh2n6yz] a[data-astro-cid-zjh2n6yz]{color:var(--brand-ink);text-decoration:none}nav[data-astro-cid-zjh2n6yz] a[data-astro-cid-zjh2n6yz][aria-current=page]{color:var(--brand-primary);font-weight:600}.grg-credit[data-astro-cid-q2prhjmt]{max-width:none;margin:0}.grg-credit__unit[data-astro-cid-q2prhjmt]{white-space:nowrap}.grg-credit__by[data-astro-cid-q2prhjmt]{max-width:100%;display:inline-block}.grg-credit__logo[data-astro-cid-q2prhjmt]{vertical-align:-4px;color:inherit;text-decoration:none;transition:opacity .2s;display:inline-block}.grg-credit__logo[data-astro-cid-q2prhjmt]>span[data-astro-cid-q2prhjmt]{aspect-ratio:3187.57/313.8;width:200px;-webkit-mask:var(--grg-logo) center / contain no-repeat;mask:var(--grg-logo) center / contain no-repeat;background-color:currentColor;display:block}.grg-credit__logo[data-astro-cid-q2prhjmt]:hover,.grg-credit__logo[data-astro-cid-q2prhjmt]:focus-visible{opacity:.75}.grg-credit__logo[data-astro-cid-q2prhjmt]:focus-visible{outline-offset:3px;outline:1px solid}@media (width<=40rem){.grg-credit[data-astro-cid-q2prhjmt]{flex:100%;container-type:inline-size}.grg-credit[data-astro-cid-q2prhjmt]>span[data-astro-cid-q2prhjmt]{font-size:clamp(9px, (100cqi - 206px) / var(--grg-credit-measure), 1em)}}@media (forced-colors:active){.grg-credit__logo[data-astro-cid-q2prhjmt]>span[data-astro-cid-q2prhjmt]{forced-color-adjust:none;background-color:linktext}}.site-footer[data-astro-cid-atlafhy2]{border-top:1px solid color-mix(in srgb, var(--brand-ink) 15%, transparent);gap:1.5rem;margin-top:4rem;padding-block:2.5rem;font-size:.9375rem;display:grid}.site-footer[data-astro-cid-atlafhy2] p[data-astro-cid-atlafhy2]{margin:0 0 .25rem}.name[data-astro-cid-atlafhy2]{font-weight:600}ul[data-astro-cid-atlafhy2]{gap:1rem;margin:0;padding:0;list-style:none;display:flex}.legal[data-astro-cid-atlafhy2]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;display:flex}.legal[data-astro-cid-atlafhy2]>p[data-astro-cid-atlafhy2]{opacity:.7}@media (width>=40rem){.site-footer[data-astro-cid-atlafhy2]{grid-template-columns:repeat(3,1fr)}.legal[data-astro-cid-atlafhy2]{grid-column:1/-1}}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-body), system-ui, -apple-system, sans-serif;color:var(--brand-ink);background:var(--brand-paper);margin:0;line-height:1.6}h1,h2,h3,h4{font-family:var(--font-heading), var(--font-body), system-ui, sans-serif;margin:0 0 .5em;line-height:1.2}a{color:var(--brand-primary)}.button{background:var(--brand-primary);color:var(--brand-paper);border-radius:.375rem;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;display:inline-block}.button:hover,.button:focus-visible{background:var(--brand-secondary)}:where(a,button,input,textarea,select):focus-visible{outline:3px solid var(--brand-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.skip-link[data-astro-cid-os4vq2wt]{position:absolute;left:-9999px}.skip-link[data-astro-cid-os4vq2wt]:focus{z-index:10;background:var(--brand-paper);padding:.5rem 1rem;top:1rem;left:1rem}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal.rJmnGBSt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal.7khWdh9v.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal.DY7AcnAa.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-primary:#212a75;--brand-primary-rgb:33 42 117;--brand-secondary:#e9e6df;--brand-secondary-rgb:233 230 223;--brand-accent:#a85a17;--brand-accent-rgb:168 90 23;--brand-ink:#141826;--brand-ink-rgb:20 24 38;--brand-paper:#f4f2ed;--brand-paper-rgb:244 242 237;--step--1:.8rem;--step-0:1rem;--step-1:1.25rem;--step-2:1.563rem;--step-3:1.953rem;--step-4:2.441rem;--step-5:3.052rem;--step--1-lh:1.6;--step-0-lh:1.6;--step-1-lh:1.4;--step-2-lh:1.4;--step-3-lh:1.2;--step-4-lh:1.2;--step-5-lh:1.05;--measure:65ch;--mono:"IBM Plex Mono", ui-monospace, monospace;--rule:rgb(var(--brand-ink-rgb) / .16);--rule-strong:rgb(var(--brand-ink-rgb) / .4);--muted:rgb(var(--brand-ink-rgb) / .72);--head-h:4.25rem;--gutter:clamp(1rem, 3vw, 2.5rem);--ease:cubic-bezier(.215, .61, .355, 1)}html{scroll-padding-top:var(--head-h);-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:1.0625rem;font-stretch:100%}body:before{content:"";width:min(80rem, 100% - 2 * var(--gutter));border-inline:1px solid var(--rule);background:linear-gradient(to right, transparent calc(25% - .5px), var(--rule) calc(25% - .5px) calc(25% + .5px), transparent calc(25% + .5px) calc(50% - .5px), var(--rule) calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px) calc(75% - .5px), var(--rule) calc(75% - .5px) calc(75% + .5px), transparent calc(75% + .5px));opacity:.55;pointer-events:none;z-index:-1;position:fixed;inset:0 auto 0 50%;transform:translate(-50%)}.wrap{width:min(80rem, 100% - 2 * var(--gutter));margin-inline:auto}a{color:var(--brand-primary);text-underline-offset:.2em;text-decoration-thickness:1px}.label{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.75rem;font-weight:500}.display,.h2,.h3{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--brand-primary);text-wrap:balance;font-weight:800;font-stretch:125%}.display{margin:0;font-size:clamp(2.75rem,6.6vw,6.75rem);line-height:.94}.h2{margin:.6rem 0 0;font-size:clamp(2rem,4.4vw,4rem);line-height:.98}.h3{margin:.5rem 0 0;font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1}.lead{max-width:34ch;font-size:clamp(1.125rem,1.5vw,1.3rem);line-height:1.5}.btn{background:var(--brand-primary);color:var(--brand-paper);border:1px solid var(--brand-primary);transition:background-color .3s var(--ease), color .3s var(--ease);align-items:center;gap:.6em;padding:1rem 1.5rem;font-weight:650;font-stretch:112%;text-decoration:none;display:inline-flex}.btn:hover,.btn:focus-visible{background:var(--brand-ink);border-color:var(--brand-ink)}.btn--small{padding:.6rem 1rem;font-size:.9375rem}.link{color:var(--brand-ink);font-weight:600}:where(a,button,video):focus-visible{outline:2px solid var(--brand-accent);outline-offset:3px}.head{z-index:20;background:rgb(var(--brand-paper-rgb) / .94);backdrop-filter:saturate(1.2)blur(8px);border-bottom:1px solid var(--rule);position:sticky;top:0}.head__inner{width:min(80rem, 100% - 2 * var(--gutter));height:var(--head-h);align-items:center;gap:1.5rem;margin-inline:auto;display:flex}.head__brand{color:var(--brand-primary);align-items:center;gap:.75rem;margin-right:auto;text-decoration:none;display:flex}.head__mark{width:3.4rem;display:block}.head__mark svg{width:100%;height:auto;display:block}.head__word{flex-direction:column;line-height:1;display:flex}.head__name{letter-spacing:.04em;text-transform:uppercase;font-size:1.35rem;font-weight:850;font-stretch:125%}.head__sub{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-ink);margin-top:.3rem;font-size:.6rem}.head__nav ul{gap:1.75rem;margin:0;padding:0;list-style:none;display:flex}.head__nav a{color:var(--brand-ink);transition:background-size .4s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;padding-block:.25rem;font-size:.9375rem;font-weight:500;text-decoration:none}.head__nav a:hover{background-size:100% 1px}.head__call-short{display:none}@media (width<=62rem){.head__nav{display:none}}@media (width<=30rem){.head__call-long{display:none}.head__call-short{display:inline}.head__sub{font-size:.5rem}}.hero{width:min(80rem, 100% - 2 * var(--gutter));gap:2.5rem;margin-inline:auto;padding-block:clamp(2rem,6vh,4rem) 3rem;display:grid}.hero__label{gap:1.5rem;margin-bottom:1.5rem;display:flex}.hero__lead{color:var(--brand-ink);margin:1.75rem 0 2rem}.hero__actions{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.hero__figure{margin:0}.hero__frame{background:var(--brand-secondary);aspect-ratio:4/5;overflow:hidden}.hero__img{object-fit:cover;transform-origin:50% 40%;width:100%;height:100%;display:block}.hero__figure figcaption{margin-top:.75rem}@media (width>=64rem){.hero{min-height:calc(100svh - var(--head-h));grid-template-columns:1.15fr 1fr;align-items:end;padding-block:2.5rem}.hero__text{padding-bottom:3rem}.hero__frame{aspect-ratio:auto;height:calc(100svh - var(--head-h) - 7rem)}}.overview{gap:2rem;padding-block:clamp(5rem,12vh,9rem);display:grid}.overview__body>p{max-width:46ch;margin:0 0 2.5rem;font-size:clamp(1.125rem,1.4vw,1.25rem)}.spec{border-bottom:1px solid var(--rule-strong);margin:0}.spec>div{grid-template-columns:9rem 1fr;gap:1rem;padding:.9rem 0;display:grid;position:relative}.spec dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:.15rem;font-size:.75rem}.spec dd{margin:0;font-weight:500}@media (width>=52rem){.overview{grid-template-columns:1fr 1fr}}.svc__rule{background:var(--rule-strong);transform-origin:0;height:1px;position:absolute;inset:0 0 auto}.work{padding-top:2rem}.work__intro{padding-bottom:2rem}.work__hint{max-width:44ch;color:var(--muted);margin:1.25rem 0 0}.sheet{height:240vh;position:relative}.sheet__stage{top:var(--head-h);height:calc(100svh - var(--head-h));align-items:center;display:flex;position:sticky;overflow:hidden}.sheet__grid{align-items:center;gap:1.25rem;display:grid}.sheet__no{font-family:var(--mono);letter-spacing:.14em;color:var(--brand-primary);border-top:2px solid var(--brand-primary);margin:0;padding-top:.6rem;font-size:.8rem;display:inline-block}.sheet__note{max-width:38ch;margin:1rem 0}.sheet__tags{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.sheet__tags li{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--rule-strong);padding:.35rem .6rem;font-size:.7rem}.sheet__fig{justify-self:center;width:100%;margin:0}.sheet__frame{width:100%;max-width:calc((100svh - var(--head-h) - 9rem) * 4 / 3);background:var(--brand-secondary);border:1px solid var(--rule-strong);margin-inline:auto;padding:.5rem}.sheet--portrait .sheet__frame{width:auto;height:min(calc(100svh - var(--head-h) - 9rem), 48rem);max-width:100%}.sheet__video{object-fit:cover;background:var(--brand-secondary);width:100%;height:100%;display:block}.sheet__fig figcaption{text-align:center;margin-top:.6rem}.dim{max-width:calc((100svh - var(--head-h) - 9rem) * 4 / 3);align-items:center;gap:.75rem;margin:0 auto .6rem;display:flex}.sheet--portrait .dim{max-width:calc(min(calc(100svh - var(--head-h) - 9rem), 48rem) * 3 / 4)}.dim__line{background:var(--rule-strong);flex:1;height:1px;position:relative}.dim__line:before,.dim__line:after{content:"";background:var(--brand-ink);width:1px;height:11px;position:absolute;top:-5px}.dim__line:before{left:0}.dim__line:after{right:0}.dim__fill{background:var(--brand-accent);transform-origin:0;position:absolute;inset:-1px 0;transform:scaleX(0)}.dim__text{font-family:var(--mono);letter-spacing:.08em;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.7rem}@media (width>=56rem){.sheet__grid{grid-template-columns:4fr 7fr;gap:4rem}.sheet--flip .sheet__meta{order:2}.sheet--flip .sheet__grid{grid-template-columns:7fr 4fr}}@media (width<=55.99rem){.sheet{height:200vh}.sheet__stage{align-items:start;padding-top:1.25rem}.sheet__note{margin:.6rem 0;font-size:.9375rem}.sheet__tags{display:none}.sheet__frame,.dim{max-width:100%}.sheet--portrait .sheet__frame{height:calc(100svh - var(--head-h) - 19rem);min-height:16rem}.sheet--portrait .dim{max-width:calc((100svh - var(--head-h) - 19rem) * 3 / 4)}}.rooms{padding-block:clamp(5rem,12vh,9rem) 4rem}.rooms__head{margin-bottom:3rem}.rooms__grid{gap:3rem 2rem;display:grid}.room{margin:0}.room__frame{background:var(--brand-secondary);overflow:hidden}.room__img{object-fit:cover;width:100%;height:100%;display:block}.room figcaption{margin-top:.7rem}.room--tall .room__frame{aspect-ratio:3/4}.room--wide .room__frame{aspect-ratio:4/3}@media (width>=52rem){.rooms__grid{grid-template-columns:repeat(12,1fr);align-items:start}.room:first-child{grid-column:1/span 4}.room:nth-child(2){grid-column:6/span 7;margin-top:8rem}.room:nth-child(3){grid-column:2/span 4;margin-top:-4rem}.room:nth-child(4){grid-column:7/span 6;margin-top:4rem}.room:nth-child(5){grid-column:1/span 7;margin-top:2rem}.room:nth-child(6){grid-column:9/span 4;margin-top:-2rem}}.progress{background:var(--brand-secondary);border-block:1px solid var(--rule);padding-block:clamp(4rem,10vh,7rem)}.progress__head{margin-bottom:2.5rem}.progress__head>p:last-child{color:var(--muted);margin:1rem 0 0}.progress__row{gap:2rem;display:grid}.room__frame--even{aspect-ratio:4/5}@media (width>=52rem){.progress__row{grid-template-columns:repeat(3,1fr)}.progress__row .room:nth-child(2){margin-top:3rem}}.services{background:var(--brand-primary);color:var(--brand-paper);--rule-strong:rgb(var(--brand-paper-rgb) / .3);padding-block:clamp(5rem,12vh,9rem)}.services .label{color:rgb(var(--brand-paper-rgb) / .75)}.services .h2{color:var(--brand-paper)}.services__head{margin-bottom:3rem}.services__groups{gap:4rem;display:grid}.services__kind{letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 .5rem;font-size:1.1rem;font-weight:800;font-stretch:125%;display:flex}.services__list,.steps{margin:0;padding:0;list-style:none}.svc{grid-template-columns:3rem 1fr;gap:.25rem 1rem;padding:1.5rem 0;display:grid;position:relative}.svc:last-child{border-bottom:1px solid var(--rule-strong)}.svc__no,.step__no{font-family:var(--mono);letter-spacing:.1em;padding-top:.45rem;font-size:.8rem}.svc__name{color:inherit;margin:0;font-size:clamp(1.35rem,2.2vw,1.9rem);font-weight:750;font-stretch:125%}.svc__text{max-width:52ch;color:rgb(var(--brand-paper-rgb) / .85);grid-column:2;margin:0}@media (width>=52rem){.svc{grid-template-columns:4rem 1fr 1.2fr;align-items:baseline}.svc__text{grid-column:3}}.process{padding-block:clamp(5rem,12vh,9rem)}.process__head{margin-bottom:3rem}.steps{gap:0 2rem;display:grid}.step{padding:1.5rem 0 2rem;position:relative}.step__name{color:var(--brand-primary);margin:1.25rem 0 .6rem;font-size:1.5rem;font-weight:750;font-stretch:125%}.step p{max-width:30ch;margin:0}@media (width>=52rem){.steps{grid-template-columns:repeat(4,1fr)}}.contact{border-top:1px solid var(--rule);padding-block:clamp(4rem,10vh,7rem) clamp(4rem,10vh,6rem)}.contact__phone{letter-spacing:-.03em;color:var(--brand-primary);font-variant-numeric:tabular-nums;background:linear-gradient(var(--brand-accent), var(--brand-accent)) 0 100% / 0 4px no-repeat;transition:background-size .6s var(--ease);white-space:nowrap;margin-top:2rem;padding-bottom:.15em;font-size:clamp(2.5rem,9.5vw,9rem);font-weight:850;font-stretch:125%;line-height:1;text-decoration:none;display:inline-block}.contact__phone:hover,.contact__phone:focus-visible{background-size:100% 4px}.contact__alt{margin:1.5rem 0 0;font-size:1.125rem}.foot{padding-block:0 2rem}.block{border:1px solid var(--rule-strong);background:var(--brand-paper);grid-template-columns:1fr 1fr;display:grid}.block__cell{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:.9rem 1rem}.block__cell p{overflow-wrap:anywhere;margin:.4rem 0 0;font-weight:500}.block__cell--name,.block__cell--wide{grid-column:1/-1}.block__name{color:var(--brand-primary);font-size:1.25rem;font-weight:800;font-stretch:125%}.block__sheet{font-family:var(--mono)}@media (width>=60rem){.block{grid-template-columns:2fr 1fr 1.15fr .9fr 1.05fr 1.55fr .65fr}.block__cell--name,.block__cell--wide{grid-column:auto}.block__cell{border-bottom:0}.block__cell:last-child{border-right:0}}.foot__legal{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 2rem;padding-top:1.25rem;font-size:.875rem;display:flex}.foot__legal p{margin:0}.foot__legal a{color:inherit}.legal-page{padding-block:4rem 6rem}.legal-page h1{color:var(--brand-primary);margin:.6rem 0 2rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:800;font-stretch:125%}.prose{max-width:var(--measure)}html.motion [data-fade]{opacity:0}html.motion [data-reveal]{visibility:hidden}.mask-line{margin-bottom:-.08em;padding-bottom:.08em;overflow:clip}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important}}.legal-page p.legal__date{opacity:1;color:var(--muted)}.head__nav a[aria-current=page]{color:var(--brand-primary);background-size:100% 1px;font-weight:650}.seq{height:520vh;position:relative}.seq__stage{top:var(--head-h);height:calc(100svh - var(--head-h));width:min(80rem, 100% - 2 * var(--gutter));grid-template-rows:auto 1fr;gap:1rem;margin-inline:auto;padding-block:1.25rem 1.5rem;display:grid;position:sticky}.seq__text{z-index:2;position:relative}.seq__intro .hero__lead{margin:1rem 0 1.25rem}.seq__hint{align-items:center;gap:.6rem;display:inline-flex}.seq__hint:after{content:"";width:1px;height:1.6rem;animation:hint 1.8s var(--ease) infinite;transform-origin:top;background:currentColor}@keyframes hint{0%{transform:scaleY(0)}60%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.seq__steps{margin:0;padding:0;list-style:none;display:none}.seq__view{min-height:0;position:relative}.seq__view>picture,.seq__poster,.seq__canvas{width:100%;height:100%;position:absolute;inset:0}.seq__poster{object-fit:contain}.seq__canvas{opacity:0;transition:opacity .4s var(--ease)}.seq__canvas.is-live{opacity:1}.seq__meter{align-items:center;gap:.75rem;display:flex;position:absolute;bottom:0;left:0;right:0}html.motion .seq__steps{visibility:hidden;gap:0;width:100%;display:grid;position:absolute;inset:0 auto auto 0}.seq__step{border-top:1px solid var(--rule);color:rgb(var(--brand-ink-rgb) / .4);transition:color .5s var(--ease);grid-template-columns:2.5rem 1fr;column-gap:.75rem;padding:.7rem 0;display:grid}.seq__no{font-family:var(--mono);padding-top:.35rem;font-size:.75rem}.seq__name{font-size:clamp(1.1rem,1.8vw,1.6rem);font-weight:800;font-stretch:125%;line-height:1.15}.seq__desc{max-height:0;color:var(--brand-ink);transition:max-height .6s var(--ease), margin .6s var(--ease);grid-column:2;font-size:.95rem;overflow:hidden}.seq__step.is-on{color:var(--brand-primary)}.seq__step.is-on .seq__desc{max-height:4.5rem;margin-top:.35rem}@media (width>=64rem){.seq__stage{grid-template-rows:none;grid-template-columns:minmax(22rem,.8fr) 1.7fr;align-items:center;gap:2rem}.seq__view{height:100%}.seq__text{align-self:center}.seq .display{font-size:clamp(2.75rem,4.6vw,5rem)}}@media (width<=63.99rem){.seq{height:420vh}.seq .display{font-size:clamp(2.2rem,9vw,3.4rem)}.seq__intro .hero__lead{font-size:1rem}html.motion .seq__steps{position:absolute}.seq__step{padding:.45rem 0}.seq__desc{font-size:.875rem}}@media (prefers-reduced-motion:reduce){.seq{height:auto}.seq__stage{height:auto;position:static}.seq__view{aspect-ratio:16/9}.seq__meter,.seq__hint{display:none}}.teaser{background:var(--brand-secondary);border-block:1px solid var(--rule);padding-block:clamp(4rem,10vh,7rem)}.teaser__head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2.5rem;display:flex}.teaser__row{gap:2rem;display:grid}@media (width>=52rem){.teaser__row{grid-template-columns:repeat(3,1fr)}.teaser__row .room:nth-child(2){margin-top:3rem}}.glance{background:var(--brand-primary);color:var(--brand-paper);--rule-strong:rgb(var(--brand-paper-rgb) / .3);padding-block:clamp(5rem,12vh,8rem)}.glance .label{color:rgb(var(--brand-paper-rgb) / .75)}.glance .h2{color:var(--brand-paper);margin-bottom:3rem}.glance__cols{gap:3rem;margin-bottom:3rem;display:grid}@media (width>=52rem){.glance__cols{grid-template-columns:2fr 1fr}.glance__cols>div:first-child .glance__list{columns:2;column-gap:2rem}}.glance__list{margin:0;padding:0;list-style:none}.glance__list li{break-inside:avoid;padding:.8rem 0;font-size:1.2rem;font-weight:700;font-stretch:125%;position:relative}.btn--light{background:var(--brand-paper);color:var(--brand-primary);border-color:var(--brand-paper)}.btn--light:hover,.btn--light:focus-visible{color:var(--brand-paper);background:0 0}.work--page{padding-top:clamp(3rem,8vh,5rem)}.services .display--light{color:var(--brand-paper)}.contact--page{border-top:0;padding-block:clamp(3rem,8vh,5rem) clamp(5rem,12vh,8rem)}.contact__spec{max-width:48rem;margin-top:4rem}.seq{overflow-x:clip}.seq__poster{transform:scale(1.08)}@media (width>=900px){.seq__poster{transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.seq__poster{transform:none}}.seq{--bp-line:rgb(var(--brand-paper-rgb) / .09);--bp-major:rgb(var(--brand-paper-rgb) / .2);--rule:rgb(var(--brand-paper-rgb) / .22);--rule-strong:rgb(var(--brand-paper-rgb) / .5);--muted:rgb(var(--brand-paper-rgb) / .78);--bp-x:50%;--bp-y:74%;--bp-rx:62%;--bp-ry:30%;background:var(--brand-primary);color:var(--brand-paper)}.seq__stage:before{content:"";background:linear-gradient(to right, var(--bp-major) 1px, transparent 1px) 0 0 / 7.5rem 7.5rem, linear-gradient(to bottom, var(--bp-major) 1px, transparent 1px) 0 0 / 7.5rem 7.5rem, linear-gradient(to right, var(--bp-line) 1px, transparent 1px) 0 0 / 1.5rem 1.5rem, linear-gradient(to bottom, var(--bp-line) 1px, transparent 1px) 0 0 / 1.5rem 1.5rem;-webkit-mask:radial-gradient(ellipse var(--bp-rx) var(--bp-ry) at var(--bp-x) var(--bp-y), transparent 62%, #000 100%);mask:radial-gradient(ellipse var(--bp-rx) var(--bp-ry) at var(--bp-x) var(--bp-y), transparent 62%, #000 100%);pointer-events:none;z-index:1;position:absolute;inset:0 calc(50% - 50vw)}@media (width>=64rem){.seq{--bp-x:64%;--bp-y:58%;--bp-rx:40%;--bp-ry:52%}}.seq .display,.seq__step.is-on,.seq .lead{color:var(--brand-paper)}.seq .label,.seq__hint{color:var(--muted)}.seq__step{color:rgb(var(--brand-paper-rgb) / .6)}.seq__step.is-done{color:rgb(var(--brand-paper-rgb) / .8)}.seq__desc{color:var(--brand-paper)}.seq__view{z-index:0}.seq__meter{z-index:2;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.75rem}.seq .dim__line:before,.seq .dim__line:after,.seq .dim__fill{background:var(--brand-paper)}.seq .btn{background:var(--brand-paper);color:var(--brand-primary);border-color:var(--brand-paper)}.seq .btn:hover,.seq .btn:focus-visible{color:var(--brand-paper);background:0 0}.seq :where(a,button):focus-visible{outline-color:var(--brand-paper)}@media (width<=40rem){.foot__legal{text-align:center;justify-content:center}}
