@import url(../public/font/font-awesome/css/font-awesome.css);
@import url(https://fonts.googleapis.com/css2?family=Teko:wght@300;400;500;700&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Great+Vibes&family=Syne&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Rubik:wght@400;600&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&display=swap);
@import url(https://fonts.cdnfonts.com/css/minimal);
@import url(global.css);

/* RESET */
* {

  outline: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-kerning: auto;
}
/* END RESET */

body {
  margin: 0;
  font-size: 16px;
  font-family: var(--font-poppins);
  top: 0 !important;
  box-sizing: border-box;
  position: relative;
  touch-action: manipulation;
  overflow-x: hidden;
}

footer {
  background-color: #161616;
  overflow: hidden;
  padding: 40px 0;
  color: var(--color-white);
  font-family: var(--font-secondary);
}
.main-header{
  padding: 8px 0;
  /* background: #d9ecc7; */
  transition: all 0.5s cubic-bezier(1,-0.15, 1, 0.82) 0s;
  box-shadow: 0px 1px 10px rgb(209, 209, 209);
}
/***
=================================================
  NAVBAR
=================================================
***/
#neubar {
  font-family: var(--font-primary);
  font-size: 14px;
  font-weight: 700;
  height: 80px;
  font-weight: 700;
}

#neubar .nav-item {
  margin : auto 4px;
}
#neubar ul {
  list-style: none;
  position: relative;
  height:100%;
  overflow: hidden;
  padding:5px 360px;
}

#neubar ul a {
  --offset: 10px;
	--border-size: 2px;
  border: 0;
  color: var(--color-primary);
  text-transform: uppercase;
  user-select: none;
  padding: 0 15px;
  position: relative;
  display: block;
  appearance: none;
  outline: none;
  box-shadow: inset 0 0 0 var(--border-size) currentColor;
  transition: background 0.8s ease;
}
#neubar ul a:hover {
  background:#07a4b228;
}
/* NAVBAR EFFECTS */

.lh, .lv {
  position: absolute;
  top: var(--horizontal-offset, 0);
  right: var(--vertical-offset, 0);
  bottom: var(--horizontal-offset, 0);
  left: var(--vertical-offset, 0);
  transition: transform 0.8s ease;
  will-change: transform;
}
.lh::before, .lv::before {
  content: "";
  position: absolute;
  border: inherit;
}
.lh {
  --vertical-offset: calc(var(--offset) * -1);
  border-top: var(--border-size) solid currentcolor;
  border-bottom: var(--border-size) solid currentcolor;
}
.lh::before {
  top: calc(var(--vertical-offset) - var(--border-size));
  bottom: calc(var(--vertical-offset) - var(--border-size));
  left: calc(var(--vertical-offset) * -1);
  right: calc(var(--vertical-offset) * -1);
}
#neubar ul a:hover .lh {
  transform: scaleX(0);
}
.lv {
  --horizontal-offset: calc(var(--offset) * -1);
  border-left: var(--border-size) solid currentcolor;
  border-right: var(--border-size) solid currentcolor;
}
.lv::before {
  top: calc(var(--horizontal-offset) * -1);
  bottom: calc(var(--horizontal-offset) * -1);
  left: calc(var(--horizontal-offset) - var(--border-size));
  right: calc(var(--horizontal-offset) - var(--border-size));
}
#neubar ul a:hover .lv {
  transform: scaleY(0);
}

/* NAVBAR EFFECTS */

#neubar .menu-toggler{
  display: inline-block;
  color: #07a3b2;
  width: 100px;
  height: 2px;

}
#neubar .hamburger{
  position: relative;
  font-weight: 500;
  font-family: var(--font-primary);
  font-size: 20px;
  letter-spacing: 5px;
  color: #07a3b2;
  text-transform: uppercase;
  padding:5px;
  outline: none;
  border: none;
  background: transparent;
}


.hamburger::after, .hamburger::before {
  position: absolute;
  content: "";
  right:-34px;
  bottom: 26px;
  width: 15px;
  height: 1px;
  background-color: var(--color-primary);
  border-radius: 5px;
}

.hamburger::after, .hamburger::before{
  transition: all 0.3s ease-out 0s;
}
.hamburger::after{
  top: 23px;
  width: 30px;
  height:3px;
}

.hamburger:hover::after{
  width: 15px;
  background-color: var(--color-secondary);
}
.hamburger:hover::before{
  width: 30px;
  background-color: var(--color-secondary);
}

/* End Header */

.after-header{
  overflow: visible;
  height: auto;
  padding: 30px 10px 30px 10px;
  font-family: var(--font-primary);
  position: relative;
  background-color: #e8e8e8;
}
.after-header h1{
  font-family: var(--font-poppins);
  font-size: 42px;
  font-weight: 400;
  line-height: 1.6em;
  color: var(--color-primary);
  font-weight: 700;
}
.after-header p{
  font-family: var(--font-secondary);
  font-size: 25px;
  font-weight: 100;
  line-height: 1.8em;
}

