* {
     font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
     margin: 0;
     padding: 0;
     scroll-behavior: smooth;
     /* border: 1px solid black; */
}

html {
     height: 100%;
     width: 100%;
     background-image: linear-gradient(-20deg, #b721ff 0%, #21d4fd 100%);
     background-size: 100% 100%;
     background-position: center;
     background-repeat: no-repeat;
     background-attachment: fixed;
     
}

/* Header Start */
header {
     position: sticky;
     top: 0;
     z-index: 9;
     background-color: hwb(208 94% 0% / 0.233);
     box-shadow: 0 5px 2px rgba(0, 0, 0, 0.151);
     box-sizing: border-box;
     padding: 10px 20px;
     display: flex;
     justify-content: space-between;
     align-items: center;
     color: white;
     backdrop-filter: blur(5px);
     /* border: 1px solid black; */
}

header h1{
     text-transform: uppercase;
}

nav ul {
     display: flex;
     column-gap: 1.5rem;
     list-style-type: none;
}

ul li a {
     color: white;
     text-decoration: none;
}

.menu {
     display: none;
}

.sidebar{
     display: none;
}

/* Header End */


/* main start */

main {
     /* border: 1px solid black; */
     padding: 1rem;
     display: flex;
     flex-wrap: wrap-reverse;
     justify-content: space-around;
     align-items: center;
     overflow: hidden;
     margin-bottom: 3rem;
}

.title {
     max-width: 40em;
     /* border: 1px solid black; */
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     row-gap: 1.5rem;
     /* align-content: center; */
     text-align: center;
}

.title h1 {
     text-transform: uppercase;
     font-size: clamp(2.5rem, 10vw, 5.5rem);
     background: -webkit-linear-gradient(#51ff00, #2cf3f3);
     background-clip: text;
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
}

.img>img {
     max-width: clamp(5rem, 18vw, 12rem);
     height: auto;
     animation: shakeimg 1s ease-in-out infinite;
     filter: drop-shadow(10px, black);
}

main .title .links{
     background-color: hwb(208 94% 0% / 0.342);
     padding: .5rem 1rem;
     border-radius: 2rem;
     min-width: 12rem;    
     /* border: 1px solid black; */
     display: flex;
     justify-content: space-around;
     align-items: center;
     align-content: center;
}

.links a {
     /* border: 1px solid black; */
     /* height: fit-content; */
     display: flex;
     /* justify-content: center; */
     align-items: center;
}

.links a:hover{
     transform: translateY(-10px);
     transition: all .1s ease-in-out;
}

.links img{
     align-self: center;
     width: 2em;
}

/* animation for shaking image */
@keyframes shakeimg {
     0% {
          /* transform: translateX(10px); */
          transform: translateY(10px);
     }

     50% {
          /* transform: translateX(-10px); */
          transform: translateY(-10px);
     }

     100% {
          /* transform: translateX(10px); */
          transform: translateY(10px);
     }
}

/* main end */

/* animation for Hire Me button */
@keyframes shakebtn {
     0% {
          transform: translateX(-8px);
     }

     20% {
          transform: translateX(8px);
     }

     40% {
          transform: translateX(-8px);
     }

     60% {
          transform: translateX(8px);
     }

     80% {
          transform: translateX(-8px);
     }

     100% {
          transform: translateX(8px);
     }
}

/* main-container Start */
.main-container{
     margin-top: clamp(3rem,5vh,8rem);
     /* border: 1px solid black; */
     display: flex;
     flex-direction: column;
     align-items: center;
     /* justify-content: center; */
}

.main-container .about{
     /* border: 1px solid white; */
     margin-bottom: 5rem;
     text-align: center;
     padding: 2rem;
     width: 70%;
     display: flex;
     flex-direction: column;
     align-items: center;
     row-gap: 2rem;
}

.main-container .about img{
     max-width: 10em;
     max-height: 10em;
     border-radius: 50%;
}

.main-container #services{
     margin-bottom: 5rem;
     padding: 1rem;
     display: flex;
     flex-wrap: wrap;
     flex-direction: column;
     column-gap: 2rem;
     row-gap: 2rem;
     justify-content: space-evenly;
     align-items: center;
     /* border: 1px solid greenyellow; */
}

.boxes {
     display: flex;
     flex-flow: row wrap;
     justify-content: space-evenly;
     row-gap: 1rem;
     column-gap: 1rem;
}
 
.box{
     box-sizing: border-box;
     padding: .5rem;
     overflow: hidden;
     background-color: rgba(219, 219, 219, 0.473);
     border-radius: 1rem;
     width: clamp(8rem,15vw,15rem);
     height: clamp(fit-content,15vw,15rem);
     /* border: 1px solid red; */
     text-align: center;   
     align-content: center;      
}

.box img{
     width: clamp(1rem, 2rem ,3rem);
}


/* contact Start */
.main-container #contact{
     background-color: hwb(208 94% 0% / 0.233);
     margin-bottom: 5rem;
     width: clamp(20rem,40vw,80rem);
     text-align: center;
     box-sizing: border-box;
     padding: 1rem;
     border: 1px solid black;
     display: flex;
     flex-direction: column;
     row-gap: 2rem;
     border-radius: 2rem;
}

#form{
     /* border: 1px solid black; */
     display: flex;
     flex-direction: column;
     row-gap: 2rem;
     justify-content: center;
}

.fields{
     display: flex;
     justify-content: center;
}

.fields label{
     width: 5rem;
     height: fit-content;
     float: left;
     text-align: right;
     margin-right: 1rem;
}


.fields input, .fields textarea{
     width: 10rem;
}

input[type='submit']
{
     border: none;
     border-radius: 1rem;
     background-color: crimson;
     color: white;
     width: fit-content;
     padding: .3rem 1.3rem;
}

input[type='submit']:hover{
     cursor: pointer;
}





input, textarea{
     outline: none;
}
/* contact End */

/* main-container End */



/* Footer Start */
footer{
     box-sizing: border-box;
     padding: 1rem;
     background-color: rgb(0, 0, 0);
     color: white
}
footer p{
     text-align: center;
     padding: 10px;
}
/* Footer End */


/* media queries */
@media screen and (max-width: 600px) {
     .menu {
          display: inline-block;
          align-content: center;
     }

     nav {
          display: none;
     }

     .title p{
          text-align: center;
          font-size: 16px;
     }

     .sidebar{
          box-sizing: border-box;
          background-color: hwb(208 94% 0% / 0.63);
          width: 10rem;
          height: 400px;
          padding: 1rem;
          /* border: 1px solid black; */
          display: flex;
          flex-direction: column;
          justify-content: flex-start;
          row-gap: 1rem;
          transition: all .2s ease-in-out;
          position: fixed;
          color: black;
          top: 1px;
          right: -10rem;
          z-index: 11;
          backdrop-filter: blur(5px);
     }

     .sidebar a{
          color: rgb(0, 0, 0);
          text-decoration: none;
     }
}