@charset "UTF-8";
/**
 * Newsletter Form Styling
 * Adapted to match the main theme colors (coral #b85151 and yellow #feea38)
 */

/* Newsletter Container */
#mc-form {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 500;
}

#mc_embed_signup {
	background: transparent;
	clear: both;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 500;
	width: 100%;
}

#mc_embed_signup_scroll {
	padding: 0;
}

/* Newsletter Headings */
#mc-form h2 {
	font-size: 1.5rem;
	font-weight: 600;
	color: #b85151;
	margin-bottom: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

/* Required Field Indicator */
#mc-form .indicates-required {
	margin-bottom: 1rem;
	font-size: 0.875rem;
	color: #666;
}

#mc-form .asterisk {
	color: #b85151;
	font-weight: bold;
}

/* Field Groups - moved up and consolidated */

/* Labels */
#mc-form .mc-field-group label {
	display: block;
	margin-bottom: 0.5rem;
	font-weight: 500;
	color: #000;
	font-size: 1.275rem;
	text-transform: normal;
	font-weight: 500;
	letter-spacing: 0.25px;
}

/* Input Fields */
#mc-form input[type='email'],
#mc-form input[type='text'] {
	width: 100%;
	padding: 12px 15px;
	border: 0;
	border-bottom: 2px solid #b85151;
	background: transparent;
	font-size: 1rem;
	transition: all 0.3s ease;
	box-sizing: border-box;
}

#mc-form input[type='email']:focus,
#mc-form input[type='text']:focus {
	background: #fdeeed;
	border-bottom: 2px solid #b85151;
	outline: none;
	box-shadow: 0 2px 0 0 rgba(254, 234, 56, 0.3);
}

/* Select Fields */
#mc-form .mc-field-group {
	position: relative;
	margin-bottom: 0rem;
}

#mc-form select {
	width: 100% !important;
	display: block !important;
	padding: 12px 50px 12px 15px;
	border: 2px solid #b85151 !important;
	border-radius: 0px;
	background: transparent;
	font-size: 1.275rem;
	transition: all 0.3s ease;
	box-sizing: border-box;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image: url('data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23ef8d84%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23ef8d84%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A');
	background-repeat: no-repeat;
	background-position: calc(100% - 30px) 50%;
}

/* Select field with value selected */
#mc-form select:not(:invalid):not([value='']) {
	padding-left: 20px;
	background-color: rgba(253, 238, 237, 0.3);
}

/* Clear button for select fields */
#mc-form .mc-field-group::after {
	content: '×';
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	background: #b85151;
	color: white;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	display: none;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: bold;
	cursor: pointer;
	z-index: 10;
	transition: all 0.3s ease;
	margin-top: 12px;
}

#mc-form .mc-field-group:hover::after {
	background: #feea38;
	color: #000;
}

/* Show clear button when select has value */
#mc-form .mc-field-group.has-value::after {
	display: flex;
}

#mc-form select:focus {
	background-color: #fdeeed;
	border-color: #feea38 !important;
	outline: none;
	box-shadow: 0 0 0 3px rgba(254, 234, 56, 0.2);
	padding-left: 20px;
}

#mc-form select option {
	color: #000;
	background: white;
	padding: 10px;
}

/* Checkboxes */
#mc-form input[type='checkbox'] {
	opacity: 1 !important;
	position: relative !important;
	margin-right: 0.75rem !important;
	width: 18px;
	height: 18px;
	border: 2px solid #b85151;
	border-radius: 0px;
	appearance: none;
	-webkit-appearance: none;
	background: transparent;
	cursor: pointer;
	transition: all 0.3s ease;
}

#mc-form input[type='checkbox']:checked {
	background: #feea38;
	border-color: #feea38;
}

#mc-form input[type='checkbox']:checked::after {
	content: '✓';
	position: absolute;
	top: -2px;
	left: 2px;
	color: #000;
	font-size: 14px;
	font-weight: bold;
}

#mc-form input[type='checkbox']:focus {
	outline: none;
	box-shadow: 0 0 0 3px rgba(239, 141, 132, 0.3);
}

/* Submit Button */
#mc-form input[type='submit'],
#mc-form .button {
	background: #feea38 !important;
	color: #000 !important;
	border: 2px solid #feea38 !important;
	padding: 12px 24px !important;
	border-radius: 0px !important;
	font-weight: 500 !important;
	font-size: 1.275rem !important;
	text-transform: normal !important;
	letter-spacing: 0.5px !important;
	cursor: pointer !important;
	transition: all 0.3s ease !important;
	width: auto !important;
	margin-top: 1rem !important;
}

#mc-form input[type='submit']:hover,
#mc-form input[type='submit']:focus,
#mc-form .button:hover,
#mc-form .button:focus {
	background: #b85151 !important;
	border-color: #b85151 !important;
	color: white !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 12px rgba(239, 141, 132, 0.3) !important;
}

/* Response Messages */
#mc-form #mce-responses {
	margin-top: 1rem;
}

#mc-form .response {
	padding: 12px 15px;
	border-radius: 6px;
	margin-bottom: 1rem;
	font-weight: 500;
}

#mc-form #mce-error-response {
	background: rgba(220, 53, 69, 0.1);
	border: 2px solid #dc3545;
	color: #dc3545;
}

#mc-form #mce-success-response {
	background: rgba(40, 167, 69, 0.1);
	border: 2px solid #28a745;
	color: #28a745;
}

/* Clear Styles */
#mc-form .clear {
	clear: both;
}

/* Hidden Honeypot Field */
#mc-form div[aria-hidden='true'] {
	position: absolute !important;
	left: -5000px !important;
}

/* Responsive Design */
@media (max-width: 768px) {
	#mc-form h2 {
		font-size: 1.25rem;
	}

	#mc-form input[type='email'],
	#mc-form input[type='text'],
	#mc-form select {
		padding: 10px 12px;
		font-size: 0.9rem;
	}

	#mc-form input[type='submit'],
	#mc-form .button {
		padding: 10px 20px !important;
		font-size: 0.9rem !important;
		width: 100% !important;
	}
}

/* Focus Management for Better Accessibility */
#mc-form *:focus {
	outline: none;
}

#mc-form input:focus,
#mc-form select:focus,
#mc-form button:focus {
	box-shadow: 0 0 0 3px rgba(254, 234, 56, 0.3);
}
