* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  scroll-behavior: smooth;
}

/* TŁO GAMINGOWE */
body {
  font-family: Arial, sans-serif;
  color: white;

  background-image: url("night.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;

  transition:
    background-image 0.5s ease,
    color 0.5s ease;
}

/* GRID */
body::before {
  content: "";
  position: fixed;
  inset: 0;

  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);

  background-size: 40px 40px;
  pointer-events: none;
  z-index: -1;
}

/* NAVBAR */

.navbar {
  height: 100px;
  width: 100%;

  background:
    linear-gradient(to bottom, #d8d8d8 0%, #d8d8d8 45%, #ff003c 55%, #990000 100%);
    

  display: flex;
  justify-content: space-between;
  align-items: center;

  padding: 0 40px;

  position: sticky;
  top: 0;

  z-index: 99999;
  
  border-bottom: 3px solid cyan;

  box-shadow:
    0 0 15px red,
    0 0 30px red,
    0 0 40px cyan;
}

/* LOGO GOTHIC */
.logo h1 {
  font-family: 'MedievalSharp', cursive;

  color: #111;

  font-size: 48px;

  letter-spacing: 3px;

  text-shadow:
  0 0 3px white,
  0 0 6px red,
  0 0 12px darkred,
  1px 1px 0 black;

  transition: 0.3s;
}

/* HOVER */
.logo h1:hover {
  transform: scale(1.05);

  text-shadow:
    0 0 10px #fff,
    0 0 20px red,
    0 0 40px red;
}
/* HERO STRONA GŁÓWNA */
#home h2 {
  font-family: 'MedievalSharp', cursive;

  font-size: 110px;

  letter-spacing: 5px;

  color: white;

  text-shadow:
  0 0 4px cyan,
  0 0 8px cyan,
  0 0 16px blue,
  2px 2px 0 black;

  animation: glow 3s infinite alternate;
}

/* OPIS */
#home p {
  font-size: 30px;

  font-weight: bold;

  text-align: center;

  color: #ffffff;

  text-shadow:
  0 0 2px cyan,
  0 0 4px blue;

  max-width: 900px;
}

/* ANIMACJA */
@keyframes glow {

  from {
    text-shadow:
      0 0 4px cyan,
      0 0 4px cyan,
      0 0 8px blue;
  }

  to {
    text-shadow:
      0 0 4px cyan,
      0 0 4px cyan,
      0 0 8px blue;
  }

}

/* MENU */
nav {
  display: flex;
  gap: 25px;
}

nav a {
  text-decoration: none;
  color: black;
  font-size: 18px;
  font-weight: bold;

  transition: 0.3s;
}

nav a:hover {
  transform: scale(1.1);
  color: white;
  text-shadow: 0 0 10px cyan;
}

/* SEKCJE */
.section {
  min-height: 100vh;

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  gap: 25px;
  padding: 50px;
}

/* TYTUŁY */
.section h2 {
  font-size: 55px;
  text-shadow: 0 0 15px cyan;
}

/* TEKST */
.section p {
  font-size: 20px;
  color: #ddd;
}

/* BOX */
.box {
  background: rgba(20, 20, 20, 0.75);

  border: 2px solid cyan;
  padding: 25px 50px;

  border-radius: 20px;

  backdrop-filter: blur(10px);

  box-shadow: 0 0 15px cyan;
  transition: 0.3s;
}

.box:hover {
  transform: translateY(-5px);
  box-shadow: 0 0 30px cyan;
}

.box a {
  color: white;
  text-decoration: none;
  font-size: 20px;
  font-weight: bold;
}

.box a:hover {
  color: cyan;
}

/* STOPKA */
footer {
  text-align: center;
  padding: 20px;

  background: rgba(0,0,0,0.6);
  border-top: 2px solid cyan;

  font-size: 18px;
  text-shadow: 0 0 10px cyan;
}
/* GRID POBIERALNI */
.download-grid {
  width: 100%;

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 25px;

  margin-top: 40px;
}

