@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@200;300;400;500;700;800;900&display=swap');

body {
	font-family: 'Tajawal', sans-serif;
	color: #282828;
	line-height: 1.7;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	text-decoration: none;
	color: #222;
	transition: color 300ms;
}

a:hover {
	color: #000;
}

.btn-site {
	display: inline-block;
	padding: 10px 31px;
	background-image: linear-gradient(90deg, #FFF, #BAC0C8, #FFF);
	color: #282828;
	font-weight: 500;
	position: relative;
	margin-inline-start: 5px;
	margin-block-end: 5px;
	border-radius: 4px;
	background-size: 100%;
	transition: 300ms;
	background-position: center
}

.btn-site:hover {
	background-size: 200%;
	color: inherit
}

.btn-site.btn-border {
	background: none;
	border: 1px solid;
	margin-block-start: 1.5rem;
}

.sub-title,
.main-title {
	display: block;
}

.main-title {
	font-weight: 600;
	font-size: 30px;
	margin-block-end: 0.5rem;
	padding-block-end: 0.5rem;
	position: relative;
}

.main-title::after {
	content: '';
	position: absolute;
	height: 1px;
	width: 40px;
	background-color: #282828;
	inset-block-end: 0;
	inset-inline-start: 0
}

.text-center .main-title::after {
	margin-inline: auto;
	left: 0;
}

.social {
	display: flex;
	gap: 10px;
	list-style: none;
	margin: 0;
	justify-content: center;
}

.social a {
	padding-inline: 5px;
}


header .top {
	background: #282828;
	color: #BAC0C8;
	padding-block: 7px;
}

header .top .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

header .top .container ul {
	padding: 0;
	list-style-type: none;
	margin: 0;
	display: flex;
}

.contact-info {
	gap: 16px;
}

header .top .container ul li a {
	color: #BAC0C8;
}

header .top .container ul li a:hover {
	color: #FFF
}

.site-header {
	position: sticky;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 2;
	background: #FFF;
	transition: 300ms;
}

img.custom-logo {
    max-width: 300px;
}

.site-header .logo-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	padding-block: 30px;
}

.site-header .logo-container nav button {
	display: none;
	background: 0;
	border: 0;
	color: #FFF;
	font-size: 22px;
}

.site-header .logo-container nav button svg {
	width: 36px;
}

.site-header .logo-container nav ul#primary-menu {
	display: flex;
	gap: 30px;
}

.site-header .logo-container nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-header .logo-container nav ul li a {
	color: #282828;
	position: relative;
	display: inline-block;
	padding: 7px 0;
}

.site-header .logo-container nav ul li:last-child a {

	border: 1px solid;

	padding-inline: 16px;

	border-radius: 4px;
}

.site-header .logo-container nav ul#primary-menu.active {
	opacity: 1;
	visibility: visible;
}

.overlay.active {
	opacity: 35%;
	visibility: visible;
}

.overlay {
	position: fixed;
	inset: 0;
	background: #000;
	visibility: hidden;
	opacity: 0;
	transition: opacity 300ms, visibility 100ms;
}

.main-slider .item {
	min-height: 601px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	display: grid;
	place-content: center;
	position: relative;
}

.main-slider .item::after {
	content: '';
	position: absolute;
	inset: 0;
	background: #282828;
	opacity: 40%;
}


.main-slider .item .content {
	width: min(850px, 100%);
	margin-inline: auto;
	color: #FFF;
	position: relative;
	z-index: 1;
	font-size: 18px;
	display: flex;
	align-items: center;
	gap: 1rem;
	text-align: center;
}

.main-slider .item .content .h3 {
	font-size: 26px;
	margin: 0;
	display: grid;
	gap: 1rem;
	font-weight: 400;
}

.main-slider .item .content h1 {
	margin: 0;
	font-size: 50px;
	font-weight: 700;
}

.main-slider .item .content figure {
	margin: 0;
	height: 485px;
}

.main-slider .item .content figure img {
	width: 100%;
	height: 100%;
	object-fit: scale-down;
}

.main-slider .item .content :is(.h3, a) {
	opacity: 0;
}

