@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Turret+Road:wght@200;300;400;500;700;800&display=swap");

      :root {
        --hue-color: 242;

        --skin-color: hsl(54, 92%, 46%);
        --mirage-color: hsl(210, 10%, 23%);
        --title-color: hsl(var(--hue-color), 8%, 95%);
        --text-color: hsl(var(--hue-color), 8%, 85%);
        --body-color: hsl(var(--hue-color), 19%, 5%);
        --box-color: hsl(var(--hue-color), 14%, 10%);
        --scroll-box-color: hsl(var(--hue-color), 12%, 38%);
        --scroll-thumb-color: hsl(var(--hue-color), 12%, 26%);

        --body-font: "Poppins", sans-serif;
        --signature-font: "Turret Road", sans-serif;

        --biggest-font-size: 3rem;
        --h1-font-size: 2.25rem;
        --h2-font-size: 1.5rem;
        --h3-font-size: 1.25rem;
        --normal-font-size: 1rem;
        --small-font-size: 0.875rem;
        --smaller-font-size: 0.813rem;

        --font-medium: 500;
        --font-bold: 600;

        --mb025: 0.25rem;
        --mb05: 0.5rem;
        --mb075: 0.75rem;
        --mb1: 1rem;
        --mb15: 1.5rem;
        --mb2: 2rem;
        --mb25: 2.5rem;
        --mb3: 3rem;

        --z-fixed: 10;
        --z-modal: 100;
      }

      @media screen and (max-width: 1024px) {
        :root {
          --biggest-font-size: 2rem;
          --h1-font-size: 1.5rem;
          --h2-font-size: 1.25rem;
          --h3-font-size: 1.125rem;
          --normal-font-size: 0.938rem;
          --small-font-size: 0.813rem;
          --smaller-font-size: 0.75rem;
        }
      }

      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }
      html {
        scroll-behavior: smooth;
      }
      body,
      button,
      input {
        font-family: var(--body-font);
        font-size: var(--normal-font-size);
      }
      body {
        background-color: var(--body-color);
        color: var(--text-color);
      }
      h1,
      h2,
      h3 {
        color: var(--title-color);
        font-weight: var(--font-bold);
      }
      ul {
        list-style: none;
      }
      a {
        text-decoration: none;
      }
      img {
        max-width: 100%;
        height: auto;
      }
      button {
        cursor: pointer;
      }
      button,
      input {
        border: none;
        outline: none;
      }
      .container {
        max-width: 1250px;
        margin-left: auto;
        margin-right: auto;
      }
      .grid {
        display: grid;
      }
      .button {
        display: inline-flex;
        align-items: center;
        column-gap: 0.5rem;
        background-color: var(--skin-color);
        color: var(--title-color);
        padding: 0.75rem 1.4rem;
        border-radius: 0.25rem;
        font-weight: var(--font-medium);
        position: relative;
        z-index: 1;
        transition: 0.4s;
      }
      .button::after {
        position: absolute;
        content: "";
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: var(--mirage-color);
        z-index: -1;
        transform-origin: center;
        transform: scale(0);
        border-radius: 0.25rem;
        transition: 0.3s;
      }
      .button:hover::after {
        transform: scale(1);
      }
      .section {
        padding: 6.5rem 0 2rem;
      }
      .section-title {
        text-align: center;
        font-size: var(--h1-font-size);
        margin-bottom: var(--mb3);
      }
      .section-title::before {
        content: attr(data-heading);
        display: block;
        font-size: var(--normal-font-size);
        font-weight: var(--font-medium);
        color: var(--skin-color);
      }
      ::-webkit-scrollbar {
        width: 0.6rem;
        background-color: var(--scroll-box-color);
        border-radius: 0.5rem;
      }
      ::-webkit-scrollbar-thumb {
        background-color: var(--scroll-thumb-color);
        border-radius: 0.5rem;
      }

      /* Sidebar */

      .sidebar {
        position: fixed;
        width: 100px;
        height: 100vh;
        background-color: var(--body-color);
        border-right: 1px solid var(--box-color);
      }
      .nav-logo {
        position: absolute;
        left: 0;
        right: 0;
        top: 1.8rem;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background-color: var(--skin-color);
        text-align: center;
        margin: auto;
      }
      .nav-logo-text {
        font-size: 1.125rem;
        color: var(--title-color);
        font-weight: var(--font-bold);
        line-height: 40px;
      }
      .nav-menu {
        position: fixed;
        transform: rotate(-90deg) translateX(-100%);
        transform-origin: left top;
        width: 100vh;
      }
      .menu {
        display: flex;
      }
      .nav-list {
        display: flex;
        flex-direction: row-reverse;
        margin: -2px auto 0 auto;
      }
      .nav-link {
        float: right;
        height: 100%;
        line-height: 100px;
        padding: 0 1rem;
        color: var(--title-color);
        font-weight: var(--font-medium);
        position: relative;
        transition: 0.4s;
      }
      .nav-toggle {
        height: 32px;
        width: 36px;
        cursor: pointer;
        position: fixed;
        right: 1.5rem;
        top: 2rem;
        font-size: 1.2rem;
        border-radius: 0.25rem;
        background-color: var(--skin-color);
        color: var(--title-color);
        display: none;
        justify-content: center;
        align-items: center;
        z-index: 999;
      }
      .nav-close {
        font-size: 1.5rem;
        position: absolute;
        top: 1rem;
        right: 1.25rem;
        cursor: pointer;
        display: none;
      }
      .nav-link.active-link,
      .nav-link:hover {
        color: var(--skin-color);
      }
      .nav-link.active-link::after,
      .nav-link:hover::after {
        position: absolute;
        content: "";
        width: 6px;
        height: 6px;
        background-color: var(--skin-color);
        border-radius: 50%;
        bottom: 1.8rem;
        left: 0;
        right: 0;
        margin: auto;
      }
      .btn-share {
        position: absolute;
        bottom: 1.8rem;
        left: 0;
        right: 0;
        text-align: center;
        cursor: pointer;
      }
      .social-share {
        font-size: 1.5rem;
      }

      /* Main - Home */

      .main {
        margin-left: 100px;
      }
      .home {
        background: url("1.jpg");
        background-size: cover;
        background-position: center center;
        height: 100vh;
        color: linear gradient(to right,rgb(22, 185, 152)),rgb(14, 196, 209);
      }
      .home-container {
        position: relative;
        height: 100%;
        align-items: center;
      }
      .home-social {
        position: absolute;
        top: 1.8rem;
        left: 0;
        display: flex;
        align-items: center;
        column-gap: 3.5rem;
      }
      .home-social-follow {
        font-weight: var(--font-medium);
        position: relative;
      }
      .home-social-follow::after {
        content: "";
        position: absolute;
        width: 1rem;
        height: 2px;
        background-color: var(--text-color);
        right: -45%;
        top: 50%;
      }
      .home-social-links {
        display: inline-flex;
        column-gap: 1rem;
      }
      .home-social-link {
        font-size: 1.08rem;
        color: var(--text-color);
        transition: 0.4s;
      }
      .home-social-link:hover {
        transform: translateY(0.25rem);
      }
      .home-img {
        display: none;
      }
      .home-title {
        font-size: var(--biggest-font-size);
      }
      .home-subtitle {
        font-size: var(--h3-font-size);
        font-weight: var(--font-medium);
        margin-bottom: var(--mb075);
      }
      .home-description {
        max-width: 450px;
        margin-bottom: var(--mb2);
      }
      .my-info {
        display: flex;
        column-gap: 1.8rem;
        position: absolute;
        left: 0;
        bottom: 1.8rem;
      }
      .info-item {
        display: flex;
        align-items: center;
      }
      .info-title,
      .info-subtitle {
        font-size: var(--small-font-size);
      }
      .info-title {
        font-weight: var(--font-medium);
      }
      .info-icon {
        font-size: 1.8rem;
        color: var(--skin-color);
        margin-right: var(--mb075);
      }

      /* Main - About */

      .about-container {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 4rem;
        align-items: center;
      }
      .about-img {
        width: 480px;
        border-radius: 0.75rem;
        justify-self: center;
        border: 10px solid #ccbf0d;
      }
      .about-heading {
        font-size: var(--h3-font-size);
        margin-bottom: var(--mb075);
      }
      .about-description {
        text-align: justify;
        padding-right: 6rem;
        margin-bottom: var(--mb2);
      }
      .about-info {
        display: grid;
        grid-template-columns: repeat(3, 140px);
        column-gap: 0.5rem;
        margin-bottom: var(--mb3);
      }
      .about-box {
        text-align: center;
        border-radius: 0.25rem;
        padding: 1rem 1.25rem;
        background-color: var(--box-color);
      }
      .about-icon {
        font-size: 1.5rem;
        color: var(--skin-color);
        margin-bottom: var(--mb075);
      }
      .about-title {
        font-size: var(--small-font-size);
      }
      .about-subtitle {
        font-size: var(--small-font-size);
      }

      /* Main - Qualification */

      .qualification-container {
        grid-template-columns: repeat(2, 340px);
        column-gap: 3rem;
        justify-content: center;
      }
      .qualification-title {
        font-size: var(--h3-font-size);
        font-weight: var(--font-medium);
        margin-bottom: var(--mb2);
      }
      .timeline-item {
        position: relative;
        margin-bottom: var(--mb25);
        padding-left: 3rem;
      }
      .timeline-item:last-child {
        margin-bottom: 0;
      }
      .timeline-item::before {
        content: "";
        width: 1px;
        position: absolute;
        left: 0.48rem;
        top: 0;
        height: 100%;
        background-color: var(--skin-color);
      }
      .circle-dot {
        position: absolute;
        left: 0;
        top: 0;
        height: 1rem;
        width: 1rem;
        border: 2px solid var(--skin-color);
        border-radius: 50%;
        background-color: var(--skin-color);
        transition: 0.4s;
      }
      .timeline-item:hover .circle-dot {
        background-color: var(--body-color);
      }
      .timeline-title {
        font-size: var(--normal-font-size);
        font-weight: var(--font-medium);
        margin-bottom: var(--mb025);
      }
      .timeline-text {
        font-size: var(--smaller-font-size);
        margin-bottom: var(--mb1);
      }
      .timeline-date {
        display: flex;
        align-items: center;
        column-gap: 0.4rem;
        font-size: var(--normal-font-size);
        color: var(--skin-color);
      }

      /* Main - Skills */

      .skills-container {
        grid-template-columns: 360px 320px;
        column-gap: 3rem;
        justify-content: center;
      }
      .skills-header {
        display: flex;
        align-items: center;
        cursor: pointer;
      }
      .skills-header:not(:last-child) {
        margin-bottom: var(--mb25);
      }
      .skills-icon,
      .skills-arrow {
        font-size: 2rem;
        color: var(--skin-color);
      }
      .skills-icon {
        margin-right: var(--mb075);
      }
      .skills-arrow {
        margin-left: auto;
      }
      .skills-active .skills-arrow {
        transform: rotate(-90deg);
        transition: 0.4s;
      }
      .skills-title {
        font-size: var(--h3-font-size);
        font-weight: var(--font-medium);
      }
      .skills-subtitle {
        font-size: var(--small-font-size);
      }
      .skills-list {
        row-gap: 1.8rem;
      }
      .skills-titles {
        display: flex;
        justify-content: space-between;
        margin-bottom: var(--mb05);
      }
      .skills-name {
        font-size: var(--normal-font-size);
        font-weight: var(--font-medium);
      }
      .skills-bar,
      .skills-percentage {
        height: 5px;
        border-radius: 0.25rem;
      }
      .skills-bar {
        background-color: var(--box-color);
      }
      .skills-percentage {
        display: block;
        background-color: var(--skin-color);
      }
      .skills [data-content] {
        display: none;
      }
      .skills-active[data-content] {
        display: block;
      }

      /* Main - Work */

      

      .portfolio-popup {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.5);
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 0 1rem;
        opacity: 0;
        visibility: hidden;
        z-index: var(--z-modal);
        transition: 0.4s;
      }
      .portfolio-popup.open {
        opacity: 1;
        visibility: visible;
      }
      .portfolio-popup-inner {
        background-color: var(--box-color);
        width: 900px;
        border-radius: 0.5rem;
        padding: 2.5rem;
        position: relative;
      }
      .portfolio-popup-content {
        grid-template-columns: repeat(2, 1fr);
        align-items: center;
        column-gap: 3rem;
      }
      .portfolio-popup-close {
        position: absolute;
        top: 1.5rem;
        right: 1.5rem;
        font-size: 1.5rem;
        color: var(--skin-color);
        cursor: pointer;
      }
      .portfolio-popup-img {
        border-radius: 0.5rem;
      }
      .portfolio-popup-subtitle {
        font-size: var(--smaller-font-size);
        margin-bottom: var(--mb025);
      }
      .details-title {
        font-size: var(--h3-font-size);
        font-weight: var(--font-medium);
        margin-bottom: var(--mb1);
      }
      .details-description {
        font-size: var(--small-font-size);
        margin-bottom: var(--mb2);
      }
      .details-info li {
        margin-bottom: var(--mb075);
        text-transform: capitalize;
        font-size: var(--small-font-size);
      }
      .details-info li:last-child {
        margin-bottom: 0;
      }
      .details-info li span {
        font-weight: normal;
      }
      .details-info li a {
        text-transform: lowercase;
        color: var(--skin-color);
      }

      
      /* Main - Contact */

      .contact-container {
        grid-template-columns: 300px 340px;
        column-gap: 3rem;
        justify-content: center;
        align-items: center;
      }
      .contact-info {
        display: grid;
        row-gap: 1rem;
      }
      .contact-card {
        background-color: var(--box-color);
        padding: 1rem;
        border-radius: 0.5rem;
        text-align: center;
      }
      .contact-card-icon {
        font-size: 1.8rem;
        color: var(--title-color);
        margin-bottom: var(--mb025);
      }
      .contact-card-title,
      .contact-card-data {
        font-size: var(--small-font-size);
      }
      .contact-card-title {
        font-weight: var(--font-medium);
      }
      .contact-card-data {
        display: block;
        margin-bottom: var(--mb075);
      }
      .contact-button {
        color: var(--skin-color);
        font-size: var(--small-font-size);
        display: flex;
        align-items: center;
        justify-content: center;
        column-gap: 0.25rem;
        cursor: pointer;
      }
      .contact-button-icon {
        font-size: 1rem;
        transition: 0.4s;
      }
      .contact-button:hover .contact-button-icon {
        transform: translateX(0.25rem);
      }
      .input-container {
        position: relative;
        margin-top: 1rem;
        margin-bottom: 1.9rem;
      }
      .input {
        width: 100%;
        border: 2px solid var(--text-color);
        background-color: transparent;
        padding: 0.6rem 1.2rem;
        color: var(--title-color);
        font-weight: var(--font-medium);
        font-size: var(--normal-font-size);
        letter-spacing: 0.5px;
        border-radius: 0.5rem;
        outline: none;
        transition: 0.4s;
      }
      textarea.input {
        padding: 0.8rem 1.2rem;
        min-height: 140px;
        border-radius: 0.5rem;
        resize: none;
        font-family: var(--body-font);
      }
      .input-container label {
        position: absolute;
        top: 50%;
        left: 1rem;
        transform: translateY(-50%);
        padding: 0 0.4rem;
        color: var(--text-color);
        font-size: 1rem;
        font-weight: var(--font-medium);
        pointer-events: none;
        z-index: 15;
        transition: 0.5s;
      }

      .input-container.textarea label {
        top: 1rem;
        transform: translateY(0);
      }
      .input-container span {
        position: absolute;
        top: 0;
        left: 25px;
        transform: translateY(-50%);
        font-size: var(--small-font-size);
        padding: 0 0.4rem;
        pointer-events: none;
        z-index: var(--z-fixed);
        color: transparent;
      }
      .input-container span::before,
      .input-container span::after {
        content: "";
        position: absolute;
        width: 10%;
        opacity: 0;
        height: 5px;
        background-color: var(--body-color);
        top: 50%;
        transform: translateY(-50%);
        transition: 0.4s;
      }
      .input-container span::before {
        left: 50%;
      }
      .input-container span::after {
        right: 50%;
      }
      .input-container.focus label {
        top: 0;
        transform: translateY(-50%);
        left: 25px;
        font-size: var(--smaller-font-size);
      }
      .input-container.focus span::before,
      .input-container.focus span::after {
        width: 50%;
        opacity: 1;
      }

      /* Footer */

      .footer {
        padding-top: 2rem;
      }
      .footer-container {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 1.6rem;
      }
      .footer-bg {
        background-color: var(--box-color);
        padding: 3rem 0 3.5rem;
      }
      .footer-title {
        font-size: var(--h1-font-size);
        margin-bottom: var(--mb025);
      }
      .footer-subtitle {
        font-size: var(--small-font-size);
      }
      
      
      .footer-socials {
        justify-self: flex-end;
        
        
      }
      
      .footer-social {
        color: antiquewhite;
        font-size: 1.5rem;
        margin-right: var(--mb15);
      }
      .footer-social:hover {
        color: var(--skin-color);
      }
      .footer-copy {
        font-size: var(--smaller-font-size);
        text-align: center;
        margin-top: 4.5rem;
      }
      .footer-copy a {
        font-family: var(--signature-font);
      }
      .footer-copy a:hover {
        color: var(--skin-color);
      }
      .footer-title,
      .footer-subtitle,
      .footer-copy a {
        color: var(--title-color);
      }
      
      /* Media Queries */

      @media screen and (max-width: 1408px) {
        .container {
          margin-left: var(--mb25);
          margin-right: var(--mb25);
        }
      }

      @media screen and (max-width: 1216px) {
        .about-container {
          column-gap: 2.5rem;
        }
        .about-description {
          padding-right: 0;
        }
        .work-container {
          grid-template-columns: repeat(2, 330px);
          gap: 3rem;
        }
      }

      @media screen and (max-width: 1024px) {
        .container {
          margin-left: var(--mb15);
          margin-right: var(--mb15);
        }
        .sidebar {
          width: 100%;
          z-index: 999;
          transform: translateX(-100%);
        }
        .show-sidebar {
          transform: translateX(0);
        }
        .nav-logo,
        .btn-share {
          display: none;
        }
        .nav-menu {
          height: 100%;
          width: 100%;
          transform: rotate(0deg) translateX(0);
          display: flex;
          justify-content: center;
        }
        .nav-list {
          flex-direction: column;
          height: 100%;
          justify-content: center;
          align-items: center;
        }
        .nav-link {
          padding: 1rem 0;
          line-height: 1.5;
        }
        .nav-link.active-link::after,
        .nav-link:hover::after {
          bottom: 0;
        }
        .nav-close {
          display: block;
        }
        .nav-toggle {
          display: flex;
        }

        .main {
          margin-left: 0;
        }

        .about-container {
          grid-template-columns: 1fr;
          row-gap: 2.5rem;
        }
        .about-img {
          width: 350px;
        }
        .about-data {
          text-align: center;
        }
        .about-info {
          justify-content: center;
        }
        .about-box {
          padding: 0.75rem 0.5rem;
        }
        .about-description {
          padding: 0 4rem;
          text-align: center;
        }

        .qualification-container {
          grid-template-columns: repeat(2, 290px);
        }
        .skills-container {
          grid-template-columns: 340px 300px;
        }
        .skills-list {
          row-gap: 1.7rem;
        }

        .portfolio-item-details {
          margin-bottom: var(--mb15);
        }
        .details-info li {
          margin-bottom: var(--mb05);
        }
        .details-title {
          margin-bottom: var(--mb075);
        }
      }

      @media screen and (max-width: 768px) {
        .about-img {
          width: 250px;
        }
        .qualification-container {
          grid-template-columns: 290px;
          row-gap: 3rem;
        }
        .skills-container {
          grid-template-columns: 300px;
          row-gap: 3rem;
        }
        

        .contact-container {
          grid-template-columns: 360px;
          row-gap: 3rem;
        }
        .footer-container {
          grid-template-columns: repeat(2, 1fr);
          row-gap: 3rem;
        }
        .footer-socials {
          justify-self: start;
        }
        .footer-links {
          flex-direction: column;
          row-gap: 1.5rem;
        }
        .footer-bg {
          padding: 2rem 0 3rem;
        }
        .footer-copy {
          margin-top: var(--mb3);
        }

        .portfolio-popup-inner {
          width: 420px;
          padding: 2.8rem 1.5rem 2.5rem;
        }
        .portfolio-popup-content {
          grid-template-columns: 1fr;
          row-gap: 1.6rem;
        }
        .details-title {
          font-size: var(--normal-font-size);
        }
        .portfolio-popup-close {
          top: 0.5rem;
        }
      }

      @media screen and (max-width: 576px) {
        .nav-toggle {
          right: initial;
          left: 1.5rem;
        }
        .home {
          background-image: none;
          height: initial;
          align-items: initial;
          padding: 7rem 0 2rem;
        }
        .home-container {
          row-gap: 2rem;
        }
        .home-img {
          display: block;
          width: 250px;
          justify-self: center;
        }
        .my-info {
          display: none;
        }
        .home-social {
          left: initial;
          right: -1rem;
          flex-direction: column;
          row-gap: 3.5rem;
        }
        .home-social-follow {
          font-size: var(--smaller-font-size);
          transform: rotate(90deg);
        }
        .home-social-links {
          flex-direction: column;
          row-gap: 0.25rem;
        }
        .home-social-link {
          font-size: var(--normal-font-size);
        }

        .about-info {
          grid-template-columns: repeat(3, 1fr);
        }
        .about-description {
          padding: 0;
        }

       

        .work-container,
        .contact-container {
          grid-template-columns: 300px;
        }

        .footer-container {
          grid-template-columns: 1fr;
        }
        .footer-links {
          justify-self: flex-start;
        }
      }

      @media screen and (max-width: 350px) {
        .container {
          margin-left: var(--mb1);
          margin-left: var(--mb1);
        }
        .home-img {
          width: 200px;
        }
        .home-title {
          font-size: var(--h1-font-size);
        }
        .home-subtitle {
          font-size: var(--normal-font-size);
        }

        .about-info {
          grid-template-columns: repeat(2, 1fr);
          row-gap: 0.5rem;
        }
        .work-container,
        .skills-container,
        .qualification-container,
        .contact-container {
          grid-template-columns: 1fr;
        }
        .skills-title {
          font-size: var(--normal-font-size);
        }
      }