/* BOX PLIKÓW */
.download-grid .box {
  width: 100%;

  padding: 15px;

  display: flex;
  justify-content: center;
  align-items: center;

  min-height: 320px;
}

/* LINK */
.mod-link {
  width: 100%;

  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 15px;
}

/* OBRAZKI */
.mod-link img {
  width: 100%;
  height: 220px;

  object-fit: cover;

  border-radius: 15px;

  border: 2px solid cyan;

  transition: 0.3s;
}

/* HOVER */
.mod-link img:hover {
  transform: scale(1.03);

  box-shadow:
    0 0 20px cyan,
    0 0 40px cyan;
}

/* TEKST */
.text h3 {
  text-align: center;

  font-size: 20px;

  color: white;

  text-shadow: 0 0 10px cyan;
}

/* RESPONSYWNOŚĆ */
@media (max-width: 1200px) {
  .download-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 900px) {
  .download-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .download-grid {
    grid-template-columns: 1fr;
  }
}
/* BOCZNE KOLUMNY */
.side-images {
  position: absolute;

  top: 100px;     /* wysokość navbaru */
  bottom: 62px;   /* wysokość stopki */

  width: 220px;

  z-index: 2;

  overflow: hidden;
}

/* LEWA */
.left-side {
  left: 0;
}

/* PRAWA */
.right-side {
  right: 0;
}

/* OBRAZY */
.side-images img {
  width: 100%;
  height: 33.33%;

  object-fit: cover;

  display: block;

  border-top: 2px solid cyan;
  border-bottom: 2px solid cyan;

  box-shadow:
    0 0 15px cyan,
    0 0 30px rgba(0,255,255,0.4);

  transition: 0.3s;
}

/* HOVER */
.side-images img:hover {
  filter: brightness(1.2);

  box-shadow:
    0 0 25px cyan,
    0 0 50px cyan;
}

/* ODSTĘP OD KOLUMN */
.section {
  padding-left: 260px;
  padding-right: 260px;
}

/* TELEFONY */
@media (max-width: 1400px) {

  .side-images {
    display: none;
  }

  .section {
    padding-left: 50px;
    padding-right: 50px;
  }
}
/* PŁYNNE PRZEJŚCIA */
body,
.navbar,
.box,
footer,
.side-images img,
nav a,
.section p,
.section h2 {
  transition: 0.4s;
}

/* PRZYCISK MOTYWU */
#theme-toggle {
  position: fixed;

  top: 8px;
  right: 10px;

  width: 30px;
  height: 30px;

  border: none;
  border-radius: 50%;

  background: rgba(0,0,0,0.45);

  color: white;
  font-size: 14px;

  cursor: pointer;

  z-index: 9999;

  backdrop-filter: blur(10px);

  border: 2px solid cyan;

  box-shadow:
    0 0 8px cyan;

  transition: 0.3s;
}

/* HOVER */
#theme-toggle:hover {
  transform: scale(1.1);

  box-shadow:
    0 0 15px cyan,
    0 0 30px cyan;
}

/* JASNY MOTYW GAMING */
.light-theme {
  background-image: url("day.jpg");


}

/* BOX */
.light-theme .box {
  background: rgba(255,255,255,0.08);

  border: 2px solid #66d9ff;

  box-shadow:
    0 0 15px #66d9ff;
}

/* MENU */
.light-theme nav a {
  color: black;
}

/* TEKST */
.light-theme .section p,
.light-theme .text h3,
.light-theme footer {
  color: #ffffff;
}

/* STOPKA */
.light-theme footer {
  background: rgba(255,255,255,0.08);

  border-top: 2px solid #66d9ff;
}

/* GRID */
.light-theme body::before {
  opacity: 0.08;
}

.gallery {
  width: 100%;
  max-width: 1200px;

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;

  margin-top: 40px;
}

.gallery img {
  width: 100%;
  height: 220px;

  object-fit: cover;

  border-radius: 15px;

  border: 2px solid cyan;

  box-shadow: 0 0 15px cyan;

  transition: 0.3s;
}

