@import url('https://fonts.googleapis.com/css2?family=Cabin:ital,wght@0,400..700;1,400..700&display=swap');

:root {
	--clr-primary-rgb: 114, 3, 94;
	--clr-primary: rgb(var(--clr-primary-rgb));
	--clr-secondary-rgb: 245, 115, 45;
	--clr-secondary: rgb(var(--clr-secondary-rgb));
	--border-radius: 1rem;
}

html, body {
	font-family: "Cabin", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

h1, h2, h3, h4, p {
	margin: 0;
}

#logo {
	height: 75px;
}

#hero {
	padding: 4.75rem;
	height: calc(968px - 6.5rem);
	background-color: var(--clr-primary);
	background-image: radial-gradient(circle at bottom right, rgba(var(--clr-primary-rgb), 0.055) 60%, rgba(var(--clr-primary-rgb), 0.65) 87%),
	url('/assets/gelmer_kuivenhoven.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: var(--border-radius);
}

#hero h1 {
	font-size: 5rem;
	line-height: 1.125;
}

#hero p {
	font-size: 2rem;
	width: 75%;
	line-height: 1.125;
}

#quote {
	padding: 2.5rem;
	width: 100%;
	aspect-ratio: 1;
	background-color: var(--clr-primary);
	background-image: radial-gradient(circle at top right, rgba(var(--clr-primary-rgb), 0.055) 38%, rgba(var(--clr-primary-rgb), 0.65) 87%),
	url('/assets/gelmer_kuivenhoven_2.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: var(--border-radius);
	display: flex;
	align-items: end;
}

.btn {
	padding-inline: 1.5rem;
	padding-block: .5rem;
	border-radius: 1rem;
	font-weight: bold;
	font-size: 1.5rem;
}

.btn-white {
	background-color: #fff;
	border-color: #fff;
	color: var(--clr-primary);
}

.btn-white:hover, .btn-white:focus-within, .btn-white:active {
	background-color: #fff !important;
	border-color: #fff !important;
	color: var(--clr-primary) !important;
}

.btn-primary {
	background-color: var(--clr-primary);
	border-color: var(--clr-primary);
}

.btn-primary:hover, .btn-primary:focus-within, .btn-primary:active {
	background-color: rgba(var(--clr-primary-rgb), .75) !important;
	border-color: var(--clr-primary) !important;
}

.btn-secondary {
	background-color: var(--clr-secondary);
	border-color: var(--clr-secondary);
}

.btn-secondary:hover, .btn-secondary:focus-within, .btn-secondary:active {
	background-color: rgba(var(--clr-secondary-rgb), .75) !important;
	border-color: var(--clr-secondary) !important;
}

.text-primary {
	color: var(--clr-primary) !important;
}

.bg-primary {
	background-color: var(--clr-primary) !important;
}

.card {
	color: white;
	border: none;
	background-color: var(--clr-primary);
	border-radius: var(--border-radius);
}

.card-header {
	border: none;
	background: transparent;
	padding: 1.5rem;
}

.card-body {
	padding: 0 1.5rem 1.5rem 1.5rem;
}

.card-body li {
	font-size: 1.25rem;
}

.card-body li:not(:first-child) {
	margin-top: 1rem;
}

main {
	padding: 2.625rem !important;
}

footer {
	color: white;
	padding: 4.75rem !important;
	border-top-left-radius: var(--border-radius);
	border-top-right-radius: var(--border-radius);
}

#contact .form-control, #contact .form-control::placeholder {
	font-size: 1.5rem;
	box-shadow: none !important;
	border-width: 2px !important;
	color: var(--clr-primary);
	border-color: var(--clr-primary);
}

#experience {
	padding-block: 6.75rem !important;
	width: 75%;
}

#experience h2 {
	font-size: 3rem;
}

#services h2 {
	font-size: 2.875rem;
}

button, a {
	justify-content: start;
	align-items: center;
	display: flex !important;
	text-align: start !important;
	gap: .75rem !important;
}

.icon {
	width: 1.5rem;
	min-width: 1.5rem;
}

@media (max-width: 991.98px) {
	main {
		padding: calc(var(--bs-gutter-x) / 2) 0 0 0 !important;
	}

	#logo {
		height: 75px;
	}

	#hero {
		height: 750px;
		margin-inline: calc(var(--bs-gutter-x) / 2);
		padding: 1.5rem;
		background-image: radial-gradient(circle at top right, rgba(var(--clr-primary-rgb), 0.055) 30%, rgba(var(--clr-primary-rgb), 0.65) 77%),
		url('/assets/gelmer_kuivenhoven.jpg');
	}

	#hero h1 {
		font-size: 2.5rem;
	}

	#hero p {
		font-size: 1.25rem;
	}

	footer {
		padding: 1.5rem !important;
	}

	#quote {
		padding: 1.5rem !important;
	}

	#services {
		margin-bottom: calc(var(--bs-gutter-x) / 2);
	}

	#services h2 {
		word-break: break-all !important;
	}

	#experience {
		width: 100%;
		padding: calc(var(--bs-gutter-x) / 2) !important;
	}

	#experience h2 {
		font-size: 2.5rem;
	}

	#services h2 {
		font-size: 2.5rem;
	}
}
