@import '_colors';
@import 'custom_fonts';

section {

	h3 {
		font-size: $heading_size;
		font-family: 'Archivo Black', sans-serif;
		line-height: 1.2;
		color: $dark_brown;

		@media screen and (max-width: 1024px) {
			text-align: center;
		}

		mark {
			color: $blue;
		}
	}

	p {
		color: $dark_gray;
		font-size: $paragraph_size;
		letter-spacing: 0.8px;
	}

	figure {
		width: 50%;

		img {
			width: 100%;
			height: 100%;
		}
	}

	.description {
		width: 50%;
		align-self: center;

		@media screen and (max-width: 1024px) {
			width: 100%;
		}

		p {
			line-height: 1.8;
		}
	}
}

#home {
	box-shadow: 0 8px 20px -6px $gray;
	display: flex;
	height: 80vh;

	@media screen and (max-width: 1024px) {
		flex-direction: column;
	}

	p {
		padding: 30px 0;
		width: 75%;

		@media screen and (max-width: 1024px) {
			margin: 0 auto;
		}
	}

	figure {
		opacity: 1;
		transition: opacity 500ms ease;
		text-align: center;
		align-self: flex-end;

		@media screen and (max-width: 1024px) {
			width: 100%;
			margin-top: 30px;
		}

		&.hide {
			opacity: 0;
		}

		img {
			width: 90%;
		}
	}

	.description {
		overflow-x: hidden;

		p,
		button {
			position: relative;
			left: 0;
			opacity: 1;
			transition: left 500ms ease, opacity 500ms ease;
		}

		h3 {
			opacity: 1;
			left: 0;
			position: relative;
			transition: left 500ms ease, opacity 500ms ease;

			@media screen and (max-width: 1024px) {
				position: absolute;
				left: 50%;
				width: 100%;
				transform: translateX(-50%);
			}
		}

		p {
			transition-delay: 500ms;
		}

		button {
			transition-delay: 1000ms;
		}
		

		&.hide {
			
			h3,
			p,
			button {
				left: 10%;
				opacity: 0;
			}
		}
	}

	button {
		border: none;
		background-color: $blue;
		color: white;
		padding: 20px 30px;
		outline: none;
		font-size: $paragraph_size;
		cursor: pointer;

		@media screen and (max-width: 1024px) {
			display: block;
			margin: 0 auto;
			margin-bottom: 40px;
		}

		.fas {
			padding-left: 12px;
			font-size: 14px;
			position: relative;
			left: 0;
			transition: left 500ms ease;
		}

		&:hover {

			.fas {
				left: 10px;
			}
		}
	}
}

#home, 
#about {
	position: relative;

	@media screen and (max-width: 1024px) {
		padding-top: 100px;
	}

	h3 {

		@media screen and (max-width: 1024px) {
			position: absolute;
			top: 35px;
			left: 50%;
			transform: translateX(-50%);
			width: 100%;
		}
	}
}

#about {
	background-color: $lightest_gray;
	display: block;
	margin-bottom: 225px;

	@media screen and (max-width: 1024px) {
		margin-bottom: 50px;
	}

	.wrapper {
		width: 85%;
		margin: 0 auto;
		display: flex;
		justify-content: space-around;

		@media screen and (max-width: 1024px) {
			flex-direction: column-reverse;
			padding-bottom: 30px;
		}

		a {
			display: inline-block;
			margin: 10px 0;

			button {
				color: white;
				padding: 10px 15px;
				background-color: $blue;
				border: none;
				font-size: 16px;
				cursor: pointer;
				outline: none;
				transition: background-color 500ms ease;

				&:hover {
					background-color: $dark_brown;
				}
			}
		}
	}

	figure {
		width: 35%;
		position: relative;
		left: 6%;
		opacity: 0;
		transition: left 1000ms ease, opacity 1000ms ease;

		&.show {
			left: 0;
			opacity: 1;
		}

		@media screen and (max-width: 1024px) {
			width: 100%;
			display: block;
			margin: 0 auto;
		}

		img {
			transform: scale(1.3);
			top: 25%;
			position: relative;
			width: 100%;

			@media screen and (max-width: 1024px) {
				transform: scale(1);
			}
		}
	}

	.description {
		opacity: 0;
		transition: opacity 1000ms ease;
		width: 55%;

		@media screen and (max-width: 1024px) {
			width: 100%;
		}

		&.show {
			opacity: 1;
		}
	}

	p {
		padding: 14px 0;

		&:nth-of-type(1) {
			font-style: italic;
			font-weight: bold;
			color: black;
		}
	}
}

#service {
	display: block;

	h3 {
		text-align: center;
	}

	p {
		width: 50%;
		margin: 0 auto;
		text-align: center;
		padding: 20px 0 40px;
		line-height: 1.8;

		@media screen and (max-width: 1024px) {
			width: 90%;
		}
	}

	.owl-service {
		width: 82%;
		margin: 0 auto;
		display: block;

		@media screen and (max-width: 1024px) {
			width: 100%;
		}

		li {
			list-style: none;
			background-color: $lightest_gray;
			width: 90%;
			margin: 0 auto;

			.inner-contents {
				padding-top: 20px;

				img {
					width: 50px;
					height: 50px;
					display: block;
					margin: 0 auto;
					padding-top: 20px;
				}

				p {
					width: 90%;
					margin: 0 auto;
					font-size: 14px;
				}

				.title {
					text-align: center;
					padding-top: 20px;
					color: $dark_brown;
					font-size: $other_size;
					font-weight: bold;
				}
			}
		}
	}

	.service-carousel-btn {
		margin: 20px auto;
		text-align: center;
		padding: 20px 0;
	
		i {
			font-size: 16px;
			padding: 0 10px;
			color: $blue;
			cursor: pointer;
		}
	}
}

