:root {
    --dark: #3b7080;
    --antiquewhite: rgb(250 235 215);
font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-style: normal;
}

html {
  scroll-behavior: smooth;     /* opcjonalnie: płynna animacja */
  scroll-padding-top: 72px;    /* wysokość Twojego navbaru (desktop) */
}

body {
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #0b2027;
}
.hero-video {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: #222;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .hero-video video {
    width: 100vw;
    height: 100%;
    object-fit: cover;
  }
  .hero-content {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: rgba(0,0,0,0.1);
    text-align: center;
    flex-direction: column;
  }

  /* Dla wyraźniejszego widoku menu */
  .navbar {
    background: rgba(255,255,255,0.97);
  }
  .section-padding {
    padding: 4rem 0;
  }
  .bg-light {
    background: #06bee1;
  }
  .bg-champagne {
    background: #4c546d;
    color: #FBFCFF;
  }
  .btn-primary {
    background-color: #4c546d;
    border-color: #4c546d;
    color: #FBFCFF;
  }

  .btn-primary:hover {
    background-color: #6e7792;
    border-color: #6e7792;
    color: #FBFCFF;
  }

  a {
    text-decoration: none;
    color: #4c546d;
  }
  .nav-link {
    color: #0b2027;
  }

  .copy {
    max-width: 120ch;
    margin: 0 auto;
    line-height: 1.65;
    font-size: 1rem;
  }

  .copy p {
    text-align: justify;
    text-align-last: left;         
    hyphens: auto;                   
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    overflow-wrap: anywhere; 
    word-break: normal;
    text-justify: inter-word;        
    orphans: 2;                      
    widows: 2;                       
    margin: 0 0 0.9em;
  }


  .copy p {
    letter-spacing: 0.001em;
    word-spacing: 0.02em;
  }

  @media (max-width: 600px) {
    .copy p {
      text-align: justify;
      hyphens: auto;
    }
  }

  .map-edge {
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    width: 100vw;
  }

.ratio-own {
    --bs-aspect-ratio: 32%;
}

.gallery-item img { 
            transition: transform 0.3s ease; 
            cursor: pointer;
        }
        .gallery-item img:hover { 
            transform: scale(1.05); 
        }
        .modal-img { max-height: 90vh; width: auto; }
        .thumbnail-active { border: 3px solid #0d6efd !important; }

.modal-content {
  background-color: transparent !important;
}