@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&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&display=swap');

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}
.container{
    min-height: 100vh;
    width: 100%;

}
body{
    background-color: #f5f5f5;
}
.navlist{
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
    padding: 20px 0;
    background-color: #333;
   

}  
.navlist li a{
    text-decoration: none;
    color: white;
    font-size: 1 rem;
    text-transform: uppercase;
    font-weight: 500;
    position: relative;
} 

.left-container, .right-container{
    height: 100vh;
    width: 100%;
    display: inline-block;
    float: left;
    display: flex;
    align-items: center;
}

.left-container{
    background-color:#262625 ;
    width: 70%;
    padding-left: 3 rem;
   
}
.right-container{
    background:linear-gradient(-45deg, #3877ff , #262625 70%);
    width: 30%;
}

.icons{
    color: white;
    display: flex;
    flex-direction: column;
    font-size: 2rem;
    justify-content: center;
    align-items: center;
    gap: 3rem;
    margin-left: 15px;

}
.content{
    margin-left: 4rem;
}
.content .intro{
    color: white;
    font-size: 1.5rem;
    margin-bottom: 1rem;

    display: inline; 
}

#element{
    color: #5db9ee;
}
.content h2{
    color: #5db9ee;
    font-size: 3rem;
    margin-bottom: 1rem;  
}
.content .detail{
    font-size: 1.1rem;
    color: white;
    max-width: 38rem;
    margin:1.1rem 0 3rem 0;
    line-height: 1.5rem;
}


.btn button{
    border: .1rem solid #5db9ee;
    font-size: 1.1rem;
    padding: .8rem 1.5rem;
    border-radius: .5rem;
    transition: all .5s ease;
}
button:nth-child(1){
    margin-left: 1rem;
    background-color: #5db9ee;
    color:#262625;
    cursor: pointer;
}
button:nth-child(1) a{
    text-decoration: none;
    color: #262625;
   
}
button:nth-child(2){
    margin-left: 1rem;
   background: transparent;
    color:#5db9ee;
    cursor: pointer;
    margin-left: 2rem;
}
button:nth-child(2) a{
    text-decoration: none;
    color: #5db9ee;
}

button:nth-child(1):hover{
    background: transparent;
    color: #5db9ee;
}
button:nth-child(1):hover a{
    color: #5db9ee;
}

button:nth-child(2):hover{
    background: #5db9ee;
    color: #262625;
}
button:nth-child(2):hover a{
    color: #262625;
}
.fa-brands:hover{
    cursor: pointer;
    background: linear-gradient(#fff,#3877ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.design .circle{
    aspect-ratio: 1;
    position: absolute;
    border-radius: 50%;
    top: 50%;
    left: 70%;
    transform: translate(-50%,-50%);
}
.circle:nth-child(1){
   background: linear-gradient(90deg,transparent 50%, #262625 50%);
   width: 38rem;
}
.circle:nth-child(2){
   background: white;
   width: 30rem;
   /* background-image:url("IMG-20250520-WA0149-removebg-preview.png");  */
   background-image: url("yashimg_.png");
   background-size: 100%;
   border: .1rem solid #fff;
   box-shadow:0 0 1rem #fff , 
   inset 0 0 1rem #fff , 
   0 0 3rem #3877ff ,
    inset 0 0 3rem #3877ff ;
}

.navlist li a:after{
    content: "";
    position: absolute;
    background: #fff;
    width: 100%;
    height:.1rem ;
    left: 0;
    bottom: -5px;
    transform: scaleX(0);
    transition: transform 0.5s ease;

}
.navlist li a:hover:after{
    transform: scaleX(1);
    transition: transform 0.3s ease;
}
.h-container{
    border-top: 5px solid #f5f5f5;
    background-color: #262625;
    display: flex;
    justify-content: center;
    height: 300px;
    width: 100%;
}
.home{
    text-align: center;
    color: white;
    padding: 50px;
}
.skills{
    margin-top: 2rem;
    text-align: center;
    color: white;
    padding: 20px;
    height: 150px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    
}
#skill{
    background-color: transparent;
    color: #5db9ee;
     border: .1rem solid #5db9ee;
    padding: 10px 20px;
    margin: 10px;
    font-size: 1rem;
    font-weight: 600;
    height: 150px;
    width: 250px;
    display: inline;
    display: flex;
    flex-direction: column;
    border-radius: 15px;
}
#skill:hover{
    box-shadow: 0 0 1rem #5db9ee;
    transform: scale(1.05);
    transition: all 0.5s ease;
}
.home h1{
    font-size: 2.5rem;
    margin-bottom: 1rem;
}
.home h1 span{
    color: #5db9ee;
}
.home p{
    font-size: 1.2rem;
    margin-bottom: 2rem;
}
.home button{
    border: none;
    padding: 1rem 2rem;
    font-size: 1.2rem;
    border-radius: .5rem;
    background-color: #5db9ee;
    color: #262625;
    cursor: pointer;
}
.home button:hover{
    background-color: transparent;
    border: .1rem solid #5db9ee;
    color: #5db9ee;
    transition: all 0.5s ease;
}
.typing-text {
  font-size: 1.2rem;
  border-right: 3px solid #0d6efd;
  white-space: nowrap;
  overflow: hidden;
  width: 0;
  margin: 0 auto;
  animation: typing 5s steps(90, end) forwards, blink 1s step-end infinite;
}
@keyframes typing {
  from { width: 0; }
  to { width: 540px; } /* adjust width based on sentence length */
}
@keyframes blink {
  50% { border-color: transparent; }
}
.p-container{
    border-top: 5px solid #f5f5f5;
    background-color: #262625;
    display: flex;
    justify-content: center;
    height: 300px;
    width: 100%;
}
.project-cards{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5rem;
    margin-top: 2rem;
    height: 200px;
    width: 80%;
    margin-left: auto;  
    margin-right: auto;
   
}
.card{
    gap: 2rem;
    margin-top: 20rem;
    height: 400px;
    width: 400px;
    border: 3px solid #5db9ee;
    padding: 15px;
    border-bottom-right-radius: 30px;
    border-bottom-left-radius: 30px;
   
}
.card:hover{
    box-shadow: 0 0 1rem #5db9ee;
    transition: all 0.5s ease;
}
.card img{
    object-fit: cover;
    border: 2px solid white; 
}
.card img:hover{
    box-shadow: 0 0 1rem #5db9ee;
   transform: scale(1.05);
    
}
.card h3{
    color: #5db9ee;
    font-size: 1.5rem;
    margin: 1rem 0;
    text-align: center;
}
.card p{
    color: white;
    font-size: 0.1rem;
    text-align: center;
    line-height: 1.5rem;
}

