    html {
      scroll-behavior: smooth;
    }
    body {
      font-family: 'Poppins', sans-serif;
      margin: 0;
      background-color: #fdfdfd;
      color: #333;
    }
    header.hero {
      position: relative;
      width: 100%;
      height: 85vh;
      overflow: hidden;
    }
    header.hero video {
      position: absolute;
      top: 50%;
      left: 50%;
      min-width: 100%;
      min-height: 100%;
      transform: translate(-50%, -50%);
      object-fit: cover;
      z-index: 1;
    }
	
	#fallback-image {
    position: absolute;
    top: 50%;
    left: 50%;
	min-width: 100%;
    min-height: 100%;
	transform: translate(-50%, -50%);
    display: none;
  }
  
    .hero-overlay {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 2;
      text-align: center;
      color: white;
      text-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
    }
    .hero-overlay h1 {
      font-size: 3rem;
      margin-bottom: 1rem;
    }
    .cta-button {
      display: inline-block;
      padding: 1rem 2rem;
      background-color: #4caf50;
      color: white;
      text-decoration: none;
      font-weight: bold;
      border-radius: 8px;
      transition: background-color 0.3s;
    }
    .cta-button:hover {
      background-color: #388e3c;
    }
    section {
      display: block;
      padding: 4rem 2rem;
      max-width: 1000px;
      margin: auto;
    }
    .section-title {
      font-size: 2rem;
      margin-bottom: 1rem;
    }
    .features {
      display: flex;
      flex-wrap: wrap;
      gap: 2rem;
    }
    .feature {
      flex: 1 1 200px;
      background: #f1f1f1;
      padding: 1rem;
      border-radius: 10px;
    }
    footer {
      background: #333;
      color: white;
      text-align: center;
      padding: 2rem;
    }
    .map {
      width: 100%;

      background: #fff;
      display: block;
      align-items: center;
      justify-content: center;
      color: #666;
    }

	.mapaGoogle {
      width: 100%;
      height: 400px;
      background: #fff;
      display: block;
      align-items: center;
      justify-content: center;
      color: #666;
    }
	#planImage{
		width: 80vw;
		margin-bottom: 20px;
	}	
    .gallery {
	  display: flex;
	  gap: 1rem;
	  margin-bottom: 1rem;
	  align-items: stretch;
	}

	.gallery-main {
	  flex: 2;
	}

	.gallery-main img {
	  width: 100%;
	  height: 100%;
	  border-radius: 8px;
	  object-fit: cover;
	  cursor: pointer;
	}

	.gallery-thumbs {
	  flex: 1;
	  display: flex;
	  flex-direction: column;
	  gap: 1rem;
	}

	.gallery-thumbs img {
	  flex: 1;
	  width: 100%;
	  object-fit: cover;
	  border-radius: 8px;
	  cursor: pointer;
	}
    .lightbox {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background: rgba(0, 0, 0, 0.8);
      justify-content: center;
      align-items: center;
      z-index: 1000;
      flex-direction: column;
    }
    .lightbox img {
      max-width: 90vw;
      max-height: 80vh;
      border-radius: 10px;
      margin-bottom: 1rem;
    }
    .lightbox-controls {
      display: flex;
      gap: 1rem;
    }
    .lightbox-controls button {
      padding: 0.5rem 1rem;
      background: #ffffffdd;
      border: none;
      border-radius: 5px;
      cursor: pointer;
      font-size: 1rem;
    }
    .lightbox-controls button:hover {
      background: #ffffff;
    }
	
	.mapa-kontener {
      position: relative;
      width: 100%; /* lub konkretna szerokość, np. 800px */
      max-width: 1000px;
	  aspect-ratio: 1920 / 676;
    }

    .mapa-obraz,
    .mapa-svg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%; /* dopasowanie do kontenera */
      height: auto;
      display: block;
    }

    .mapa-obraz {
      z-index: 0;
    }

    .mapa-svg {
      z-index: 1;
      pointer-events: none; /* domyślnie: kliknięcia przechodzą przez SVG */
    }

    .mapa-svg .dzialka {
      fill: rgba(0, 0, 255, 0.2);
      stroke: blue;
      cursor: pointer;
      pointer-events: all; /* włączamy kliknięcia tylko na działkach */
    }
	
	#rozmiaryDzialekImg{
		margin-top: 20px;
		width: 100%;
		
	}
	
	
	
	.tooltip {
	  position: absolute;
	  padding: 6px 10px;
	  background: rgba(0, 0, 0, 0.85);
	  color: white;
	  font-size: 14px;
	  border-radius: 6px;
	  pointer-events: none;
	  opacity: 0;
	  transition: opacity 0.2s;
	  z-index: 100;
	  white-space: nowrap;
	}
	
	
	#projekt{
		
		
	}
	
	.projekt-kontener {
		width: 100%;
		display: flex;
		gap: 10px; /* odstęp między obrazkami, opcjonalnie */
	}

	.projekt-kontener .thumbnail {
	  flex: 1;
	  width: 33%;      /* ważne: żeby obraz nie ograniczał się do oryginalnego rozmiaru */
	  height: auto;
	  object-fit: cover; /* lub contain – zależnie od efektu */
	  cursor: pointer;
	  display: block;
	}
	
	#modal {
      display: none;
      position: fixed;
      top: 0; left: 0;
      width: 100vw;
      height: 100vh;
      background-color: rgba(0, 0, 0, 0.95);
      z-index: 9999;
      justify-content: center;
      align-items: center;
      overflow: hidden;
      touch-action: none;
    }

    #modal img {
      max-width: 100%;
      max-height: 100%;
      transform-origin: center center;
      cursor: grab;
      transition: transform 0.05s ease;
      user-select: none;
    }
	
	@media (max-width: 768px) {
	  .projekt-kontener {
		flex-direction: column;
	  }
	  
	  .projekt-kontener .thumbnail{
		  width: 100%;
	  }
	}