@font-face{font-family: "DM Sans";font-style: normal;font-weight: 400 700;font-display: swap;src: url("/fonts/dm-sans-latin.woff2") format("woff2");unicode-range: U+0000-00FF,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: "Outfit";font-style: normal;font-weight: 600 800;font-display: swap;src: url("/fonts/outfit-latin.woff2") format("woff2");unicode-range: U+0000-00FF,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{--navy-950: #0b1320;--navy-900: #111b2b;--navy-800: #19263a;--navy-700: #24344d;--slate-500: #5b6678;--slate-300: #aab3c2;--line: #e2e6ec;--line-dark: rgba(255,255,255,.12);--surface: #ffffff;--surface-soft: #f3f5f8;--text: #172233;--text-soft: #4a5567;--orange: #f26b1d;--orange-btn: #c94a12;--orange-btn-hover: #a83c0d;--orange-tint: #fff1e8;--green: #1f7a4d;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--container: 1200px;--shadow-sm: 0 1px 2px rgba(11,19,32,.06),0 2px 8px rgba(11,19,32,.05);--shadow: 0 10px 30px rgba(11,19,32,.10);--font-display: "Outfit",ui-sans-serif,system-ui,"Segoe UI",sans-serif;--font-text: "DM Sans",ui-sans-serif,system-ui,"Segoe UI",sans-serif;--ease: cubic-bezier(.2,.7,.2,1);--icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");--icon-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");--icon-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E");--icon-plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E")}*,*::before,*::after{box-sizing: border-box}html{scroll-behavior: smooth;-webkit-text-size-adjust: 100%}body{margin: 0;color: var(--text);background: var(--surface);font-family: var(--font-text);font-size: 1rem;line-height: 1.65;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility}img{display: block;max-width: 100%;height: auto}a{color: inherit}button,input,select,textarea{font: inherit;color: inherit}button{cursor: pointer}:focus-visible{outline: 3px solid var(--orange);outline-offset: 3px}.container{width: min(calc(100% - 40px),var(--container));margin-inline: auto}.sr-only{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;border: 0}.skip-link{position: fixed;z-index: 1000;top: 10px;left: 10px;padding: 10px 16px;border-radius: var(--radius-sm);background: var(--surface);color: var(--text);transform: translateY(-160%)}.skip-link:focus{transform: none}h1,h2,h3,h4{margin: 0 0 .5em;font-family: var(--font-display);font-weight: 700;line-height: 1.12;letter-spacing: -.02em;color: inherit;text-wrap: balance}h1{font-size: clamp(2.3rem,5.2vw,4rem);font-weight: 800}h2{font-size: clamp(1.75rem,3.4vw,2.6rem)}h3{font-size: clamp(1.15rem,1.8vw,1.35rem);font-weight: 600;letter-spacing: -.01em}p{margin: 0 0 1.05rem}.lead{max-width: 680px;color: var(--text-soft);font-size: clamp(1.05rem,1.6vw,1.2rem);line-height: 1.6}.eyebrow{display: inline-block;margin-bottom: 14px;color: #ad3f0e;font-family: var(--font-display);font-size: .9rem;font-weight: 600;letter-spacing: .01em}.eyebrow--light{color: var(--orange)}.section{padding: clamp(64px,8vw,104px) 0}.section--ivory{background: var(--surface-soft)}.section--dark{background: var(--navy-900);color: #fff}.section--dark .lead,.section--dark p{color: #c9d1dd}.section-head{display: flex;align-items: end;justify-content: space-between;gap: 40px;margin-bottom: 44px}.section-head>div{max-width: 720px}.section-head h2{margin-bottom: 0}.section-head p{max-width: 460px;margin: 0;color: var(--text-soft)}.button{display: inline-flex;min-height: 50px;align-items: center;justify-content: center;gap: 10px;padding: 12px 24px;border: 2px solid var(--orange-btn);border-radius: var(--radius-sm);background: var(--orange-btn);color: #fff;font-family: var(--font-display);font-size: 1rem;font-weight: 600;line-height: 1.1;text-align: center;text-decoration: none;transition: background-color .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease),transform .18s var(--ease)}.button:hover{background: var(--orange-btn-hover);border-color: var(--orange-btn-hover)}.button:active{transform: translateY(1px)}.button--outline{background: transparent;color: var(--text);border-color: var(--text)}.button--outline:hover{background: var(--text);border-color: var(--text);color: #fff}.button--small{min-height: 44px;padding: 9px 18px;font-size: .95rem}.button--ivory{background: #fff;border-color: #fff;color: var(--navy-900)}.button--ivory:hover{background: #e9edf2;border-color: #e9edf2;color: var(--navy-900)}.button--outline-light{background: transparent;border-color: rgba(255,255,255,.7);color: #fff}.button--outline-light:hover{background: #fff;border-color: #fff;color: var(--navy-900)}.text-link{display: inline-flex;align-items: center;gap: 6px;color: #ad3f0e;font-weight: 700;text-decoration: none}.text-link::after{content: "";width: 16px;height: 16px;background: currentColor;-webkit-mask: var(--icon-arrow) center / contain no-repeat;mask: var(--icon-arrow) center / contain no-repeat;transition: transform .18s var(--ease)}.text-link:hover::after{transform: translateX(3px)}.text-link:hover{text-decoration: underline;text-underline-offset: 4px}.topbar{background: var(--navy-950);color: #b9c3d2;font-size: .85rem}.topbar__inner{min-height: 38px;display: flex;align-items: center;justify-content: space-between;gap: 20px}.topbar__links{display: flex;gap: 22px}.topbar a{color: #dfe5ee;text-decoration: none}.topbar a:hover{color: #fff}.site-header{position: sticky;top: 0;z-index: 60;background: var(--navy-900);color: #fff;border-bottom: 1px solid var(--line-dark)}.nav-wrap{position: relative;min-height: 78px;display: flex;align-items: center;justify-content: space-between;gap: 28px}.brand{display: inline-flex;align-items: center;gap: 11px;color: #fff;text-decoration: none}.brand__mark{position: relative;width: 44px;height: 40px;display: grid;place-items: end center;padding-bottom: 4px;background: var(--orange);color: var(--navy-950);clip-path: polygon(50% 0,100% 40%,88% 40%,88% 100%,12% 100%,12% 40%,0 40%)}.brand__mark span{font-family: var(--font-display);font-size: .95rem;font-weight: 800;letter-spacing: -.04em}.brand__wordmark{display: grid;line-height: 1.05;white-space: nowrap}.brand__wordmark strong{font-family: var(--font-display);font-size: 1.2rem;font-weight: 700;letter-spacing: -.01em}.brand__wordmark small{margin-top: 3px;color: var(--slate-300);font-size: .78rem;font-weight: 500}.site-nav{display: flex;align-items: center;gap: 4px}.site-nav>a,.nav-dropdown>button{display: inline-flex;white-space: nowrap;align-items: center;gap: 6px;min-height: 44px;padding: 8px 12px;border: 0;border-radius: var(--radius-sm);background: transparent;color: #dbe2ec;font-size: .95rem;font-weight: 500;text-decoration: none;transition: color .15s,background-color .15s}.site-nav>a:not(.button):hover,.nav-dropdown>button:hover{color: #fff;background: rgba(255,255,255,.06)}.site-nav>a[aria-current="page"]{color: #fff;box-shadow: inset 0 -2px 0 var(--orange);border-radius: 0}.site-nav>a.button{margin-left: 10px;padding: 9px 18px;border: 2px solid var(--orange-btn);border-radius: var(--radius-sm);background: var(--orange-btn);color: #fff;font-family: var(--font-display);font-weight: 600;white-space: nowrap}.site-nav>a.button:hover{background: var(--orange-btn-hover);border-color: var(--orange-btn-hover)}.nav-call{display: inline-flex;align-items: center;gap: 8px;margin-left: 8px;color: #fff;font-weight: 600;text-decoration: none;white-space: nowrap}.nav-call::before{content: "";width: 18px;height: 18px;background: var(--orange);-webkit-mask: var(--icon-phone) center / contain no-repeat;mask: var(--icon-phone) center / contain no-repeat}.nav-dropdown{position: relative}.nav-dropdown__menu{position: absolute;top: calc(100% + 10px);left: 0;width: 250px;padding: 8px;visibility: hidden;opacity: 0;transform: translateY(6px);background: var(--surface);border: 1px solid var(--line);border-radius: var(--radius);box-shadow: var(--shadow);transition: opacity .16s var(--ease),transform .16s var(--ease),visibility .16s}.nav-dropdown:hover .nav-dropdown__menu,.nav-dropdown:focus-within .nav-dropdown__menu,.nav-dropdown>button[aria-expanded="true"] + .nav-dropdown__menu{visibility: visible;opacity: 1;transform: none}.nav-dropdown__menu a{display: block;padding: 10px 12px;border-radius: var(--radius-sm);color: var(--text);font-size: .95rem;font-weight: 500;text-decoration: none}.nav-dropdown__menu a:hover{background: var(--surface-soft);color: var(--orange-btn)}.nav-toggle{display: none;width: 44px;height: 44px;place-content: center;gap: 5px;border: 0;border-radius: var(--radius-sm);background: var(--orange-btn)}.nav-toggle span{width: 20px;height: 2px;border-radius: 2px;background: #fff}.hero{position: relative;isolation: isolate;overflow: hidden;min-height: min(88vh,780px);display: flex;flex-direction: column;justify-content: flex-end;padding: 120px 0 0;background: var(--navy-950);color: #fff}.hero__bg{position: absolute;inset: 0;z-index: -2;width: 100%;height: 100%;object-fit: cover;object-position: 50% 35%}.hero::before{content: "";position: absolute;inset: 0;z-index: -1;background: linear-gradient(90deg,rgba(11,19,32,.92) 0%,rgba(11,19,32,.72) 45%,rgba(11,19,32,.35) 100%),linear-gradient(0deg,rgba(11,19,32,.85) 0%,rgba(11,19,32,0) 45%)}.hero__grid{display: grid;grid-template-columns: 1.15fr .85fr;align-items: end;gap: 56px;padding-bottom: 56px}.hero h1{margin: 0;max-width: 14ch;color: #fff}.hero__kicker{display: block}.hero__copy .lead{color: #d6dde7}.hero__actions{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 26px}.hero .button--outline,.page-hero .button--outline{color: #fff;border-color: rgba(255,255,255,.75)}.hero .button--outline:hover,.page-hero .button--outline:hover{background: #fff;color: var(--navy-900);border-color: #fff}.hero__note{margin: 18px 0 0;color: #b9c3d2;font-size: .92rem}.hero .eyebrow{color: var(--orange)}.hero-stats{position: relative;display: grid;grid-template-columns: repeat(4,1fr);margin-bottom: 40px;border: 1px solid rgba(255,255,255,.14);border-radius: var(--radius-lg);background: rgba(17,27,43,.62);-webkit-backdrop-filter: blur(10px);backdrop-filter: blur(10px)}.hero-stats>div{padding: 22px 24px;text-align: center}.hero-stats>div + div{border-left: 1px solid rgba(255,255,255,.12)}.hero-stats strong{display: block;font-family: var(--font-display);font-size: clamp(1.6rem,3vw,2.2rem);font-weight: 700;line-height: 1.1;color: #fff}.hero-stats span{display: block;margin-top: 6px;color: #b9c3d2;font-size: .9rem}.page-hero{position: relative;padding: clamp(56px,7vw,88px) 0;background: var(--navy-900);color: #fff}.page-hero .lead{color: #cfd7e2}.page-hero__grid{display: grid;grid-template-columns: 1.1fr .9fr;align-items: center;gap: 60px}.page-hero h1{font-size: clamp(2.1rem,4.4vw,3.4rem);color: #fff}.page-hero img{width: 100%;height: 420px;object-fit: cover;border-radius: var(--radius-lg)}.page-hero .eyebrow{color: var(--orange)}.page-hero .hero__note{color: #aab5c5}.breadcrumbs{display: flex;flex-wrap: wrap;gap: 8px;margin-bottom: 22px;color: #95a2b5;font-size: .88rem}.breadcrumbs a{color: #dbe2ec;text-decoration: none}.breadcrumbs a:hover{color: #fff;text-decoration: underline}.proof-strip{background: var(--surface);border-bottom: 1px solid var(--line)}.proof-grid{display: grid;grid-template-columns: repeat(3,1fr)}.proof-item{padding: 22px 26px}.proof-item + .proof-item{border-left: 1px solid var(--line)}.proof-item span{display: block;color: var(--slate-500);font-size: .85rem}.proof-item a,.proof-item strong{color: var(--text);font-family: var(--font-display);font-size: 1.05rem;font-weight: 600;text-decoration: none}.proof-item a:hover{color: var(--orange-btn)}.service-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 20px}.service-card{position: relative;display: flex;flex-direction: column;overflow: hidden;padding: 28px;background: var(--surface);border: 1px solid var(--line);border-radius: var(--radius-lg);box-shadow: var(--shadow-sm);transition: box-shadow .2s var(--ease),border-color .2s var(--ease)}.service-card:hover{border-color: #cfd6e0;box-shadow: var(--shadow)}.service-card__media{margin: -28px -28px 22px;aspect-ratio: 16 / 10;overflow: hidden;background: var(--surface-soft)}.service-card__media img{width: 100%;height: 100%;object-fit: cover;transition: transform .4s var(--ease)}.service-card:hover .service-card__media img{transform: scale(1.03)}.service-card__number{align-self: flex-start;margin-bottom: 14px;padding: 4px 10px;border-radius: 999px;background: var(--orange-tint);color: var(--orange-btn);font-size: .8rem;font-weight: 700}.service-card h3{margin-bottom: 8px}.service-card p{color: var(--text-soft)}.service-card a{margin-top: auto}.service-card a.text-link::before{content: "";position: absolute;inset: 0}.content-card{padding: 30px;background: var(--surface);border: 1px solid var(--line);border-radius: var(--radius-lg);box-shadow: var(--shadow-sm)}.content-card h3{margin-bottom: 10px}.section--dark .content-card{color: var(--text)}.section--dark .content-card p{color: var(--text-soft)}.check-list{display: grid;gap: 12px;margin: 22px 0 28px;padding: 0;list-style: none}.check-list li{position: relative;padding-left: 32px}.check-list li::before{content: "";position: absolute;top: 3px;left: 0;width: 20px;height: 20px;border-radius: 50%;background: var(--orange-tint)}.check-list li::after{content: "";position: absolute;top: 7px;left: 4px;width: 12px;height: 12px;background: var(--orange-btn);-webkit-mask: var(--icon-check) center / contain no-repeat;mask: var(--icon-check) center / contain no-repeat}.section--dark .check-list li::before{background: rgba(242,107,29,.18)}.section--dark .check-list li::after{background: var(--orange)}.feature-list{display: grid;margin: 0;padding: 0;list-style: none}.feature-list li{padding: 14px 0;border-bottom: 1px solid var(--line)}.feature-list li:first-child{padding-top: 0}.feature-list li:last-child{border-bottom: 0;padding-bottom: 0}.project-feature{display: grid;grid-template-columns: 1.1fr .9fr;overflow: hidden;background: var(--surface);border: 1px solid var(--line);border-radius: var(--radius-lg);box-shadow: var(--shadow-sm)}.project-feature__gallery{height: 540px;display: grid;grid-template-columns: 1fr 1fr;grid-template-rows: repeat(2,minmax(0,1fr));gap: 4px}.project-feature__gallery img{width: 100%;height: 100%;min-width: 0;min-height: 0;object-fit: cover}.project-feature__gallery img:first-child{grid-row: span 2}.project-feature__copy{align-self: center;padding: clamp(30px,5vw,60px)}.process-grid{display: grid;grid-template-columns: repeat(4,1fr);gap: 20px;counter-reset: step}.process-step{padding: 26px;border: 1px solid var(--line-dark);border-radius: var(--radius-lg);background: var(--navy-800);counter-increment: step}.process-step::before{content: counter(step);display: grid;place-items: center;width: 40px;height: 40px;margin-bottom: 18px;border-radius: 50%;background: var(--orange-btn);color: #fff;font-family: var(--font-display);font-weight: 700}.process-step h3{color: #fff}.process-step p{margin: 0;color: #b9c3d2;font-size: .96rem}.areas-grid{display: grid;grid-template-columns: .85fr 1.15fr;gap: 64px;align-items: start}.area-list{display: grid;grid-template-columns: repeat(2,1fr);gap: 10px;margin: 0;padding: 0;list-style: none}.area-list a{display: flex;align-items: center;justify-content: space-between;padding: 16px 18px;border: 1px solid var(--line);border-radius: var(--radius);background: var(--surface);color: var(--text);font-family: var(--font-display);font-weight: 600;text-decoration: none;transition: border-color .15s,color .15s}.area-list a::after{content: "";width: 16px;height: 16px;background: var(--orange-btn);-webkit-mask: var(--icon-arrow) center / contain no-repeat;mask: var(--icon-arrow) center / contain no-repeat}.area-list a:hover{border-color: var(--orange-btn);color: var(--orange-btn)}.guide-links{display: grid;gap: 12px}.guide-links a{display: grid;gap: 4px;padding: 20px 22px;border: 1px solid var(--line-dark);border-radius: var(--radius);background: var(--navy-800);color: #fff;text-decoration: none;transition: border-color .15s}.guide-links a:hover{border-color: var(--orange)}.guide-links strong{font-family: var(--font-display);font-size: 1.15rem;font-weight: 600}.guide-links span{color: #b9c3d2;font-size: .92rem}.article-grid{display: grid;grid-template-columns: 1fr 1fr;gap: 22px}.article-card{overflow: hidden;border: 1px solid var(--line);border-radius: var(--radius-lg);background: var(--surface);box-shadow: var(--shadow-sm)}.article-card img{width: 100%;height: 280px;object-fit: cover}.article-card>div{padding: 28px}.article-card span{color: var(--slate-500);font-size: .88rem}.article-card h2{margin: 10px 0 12px;font-size: 1.6rem}.article-hero{padding: clamp(56px,7vw,88px) 0;background: var(--navy-900);color: #fff}.article-hero .lead{color: #cfd7e2}.article-hero__grid{display: grid;grid-template-columns: 1.1fr .9fr;align-items: center;gap: 60px}.article-hero h1{font-size: clamp(2.1rem,4.4vw,3.4rem)}.article-hero img{width: 100%;height: 420px;object-fit: cover;border-radius: var(--radius-lg)}.article-meta{display: flex;flex-wrap: wrap;gap: 8px 18px;margin-top: 22px;color: #aab5c5;font-size: .9rem}.article-layout{display: grid;grid-template-columns: 240px minmax(0,740px);justify-content: center;gap: 64px;padding-top: 72px;padding-bottom: 96px}.article-nav{position: sticky;top: 110px;align-self: start;display: grid;gap: 8px;padding: 20px;border: 1px solid var(--line);border-radius: var(--radius);background: var(--surface-soft)}.article-nav strong{margin-bottom: 4px;font-family: var(--font-display);font-size: .95rem}.article-nav a{color: var(--text-soft);font-size: .92rem;text-decoration: none}.article-nav a:hover{color: var(--orange-btn)}.article-copy{font-size: 1.06rem;line-height: 1.75}.article-copy>p:first-child{color: var(--text);font-size: 1.2rem}.article-copy section{scroll-margin-top: 110px;padding-top: 26px}.article-copy h2{margin-top: 14px;font-size: clamp(1.5rem,2.6vw,2rem)}.article-copy li{margin-bottom: .6rem}.article-copy a{color: var(--orange-btn);text-underline-offset: 3px}.article-cta{margin-top: 52px;padding: 32px;border-radius: var(--radius-lg);background: var(--navy-900);color: #fff}.article-cta p{color: #cfd7e2}.article-cta h2{margin-top: 0}.faq-list{display: grid;gap: 10px}.faq-list details{border: 1px solid var(--line);border-radius: var(--radius);background: var(--surface)}.faq-list summary{display: flex;align-items: center;justify-content: space-between;gap: 20px;padding: 18px 22px;cursor: pointer;list-style: none;font-family: var(--font-display);font-size: 1.08rem;font-weight: 600}.faq-list summary::-webkit-details-marker{display: none}.faq-list summary::after{content: "";flex: 0 0 18px;height: 18px;background: var(--orange-btn);-webkit-mask: var(--icon-plus) center / contain no-repeat;mask: var(--icon-plus) center / contain no-repeat;transition: transform .2s var(--ease)}.faq-list details[open] summary::after{transform: rotate(45deg)}.faq-list details[open]{border-color: #cfd6e0;box-shadow: var(--shadow-sm)}.faq-list details p{max-width: 760px;margin: 0;padding: 0 22px 20px;color: var(--text-soft)}.two-col{display: grid;grid-template-columns: 1fr 1fr;gap: 64px;align-items: start}.service-scope{display: grid;grid-template-columns: repeat(3,1fr);gap: 20px}.scope-card{padding: 28px;background: var(--surface);border: 1px solid var(--line);border-radius: var(--radius-lg)}.scope-card span{display: grid;place-items: center;width: 40px;height: 40px;margin-bottom: 16px;border-radius: 50%;background: var(--orange-tint);color: var(--orange-btn);font-family: var(--font-display);font-weight: 700}.scope-card p{margin: 0;color: var(--text-soft)}.project-hero{background: var(--navy-900);color: #fff}.project-hero .lead{color: #cfd7e2}.project-facts{display: grid;grid-template-columns: repeat(3,1fr);gap: 12px;margin-top: 30px}.project-facts div{padding: 16px;border: 1px solid var(--line-dark);border-radius: var(--radius)}.project-facts span{display: block;color: #95a2b5;font-size: .85rem}.project-facts strong{font-family: var(--font-display);font-weight: 600}.timeline{display: grid;gap: 16px}.timeline-item{display: grid;grid-template-columns: 96px 1fr;gap: 22px;padding-bottom: 20px;border-bottom: 1px solid var(--line)}.timeline-item span{color: var(--orange-btn);font-family: var(--font-display);font-weight: 700}.gallery-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 10px}.gallery-item{position: relative;overflow: hidden;margin: 0;background: var(--navy-900);border-radius: var(--radius)}.gallery-item:nth-child(5n + 1){grid-column: span 2}.gallery-item img{width: 100%;height: 320px;object-fit: cover;cursor: zoom-in;transition: transform .35s var(--ease)}.gallery-item:hover img{transform: scale(1.02)}.gallery-item figcaption{position: absolute;right: 0;bottom: 0;left: 0;padding: 30px 16px 12px;background: linear-gradient(transparent,rgba(11,19,32,.82));color: #fff;font-size: .88rem}dialog{max-width: min(92vw,1100px);padding: 0;border: 0;border-radius: var(--radius);background: var(--navy-950);box-shadow: var(--shadow)}dialog::backdrop{background: rgba(11,19,32,.88)}dialog img{max-height: 82vh;width: auto;margin: auto}dialog button{position: absolute;top: 10px;right: 10px;width: 44px;height: 44px;border: 0;border-radius: 50%;background: #fff;color: var(--text);font-size: 1.4rem}.live-project-grid{display: grid;gap: 24px}.live-project-card{display: grid;grid-template-columns: minmax(300px,.9fr) minmax(0,1.1fr);overflow: hidden;border: 1px solid var(--line);border-radius: var(--radius-lg);background: var(--surface);box-shadow: var(--shadow-sm)}.live-project-card.is-featured{border-color: var(--orange-btn)}.live-project-card__images{min-height: 360px;display: grid;grid-template-columns: repeat(2,1fr);gap: 4px;background: var(--navy-900)}.live-project-card__images img{width: 100%;height: 100%;min-height: 178px;object-fit: cover;cursor: zoom-in}.live-project-card__images img:only-child{grid-column: 1 / -1;min-height: 360px}.live-project-card__copy{align-self: center;padding: clamp(28px,5vw,56px)}.live-project-card__copy h3{margin-top: 16px;font-size: clamp(1.5rem,2.6vw,2.2rem)}.live-project-card__copy>p{color: var(--text-soft)}.live-project-meta{display: flex;flex-wrap: wrap;align-items: center;gap: 10px;color: var(--slate-500);font-size: .88rem}.project-status{display: inline-flex;padding: 4px 10px;border-radius: 999px;background: var(--surface-soft);color: var(--text-soft);font-weight: 600}.project-status--in_progress{background: var(--orange-tint);color: #8a3a0b}.project-status--completed{background: #e4f4ea;color: var(--green)}.project-status--planned{background: #e7edf6;color: #2f4b72}.live-project-services{padding-top: 16px;border-top: 1px solid var(--line)}.live-project-card__copy small{display: block;margin-top: 20px;color: var(--slate-500)}.contact-grid{display: grid;grid-template-columns: .85fr 1.15fr;gap: 64px;align-items: start}.contact-details{display: grid;gap: 12px;margin-top: 28px}.contact-detail{padding: 18px 20px;border: 1px solid var(--line);border-radius: var(--radius)}.contact-detail span{display: block;color: var(--slate-500);font-size: .88rem}.contact-detail a,.contact-detail address{color: var(--text);font-family: var(--font-display);font-size: 1.1rem;font-style: normal;font-weight: 600;text-decoration: none;word-break: break-word}.contact-detail a:hover{color: var(--orange-btn)}.form-card{padding: clamp(24px,4vw,44px);background: var(--surface);border: 1px solid var(--line);border-radius: var(--radius-lg);box-shadow: var(--shadow)}.form-grid{display: grid;grid-template-columns: 1fr 1fr;gap: 18px}.form-field{display: grid;gap: 6px}.form-field--full{grid-column: 1 / -1}.form-field label{font-size: .95rem;font-weight: 600}.form-field input,.form-field select,.form-field textarea{width: 100%;min-height: 50px;padding: 12px 14px;border: 1px solid #c8d0db;border-radius: var(--radius-sm);background: #fff;color: var(--text);font-size: 1rem;transition: border-color .15s,box-shadow .15s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline: none;border-color: var(--orange-btn);box-shadow: 0 0 0 3px rgba(201,74,18,.18)}.form-field textarea{min-height: 140px;resize: vertical}.form-note{color: var(--slate-500);font-size: .88rem}.honeypot{position: absolute;left: -9999px}[role="alert"]{padding: 12px 14px;border-radius: var(--radius-sm);background: #fdecea;color: #8a1c12}.legal-copy{max-width: 800px}.legal-copy h2{margin-top: 2rem;font-size: 1.5rem}.legal-copy h3{margin-top: 1.5rem;font-size: 1.2rem}.legal-copy li{margin-bottom: .6rem}.planner-hero-card{padding: clamp(28px,4vw,48px);border: 1px solid var(--line-dark);border-radius: var(--radius-lg);background: var(--navy-800);color: #fff}.planner-hero-card span{color: var(--orange);font-weight: 600}.planner-hero-card strong{display: block;margin: 20px 0 14px;font-family: var(--font-display);font-size: clamp(1.5rem,2.6vw,2.1rem);line-height: 1.2}.planner-hero-card p{margin: 0;color: #b9c3d2}.calculator-layout{display: grid;grid-template-columns: .75fr 1.25fr;gap: 64px;align-items: start}.calculator-layout--reverse{grid-template-columns: 1.2fr .8fr}.calculator-intro{position: sticky;top: 110px}.roof-calculator,.loft-planner{padding: clamp(24px,4vw,44px);border: 1px solid var(--line);border-radius: var(--radius-lg);background: var(--surface);box-shadow: var(--shadow)}.calculator-fields{display: grid;grid-template-columns: 1fr 1fr;gap: 18px}.calculator-results{display: grid;grid-template-columns: repeat(2,1fr);gap: 10px;margin-top: 24px}.calculator-results article{display: grid;min-height: 130px;padding: 20px;border-radius: var(--radius);background: var(--navy-900);color: #fff}.calculator-results span{color: #b9c3d2;font-size: .88rem}.calculator-results strong{align-self: end;font-family: var(--font-display);font-size: 1.9rem;font-weight: 700}.calculator-results small{color: #95a2b5}.calculator-disclaimer{margin: 20px 0 0;padding: 12px 16px;border-radius: var(--radius-sm);background: var(--surface-soft);color: var(--text-soft);font-size: .9rem}.loft-planner h2{margin-bottom: 24px}.loft-planner .button{margin-top: 22px}.loft-planner-result{margin-top: 22px;padding: 18px;border-radius: var(--radius);background: #e4f4ea;color: #175c3a}.contact-band{padding: 52px 0;background: var(--orange-btn-hover);color: #fff}.contact-band__grid{display: flex;align-items: center;justify-content: space-between;gap: 36px}.contact-band h2{max-width: 640px;margin: 0;font-size: clamp(1.6rem,3.2vw,2.4rem)}.contact-band .eyebrow{color: #fff}.contact-band__actions{display: flex;flex-wrap: wrap;gap: 12px}.contact-band .button--ivory{color: var(--orange-btn-hover)}.site-footer{padding: 64px 0 24px;background: var(--navy-950);color: #aab5c5}.footer-grid{display: grid;grid-template-columns: 1.5fr .9fr 1.1fr .8fr;gap: 48px}.brand--footer .brand__wordmark small{color: #8b97a9}.footer-intro{max-width: 340px;margin-top: 20px}.site-footer h3{margin-bottom: 14px;color: #fff;font-size: 1rem}.site-footer ul{margin: 0;padding: 0;list-style: none}.site-footer li{margin-bottom: 8px}.site-footer a{color: #c3ccd8;text-decoration: none}.site-footer a:hover{color: #fff;text-decoration: underline;text-underline-offset: 3px}.site-footer address{font-style: normal;line-height: 1.8}.footer-email{word-break: break-word}.footer-bottom{display: flex;justify-content: space-between;gap: 24px;margin-top: 48px;padding-top: 20px;border-top: 1px solid var(--line-dark);font-size: .88rem}.footer-bottom p{margin: 0}.mobile-call{display: none}@media (max-width: 1240px){.nav-call{display: none}}@media (max-width: 1100px){.topbar{display: none}.nav-toggle{display: grid;order: -1}.nav-wrap{min-height: 68px}.brand{position: absolute;left: 50%;transform: translateX(-50%)}.site-nav{position: absolute;top: 100%;right: -20px;left: -20px;display: none;align-items: stretch;gap: 0;padding: 12px 20px 22px;background: var(--navy-900);border-bottom: 1px solid var(--line-dark);box-shadow: 0 20px 30px rgba(0,0,0,.25)}.site-nav.is-open{display: grid}.site-nav>a,.nav-dropdown>button{width: 100%;padding: 13px 4px;border-radius: 0;border-bottom: 1px solid var(--line-dark);text-align: left}.site-nav>a[aria-current="page"]{box-shadow: none;color: var(--orange)}.site-nav>a.button{margin: 14px 0 0;justify-content: center;border-bottom: 2px solid var(--orange-btn)}.nav-dropdown__menu{position: static;display: none;width: 100%;padding: 4px 0 8px 12px;visibility: visible;opacity: 1;transform: none;border: 0;background: transparent;box-shadow: none}.nav-dropdown__menu a{color: #cfd7e2}.nav-dropdown__menu a:hover{background: transparent;color: #fff}.nav-dropdown>button[aria-expanded="true"] + .nav-dropdown__menu{display: block}.header-call{display: inline-flex;align-items: center;gap: 6px;margin-left: auto;color: #fff;font-size: .9rem;font-weight: 600;text-decoration: none}.header-call::before{content: "";width: 18px;height: 18px;background: var(--orange);-webkit-mask: var(--icon-phone) center / contain no-repeat;mask: var(--icon-phone) center / contain no-repeat}.hero__grid,.page-hero__grid,.two-col,.areas-grid,.contact-grid,.article-hero__grid,.calculator-layout,.calculator-layout--reverse,.project-feature{grid-template-columns: 1fr}.hero__grid{gap: 8px}.page-hero__grid{gap: 36px}.hero-stats{grid-template-columns: repeat(2,1fr)}.hero-stats>div:nth-child(3){border-left: 0}.hero-stats>div:nth-child(n + 3){border-top: 1px solid rgba(255,255,255,.12)}.service-grid,.service-scope,.process-grid{grid-template-columns: repeat(2,1fr)}.article-layout{grid-template-columns: 1fr;gap: 32px}.article-nav{position: static}.project-feature__gallery{height: 480px}.footer-grid{grid-template-columns: 1fr 1fr}.calculator-intro{position: static}}@media (min-width: 1101px){.header-call{display: none}}@media (max-width: 680px){body{padding-bottom: 64px}.container{width: min(calc(100% - 32px),var(--container))}.brand__wordmark small{display: none}.header-call span{display: none}.hero{min-height: 0;padding-top: 72px}.hero__bg{object-position: 50% 30%}.hero::before{background: linear-gradient(180deg,rgba(11,19,32,.55) 0%,rgba(11,19,32,.88) 55%,rgba(11,19,32,.96) 100%)}.hero-stats>div{padding: 16px 12px}.page-hero img,.article-hero img{height: 280px}.proof-grid{grid-template-columns: 1fr}.proof-item{padding: 16px 0}.proof-item + .proof-item{border-left: 0;border-top: 1px solid var(--line)}.section-head{display: block;margin-bottom: 30px}.section-head p{margin-top: 12px}.service-grid,.service-scope,.process-grid,.project-facts,.article-grid,.live-project-card,.calculator-fields,.calculator-results,.area-list,.form-grid,.footer-grid{grid-template-columns: 1fr}.form-field--full{grid-column: auto}.project-feature__gallery{height: 380px}.article-nav{display: none}.article-layout{padding-top: 48px;padding-bottom: 64px}.gallery-grid{grid-template-columns: 1fr 1fr;gap: 6px}.gallery-item img{height: 200px}.gallery-item figcaption{font-size: .78rem}.live-project-card__images,.live-project-card__images img:only-child{min-height: 280px}.timeline-item{grid-template-columns: 1fr;gap: 4px}.contact-band__grid{display: block}.contact-band__actions{margin-top: 22px}.footer-bottom{display: block}.footer-bottom p + p{margin-top: 8px}.mobile-call{position: fixed;z-index: 100;right: 0;bottom: 0;left: 0;display: flex;height: 64px;align-items: center;justify-content: center;gap: 10px;background: var(--orange-btn);color: #fff;font-family: var(--font-display);font-size: 1.05rem;font-weight: 600;text-decoration: none;box-shadow: 0 -4px 16px rgba(0,0,0,.15)}.mobile-call::before{content: "";width: 20px;height: 20px;background: #fff;-webkit-mask: var(--icon-phone) center / contain no-repeat;mask: var(--icon-phone) center / contain no-repeat}.mobile-call span{font-weight: 500}}@media (prefers-reduced-motion: reduce){*,*::before,*::after{scroll-behavior:auto !important;transition:none !important;animation:none !important}}