* {
	color: var(--white) !important;
}

.black *:not(button, input) {
	color: var(--black) !important;
}

.center {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.row {
	flex-direction: row;
}

.uppercase {
	text-transform: uppercase;
}

.hero {
	padding: 0;
	display: flex;
	flex-direction: column;
	/* height: 90vh; */
	/* height: 50em; */

	header {
		height: 26em;
	}

	h2 {
		max-width: 90%;
	}

	section.cta {
		height: 30em;
		padding-bottom: 2rem;
		justify-content: space-evenly;
		gap: 0;
	}
}


#main-contact-input {
	background-color: white;
	color: #434343;
	text-transform: lowercase !important;
}

header.masthead {
	padding: 0;
	/* height: 50em; */
}

header.masthead .container {
	/* padding: 7em 0; */
	padding: 0;
}

header.masthead img {
	/* height: 20em; */
	height: clamp(13em, 15vw + 7em, 20em);
}


header.masthead .masthead-heading {
	padding: .5rem 0 2.5rem 0;
	font-size: 2.5rem;
}

.navbar-brand {
	padding: 0;
}

.navbar-brand img {
	/* height: 3.5rem !important; */
	height: clamp(2.9rem, 3vw + 1rem, 3.5rem) !important;
}


.team-member .rounded-circle {
	height: 9rem;
	/* height: 13.1rem; */
}

section.cta {
	background-color: var(--s-yellow);
	/* gap: 4em; */
	gap: 2em;
	padding: 0;
}

input,
button,
.button {
	/* background-color: var(--s-green); */
	background-color: var(--button-green);
	width: fit-content;
	font-size: 1.5rem;
	text-decoration: none;
}

button,
.button {
	border: none;
	padding: .4rem 2rem;
	padding: 0.6rem 3.5rem;
	border-radius: 0.375rem;
	font-family: 'Avenir Light', sans-serif;
}

a {
	font-family: 'Avenir Light', sans-serif;
}

button:hover,
.button:hover {
	filter: brightness(1.1);
}

button:active,
.button:active {
	filter: brightness(.9);
}

input {
	color: var(--black) !important;
	font-family: 'Avenir Light', sans-serif;
	letter-spacing: 0.6px;
	font-size: 0.9em;
}

::placeholder {
	color: lightgrey !important;
	/* Firefox */
	opacity: 1;
}

#main-contact-input {
	width: 23em !important;
	max-width: 90%;
}

#subscribe-form {
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	/* font-size: 1.8em !important; */
	font-size: 1.5em !important;
	flex-wrap: wrap;
	gap: .5rem;

	button {
		padding-top: initial;
		padding-bottom: initial;
		height: 100%;
		font-size: 0.9em;
		max-height: 3rem;
	}
}

header {

	h2 {
		/* font-size: 2.5rem !important; */
		/* font-size: 3rem !important; */
		margin-bottom: 0;
	}

	.description {
		font-size: 1rem;
		font-weight: 300;
	}
}

h2,
h3 {
	text-align: center;
}

.services {
	background-color: var(--white);
}

.services .subheading {
	/* padding: 3rem 0; */
	margin-top: 3rem;
	text-transform: capitalize;
	font-weight: 500;
	/* font-size: 3rem; */
	font-size: clamp(2rem, 0.7rem + 3vw, 3rem);
}

.separator {
	width: 15rem;
	height: .3rem;
	background-color: var(--s-green);
	margin: 4rem auto;
	border-radius: 100%;
}

section.conocenos {
	background-color: var(--s-green) !important;
}

.page-section h2.section-heading {
	margin: 0;
}

section#contact {
	background-image: url("../assets/img/contact-banner.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	gap: 2rem;
	height: 32rem;
	padding: 0;
	padding-bottom: 2rem;

}

footer {
	position: absolute;
	width: 100%;
	bottom: 0;
}

.btn-social {
	font-size: 1.5em;
}


#mainNav.navbar-shrink {
	/* background-color: var(--black); */
	background-color: var(--main);
}

#mainNav:not(.navbar-shrink) .navbar-brand {
	/* display: none; */
	visibility: hidden;
}

.conocenos .container {
	display: flex;
	flex-direction: column;
	gap: 4rem;
}

.team-member h4 {
	text-transform: uppercase;
}

.conocenos p {
	font-size: 1.2rem;
}

h2:not(.description, .cta) {
	/* font-size: clamp(2.4rem, 0.7rem + 2.9vw, 3rem); */
	font-size: clamp(2.2rem, 0.7rem + 2.9vw, 3rem);
}



@media (min-width:900px) {
	.hero {
		height: 90vh;

		header {
			height: 60%;
		}

		section.cta {
			height: 40%;
			/* padding-bottom: 2rem; */
		}
	}


	#subscribe-form {
		gap: 0;

		button {
			max-height: 100%;
		}
	}
}


/* contact form */
.alert {
	z-index: 100;
}

.alert span {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	/* min-height: 3em; */
	padding: 0.3rem 1rem;
	justify-content: center;
	align-items: center;
	/* font-size: 1.4rem; */
	font-size: 1.3rem;
	text-transform: lowercase;
	font-weight: 600;
	text-align: center;
	font-family: 'Avenir Light', sans-serif;
}

#form-info {
	background-color: var(--info-fill);
	border: 3px solid var(--info-border);

	span,
	a {
		color: var(--info-text) !important;
	}
}

#form-error {
	background-color: var(--error-fill);
	border: 3px solid var(--error-border);

	span,
	a {
		color: var(--error-text) !important;
	}
}