.projects{
    text-align: center;
    color: white;
    padding: 50px;
}
.projects h1{
    font-size: 2.5rem;
    margin-bottom: 1rem;
}
.projects h1 span{
    color: #5db9ee;
}
.projects p{
    font-size: 1.2rem;
    margin-bottom: 2rem;
}
.projects button{
    border: none;
    padding: 1rem 2rem;
    font-size: 1.2rem;
    border-radius: .5rem;
    background-color: #5db9ee;
    color: #262625;
    cursor: pointer;
}
.projects button:hover{
    background-color: transparent;
    border: .1rem solid #5db9ee;
    color: #5db9ee;
    transition: all 0.5s ease;
}
.e-container{
    border-top: 5px solid #f5f5f5;
    background-color: #262625;
    display: flex;
    justify-content: center;
    height: 600px;
    width: 100%;
}
.experience{
    text-align: center;
    color: white;
    padding: 50px;
    height: 500px;
    width: 80%;
    margin-left: auto;  
    margin-right: auto;
}
.experience h1{
    font-size: 2.5rem;
    margin-bottom: 1rem;
}
.experience h1 span{
    color: #5db9ee;
}
.timeline{
    position: relative;
    max-width: 800px;
    margin: 0 auto;
    padding: 20px 0;
}
.timeline h3{
    color: white;
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
    
}
.timeline h3 span{
    color: #5db9ee;
    font-size: 3rem;
}
#psk{
    height: 200px;
    width: 200px;
    border-radius: 50%;
    background-color: transparent;
    border: 2px solid #5db9ee;
    margin-left: 290px;
    margin-top: 30px;
    display: flex;
    justify-content: center;
}
#psk:hover{
    box-shadow: 0 0 1rem #5db9ee;
    transform: scale(1.05);
    transition: all 0.5s ease;
}
.timeline h3  img{
    height: 150px;
    width: 150px;
    border-radius: 50%;
    margin-top: 23px;
}
#t{
    font-size: 1.5rem;
    color: white;
    margin-bottom: 1.5rem;
    display: block;
}
.timeline p{
    color: white;
    font-size: 1.1rem;
    line-height: 1.5rem;
    margin-bottom: 2rem;
}


.c-container{
    border-top: 5px solid #f5f5f5;
    background-color: #262625;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 400px;
    width: 100%;
}
.contact{
    text-align: center;
    color: white;
    padding: 50px;
    height: 300px;
    width: 80%;
    margin-left: auto;  
    margin-right: auto;
}
.contact h1{
    font-size: 2.5rem;
    margin-bottom: 1rem;
}
.contact h1 span{
    color: #5db9ee;
}
.contact p{
    font-size: 1.2rem;
    margin-bottom: 2rem;
}
.contact button{
    border: none;
    padding: 1rem 2rem;
    font-size: 1.2rem;
    border-radius: .5rem;
    background-color: #5db9ee;
    color: #262625;
    cursor: pointer;
   
}
.contact button:hover{
    background-color: transparent;
    border: .1rem solid #5db9ee;
    color: #5db9ee;
    transition: all 0.5s ease;
}
input, textarea{
    width: 50%;
    padding: 10px;
    margin: 10px 0;
    border: 1.5px solid #ccc;
    border-radius: 5px;
    font-size: 1rem;
    background-color: transparent;
    color: #f5f5f5;
}

