@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@400;600;700;800;900&display=swap');
:root{--dark:#020b16;--blue:#0A6CFF;--blue2:#1683ff;--text:#071827;--muted:#536171;--line:#e6ebf2}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.container{width:min(1180px,calc(100% - 56px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:10px;z-index:999}.skip-link:focus{left:10px}
.hero-final-wrap{background:#020b16;margin:0;padding:0;line-height:0;overflow:hidden}.hero-final-img{width:100%;height:auto;display:block;margin:0;padding:0}
.section{padding:88px 0}.why{background:linear-gradient(135deg,#fff,#f6f8fb)}.why-grid{display:grid;grid-template-columns:1fr 2fr;gap:58px;align-items:center}.kicker{color:var(--blue2);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:2px;margin:0 0 18px}.section-copy h2,.services-header h2,.project-intro h2,.cta h2{font-family:'Bebas Neue',Arial,sans-serif;font-size:60px;line-height:.98;text-transform:uppercase;margin:0 0 18px;letter-spacing:.3px}.section-copy h2 span,.services-header h2 span,.project-intro h2 span{color:var(--blue2)}.section-copy p{color:var(--muted);font-size:16px;line-height:1.7;margin:0}.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.value-card{background:#fff;border:1px solid var(--line);box-shadow:0 18px 48px rgba(0,0,0,.06);text-align:center;min-height:195px;padding:30px 20px;transition:.35s}.value-card:hover{transform:translateY(-8px);box-shadow:0 26px 70px rgba(10,108,255,.16)}.value-card img{width:42px;height:42px;margin:0 auto 18px}.value-card h3{font-size:14px;text-transform:uppercase;margin:0 0 10px;font-weight:900}.value-card p{color:var(--muted);font-size:13px;line-height:1.48;margin:0}
.services{background:linear-gradient(90deg,rgba(2,11,22,.98),rgba(6,27,51,.96));color:#fff}.services-header{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:34px}.services-header a,.text-link{color:var(--blue2);font-size:12px;text-transform:uppercase;font-weight:900}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:250px;gap:14px}.service-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#0a1a2e}.service-card.large{grid-column:span 2}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62;transition:.45s}.service-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,8,18,.95),rgba(0,8,18,.10))}.service-card div{position:absolute;left:22px;right:22px;bottom:22px;z-index:2}.service-card h3{text-transform:uppercase;font-size:15px;margin:0 0 9px;font-weight:900}.service-card p{color:#d8e7f8;font-size:13px;line-height:1.45;margin:0}.service-card:hover img{transform:scale(1.12);opacity:.78}
.projects{background:#fff}.projects-grid{display:grid;grid-template-columns:230px repeat(4,1fr);gap:12px;align-items:stretch}.project-intro{display:flex;flex-direction:column;justify-content:center}.project-intro p{color:var(--muted);font-size:15px;line-height:1.6;margin:0 0 16px}.btn{display:inline-block;padding:17px 25px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.25px;transition:.25s}.btn-primary{background:var(--blue);color:#fff}.project-card{height:215px;position:relative;overflow:hidden;background-position:center;background-size:cover;color:#fff;display:flex;align-items:flex-end;padding:18px;transition:.35s}.project-card-1{background-image:linear-gradient(0deg,rgba(0,8,18,.74),rgba(0,0,0,.05)),url('../images/instalacje.webp')}.project-card-2{background-image:linear-gradient(0deg,rgba(0,8,18,.74),rgba(0,0,0,.05)),url('../images/modernizacje.webp')}.project-card-3{background-image:linear-gradient(0deg,rgba(0,8,18,.74),rgba(0,0,0,.05)),url('../images/prefabrykacja.webp')}.project-card-4{background-image:linear-gradient(0deg,rgba(0,8,18,.74),rgba(0,0,0,.05)),url('../images/spawalnictwo.webp')}.project-card span{position:relative;z-index:2;font-size:13px;font-weight:900;text-transform:uppercase}
.cta{background:linear-gradient(90deg,#061b33,#0b2e59);color:#fff;padding:50px 0}.cta-grid{display:grid;grid-template-columns:72px 1fr auto;gap:28px;align-items:center}.cta-symbol{width:58px;height:58px;border:1px solid var(--blue);border-radius:50%;display:grid;place-items:center;color:var(--blue2);font-size:28px}.footer{background:#020b16;color:#c7d3df;padding:32px 0;font-size:14px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:28px;align-items:center}.footer-brand strong{display:block;color:#fff;font-family:'Bebas Neue',Arial,sans-serif;font-size:42px;line-height:.9}.footer-brand span{font-size:11px;letter-spacing:4px}.footer p{margin:6px 0}.footer strong{color:#fff}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:980px){.why-grid,.value-grid,.services-grid,.projects-grid,.cta-grid,.footer-grid{grid-template-columns:1fr}.services-header{display:block}.service-card,.service-card.large{grid-column:auto;min-height:245px}}

/* JKM Final 1.0.4 */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-final-wrap{position:relative}.hero-hotspot{position:absolute;z-index:3;display:block;font-size:0;line-height:0;background:rgba(255,255,255,0)}.hero-hotspot:focus{outline:2px solid #0A6CFF;outline-offset:2px}.hero-hotspot-about{left:39.5%;top:5%;width:7%;height:5%}.hero-hotspot-services{left:47.5%;top:5%;width:6.5%;height:5%}.hero-hotspot-projects-nav{left:55.5%;top:5%;width:8%;height:5%}.hero-hotspot-contact-nav{left:65%;top:5%;width:7.5%;height:5%}.hero-hotspot-offer{left:81.5%;top:3.5%;width:14.5%;height:6.5%}.hero-hotspot-projects{left:37.8%;top:69%;width:14.5%;height:7%}.hero-hotspot-contact{left:53.2%;top:69%;width:12.5%;height:7%}.case-study{background:#f6f8fb}.case-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:48px;align-items:start}.case-content{background:#fff;border:1px solid var(--line);box-shadow:0 18px 48px rgba(0,0,0,.06);padding:32px}.case-content p{color:var(--muted);font-size:15px;line-height:1.65;margin:0 0 12px}.case-content p:last-child{margin-bottom:0}.case-content strong{color:var(--text)}.cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.btn-secondary{border:1px solid rgba(255,255,255,.28);color:#fff;background:transparent}.footer a{color:#fff;text-decoration:none}.footer a:hover{text-decoration:underline}
@media(max-width:980px){.case-grid{grid-template-columns:1fr}.cta-actions{justify-content:flex-start}.hero-hotspot{display:none}.section-copy h2,.services-header h2,.project-intro h2,.cta h2{font-size:46px}.container{width:min(1180px,calc(100% - 34px))}}

/* JKM Final 1.0.5 - sekcja realizacji premium */
.proof{background:linear-gradient(90deg,rgba(2,11,22,.98),rgba(6,27,51,.96));color:#fff;position:relative;overflow:hidden}.proof:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 78% 18%,rgba(10,108,255,.18),transparent 34%);pointer-events:none}.proof-grid{position:relative;z-index:1;display:grid;grid-template-columns:.85fr 1.65fr;gap:34px;align-items:stretch}.proof-copy{display:flex;flex-direction:column;justify-content:center}.proof-copy h2{font-family:'Bebas Neue',Arial,sans-serif;font-size:60px;line-height:.98;text-transform:uppercase;margin:0 0 18px;letter-spacing:.3px}.proof-copy h2 span{color:var(--blue2)}.proof-copy p{color:#c7d3df;font-size:15px;line-height:1.7;margin:0 0 24px}.proof-card{display:grid;grid-template-columns:1.05fr 1fr;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 70px rgba(0,0,0,.28);min-height:410px}.proof-image{position:relative;overflow:hidden}.proof-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,11,22,.1),rgba(2,11,22,.58))}.proof-image img{width:100%;height:100%;object-fit:cover;opacity:.82}.proof-content{padding:40px;display:flex;flex-direction:column;justify-content:center}.proof-year{color:var(--blue2);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:2px;margin-bottom:14px}.proof-content h3{font-family:'Bebas Neue',Arial,sans-serif;font-size:44px;line-height:1;margin:0 0 18px;text-transform:uppercase}.proof-content p{color:#d8e7f8;font-size:15px;line-height:1.65;margin:0 0 24px}.proof-content dl{display:grid;gap:10px;margin:0}.proof-content dl div{display:grid;grid-template-columns:110px 1fr;gap:18px;border-top:1px solid rgba(255,255,255,.12);padding-top:10px}.proof-content dt{color:#8ebcff;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:1.3px}.proof-content dd{margin:0;color:#fff;font-size:13px;line-height:1.45}.proof .btn-primary{width:max-content}.why .section-copy p{max-width:520px}
@media(max-width:980px){.proof-grid,.proof-card{grid-template-columns:1fr}.proof-copy h2{font-size:46px}.proof-content{padding:28px}.proof-content h3{font-size:36px}.proof-content dl div{grid-template-columns:1fr;gap:4px}.proof-image{min-height:260px}}


/* JKM Final 1.0.6 - logo w stopce */
.footer-logo-lockup{display:flex;align-items:center;gap:14px}
.footer-logo-mark{width:54px;height:54px;flex:0 0 54px;border-radius:12px;box-shadow:0 12px 32px rgba(10,108,255,.18)}
@media(max-width:980px){.footer-logo-lockup{justify-content:flex-start}.footer-logo-mark{width:50px;height:50px;flex-basis:50px}}

/* JKM Final 1.0.7 - realizacja referencyjna ze zdjęciami */
.portfolio{background:linear-gradient(90deg,rgba(2,11,22,.98),rgba(6,27,51,.96));color:#fff;position:relative;overflow:hidden}
.portfolio:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 78% 18%,rgba(10,108,255,.18),transparent 34%);pointer-events:none}
.portfolio-head{position:relative;z-index:1;max-width:900px;margin-bottom:34px}
.portfolio-head h2{font-family:'Bebas Neue',Arial,sans-serif;font-size:60px;line-height:.98;text-transform:uppercase;margin:0 0 18px;letter-spacing:.3px}
.portfolio-head h2 span{color:var(--blue2)}
.portfolio-head p{color:#c7d3df;font-size:16px;line-height:1.7;margin:0;max-width:760px}
.portfolio-feature{position:relative;z-index:1;display:grid;grid-template-columns:1.45fr .9fr;gap:0;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 70px rgba(0,0,0,.28);margin-bottom:18px}
.portfolio-photo-main{min-height:520px;overflow:hidden;background:#061b33}
.portfolio-photo-main img{width:100%;height:100%;object-fit:cover;opacity:.9;transition:.45s}
.portfolio-feature:hover .portfolio-photo-main img{transform:scale(1.035);opacity:.98}
.portfolio-panel{padding:42px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,rgba(2,11,22,.9),rgba(4,22,42,.94))}
.portfolio-panel h3{font-family:'Bebas Neue',Arial,sans-serif;font-size:48px;line-height:1;text-transform:uppercase;margin:0 0 18px}
.portfolio-panel p{color:#d8e7f8;font-size:15px;line-height:1.65;margin:0 0 24px}
.portfolio-panel dl{display:grid;gap:10px;margin:0 0 28px}
.portfolio-panel dl div{display:grid;grid-template-columns:110px 1fr;gap:18px;border-top:1px solid rgba(255,255,255,.12);padding-top:10px}
.portfolio-panel dt{color:#8ebcff;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:1.3px}
.portfolio-panel dd{margin:0;color:#fff;font-size:13px;line-height:1.45}
.portfolio-panel .btn{width:max-content}
.portfolio-gallery{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.portfolio-gallery figure{margin:0;position:relative;overflow:hidden;background:#061b33;border:1px solid rgba(255,255,255,.12);min-height:260px}
.portfolio-gallery img{width:100%;height:100%;object-fit:cover;opacity:.86;transition:.45s}
.portfolio-gallery figure:hover img{transform:scale(1.06);opacity:1}
.portfolio-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:16px;background:linear-gradient(0deg,rgba(2,11,22,.92),rgba(2,11,22,0));color:#fff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.6px}
@media(max-width:980px){.portfolio-head h2{font-size:46px}.portfolio-feature{grid-template-columns:1fr}.portfolio-photo-main{min-height:330px}.portfolio-panel{padding:28px}.portfolio-panel h3{font-size:38px}.portfolio-panel dl div{grid-template-columns:1fr;gap:4px}.portfolio-gallery{grid-template-columns:1fr 1fr}.portfolio-gallery figure{min-height:220px}}
@media(max-width:620px){.portfolio-gallery{grid-template-columns:1fr}.portfolio-gallery figure{min-height:250px}}
