/**
 * Footer Block Styles
 */

.footer-block {
	width: 100%;
	background: url('/wp-content/themes/rvn-bt-theme/build/images/RC_Website_Footer.jpg') center center no-repeat;
	background-size: cover;
	color: var(--wp--preset--color--white);
	padding: var(--rvn-spacing-4xl) 0;
	position: relative;
}

.footer-block__container {
	width: 100%;
	padding: 0 var(--rvn-spacing-xl);
}

/* Newsletter Section */
.footer-block__newsletter {
	margin-bottom: var(--rvn-spacing-4xl);
	padding-bottom: var(--rvn-spacing-4xl);
}

.footer-block__newsletter-heading {
	text-transform: uppercase;
	margin: 0 0 var(--rvn-spacing-lg) 0;
	color: var(--wp--preset--color--white);
}

.footer-block__newsletter-form {
	max-width: 55%;
}

/* Gravity Forms Styling */
.footer-block__newsletter-form .gform_wrapper {
	margin: 0;
}

.footer-block__newsletter-form .gform_wrapper form {
	display: flex !important;
	align-items: flex-start !important;
	gap: 16px !important;
	flex-wrap: nowrap !important;
}

.footer-block__newsletter-form .gform_wrapper .gform_body {
	flex: 1 1 auto !important;
	max-width: 100% !important;
	min-width: 723px !important;
	width: 100% !important;
}