.main-slider .swiper-slide-active .item .content :is(.h3) {
	animation: slider 500ms 0s linear forwards;
}

.main-slider .swiper-slide-active .item .content :is(a) {
	animation: slider 500ms 500ms linear forwards;
}

@keyframes slider {
	0% {
		opacity: 0;
		transform: translateY(50px);
	}

	100% {
		opacity: 1;
		transform: translateY(0px);
	}
}

.about {
	background: hsl(210deg 12% 90.2% / 50%);
	padding-block: 70px;
}


.about figure.main-figure {
	height: 465px;
	position: relative;
	z-index: 1;
	width: min(480px, 100%);
	margin-inline-start: auto;
}

.about figure.main-figure::after {
	content: '';
	position: absolute;
	inset: 0;
	background-color: #282828;
	z-index: -1
}

.about figure.main-figure img {
	position: absolute;
	inset-block-end: 20px;
	inset-inline-end: 20px;
}

.about figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 300ms;
}

.about figure .years {
	background-image: linear-gradient(45deg, #887336, #C2A250);
	position: absolute;
	bottom: 0;
	inset-inline-end: 110px;
	color: #FFF;
	padding: 16px;
	width: 153px;
}

.about figure .years strong {
	font-size: 152px;
	position: relative;
	inset-inline-start: -34px;
	display: block;
	line-height: 100px;
}

.about figure .years h4 {
	text-align: end;
	font-size: 50px;
	font-weight: 700;
}

.about figure .years h3 {
	text-align: end;
	font-size: 16px;
}

.about h3.wp-block-heading {
	color: hsl(0deg 0% 0%);
	font-size: 30px;
	border-inline-start: 1px solid hsl(0deg 0% 0% / 13%);
	padding-inline-start: 16px;
	margin-block-start: .5rem;
}

.about .items {
	display: grid;
	gap: 16px;
	margin-block-start: 40px;
}

.about .items .item {
	display: flex;
	gap: 16px;
}

.about .items .item figure {
	height: 31px;
	width: 31px;
	flex: 0 0 auto;
	margin: 0;
}

.about .items .item figure img {
	object-fit: scale-down;
}

.about .items .item .cpation h3 {
	font-size: 1.2rem;
	font-weight: 600;
}

.about .items .item .cpation p {
	margin: 0
}

.home .service {
	padding-block-start: 50px;
	background: #282828;
	color: #FFF;
}

.service .main-title {
	color: #FFF
}

.service .main-title::after {
	background-color: #FFF;
}

.service .item {
	color: #FFF;
	display: grid;
	place-content: center;
	text-align: center;
	padding: 1.5rem;
	cursor: pointer;
	height: 310px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
}

.service .item::after {
	content: '';
	position: absolute;
	inset: 0;
	background-color: #282828;
	opacity: 50%
}

.service .item>h3 {
	position: relative;
	transition: color 800ms, z-index 100ms;
	z-index: 1;
}

.service .item>h3 {
	font-size: 20px;
	width: min(150px, 100%);
	margin: 0;
}


.boss {
	background-image: linear-gradient(0deg, #BAC0C8, #FFF, #BAC0C8);
	padding: 70px 0;
}

.boss figure {
	width: min(480px, 100%);
	height: 466px;
	margin-block-end: 0;
	position: relative;
}

.boss figure::after {
	content: '';
	position: absolute;
	inset: 0;
	background-color: #282828;
}

.boss figure img {
	width: 100%;
	height: 100%;
	position: absolute;
	inset-inline-end: -20px;
	inset-block-start: -20px;
	z-index: 1;
	object-fit: cover;
}

.contact .content {
	padding-block: 150px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	color: #FFF;
	text-align: center
}

.contact .content::after {
	content: '';
	position: absolute;
	inset: 0;
	background-color: #282828;
	opacity: 84%;
}

.contact .content .container {
	position: relative;
	z-index: 1;

}

.text-white input,
.text-white textarea {
	color: white
}

.text-white ::placeholder {
	color: #FFF
}

.text-white h3.main-title {
	color: #FFF;
}

.text-white h3.main-title::after {
	background: #FFF;
}

.wpcf7-form-control:focus {
	border-color: #282828;
}

.wpcf7-form-control-wrap {
	display: block;
	margin-block-end: 1rem;
}

.contact-info .map {
	height: 350px;
	filter: grayscale(1);
}

.contact-info .map iframe {
	width: 100%;
	height: 100%;
}

.contact-info ul {
	padding: 0;
	list-style: none;
	margin: 0;
	display: flex;
	justify-content: center;
	gap: 50px;
	padding-block: 16px;
}


.site-footer .top {
    background: #282828;
    color: #BAC0C8;
    padding: 83px 0;
    line-height: 1.7;
    font-size: 14px;
}

.site-footer .items {
	display: grid;
	grid-template-columns: 30% 20% 20% 30%;
	gap: 16px;
	line-height: 1.8;
}

.site-footer a {
	color: #ffffff;
	display: flex;
}

.site-footer .logo {
	width: 272px;
	margin-block-end: 1rem;
	margin-inline: auto;
}

.site-footer .logo img {
	width: 100%;
	height: 100%;
	object-fit: scale-down;
}

.site-footer .items .item h2 {
	color: #FFF;
	margin-block-end: 16px;
	font-size: 20px;
}

.site-footer a {
	color: #BAC0C8;
}

.site-footer a:hover {
	color: #FFF;
}

.site-footer ul {
	padding: 0;
	list-style-type: none;
	margin: 0;
}


.site-footer .copyright {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 14px;
}

.site-footer .copyright a {
	margin-block-start: auto
}

footer .buttom {
	background-image: linear-gradient(0deg, #BAC0C8, #FFF, #BAC0C8);
	padding-block: 25px;
}

header.entry-header {
	background-image: url('images/bg-head.jpg');
	min-height: 290px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position: relative;
	text-align: center;
	margin-block-end: 40px;
}

header.entry-header::after {
	content: '';
	position: absolute;
	inset: 0;
	background: #000;
	opacity: 30%;
}

h1.entry-title {
	position: relative;
	color: #FFF;
	z-index: 1;
	font-size: 26px;
	padding-block-start: 120px;
	font-weight: 700;
}

.wpcf7 label {
	display: block;
}

.wpcf7-form-control {
	border: 1px solid #cbcbcb;
	display: block;
	width: 100%;
	outline: 0;
	min-height: 46px;
	background: transparent;
	padding-inline: 15px;
	direction: rtl !important;
}

.wpcf7-submit {
	width: fit-content;
	padding-inline: 20px;
	min-width: 140px;
	background: #282828;
	border: 0;
	color: #FFF;
	margin-inline: auto;
}

.wpcf7-textarea {
	max-height: 130px;
	resize: none;
}

.wpcf7-form-control-wrap {
	display: block;
	margin-block-end: 1rem;
}

.post-thumbnail {
	text-align: center;
}

.post-thumbnail img {
	max-width: 100%;
	height: auto;
}


@media (max-width:992px) {
	header .top {
		display: none;
	}

	.site-header .logo-container nav ul#primary-menu {
		flex-direction: column;
		position: fixed;
		z-index: 1;
		height: 100dvh;
		top: 0;
		right: 0;
		background: #FFF;
		width: 250px;
		transform: translateX(250px);
		transition: 300ms;
		padding-inline: 30px;
		padding-block: 30px;
	}

	.site-header .logo-container nav ul#primary-menu.active {
		transform: translateX(0);
	}

	.site-header .logo-container nav ul li:last-child {
		margin-block-start: auto;
	}

	.site-header .logo-container nav ul li:last-child a {
		width: 100%;
		text-align: center;
	}

	.site-footer .items {
		display: block;
	}

	.boss figure img {
		position: static;
	}

	.site-footer .copyright {
		display: block;
		text-align: center;
	}

	.site-footer .copyright a {
		margin-inline: auto;
		display: block;
		margin-block-start: 10px;
	}

	.about figure.main-figure {
		margin-block-start: 50px;
	}

	.about figure.main-figure img {
		position: static;
	}

	.boss figure::after,
	.about figure.main-figure::after {
		display: none;
	}

	.boss figure {
		margin-block-end: 30px;
	}

	.site-header .logo-container nav button {
		display: block;
	}
}