@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");* {margin: 0;padding: 0;box-sizing: border-box;font-family: "Poppins", sans-serif;}body {background: #0f172a;color: #e5e7eb;line-height: 1.6;}.container {width: 90%;max-width: 1200px;margin: auto;}.header {background: #020617;position: sticky;top: 0;z-index: 1000;}.nav {display: flex;justify-content: space-between;align-items: center;padding: 15px 0;}.logo {height: 70px;}.menu a {margin-left: 20px;color: #e5e7eb;text-decoration: none;}.hamburger {display: none;background: none;border: none;color: white;font-size: 26px;}.hero {min-height: 100vh;display: flex;align-items: center;background: linear-gradient(rgba(2, 6, 23, 0.65), rgba(2, 6, 23, 0.65)), url("/img/hero-instalacje-techniczne.webp") center/cover no-repeat;}.hero h1 {font-size: 2.6rem;}.hero p {margin: 20px 0;}.btn {background: #38bdf8;color: #020617;padding: 12px 25px;border-radius: 30px;text-decoration: none;display: inline-block;font-weight: 600;}.btn.outline {background: transparent;border: 2px solid #38bdf8;color: #38bdf8;}.cta .btn {margin-right: 15px;}.section {padding: 80px 0;}.section-title {font-size: 2.4rem;margin-bottom: 30px;text-align: center;}.dark {background: #020617;}.grid {display: grid;grid-template-columns: repeat(5, 1fr);gap: 20px;}.card {background: #0f172a;padding: 30px;text-align: center;border-radius: 10px;display: flex;flex-direction: column;height: 100%;}.card img {width: 100%;height: 180px;object-fit: cover;display: block;margin-bottom: 20px;border-radius: 6px;}.gallery {display: flex;gap: 20px;}.photo {background: #1e293b;height: 200px;flex: 1;border-radius: 10px;}.form {display: grid;gap: 15px;}input, textarea {padding: 12px;border-radius: 5px;border: none;}.footer {display: flex;background: #020617;justify-content: center;align-items: center;text-align: center;padding: 30px;}@media (max-width: 768px) {.menu {position: fixed;inset: 60px 0 0 0;background: #020617;display: flex;flex-direction: column;align-items: center;justify-content: center;transform: translateX(100%);transition: transform 0.4s ease;}.menu a {margin: 10px 0;font-size: 1.2rem;}.menu.active {transform: translateX(0);}.hamburger {display: block;}}.card {position: relative;transition: background-color 0.25s ease;}.card::after {content: "";position: absolute;inset: 0;border: 2px solid transparent;border-radius: 10px;transition: border-color 0.25s ease;pointer-events: none;}.card:hover {background-color: #020617;}.card:hover::after {border-color: #38bdf8;}.gallery-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));gap: 20px;}.gallery-item {position: relative;overflow: hidden;border-radius: 10px;}.gallery-item img {width: 100%;height: 200px;object-fit: cover;transition: transform 0.4s ease;}.gallery-item:hover img {transform: scale(1.08);}.small-gallery img {height: 180px;}.lightbox {position: fixed;inset: 0;background: rgba(2, 6, 23, 0.95);display: flex;justify-content: center;align-items: center;z-index: 9999;}.lightbox-content {position: relative;max-width: 90%;max-height: 90%;text-align: center;}.lightbox-content img {max-width: 100%;max-height: 70vh;border-radius: 10px;}.lightbox-caption {margin-top: 12px;color: #e5e7eb;font-size: 0.95rem;opacity: 0.9;}.lightbox-close, .lightbox-prev, .lightbox-next {position: absolute;background: none;border: none;color: #e5e7eb;font-size: 40px;cursor: pointer;opacity: 0.8;}.lightbox-close {top: -10px;right: -10px;font-size: 28px;}.lightbox-prev {left: -50px;top: 50%;transform: translateY(-50%);}.lightbox-next {right: -50px;top: 50%;transform: translateY(-50%);}.lightbox-prev:hover, .lightbox-next:hover, .lightbox-close:hover {opacity: 1;}@media (max-width: 768px) {.lightbox-prev, .lightbox-next {display: none;}}@media (max-width: 1024px) {.grid {grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));}}.contact-layout {display: grid;grid-template-columns: 1fr 1.2fr;gap: 40px;align-items: start;}.contact-info {color: #e5e7eb;font-size: 0.95rem;}.contact-logo {height: 100px;margin-bottom: 20px;}.contact-company {margin-bottom: 15px;line-height: 1.5;}.contact-info a {color: #38bdf8;text-decoration: none;}.contact-info a:hover {text-decoration: underline;}.contact-note {margin-top: 15px;opacity: 0.8;}@media (max-width: 768px) {.contact-layout {grid-template-columns: 1fr;}}.service-list {list-style: none;margin: 20px 0;padding-left: 20px;}.service-btn {margin-left: 15px;margin-top: 10px;}.section-text {margin-top: 20px;}.filters {display: flex;flex-wrap: wrap;gap: 10px;margin: 30px 0 40px;}.filter-btn {background: #020617;color: #e5e7eb;border: 1px solid #1e293b;padding: 8px 18px;border-radius: 20px;cursor: pointer;font-size: 0.9rem;transition: all 0.25s ease;}.filter-btn:hover {border-color: #38bdf8;color: #38bdf8;}.filter-btn.active {background: #38bdf8;color: #020617;border-color: #38bdf8;}.gallery-item.hidden {display: none;}.unified-gallery {grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));}.gallery-item img {height: 260px;}@media (min-width: 1024px) {.gallery-item img {height: 300px;}}.visually-hidden {position: absolute;width: 1px;height: 1px;overflow: hidden;clip: rect(0, 0, 0, 0);}.lazy-section {opacity: 0;transform: translateY(40px);transition: opacity 0.6s ease, transform 0.6s ease;}.lazy-section.is-visible {opacity: 1;transform: translateY(0);}.unified-gallery .gallery-item {opacity: 0;transform: translateY(30px);}.unified-gallery .gallery-item.is-visible {opacity: 1;transform: translateY(0);transition: opacity 0.5s ease, transform 0.5s ease;}.gallery-item.is-visible {opacity: 1;transform: translateY(0);transition: opacity 0.5s ease, transform 0.5s ease;}.project-item::after {content: attr(data-count);position: absolute;bottom: 10px;right: 10px;background: rgba(2, 6, 23, 0.8);color: #e5e7eb;font-size: 0.8rem;padding: 4px 8px;border-radius: 6px;}.project-item {position: relative;overflow: hidden;cursor: pointer;}.project-item::before {content: "";position: absolute;inset: 0;background: rgba(2, 6, 23, 0.75);opacity: 0;transition: opacity 0.35s ease;z-index: 1;}.project-item::after {content: "Zobacz realizację";position: absolute;inset: 0;display: flex;align-items: center;justify-content: center;color: #e5e7eb;font-weight: 600;letter-spacing: 0.5px;text-transform: uppercase;font-size: 0.85rem;opacity: 0;transition: opacity 0.35s ease, transform 0.35s ease;transform: translateY(10px);z-index: 2;}.project-item span {position: absolute;left: 20px;bottom: 20px;z-index: 2;color: #ffffff;font-size: 0.95rem;font-weight: 500;opacity: 0;transform: translateY(10px);transition: all 0.35s ease;}.project-item:hover::before {opacity: 1;}.project-item:hover::after {opacity: 1;transform: translateY(0);}.project-item:hover span {opacity: 1;transform: translateY(0);}@media (hover: none) {.project-item::before, .project-item::after, .project-item span {display: none;}}.cta-realizacje {margin-top: 50px;text-align: center;}.cta-realizacje p {margin-bottom: 20px;font-size: 1rem;color: #94a3b8;}.cta-realizacje .btn {padding: 12px 32px;}.cta-realizacje .btn:hover {background: #38bdf8;color: #020617;}.cookie-banner {position: fixed;bottom: 20px;left: 20px;right: 20px;max-width: 600px;margin: auto;background: #020617;color: #e5e7eb;padding: 20px;border-radius: 10px;display: none;z-index: 9999;font-size: 0.85rem;}.cookie-banner a {color: #38bdf8;}.cookie-banner .btn {margin-top: 10px;}.policy-link {color: #38bdf8;text-decoration: none;margin: 0 5px;}