@charset "UTF-8";
.full-width-banner {
  position: relative;
  width: 100%;
  overflow: hidden;
  height: auto;
  max-height: 1000px;
  min-height: 300px;
  aspect-ratio: 16/9;
}

.banner-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("livingroom-JWaCbUz.jpg") no-repeat top center;
  background-size: cover;
}
.banner-background.job {
  background: url("office-VZxO9Rh.jpg") no-repeat top center;
  background-size: cover;
}
.banner-background.hardware {
  background: url("hardware-cytMueS.jpg") no-repeat top center;
  background-size: cover;
}

.banner-content {
  position: absolute;
  bottom: 20px;
  left: 50px;
  width: calc(100% - 100px);
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  color: white;
}

.custom-heading {
  text-align: left;
  text-transform: uppercase;
  color: #f1800a;
  font-size: 2rem;
  font-weight: 900;
  line-height: 0.9;
  padding: 0.5em 2em 0.5em 1em;
  background-image: url("white-heading-overlay-zf12CDX.png");
  background-repeat: no-repeat;
  background-position: top right;
  position: relative;
  top: -5rem;
}

.custom-heading b {
  color: #231f20;
  /*font-size: 2.2rem;*/
  font-weight: 900;
  position: relative;
  top: -0.2em;
  text-wrap: nowrap;
  font-size: clamp(0.5rem, 2vw, 2rem);
}

.cta-container {
  position: absolute;
  bottom: -10%;
  right: 10%;
  transform: translateY(-50%);
  background-image: url("orange-heading-xOXdsHz.png");
  background-repeat: no-repeat;
  background-position: top left;
  padding: 1rem 1rem 1rem 4rem;
}

.banner-content .custom-heading {
  font-size: clamp(0.5rem, 3vw, 3rem);
}

.CTA {
  font-size: clamp(1rem, 2vw, 2rem); /* Velikost tlačítka se přizpůsobuje viewportu */
  color: white;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  margin-top: 0px;
  text-wrap: nowrap;
}

.CTA::after {
  content: "→"; /* Unicode pro šipku doprava */
  margin-left: 10px;
  transition: margin-left 0.3s ease;
}

.CTA:hover::after {
  margin-left: 15px;
}

@media (max-width: 768px) {
  .banner-content div {
    font-size: 2vw;
  }
  .custom-heading b {
    font-size: 2vw;
  }
  .cta-container {
    padding: 0.25rem 0.25rem 0.25rem 3rem;
  }
  .CTA {
    font-size: 2vw;
  }
}
@keyframes fadeOutIn {
  0% {
    opacity: 1;
  }
  25% {
    opacity: 0;
  }
  75% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fading-text {
  animation: fadeOutIn 1.5s ease-in-out;
}

.form-label {
  font-weight: bold;
}

body {
  font-family: "Montserrat", sans-serif;
  font-size: clamp(16px, 2.4vw, 22px);
  display: flex;
  flex-direction: column;
  height: 100%;
}

.page {
  max-width: 1400px;
  width: 90%; /* nebo konkrétní šířka např. 600px */
  margin: 0 auto;
  padding-top: 83px;
  flex: 1;
  min-height: calc(100vh - 101px);
}

ul li {
  margin-top: clamp(4px, 0.5vw, 12px);
  margin-bottom: clamp(4px, 0.5vw, 12px);
}

.card-invitation {
  max-width: 25rem;
}

footer {
  padding: 15px 0;
  margin-top: auto;
}
footer .container {
  text-align: center;
  font-size: 0.9rem;
}
footer .container a {
  color: white;
  text-decoration: none;
}
footer .container a:hover {
  text-decoration: underline;
}

@media (max-width: 1200px) {
  .unimportant {
    display: none;
  }
}
@media (max-width: 768px) {
  .unimportant-2 {
    display: none;
  }
}
form.needs-validation ul li {
  background-color: var(--bs-danger-bg, #f8d7da); /* Červené pozadí pro danger */
  color: var(--bs-danger-text, #842029); /* Textová barva pro danger */
  padding: 0.5rem;
  border-radius: 0.25rem;
  margin-bottom: 0.25rem;
  margin-left: 0.25rem;
  border: 1px solid var(--bs-danger-border, #f5c2c7); /* Lemování pro lepší viditelnost */
  font-size: small;
  display: inline-flex; /* Zamezí roztahování na celou šířku */
  align-items: center;
  gap: 0.5rem; /* Mezera mezi ikonou a textem */
  max-width: fit-content; /* Upraví šířku podle obsahu */
}
form.needs-validation ul li::before {
  content: "\f33a"; /* Unicode pro ikonu triangle-fill */
  font-family: "bootstrap-icons";
  color: var(--bs-danger);
  font-size: 1.2rem;
}

.form-wrapper {
  border: 1px solid rgba(0, 0, 0, 0.1); /* Tenký rámeček */
  border-radius: 0.5rem;
  background-color: white;
  padding: 2rem;
}

/*# sourceMappingURL=app.css-txUU1Tq.map */