.footer-block__newsletter-form .gform_fields {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.footer-block__newsletter-form .gfield {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.footer-block__newsletter-form .gfield_label,
.footer-block__newsletter-form .gfield_description,
.footer-block__newsletter-form .gfield_required {
	display: none;
}

.footer-block__newsletter-form .ginput_container {
	width: 100%;
}

.footer-block__newsletter-form .gform_wrapper input[type="email"],
.footer-block__newsletter-form .gform_wrapper input[type="text"],
.footer-block__newsletter-form .gform_wrapper .ginput_container input[type="email"],
.footer-block__newsletter-form .gform_wrapper .ginput_container input[type="text"] {
	width: 100% !important;
	padding: 25px 30px !important;
	background-color: rgba(255, 255, 255, 0.05) !important;
	border: 1px solid rgba(255, 255, 255, 0.2) !important;
	border-radius: 10px !important;
	color: var(--wp--preset--color--white) !important;
	font-size: var(--rvn-font-size-body-2) !important;
	font-weight: var(--rvn-font-weight-regular) !important;
	line-height: var(--rvn-line-height-body-2) !important;
	transition: all 0.3s ease !important;
	font-family: inherit !important;
}

.footer-block__newsletter-form .gform_wrapper input[type="email"]:focus,
.footer-block__newsletter-form .gform_wrapper input[type="text"]:focus,
.footer-block__newsletter-form .gform_wrapper .ginput_container input[type="email"]:focus,
.footer-block__newsletter-form .gform_wrapper .ginput_container input[type="text"]:focus {
	background-color: rgba(255, 255, 255, 0.08) !important;
	border-color: rgba(255, 255, 255, 0.4) !important;
	outline: none !important;
}

.footer-block__newsletter-form .gform_wrapper input[type="email"]::placeholder,
.footer-block__newsletter-form .gform_wrapper input[type="text"]::placeholder,
.footer-block__newsletter-form .gform_wrapper .ginput_container input[type="email"]::placeholder,
.footer-block__newsletter-form .gform_wrapper .ginput_container input[type="text"]::placeholder {
	color: rgba(255, 255, 255, 0.5) !important;
	font-size: var(--rvn-font-size-body-2) !important;
	font-weight: var(--rvn-font-weight-regular) !important;
	line-height: var(--rvn-line-height-body-2) !important;
}

.footer-block__newsletter-form .gform_footer {
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.footer-block__newsletter-form .gform_wrapper input[type="submit"],
.footer-block__newsletter-form .gform_wrapper .gform_button,
.footer-block__newsletter-form .gform_wrapper .gform_footer input[type="submit"],
.footer-block__newsletter-form .gform_wrapper .gform_footer .gform_button {
	padding: 18px 50px !important;
	background-color: var(--wp--preset--color--primary) !important;
	color: var(--wp--preset--color--white) !important;
	border: none !important;
	border-radius: 0 !important;
	font-size: 16px !important;
	font-weight: var(--rvn-font-weight-semibold) !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	transition: all 0.3s ease !important;
	white-space: nowrap !important;
}

.footer-block__newsletter-form .gform_wrapper input[type="submit"]:hover,
.footer-block__newsletter-form .gform_wrapper .gform_button:hover,
.footer-block__newsletter-form .gform_wrapper .gform_footer input[type="submit"]:hover,
.footer-block__newsletter-form .gform_wrapper .gform_footer .gform_button:hover {
	background-color: var(--rvn-button-primary-light-hover-bg) !important;
	color: var(--rvn-button-primary-light-hover-text) !important;
	border-radius: var(--rvn-button-primary-light-hover-radius) !important;
}

/* Gravity Forms Validation */
.footer-block__newsletter-form .gform_wrapper .gfield_error input {
	border-color: #ff6b6b !important;
}

.footer-block__newsletter-form .validation_error {
	display: none;
}

.footer-block__newsletter-form .validation_message {
	margin-top: 8px;
	color: #ff6b6b;
	font-size: 14px;
}

/* Gravity Forms Confirmation */
.footer-block__newsletter-form .gform_confirmation_message {
	padding: 15px 20px;
	background-color: rgba(177, 212, 0, 0.15);
	border: 1px solid var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--white);
	font-size: 16px;
}

/* Main Footer Content */
.footer-block__main {
	display: grid;
	grid-template-columns: 1fr minmax(0, 564px);
	column-gap: clamp(var(--rvn-spacing-6xl), 20vw, 300px);
	row-gap: var(--rvn-spacing-4xl);
	margin-bottom: var(--rvn-spacing-4xl);
	padding-bottom: 100px;
	border-bottom: 3px solid var(--rvn-color-gray-blue);
}

.footer-block__logo-contact-wrapper {
	display: flex;
	gap: clamp(var(--rvn-spacing-4xl), 8vw, 120px);
}

/* Logo Column */
.footer-block__logo-col {
	flex-shrink: 0;
}

.footer-block__logo {
	max-width: 200px;
	display: block;
	transition: opacity 0.3s ease;
}

.footer-block__logo--mobile {
	display: none;
}

.footer-block__logo:hover {
	opacity: 0.8;
}

.footer-block__logo-img {
	width: 100%;
	height: auto;
	display: block;
}

/* Contact Column */
.footer-block__contact-col {
	display: flex;
	flex-direction: column;
	gap: var(--rvn-spacing-sm);
}

.footer-block__contact-heading {
	margin: 0 0 var(--rvn-spacing-md) 0;
	color: var(--wp--preset--color--primary);
	text-transform: uppercase;
}

.footer-block__contact-email,
.footer-block__contact-phone {
	color: var(--wp--preset--color--white);
	text-decoration: none;
	transition: color 0.3s ease;
}

.footer-block__contact-email:hover,
.footer-block__contact-phone:hover {
	color: var(--wp--preset--color--primary);
}

/* Social Links */
.footer-block__social {
	display: flex;
	gap: var(--rvn-spacing-md);
}

.footer-block__social-link {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--white);
	transition: color 0.3s ease;
	text-decoration: none;
}

.footer-block__social-icon {
	width: 28px;
	height: 28px;
	display: block;
}

.footer-block__social-link:hover {
	color: var(--wp--preset--color--primary);
}

/* Tagline Column */
.footer-block__tagline-col {
	max-width: 564px;
}

.footer-block__tagline {
	margin: 0;
	color: rgba(255, 255, 255, 0.9);
}

/* Footer Bottom */
.footer-block__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--rvn-spacing-xl);
}