.frame{
  position: absolute;
  border: 7px solid rgb(255, 255, 255);
  width: 220px;
  top: -2%;
  left: 6%;
}
.frame:nth-child(2){
  top: 9%;
  left: 32%;
  z-index: 1;
}
.frame:nth-child(3){
  top: -56%;
  left: 67%;
}

/* ===================================================
Header Section
=================================================== */
.header {
  padding: 100px 0 0 0;
  position: relative;
  height: 100vh;
  color: var(--color-dark);
  background: #e8e8e8;
  font-family: var(--font-secondary);
  overflow: hidden;
}

.text-container{
  margin: 10px 0;
  position: relative;
}

.main-text {
  position:relative;
  text-transform: capitalize;
  font-size: 65px;
  font-family: var(--font-poppins);
  font-weight: 700;
  color: var(--color-primary);
  /* color: var(--color-primary); */
  overflow-y: hidden;
  height: 81px;
}

.header .main-img{
  width: 50%;
  z-index: 1;
}
.header .bg{
  width: 40rem;
  right: 110px;
  top: 90px;
  z-index: -1;
  opacity: 0.3;

}

.subtext {
  position:relative;
  font-size: 25px;
  font-family: var(--font-poppins);
  text-transform: capitalize;
  overflow: hidden;
  height: 85px;
  color: var(--color-dark);
  font-weight: 400;
  margin: 20px 0 40px 0;
  padding-right: 90px;
}

.scroll-in{
  z-index: 200;
  position: absolute;
}

.intro-text{
  text-align: start;
  position: relative;
}
.intro-text .text-1{
  font-weight: 700;
  font-size: 2rem;
  font-family: var(--font-vibes);
}

.intro-text .hide{
  position: relative;
  overflow: hidden;
  height: 50px;
  margin: 10px 0;
}

.cta{
  position: relative;
  border: 2px solid #d1d9e6 ; 
  border-radius: 0;
  background: #e8e8e8;
  box-shadow: 6px 6px 12px #c5c5c5, -6px -6px 12px #ffffff;
  font-weight:400;
  color: var(--color-dark);
  height: 50px;
  transition: all 0.5s ease-in-out;
}
.cta i{
  color: var(--color-primary);
}
.cta::after{
  content: "";
  position: absolute;
  right:0;
  top: -2px;
  width:100%;
  height:2px;
  background-color:  #d1d9e6;
  scale: 0;
  transform-origin: right;
  transition: scale 3s;
}

.cta:hover::after{
  scale: 1;
}
.cta::before{
  content: "";
  position: absolute;
  left:0;
  bottom: -2px;
  width:100%;
  height:2px;
  background-color:  #d1d9e6;
  scale: 0;
  transform-origin: left;
  transition: scale 3s;
}

.cta:hover::before{
  scale: 1;
}

.cta:hover{
  box-shadow: inset 3px 3px 6px #b8b9be, -3px -3px 6px #fff;
}


.intro-text .line{
  margin-top: 6px;
  width: 40%;
  height: 0.1rem;
  background:var(--color-secondary);
}

.scroll{
  position: absolute;
  left: 35%;
}
.scroll .text{
  letter-spacing: 10px;
  font-size: 12px;
  font-family: var(--font-secondary);
  color: var(--color-primary);
  text-shadow: 7px 7px 18px #ee0808,
  -7px -7px 18px #00fff7;
}
.scroll .scroll-circle{
  text-align: center;
  width: 20px;
  height: 20px;
  background: linear-gradient(0deg, rgba(217,236,199,1) 0%, var(-color-main) 100%);
  border-radius: 50%;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
      transform: scale(1);
      box-shadow: 0 0 0 0 rgb(126, 173, 68);
  }
  
  70% {
      transform: scale(1);
      box-shadow: 0 0 0 10px rgba(126, 173, 68, 0);
  }
  
  100% {
      transform: scale(1);
      box-shadow: 0 0 0 0 rgb(173, 136, 68);
  }
}
.scroll .scroll-line{
  text-align: center;
  width: 2px;
  height: 300px;
  background: linear-gradient(0deg, rgba(217,236,199,1) 0%, rgba(7,163,178,1) 100%);
}


.line {
  height: 1px;
  background: linear-gradient(90deg, rgba(217,236,199,1) 0%, rgba(7,163,178,1) 100%);
  width:229px ;
}

/*
===================================================
ABOUT
===================================================
 */

.about-me h4{
  font-size: 32px;
  font-family: var(--font-poppins);
}
.about-me p{
  font-size: 22px;
}
.about-me ul{
  padding: 0;
  font-size: 18px;
}
.about-me ul li{
  padding: 5px 0;
  list-style: none;
  display: flex;
  justify-content: space-between;
}
.about-me ul i{
  width: 5%;
  font-size: 25px;
  color: var(--color-secondary);
}
.about-me ul p{
  width: 93%;
  font-size: 18px;
}
.about-me {
  color: var(--color-dark);
}

.about-img{
  position: relative;
  border-radius: 9px;
  width: 344px;
  height: 344px;
  object-fit: cover;
  z-index: 1;
}
.rect {
  position: absolute;
  top: 113px;
  left: 155px;
  border-radius: var(--br-xl);
  width: 450px;
  height: 450px;
}