#branches {
	background-color: $lightest_gray;
	padding: 20px 0;

	h3 {
		text-align: center;
		padding: 20px 0;
	}

	p {
		text-align: center;
		width: 50%;
		margin: 0 auto;

		@media screen and (max-width: 1024px) {
			width: 90%;
		}
	}

	.owl-branches {
		width: 80%;
		margin: 0 auto;
		height: 55vh;

		@media screen and (max-width: 1024px) {
			width: 100%;
		}

		.owl-item-branches {
			width: 97%;
			background-color: white;
			margin: 50px 0;

			@media screen and (max-width: 1024px) {
				width: 90%;
				margin: 50px auto;
			}

			figure {
				width: 100%;
				height: 90%;

				img {
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}

			.description {
				margin: 0 20px;
				padding: 10px 0;

				.person-name,
				.person-info {
					font-size: $other_size;
					font-weight: bold;
				}

				.person-info {
					padding: 2px 0;
					color: $dark_gray;
				}

				.person-name {
					color: $blue;
				}

			}
		}
	}

	.branches-carousel-btn {
		text-align: center;
		padding-bottom: 30px;
		position: relative;
		z-index: 2;

		i {
			padding: 10px;
			background-color: $light_gray;
			color: $brown;
			margin: 0 0 0 12px;
			cursor: pointer;

			@media screen and (max-width: 1024px) {
				margin: 50px 0 0 12px;
			}
		}
	}
}

#enquiry {
	background: linear-gradient($blue, $dark_blue);

	h3 {
		text-align: center;
		color: white;
		padding: 60px 0 30px;
	}

	p {
		width: 50%;
		margin: 0 auto;
		text-align: center;
		color: $white_shade;
		line-height: 1.8;

		@media screen and (max-width: 1024px) {
			width: 90%;
		}
	}

	form {
		
		fieldset {
			border: none;
			width: 35%;
			margin: 0 auto;
			padding: 30px 0;

			@media screen and (max-width: 1024px) {
				width: 90%;
			}

			input {
				background-color: transparent;
				border: 2px solid white;
				padding: 8px 18px;
				clear: both;
				width: 48%;
				margin: 10px 0;

				&:nth-child(even) {
					float: right;
				}
			}

			::-webkit-input-placeholder { 
				color: $white_shade;

				@media screen and (max-width: 1024px) {
					padding-left: 13px;
				}
			}

			::-moz-placeholder { 
				color: $white_shade;

				@media screen and (max-width: 1024px) {
					padding-left: 13px;
				}
			}

			:-ms-input-placeholder { 
				color: $white_shade;

				@media screen and (max-width: 1024px) {
					padding-left: 13px;
				}
			}

			:-moz-placeholder { 
				color: $white_shade;

				@media screen and (max-width: 1024px) {
					padding-left: 13px;
				}
			}

			textarea {
				background-color: transparent;
				border: 2px solid white;
				width: 100%;
				padding: 8px;
				font-family: open-sans;
			}

			button {
				display: block;
				margin: 20px auto;
				padding: 8px 18px;
				width: 40%;
				background-color: transparent;
				border: none;
				border: 2px solid white;
				color: white;
				font-size: $other_size;
			}
		}
	}
}

#contact {
	padding: 30px 0;

	h3 {
		text-align: center;
		padding: 10px 0 20px;
	}

	p {
		width: 50%;
		margin: 0 auto;
		text-align: center;
		line-height: 1.8;

		@media screen and (max-width: 1024px) {
			width: 90%;
		}
	}

	.inner-container {
		display: flex;
		width: 80%;
		margin: 40px auto;
		padding: 20px 0;
		justify-content: space-between;

		@media screen and (max-width: 1024px) {
			flex-direction: column;	
			width: 90%;
		}

		figure {
			width: 60%;

			@media screen and (max-width: 1024px) {
				width: 100%;
			}
		}

		.description-container {
			width: 30%;

			@media screen and (max-width: 1024px) {
				width: 100%;
			}

			li {
				display: flex;
				justify-content: space-evenly;
				padding: 15px 0;

				address {
					font-size: $paragraph_size;
					color: $brown;
					font-family: open-sans;
					font-style: normal;	
					line-height: 1.8;
				}

				label {
					color: $brown;
					font-weight: bold;
					font-size: $paragraph_size;
				}

				address,
				.contact-content {
					width: 70%;
				}

				.contact-content {
					display: flex;
					font-size: $paragraph_size;

					li {
						color: $brown;
						padding: 0 15px 0 0;

						i {
							font-size: 18px;
						}
					}
				}
			}
		}
	}
}


