/* Construction & architecture kit: featured projects (grid / feature / blueprint pairs), process phases (line / stack), safety & placeholder certificates,
   equipment cards, quote request form, blueprint / site / estimate heroes. Loaded after auto.css (body class "... au kb"). */
.kb .kpi,.kb .kei,.kb .kb1,.kb .kb2,.kb .ksa,.kb .kbb,.kb .kbf,.kb .ksbg{position:relative;overflow:hidden}
.kb .kpi>.art,.kb .kei>.art,.kb .kb1>.art,.kb .kb2>.art,.kb .ksa>.art,.kb .kbb>.art,.kb .kbf>.art,.kb .ksbg>.art{position:absolute;inset:0;width:100%;height:100%}
/* projects */
.kpg{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.kp{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:calc(var(--r) + 14px);overflow:hidden;min-width:0;transition:transform .25s,box-shadow .25s}
.kp:hover{transform:translateY(-4px);box-shadow:0 22px 46px rgba(0,0,0,.1)}
.kpi{aspect-ratio:16/11}.kp.big .kpi{aspect-ratio:16/10;flex:1}
.kpt{position:absolute;left:12px;top:12px;z-index:2;font-size:12px;font-weight:800;letter-spacing:.03em;padding:6px 12px;border-radius:99px;background:var(--bg);color:var(--fg);box-shadow:0 6px 16px rgba(0,0,0,.12)}
.kpt.ip{background:var(--ac);color:var(--bf)}
.kps{position:absolute;right:12px;bottom:12px;z-index:2;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:6px;background:rgba(0,0,0,.55);color:#fff}
.kps.s{position:static;align-self:flex-start;background:color-mix(in srgb,var(--ac) 14%,transparent);color:var(--fg)}
.kpb{display:flex;flex-direction:column;gap:8px;padding:18px 22px 22px;min-width:0}.kpb h3{font-size:20px;line-height:1.2}.kpb>p{margin:0;color:var(--mu);font-size:14.5px}
.kpy{margin:0!important;font-size:12.5px!important;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ac)!important}
.kpm{list-style:none;margin:4px 0 0;padding:12px 0 0;border-top:1px dashed var(--line);display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13.5px;font-weight:600;color:var(--mu)}
.kpm li{display:inline-flex;align-items:center;gap:6px}.kpm .ico{width:17px;height:17px;color:var(--ac)}
.kpf{display:grid;grid-template-columns:1.35fr 1fr;gap:22px}.kpf>*{min-width:0}.kpr{display:flex;flex-direction:column;gap:22px}.kpr .kp{flex:1}.kpr .kpi{aspect-ratio:16/8}
.kp.big .kpb h3{font-size:26px}
.kbl2{display:flex;flex-direction:column;gap:28px}
.kbp{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:calc(var(--r) + 18px);padding:18px;min-width:0}
.kbp.rev{grid-template-columns:.8fr 1.2fr}.kbp.rev .kbi{order:2}.kbp>*{min-width:0}.kbp .kpb{padding:8px 10px}.kbp h3{font-size:26px}
.kbi{display:grid;grid-template-columns:1fr 1fr;gap:12px}.kb1,.kb2{aspect-ratio:4/3.6;border-radius:calc(var(--r) + 8px)}
.kbl{position:absolute;left:10px;bottom:10px;z-index:2;font-size:11.5px;font-weight:800;padding:5px 10px;border-radius:6px;background:var(--bg);color:var(--fg)}
/* process */
.kline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:16px;position:relative;counter-reset:k}
.kline.n4{grid-template-columns:repeat(4,1fr)}
.kline::before{content:"";position:absolute;left:8%;right:8%;top:23px;border-top:2px dashed color-mix(in srgb,var(--ac) 45%,transparent)}
.kph{position:relative;display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:calc(var(--r) + 12px);padding:20px 18px;margin-top:10px;min-width:0}
.kph .kn{position:absolute;top:-14px;right:14px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--ac);color:var(--bf);font-weight:800;font-size:14px}
.kph .kg{width:52px;height:52px;border-radius:15px;background:var(--t);display:grid;place-items:center}.kph .kg svg{width:30px;height:30px}
.kph b{font-size:17px;font-family:var(--head)}.kph p{margin:0;color:var(--mu);font-size:14px}
.kdur{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--ac)}.kdur .ico{width:16px;height:16px}
.kst{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}.kst>*{min-width:0}
.ksa{aspect-ratio:4/3.2;border-radius:calc(var(--r)*2 + 14px);box-shadow:0 24px 50px color-mix(in srgb,var(--fg) 12%,transparent)}
.kpl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.kps2{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:calc(var(--r) + 12px);padding:16px 18px;min-width:0}
.kps2>div{min-width:0}.kps2 .kn{font-family:var(--head);font-size:26px;font-weight:800;color:var(--ac);line-height:1}.kps2 b{font-size:16.5px}.kps2 p{margin:2px 0 8px;color:var(--mu);font-size:14px}
.kbar{display:block;height:6px;border-radius:99px;background:color-mix(in srgb,var(--fg) 9%,transparent);overflow:hidden}.kbar em{display:block;height:100%;border-radius:99px;background:var(--ac)}
.kps2 .kdur{margin:0;white-space:nowrap}
/* safety */
.ksf{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.ksf>*{min-width:0}
.ksg{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:4px 0 18px}
.kss{background:var(--card);border:1px solid var(--line);border-radius:calc(var(--r) + 10px);padding:16px;min-width:0}.kss b{display:block;font-family:var(--head);font-size:28px;line-height:1.1;color:var(--ac)}.kss span{font-size:13px;color:var(--mu)}
.kcw{background:linear-gradient(160deg,color-mix(in srgb,var(--ac) 12%,var(--card)),var(--card));border:1px solid var(--line);border-radius:calc(var(--r) + 20px);padding:26px}
.kcg{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.kc{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;background:var(--bg);border:1px dashed var(--line);border-radius:calc(var(--r) + 10px);padding:18px 12px;min-width:0}
.kseal{width:88px;height:88px;margin-bottom:6px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.14))}.kc b{font-size:15px}.kc span{font-size:12.5px;color:var(--mu)}
.kcw .fine{margin:14px 0 0}
/* equipment */
.keg{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.keg.k3{grid-template-columns:repeat(3,1fr)}
.ke{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:calc(var(--r) + 12px);overflow:hidden;min-width:0}
.kei{aspect-ratio:4/3}.keb{display:flex;flex-direction:column;gap:6px;padding:16px 18px 18px;flex:1}.keb h3{font-size:17px}.keb p{margin:0;color:var(--mu);font-size:13.5px}
.ker{margin-top:auto;padding-top:10px;border-top:1px dashed var(--line);font-family:var(--head);font-weight:800;font-size:16px;color:var(--ac)}
/* quote form */
.kq .slots{display:flex;flex-wrap:wrap;gap:8px}.kq .slots span{padding:9px 14px;border-radius:var(--br,var(--r));border:1.5px solid var(--line);font-weight:700;font-size:14px}.kq .slots span.on{background:var(--ac);border-color:var(--ac);color:var(--bf)}
.kq .lbl{font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--mu)}
.kqa .btn{display:inline-flex;gap:8px;align-items:center}.kqa .ico{width:17px;height:17px}
.kqn{list-style:none;margin:6px 0 10px;padding:0;counter-reset:q;display:flex;flex-direction:column;gap:10px}
.kqn li{counter-increment:q;display:grid;grid-template-columns:34px 1fr;gap:0 12px;align-items:center}.kqn li::before{content:counter(q);grid-row:span 2;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ac);color:var(--bf);font-weight:800}
.kqn b{font-size:15.5px}.kqn span{font-size:13.5px;color:var(--mu)}
/* hero: blueprint */
.hx-kbp{position:relative;overflow:hidden;padding:46px 0 70px}.hx-kbp h1,.hx-ksite h1,.hx-kest h1{font-size:clamp(40px,5.2vw,76px);margin-bottom:20px}
.kch{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.kch span{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:99px;background:var(--card);border:1px solid var(--line);font-size:13.5px;font-weight:700}.kch .ico{width:17px;height:17px;color:var(--ac)}
.kbv{position:relative;aspect-ratio:1/0.92;min-width:0}
.kbb{position:absolute;left:0;top:0;width:78%;height:78%;border-radius:calc(var(--r)*2 + 14px);box-shadow:0 30px 60px color-mix(in srgb,var(--fg) 14%,transparent);transform:rotate(-2deg)}
.kbf{position:absolute;right:0;bottom:0;width:62%;height:56%;border-radius:calc(var(--r)*2 + 10px);border:6px solid var(--bg);box-shadow:0 30px 60px rgba(0,0,0,.2)}
.kdim{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:calc(var(--r) + 8px);background:var(--bg);color:var(--fg);box-shadow:0 16px 34px rgba(0,0,0,.16);max-width:230px}
.kdim>.ico{width:22px;height:22px;color:var(--ac);flex:none}.kdim span{display:flex;flex-direction:column;min-width:0}.kdim small{font-size:11.5px;font-weight:700;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kdim b{font-family:var(--head);font-size:17px;line-height:1.15}
.kdim.d1{right:4%;top:6%}.kdim.d2{left:2%;bottom:6%}
/* hero: site */
.hx-ksite{position:relative;overflow:hidden;padding:80px 0 60px}
.ksbg{position:absolute!important;inset:0}
.hx-ksite::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--bg) 92%,transparent) 0%,color-mix(in srgb,var(--bg) 70%,transparent) 42%,transparent 72%);pointer-events:none}
.ksw{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:end;min-height:500px}.ksw>*{min-width:0}
.kstx{max-width:640px}
.kprog{align-self:end;justify-self:end;width:min(340px,100%);display:flex;flex-direction:column;gap:12px;background:var(--bg);color:var(--fg);padding:20px;border-radius:calc(var(--r) + 14px);box-shadow:0 26px 54px rgba(0,0,0,.22);border:1px solid var(--line)}
.kprog p{margin:0;display:flex;justify-content:space-between;align-items:center}.kprog p b{font-family:var(--head);font-size:18px}.kprog p small{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--ac)}
.kpr2{display:grid;grid-template-columns:1fr auto;gap:6px 10px;font-size:14px;font-weight:600}.kpr2 em{font-style:normal;font-weight:800;color:var(--mu)}
.kpr2 i{grid-column:1/-1;height:7px;border-radius:99px;background:color-mix(in srgb,var(--fg) 10%,transparent);overflow:hidden}.kpr2 u{display:block;height:100%;background:var(--ac);border-radius:99px}
/* hero: estimate */
.hst2{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:26px}.hst2 div{display:flex;flex-direction:column}.hst2 b{font-family:var(--head);font-size:30px;line-height:1.1}.hst2 span{font-size:13px;color:var(--mu)}
.hx-kest .fine{margin-top:10px}
@media (max-width:1100px){.kpg{grid-template-columns:1fr 1fr}.keg{grid-template-columns:1fr 1fr}.kline,.kline.n4{grid-template-columns:repeat(3,1fr)}.kline::before{display:none}.kbp,.kbp.rev{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.kpf,.kst,.ksf,.kbp,.kbp.rev{grid-template-columns:1fr;gap:24px}.kbp.rev .kbi{order:0}.ksw{grid-template-columns:1fr;gap:28px}.kprog{justify-self:start}
 .hx-ksite{padding:56px 0 210px}.ksw{min-height:0}.ksbg{top:auto!important;height:420px}.hx-ksite::after{background:linear-gradient(180deg,var(--bg) 0%,var(--bg) calc(100% - 420px),color-mix(in srgb,var(--bg) 55%,transparent) calc(100% - 300px),transparent 100%)}
 .kbv{max-width:620px;margin:0 auto;width:100%}.kline,.kline.n4{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.kpg,.keg,.keg.k3,.kline,.kline.n4,.ksg,.kcg{grid-template-columns:1fr}.kbi{grid-template-columns:1fr 1fr}.kps2{grid-template-columns:auto 1fr}.kps2 .kdur{grid-column:2}
 .kbp h3,.kp.big .kpb h3{font-size:22px}.kcw{padding:18px}.kdim{padding:8px 11px;max-width:190px}.kdim b{font-size:15px}.kdim.d1{right:0;top:2%}.kdim.d2{left:0;bottom:2%}.kbf{border-width:4px}.ksg{gap:8px}}
