
/*--------------- basic styling --------------- */
html, body {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	font-family: "Roboto Mono" !important;
	background: #0f0f0f !important;
	color: #fff !important;
}

.about-image {
	float: right;
	margin-right: -50px;
	margin-top: -10%;
	width: 30%;
    box-shadow: 10px 10px 12px rgb(255, 0, 0);
	/* filter: grayscale(100%); */
  }

  @media (max-width: 768px) {
	.about-image {
	  float: none;
	  margin-right: 0;
	  margin-top: 0;
	  box-shadow: 8px 2px 23px rgb(255, 0, 0);
	  width: 100%;
	  margin-bottom: 20px;
	}
  }

.contact-image {
	float: right;
	margin-left: 10%;
	margin-right: -70px;
	margin-top: -10%;
	width: 38%;
    box-shadow: 8px 10px 24px rgb(255, 0, 0);
	/* filter: grayscale(100%); */
  }

  @media (max-width: 768px) {
	.contact-image {
	  float: none;
	  margin-right: 0;
	  margin-top: 0;
	  box-shadow: 8px 10px 23px rgb(255, 0, 0);
	  width: 100%;
	  display: block;
  	margin: 0 auto;
	margin-bottom: 20px;
	}
  }


.thick {
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: red;
	text-decoration-thickness: 5px;
  }

  .thick2 {
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: white;
	text-decoration-thickness: 5px;
  }


.whitespace {
	width: 100%;
	height: 100px;
}

@media(max-width: 768px) {
	.whitespace {
		  display: none;
	}
}

/*--------------- typewriter effect --------------- */

.line {
	width: 30em;
	top: 50%;
	margin: auto;
	border-right: 2px solid rgba(255, 255, 255, 0.75);
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	transform: translateY(-50%);
}

.anim-typewriter {
	animation: typewriter 3s steps(40) 1s 1 normal both,
	blinkTextCussor 500ms steps(40) infinite normal;
}

@keyframes typewriter {
	from {
		width: 0;
	}
	to {
		width: 25em;
	}
}

@media (max-width: 768px) {
	.line {
		width: 90vw;
		max-width: 37em;
	}

	@keyframes typewriter {
		from {
			width: 0;
		}
		to {
			width: 90vw;
			max-width: 37em;
			font-size: 16px;
		}
	}
}

@keyframes blinkTextCussor {
	from {
		border-right-color: rgba(255, 255, 255, 0.75);
	}
	to {
		border-right-color: transparent;
	}
}


/*--------------- navigation --------------- */
nav {
	width: 100%;
	background: #0f0f0f;
	height: 80px;
	position: fixed;
	z-index: 1;
}

nav #brand {
	float: left;
	display: block;
	margin-left: 82px;
	line-height: 80px;
	font-weight: bold;
}

nav #brand a {
	color: #fff;
	transition: all 0.3s ease-out;
}

nav #brand a:hover {
	text-decoration: none;
}

nav #menu {
	float: left;
	right: 80px;
	position: fixed;
}

nav #menu li {
	padding-left: 40px;
	display: inline-block;
	cursor: pointer;
	font-weight: 300;
	line-height: 80px;
	position: relative;
	transition: all 0.3s ease-out;
}

nav #menu li span {
	font-weight: 700;
}

nav #menu li a {
	color: #fff;
}

nav #menu li a:hover {
	text-decoration: none;
}

#toggle {
	position: absolute;
	right: 30px;
	top: 20px;
	font-weight: 300;
	z-index: 2;
	width: 30px;
	height: 30px;
	cursor: pointer;
	float: right;
	transition: all 0.3s ease-out;
	visibility: hidden;
	opacity: 0;
}

.close-btn {
	position: absolute;
	right: 16px;
	font-weight: 300;
	z-index: 2;
	cursor: pointer;
	top: -2px;
	line-height: 80px;
}

#resize {
	z-index: 1;
	top: 0px;
	position: fixed;
	background: #0f0f0f;
	width: 100%;
	height: 100%;
	visibility: hidden;
	opacity: 0;
	transition: all 1s ease-out;
}

#resize #menu {
	height: 90px;
	position: absolute;
	left: 45%;
	transform: translateX(-40%);
	text-align: center;
	display: table-cell;
	vertical-align: center;
}

#resize #menu li {
	display: block;
	text-align: center;
	padding: 10px 0;
	font-size: 50px;
	min-height: 50px;
	font-weight: bold;
	cursor: pointer;
	transition: all 0.3s ease-out;
}

#resize li:nth-child(1) {
	margin-top: 140px;
}

#resize #menu li a {
	color: #fff;
}

#resize #menu li a:hover {
	text-decoration: none;
}

#resize.active {
	visibility: visible;
	opacity: 1;
}