.gallery img:hover {
  transform: scale(1.05);

  box-shadow:
    0 0 25px cyan,
    0 0 50px cyan;
}

/* RESPONSYWNOŚĆ */
@media (max-width: 900px) {
  .gallery {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .gallery {
    grid-template-columns: 1fr;
  }
}

/* LIGHTBOX TŁO */
.lightbox {
  display: none;

  position: fixed;
  top: 0;
  left: 0;

  width: 100%;
  height: 100%;

  background: rgba(0,0,0,0.9);

  justify-content: center;
  align-items: center;

  z-index: 99999;
}

/* OBRAZ W LIGHTBOX */
.lightbox img {
  max-width: 90%;
  max-height: 90%;

  border-radius: 15px;

  box-shadow: 0 0 30px cyan;
}

/* ZAMYKANIE */
.lightbox .close {
  position: absolute;

  top: 20px;
  right: 30px;

  font-size: 40px;
  color: white;

  cursor: pointer;
}

/* KLIKALNE ZDJĘCIA */
.gallery img {
  cursor: pointer;
}
@media (max-width: 768px) {

  /* navbar */
  .navbar {
    flex-direction: column;
    height: auto;
    padding: 20px;
    gap: 10px;
  }

  nav {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
  }

  /* sekcje */
  .section {
    padding: 20px;
  }

  .section h2 {
    font-size: 32px;
    text-align: center;
  }

  /* download grid */
  .download-grid {
    grid-template-columns: 1fr;
  }

  /* galeria */
  .gallery {
    grid-template-columns: 1fr;
  }

  /* boxy */
  .box {
    width: 100%;
    padding: 15px;
  }
}
/* GRID AKTUALNOŚCI */
.news-grid {
  width: 100%;

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 25px;

  margin-top: 40px;

  align-items: start;
}

/* KAFELKI */
.news-card {
  background: rgba(20,20,20,0.75);

  border: 2px solid cyan;

  border-radius: 20px;

  padding: 25px;

  box-shadow: 0 0 15px cyan;

  transition: 0.3s;

  height: fit-content;
}

/* HOVER */
.news-card:hover {
  transform: translateY(-5px);

  box-shadow:
    0 0 25px cyan,
    0 0 50px cyan;
}

/* TYTUŁ */
.news-card h3 {
  font-size: 24px;

  margin-bottom: 15px;

  color: white;

  text-shadow: 0 0 10px cyan;
}

/* KRÓTKI OPIS */
.short-text {
  color: #ddd;

  margin-bottom: 20px;
}

/* UKRYTA TREŚĆ */
.full-text {
  max-height: 0;

  overflow: hidden;

  transition: max-height 0.4s ease;

  color: #ccc;
}

/* OTWARCIE */
.news-card.active .full-text {
  max-height: 300px;
}

/* PRZYCISK */
.news-button {
  margin-top: 20px;

  width: 100%;

  padding: 12px;

  border: none;
  border-radius: 12px;

  background: rgba(0,255,255,0.15);

  color: white;

  font-weight: bold;

  cursor: pointer;

  border: 2px solid cyan;

  transition: 0.3s;
}

/* HOVER */
.news-button:hover {
  background: cyan;

  color: black;

  box-shadow:
    0 0 20px cyan;
}

/* RESPONSYWNOŚĆ */
@media (max-width: 1200px) {
  .news-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 900px) {
  .news-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .news-grid {
    grid-template-columns: 1fr;
  }
}

/* OGLĄDANKO */

.watch-login {
  display: flex;
  flex-direction: column;
  gap: 20px;

  width: 350px;
}

.watch-login input {
  padding: 15px;

  border-radius: 12px;

  border: 2px solid cyan;

  background: rgba(0,0,0,0.5);

  color: white;

  font-size: 18px;
}

.watch-login button {
  padding: 15px;

  border: none;

  border-radius: 12px;

  background: cyan;

  color: black;

  font-weight: bold;

  cursor: pointer;
}

.watch-grid {
  width: 100%;

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 25px;

  margin-top: 40px;
}

.watch-grid iframe {
  width: 100%;
  height: 350px;

  border: 2px solid cyan;

  border-radius: 20px;

  box-shadow: 0 0 20px cyan;
}

@media (max-width: 900px) {

  .watch-grid {
    grid-template-columns: 1fr;
  }

}

/* REKRUTACJA */

.recruitment-grid {
  width: 100%;

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 25px;

  margin-top: 40px;
}

.recruitment-card {
  background: rgba(20,20,20,0.75);

  border: 2px solid cyan;

  border-radius: 20px;

  padding: 30px;

  box-shadow: 0 0 20px cyan;

  text-align: center;
}

.recruitment-card h3 {
  font-size: 28px;

  margin-bottom: 20px;

  text-shadow: 0 0 10px cyan;
}

.recruit-button {
  display: inline-block;

  margin-top: 20px;

  padding: 12px 25px;

  border-radius: 12px;

  background: cyan;

  color: black;

  font-weight: bold;

  text-decoration: none;

  border: 2px solid cyan;

  transition: 0.3s;
}

.recruit-button:hover {
  background: white;

  box-shadow:
    0 0 20px cyan;
}

@media (max-width: 900px) {

  .recruitment-grid {
    grid-template-columns: 1fr;
  }

}
/* REKRUTACJA ROZWIJANIE */

.recruitment-card {
  position: relative;
}

/* UKRYTY TEKST */
.recruitment-card .full-text {
  max-height: 0;

  overflow: hidden;

  transition: max-height 0.4s ease;

  color: #ccc;
}

/* OTWARCIE */
.recruitment-card.active .full-text {
  max-height: 300px;
}

/* PRZYCISK CZYTAJ WIĘCEJ */
.recruit-toggle {
  margin-top: 20px;

  width: 100%;

  padding: 12px;

  border: none;

  border-radius: 12px;

  background: rgba(0,255,255,0.15);

  color: white;

  font-weight: bold;

  cursor: pointer;

  border: 2px solid cyan;

  transition: 0.3s;
}

.recruit-toggle:hover {
  background: cyan;

  color: black;

  box-shadow:
    0 0 20px cyan;
}

/* PRZYCISK ZGŁOŚ SIĘ */
.recruit-button {
  display: inline-block;

  margin-top: 20px;

  padding: 10px 20px;

  border-radius: 12px;

  background: cyan;

  color: black;

  text-decoration: none;

  font-weight: bold;

  float: right;

  border: 2px solid cyan;

  transition: 0.3s;
}

.recruit-button:hover {
  background: white;

  box-shadow:
    0 0 20px cyan;
}



/* GRID FILMÓW */
.watch-grid {
  width: 100%;

  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 30px;

  margin-top: 40px;
}

/* KAFEL */
.watch-card {
  background: rgba(20,20,20,0.75);

  border: 2px solid cyan;

  border-radius: 20px;

  padding: 20px;

  box-shadow: 0 0 20px cyan;

  transition: 0.3s;

  text-align: center;
}

/* HOVER */
.watch-card:hover {
  transform: translateY(-5px);

  box-shadow:
    0 0 25px cyan,
    0 0 50px cyan;
}

/* PLAKAT */
.watch-card img {
  width: 100%;

  height: 420px;

  object-fit: cover;

  border-radius: 15px;

  border: 2px solid cyan;

  margin-bottom: 20px;

  transition: 0.3s;
}

.watch-card img:hover {
  transform: scale(1.03);

  box-shadow:
    0 0 20px cyan,
    0 0 40px cyan;
}

/* TYTUŁ */
.watch-card h3 {
  font-size: 28px;

  color: white;

  text-shadow: 0 0 10px cyan;
}

/* RESPONSYWNOŚĆ */
@media (max-width: 1000px) {
  .watch-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 700px) {
  .watch-grid {
    grid-template-columns: 1fr;
  }
}
/* KAFELKI */

.watch-card {
  cursor: pointer;

  background: rgba(20,20,20,0.75);

  border: 2px solid cyan;

  border-radius: 20px;

  padding: 20px;

  box-shadow: 0 0 20px cyan;

  transition: 0.3s;
}

.watch-card:hover {
  transform: scale(1.03);

  box-shadow:
    0 0 25px cyan,
    0 0 50px cyan;
}

.watch-card img {
  width: 100%;

  border-radius: 15px;

  border: 2px solid cyan;
}

.watch-card h3 {
  margin-top: 15px;

  text-align: center;

  color: white;

  text-shadow: 0 0 10px cyan;
}

/* POPUP */

.video-popup {
  display: none;

  position: fixed;

  inset: 0;

  background: rgba(0,0,0,0.9);

  z-index: 999999;

  justify-content: center;
  align-items: center;
}

.video-popup iframe {
  width: 80%;
  height: 80%;

  border: 2px solid cyan;

  border-radius: 20px;

  box-shadow: 0 0 30px cyan;
}

.video-close {
  position: absolute;

  top: 20px;
  right: 40px;

  font-size: 50px;

  color: white;

  cursor: pointer;
}
/* WYSZUKIWARKA */

.movie-search {
  width: 100%;
  max-width: 500px;

  padding: 15px;

  margin-bottom: 30px;
  margin-left: auto; /* PRZESUWA W PRAWO */

  display: block;

  border-radius: 15px;

  border: 2px solid cyan;

  background: rgba(0,0,0,0.5);

  color: white;

  font-size: 18px;

  outline: none;

  box-shadow: 0 0 15px cyan;
}

.movie-search:focus {
  box-shadow:
    0 0 20px cyan,
    0 0 40px cyan;
}
/* FORMULARZ REKRUTACJI */

.recruit-form {

  width: 100%;
  max-width: 700px;

  display: flex;
  flex-direction: column;

  gap: 20px;
}

.recruit-form input,
.recruit-form textarea,
.recruit-form select {

  padding: 15px;

  border-radius: 12px;

  border: 2px solid cyan;

  background: rgba(0,0,0,0.5);

  color: white;

  font-size: 18px;
}

.recruit-form textarea {

  min-height: 180px;

  resize: vertical;
}

.recruit-form button {

  align-self: flex-end;

  padding: 15px 30px;

  border: none;

  border-radius: 12px;

  background: cyan;

  color: black;

  font-weight: bold;

  cursor: pointer;

  transition: 0.3s;
}

.recruit-form button:hover {

  transform: scale(1.05);

  box-shadow:
    0 0 20px cyan,
    0 0 40px cyan;
}
/* WYSZUKIWARKA */

.search-wrapper {
  width: 100%;

  display: flex;
  justify-content: flex-end;

  margin-bottom: 30px;
}

.movie-search {
  width: 320px;

  padding: 15px;

  border-radius: 15px;

  border: 2px solid cyan;

  background: rgba(0,0,0,0.5);

  color: white;

  font-size: 18px;

  outline: none;

  box-shadow: 0 0 15px cyan;
}

/* GRID FILMÓW */

.watch-grid {
  width: 100%;

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 25px;
}

/* KAFELKI */

.watch-card {
  background: rgba(20,20,20,0.75);

  border: 2px solid cyan;

  border-radius: 20px;

  overflow: hidden;

  cursor: pointer;

  box-shadow: 0 0 15px cyan;

  transition: 0.3s;
}

.watch-card:hover {
  transform: scale(1.03);

  box-shadow:
    0 0 25px cyan,
    0 0 50px cyan;
}

/* OBRAZ */

.watch-card img {
  width: 100%;
  height: 320px;

  object-fit: cover;
}

/* TEKST */

.watch-card .text {
  padding: 15px;
}

.watch-card h3 {
  text-align: center;

  color: white;

  text-shadow: 0 0 10px cyan;
}

/* RESPONSYWNOŚĆ */

@media (max-width: 1200px) {
  .watch-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 900px) {
  .watch-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .watch-grid {
    grid-template-columns: 1fr;
  }

  .movie-search {
    width: 100%;
  }
}
/* ROZWIJANE LINKI */

.movie-links {
  max-height: 0;

  overflow: hidden;

  display: flex;
  flex-direction: column;

  gap: 10px;

  padding: 0 15px;

  transition: 0.4s ease;
}

/* AKTYWNY */

.watch-card.active .movie-links {
  max-height: 300px;

  padding: 15px;
}

/* LINKI */

.movie-links a {
  text-decoration: none;

  text-align: center;

  padding: 12px;

  border-radius: 12px;

  background: rgba(0,255,255,0.15);

  border: 2px solid cyan;

  color: white;

  font-weight: bold;

  transition: 0.3s;
}

/* HOVER */

.movie-links a:hover {
  background: cyan;

  color: black;

  box-shadow:
    0 0 20px cyan;
}
.movie-links {
  max-height: 0;

  overflow: hidden;

  display: flex;
  flex-direction: column;

  gap: 10px;

  padding: 0 15px;

  transition: max-height 0.4s ease,
              padding 0.3s ease;
}

.watch-card.active .movie-links {
  max-height: 300px;

  padding: 15px;
}
/* =========================
   GRANKO
========================= */

.games-grid {
  width: 100%;

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 25px;

  margin-top: 40px;
}

.game-card {
  background: rgba(20,20,20,0.75);

  border: 2px solid cyan;

  border-radius: 20px;

  overflow: hidden;

  box-shadow: 0 0 15px cyan;

  transition: 0.3s;
}

.game-card:hover {
  transform: scale(1.03);

  box-shadow:
    0 0 25px cyan,
    0 0 50px cyan;
}

.game-card img {
  width: 100%;
  height: 320px;

  object-fit: cover;
}

.game-card .text {
  padding: 15px;
}

.game-card h3 {
  text-align: center;

  color: white;

  text-shadow: 0 0 10px cyan;
}

.game-links {
  padding: 15px;
}

.game-links a {
  display: block;

  text-align: center;

  padding: 12px;

  border-radius: 12px;

  background: rgba(0,255,255,0.15);

  border: 2px solid cyan;

  color: white;

  text-decoration: none;

  font-weight: bold;

  transition: 0.3s;
}

.game-links a:hover {
  background: cyan;

  color: black;

  box-shadow:
    0 0 20px cyan;
}

/* RESPONSYWNOŚĆ */

@media (max-width: 1200px) {
  .games-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 900px) {
  .games-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .games-grid {
    grid-template-columns: 1fr;
  }
}
/* INFO OGLĄDANKO */

.watch-info{
  max-width: 900px;

  margin-top: -10px;
  margin-bottom: 30px;

  padding: 20px 30px;

  background: rgba(0,0,0,0.35);

  border: 2px solid cyan;

  border-radius: 20px;

  backdrop-filter: blur(10px);

  box-shadow:
    0 0 15px rgba(0,255,255,0.4);

  text-align: center;
}

.watch-info p{
  color: #d7faff;

  font-size: 18px;

  line-height: 1.7;

  text-shadow:
    0 0 6px rgba(0,255,255,0.5);
}

.watch-info p:first-child{
  margin-bottom: 12px;

  font-size: 20px;

  font-weight: bold;

  color: white;

  text-shadow:
    0 0 10px cyan;
}
.watch-filters{
  width:100%;

  display:flex;
  justify-content:space-between;
  align-items:center;

  gap:20px;

  margin-bottom:30px;
}

.type-filter,
.genre-filter{
  display:flex;
  gap:10px;
}

.type-filter button,
.genre-filter select{
  padding:10px 15px;

  border:2px solid cyan;

  border-radius:10px;

  background:rgba(0,0,0,.5);

  color:white;

  cursor:pointer;
}

.type-filter button:hover{
  background:cyan;
  color:black;
}

@media(max-width:900px){

  .watch-filters{
    flex-direction:column;
  }

  .type-filter,
  .genre-filter{
    flex-wrap:wrap;
    justify-content:center;
  }

}
/* ==========================
   INTERAKTYWNY LAS
========================== */

#forest-scene{
  position:fixed;
  inset:0;
  z-index:-999;
  overflow:hidden;
}

