@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Outfit:wght@400;500;600;700;800&display=swap";:root{--background:#0d1117;--surface:#171d26;--text:#f4f7fb;--muted:#8a96a3;--line:#2a3340;--blue:#1c74f6;--blue-press:#3d8af7;--sans:"Outfit", sans-serif;--mono:"IBM Plex Mono", monospace;--ease:cubic-bezier(.32, .72, 0, 1);--header:72px;--top-bar:38px;--header-offset:calc(var(--header) + var(--top-bar))}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--background)}body{isolation:isolate;background:var(--background);color:var(--text);font-family:var(--sans);margin:0;position:relative}header,main,footer{z-index:1;position:relative}.site-backdrop{z-index:0;pointer-events:none;color:var(--blue);position:fixed;inset:0;overflow:hidden}.site-backdrop-photo{object-fit:cover;filter:saturate(.45)contrast(1.14)brightness(.62);width:100%;height:144%;animation:linear backdrop-drift scroll();position:absolute;inset:-22% 0}.site-backdrop-grid{background-image:linear-gradient(#1c74f60f 1px,#0000 1px),linear-gradient(90deg,#1c74f60f 1px,#0000 1px),linear-gradient(#1c74f624 1px,#0000 1px),linear-gradient(90deg,#1c74f624 1px,#0000 1px);background-size:24px 24px,24px 24px,120px 120px,120px 120px;position:absolute;inset:0;mask-image:radial-gradient(at 50% 48%,#000 22%,#0000 80%)}.site-backdrop-shade{background:radial-gradient(80% 55% at 12% 18%,#0d111738,#0000 58%),radial-gradient(55% 50% at 88% 78%,#1c74f60f,#0000 50%),linear-gradient(#0d111761 0%,#0d111780 48%,#0d111766 100%);position:absolute;inset:0}.site-backdrop-blueprint{opacity:.38;width:100%;height:108%;animation:linear blueprint-drift scroll();position:absolute;inset:-4% 0;overflow:visible}.site-backdrop-blueprint rect,.site-backdrop-blueprint path,.site-backdrop-blueprint line,.site-backdrop-blueprint circle,.site-backdrop-blueprint polygon{fill:none;stroke:currentColor;stroke-width:1.15px;vector-effect:non-scaling-stroke}.site-backdrop-blueprint .bp-dash{stroke-dasharray:10 7;opacity:.7}.site-backdrop-blueprint .bp-center{stroke-dasharray:14 8 3 8;opacity:.55}.site-backdrop-blueprint .bp-bays line{stroke-width:.7px;opacity:.4}.site-backdrop-blueprint .bp-title rect{fill:#0d111733}.site-backdrop-blueprint .bp-north polygon{fill:currentColor;stroke:none}.site-backdrop-blueprint marker path{fill:none;stroke:currentColor;stroke-width:1.2px}.site-backdrop-blueprint text{fill:currentColor;stroke:none;font-family:var(--mono);letter-spacing:.12em;text-anchor:start;font-size:13px}.site-backdrop-blueprint .bp-dim-label,.site-backdrop-blueprint .bp-north text{letter-spacing:.08em;text-anchor:middle;font-size:12px}.site-backdrop-blueprint .bp-sheet{letter-spacing:.04em;text-anchor:middle;fill:#f4f7fb;font-size:28px;font-weight:600}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.container{width:min(100% - 3rem,1280px);margin-inline:auto}body:after{content:"";z-index:60;pointer-events:none;opacity:.04;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.55'/></svg>");position:fixed;inset:0}.skip-link{z-index:80;background:var(--blue);color:#071018;padding:10px 16px;font-weight:700;position:absolute;top:-48px;left:16px}.skip-link:focus{top:12px}.site-header-group{z-index:50;position:fixed;inset:0 0 auto}.site-header-group.scrolled{--header-offset:var(--header)}.top-bar{height:var(--top-bar);background:var(--background);border-bottom:1px solid var(--line);transition:height .36s var(--ease), border-bottom-width .36s var(--ease);overflow:hidden}.site-header-group.scrolled .top-bar{pointer-events:none;border-bottom-width:0;height:0}[data-header-sentinel]{pointer-events:none;opacity:0;width:1px;height:1px;margin:0;padding:0;position:absolute;top:0;left:0;overflow:hidden}.top-bar-inner{height:var(--top-bar);justify-content:space-between;align-items:center;gap:16px;display:flex}.top-bar-start,.top-bar-end{align-items:center;gap:20px;min-width:0;display:flex}.top-bar-item{color:var(--muted);white-space:nowrap;transition:color .22s var(--ease);align-items:center;gap:7px;font-size:.78rem;font-weight:500;display:inline-flex}a.top-bar-item:hover,a.top-bar-item:focus-visible{color:var(--text)}.top-bar-item svg{color:var(--blue);flex-shrink:0}.top-bar-flag{border-radius:1px;flex-shrink:0;display:block}.top-bar-hours{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:500}.top-bar-social{align-items:center;gap:12px;display:flex}.top-bar-social a{color:var(--muted);transition:color .22s var(--ease);display:inline-flex}.top-bar-social a:hover,.top-bar-social a:focus-visible{color:var(--text)}.site-header{height:var(--header);z-index:auto;transition:background .28s var(--ease), border-color .28s var(--ease);overflow:visible}.site-header-group.scrolled .site-header{border-bottom:1px solid var(--line);backdrop-filter:blur(14px);background:#0d1117eb}.nav{height:var(--header);justify-content:space-between;align-items:center;display:flex}.brand{align-items:center;gap:12px;display:inline-flex}.brand img{flex-shrink:0;width:44px;height:44px}.brand strong{letter-spacing:-.03em;font-size:1rem;font-weight:700}.desktop-nav{align-items:center;gap:28px;display:flex}.desktop-nav>a:not(.button),.nav-trigger{color:var(--muted);transition:color .22s var(--ease);font-size:.92rem;font-weight:500}.desktop-nav>a:not(.button):hover,.desktop-nav>a:not(.button):focus-visible,.nav-trigger:hover,.nav-trigger:focus-visible,.nav-item.is-open .nav-trigger,.nav-item.is-current .nav-trigger,.desktop-nav>a.is-current{color:var(--text)}.nav-item{height:var(--header);align-items:center;display:flex;position:static}.nav-trigger{cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;height:100%;padding:0;display:inline-flex}.nav-trigger:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.nav-chevron{transition:transform .22s var(--ease);display:block}.nav-item.is-open .nav-chevron{transform:rotate(180deg)}.mega{z-index:2;opacity:0;visibility:hidden;pointer-events:none;backdrop-filter:blur(16px);border-top:1px solid var(--line);transition:opacity .28s var(--ease), transform .28s var(--ease), visibility .28s;background:#121820f7;position:absolute;top:100%;left:0;right:0;transform:translateY(-8px);box-shadow:0 28px 56px #00000061}.nav-item.is-open .mega{opacity:1;visibility:visible;pointer-events:auto;transform:none}.mega-panel{padding:28px 0 32px}.mega-grid--buildings{grid-template-columns:1.15fr 1.15fr .92fr;gap:14px;min-height:280px;display:grid}.mega-feature{isolation:isolate;min-height:280px;color:var(--text);border-radius:16px;position:relative;overflow:hidden}.mega-feature img,.mega-step img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease);position:absolute;inset:0;transform:scale(1.04)}.mega-mini img{object-fit:cover;width:100%;height:58px;transition:transform .7s var(--ease);border-radius:8px;transform:scale(1.04)}.mega-feature:hover img,.mega-step:hover img,.mega-mini:hover img{transform:scale(1)}.mega-feature:after{content:"";background:linear-gradient(#0000 0%,#0d11172e 45%,#0d1117e0 100%);position:absolute;inset:0}.mega-feature-copy{z-index:1;padding:22px 22px 20px;position:absolute;bottom:0;left:0;right:0}.mega-feature-copy strong,.mega-step-copy strong,.mega-mini strong{letter-spacing:-.03em;font-size:1.2rem;font-style:normal;font-weight:700;display:block}.mega-feature-copy span,.mega-step-copy span,.mega-mini em{color:#d5dde6;margin-top:6px;font-size:.9rem;font-style:normal;line-height:1.4;display:block}.mega-stack{gap:10px;display:grid}.mega-mini{min-height:62px;transition:border-color .22s var(--ease), background .22s var(--ease);background:#0d111773;border:1px solid #0000;border-radius:12px;grid-template-columns:88px 1fr;align-items:center;gap:12px;padding:6px;display:grid}.mega-mini strong{font-size:.95rem}.mega-mini em{color:var(--muted);margin-top:3px;font-size:.8rem}.mega-mini:hover,.mega-mini:focus-visible{background:#1a2330;border-color:#1c74f673}.mega-grid--work{grid-template-columns:1.35fr 1fr 1fr 1.2fr;gap:12px;display:grid}.mega-step{isolation:isolate;min-height:240px;color:var(--text);border-radius:16px;position:relative;overflow:hidden}.mega-step:after{content:"";background:linear-gradient(#0000 0%,#0d111733 42%,#0d1117e6 100%);position:absolute;inset:0}.mega-step-copy{z-index:1;padding:20px 18px 18px;position:absolute;bottom:0;left:0;right:0}.mega-step-copy strong{font-size:1.05rem}.mega-step:hover,.mega-feature:hover{color:var(--text)}.mobile-acc{width:100%}.mobile-acc summary{cursor:pointer;font-size:1.25rem;font-weight:600;list-style:none}.mobile-acc summary::-webkit-details-marker{display:none}.mobile-acc-list{gap:14px;padding:14px 0 4px 14px;display:grid}.mobile-acc-list a{color:var(--muted);font-size:1.05rem;font-weight:500}.button{background:var(--blue);color:#071018;letter-spacing:.02em;cursor:pointer;white-space:nowrap;transition:background .22s var(--ease), transform .18s var(--ease), border-color .22s var(--ease), color .22s var(--ease);border:0;justify-content:center;align-items:center;padding:14px 26px;font-size:.88rem;font-weight:700;display:inline-flex}.button:hover{background:var(--blue-press)}.button:active{transform:scale(.98)}.button:focus-visible,.desktop-nav a:focus-visible,.footer a:focus-visible,.footer-logo:focus-visible,.menu-button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.button-small{padding:10px 18px}.button-outline{color:var(--text);background:0 0;border:1px solid #8a96a3}.button-outline:hover{border-color:var(--text);background:0 0}.menu-button,.mobile-nav{display:none}.hero{z-index:1;box-sizing:border-box;min-height:100dvh;padding-top:var(--header-offset);background:var(--background);flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.hero-media{object-fit:cover;width:100%;height:100%;animation:ken 18s var(--ease) both;position:absolute;inset:0;transform:scale(1.08)}.hero-shade{background:linear-gradient(90deg, #0d1117c7 0%, #0d111747 50%, #0d11179e 100%), linear-gradient(to top, var(--background) 0%, transparent 38%);position:absolute;inset:0}.hero-inner{z-index:1;width:min(100% - 3rem,1280px);animation:enter .9s var(--ease) both;grid-template-columns:1fr min(440px,46%);align-items:center;gap:clamp(1.5rem,4vw,3rem);margin-inline:auto;padding:12px 0 24px;display:grid;position:relative}.hero-copy-block{padding:0 clamp(1.5rem,3vw,2.5rem) 0 clamp(2.5rem,8vw,5.5rem)}h1{letter-spacing:-.05em;text-wrap:balance;max-width:12ch;margin:0;font-size:clamp(2.6rem,5.4vw,5.4rem);font-weight:800;line-height:1.02}.hero-copy{color:#d5dde6;max-width:38ch;margin:18px 0 0;font-size:1.12rem;line-height:1.5}.hero-quote{width:auto;max-width:none;scroll-margin-top:calc(var(--header-offset) + 12px);justify-self:stretch;margin:0 max(1.5rem,50% - 640px) 0 1.25rem;padding:18px 22px 16px}.hero-quote h2{font-family:var(--sans);letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,2vw,1.8rem);font-weight:800;line-height:1.2}.contact-form--compact{gap:14px;margin-top:16px}.contact-form--compact .field-row{gap:16px}.contact-form--compact input,.contact-form--compact select{margin-top:6px;padding:10px 0}.contact-form--compact .button{margin-top:6px;padding:13px 22px}.types-section{z-index:1;background:var(--background);scroll-margin-top:calc(var(--header-offset) + 12px);padding:88px 0 40px;position:relative}.types-intro{max-width:40rem;margin-bottom:28px}.do-intro{max-width:42rem;margin-bottom:36px}.types-intro h2,.do-intro h2,.faq-intro h2,.about-copy h2{letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(2rem,4vw,3.4rem);font-weight:800;line-height:1.08}.contact .contact-panel h2{font-family:var(--sans);letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,2vw,1.8rem);font-weight:800;line-height:1.2}.types-intro p,.do-intro p,.faq-intro p,.about-copy p,.contact .contact-panel>p{color:var(--muted);max-width:46ch;margin:14px 0 0;font-size:1.05rem;line-height:1.6}.type-strip{background:var(--background);gap:10px;height:min(78vh,760px);min-height:460px;padding:0 10px;display:flex}.type-card{cursor:pointer;isolation:isolate;color:inherit;transition:flex .7s var(--ease);border-radius:18px;flex:1 1 0;position:relative;overflow:hidden}.type-card.is-open{flex:3.1 1 0}.type-card img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease);transform:scale(1.06)}.type-card.is-open img{transform:scale(1)}.type-shade{background:linear-gradient(#0000 0%,#0d11171f 45%,#0d1117d1 100%);position:absolute;inset:0}.type-copy{position:absolute;bottom:22px;left:22px;right:22px}.type-copy h3{letter-spacing:-.03em;margin:0;font-size:1.35rem;font-weight:700}.type-copy p{color:#d7dee6;opacity:0;max-width:28ch;transition:opacity .45s var(--ease), transform .45s var(--ease);margin:8px 0 0;font-size:.95rem;line-height:1.45;transform:translateY(10px)}.type-card.is-open .type-copy p{opacity:1;transform:none}.do{z-index:1;background:var(--background);scroll-margin-top:calc(var(--header-offset) + 12px);padding:96px 0 88px;position:relative}.do-bento{grid-template-rows:1fr 1fr .92fr;grid-template-columns:repeat(12,1fr);grid-template-areas:"design design design design design design design supply supply supply supply supply""design design design design design design design erect erect erect erect erect""close close close close close close close close close close close close";grid-auto-flow:dense;gap:12px;width:min(100% - 3rem,1280px);height:min(78vh,780px);margin-inline:auto;display:grid}.do-cell{isolation:isolate;background:var(--surface);border-radius:18px;position:relative;overflow:hidden}.do-cell--design{grid-area:design}.do-cell--supply{grid-area:supply}.do-cell--erect{grid-area:erect}.do-cell--close{grid-area:close}.do-cell img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease);position:absolute;inset:0;transform:scale(1.06)}.do-cell:hover img{transform:scale(1)}.do-cell--erect img{object-position:78% 50%}.do-cell--close img{object-position:60% 50%}.do-cell:after{content:"";background:linear-gradient(#0000 0%,#0d111738 48%,#0d1117e6 100%);position:absolute;inset:0}.do-cell--close:after{background:linear-gradient(90deg,#0d1117e0 0%,#0d11176b 36%,#0d11171a 62%,#0000 100%)}.do-cell-copy{z-index:1;padding:28px 26px 24px;position:absolute;bottom:0;left:0;right:0}.do-cell--design .do-cell-copy,.do-cell--close .do-cell-copy{padding:36px 36px 32px}.do-cell--close .do-cell-copy{max-width:28rem;right:auto}.do-cell-copy h3{letter-spacing:-.03em;margin:0;font-size:clamp(1.12rem,1.8vw,1.7rem);font-weight:700}.do-cell--design .do-cell-copy h3,.do-cell--close .do-cell-copy h3{font-size:clamp(1.35rem,2.2vw,2.05rem)}.do-cell-copy p{color:#d5dde6;max-width:36ch;margin:8px 0 0;font-size:.95rem;line-height:1.45}.reviews{z-index:1;background:#121820;padding:48px 0 56px;position:relative}.reviews-head{text-align:center;justify-content:center;margin-bottom:32px;display:flex}.reviews-heading{justify-items:center;gap:10px;display:grid}.reviews-brand{color:var(--text);letter-spacing:-.04em;justify-content:center;align-items:center;gap:14px;margin:0;font-size:clamp(1.8rem,3.6vw,2.8rem);font-weight:800;display:inline-flex}.reviews-summary{color:var(--muted);margin:0;font-size:1rem;line-height:1.5}.reviews-summary strong{color:var(--text);font-weight:700}.google-mark{flex-shrink:0;display:inline-flex}.google-mark svg{display:block}.reviews-carousel{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;max-width:1120px;margin-inline:auto;display:grid}.reviews-nav{border:1px solid var(--line);width:44px;height:44px;color:var(--text);cursor:pointer;transition:background .22s var(--ease), border-color .22s var(--ease), transform .18s var(--ease), opacity .22s var(--ease);background:#0d11178c;border-radius:50%;place-items:center;display:grid}.reviews-nav:hover{border-color:var(--blue);background:#1c74f61f}.reviews-nav:active{transform:scale(.98)}.reviews-nav:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.reviews-nav:disabled{opacity:.35;cursor:default;pointer-events:none}.reviews-scroller{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overflow-x:auto;container-type:inline-size}.reviews-scroller::-webkit-scrollbar{display:none}.reviews-track{gap:16px;width:max-content;display:flex}.review{color:#202124;scroll-snap-align:start;width:calc(33.3333cqi - 10.6667px);min-height:236px;transition:transform .22s var(--ease), box-shadow .22s var(--ease);background:#fff;border-radius:12px;flex:0 0 calc(33.3333cqi - 10.6667px);align-content:start;gap:10px;padding:18px 18px 16px;text-decoration:none;display:grid;box-shadow:0 1px 2px #3c40434d,0 2px 6px #3c404326}.review:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3c404338}.review:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.review-person{align-items:center;gap:12px;display:flex}.review-avatar{color:#fff;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;font-size:1.05rem;font-weight:600;line-height:1;display:grid;overflow:hidden}.review-meta strong{letter-spacing:0;font-size:.95rem;font-weight:600;display:block}.review-meta span{color:#5f6368;margin-top:2px;font-size:.8rem;display:block}.review-stars{gap:2px;margin:0;display:flex}.review-text{color:#3c4043;margin:0;font-size:.9rem;line-height:1.5}.about{scroll-margin-top:calc(var(--header-offset) + 12px);background:0 0;grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;padding:120px 0 80px;display:grid}.about-photo{border-radius:0 40px 40px 0;min-height:72vh;margin-left:0;overflow:hidden}.about-photo img{object-fit:cover;width:100%;height:72vh}.about-copy{background:radial-gradient(120% 90% at 0 40%,#0d1117c7,#0000 72%);max-width:36rem;padding:36px max(1.5rem,50% - 640px) 36px 0}.places{background:0 0;padding:28px 0 80px}.places-lead{width:min(100% - 3rem,1280px);color:var(--muted);margin:0 auto 28px;font-size:1rem}.marquee{overflow:hidden;mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.marquee-track{gap:4rem;width:max-content;animation:42s linear infinite marquee;display:flex}.marquee-track span{letter-spacing:-.05em;color:#1a2330;font-size:clamp(2.4rem,6vw,5.2rem);font-weight:800}.marquee-track span:nth-child(odd){color:var(--text)}.faq{z-index:1;background:var(--background);scroll-margin-top:calc(var(--header-offset) + 12px);padding:96px 0 104px;position:relative}.faq-intro{max-width:40rem;margin-bottom:40px}.faq-board{--faq-gap:clamp(2.5rem, 6vw, 5rem);column-gap:var(--faq-gap);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);display:grid;position:relative}.faq-item{grid-column:1}.faq-item h3{font-size:inherit;font-weight:inherit;margin:0}.faq-item button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--muted);text-align:left;letter-spacing:-.03em;cursor:pointer;transition:color .22s var(--ease), padding .22s var(--ease), box-shadow .22s var(--ease);background:0 0;grid-template-columns:1fr auto;align-items:center;gap:16px;margin:0;padding:18px 0;font-size:1.08rem;font-weight:600;line-height:1.3;display:grid}.faq-item:first-child button{border-top:1px solid var(--line)}.faq-item button:hover,.faq-item.is-open button{color:var(--text)}.faq-item.is-open button{box-shadow:inset 3px 0 0 var(--blue);padding-left:16px}.faq-item button:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.faq-toggle{display:none}.faq-answer{top:0;bottom:0;left:calc(45% + .55 * var(--faq-gap));width:calc(55% - .55 * var(--faq-gap));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s var(--ease), visibility .35s;align-items:center;display:flex;position:absolute}.faq-item.is-open .faq-answer{opacity:1;visibility:visible;pointer-events:auto}.faq-answer-inner{padding:0}.faq-answer p{color:#d5dde6;letter-spacing:-.03em;max-width:34ch;margin:0;font-size:clamp(1.35rem,2.4vw,2rem);font-weight:500;line-height:1.35}.contact-panel{z-index:1;backdrop-filter:blur(18px);background:#0d1117c7;border:1px solid #ffffff1a;border-radius:8px 28px 28px;width:min(100% - 3rem,640px);margin:0 max(1.5rem,50% - 640px) 0 auto;padding:28px 28px 24px;position:relative;box-shadow:inset 0 1px #ffffff14}.hero .contact-panel{justify-self:end;width:100%;max-width:440px;margin:0;padding:16px 20px 14px}.hero .contact-form.contact-form--compact{gap:12px;margin-top:12px}.contact-form{gap:20px;margin-top:28px;display:grid}.field-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-form label{color:#c5ced8;font-family:var(--sans);font-size:1rem;font-weight:500}.contact-form input,.contact-form select,.contact-form textarea{width:100%;color:var(--text);font-family:var(--sans);resize:none;background:0 0;border:0;border-bottom:1px solid #3d4a5c;outline:0;margin-top:8px;padding:12px 0;font-size:1.12rem;display:block}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--blue)}.contact-form option{background:var(--background)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#6b7684}.upload{cursor:pointer;min-height:84px;color:var(--muted);transition:border-color .22s var(--ease);border:1px dashed #3d4a5c;border-radius:12px;place-items:center;font-size:.85rem;display:grid}.upload:hover,.upload:focus-within{border-color:var(--blue)}.upload input{display:none}.contact-form .button{justify-self:start}.form-status{min-height:1em;color:var(--blue);font-family:var(--sans);margin:-6px 0 0;font-size:1rem}.footer{border-top:1px solid var(--line);background:linear-gradient(180deg, #171d2673 0%, var(--background) 100%), var(--background);padding:56px 0 32px}.footer-inner{grid-template-columns:1.35fr .85fr 1.1fr;align-items:start;gap:40px 48px;display:grid}.footer-logo{align-items:center;gap:18px;display:flex}.footer-logo img{flex-shrink:0;width:72px;height:72px}.footer-logo-text{align-items:center;display:flex}.footer-logo-text strong{letter-spacing:-.04em;color:var(--blue);font-size:48px;font-weight:800;line-height:1}.footer-brand p{max-width:32ch;color:var(--muted);margin:18px 0 0;font-size:.92rem;line-height:1.55}.footer-social{gap:10px;margin-top:20px;display:flex}.footer-social a{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--muted);transition:color .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease), transform .18s var(--ease);border-radius:10px;place-items:center;display:grid}.footer-social a:hover{color:var(--text);background:#1a2330;border-color:#1c74f673}.footer-social a:active{transform:scale(.98)}.footer h3{color:var(--text);letter-spacing:.04em;text-transform:uppercase;margin:0 0 16px;font-size:.78rem;font-weight:600}.footer-links{justify-items:start;gap:10px;display:grid}.footer-links a,.footer-details a,.footer-details span,.footer-bottom{color:var(--muted);font-size:.92rem}.footer-links a:hover,.footer-details a:hover{color:var(--text)}.footer-details{gap:14px;margin:0;padding:0;list-style:none;display:grid}.footer-details li{grid-template-columns:18px 1fr;align-items:start;gap:12px;display:grid}.footer-details svg{color:var(--blue);flex-shrink:0;margin-top:2px}.footer-details span,.footer-details a{line-height:1.45}.footer-bottom{border-top:1px solid var(--line);grid-column:1/-1;margin-top:8px;padding-top:24px;font-size:.82rem}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(22px)}.reveal.visible{opacity:1;transform:none}.building-page{--bp-h1:2.25rem;--bp-h2:1.75rem;--bp-h3:1.25rem;--bp-body:1.0625rem;background:var(--background)}.building-page h1,.building-page h2,.building-page h3{letter-spacing:-.03em;color:var(--text);margin:0;font-weight:700;line-height:1.2}.building-page h1{font-size:var(--bp-h1)}.building-page h2{font-size:var(--bp-h2)}.building-page h3{font-size:var(--bp-h3)}.building-page p,.building-page li,.building-page summary{color:#c5ced8;font-size:var(--bp-body);margin:0;line-height:1.65}.building-page p+p,.building-page p+ul,.building-page ul+p{margin-top:1rem}.building-page h2+p,.building-page h3+p{margin-top:.75rem}.building-banner{z-index:1;min-height:340px;padding:calc(var(--header-offset) + 24px) 0 36px;align-items:flex-end;display:flex;position:relative;overflow:hidden}.building-banner img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.building-banner-shade{background:linear-gradient(#0d111740 0%,#0d111759 45%,#0d1117e0 100%);position:absolute;inset:0}.building-banner-copy{z-index:1;position:relative}.building-banner-copy p{color:#d5dde6;max-width:36rem;margin-top:.6rem;margin-bottom:1.15rem}.building-intro{padding:56px 0 24px}.building-intro-inner{max-width:42rem}.building-row{padding:40px 0}.building-row-inner{grid-template-columns:1fr 1fr;align-items:center;gap:48px;display:grid}.building-row-inner img{object-fit:cover;border-radius:8px;width:100%;height:360px}.building-row--flip .building-row-inner{direction:rtl}.building-row--flip .building-row-inner>*{direction:ltr}.building-include{padding:48px 0 56px}.building-include-grid{grid-template-columns:1fr 1fr;align-items:start;gap:48px;display:grid}.building-include ul{margin:1rem 0 0;padding-left:1.2rem}.building-include li{padding-left:.25rem}.building-include li+li{margin-top:.45rem}.building-uses,.building-options,.building-steps,.building-faq{padding:48px 0}.building-use-grid,.building-option-grid{grid-template-columns:1fr 1fr;gap:32px 40px;margin-top:28px;display:grid}.building-use img{object-fit:cover;border-radius:8px;width:100%;height:220px}.building-use h3{margin-top:14px}.building-option-grid h3{margin-top:0}.building-gallery{padding:8px 0 40px}.building-gallery-grid{grid-template-columns:1.2fr 1fr 1fr;gap:12px;display:grid}.building-gallery-grid img{object-fit:cover;border-radius:8px;width:100%;height:280px}.building-steps ol{counter-reset:step;grid-template-columns:1fr 1fr;gap:28px 40px;margin:20px 0 0;padding:0;list-style:none;display:grid}.building-steps li{counter-increment:step;padding-left:0}.building-steps h3:before{content:counter(step) ". "}.building-faq .container{max-width:42rem}.building-faq details{border-bottom:1px solid var(--line)}.building-faq details:first-of-type{border-top:1px solid var(--line);margin-top:20px}.building-faq summary{color:var(--text);cursor:pointer;padding:16px 0;font-weight:600;list-style:none}.building-faq summary::-webkit-details-marker{display:none}.building-faq details p{padding:0 0 16px}.building-page .quote-band-form h2{font-size:var(--bp-h2)}.building-page .quote-band-form>p{font-size:var(--bp-body);max-width:none}.page-hero{z-index:1;min-height:72vh;padding:calc(var(--header-offset) + 24px) 0 56px;background:var(--background);align-items:flex-end;display:flex;position:relative;overflow:hidden}.page-hero-media{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.page-hero-shade{background:linear-gradient(90deg, #0d1117c7 0%, #0d111747 58%, #0d111780 100%), linear-gradient(to top, var(--background) 0%, transparent 42%);position:absolute;inset:0}.page-hero-copy{z-index:1;width:min(100% - 3rem,1280px);margin-inline:auto;padding-left:clamp(.5rem,4vw,2rem);position:relative}.page-hero h1{max-width:16ch;font-size:clamp(2.4rem,5vw,4.8rem)}.page-hero-copy p{color:#d5dde6;max-width:36ch;margin:16px 0 22px;font-size:1.08rem;line-height:1.5}.page-hero--sheet{min-height:58vh;padding:calc(var(--header-offset) + 16px) 0 40px}.page-hero--sheet h1{letter-spacing:-.04em;max-width:18ch;font-size:clamp(2.1rem,4vw,3.6rem)}.page-hero--sheet .page-hero-copy p{max-width:42ch;margin:12px 0 0;font-size:1rem}.data-strip{z-index:1;border:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(4,1fr);width:min(100% - 3rem,1280px);margin:-28px auto 0;display:grid;position:relative}.data-cell{border-right:1px solid var(--line);padding:18px 20px 16px}.data-cell:last-child{border-right:0}.data-cell span{color:var(--muted);font-family:var(--mono);letter-spacing:.04em;font-size:.72rem;display:block}.data-cell strong{letter-spacing:-.03em;margin-top:8px;font-size:1.02rem;font-weight:600;display:block}.sheet-block{z-index:1;background:var(--background);padding:72px 0;position:relative}.sheet-block h2,.sheet-media-copy h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,2.4vw,2rem);font-weight:700;line-height:1.15}.sheet-block>.container>p,.sheet-split>div>p,.sheet-media-copy p{color:var(--muted);max-width:58ch;margin:14px 0 0;font-size:1rem;line-height:1.55}.sheet-split{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:48px 64px;display:grid}.spec-dl{grid-template-columns:9.5rem 1fr;gap:14px 20px;margin:0;display:grid}.spec-dl dt{color:var(--text);font-family:var(--mono);letter-spacing:.02em;margin:0;padding-top:2px;font-size:.78rem;font-weight:500}.spec-dl dd{color:#d5dde6;margin:0;font-size:.95rem;line-height:1.5}.schedule{border-top:1px solid var(--line);margin-top:28px}.schedule-row{border-bottom:1px solid var(--line);grid-template-columns:.9fr .85fr 1.4fr;gap:16px;padding:16px 0;display:grid}.schedule-head{color:var(--muted);font-family:var(--mono);letter-spacing:.04em;padding-bottom:10px;font-size:.72rem}.schedule-row span:first-child{color:var(--text);font-weight:600}.schedule-row span:nth-child(2){font-family:var(--mono);font-size:.88rem}.schedule-row span:nth-child(3){color:var(--muted);font-size:.92rem;line-height:1.45}.schedule-head span,.schedule-head span:first-child,.schedule-head span:nth-child(2),.schedule-head span:nth-child(3){color:var(--muted);font-weight:500;font-family:var(--mono);font-size:.72rem}.sheet-photo{background:var(--background);margin:0}.sheet-photo img{object-fit:cover;width:100%;height:min(62vh,620px)}.sheet-photo figcaption{width:min(100% - 3rem,1280px);color:var(--muted);font-family:var(--mono);margin:16px auto 0;padding-bottom:8px;font-size:.8rem;line-height:1.5}.sheet-media{background:var(--background);grid-template-columns:1.15fr .85fr;align-items:center;gap:40px;padding:24px 0 48px;display:grid}.sheet-media img{object-fit:cover;width:100%;height:56vh}.sheet-media-copy{max-width:34rem;padding-right:max(1.5rem,50% - 640px)}.code-list,.scope-grid ul{gap:12px;margin:20px 0 0;padding:0;list-style:none;display:grid}.code-list li,.scope-grid li{border-left:2px solid var(--blue);color:#d5dde6;padding-left:16px;font-size:.98rem;line-height:1.5}.scope-grid{grid-template-columns:1fr 1fr;gap:48px;display:grid}.scope-grid li{color:var(--muted)}.sheet-block--scope{padding-top:24px;padding-bottom:48px}.page-hero--hangar .page-hero-shade{background:linear-gradient(90deg, #0d1117b8 0%, #0d111733 50%, #0d11178c 100%), linear-gradient(to top, var(--background) 0%, transparent 40%)}.type-intro{z-index:1;background:var(--background);padding:88px 0 40px;position:relative}.type-intro-inner{max-width:40rem}.type-intro h2,.shot-caption h2,.spec-list h2,.story-copy h2,.office-band-copy h2,.door-story-copy h2,.door-points h2,.hangar-interior-copy h2{letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(2rem,4vw,3.2rem);font-weight:800;line-height:1.08}.type-intro p,.shot-caption p,.spec-block p,.story-copy p,.office-band-copy p,.door-story-copy p,.hangar-interior-copy p,.quote-band-form>p{color:var(--muted);max-width:46ch;margin:16px 0 0;font-size:1.05rem;line-height:1.6}.shot{z-index:1;background:var(--background);position:relative}.shot img{object-fit:cover;width:100%;height:min(78vh,760px)}.shot-caption{max-width:40rem;padding:36px 0 72px}.spec-split{background:var(--background);grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;padding:0 0 80px;display:grid}.spec-photo{border-radius:0 32px 32px 0;min-height:64vh;overflow:hidden}.spec-photo img{object-fit:cover;width:100%;height:64vh}.spec-list{max-width:34rem;padding:24px max(1.5rem,50% - 640px) 24px 0}.spec-block+.spec-block{border-top:1px solid var(--line);margin-top:28px;padding-top:28px}.spec-block h3{letter-spacing:-.03em;margin:0;font-size:1.15rem;font-weight:700}.story{background:var(--background);grid-template-columns:.9fr 1.1fr;align-items:center;gap:56px;padding:40px 0 96px;display:grid}.story-copy{max-width:34rem;padding:24px 0 24px max(1.5rem,50% - 640px)}.story-photo{border-radius:32px 0 0 32px;min-height:62vh;overflow:hidden}.story-photo img{object-fit:cover;width:100%;height:62vh}.office-band{z-index:1;background:var(--background);padding:0 0 96px;position:relative}.office-band-photo{border-radius:18px;width:min(100% - 3rem,1280px);margin:0 auto 32px;overflow:hidden}.office-band-photo img{object-fit:cover;width:100%;height:min(58vh,620px)}.office-band-copy{width:min(100% - 3rem,1280px);max-width:38rem;margin-inline:auto}.text-link{color:var(--text);border-bottom:1px solid var(--blue);transition:color .22s var(--ease), border-color .22s var(--ease);margin-top:20px;font-weight:600;display:inline-block}.text-link:hover,.text-link:focus-visible{color:var(--blue)}.type-cross{width:min(100% - 3rem,1280px);margin:0 auto 8px}.door-story{background:var(--background);grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;padding:72px 0 48px;display:grid}.door-story-photo{border-radius:0 32px 32px 0;min-height:70vh;overflow:hidden}.door-story-photo img{object-fit:cover;width:100%;height:70vh}.door-story-copy{max-width:34rem;padding:24px max(1.5rem,50% - 640px) 24px 0}.hangar-interior{isolation:isolate;background:var(--background);align-items:flex-end;min-height:min(78vh,760px);display:flex;position:relative}.hangar-interior img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hangar-interior:after{content:"";background:linear-gradient(90deg,#0d1117d1 0%,#0d11172e 55%,#0000 100%);position:absolute;inset:0}.hangar-interior-copy{z-index:1;width:min(100% - 3rem,1280px);max-width:36rem;margin:0 auto;padding:64px 0;position:relative}.door-points{background:var(--background);padding:88px 0 72px}.door-point-grid{grid-template-columns:1.2fr 1fr 1fr;gap:40px;margin-top:36px;display:grid}.door-point h3{letter-spacing:-.03em;margin:0;font-size:1.2rem;font-weight:700}.door-point p{color:var(--muted);max-width:32ch;margin:12px 0 0;font-size:1rem;line-height:1.55}.door-point+.door-point{border-left:1px solid var(--line);padding-left:40px}.use-strip{background:var(--background);grid-template-columns:1.45fr 1fr 1fr;gap:12px;padding:0 12px 48px;display:grid}.use-tile{isolation:isolate;border-radius:18px;min-height:360px;position:relative;overflow:hidden}.use-tile img{object-fit:cover;width:100%;height:100%}.use-tile:after{content:"";background:linear-gradient(#0000 0%,#0d11171f 42%,#0d1117e0 100%);position:absolute;inset:0}.use-tile-copy{z-index:1;padding:24px 22px 22px;position:absolute;bottom:0;left:0;right:0}.use-tile-copy h3{letter-spacing:-.03em;margin:0;font-size:1.2rem;font-weight:700}.use-tile-copy p{color:#d5dde6;margin:8px 0 0;font-size:.95rem;line-height:1.45}.quote-band{background:var(--background);scroll-margin-top:calc(var(--header-offset) + 12px);grid-template-columns:1.05fr .95fr;align-items:stretch;gap:0;display:grid}.quote-band-photo img{object-fit:cover;width:100%;height:100%;min-height:560px}.quote-band-form{border-left:1px solid var(--line);background:#0d1117b8;padding:56px max(1.5rem,50% - 640px) 56px 48px}.quote-band-form h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:800;line-height:1.1}@keyframes enter{0%{opacity:0;transform:translateY(22px)}}@keyframes ken{0%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes marquee{to{transform:translate(-50%)}}@keyframes backdrop-drift{0%{transform:translateY(-8%)scale(1.12)}to{transform:translateY(10%)scale(1)}}@keyframes blueprint-drift{0%{transform:translateY(4%)}to{transform:translateY(-6%)}}@media (width<=1100px){.mega-grid--buildings{grid-template-columns:1fr 1fr}.mega-stack{grid-column:1/-1;grid-template-columns:1fr 1fr}.mega-grid--work{grid-template-columns:1fr 1fr}.mega-step{min-height:200px}}@media (width<=900px){.top-bar-email,.top-bar-badge,.bp-plan,.bp-callout,.bp-north,.bp-marks,.desktop-nav{display:none}.menu-button{background:0 0;border:0;gap:5px;padding:8px;display:grid}.menu-button span{background:var(--text);width:22px;height:2px;transition:.22s var(--ease)}.menu-button[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{inset:var(--header-offset) 0 0;backdrop-filter:blur(12px);background:#0d1117fa;align-content:start;justify-items:start;gap:22px;padding:36px 24px;display:none;position:fixed}.mobile-nav.open{display:grid}.mobile-nav a{font-size:1.25rem;font-weight:600}.hero{padding-top:var(--header-offset);justify-content:flex-start}.hero-inner{grid-template-columns:1fr;align-items:start;gap:28px;width:min(100% - 3rem,1280px);padding:24px 0 36px}.hero-copy-block{padding:0 1.5rem 0 clamp(1.25rem,5vw,2rem)}.hero .contact-panel{justify-self:stretch;max-width:none}.hero-quote{margin:0 1.5rem;padding:24px 22px 20px}.type-strip{scroll-snap-type:x mandatory;height:auto;min-height:0;padding-bottom:12px;overflow-x:auto}.type-card{scroll-snap-align:start;flex:0 0 78vw;height:62vh}.type-card .type-copy p{opacity:1;transform:none}.do{padding:72px 0 64px}.do-intro{margin-bottom:28px}.do-bento{grid-template-rows:none;grid-template-columns:1fr 1fr;grid-template-areas:"design design""supply erect""close close";height:auto}.do-cell{min-height:240px}.do-cell--design{min-height:340px}.do-cell--close{min-height:280px}.do-cell--close:after{background:linear-gradient(#0000 0%,#0d111738 48%,#0d1117e6 100%)}.do-cell--close .do-cell-copy{max-width:none;right:0}.reviews{padding:40px 0 32px}.reviews-head{margin-bottom:24px}.reviews-carousel{gap:8px}.review{flex-basis:100cqi;width:100cqi}.faq{padding:72px 0 80px}.faq-intro{margin-bottom:28px}.faq-board{flex-direction:column;display:flex}.faq-item{grid-column:auto}.faq-item button{box-shadow:none;padding:18px 0}.faq-item.is-open button{box-shadow:none;padding-left:0}.faq-toggle{flex-shrink:0;width:14px;height:14px;display:block;position:relative}.faq-toggle:before,.faq-toggle:after{content:"";background:currentColor;height:1.5px;position:absolute;inset:50% 0 auto;transform:translateY(-50%)}.faq-toggle:after{transition:transform .28s var(--ease), opacity .28s var(--ease);transform:translateY(-50%)rotate(90deg)}.faq-item.is-open .faq-toggle:after{opacity:0;transform:translateY(-50%)rotate(90deg)}.faq-answer{opacity:0;visibility:hidden;pointer-events:none;width:auto;transition:grid-template-rows .38s var(--ease), opacity .22s var(--ease), visibility .22s;grid-template-rows:0fr;align-items:stretch;display:grid;position:static;inset:auto;overflow:hidden}.faq-item.is-open .faq-answer{opacity:1;visibility:visible;pointer-events:auto;grid-template-rows:1fr}.faq-answer-inner{min-height:0;padding:0;overflow:hidden}.faq-item.is-open .faq-answer-inner{padding:0 0 18px}.faq-answer p{letter-spacing:0;max-width:none;color:var(--muted);font-size:1.02rem;font-weight:400;line-height:1.55}.about{grid-template-columns:1fr;gap:28px;padding:72px 0}.about-photo,.about-photo img{border-radius:0;height:52vh;min-height:0}.about-copy{padding:0 1.5rem}.contact-panel{width:auto;margin:0 1.25rem}.footer-inner{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.spec-split,.story,.door-story,.quote-band{grid-template-columns:1fr;gap:28px;padding:40px 0}.spec-photo,.story-photo,.door-story-photo,.spec-photo img,.story-photo img,.door-story-photo img{border-radius:0;height:52vh;min-height:0}.spec-list,.story-copy,.door-story-copy,.quote-band-form,.page-hero-copy{padding:0 1.5rem}.quote-band-form{border-left:0;border-top:1px solid var(--line);padding:36px 1.5rem 48px}.quote-band-photo img{height:46vh;min-height:280px}.door-point-grid,.use-strip{grid-template-columns:1fr;gap:24px}.door-point+.door-point{border-left:0;border-top:1px solid var(--line);padding-top:24px;padding-left:0}.use-strip{padding:0 1.5rem 40px}.use-tile{min-height:280px}.hangar-interior{min-height:62vh}.office-band-photo{border-radius:0;width:100%}.office-band-copy{padding:0 1.5rem}.shot img{height:52vh}.data-strip{grid-template-columns:1fr 1fr;width:min(100% - 2rem,1280px);margin-top:-16px}.data-cell:nth-child(-n+2){border-bottom:1px solid var(--line)}.data-cell:nth-child(2n){border-right:0}.sheet-split,.sheet-media,.scope-grid,.schedule-row{grid-template-columns:1fr;gap:12px}.spec-dl{grid-template-columns:1fr;gap:4px 0}.spec-dl dt{padding-top:12px}.sheet-media img{height:46vh}.sheet-media-copy{padding:0 1.5rem 8px}.sheet-photo img{height:46vh}.sheet-block{padding:48px 0}.building-page{--bp-h1:1.875rem;--bp-h2:1.5rem}.building-banner{min-height:280px}.building-row-inner,.building-row--flip .building-row-inner{direction:ltr;grid-template-columns:1fr;gap:24px}.building-row-inner img{height:240px}.building-intro,.building-row,.building-uses,.building-options,.building-steps,.building-faq{padding:32px 0}.building-use-grid,.building-option-grid,.building-include-grid,.building-steps ol,.building-gallery-grid{grid-template-columns:1fr}.building-use img,.building-gallery-grid img{height:220px}.type-intro{padding:56px 0 28px}}@media (width<=620px){:root{--header:64px;--top-bar:34px}.top-bar-hours,.top-bar-social{display:none}.container{width:min(100% - 2rem,1280px)}.hero-copy-block{padding:0 1rem}.hero-quote{margin:0 1rem}.field-row{grid-template-columns:1fr}.contact-panel{border-radius:20px;padding:24px}.footer-inner{grid-template-columns:1fr}.do-bento{grid-template-columns:1fr;grid-template-areas:"design""supply""erect""close";width:min(100% - 2rem,1280px)}.do-cell,.do-cell--design,.do-cell--close{min-height:260px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}.reveal{opacity:1;transform:none}.hero-media,.type-card img,.do-cell img{transform:none}}@media (prefers-reduced-transparency:reduce){.site-header-group.scrolled .site-header,.mobile-nav,.contact-panel,.mega{backdrop-filter:none;background:var(--background)}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:#243047}::-webkit-scrollbar-thumb:hover{background:var(--blue)}
