.footer__form {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.footer__form p { padding: 0; margin: 0; border: 0; }
.footer__form .wpcf7-not-valid-tip {
	font-size: 15px;
    padding: 5px 5px 0;
}
.wpcf7 .footer__form ~ .wpcf7-response-output {
	margin: 30px 0 0;
    font-size: 15px;
}
.footer__form-head {
    display: flex;
    gap: 30px;
}
.footer__form-btn {
    width: 100%;
    min-height: 52px;
    font-size: 15px;
}

.footer__form-btn-wrapper {
  position: relative;
  overflow: hidden;
}
.footer__form-btn-wrapper .wpcf7-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  z-index: 10;
  display: block;
  box-shadow: 0px 0px 0px 1000px #535c64;
}

@media (max-width: 767px) {
	.footer__form { margin-bottom: 15px; }
	.footer__form, .footer__form-head { gap: 15px; }
	.footer__form-head {
		flex-direction: column;
	}
	.wpcf7 .footer__form ~ .wpcf7-response-output {
		margin: 0 0 15px;
	}
}

.header-wrap--blackout, .header-wrap--blackout-gradient {
    position: relative;
    z-index: 2;
}
.header-wrap--blackout::before, .header-wrap--blackout-gradient::before {
	content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.header-wrap--blackout::before {
	background: #000;
    opacity: 40%; /* Прозрачность фона в заливке */
}
.header-wrap--blackout-gradient::before {
	background: linear-gradient(
		180deg, 
		black 25%,
		rgba(0,0,0, 80%) /* Процент отвечает за прозрачность нижнего цвета, на него влияет параметр opacity ниже */
	);
    opacity: 50%; /* Прозрачность фона в градиенте */
}