:root {
	--blue-color: #1f5980;
	--gray-color: #e3e3e3;
}

/* reset */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	background-color: var(--blue-color);
	color: white;

	font-family: 'Open Sans', sans-serif;
	font-optical-sizing: auto;

	scroll-behavior: smooth;
}


body>section {
	padding: 40px;

	&#home {
		background-color: white;
		color: black;

		padding: 0;
		height: 100vh;
		display: flex;
		flex-direction: row;
		align-items: stretch;

		#hero-pic {
			background:
				linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),
				url("peduk_background.jpg");
			background-size: cover;
			background-position: center;
			background-repeat: no-repeat;
			flex: 1;
		}

		#hero-content {
			color: black;

			flex: 1;
			display: flex;
			flex-direction: column;
			justify-content: center;

			nav {
				display: flex;
				flex-direction: row;
				align-items: center;
				align-self: flex-end;

				>a {
					color: black;
					text-decoration: none;

					display: flex;
					align-items: center;
					padding: 16px 16px;
				}

				>a:hover {
					background-color: var(--gray-color);
				}
			}

			#intro {
				margin: auto 40px;
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				justify-content: center;

				h1 {
					font-size: 4em;
					/* color: #f8da00; */
					color: black;
				}

				#subtitle {
					font-weight: 300;
					font-style: italic;
				}

				>div {
					display: flex;
					flex-direction: column;

					p {
						text-align: justify;
					}

					a {
						display: inline-block;
						border-radius: 8px;
						padding: 8px 16px;
						text-decoration: none;
						color: white;
						background-color: var(--blue-color);
					}

					a:visited {
						color: white;
					}

					a:hover {
						filter: brightness(90%);
					}
				}
			}

		}

		@media (max-width: 768px) {
			#hero-pic {
				display: none;
			}
		}

		@media (min-width: 992px) {
			#hero-pic {
				flex: 1;
			}

			#hero-content {
				flex: 2;

				#intro {
					margin: auto 160px;
				}
			}
		}
	}

	@media only screen and (min-width: 992px) and (orientation: portrait) {
		&#home {
			height: 50vh;
		}
	}

	&#taxes {
		background-color: var(--blue-color);
		color: white;

		>div {
			display: flex;
			flex-flow: row wrap;
			justify-content: space-evenly;

			>div {
				background-color: white;
				color: black;
				border-radius: 5px;
				width: 200px;

				padding: 20px;

				>h3 {
					text-align: center;
				}
			}
		}
	}

	&#accounting {
		background-color: white;
		color: black;

		p {

			a,
			a:visited {
				color: var(--blue-color);
			}
		}

		>div {
			display: flex;
			flex-flow: row wrap;
			justify-content: space-evenly;
			gap: 20px;

			>div {
				background-color: var(--blue-color);
				color: white;
				border-radius: 5px;
				width: 200px;
				height: 200px;

				padding: 20px;

				display: flex;
				flex-direction: column;

				gap: 10px;

				>h3 {
					text-align: center;
				}

				>p {
					text-align: justify;
				}
			}
		}
	}

	&#references {
		background-color: white;
		color: black;

		>div {
			display: flex;
			flex-flow: row wrap;
			gap: 20px;
			align-items: center;
			justify-content: space-evenly;

			>a.dark-background {
				background-color: var(--blue-color);
				padding: 10px;
			}
		}


	}

	&#contact {
		color: white;

		>div#person-container {
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			gap: 10px;
			justify-content: center;
			max-width: 900px;
			margin-inline: auto;
		}

		div.person {
			background-color: var(--gray-color);
			border-radius: 5px;
			color: black;

			padding: 20px;
			flex-grow: 1;

			display: flex;
			flex-direction: column;
			align-items: center;

			p {
				margin-top: 5px;
				margin-bottom: 10px;
			}

			a {
				color: black;
				margin-top: 5px;
			}
		}

		>div#address-container {
			background-color: var(--gray-color);
			color: black;
			max-width: 900px;
			margin: 0 auto;

			border-radius: 5px;
			padding: 20px 20px 20px 20px;

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

			p {
				margin-top: 5px;
				margin-bottom: 10px;
			}

			iframe {
				margin-top: 20px;
				width: 100%;
				height: 30vh;

				border-radius: 5px;
				border: 1px solid black;
			}

			a {
				color: black;
				text-align: center;
			}

			a:visited {
				color: black;
			}
		}
	}
}

body>footer {
	background-color: black;
	color: white;

	display: flex;
	flex-direction: row;
	justify-content: space-around;
	align-items: center;

	gap: 20px;
	padding: 40px;

	>div {
		text-align: center;
	}
}
