.btn-wrapper {
  position: relative;
  display: inline-block;
}

.btn-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 16px;
  height: 16px;
  border: 2px solid #fff;
  border-radius: 50%;
}

.__events--container {
  margin: 0 auto;
  padding-block: 25px;
}
.__events h1 {
  margin-bottom: 30px;
}
.__events a {
  text-decoration: none;
  color: inherit;
}
.__events--intro {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 40px;
}
.__events--cards {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
}
@media (max-width: 767px) {
  .__events--cards {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 575px) {
  .__events--cards {
    grid-template-columns: 1fr;
  }
}
.__events--card {
  border: 1px solid var(--border-color);
  padding: 20px 16px;
  min-height: 400px;
  text-align: center;
  border-radius: 8px;
}
.__events--card-image {
  position: relative;
  padding: 12px;
  overflow: hidden;
  height: 340px;
}
.__events--card-image img {
  position: absolute;
  left: 50%;
  top: 50%;
  height: 100%;
  width: auto;
  transform: translate(-50%, -50%);
}
.__events--card-body {
  text-align: center;
}
.__events--card-title {
  font-size: 25px;
  color: var(--text-primary);
  font-weight: 700;
  margin: 18px 0 12px;
}
.__events--card-text {
  color: var(--text-secondary);
  font-size: 0.875rem;
}

.__event-hero {
  position: relative;
  min-height: 700px;
  overflow: hidden;
}
.__event-hero--loader {
  position: absolute;
  inset: 0;
  background: black;
}
.__event-hero--image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.6s ease;
}
.__event-hero--overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1;
}
.__event-hero--content {
  position: relative;
  z-index: 2;
  min-height: 700px;
  max-width: 1400px;
  margin: 0 auto;
  padding: 80px 40px;
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 80px;
  align-items: center;
}
@media (max-width: 991.98px) {
  .__event-hero--content {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
@media (max-width: 575px) {
  .__event-hero--content {
    padding: 30px 15px;
  }
}
@media (max-width: 400px) {
  .__event-hero--content {
    padding: 20px 10px;
  }
}
.__event-hero--details {
  max-width: 700px;
  color: white;
}
.__event-hero--details h1 {
  margin-bottom: 24px;
  font-size: 3.5rem;
  line-height: 1.1;
}
@media (max-width: 575px) {
  .__event-hero--details h1 {
    font-size: 2.5rem;
  }
}
@media (max-width: 400px) {
  .__event-hero--details h1 {
    font-size: 2rem;
  }
}
.__event-hero--details p {
  margin-bottom: 16px;
  font-size: 1.125rem;
  line-height: 1.8;
}

.__event-form {
  background: rgba(255, 255, 255, 0.95);
  padding: 32px;
  border-radius: 8px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}
@media (max-width: 575px) {
  .__event-form {
    padding: 20px;
  }
}
.__event-form h2 {
  margin-bottom: 24px;
}
.__event-form form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.__event-form input {
  height: 52px;
  padding: 0 16px;
  border: 1px solid #ddd;
}
.__event-form button {
  height: 52px;
  border: 0;
  background: red;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.__event-logos--container {
  margin: 25px auto;
  max-width: 1400px;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.__event-logos--logos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 220px));
  gap: 2.5rem;
  padding: 2.5rem;
  max-width: 1200px;
  justify-content: center;
  align-items: center;
}
.__event-logos--logos a {
  margin: auto;
}
.__event-logos--logo-item {
  height: 120px;
  width: 120px;
  margin: auto;
  object-fit: contain;
}

dfn {
  color: #ec1549;
  font-weight: bold;
}

.parsley-error {
  position: relative;
  list-style-type: none;
  padding-left: 15px;
  margin: 4px 0 0;
  font-size: 0.75rem;
  line-height: 14px;
}
.parsley-error::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  left: 0;
  background-image: url("data:image/svg+xml,%0A%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.99996 0.166504C2.77996 0.166504 0.166626 2.77984 0.166626 5.99984C0.166626 9.21984 2.77996 11.8332 5.99996 11.8332C9.21996 11.8332 11.8333 9.21984 11.8333 5.99984C11.8333 2.77984 9.21996 0.166504 5.99996 0.166504ZM6.58329 8.9165H5.41663V7.74984H6.58329V8.9165ZM6.58329 6.58317H5.41663V3.08317H6.58329V6.58317Z' fill='%23E71919'/%3E%3C/svg%3E%0A");
}