@media(max-width: 768px) {
	#toggle {
		  visibility: visible;
		  opacity: 1;
		  margin-top: 6px;
		  margin-right: 4px;
	}

	nav #brand {
		  margin-left: 24px;
	}

	#menu a {
		  font-size: 20px;
		  font-weight: 300;
	}

	#resize li span {
		  font-weight: bolder;
	}

	nav #menu {
		  display: none;
	}
}

@media(min-width: 768px) {
	#resize {
		  visibility: hidden !important;
	}
}

/*--------------- hero section --------------- */
.hero {
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
}

.hero h1 {
	font-weight: lighter;
	text-align: center;
	letter-spacing: -2px;
	line-height: 58px;
}

@media(max-width: 768px) {
	.header h1 {
		  font-size: 26px;
	}
}

/*--------------- scroll down icon animation --------------- */
.scroll-down {
	position: absolute;
	left: 50%;
	bottom: 100px;
	display: block;
	text-align: center;
	font-size: 20px;
	z-index: 0;
	text-decoration: none;
	text-shadow: 0;
	width: 13px;
	height: 13px;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: translate(-50%, 0) rotate(45deg);
	animation: fade_move_down 3s cubic-bezier(0.19, 1, 0.22, 1) infinite;
}

@keyframes fade_move_down {
	0% {
		  transform: translate(0, -20px) rotate(45deg);
		  opacity: 0;
	}
	50% {
		  opacity: 1;
	}
	100% {
		  transform: translate(0, 20px) rotate(45deg);
		  opacity: 0;
	}
}

/*--------------- projects section --------------- */
h6 {
	text-align: center;
	font-size: large;
}

.vertical {
	margin-top: 40px;
	border-left: 2px solid #fff;
	height: 80px;
	position: absolute;
	left: 50%;
}


.project {
	height: 700px;
}

.project1 {
	background: url(assets/me.png) no-repeat 50% 50%;
	background-size: cover;

	/* filter: grayscale(100%); */
}

.project1::after {
	content: "Mohamed Derri";
	font-family: "Roboto Mono";
	font-size: 36px;
	position: relative;
	color: #fff;
	display: block;
	top: 8%;
	left: -70%;
	right: 0;
	bottom: 0;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: red;
	text-decoration-thickness: 5px;
}

.project2 {
	background: url(./assets/oracle2.png) no-repeat 30% 20%;
	background-size: cover;
	/* filter: grayscale(100%); */
	border-right: 20px solid red;
	margin-left: 3%;
}

.project2::after {
	content: "Oracle";
	font-family: "Roboto Mono";
	font-size: 50px;
	position: relative;
	color: #fff;
	display: block;
	top: 80%;
	left: 102%;
	right: 0;
	bottom: 0;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: red;
	text-decoration-thickness: 5px;
}

.project3 {
	background: url(./assets/mindsight.png) no-repeat 100% 100%;
	background-size: cover;
	border-left: 20px solid red;
	/* filter: grayscale(100%); */
}

.project3::after {
	content: "Medico-Call";
	font-family: "Roboto Mono";
	font-size: 36px;
	position: relative;
	color: #fff;
	display: block;
	top: 87%;
	left: -40%;
	right: 0;
	bottom: 0;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: red;
	text-decoration-thickness: 5px;
}

.project4 {
	background: url(./assets/alpha\ real\ estate\ partners.png) no-repeat 50% 50%;
	background-size: cover;
	border-right: 20px solid red;
}

.project4::after {
	content: "Alpha Real Estate Partners";
	font-family: "Roboto Mono";
	font-size: 36px;
	position: relative;
	color: #fff;
	display: block;
	top: 95%;
	left: 90%;
	right: 0;
	bottom: 0;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: red;
	text-decoration-thickness: 5px;
}

@media (max-width: 768px) {

	.project {
		text-align: right; /* Adjust content alignment for mobile devices */
	}
	
	.project2 {
		border-right-width: 3px; /* Adjust the border thickness for mobile devices */
		background-size: contain;
		padding-bottom: 80%; /* Adjust the aspect ratio for the image container */
		/* border-right-width: 10vw; */
	}
	
	.project2::after {
		font-size: 10vw; /* Adjust the font size for mobile devices */
		top: 100%;
		left: auto; /* Reset left position for mobile devices */
		right: 50%; /* Adjust right position for mobile devices */
		transform: translateX(50%) translateY(-100%); /* Adjust transform for mobile devices */
		
	}
	
	.project3 {
		margin-top: -100%;
		border-left-width: 3px; /* Adjust the border thickness for mobile devices */
		background-size: contain;
		padding-bottom: 80%; /* Adjust the aspect ratio for the image container */
		/* border-left-width: 10vw; */
	}
	
	.project3::after {
		font-size: 6vw; /* Adjust the font size for mobile devices */
		top: 90%;
		left: auto; /* Reset left position for mobile devices */
		right: 50%; /* Adjust right position for mobile devices */
		transform: translateX(50%) translateY(-100%); /* Adjust transform for mobile devices */
		display: none;
	}
		
	.project4 {
		border-right-width: 3px; /* Adjust the border thickness for mobile devices */
		background-size: contain;
		padding-bottom: 80%; /* Adjust the aspect ratio for the image container */
	}

	.project4::after {
		font-size: 6vw; /* Adjust the font size for mobile devices */
		top: 170%;
		left: auto; /* Reset left position for mobile devices */
		right: 50%; /* Adjust right position for mobile devices */
		transform: translateX(50%) translateY(-100%); /* Adjust transform for mobile devices */
		display: none;
	}

  }

