:root{--bg:#f3f0e9;--paper:#fbf8f1;--graphite:#202321;--muted:#6f716c;--soft:#d8d1c5;--line:#20232129;--copper:#b86b36;--copper-strong:#d18448;--white:#fffaf2;--header-h:76px;--font-sans:"Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-display:"Georgia", "Times New Roman", serif;--font-sans-fallback:"Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-display-fallback:"Georgia", "Times New Roman", serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);background:var(--bg);color:var(--graphite)}body{font-family:var(--font-sans), var(--font-sans-fallback);font-size-adjust:from-font;background:var(--bg);color:var(--graphite);letter-spacing:0;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,h3,p{margin-top:0}.site-header{z-index:50;height:var(--header-h);color:var(--white);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141614b8;border-bottom:1px solid #fffaf233;align-items:center;display:grid;position:fixed;inset:0 0 auto}.nav{justify-content:space-between;align-items:center;gap:24px;width:min(1180px,100% - 40px);margin:0 auto;display:flex}.brand{align-items:center;gap:12px;font-weight:900;display:inline-flex}.brand-mark{width:42px;height:42px;color:var(--copper-strong);font-family:var(--font-display), var(--font-display-fallback);border:1px solid;place-items:center;display:grid}.brand-text{font-size:13px}.nav-links{align-items:center;gap:24px;font-size:13px;font-weight:800;display:flex}.nav-links a{white-space:nowrap}.nav-links a:hover,.nav-links a:focus-visible{color:var(--copper-strong)}.nav-cta{min-height:42px;color:var(--graphite);background:var(--copper);align-items:center;padding:0 16px;display:inline-flex}.hero{min-height:100svh;color:var(--white);background:linear-gradient(90deg,#121412e0,#121412a8 45%,#1214122e),linear-gradient(#1214120f 46%,#1214129e),url(/assets/hero-construction.jpg) 50%/cover;align-items:end;display:grid;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;opacity:.48;background:repeating-linear-gradient(90deg,#ffffff0e 0 1px,#0000 1px 25%);position:absolute;inset:0}.hero-inner{z-index:1;width:min(1180px,100% - 40px);padding:calc(var(--header-h) + 56px) 0 120px;grid-template-columns:minmax(0,840px);align-items:end;gap:48px;margin:0 auto;display:grid;position:relative}.hero-copy{gap:0;min-width:0;display:grid}.kicker{color:var(--copper-strong);text-transform:uppercase;margin:0 0 18px;font-size:12px;font-weight:900}.hero h1{font-family:var(--font-display), var(--font-display-fallback);letter-spacing:0;-webkit-hyphens:none;hyphens:none;white-space:normal;text-wrap:balance;gap:10px;max-width:760px;margin:0;line-height:1;display:grid}.hero-title-prefix,.hero-title-brand{display:block}.hero-title-prefix{color:var(--copper-strong);font-family:var(--font-sans), var(--font-sans-fallback);font-size:clamp(21px,2vw,34px);font-weight:900;line-height:1.08}.hero-title-brand{color:var(--white);text-shadow:0 14px 42px #0000004d;font-size:clamp(54px,6.8vw,96px);line-height:.94}.hero-entity{color:#fffaf2d6;max-width:680px;margin:22px 0 0;font-size:clamp(18px,2vw,28px);font-weight:650;line-height:1.2}.hero-description,.lead{color:var(--muted);font-size:18px;line-height:1.62}.hero-description{color:#fffaf2c7;max-width:650px}.hero-points,.request-points{margin:26px 0 0;padding:0;list-style:none}.hero-points{flex-wrap:wrap;gap:10px;max-width:720px;display:flex}.hero-points li{color:#fffaf2e0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow-wrap:break-word;background:#fffaf214;border:1px solid #fffaf229;align-items:center;min-width:0;min-height:40px;padding:0 16px;display:inline-flex}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.btn{cursor:pointer;border:1px solid;justify-content:center;align-items:center;min-height:52px;padding:0 22px;font-weight:900;display:inline-flex}.btn-primary{border-color:var(--copper);color:var(--graphite);background:var(--copper)}.btn:disabled{cursor:wait;opacity:.68}.btn-ghost{color:inherit;background:0 0}.hero-note{color:#fffaf2c2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#151715b8,#15171580);border:1px solid #fffaf22e;align-content:start;align-self:stretch;gap:18px;padding:28px;display:grid;box-shadow:0 24px 64px #0000002e}.hero-note-top{align-items:center;gap:14px;display:flex}.hero-note span,.service-card-index,.process-card span,.portfolio-card strong{color:var(--copper-strong);font-weight:900}.hero-note-title{color:var(--white);margin:0;font-weight:800}.hero-note-list{gap:14px;margin:0;display:grid}.hero-note-list div{border-top:1px solid #fffaf21f;gap:4px;padding-top:14px;display:grid}.hero-note-list dt{color:#fffaf28f;text-transform:uppercase;font-size:12px}.hero-note-list dd{color:var(--white);margin:0;font-size:15px;line-height:1.5}.section,.page-hero,.legal-page{width:min(1180px,100% - 40px);margin:0 auto}.section{padding:110px 0}.section-head{max-width:860px;margin-bottom:34px}.subpage{padding-top:var(--header-h)}.subpage-locked{min-height:100svh;overflow:clip}.page-hero,.legal-page{padding:90px 0 54px}.page-hero h1,.legal-page h1,.section h2{font-family:var(--font-display), var(--font-display-fallback);letter-spacing:0;-webkit-hyphens:none;hyphens:none;overflow-wrap:normal;word-break:normal;font-size:clamp(42px,6vw,86px);line-height:.98}.split{grid-template-columns:.8fr 1.2fr;align-items:start;gap:64px;display:grid}.service-grid,.portfolio-grid,.service-detail-grid,.admin-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.service-grid,.services-overview-grid,.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card,.portfolio-card,.detail-panel,.admin-card,.lead-item{border:1px solid var(--line);background:linear-gradient(#fbf8f1eb,#fbf8f1bd);min-inline-size:0;padding:28px}.service-card h3,.portfolio-card h3,.portfolio-card h2,.detail-panel h2{-webkit-hyphens:none;hyphens:none;overflow-wrap:normal;word-break:normal;text-wrap:balance;margin-bottom:12px;font-size:24px}ul{padding-left:20px;line-height:1.8}.text-link{color:var(--graphite);align-items:center;gap:10px;margin-top:28px;font-weight:800;display:inline-flex}.text-link:after{content:"";opacity:.45;background:currentColor;block-size:1px;inline-size:30px}.home-strip{z-index:2;margin-top:0;padding-top:48px;position:relative}.home-strip-inner{border:1px solid var(--line);background:linear-gradient(#fbf8f1f5,#f3f0e9eb);width:min(1180px,100% - 40px);margin:0 auto;padding:34px;box-shadow:0 24px 60px #20232114}.strip-copy{max-width:760px}.process-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;min-width:0;margin:38px 0 0;padding:0;list-style:none;display:grid}.process-card{border:1px solid var(--line);background:#fffaf2a3;gap:12px;min-width:0;padding:24px 24px 26px;display:grid}.process-card span{font-size:13px}.process-card h3{-webkit-hyphens:none;hyphens:none;overflow-wrap:break-word;word-break:normal;min-width:0;margin:0;font-size:20px}.process-card p{min-width:0;color:var(--muted);-webkit-hyphens:none;hyphens:none;overflow-wrap:break-word;word-break:normal;margin:0;line-height:1.6}.services-intro{top:calc(var(--header-h) + 24px);position:sticky}.service-card,.portfolio-card{position:relative;overflow:clip}.service-card:before,.portfolio-card:before{content:"";background:linear-gradient(90deg, var(--copper), #b86b3600);block-size:3px;inline-size:100%;position:absolute;inset:0 auto auto 0}.service-card-index,.portfolio-card strong{margin-bottom:18px;font-size:13px;display:inline-flex}.service-card p,.portfolio-card p{color:var(--muted)}.portfolio-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px;font-size:13px;display:inline-flex}.portfolio-card-image{aspect-ratio:4/3;object-fit:cover;background:var(--soft);width:calc(100% + 56px);margin:-28px -28px 24px;display:block}.image-band{min-height:520px;color:var(--white);background:linear-gradient(90deg,#121412d1,#12141240),url(/assets/engineering-works.jpg) 50%/cover;align-items:end;display:grid}.image-band>div{width:min(1180px,100% - 40px);max-width:680px;margin:0 auto;padding:110px 0}.image-band h2{font-family:var(--font-display), var(--font-display-fallback);font-size:clamp(38px,5vw,76px);line-height:1}.request-section{grid-template-columns:.75fr 1.25fr;align-items:start;gap:52px;display:grid}.request-points{gap:14px;margin-top:30px;display:grid}.request-points li{border-bottom:1px solid var(--line);color:var(--muted);padding-bottom:14px;line-height:1.6}.lead-form{border:1px solid var(--line);background:var(--paper);padding:28px}.lead-form fieldset{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0;padding:0;display:grid}.lead-form legend{clip-path:inset(50%);position:absolute}label{color:var(--graphite);gap:8px;font-weight:800;display:grid}.wide{grid-column:1/-1}input,select,textarea{width:100%;min-height:52px;color:var(--graphite);background:#fffdf8;border:1px solid #20232147;padding:12px 14px;font-size:1rem}textarea{resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #b86b3673}.hint{color:var(--muted);font-size:13px;font-weight:500;line-height:1.5}.form-notice{border:1px solid var(--line);margin:24px 0 0;padding:16px 18px;line-height:1.6}.form-notice-success{background:#6380651f;border-color:#63806547}.form-notice-error{background:#b86b361f;border-color:#b86b3647}.thanks-modal{z-index:120;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#141614ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.thanks-card{border:1px solid var(--line);background:var(--paper);width:min(520px,100%);color:var(--graphite);padding:34px;box-shadow:0 30px 90px #00000047}.thanks-card h2{font-family:var(--font-display), var(--font-display-fallback);margin-bottom:16px;font-size:clamp(32px,5vw,48px);line-height:1.05}.thanks-card p:not(.kicker){color:var(--muted);line-height:1.65}.thanks-card .btn{width:100%;margin-top:12px}.consent{grid-template-columns:auto 1fr;align-items:start;font-weight:600}.consent input{width:20px;min-height:20px;accent-color:var(--copper)}.lead-form .btn{width:100%;margin-top:22px}.footer{color:var(--white);background:#1d201e;padding:70px 0 32px}.footer-grid,.footer-bottom{width:min(1180px,100% - 40px);margin:0 auto}.footer-grid{grid-template-columns:1fr auto auto;align-items:start;gap:44px;display:grid}.footer-links{gap:12px;font-size:20px;font-weight:800;display:grid}.legal-small{color:#fffaf2a6}.footer-bottom{color:#fffaf2a6;border-top:1px solid #fffaf229;flex-wrap:wrap;gap:18px;margin-top:48px;padding-top:20px;font-size:13px;display:flex}.cookie-consent{z-index:80;width:min(760px,100% - 40px);color:var(--white);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#202321f0;border:1px solid #fffaf238;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin-inline:auto;padding:20px;display:grid;position:fixed;inset:auto 20px 20px;box-shadow:0 24px 70px #00000042}.cookie-consent p{color:#fffaf2c2;margin:0;font-size:14px;line-height:1.55}.cookie-consent-title{font-weight:900;color:var(--white)!important;margin-bottom:6px!important}.cookie-consent a{color:var(--copper-strong);text-underline-offset:3px;font-weight:800;text-decoration:underline}.cookie-consent .btn{min-width:116px}.contact-list{gap:12px;margin:28px 0;font-size:26px;font-weight:900;display:grid}.contact-list a,.contact-list span{overflow-wrap:anywhere}.admin-shell{width:min(1120px,100% - 40px);min-height:100svh;margin:0 auto;padding:60px 0}.login-shell{place-items:center;display:grid}.admin-login{border:1px solid var(--line);background:var(--paper);width:min(440px,100%);padding:32px}.admin-top{justify-content:space-between;align-items:center;gap:24px;margin-bottom:34px;display:flex}.admin-card{color:var(--graphite)}.admin-intro{margin-bottom:18px}.content-settings{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;margin-bottom:18px;display:grid}.content-settings h2,.content-settings p{margin-bottom:0}.switch-field{align-items:center;gap:12px;font-weight:900;display:inline-flex}.switch-field input{opacity:0;width:1px;min-height:1px;margin:0;padding:0;position:absolute}.switch-control{border:1px solid var(--line);background:var(--soft);border-radius:999px;flex:none;width:54px;height:30px;transition:background .18s,border-color .18s;position:relative}.switch-control:after{content:"";background:var(--white);border-radius:50%;width:22px;height:22px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 2px 8px #0000002e}.switch-field input:checked+.switch-control{border-color:var(--copper);background:var(--copper)}.switch-field input:checked+.switch-control:after{transform:translate(24px)}.switch-field input:focus-visible+.switch-control{outline:3px solid var(--copper-strong);outline-offset:3px}.admin-card span{color:var(--copper);font-size:42px;font-weight:900}.content-settings .switch-field span{color:inherit;font-size:inherit;font-weight:inherit}.content-settings .switch-control{color:inherit;font-size:inherit}.lead-list{gap:16px;display:grid}.lead-category{scroll-margin-top:24px}.lead-category+.lead-category{margin-top:34px}.lead-category-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:24px;margin-bottom:16px;padding-bottom:14px;display:flex}.lead-category-head h2{margin-bottom:8px;font-size:28px}.lead-category-head p:not(.kicker){color:var(--muted);margin:0;line-height:1.55}.lead-category-head span{color:var(--copper);font-size:38px;font-weight:900}.lead-item{grid-template-columns:1fr 240px;gap:24px;display:grid}.content-editor{gap:18px}.content-section{align-items:start}.content-section-main{min-width:0}.content-form{gap:16px;margin-top:18px;display:grid}.content-entry{border:0;border-top:1px solid var(--line);gap:14px;min-width:0;margin:0;padding:18px 0 0;display:grid}.content-entry legend{color:var(--copper);padding:0 12px 0 0;font-size:13px;font-weight:900}.content-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.content-field{min-width:0}.content-field-wide{grid-column:1/-1}.content-field textarea{min-height:118px}.content-entry-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.content-entry-toolbar .btn,.content-add-button{min-height:38px;padding:0 14px;font-size:12px}.btn-icon{width:38px;min-width:38px;padding:0}.content-add-button{justify-self:start}.content-image-preview{border:1px solid var(--line);background:#ffffff7a;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:14px;padding:12px;display:grid}.content-image-preview img{aspect-ratio:4/3;object-fit:cover;background:var(--linen);width:100%;display:block}.content-image-preview span{color:var(--graphite);margin-bottom:6px;font-weight:900;display:block}.content-image-preview .hint{overflow-wrap:anywhere}.content-image-empty{border:1px dashed var(--line);color:var(--muted);padding:16px}.json-fallback{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.json-fallback summary{cursor:pointer;color:var(--muted);font-weight:900}.json-textarea{min-height:320px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.content-reset-form{position:sticky;top:20px}.status{color:var(--copper);margin-bottom:12px;font-weight:900;display:inline-flex}.legal-page{max-width:860px;line-height:1.75}.requisites{gap:14px;display:grid}.requisites div{border-bottom:1px solid var(--line);padding-bottom:12px}.requisites dt{color:var(--muted)}.requisites dd{margin:0;font-weight:900}@media (max-width:860px){.nav{width:min(1180px,100% - 28px)}.nav-links{gap:12px;font-size:12px}.brand-text{display:none}.content-settings{grid-template-columns:1fr;align-items:stretch}.content-settings .btn{width:100%}.hero-inner,.split,.request-section,.footer-grid,.lead-item{grid-template-columns:1fr}.lead-category-head{flex-direction:column;align-items:start}.hero-inner{padding-bottom:84px}.home-strip{margin-top:0;padding-top:36px}.home-strip-inner{padding:28px}.process-list{grid-template-columns:1fr}.services-intro{position:static}.service-grid,.portfolio-grid,.service-detail-grid,.admin-cards,.content-field-grid{grid-template-columns:1fr}.content-entry-toolbar{justify-content:flex-start}.content-image-preview{grid-template-columns:1fr}.content-reset-form{position:static}.lead-form fieldset{grid-template-columns:1fr}.section{padding:74px 0}.cookie-consent{grid-template-columns:1fr;align-items:stretch}.cookie-consent .btn{width:100%}}@media (max-width:720px){.nav{gap:14px}.nav-links{flex-wrap:wrap;justify-content:flex-end;gap:10px;min-width:0}.nav-cta{display:none}}@media (max-width:560px){.hero{align-items:start;min-height:auto}.nav{gap:12px;width:calc(100% - 32px)}.nav-links{display:none}.nav-cta{min-height:38px;padding:0 12px;display:none}.hero-inner{width:calc(100% - 32px);max-width:none;padding-top:calc(var(--header-h) + 34px);gap:20px;padding-bottom:76px}.hero h1{overflow-wrap:normal;word-break:normal;max-width:100%;line-height:.98}.hero-title-prefix{font-size:clamp(18px,5.8vw,23px)}.hero-title-brand{letter-spacing:0;font-size:clamp(38px,12vw,52px)}.hero-description{overflow-wrap:anywhere;max-width:100%;font-size:14px;line-height:1.48}.hero-entity{font-size:17px}.hero-points{grid-template-columns:1fr;width:100%;max-width:100%;display:grid}.hero-points li{width:100%;min-height:0;padding:10px 14px}.hero-note{display:none}.hero-actions{grid-template-columns:1fr;max-width:100%;display:grid}.hero-actions .btn{width:100%}.home-strip{margin-top:0;padding-top:28px}.home-strip-inner{width:calc(100% - 32px);padding:22px 18px}.process-list{margin-top:28px}.process-card{padding:20px 18px}.section,.page-hero,.legal-page{width:calc(100% - 32px)}.page-hero h1,.legal-page h1,.section h2{-webkit-hyphens:none;hyphens:none;overflow-wrap:normal;word-break:normal;text-wrap:balance;font-size:28px;line-height:1.08}.service-card,.portfolio-card,.detail-panel,.lead-form{padding:22px 18px}.service-card h3,.portfolio-card h3,.portfolio-card h2,.detail-panel h2{font-size:clamp(18px,7vw,22px);line-height:1.08}.portfolio-card-image{width:calc(100% + 36px);margin:-22px -18px 20px}.contact-list{font-size:clamp(20px,8vw,24px)}.page-hero p,.section p,.hero-description,.portfolio-card p,.detail-panel p{overflow-wrap:anywhere}}