#forest-bg{
  position: fixed;

  inset: 0;

  width: 100%;
  height: 100%;

  object-fit: cover;

  left: 0;
  top: 0;

  transition:transform .2s linear,
             filter 1s ease;
}
body::after {
  content: "";

  position: fixed;
  inset: 0;

  background: rgba(0,0,0,0.35);

  pointer-events: none;

  z-index: -1;
}

.light-theme::after {
  background: rgba(0,0,0,0.15);
}
#background-layer {
  position: fixed;
  inset: 0;
  overflow: hidden;
  z-index: -1;
  pointer-events: none;
}
/* =====================================
   TELEFONY AUTO RESPONSIVE
===================================== */

@media (max-width:768px){

  .section{
    padding:15px !important;
  }

  /* SIATKI */

  .gallery,
  .news-grid,
  .download-grid,
  .watch-grid,
  .games-grid,
  .recruitment-grid{
    width:100%;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
    gap:10px;
  }

  /* KAFELKI */

  .box,
  .news-card,
  .watch-card,
  .game-card,
  .recruitment-card{
    width:100%;
    min-width:0;
    padding:10px !important;
    overflow:hidden;
  }

  /* OBRAZKI */

  .gallery img,
  .mod-link img,
  .watch-card img,
  .game-card img{
    width:100%;
    height:auto !important;
    aspect-ratio:1/1;
    object-fit:cover;
  }

  /* TŁO TELEFON */

  body{
    background-size:100% 100% !important;
    background-position:center center;
    background-repeat:no-repeat;
    background-color:#000;
  }

  #forest-bg{
    width:100vw;
    height:100vh;
    object-fit:fill;
    object-position:center center;
  }

  /* TEKST */

  h1{
    font-size:clamp(28px,6vw,48px);
  }

  h2{
    font-size:clamp(24px,5vw,40px) !important;
  }

  h3{
    font-size:clamp(16px,4vw,24px);
  }

  p,
  a,
  button,
  input,
  textarea,
  select{
    font-size:clamp(12px,3vw,18px);
  }

  #home h2{
    font-size:clamp(40px,12vw,110px);
    text-align:center;
  }

  #home p{
    font-size:clamp(16px,4vw,30px);
  }

  /* MENU */

  .navbar{
    height:auto;
    padding:15px;
    flex-direction:column;
  }

  nav{
    flex-wrap:wrap;
    justify-content:center;
  }

  /* WYSZUKIWARKA */

  .movie-search{
    width:100%;
    max-width:100%;
  }

  /* NAPRAWA TEKSTU W KAFELKACH */

  .news-card h3,
  .watch-card h3,
  .game-card h3,
  .recruitment-card h3,
  .text h3{
    font-size:clamp(12px,3vw,18px) !important;
    line-height:1.3;
    text-align:center;
    overflow-wrap:break-word;
    word-break:break-word;
  }

  .news-card p,
  .watch-card p,
  .game-card p,
  .recruitment-card p,
  .short-text,
  .full-text{
    font-size:clamp(11px,2.7vw,16px) !important;
    line-height:1.4;
    overflow-wrap:break-word;
    word-break:break-word;
  }

  .news-button,
  .recruit-button,
  .recruit-toggle,
  .movie-links a,
  .game-links a{
    font-size:clamp(10px,2.5vw,14px) !important;
    padding:8px !important;
  }

  *{
    overflow-wrap:break-word;
    word-break:break-word;
  }
}

/* DESKTOP */

.news-card h3,
.watch-card h3,
.game-card h3,
.recruitment-card h3{
  font-size:clamp(14px,2vw,28px);
}
