/* =====================================================
   responsive.css
   Responsive styles for Premium Portfolio
   ===================================================== */

/* Large Laptop */
@media (max-width: 1200px){

.container{
    width:95%;
}

.hero h1{
    font-size:3.5rem;
}

.hero-grid{
    gap:40px;
}

.project-grid{
    grid-template-columns:repeat(2,1fr);
}

.skills-grid{
    grid-template-columns:repeat(4,1fr);
}

}

/* Laptop */
@media (max-width:992px){

.header .container{
    padding:15px 0;
}

.hero{
    padding-top:120px;
}

.hero-grid{
    grid-template-columns:1fr;
    text-align:center;
}

.hero-text{
    order:2;
}

.hero-image{
    order:1;
    max-width:420px;
    margin:auto;
}

.hero p{
    margin:auto;
}

.hero-buttons,
.socials{
    justify-content:center;
}

.about-grid{
    grid-template-columns:repeat(2,1fr);
}

.skills-grid{
    grid-template-columns:repeat(3,1fr);
}

.project-grid{
    grid-template-columns:1fr;
}

.timeline{
    padding-left:0;
}

}

/* Tablet */
@media (max-width:768px){

#menu-btn{
    display:inline-flex;
}

.navbar{
    position:absolute;
    top:80px;
    left:0;
    width:100%;
    display:none;
    flex-direction:column;
    background:#111827;
    padding:20px;
    border-top:1px solid rgba(255,255,255,.1);
}

.navbar.active{
    display:flex;
}

.navbar a{
    padding:12px 0;
}

.hero h1{
    font-size:2.8rem;
}

.hero h2{
    font-size:1.5rem;
}

.section{
    padding:80px 0;
}

.section-title{
    font-size:2rem;
}

.about-grid{
    grid-template-columns:1fr;
}

.skills-grid{
    grid-template-columns:repeat(2,1fr);
}

.contact-form{
    width:100%;
}

}

/* Mobile */
@media (max-width:576px){

.container{
    width:92%;
}

.hero{
    min-height:auto;
}

.hero h1{
    font-size:2.2rem;
}

.hero h2{
    font-size:1.2rem;
}

.hero p{
    font-size:.95rem;
}

.hero-buttons{
    display:flex;
    flex-direction:column;
    gap:15px;
}

.hero-buttons .btn{
    width:100%;
    text-align:center;
}

.profile-card{
    padding:15px;
}

.section-title{
    font-size:1.8rem;
}

.skills-grid{
    grid-template-columns:1fr;
}

.project-grid{
    grid-template-columns:1fr;
}

.project-card{
    padding:20px;
}

.info-card{
    padding:20px;
}

.contact-form input,
.contact-form textarea{
    font-size:15px;
}

.top-btn{
    right:15px;
    bottom:15px;
    width:45px;
    height:45px;
}

}

/* Small Mobile */
@media (max-width:380px){

.hero h1{
    font-size:1.8rem;
}

.hero h2{
    font-size:1rem;
}

.logo{
    font-size:1.4rem;
}

.btn{
    padding:12px 18px;
    font-size:14px;
}

.section{
    padding:60px 0;
}

}
