:root{--mobile-cta-space:0px;--bg:#151515;--surface:#20201f;--surface-soft:#262624;--text:#f3f0e9;--muted:#aaa59d;--muted-strong:#c8c3ba;--border:#343434;--border-strong:#56534e;--accent:#d8753b;--accent-hover:#ee8a4f;--on-accent:#171717;--footer-bg:#151515;--header-border:#3a3937;--row-hover:#191918;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}[data-theme=light]{--bg:#f3efe7;--surface:#fff;--surface-soft:#eae5dc;--text:#1b1b1a;--muted:#68635c;--muted-strong:#46423d;--border:#d3ccc1;--border-strong:#bdb4a7;--accent:#d8753b;--accent-hover:#b95725;--on-accent:#171717;--footer-bg:#eae5dc;--header-border:#c8c0b4;--row-hover:#eee8de}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;color:var(--text);background:var(--bg);margin:0}*,:before,:after{box-sizing:border-box}a{color:inherit}button,input,textarea{font:inherit}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=700px){:root{--mobile-cta-space:calc(81px + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}#root{min-height:100vh}.site-header,.site-footer,.page-section{width:min(100% - 40px,1200px);margin-inline:auto}.site-header{z-index:1000;background:#151515;border-bottom:2px solid #3a3937;justify-content:space-between;align-items:center;gap:48px;min-height:108px;display:flex;position:sticky;top:0}.brand{border-left:3px solid #d8753b;flex-direction:row;flex:auto;align-items:center;gap:10px;min-width:0;max-width:360px;padding-left:10px;text-decoration:none;display:flex}.brand-name{letter-spacing:.14em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;max-width:100%;font-size:1rem;font-weight:750;line-height:1;display:block;overflow:hidden}.brand-slogan{color:#9d9890;letter-spacing:.06em;font-size:.75rem;line-height:1}.header-actions{justify-content:flex-end;align-items:center;gap:32px;display:flex}.main-nav{align-items:center;gap:clamp(16px,2vw,30px);display:flex}.main-nav>a,.nav-dropdown-trigger{color:#c8c3ba;padding-block:12px;font-size:.875rem;font-weight:550;text-decoration:none;transition:color .18s;position:relative}.main-nav>a:after,.nav-dropdown-trigger:after{content:"";transform-origin:100%;background:#d8753b;height:1px;transition:transform .18s;position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0)}.main-nav>a:hover,.main-nav>a:focus-visible,.nav-dropdown:hover .nav-dropdown-trigger,.nav-dropdown:focus-within .nav-dropdown-trigger{color:#f3f0e9}.main-nav>a:hover:after,.main-nav>a:focus-visible:after,.nav-dropdown:hover .nav-dropdown-trigger:after,.nav-dropdown:focus-within .nav-dropdown-trigger:after{transform-origin:0;transform:scaleX(1)}.nav-dropdown{position:relative}.nav-dropdown-trigger{align-items:center;gap:8px;display:inline-flex}.nav-link-content,.mobile-nav-link-content{white-space:nowrap;align-items:center;gap:6px;min-width:0;display:inline-flex}.nav-icon{object-fit:contain;filter:brightness(0)saturate()invert(55%)sepia(72%)saturate(522%)hue-rotate(340deg)brightness(89%)contrast(89%);opacity:.9;flex:0 0 14px;width:14px;height:14px;display:block}.nav-icon-applications{flex-basis:13px;width:13px;height:13px}.nav-dropdown-chevron{color:#d8753b;opacity:.7;font-size:.6875rem;transition:transform .18s}.services-dropdown{z-index:10;visibility:hidden;opacity:0;pointer-events:none;width:min(390px,100vw - 40px);padding-top:24px;transition:opacity .16s,transform .16s,visibility 0s linear .16s;position:absolute;top:100%;left:-24px;transform:translateY(-8px)}.services-dropdown.is-open{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.nav-dropdown-trigger[aria-expanded=true] .nav-dropdown-chevron{transform:rotate(180deg)}.services-dropdown-list{overscroll-behavior:contain;background:#20201f;border-top:2px solid #d8753b;max-height:calc(100dvh - 140px);padding:8px 24px;overflow-y:auto;box-shadow:0 18px 45px #00000052}.services-dropdown-list a{color:#c8c3ba;border-bottom:1px solid #393835;grid-template-columns:34px minmax(0,1fr);gap:12px;padding-block:14px;font-size:.875rem;line-height:1.35;text-decoration:none;transition:color .16s,padding-left .16s;display:grid}.services-dropdown-list a:last-child{border-bottom:0}.services-dropdown-list a span{color:#aaa59d;font-size:.75rem;transition:color .16s}.services-dropdown-list a:hover,.services-dropdown-list a:focus-visible{color:#f3f0e9;outline:0;padding-left:6px}.services-dropdown-list a:hover span,.services-dropdown-list a:focus-visible span{color:#d8753b}.call-button{color:#171717;letter-spacing:.02em;background:#d8753b;justify-content:space-between;align-items:center;gap:24px;min-width:148px;padding:15px 18px;font-size:.875rem;font-weight:750;text-decoration:none;transition:background-color .18s,color .18s;display:inline-flex}.call-button:hover,.call-button:focus-visible{color:#151515;background:#ee8a4f}.main-nav a:focus-visible,.call-button:focus-visible,.brand:focus-visible{outline-offset:4px;outline:2px solid #ee8a4f}.mobile-menu-toggle,.mobile-menu{display:none}@media (width>=1025px) and (width<=1200px){.site-header{gap:24px}.brand{max-width:250px}.header-actions{gap:16px}.main-nav{gap:14px}.main-nav>a,.nav-dropdown-trigger{font-size:.8125rem}.nav-icon{display:none}.call-button{gap:12px;min-width:0;padding:13px 14px}}.page-section{border-bottom:1px solid #343434;min-height:360px;padding-block:96px;scroll-margin-top:132px}.hero-section{grid-template-rows:1fr auto;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);column-gap:clamp(48px,7vw,112px);min-height:calc(100svh - 108px);padding-block:clamp(36px,3.5vw,52px) 32px;display:grid}.hero-content{align-self:center;padding-bottom:48px}.hero-eyebrow{color:#aaa59d;letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:16px;margin-bottom:clamp(28px,5vh,56px);font-size:.75rem;font-weight:650;display:flex}.hero-eyebrow span{color:#d8753b;border:1px solid #d8753b;place-items:center;width:32px;height:32px;display:inline-grid}.hero-title{letter-spacing:-.065em;flex-direction:column;max-width:900px;margin-bottom:clamp(32px,5vh,56px);font-size:clamp(3.4rem,5.8vw,5.5rem);font-weight:700;line-height:.86;display:flex}.hero-title span:nth-child(2){padding-left:clamp(0px,4vw,68px)}.hero-title-accent{color:#d8753b}.hero-description{color:#aaa59d;max-width:580px;margin-bottom:40px;font-size:clamp(1rem,1.4vw,1.125rem);line-height:1.7}.hero-cta-group{flex-wrap:wrap;gap:12px;display:flex}.hero-cta{letter-spacing:.02em;justify-content:space-between;align-items:center;min-width:190px;padding:17px 20px;font-size:.875rem;font-weight:700;text-decoration:none;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.hero-cta-primary{color:#171717;background:#d8753b;border:1px solid #d8753b}.hero-cta-primary:hover,.hero-cta-primary:focus-visible{background:#ee8a4f;border-color:#ee8a4f}.hero-cta-secondary{color:#f3f0e9;border:1px solid #56534e}.hero-cta-secondary:hover,.hero-cta-secondary:focus-visible{color:#d8753b;border-color:#d8753b}.hero-cta:focus-visible{outline-offset:4px;outline:2px solid #ee8a4f}.hero-media{align-self:center;min-width:0;margin-top:32px;margin-bottom:80px;padding-top:34px;padding-left:28px;position:relative}.hero-media:before,.hero-media:after{content:"";position:absolute}.hero-media:before{border-top:1px solid #56534e;border-left:1px solid #56534e;width:72px;height:72px;top:18px;left:0}.hero-media:after{background:#d8753b;width:9px;height:9px;top:14px;left:-4px}.hero-media-index{color:#d8753b;letter-spacing:.14em;font-size:.75rem;position:absolute;top:0;right:0}.hero-media-frame{aspect-ratio:4/5;background:#1c1c1b;width:100%;position:relative;overflow:hidden}.hero-media-image{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.hero-footnote{color:#aaa59d;letter-spacing:.12em;text-transform:uppercase;border-top:1px solid #343434;grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:24px;font-size:.75rem;display:flex}.services-section{padding-block:clamp(96px,13vw,168px)}.services-heading{grid-template-columns:minmax(150px,.55fr) minmax(0,1.45fr);column-gap:clamp(40px,8vw,120px);margin-bottom:clamp(64px,9vw,112px);display:grid}.services-heading .section-label{grid-row:1/span 2;padding-top:10px}.services-heading h2{letter-spacing:-.045em;max-width:780px;margin:0 0 28px;font-size:clamp(2.1rem,3.8vw,4rem);line-height:1}.services-intro{color:#aaa59d;max-width:620px;margin-bottom:0;font-size:clamp(1.05rem,1.2vw,1.12rem);line-height:1.75}.services-list{border-top:1px solid #4a4844;margin:0;padding:0;list-style:none}.service-item{border-bottom:1px solid #343434;scroll-margin-top:132px;transition:border-color .18s,background-color .18s}.service-row{width:100%;min-height:132px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:80px minmax(230px,1fr) minmax(260px,.8fr) 32px;align-items:center;gap:clamp(20px,3vw,48px);padding:24px 0;display:grid}.service-number{color:#68645e;letter-spacing:-.045em;font-size:clamp(1.75rem,3vw,3rem);font-weight:650;line-height:1;transition:color .18s}.service-title{overflow-wrap:anywhere;color:#f3f0e9;letter-spacing:-.03em;min-width:0;font-size:clamp(1.3rem,2vw,2rem);font-weight:600;line-height:1.15;transition:color .18s}.service-summary{overflow-wrap:anywhere;color:#8e8981;min-width:0;font-size:clamp(1rem,1.1vw,1.08rem);line-height:1.65;transition:color .18s}.service-arrow{color:#625e58;font-size:1.25rem;transition:color .18s,transform .18s}.service-item:hover{background:#191918;border-bottom-color:#d8753b}.service-row:hover .service-number,.service-row:hover .service-arrow{color:#d8753b}.service-row:hover .service-arrow{transform:translate(3px,-3px)}.service-row:focus-visible{outline-offset:-2px;outline:2px solid #ee8a4f}.service-page{width:min(100% - 40px,1200px);margin-inline:auto;padding:clamp(48px,4.5vw,64px) 0 clamp(88px,12vw,160px)}.service-breadcrumb{color:#9d9890;margin-bottom:clamp(24px,3vw,40px);font-size:.8rem}.service-breadcrumb ol{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.service-breadcrumb li:not(:last-child):after{color:#d8753b;content:"/";margin-left:8px}.service-breadcrumb a{text-decoration:none}.service-breadcrumb a:hover,.service-breadcrumb a:focus-visible{color:#f3f0e9}.service-page-hero{border-bottom:1px solid #46433e;max-width:860px;padding-bottom:clamp(56px,8vw,104px)}.service-page-hero .section-label{margin-bottom:24px}.service-page-hero h1{color:#f3f0e9;letter-spacing:-.055em;max-width:760px;margin:0 0 28px;font-size:clamp(2.5rem,4.8vw,4rem);font-weight:620;line-height:1}.service-page-hero>p:last-child{color:#c8c3ba;max-width:620px;margin:0;font-size:clamp(1.05rem,1.6vw,1.22rem);line-height:1.75}.service-page-main-media{aspect-ratio:4/3;background:#20201f;width:100%;max-height:520px;margin:0;overflow:hidden}.service-page-main-media img{object-fit:cover;width:100%;height:100%;display:block}.service-page-layout{grid-template-columns:minmax(0,1fr) minmax(220px,.3fr);align-items:start;gap:clamp(48px,9vw,144px);padding-top:clamp(56px,9vw,120px);display:grid}.service-page-hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:clamp(48px,6vw,80px);display:grid}.service-page-hero-copy,.service-page-content{min-width:0}.service-page-content section{border-bottom:1px solid #343434;margin-bottom:clamp(42px,6vw,72px);padding:0 0 clamp(42px,6vw,72px)}.service-page-content h2{color:#f3f0e9;letter-spacing:-.04em;max-width:720px;margin:0 0 22px;font-size:clamp(1.6rem,2.4vw,2.4rem);font-weight:600;line-height:1.05}.service-page-content h3{color:#f3f0e9;margin:32px 0 10px;font-size:clamp(1.15rem,1.5vw,1.4rem);font-weight:650}.service-page-content p{color:#aaa59d;max-width:720px;margin:0 0 16px;font-size:1rem;line-height:1.75}.service-page-list{color:#c8c3ba;gap:11px;margin:24px 0 0;padding:0;line-height:1.6;list-style:none;display:grid}.service-page-list li{padding-left:18px;position:relative}.service-page-list li:before{content:"";background:#d8753b;width:5px;height:5px;position:absolute;top:.68em;left:0}.service-page-content .service-page-contact{border-bottom:0;margin-bottom:0;padding-bottom:0}.service-page-call{color:#151515;background:#d8753b;flex-wrap:wrap;gap:8px;margin-top:16px;padding:14px 18px;font-size:.9rem;font-weight:750;text-decoration:none;display:inline-flex}.service-page-call span{white-space:nowrap}.service-page-call:hover,.service-page-call:focus-visible{background:#eda16f}.service-page-aside{border-top:1px solid #d8753b;position:sticky;top:138px}.service-page-aside>p{color:#d8753b;letter-spacing:.12em;text-transform:uppercase;margin:20px 0 8px;font-size:.72rem;font-weight:700}.service-page-aside a{color:#c8c3ba;border-bottom:1px solid #343434;justify-content:space-between;align-items:center;gap:16px;padding:17px 0;font-size:.94rem;line-height:1.35;text-decoration:none;display:flex}.service-page-aside a span{color:#d8753b;flex:none}.service-page-aside a:hover,.service-page-aside a:focus-visible{color:#f3f0e9}.products-section{padding-block:clamp(96px,13vw,168px)}.products-heading{grid-template-columns:minmax(150px,.55fr) minmax(0,1.45fr);gap:clamp(40px,8vw,120px);margin-bottom:clamp(48px,7vw,88px);display:grid}.products-heading .section-label{padding-top:10px}.products-heading h2{color:#f3f0e9;letter-spacing:-.045em;margin:0 0 24px;font-size:clamp(2.25rem,4.4vw,4rem);line-height:.98}.products-heading p:last-child{color:#aaa59d;max-width:680px;margin:0;line-height:1.7}.products-list{border-top:1px solid #46433e;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.product-category{border-bottom:1px solid #343434;grid-template-columns:48px minmax(0,1fr);gap:16px;min-width:0;padding:28px 32px 28px 0;display:grid}.product-category:nth-child(odd){border-right:1px solid #343434;padding-right:32px}.product-category:nth-child(2n){padding-left:32px}.product-category>span{color:#d8753b;letter-spacing:.1em;font-size:.78rem;font-weight:700}.product-category h3{color:#f3f0e9;margin:0 0 8px;font-size:1.2rem}.product-category p{color:#aaa59d;margin:0;font-size:.94rem;line-height:1.6}.products-actions{flex-wrap:wrap;gap:12px 36px;margin-top:36px;display:flex}.products-cta{color:#f3f0e9;border-bottom:1px solid #d8753b;align-items:center;gap:12px;min-height:44px;padding-bottom:3px;font-weight:650;text-decoration:none;display:inline-flex}.products-cta:hover,.products-cta:focus-visible,.products-cta span{color:#d8753b}.why-us-section{padding-block:clamp(96px,13vw,168px)}.why-us-heading{grid-template-columns:minmax(150px,.55fr) minmax(0,1.45fr);column-gap:clamp(40px,8vw,120px);margin-bottom:clamp(64px,9vw,112px);display:grid}.why-us-heading .section-label{padding-top:10px}.why-us-heading-copy{max-width:820px}.why-us-heading h2{letter-spacing:-.045em;margin:0 0 28px;font-size:clamp(2.25rem,4.4vw,4rem);line-height:.98}.why-us-heading-copy>p{color:#aaa59d;max-width:620px;margin-bottom:0;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.7}.why-us-values{border-top:1px solid #4a4844;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.why-us-value{border-bottom:1px solid #343434;grid-template-columns:84px minmax(0,1fr);gap:clamp(24px,4vw,56px);min-height:280px;padding:clamp(36px,5vw,64px);transition:background-color .18s;display:grid}.why-us-value:nth-child(odd){border-right:1px solid #343434}.why-us-number{color:#66625c;letter-spacing:-.05em;font-size:clamp(2rem,4vw,4rem);font-weight:650;line-height:.9;transition:color .18s}.why-us-value h3{color:#f3f0e9;letter-spacing:-.035em;margin:0 0 24px;font-size:clamp(1.5rem,2.5vw,2.4rem);font-weight:600;line-height:1.1}.why-us-value p{color:#928d85;max-width:380px;margin-bottom:0;font-size:1rem;line-height:1.65;transition:color .18s}.why-us-value:hover{background:#191918}.why-us-value:hover .why-us-number{color:#d8753b}.why-us-value:hover p{color:#b9b3aa}.about-heading{border-bottom:1px solid #343434;align-items:baseline;gap:clamp(24px,5vw,72px);margin-bottom:clamp(36px,5vw,64px);padding-bottom:28px;display:flex}.about-index{color:#d8753b;letter-spacing:.1em;flex-shrink:0;font-size:.875rem}.about-heading h2{color:#f3f0e9;letter-spacing:-.04em;margin:0;font-size:clamp(2.25rem,4vw,3.5rem);font-weight:500;line-height:1.1}.about-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:clamp(32px,6vw,80px);display:grid}.about-copy{min-width:0}.about-lead{color:#e0dbd2;margin:0 0 28px;font-size:clamp(1.125rem,1.6vw,1.375rem);line-height:1.65}[aria-labelledby=home-seo-title]>.about-lead{max-width:72rem;font-size:1.125rem;font-weight:500;line-height:1.65}@media (width>=701px) and (width<=1200px){[aria-labelledby=home-seo-title]>.about-lead{font-size:1.0625rem}}@media (width<=700px){[aria-labelledby=home-seo-title]>.about-lead{font-size:1rem;line-height:1.65}}.about-support{color:#aaa59d;max-width:52ch;margin:0;font-size:1rem;line-height:1.75}.about-media{aspect-ratio:3/2;background:#20201f;width:100%;position:relative;overflow:hidden}.about-image{object-fit:cover;object-position:center;width:100%;height:100%;display:block;position:absolute;inset:0}.projects-heading{justify-content:space-between;align-items:flex-end;gap:24px 48px;margin-bottom:clamp(40px,6vw,72px);display:flex}.projects-heading h2{color:#f3f0e9;letter-spacing:-.04em;overflow-wrap:anywhere;margin:0;font-size:clamp(2rem,3.8vw,3.5rem);line-height:1.1}.projects-heading p{color:#aaa59d;max-width:34ch;margin:0;font-size:1rem;line-height:1.65}.projects-gallery{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(36px,5vw,64px) clamp(18px,2.5vw,32px);display:grid}.project-item{flex-direction:column;min-width:0;margin:0;display:flex}.project-media{aspect-ratio:4/3;cursor:zoom-in;background:#20201f;border:0;width:100%;padding:0;position:relative;overflow:hidden}.project-image{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .24s;display:block;position:absolute;inset:0}.project-media:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.project-caption{color:#c8c3ba;border-top:1px solid #343434;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;margin-top:16px;padding-top:14px;font-size:1rem;line-height:1.5;display:grid}.project-category{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;font-size:.72rem;font-weight:700}.project-caption h3{min-width:0;color:var(--text);overflow-wrap:anywhere;margin:0;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.3}.project-caption a{white-space:nowrap;align-self:start}@media (hover:hover) and (prefers-reduced-motion:no-preference){.project-media:hover .project-image{transform:scale(1.025)}}.footer-faq{border-bottom:1px solid var(--border);padding-block:clamp(56px,7vw,96px) clamp(40px,6vw,72px);scroll-margin-top:132px}.footer-faq:focus{outline:0}.footer-faq-layout{grid-template-columns:minmax(220px,.75fr) minmax(0,1.65fr);align-items:start;gap:clamp(32px,6vw,104px);display:grid}.footer-faq-intro{position:sticky;top:132px}.footer-faq-intro .section-label{margin:0 0 20px;font-size:.75rem;font-weight:650}.footer-faq-intro h2{color:var(--text);letter-spacing:-.035em;margin:0 0 18px;font-size:clamp(1.9rem,3vw,2.75rem);font-weight:500;line-height:1.08}.footer-faq-intro p:not(.section-label){max-width:34ch;color:var(--muted);margin:0 0 24px;font-size:1rem;line-height:1.7}.site-footer .footer-faq-cta{border-bottom:1px solid var(--accent);min-height:44px;color:var(--text);font-variant-numeric:tabular-nums;align-items:center;gap:10px;padding-bottom:3px;font-size:1.05rem;font-weight:650;text-decoration:none;display:inline-flex}.site-footer .footer-faq-cta span{color:var(--accent)}.site-footer .footer-faq-cta:hover,.site-footer .footer-faq-cta:focus-visible{color:var(--accent-hover);text-decoration:none}.faq-list{border-top:1px solid var(--border)}.faq-item{border-bottom:1px solid var(--border);transition:border-color .18s}.faq-item.is-open{border-bottom-color:var(--accent)}.faq-question{font-size:inherit;margin:0}.faq-toggle{width:100%;min-height:64px;color:var(--muted-strong);font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) 24px;align-items:start;gap:16px;padding:22px 0;font-size:clamp(1rem,1.4vw,1.15rem);font-weight:550;line-height:1.5;transition:color .16s;display:grid}.faq-index{color:var(--accent);letter-spacing:.1em;padding-top:.3em;font-size:.78rem;font-weight:700}.faq-toggle:hover,.faq-item.is-open .faq-toggle{color:var(--text)}.faq-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.faq-symbol{color:var(--accent);text-align:center;font-size:1.5rem;font-weight:400;line-height:1;transition:transform .2s}.faq-item.is-open .faq-symbol{transform:rotate(45deg)}.faq-answer{visibility:hidden;opacity:0;grid-template-rows:0fr;transition:grid-template-rows .24s,opacity .18s,visibility 0s linear .24s;display:grid}.faq-item.is-open .faq-answer{visibility:visible;opacity:1;grid-template-rows:1fr;transition-delay:0s}.faq-answer-inner{min-height:0;overflow:hidden}.faq-answer p{max-width:64ch;color:var(--muted);overflow-wrap:anywhere;margin:0;padding:0 48px 26px 56px;font-size:1rem;line-height:1.75}@media (width<=960px){.footer-faq-layout{grid-template-columns:minmax(0,1fr);gap:32px}.footer-faq-intro{position:static}}@media (width<=700px){.faq-toggle{grid-template-columns:32px minmax(0,1fr) 24px;gap:12px;padding-block:18px}.faq-answer p{padding:0 0 22px 44px}}@media (width<=390px){.faq-toggle{grid-template-columns:minmax(0,1fr) 24px}.faq-index{display:none}.faq-answer p{padding-left:0}}@media (prefers-reduced-motion:reduce){.faq-toggle,.faq-symbol,.faq-answer,.faq-item{transition:none}}.section-label{color:#d8753b;text-transform:uppercase;letter-spacing:.12em}h1,h2,p{margin-top:0}h2{font-size:clamp(2rem,4vw,3.5rem)}.contact-title{letter-spacing:-.035em;margin:0 0 clamp(32px,5vw,64px);font-size:clamp(1.9rem,3.5vw,3.25rem);font-weight:500;line-height:1.15}.contact-layout{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);display:grid}.contact-call{min-width:0}.contact-phone{color:#f3f0e9;letter-spacing:-.045em;width:fit-content;max-width:100%;margin-bottom:28px;padding-block:4px;font-size:clamp(2rem,4.6vw,4rem);font-weight:600;line-height:1.2;text-decoration:none;display:block}.contact-call-button{color:#151515;background:#d8753b;justify-content:space-between;align-items:center;gap:40px;min-height:52px;padding:16px 24px;font-size:1rem;font-weight:650;text-decoration:none;display:inline-flex}.contact-phone:hover{color:#d8753b}.contact-call-button:hover{background:#ee8a4f}.contact-section a:focus-visible,.contact-mobile-bar a:focus-visible{outline-offset:4px;outline:2px solid #ee8a4f}.contact-emergency{border-left:2px solid #d8753b;margin-top:36px;padding-left:18px}.contact-emergency h3{color:#f3f0e9;margin:0 0 8px;font-size:.875rem;font-weight:600}.contact-emergency p{color:#aaa59d;margin:0;font-size:1rem;line-height:1.65}.contact-hours{border-top:1px solid #56534e;align-self:start;padding-top:24px}.contact-hours h3{color:#f3f0e9;margin:0 0 28px;font-size:1.125rem;font-weight:500}.contact-hours dl{margin:0}.contact-hours dl>div{border-bottom:1px solid #343434;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-block:18px;font-size:1rem;line-height:1.5;display:flex}.contact-hours dt{color:#aaa59d}.contact-hours dd{color:#f3f0e9;font-variant-numeric:tabular-nums;margin:0}.contact-mobile-bar{display:none}.site-footer{color:#aaa59d;border-top:1px solid #56534e;padding-block:0 20px}.footer-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1.2fr) repeat(2,minmax(0,.8fr));gap:32px;padding-top:clamp(40px,6vw,72px);display:grid}.footer-grid>*{min-width:0}.footer-grid h2{color:#f3f0e9;text-transform:uppercase;letter-spacing:.06em;margin:0 0 20px;font-size:.95rem;line-height:1.5}.footer-brand h3{margin:24px 0 12px;font-size:.875rem;font-weight:500}.footer-brand p{font-size:1rem;line-height:1.6}.footer-brand address{flex-direction:column;font-size:1rem;font-style:normal;line-height:1.7;display:flex}.footer-column{flex-direction:column;align-items:flex-start;display:flex}.footer-grid a{align-items:center;min-height:44px;padding-block:8px;font-size:1rem;line-height:1.5;display:inline-flex}.site-footer a{color:#c8c3ba;overflow-wrap:anywhere;max-width:100%;text-decoration:none}.site-footer a:hover{color:#ee8a4f;text-underline-offset:5px;text-decoration:underline}.site-footer a:focus-visible{outline-offset:4px;outline:2px solid #d8753b}.footer-hours{margin:0;font-size:1rem;line-height:1.7}.footer-hours>div{flex-wrap:wrap;gap:4px 20px;display:flex}.footer-hours dt{min-width:64px}.footer-hours dd{font-variant-numeric:tabular-nums;margin:0}.footer-emergency-row,.footer-bottom{border-top:1px solid #343434;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:32px;padding-top:24px;display:flex}.footer-emergency-row{gap:16px;margin-top:24px;padding-top:16px}.footer-bottom{gap:16px;margin-top:20px;padding-top:16px}.footer-emergency-row p,.footer-bottom p{margin:0;font-size:1rem;line-height:1.7}.site-footer .footer-phone{color:#d8753b;padding-block:4px;font-size:clamp(1.3rem,2.5vw,1.75rem)}.footer-bottom-copy{align-items:center;gap:14px;display:flex}.footer-bottom a{align-items:center;min-height:44px;display:inline-flex}.site-header{border-bottom-color:var(--header-border);background:var(--bg)}.brand-name,.hero-title,.services-heading h2,.service-title,.service-page-hero h1,.service-page-content h2,.service-page-content h3,.products-heading h2,.product-category h3,.contact-title,.contact-phone,.contact-emergency h3,.contact-hours h3,.contact-hours dd,.footer-grid h2{color:var(--text)}.brand-slogan,.hero-description,.services-intro,.service-page-hero>p:last-child,.service-page-content p,.products-heading p:last-child,.product-category p,.contact-emergency p,.contact-hours dt,.site-footer{color:var(--muted)}.main-nav>a,.nav-dropdown-trigger,.service-page-list,.service-page-aside a,.site-footer a{color:var(--muted-strong)}.main-nav>a:hover,.main-nav>a:focus-visible,.nav-dropdown:hover .nav-dropdown-trigger,.nav-dropdown:focus-within .nav-dropdown-trigger,.service-page-aside a:hover,.service-page-aside a:focus-visible{color:var(--text)}.services-dropdown-list,.service-page-main-media{background:var(--surface)}.services-dropdown-list{border-top-color:var(--accent)}.services-dropdown-list a{border-bottom-color:var(--border);color:var(--muted-strong)}.services-dropdown-list a:hover,.services-dropdown-list a:focus-visible{color:var(--text)}.services-dropdown-list a span,.services-dropdown-list a:hover span,.services-dropdown-list a:focus-visible span,.section-label,.hero-title-accent,.service-number,.service-arrow,.product-category>span,.products-cta span,.contact-phone:hover,.site-footer .footer-phone{color:var(--accent)}.main-nav>a:after,.nav-dropdown-trigger:after,.service-page-list li:before{background:var(--accent)}.call-button,.hero-cta-primary,.service-page-call,.contact-call-button{color:var(--on-accent);background:var(--accent)}.call-button:hover,.call-button:focus-visible,.hero-cta-primary:hover,.hero-cta-primary:focus-visible,.service-page-call:hover,.service-page-call:focus-visible,.contact-call-button:hover{background:var(--accent-hover)}.hero-cta-secondary{border-color:var(--border-strong);color:var(--text)}.hero-cta-secondary:hover,.hero-cta-secondary:focus-visible{border-color:var(--accent);color:var(--accent)}.hero-media:before,.hero-media:after,.hero-footnote,.services-list,.service-page-hero,.service-page-content section,.service-page-aside a,.products-list,.product-category,.contact-hours,.contact-hours dl>div,.site-footer,.footer-emergency-row,.footer-bottom{border-color:var(--border)}.service-item{border-bottom-color:var(--border)}.service-item:hover{border-bottom-color:var(--accent);background:var(--row-hover)}.service-row:hover .service-title{color:var(--text)}.service-row:hover .service-summary{color:var(--muted-strong)}.service-summary,.service-breadcrumb{color:var(--muted)}.products-cta{border-bottom-color:var(--accent);color:var(--text)}.service-page-call,.contact-call-button{background:var(--accent)}.service-page-aside{border-top-color:var(--accent)}.contact-emergency{border-left-color:var(--accent)}.site-footer{background:var(--footer-bg)}.site-footer a:hover{color:var(--accent-hover)}[data-theme=light] .site-footer{background:var(--bg);color:#68635c;border-top-color:#bdb4a7}[data-theme=light] .site-footer .footer-grid h2{color:#1b1b1a}[data-theme=light] .site-footer a{color:#46423d}[data-theme=light] .site-footer .footer-emergency-row,[data-theme=light] .site-footer .footer-bottom{border-top-color:#bdb4a7}[data-theme=light] .site-footer .footer-phone{color:#b95725}.footer-bottom-copy .footer-credit{color:var(--muted);border-left:1px solid var(--border);padding-left:14px;font-size:.8rem;line-height:1.5}[data-theme=light] .why-us-value:hover h3,[data-theme=light] .why-us-value:focus-within h3{color:var(--surface)}[data-theme=light] .why-us-value:hover p,[data-theme=light] .why-us-value:focus-within p{color:var(--surface-soft)}.theme-toggle{border:1px solid var(--border-strong);width:38px;height:38px;color:var(--text);cursor:pointer;background:0 0;flex:0 0 38px;place-items:center;padding:0;font-size:1rem;line-height:1;display:inline-grid}.theme-toggle:hover{border-color:var(--accent);color:var(--accent)}.theme-toggle:focus-visible{outline:2px solid var(--accent-hover);outline-offset:4px}.mobile-theme-toggle{display:none}.why-us-heading h2,.why-us-value h3,.about-heading h2,.about-lead,.projects-heading h2{color:var(--text)}.why-us-heading-copy>p,.why-us-value p,.about-support,.projects-heading p,.project-caption{color:var(--muted)}.why-us-values,.why-us-value,.about-media{border-color:var(--border)}@media (width<=1024px){.site-header{flex-wrap:nowrap;align-items:center;gap:0;min-height:88px;padding-block:20px}.desktop-header-actions{display:none}.mobile-theme-toggle{border:0;border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;width:100%;height:auto;margin-top:20px;padding:17px 0;font-size:1rem;font-weight:600;display:flex}.mobile-menu-toggle{color:#f3f0e9;cursor:pointer;background:0 0;border:1px solid #4a4844;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:48px;height:48px;padding:0;display:inline-flex}.mobile-menu-toggle span{background:currentColor;width:20px;height:1px;transition:transform .18s}.mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px)rotate(45deg)}.mobile-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px)rotate(-45deg)}.mobile-menu-toggle:focus-visible{outline-offset:4px;outline:2px solid #ee8a4f}.mobile-menu{visibility:hidden;opacity:0;background:#151515;border-bottom:1px solid #343434;flex-basis:100%;grid-template-rows:0fr;width:100%;transition:grid-template-rows .24s,opacity .18s,visibility 0s linear .24s;display:grid;position:absolute;top:100%;left:0}.mobile-menu.is-open{visibility:visible;opacity:1;grid-template-rows:1fr;transition-delay:0s}.mobile-menu-inner{min-width:0;min-height:0;max-height:calc(100dvh - 112px - var(--mobile-cta-space));overscroll-behavior:contain;scrollbar-gutter:stable;overflow-y:auto}.mobile-menu.is-open .mobile-menu-inner{padding-bottom:calc(var(--mobile-cta-space) + 16px)}.mobile-nav{flex-direction:column;padding-top:28px;display:flex}.mobile-nav>a,.mobile-services-toggle{color:#d0cbc2;width:100%;font:inherit;text-align:left;background:0 0;border:0;border-bottom:1px solid #343434;justify-content:space-between;align-items:center;padding:17px 0;font-size:1rem;font-weight:600;text-decoration:none;display:flex}.mobile-services-toggle{cursor:pointer}.mobile-services-toggle>span:last-child{color:#d8753b;font-size:1.25rem;font-weight:400}.mobile-nav a:focus-visible,.mobile-services-toggle:focus-visible,.mobile-call-cta:focus-visible{outline-offset:-2px;outline:2px solid #ee8a4f}.mobile-services-panel{visibility:hidden;opacity:0;grid-template-rows:0fr;transition:grid-template-rows .22s,opacity .16s,visibility 0s linear .22s;display:grid}.mobile-services-panel.is-open{visibility:visible;opacity:1;grid-template-rows:1fr;transition-delay:0s}.mobile-services-inner{min-width:0;overflow:hidden}.mobile-services-inner a{color:#9f9a92;border-bottom:1px solid #2f2f2d;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:13px 16px;font-size:.875rem;line-height:1.4;text-decoration:none;display:grid}.mobile-services-inner a span{color:#d8753b;font-size:.75rem}.mobile-call-cta{color:#171717;background:#d8753b;justify-content:space-between;align-items:center;gap:20px;margin-top:28px;padding:18px;text-decoration:none;display:flex}.mobile-call-cta span{letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700}.mobile-call-cta strong{white-space:nowrap;font-size:1rem}.page-section,.service-item,.footer-faq{scroll-margin-top:112px}.footer-faq-intro{top:108px}}@media (width<=1200px){.hero-section{grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);column-gap:40px}.service-row{grid-template-columns:64px minmax(200px,1fr) minmax(220px,.85fr) 24px;gap:24px}.why-us-value{grid-template-columns:64px minmax(0,1fr);gap:24px;min-height:250px;padding:36px 28px}}@media (width<=700px){.products-heading{grid-template-columns:1fr;gap:20px}.products-heading .section-label{padding-top:0}.products-list{grid-template-columns:1fr}.product-category,.product-category:nth-child(odd),.product-category:nth-child(2n){border-right:0;padding:24px 0}.service-page{width:min(100% - 32px,1200px);padding-top:clamp(32px,8vw,48px)}.service-breadcrumb{margin-bottom:clamp(24px,6vw,32px)}.service-page-hero h1{font-size:clamp(2.15rem,10vw,3rem);line-height:1.04}.service-page-layout{flex-direction:column;gap:64px;padding-top:64px;display:flex}.service-page-content section{margin-bottom:48px;padding-bottom:48px}.service-page-aside{width:100%;position:static}.site-header{width:min(100% - 32px,1200px)}.mobile-call-cta{flex-direction:column;align-items:flex-start;gap:6px}.page-section{min-height:300px;padding-block:72px}.hero-section{grid-template-rows:auto auto auto;grid-template-columns:1fr;min-height:auto;padding-top:clamp(28px,7vw,36px)}.hero-content{padding-bottom:56px}.hero-title span:nth-child(2){padding-left:0}.hero-cta-group{flex-direction:column}.hero-cta{width:100%}.hero-media{margin:0 0 56px 20px;padding-top:28px;padding-left:20px}.hero-media-frame{aspect-ratio:16/11;max-height:390px}.hero-media-image{object-position:center 58%}.hero-footnote{flex-wrap:wrap;gap:12px 24px}.services-heading{margin-bottom:56px;display:block}.services-heading .section-label{margin-bottom:28px;padding-top:0}.services-heading h2{margin-bottom:24px;font-size:clamp(1.9rem,8.5vw,2.6rem);line-height:1.04}.service-row{grid-template-columns:48px minmax(0,1fr) 24px;gap:8px 16px;min-height:0;padding-block:28px}.service-number{grid-area:1/1;align-self:start;padding-top:3px;font-size:1.5rem}.service-title{grid-area:1/2}.service-summary{grid-area:2/2/auto/-1;max-width:520px;padding-right:24px}.service-arrow{text-align:right;grid-area:1/3;align-self:start}.why-us-heading{margin-bottom:56px;display:block}.why-us-heading .section-label{margin-bottom:28px;padding-top:0}.why-us-heading h2{margin-bottom:24px}.why-us-values{grid-template-columns:1fr}.why-us-value{grid-template-columns:52px minmax(0,1fr);gap:20px;min-height:0;padding:36px 0}.why-us-value:nth-child(odd){border-right:0}.why-us-number{font-size:1.75rem}.why-us-value h3{margin-bottom:16px}.about-heading{flex-direction:column;gap:20px}.about-layout{grid-template-columns:minmax(0,1fr);gap:36px}.projects-heading{flex-direction:column;align-items:flex-start}.projects-gallery{grid-template-columns:minmax(0,1fr);gap:36px}.projects-gallery .project-item{grid-column:1;margin:0}.projects-gallery .project-media{aspect-ratio:4/3}.contact-layout{grid-template-columns:minmax(0,1fr);gap:48px}.contact-call-button{width:100%}.contact-mobile-bar{z-index:900;inset-inline:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:#151515;border-top:1px solid #343434;align-items:center;gap:8px;display:flex;position:fixed;bottom:0}.contact-mobile-bar a{color:#151515;background:#d8753b;flex:1 1 0;justify-content:space-between;align-items:center;gap:16px;min-width:0;min-height:44px;padding:10px 16px;font-size:1rem;font-weight:650;line-height:1.5;text-decoration:none;display:flex}.contact-mobile-bar-call{flex-grow:1.25}.contact-mobile-bar-whatsapp{border:1px solid #56534e;justify-content:center}#root{padding-bottom:calc(81px + env(safe-area-inset-bottom,0px))}html{scroll-padding-bottom:calc(81px + env(safe-area-inset-bottom,0px))}}.brand-copy{flex-direction:column;gap:7px;min-width:0;display:flex;overflow:hidden}.brand-icon{flex:0 0 44px;width:44px;height:44px;display:block}.brand-icon img{object-fit:contain;width:100%;height:100%;transition:filter .18s;display:block}[data-theme=light] .brand-icon img{filter:invert()hue-rotate(180deg)}.contact-address{overflow-wrap:anywhere;margin-top:32px;font-style:normal;line-height:1.7}.contact-address a{color:#d8753b;align-items:center;min-height:44px;display:inline-flex}.contact-address p{margin:12px 0}@media (width<=960px){.hero-section{grid-template-columns:minmax(0,1fr);min-height:auto}.hero-title{font-size:clamp(2.75rem,6vw,4rem)}.hero-media{margin:0 0 48px 20px}.hero-media-frame{aspect-ratio:16/11;max-height:500px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=961px) and (width<=1024px){.hero-title{font-size:clamp(2.75rem,6vw,4rem)}}@media (width<=700px){.footer-grid{grid-template-columns:minmax(0,1fr);gap:36px}.brand{border-left:0;gap:6px;max-width:calc(100% - 68px);padding-left:0}.brand-name{letter-spacing:.06em;font-size:clamp(.75rem,3.3vw,1rem)}.brand-slogan{letter-spacing:0;font-size:.6875rem;line-height:1.3}.brand-icon{flex-basis:32px;width:32px;height:32px}.brand-icon img{width:100%;height:100%}.hero-title{overflow-wrap:anywhere;font-size:clamp(1.9rem,8.5vw,2.6rem);line-height:.92}.hero-eyebrow{letter-spacing:.08em}.contact-phone{font-size:clamp(1.7rem,8vw,3rem)}}@media (width<=360px){.brand-slogan{display:none}}@media (width<=1024px){.mobile-menu{border-bottom-color:var(--border);background:var(--bg)}.mobile-menu-toggle{border-color:var(--border-strong);color:var(--text)}.mobile-nav>a,.mobile-services-toggle{border-bottom-color:var(--border);color:var(--muted-strong)}.mobile-services-inner a{border-bottom-color:var(--border);color:var(--muted)}.mobile-services-toggle>span:last-child,.mobile-services-inner a span{color:var(--accent)}.mobile-call-cta{color:var(--on-accent);background:var(--accent)}.mobile-theme-toggle{border-bottom-color:var(--border);color:var(--text)}}@media (width<=700px){.contact-mobile-bar{border-top-color:var(--border);background:var(--bg)}.contact-mobile-bar a{color:var(--on-accent);background:var(--accent)}.contact-mobile-bar a.contact-mobile-bar-whatsapp{color:var(--text);border-color:var(--border-strong);background:0 0}}.main-nav>a.is-active,.nav-dropdown-trigger[aria-current=page]{color:var(--text)}.main-nav>a.is-active:after,.nav-dropdown-trigger[aria-current=page]:after{transform-origin:0;transform:scaleX(1)}.content-page{width:min(100% - 40px,1200px);margin-inline:auto;padding:clamp(64px,5vw,80px) 0 clamp(88px,12vw,160px)}.content-page-hero{border-bottom:1px solid var(--border-strong);flex-direction:column;gap:clamp(40px,6vw,64px);padding-bottom:clamp(52px,8vw,96px);display:flex}.content-page-hero-content{width:100%}.content-page-hero-media{width:100%;position:relative}.content-page-hero-media:before{content:"";border-top:2px solid var(--accent);border-right:2px solid var(--accent);z-index:0;width:64px;height:64px;position:absolute;top:-12px;right:-12px}.content-page-hero-media img{object-fit:cover;object-position:center;z-index:1;width:100%;height:clamp(240px,40vw,320px);position:relative}@media (width>=992px){.content-page-hero{flex-direction:row;justify-content:space-between;align-items:center}.content-page-hero-content{flex:0 0 55%;max-width:55%}.content-page-hero-media{flex:0 0 38%;max-width:38%}}.content-page-hero .section-label{margin-bottom:24px}.content-page-hero h1,.not-found-page h1,.applications-page .projects-heading h1{max-width:860px;color:var(--text);letter-spacing:-.065em;overflow-wrap:anywhere;margin:0 0 28px;font-size:clamp(2.5rem,5vw,4rem);font-weight:620;line-height:.92}.content-page-hero>p:last-child,.not-found-page>p:not(.section-label){max-width:680px;color:var(--muted);margin:0;font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.75}.services-hub-list{padding-top:clamp(56px,8vw,96px)}.services-hub-item{border-bottom:1px solid var(--border);color:inherit;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:clamp(20px,4vw,56px);padding:32px 0;text-decoration:none;transition:border-color .18s,background-color .18s;display:grid}.services-hub-item>span:first-child{color:var(--accent);letter-spacing:.1em;font-size:1rem;font-weight:700}.services-hub-copy{min-width:0}.services-hub-item h2,.about-page-content h2,.contact-page-grid h2{color:var(--text);letter-spacing:-.035em;margin:0 0 10px;font-size:clamp(1.45rem,2.8vw,2.35rem);line-height:1.1}.services-hub-description,.about-page-content p,.contact-page-grid p{max-width:680px;color:var(--muted);margin:0;line-height:1.75;display:block}.services-hub-action{border-bottom:1px solid var(--accent);min-height:44px;color:var(--text);white-space:nowrap;align-items:center;gap:10px;padding-bottom:3px;font-weight:650;display:inline-flex}.services-hub-action>span{color:var(--accent)}.services-hub-item:hover,.services-hub-item:focus-visible{border-bottom-color:var(--accent);background:var(--row-hover)}.services-hub-item:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.services-hub-item:hover .services-hub-action,.services-hub-item:focus-visible .services-hub-action{color:var(--accent-hover)}.content-page-links a,.content-page-cta a,.section-route-link,.service-page-contact-link{border-bottom:1px solid var(--accent);min-height:44px;color:var(--text);align-items:center;gap:10px;padding-bottom:3px;font-weight:650;text-decoration:none;display:inline-flex}.content-page-links a span,.content-page-cta a span,.section-route-link span,.service-page-contact-link span{color:var(--accent)}.content-page-links a:hover,.content-page-links a:focus-visible,.content-page-cta a:hover,.content-page-cta a:focus-visible,.section-route-link:hover,.section-route-link:focus-visible,.service-page-contact-link:hover,.service-page-contact-link:focus-visible{color:var(--accent-hover)}.content-page-cta{border-top:1px solid var(--border-strong);justify-content:space-between;align-items:center;gap:28px;margin-top:clamp(52px,8vw,96px);padding-top:28px;display:flex}.content-page-cta p{max-width:620px;color:var(--muted);margin:0;line-height:1.7}.about-page-layout{padding-top:clamp(56px,8vw,96px);display:block}.about-page-content{max-width:900px}.about-page-content section{border-bottom:1px solid var(--border);margin-bottom:36px;padding-bottom:36px}.content-page-links{flex-wrap:wrap;gap:20px 32px;margin-top:40px;display:flex}.applications-page{padding-block:0}.applications-page .projects-section{padding-block:clamp(64px,5vw,80px)}.applications-page .projects-heading{align-items:flex-start}.project-caption a{color:inherit;gap:8px;text-decoration:none;display:inline-flex}.project-caption a span{color:var(--accent)}.project-caption a:hover,.project-caption a:focus-visible{color:var(--accent-hover)}.contact-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(48px,8vw,112px);padding-top:clamp(56px,8vw,96px);display:grid}.contact-page-grid section{border-bottom:1px solid var(--border);padding:36px 0}.contact-page-grid address{flex-direction:column;align-items:flex-start;gap:8px;font-style:normal;display:flex}.contact-page-grid a{min-height:44px;color:var(--muted-strong);line-height:1.6}.contact-page-grid .contact-page-phone{color:var(--accent);letter-spacing:-.035em;font-size:clamp(1.75rem,4vw,3.5rem);font-weight:650;text-decoration:none}.contact-page-grid dl{margin:24px 0 0}.contact-page-grid dl>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:14px 0;display:flex}.contact-page-grid dt{color:var(--muted)}.contact-page-grid dd{color:var(--text);font-variant-numeric:tabular-nums;margin:0}.contact-page-emergency{border-top:2px solid var(--accent)}.not-found-page{min-height:min(70vh,720px)}.not-found-page .section-label{margin-bottom:28px}.not-found-page .content-page-links{margin-top:44px}.service-page-contact-link{margin:16px 0 0 20px;font-size:.9rem}.footer-column h3{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:28px 0 8px;font-size:.75rem;font-weight:700}@media (width<=1024px){.mobile-services-heading{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 52px;display:grid}.mobile-services-heading>a,.mobile-services-heading .mobile-services-toggle{min-height:58px;color:var(--muted-strong);font:inherit;background:0 0;border:0;align-items:center;font-size:1rem;font-weight:600;text-decoration:none;display:flex}.mobile-services-heading .mobile-services-toggle{border-left:1px solid var(--border);justify-content:center}.mobile-services-heading.is-active>a,.mobile-nav>a.is-active{color:var(--accent)}}@media (width<=700px){.content-page{width:min(100% - 32px,1200px);padding-top:clamp(32px,8vw,48px)}.applications-page .projects-section{padding-block:clamp(32px,8vw,48px)}.content-page-hero h1,.not-found-page h1,.applications-page .projects-heading h1{font-size:clamp(2.25rem,10vw,2.65rem)}.services-hub-item{grid-template-columns:44px minmax(0,1fr);gap:16px;padding:24px 0}.services-hub-action{grid-column:2;justify-self:start}.content-page-cta,.contact-page-grid{grid-template-columns:minmax(0,1fr)}.content-page-cta{flex-direction:column;align-items:flex-start}.contact-page-grid{display:grid}.service-page-contact-link{margin-left:0}}.service-row{text-decoration:none}.contact-page-grid a,.contact-address a,.footer-brand address a{overflow-wrap:anywhere;max-width:100%}@media (width>=1025px){.projects-section.is-summary .projects-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=701px) and (width<=1200px){.page-section{padding-block:clamp(76px,9vw,104px)}.hero-section{padding-top:clamp(36px,3.5vw,44px)}.projects-gallery,.projects-section.is-summary .projects-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px clamp(40px,7vw,80px)}}@media (width<=700px){.page-section{min-height:0;padding-block:56px}.hero-section{padding-top:clamp(28px,7vw,36px)}.hero-content{padding-bottom:44px}.hero-title{font-size:clamp(2.25rem,10vw,2.75rem);line-height:.94}.hero-description{font-size:1rem}.hero-cta-secondary{align-self:flex-start;width:auto}.hero-media{margin:0 0 44px 10px;padding-top:24px;padding-left:14px}.hero-media-frame{aspect-ratio:4/3;max-height:310px}.services-heading,.why-us-heading{margin-bottom:44px}.services-heading h2,.why-us-heading h2,.about-heading h2,.projects-heading h2,.contact-title{font-size:clamp(2.15rem,10.5vw,3.25rem);line-height:1}.services-heading h2,.why-us-heading h2{font-size:clamp(1.9rem,8.5vw,2.6rem);line-height:1.04}.about-heading h2,.projects-heading h2{font-size:clamp(1.9rem,8vw,2.5rem);line-height:1.08}.contact-title{font-size:clamp(1.9rem,8vw,2.6rem);line-height:1.08}.service-row{min-height:76px;padding-block:18px}.services-summary-list .service-summary{display:none}.about-layout{gap:30px}.about-media{aspect-ratio:4/3;max-height:300px}.projects-gallery,.projects-section.is-summary .projects-gallery{grid-template-columns:minmax(0,1fr);gap:40px}.project-caption{grid-template-columns:minmax(0,1fr) auto}.product-category,.product-category:nth-child(odd),.product-category:nth-child(2n){padding-block:22px}.content-page{padding-bottom:88px}.content-page-hero{padding-bottom:48px}.content-page-hero h1,.not-found-page h1,.applications-page .projects-heading h1{font-size:clamp(2.25rem,10vw,2.65rem);line-height:.96}.services-hub-item h2,.about-page-content h2,.contact-page-grid h2{font-size:clamp(1.3rem,7vw,1.85rem)}.contact-page-grid dl>div{flex-direction:column;align-items:flex-start;gap:4px}.footer-grid{gap:28px}.footer-emergency-row,.footer-bottom{flex-direction:column;align-items:flex-start;gap:10px;margin-top:24px;padding-top:18px}.footer-bottom-copy{flex-direction:column;align-items:flex-start;gap:4px}.footer-bottom-copy .footer-credit{border-left:0;padding-left:0}.not-found-page .content-page-links{flex-direction:column;align-items:flex-start;gap:12px}}@media (width>=391px) and (width<=700px){.footer-column[aria-labelledby=footer-services-title]{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;display:grid}.footer-column[aria-labelledby=footer-services-title] h2{grid-column:1/-1}}@media (width<=390px){.hero-cta-primary,.contact-call-button{width:100%}.contact-mobile-bar a{gap:8px;padding-inline:10px;font-size:.9rem}.project-caption{grid-template-columns:minmax(0,1fr)}.project-caption a{justify-self:start}.service-row{grid-template-columns:42px minmax(0,1fr) 20px;gap:12px}}.service-page-hero>p:last-child{color:var(--muted-strong)}@media (width<=1024px){.service-page-hero-grid{grid-template-columns:minmax(0,1fr);gap:0}.service-page-hero{max-width:760px}.service-page-main-media{max-width:720px;margin-top:clamp(32px,5vw,56px)}}@media (width<=700px){.service-page{padding-top:clamp(32px,8vw,48px)}.service-breadcrumb{margin-bottom:clamp(24px,6vw,32px)}.service-page-hero{padding-bottom:36px}.service-page-main-media{aspect-ratio:4/3;width:100%;max-height:320px;margin-top:28px}.service-page-hero h1{letter-spacing:-.04em;font-size:clamp(2.25rem,9vw,2.65rem);line-height:1.06}.service-page-hero>p:last-child{font-size:1rem;line-height:1.7}}@media (width<=390px){.service-page-main-media{max-height:280px}}.project-lightbox{z-index:2100;background:#0a0a0ae0;place-items:center;padding:clamp(16px,4vw,56px);display:grid;position:fixed;inset:0}.project-lightbox-dialog{outline:0;width:min(100%,1120px);max-height:100%;display:grid;position:relative}.project-lightbox-figure{grid-template-rows:minmax(0,1fr) auto;width:100%;max-height:calc(100dvh - clamp(32px,8vw,112px));margin:0;display:grid}.project-lightbox-figure img{object-fit:contain;object-position:center;width:100%;min-height:0;max-height:calc(100dvh - clamp(108px,14vw,176px));display:block}.project-lightbox-figure figcaption{color:#f3f0e9;justify-content:space-between;align-items:baseline;gap:12px 28px;padding:14px 60px 0;display:flex}.project-lightbox-figure figcaption span{color:#d8753b;letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:700}.project-lightbox-figure figcaption strong{text-align:right;font-size:clamp(1rem,2vw,1.25rem);line-height:1.35}.project-lightbox-close,.project-lightbox-control{z-index:1;color:#f3f0e9;cursor:pointer;width:48px;height:48px;font:inherit;background:#151515cc;border:1px solid #f3f0e973;place-items:center;padding:0;transition:border-color .16s,color .16s,background-color .16s;display:inline-grid;position:absolute}.project-lightbox-close{font-size:1.8rem;line-height:1;top:0;right:0}.project-lightbox-control{font-size:1.4rem;top:calc(50% - 24px)}.project-lightbox-previous{left:0}.project-lightbox-next{right:0}.project-lightbox-close:hover,.project-lightbox-close:focus-visible,.project-lightbox-control:hover,.project-lightbox-control:focus-visible{color:#d8753b;border-color:#d8753b;outline:0}@media (width<=700px){.project-lightbox{padding:12px}.project-lightbox-figure{max-height:calc(100dvh - 24px)}.project-lightbox-figure img{max-height:calc(100dvh - 116px)}.project-lightbox-figure figcaption{flex-direction:column;align-items:flex-start;gap:4px;padding:10px 56px 0}.project-lightbox-figure figcaption strong{text-align:left}.project-lightbox-close,.project-lightbox-control{width:44px;height:44px}.project-lightbox-control{top:calc(50% - 22px)}}@media (prefers-reduced-motion:reduce){.project-lightbox-close,.project-lightbox-control{transition:none}}.service-related-projects{border-top:1px solid var(--border-strong);margin:0 0 clamp(52px,7vw,80px);padding:clamp(40px,6vw,64px) 0 0}.service-related-heading{max-width:720px;margin-bottom:32px}.service-related-heading .section-label{margin-bottom:14px}.service-related-heading h2{margin:0}.service-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;display:grid}.service-related-item{min-width:0;margin:0}.service-related-media{aspect-ratio:4/3;background:var(--surface);cursor:zoom-in;border:0;width:100%;padding:0;display:block;overflow:hidden}.service-related-media img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .18s;display:block}.service-related-media:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.service-related-item figcaption{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;margin-top:14px;padding-top:12px;display:grid}.service-related-item figcaption>span{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;font-size:.7rem;font-weight:700}.service-related-item h3{color:var(--text);margin:0;font-size:1rem;line-height:1.35}.service-related-item a{color:var(--muted-strong);white-space:nowrap;align-self:start;font-size:.84rem;text-decoration:none}.service-related-item a span{color:var(--accent)}.service-related-item a:hover,.service-related-item a:focus-visible{color:var(--accent-hover)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.service-related-media:hover img{transform:scale(1.02)}}@media (width<=700px){.service-related-grid{grid-template-columns:minmax(0,1fr);gap:28px}.service-related-item h3{font-size:1.05rem}}@media (width<=390px){.service-related-item figcaption{grid-template-columns:minmax(0,1fr)}.service-related-item a{justify-self:start}}.skip-link{z-index:3000;color:var(--on-accent);background:var(--accent);padding:12px 18px;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .16s;position:fixed;top:16px;left:16px;transform:translateY(calc(-100% - 24px))}.skip-link:focus-visible{outline:2px solid var(--text);outline-offset:2px;transform:none}main:focus{outline:0}@media (width>=1680px){.site-header,.site-footer,.page-section,.content-page,.service-page{width:min(100% - 48px,1320px)}}@media (width>=1920px){html{font-size:17px}}.brand{min-height:44px}.site-footer .footer-phone{align-items:center;min-height:44px;display:inline-flex}.contact-phone{align-items:center;min-height:44px;display:flex}.service-breadcrumb a{padding-block:14px}.project-caption a,.service-related-item a{margin-block:-14px;padding-block:14px}.consent-banner{z-index:1500;right:16px;bottom:calc(16px + var(--mobile-cta-space));border:1px solid var(--border-strong);border-top:2px solid var(--accent);max-width:440px;color:var(--text);background:var(--surface);margin-left:auto;padding:20px 22px;position:fixed;left:16px;box-shadow:0 18px 45px #00000052}.consent-banner p{color:var(--muted-strong);margin:0 0 14px;font-size:.95rem;line-height:1.6}.consent-banner p a{color:var(--text);text-underline-offset:4px;text-decoration:underline}.consent-banner-actions{flex-wrap:wrap;gap:10px;display:flex}.consent-banner button{border:1px solid var(--border-strong);min-height:44px;color:var(--text);font:inherit;cursor:pointer;background:0 0;padding:10px 18px;font-size:.9rem;font-weight:650;transition:border-color .16s,color .16s,background-color .16s}.consent-banner button:hover,.consent-banner button:focus-visible{border-color:var(--accent);color:var(--accent);outline:0}.consent-banner .consent-accept{border-color:var(--accent);color:var(--on-accent);background:var(--accent)}.consent-banner .consent-accept:hover,.consent-banner .consent-accept:focus-visible{color:var(--on-accent);background:var(--accent-hover);border-color:var(--accent-hover)}.consent-banner button:focus-visible{outline:2px solid var(--accent-hover);outline-offset:3px}.footer-consent-reset{min-height:44px;color:var(--muted-strong);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;padding:8px 0;font-size:1rem;line-height:1.5;display:inline-flex}.footer-consent-reset:hover,.footer-consent-reset:focus-visible{color:var(--accent-hover);text-underline-offset:5px;outline:0;text-decoration:underline}[data-theme=light] .consent-banner{box-shadow:0 18px 45px #1b1b1a29}@media (width<=700px){.consent-banner{max-width:none;padding:16px 18px;left:12px;right:12px}.consent-banner button{flex:auto}}@media (prefers-reduced-motion:reduce){.consent-banner button{transition:none}}