input[type=text]:hover , input[type=email]:hover , textarea:hover{
    border-color: #5db9ee;
    transform: scale(1.02);
}
.btn{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 5rem;
}

footer{
    text-align: center;
    padding: 20px;
    background-color: #333;
    color: white;
    margin-top: 20px;
}

/* ===============================
   RESPONSIVE MEDIA QUERIES
   =============================== */

/* ----------- Tablets (≤992px) ----------- */
@media (max-width: 992px) {
    /* Containers */
    .left-container, .right-container {
        width: 100%;
        height: auto;
        display: block;
        padding: 2rem 1rem;
    }
    
    /* Show image container and center its content */
    .right-container {
        display: flex; 
        justify-content: center;
        align-items: center;
        height: 350px; /* Give it defined space below the text */
    }

    .design .circle {
        display: block; /* Ensure the hidden element is now shown */
        /* Reposition circles to be centered in the now centered right-container */
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    
    /* Adjust size for tablet view */
    .circle:nth-child(1) {
        width: 25rem; 
    }
    .circle:nth-child(2) {
        width: 22rem; 
    }


    /* Navigation */
    .navlist {
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
        padding: 10px 0;
    }

    .navlist li a {
        font-size: 1rem;
    }

    /* About / Hero Section */
    .icons {
        flex-direction: row;
        gap: 1rem;
        margin-bottom: 1.5rem;
        justify-content: center;
        margin-left: 0;
    }

    .content {
        text-align: center;
        margin: 0 auto;
        padding: 0 1rem;
    }

    .content h2 {
        font-size: 2rem;
    }

    #element {
        font-size: 2rem;
        display: inline-block;
    }

    .detail {
        font-size: 1rem;
        max-width: 90%;
        margin: 1rem auto 2rem;
        line-height: 1.6rem;
    }

    .btn {
        justify-content: center;
        flex-wrap: wrap;
    }

    .btn button {
        width: auto;
        margin: 0.5rem;
    }
    
    /* Skills Section */
    .skills {
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
        height: auto;
    }

    #skill {
        width: 45%;
        height: auto;
        padding: 15px;
    }
    /* Projects */
    .p-container {
        height: auto;
        padding: 2rem 0;
    }

    .project-cards {
        flex-wrap: wrap;
        justify-content: center;
        gap: 2rem;
    }

    .card {
        width: 300px;
        height: auto;
        margin-top: 0;
    }

    .card img {
        width: 100%;
        height: auto;
    }

    /* Experience */
    .e-container {
        height: auto;
        padding: 2rem 0;
    }

    #psk {
        margin: 0 auto;
        margin-left: auto;
    }

    .timeline {
        max-width: 100%;
        padding: 0 1rem;
    }

    /* Contact */
    .c-container {
        height: auto;
        padding: 2rem 0;
    }

    input, textarea {
        width: 90%;
    }

    /* Footer */
    footer {
        font-size: 1rem;
    }
}

/* ----------- Mobile (≤600px) ----------- */
@media (max-width: 600px) {
    
    /* Further shrink the circles for small mobile view */
    .right-container {
        height: 280px; 
    }
    .circle:nth-child(1) {
        width: 18rem; 
    }
    .circle:nth-child(2) {
        width: 15rem; 
    }

    /* Navbar */
    .navlist {
        flex-direction: column;
        gap: 0.75rem;
        padding: 15px 0;
    }

    .navlist li a {
        font-size: 0.95rem;
    }

    /* Icons */
    .icons {
        flex-direction: row;
        gap: 0.8rem;
        justify-content: center;
    }

    .icons i {
        font-size: 1.3rem;
    }

    /* Hero / About */
    .content h2 {
        font-size: 1.5rem;
    }

    .content .intro {
        font-size: 1.1rem;
    }
    
    #element {
        font-size: 1.3rem;
    }

    .detail {
        font-size: 0.95rem;
        line-height: 1.4rem;
        padding: 0 1rem;
    }

    .btn {
        flex-direction: column;
        gap: 0.8rem;
    }

    .btn button {
        width: 80%; /* Adjusted for a slight margin */
        padding: 0.8rem;
        font-size: 1rem;
        margin-left: 0 !important; /* Fixing specific button margin for full width */
    }
    
    /* Skills */
    .skills {
        width: 90%;
    }
    #skill {
        width: 100%;
    }

    /* Projects */
    .project-cards {
        flex-direction: column;
        gap: 1.5rem;
    }

    .card {
        width: 90%;
        height: auto;
        padding: 10px;
    }

    .card h3 {
        font-size: 1.2rem;
    }

    .card p {
        font-size: 0.9rem;
    }

    /* Experience */
    .timeline h3 {
        font-size: 1.2rem;
    }

    #psk {
        width: 150px;
        height: 150px;
    }
    
    #psk img {
        height: 120px;
        width: 120px;
    }

    .timeline p {
        font-size: 0.95rem;
    }

    /* Contact */
    input, textarea {
        width: 95%;
        font-size: 0.95rem;
    }

    /* Footer */
    footer {
        font-size: 0.9rem;
    }
}