.footer-block__copyright {
	display: flex;
	align-items: center;
	gap: var(--rvn-spacing-lg);
	flex-wrap: wrap;
}

.footer-block__copyright p {
	margin: 0;
	font-size: 16px !important;
  font-weight: 400;
	color: var(--rvn-color-white);
}

.footer-block__privacy-link {
	color: var(--rvn-color-white);
	text-decoration: none;
	font-size: 18px;
  font-weight: 400;
	transition: color 0.3s ease;
}

.footer-block__privacy-link:hover {
	color: var(--wp--preset--color--white);
}

/* Badge Logos */
.footer-block__badges {
	display: flex;
	gap: var(--rvn-spacing-md);
	align-items: center;
}

.footer-block__badge {
	display: flex;
	align-items: center;
}

.footer-block__badge-img {
	height: auto;
	width: 120px;
	display: block;
}

/* Responsive Styles */
@media (max-width: 1023px) {
	.footer-block__main {
		grid-template-columns: 1fr;
		gap: var(--rvn-spacing-3xl);
	}

	.footer-block__logo-contact-wrapper {
		gap: var(--rvn-spacing-3xl);
	}

	.footer-block__newsletter-form {
		max-width: 100%;
	}

	.footer-block__newsletter-form .gform_wrapper .gform_body {
		min-width: 0 !important;
		max-width: 100% !important;
		width: 100% !important;
	}
}

@media (max-width: 767px) {
	.footer-block {
		padding: var(--rvn-spacing-3xl) 0;
	}

	.footer-block__container {
		padding: 0 var(--rvn-spacing-lg);
	}

	.footer-block__newsletter {
		margin-bottom: var(--rvn-spacing-3xl);
		padding-bottom: var(--rvn-spacing-3xl);
	}

	.footer-block__newsletter-heading {
		font-size: var(--rvn-font-size-h6);
		text-align: center;
	}

	/* Footer form responsive - stack vertically */
	.footer-block__newsletter-form .gform_wrapper form {
		flex-direction: column !important;
		gap: 12px !important;
	}

	.footer-block__newsletter-form .gform_wrapper .gform_body {
		flex: 1 1 auto !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.footer-block__newsletter-form .gform_footer {
		width: 100% !important;
	}

	.footer-block__newsletter-form .gform_wrapper input[type="submit"],
	.footer-block__newsletter-form .gform_wrapper .gform_button {
		width: 100% !important;
	}

	.footer-block__main {
		grid-template-columns: 1fr;
		gap: var(--rvn-spacing-xl);
		margin-bottom: var(--rvn-spacing-3xl);
		padding-bottom: var(--rvn-spacing-3xl);
		text-align: center;
	}

	.footer-block__logo-contact-wrapper {
		flex-direction: column;
		align-items: center;
		gap: var(--rvn-spacing-xl);
	}

	.footer-block__logo--desktop {
		display: none;
	}

	.footer-block__logo--mobile {
		display: block;
		position: relative;
		left: -10px;
	}

	.footer-block__logo {
		margin: 0 auto;
		max-width: 168px;
	}

	.footer-block__logo-img {
		max-width: 168px;
		max-height: 62px;
		object-fit: contain;
	}

	.footer-block__contact-col {
		align-items: center;
	}

	.footer-block__social {
		justify-content: center;
	}

	.footer-block__bottom {
		flex-direction: column;
		align-items: center;
		gap: var(--rvn-spacing-lg);
		text-align: center;
	}

	.footer-block__copyright {
		flex-direction: column;
		align-items: center;
		gap: var(--rvn-spacing-sm);
	}

	.footer-block__badges {
		flex-wrap: wrap;
		gap: var(--rvn-spacing-md);
		justify-content: center;
	}

	.footer-block__badge-img {
		height: 32px;
		width: auto;
		object-fit: contain;
	}
}