/*--------------- footer section --------------- */
.collab {
	text-align: right;
}

.collab p {
	font-weight: lighter !important;
	margin-bottom: 20px;
}

.hr {
	background: rgba(255, 255, 255, 0.2);
	height: 1px;
}

.info h4 {
	font-size: 18px;
	font-weight: lighter;
}

.info p {
	color: grey;
	font-weight: lighter;
}

.info li {
	font-weight: lighter;
	color: #fff;
	font-size: 13px;
	padding-left: 20px;
}

#li::before {
	display: inline-block;
	content: '';
	border-radius: 100%;
	height: 4px;
	width: 4px;
	margin-right: 6px;
	background: #3b5998;
}


#gh::before {
	display: inline-block;
	content: '';
	border-radius: 100%;
	height: 4px;
	width: 4px;
	margin-right: 6px;
	background: #fcaf45;
}


#md::before {
	display: inline-block;
	content: '';
	border-radius: 100%;
	height: 4px;
	width: 4px;
	margin-right: 6px;
	background: #55acee;
}


#yt::before {
	display: inline-block;
	content: '';
	border-radius: 100%;
	height: 4px;
	width: 4px;
	margin-right: 6px;
	background: #c4302b;
}

#media, #address {
	text-align: right;
}

#media ul {
	list-style: none;
}

#media ul li {
	display: inline-block;
}

@media(max-width: 768px) {
	.collab, #personal, #media, #address {
		  text-align: center;
	}

	.info ul {
		  margin: 0 0 0 -22px;
		  padding: 0;
	}
}

/*--------------- work page --------------- */

.hero-content {
	margin-left: 0%;
}

.hero-content p {
	font-weight: 300;
	line-height: 36px;
	color: grey;
}

.hero-content h6 {
	text-align: left;
}

@media(max-width: 768px) {
	.hero-content {
		  padding-top: 50px;
		  width: 96%;
		  margin: 0 auto;
	}
}

/*---------------about page --------------- */

.about {
	height: 500px;
	margin-top: 120px;
}

.image {
	background: url(https://images.unsplash.com/photo-1540885762261-a2ca01f290f9?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=2468&q=80) no-repeat 50% 70%;
}

/*--------------- contact form --------------- */

#contact-form {
	margin: 5% 1.4%;
}

#contact-form ul {
	list-style: none;
	border-radius: 5px;
	margin-bottom: 40px;
}

#contact-form li {
	padding: 10px;
}

#contact-form li:last-of-type {
	border-bottom: none;
}

#contact-form label {
	display: block;
	font-size: .8em;
	color: #999;
	padding-left: 5px;
}

#contact-form input, #contact-form textarea {
	width: 100%;
	padding: 5px;
	border: none;
	resize: vertical;
	background: transparent;
	color: #fff;
	font-weight: bolder;
}

input:focus {
	outline: none;
	border: none;
}

textarea:focus {
	outline: none;
	border: none;
}

.textarea {
	border-bottom: 1px solid #dfdfdf;
}

.send {
	margin-left: 50px;
	text-transform: uppercase;
	padding: 20px 30px;
	background: transparent;
	color: #dfdfdf;
	font-size: 14px;
	letter-spacing: 2px;
}

.send:hover {
	background: #dfdfdf;
	color: #101010;
}
.read {
	margin-left: 10px;
	margin-top: 10px;
	text-transform: uppercase;
	padding: 7px 25px;
	background: transparent;
	color: #dfdfdf;
	font-size: 14px;
	letter-spacing: 2px;
}

.read:hover {
	background: #dfdfdf;
	color: #101010;
}

@media(max-width: 768px) {
	#contact-form {
		  margin: 5% -8%;
		  width: 98%;
	}
}

/*--------------- project page --------------- */

.prev, .next p {
	color: grey;
}

.prev p {
	text-align: left;
}

.next p {
	text-align: right;
}