/*
===================================================
SECTION
===================================================
 */

.section {
  height:auto;
  padding: 100px 10px 120px 10px;
  font-family: var(--font-primary);
  position: relative;
  background-color: #e8e8e8;
}

.section-title {
  font-size: 120px;
  font-weight: 900;
  font-family: var(--font-primary);
  display: inline-block;
  width: 100%;
  -webkit-text-stroke: 1px var(--color-dark);
  color: transparent;
  position: absolute;
  top: -60px;
  left: 20px;
  
  
}

.image-section{
  background:#fff url(../public/img/tech-bg.jpg) no-repeat center left ;
  /* background-attachment: fixed; */
  background-size: cover;
}
.pattern-section{
  background:#fff url(../public/img/pattern-2.png) no-repeat;
  background-size: cover;
}

.section .p-title{
  font-family: var(--font-poppins); 
  color: var(--color-primary); 
}
.section .paragraph{
  font-family: var(--font-secondary); 
  
}

/* ===================================================
SKILLS
=================================================== */
.gallery {
font-family: var(--font-minimal);
}
.gallery .skill-card{
  width: 160px;
  height: 160px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 20px 10px;
  backdrop-filter: blur(10px);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 35px 35px 68px 0px rgba(232, 232, 232, 0.5), 
  inset -12px -12px 16px 0px rgba(232, 232, 232, 0.6), 
  inset 0px 11px 28px 0px rgb(255, 255, 255);
}

.skill-card img{
  width: 100px;
}
.skill-card h3{
  font-weight: 700;
}

/*==================
Partner
==================*/
.partner-section{
  height:auto;
  padding: 100px 0 100px 20px;
  position: relative;
  background-color: #e8e8e8;
}
.partners{
  display: flex;
  overflow-x: scroll;
  justify-content: space-between;  
}
.partners::-webkit-scrollbar {
  display: none;
}
.partners .box{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
}
.partners img{
  width: 200px;
  transition: all .5s ease;
}
.partners img:hover{
  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}

/* ===================================================
Portfolio
=================================================== */
.portfolio-section{
  height:auto;
  padding: 80px 10px;
  font-family: var(--font-poppins);
  position: relative;
  background-color: #e8e8e8;
}

.project{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.project .image{
  width: 40%;
}
.project .image img{
  width: 100%;
}
.project .project-details{
  width: 54%;
}
/* ===================================================
      Contact Form
=====================================================*/
.address{
  font-family: var(--font-primary);
  font-size: 22px;
  font-weight: 400;
  letter-spacing: 3px;
}

.address .social{
  margin-bottom: 10px;
  padding: 5px 70px 5px 0;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.address .social .icons img{
  width: 70px;
}
.get-in-touch {
  max-width: 800px;
  margin: 50px auto;
  position: relative;
}
.get-in-touch .title {
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 3.2em;
  line-height: 48px;
  padding-bottom: 48px;
  color: #5543ca;
  background: #5543ca;
  background: -moz-linear-gradient(left,#f4524d  0%,#5543ca 100%) !important;
  background: -webkit-linear-gradient(left,#f4524d  0%,#5543ca 100%) !important;
  background: linear-gradient(to right,#f4524d  0%,#5543ca  100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.contact-form .form-field {
  font-family: var(--font-poppins);
  position: relative;
  margin: 32px 0;
}
.contact-form .input-text,.input-textarea {
  display: block;
  width: 100%;
  height: 45px;
  font-size: 18px;
  line-height: 26px;
  font-weight: 400;
  padding-left: 20px;
  box-shadow: 6px 6px 12px #c5c5c5,-6px -6px 12px #ffffff;
  background: #e8e8e8;
  border: 2px solid #d1d9e6 ;
}
.contact-form .input-textarea {
  height: 100px;
}
.contact-form .input-text:focus, .input-textarea:focus {
  outline: none;
}
.contact-form .input-text:focus + .label{
  -webkit-transform: translateY(-24px);
  transform: translateY(-24px);
  font-size: 14px;
  bottom: 25px;
  left:5px;
}
.contact-form .input-textarea:focus + .label{
  -webkit-transform: translateY(-84px);
  transform: translateY(-84px);
  font-size: 14px;
  bottom: 25px;
  left:5px;
}
.contact-form .input-text.not-empty + .label{
  -webkit-transform: translateY(-24px);
  transform: translateY(-24px);
  font-size: 14px;
  bottom: 25px;
  left:5px;
}
.contact-form .input-textarea.not-empty + .label{
  -webkit-transform: translateY(-84px);
  transform: translateY(-84px);
  font-size: 14px;
  bottom: 25px;
  left:5px;
}
.contact-form .label {
  position: absolute;
  left: 20px;
  bottom: 11px;
  font-size: 18px;
  line-height: 26px;
  font-weight: 400;
  color: var(--color-primary);
  cursor: text;
  transition: transform .2s ease-in-out, 
  -webkit-transform .2s ease-in-out;
}

