/*=====================================================
  SAMUEL OCHOCHE PETER PORTFOLIO
  STYLE.CSS
  PART 1
======================================================*/

/* Google Font */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/*==========================
ROOT VARIABLES
===========================*/

:root{

--primary:#0A192F;
--secondary:#112240;
--accent:#64FFDA;
--gold:#FFD166;
--white:#ffffff;
--light:#ccd6f6;
--gray:#8892b0;
--dark:#020C1B;
--danger:#ff4d4d;

--gradient:linear-gradient(135deg,#0A192F,#112240);

--shadow:0 15px 40px rgba(0,0,0,.25);

--transition:.4s ease;

--radius:18px;

}

/*==========================
RESET
===========================*/

*{

margin:0;

padding:0;

box-sizing:border-box;

scroll-behavior:smooth;

}

html{

font-size:16px;

overflow-x:hidden;

}

body{

font-family:'Poppins',sans-serif;

background:var(--primary);

color:var(--white);

overflow-x:hidden;

line-height:1.7;

}

img{

width:100%;

display:block;

}

a{

text-decoration:none;

color:inherit;

}

ul{

list-style:none;

}

button{

cursor:pointer;

border:none;

outline:none;

font-family:inherit;

}

section{

padding:110px 0;

position:relative;

}

.container{

width:90%;

max-width:1300px;

margin:auto;

}

/*==========================
SCROLLBAR
===========================*/

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-track{

background:#08111f;

}

::-webkit-scrollbar-thumb{

background:var(--accent);

border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

background:var(--gold);

}

/*==========================
PRELOADER
===========================*/

#preloader{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:var(--primary);

display:flex;

align-items:center;

justify-content:center;

z-index:999999;

}

.loader{

width:65px;

height:65px;

border-radius:50%;

border:6px solid rgba(255,255,255,.15);

border-top:6px solid var(--accent);

animation:spin 1s linear infinite;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}

/*==========================
HEADER
===========================*/

#header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:1000;

padding:18px 0;

transition:.4s;

backdrop-filter:blur(15px);

background:rgba(10,25,47,.75);

border-bottom:1px solid rgba(255,255,255,.05);

}

#header .container{

display:flex;

justify-content:space-between;

align-items:center;

}

.logo{
    display:flex;
    align-items:center;
}

.logo img{
    width:65px;
    height:65px;
    object-fit:contain;
    border-radius:50%;
    transition:.4s ease;
}

.logo img:hover{
    transform:scale(1.08) rotate(5deg);
}

.logo span{

color:var(--accent);

}

nav ul{

display:flex;

gap:35px;

}

nav ul li a{

font-weight:500;

color:var(--light);

transition:.3s;

position:relative;

}

nav ul li a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--accent);

transition:.3s;

}

nav ul li a:hover{

color:var(--accent);

}

nav ul li a:hover::after{

width:100%;

}

.menu-btn{

display:none;

font-size:1.8rem;

cursor:pointer;

color:white;

}

/*==========================
BUTTONS
===========================*/

.btn{

display:inline-block;

padding:15px 35px;

background:var(--accent);

color:var(--primary);

font-weight:700;

border-radius:50px;

transition:.4s;

margin-right:15px;

margin-top:20px;

box-shadow:var(--shadow);

}

.btn:hover{

transform:translateY(-6px);

background:var(--gold);

}

.btn-outline{

background:transparent;

border:2px solid var(--accent);

color:var(--accent);

}

.btn-outline:hover{

background:var(--accent);

color:var(--primary);

}

.btn-gold{

background:var(--gold);

color:var(--primary);

}

.btn-gold:hover{

background:var(--accent);

}

/*==========================
HERO SECTION
===========================*/

.hero{

min-height:100vh;

display:flex;

align-items:center;

background:linear-gradient(rgba(2,12,27,.90),
rgba(2,12,27,.88)),
url("../images/background.jpg") center/cover;

position:relative;

overflow:hidden;

}

.hero-container{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:80px;

align-items:center;

}

.hero-left h5{
    display:block !important;
    color:#FFD700 !important;
    font-size:24px !important;
    font-weight:700 !important;
    margin-bottom:15px !important;
    opacity:1 !important;
    visibility:visible !important;
    position:relative !important;
    z-index:999 !important;
}

.hero-left h1{

font-size:4rem;

line-height:1.2;

margin-bottom:15px;

}

.hero-left h3{

font-size:2rem;

margin-bottom:25px;

color:var(--gold);

min-height:50px;

}

.hero-left p{

color:var(--light);

font-size:1.1rem;

margin-bottom:20px;

max-width:650px;

}

.hero-buttons{

display:flex;

flex-wrap:wrap;

align-items:center;

gap:15px;

margin-top:25px;

}

.social-icons{

display:flex;

gap:18px;

margin-top:35px;

}

.social-icons a{

width:55px;

height:55px;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

background:rgba(255,255,255,.08);

font-size:1.2rem;

transition:.4s;

border:1px solid rgba(255,255,255,.08);

}

.social-icons a:hover{

background:var(--accent);

color:var(--primary);

transform:translateY(-8px);

}

/*==========================
HERO IMAGE
===========================*/

.hero-right{

display:flex;

justify-content:center;

align-items:center;

}

.image-box{

position:relative;

width:420px;

height:420px;

border-radius:50%;

overflow:hidden;

border:8px solid rgba(100,255,218,.25);

box-shadow:0 0 80px rgba(100,255,218,.20);

}

.image-box img{

width:100%;

height:100%;

object-fit:cover;

}

.circle{

position:absolute;

border-radius:50%;

animation:float 6s ease-in-out infinite;

}

.circle1{

width:22px;

height:22px;

background:var(--accent);

top:20px;

left:30px;

}

.circle2{

width:16px;

height:16px;

background:var(--gold);

bottom:35px;

right:50px;

}

.circle3{

width:12px;

height:12px;

background:#4ecdc4;

top:50%;

right:-10px;

}

@keyframes float{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-18px);

}

100%{

transform:translateY(0);

}

}

/*==========================
SECTION TITLE
===========================*/

.section-title{

text-align:center;

margin-bottom:70px;

}

.section-title h5{

color:var(--accent);

font-size:1rem;

text-transform:uppercase;

letter-spacing:2px;

margin-bottom:10px;

}

.section-title h2{

font-size:2.8rem;

margin-bottom:15px;

}

.line{

width:90px;

height:4px;

background:var(--accent);

margin:auto;

border-radius:10px;

}

/*=====================================================
  STYLE.CSS - PART 2
  ABOUT • STATS • SKILLS • SERVICES • EXPERIENCE
======================================================*/

/*==========================
STATISTICS
===========================*/

.stats{
    background:var(--secondary);
    padding:70px 0;
}

.stats .container{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:25px;
}

.stat-box{
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.08);
    border-radius:var(--radius);
    padding:35px 20px;
    text-align:center;
    transition:var(--transition);
    backdrop-filter:blur(10px);
}

.stat-box:hover{
    transform:translateY(-10px);
    border-color:var(--accent);
    box-shadow:0 20px 45px rgba(0,0,0,.35);
}

.stat-box h2{
    color:var(--accent);
    font-size:2.8rem;
    margin-bottom:10px;
}

.stat-box p{
    color:var(--light);
    font-size:1rem;
}

.stats .stat-box i{
    font-size: 2.5rem;
    color: var(--primary-color);
    margin-bottom: 15px;
    display: block;
}

/*==========================
ABOUT
===========================*/

.about{
    background:var(--primary);
}

.about-content{
    display:grid;
    grid-template-columns:1fr 1.2fr;
    gap:70px;
    align-items:center;
}

.about-image{
    position:relative;
}

.about-image img{
    border-radius:25px;
    box-shadow:0 25px 50px rgba(0,0,0,.35);
}

.experience-card{
    position:absolute;
    bottom:-25px;
    right:-20px;
    background:var(--accent);
    color:var(--primary);
    padding:25px;
    border-radius:20px;
    text-align:center;
    box-shadow:var(--shadow);
}

.experience-card h2{
    font-size:2.3rem;
}

.about-text h3{
    font-size:2rem;
    margin-bottom:20px;
}

.about-text p{
    color:var(--light);
    margin-bottom:18px;
}

.about-info{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
    margin:35px 0;
}

.about-info div{
    background:rgba(255,255,255,.04);
    padding:18px;
    border-radius:15px;
    border-left:4px solid var(--accent);
}

.about-info span{
    color:var(--gray);
    font-size:.9rem;
}

.about-info h4{
    margin-top:8px;
    font-size:1rem;
}

/*==========================
SKILLS
===========================*/

.skills{
    background:var(--secondary);
}

.skills-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:30px;
}

.skill-card{
    background:rgba(255,255,255,.05);
    padding:40px 30px;
    border-radius:20px;
    text-align:center;
    transition:var(--transition);
    border:1px solid rgba(255,255,255,.08);
}

.skill-card:hover{
    transform:translateY(-12px);
    border-color:var(--accent);
    box-shadow:0 25px 50px rgba(0,0,0,.35);
}

.skill-card i{
    font-size:3rem;
    color:var(--accent);
    margin-bottom:25px;
}

.skill-card h3{
    margin-bottom:18px;
}

.skill-card p{
    color:var(--light);
    line-height:2;
}

/*==========================
SERVICES
===========================*/

.services{
    background:var(--primary);
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:30px;
}

.service-card{
    background:rgba(255,255,255,.04);
    padding:40px;
    border-radius:20px;
    transition:.4s;
    border:1px solid rgba(255,255,255,.08);
}

.service-card:hover{
    transform:translateY(-10px);
    border-color:var(--gold);
    box-shadow:0 25px 50px rgba(0,0,0,.35);
}

.service-card i{
    font-size:3rem;
    color:var(--gold);
    margin-bottom:20px;
}

.service-card h3{
    margin-bottom:15px;
}

.service-card p{
    color:var(--light);
}

/*==========================
EXPERIENCE TIMELINE
===========================*/

.experience{
    background:var(--secondary);
}

.timeline{
    position:relative;
    max-width:900px;
    margin:auto;
}

.timeline::before{
    content:"";
    position:absolute;
    left:25px;
    top:0;
    width:3px;
    height:100%;
    background:var(--accent);
}

.timeline-item{
    position:relative;
    padding-left:80px;
    margin-bottom:60px;
}

.timeline-item:last-child{
    margin-bottom:0;
}

.timeline-item .circle{
    position:absolute;
    left:14px;
    top:5px;
    width:24px;
    height:24px;
    background:var(--gold);
    border:4px solid var(--accent);
    border-radius:50%;
}

.timeline-item .content{
    background:rgba(255,255,255,.05);
    padding:30px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.08);
    transition:var(--transition);
}

.timeline-item .content:hover{
    transform:translateX(10px);
    border-color:var(--accent);
}

.timeline-item h3{
    margin-bottom:5px;
}

.timeline-item h4{
    color:var(--accent);
    margin-bottom:8px;
}

.timeline-item span{
    display:inline-block;
    color:var(--gold);
    margin-bottom:15px;
    font-weight:600;
}

.timeline-item p{
    color:var(--light);
}

/*==========================
COMMON CARD EFFECT
===========================*/

.skill-card,
.service-card,
.stat-box,
.timeline-item .content,
.about-info div{
    transition:all .4s ease;
}

.skill-card:hover,
.service-card:hover,
.stat-box:hover,
.about-info div:hover{
    transform:translateY(-8px);
}

/*=====================================================
  STYLE.CSS - PART 3
  PROJECTS • CTA • GITHUB • CERTIFICATES
======================================================*/

/*==========================
PROJECTS
===========================*/

.projects{
    background:var(--primary);
}

.project-filter{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:15px;
    margin-bottom:60px;
}

.project-filter button{
    padding:12px 28px;
    background:rgba(255,255,255,.05);
    color:var(--light);
    border:1px solid rgba(255,255,255,.08);
    border-radius:50px;
    transition:.4s;
    font-weight:600;
}

.project-filter button:hover,
.project-filter button.active{
    background:var(--accent);
    color:var(--primary);
}

.project-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(360px,1fr));
    gap:35px;
}

.project-card{
    background:var(--secondary);
    border-radius:20px;
    overflow:hidden;
    transition:.45s;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 10px 25px rgba(0,0,0,.25);
}

.project-card:hover{
    transform:translateY(-15px);
    border-color:var(--accent);
    box-shadow:0 25px 50px rgba(0,0,0,.45);
}

.project-card img{
    width:100%;
    height:240px;
    object-fit:cover;
    transition:.6s;
}

.project-card:hover img{
    transform:scale(1.08);
}

.project-content{
    padding:28px;
}

.project-content h3{
    font-size:1.4rem;
    margin-bottom:15px;
}

.project-content p{
    color:var(--light);
    margin-bottom:20px;
}

.tech{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:25px;
}

.tech span{
    background:rgba(100,255,218,.12);
    color:var(--accent);
    padding:8px 16px;
    border-radius:30px;
    font-size:.85rem;
}

.buttons{
    display:flex;
    gap:15px;
}

.buttons a{
    flex:1;
    text-align:center;
    padding:12px;
    border-radius:30px;
    background:var(--accent);
    color:var(--primary);
    font-weight:600;
    transition:.4s;
}

.buttons a:last-child{
    background:transparent;
    border:2px solid var(--accent);
    color:var(--accent);
}

.buttons a:hover{
    transform:translateY(-5px);
    background:var(--gold);
    color:var(--primary);
}

/*==========================
CALL TO ACTION
===========================*/

.hire{
    padding:90px 0;
    background:linear-gradient(135deg,#0A192F,#112240);
}

.hire-content{
    text-align:center;
    max-width:850px;
    margin:auto;
}

.hire-content h2{
    font-size:3rem;
    margin-bottom:20px;
}

.hire-content p{
    color:var(--light);
    font-size:1.1rem;
    margin-bottom:35px;
}

/*==========================
GITHUB
===========================*/

.github{
    background:var(--secondary);
}

.github-box{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center;
}

.github-box i{
    font-size:5rem;
    color:var(--accent);
    margin-bottom:20px;
}

.github-box h3{
    font-size:2rem;
    margin-bottom:20px;
}

.github-box p{
    color:var(--light);
    margin-bottom:30px;
}

.github-stats{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:25px;
}

.github-stats div{
    background:rgba(255,255,255,.05);
    padding:35px;
    border-radius:20px;
    text-align:center;
    transition:.4s;
}

.github-stats div:hover{
    transform:translateY(-10px);
    border:1px solid var(--accent);
}

.github-stats h2{
    color:var(--accent);
    font-size:2.3rem;
    margin-bottom:10px;
}

.github-stats p{
    color:var(--light);
}

/*==========================
CERTIFICATES
===========================*/

.certificates{
    background:var(--primary);
}

.certificate-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:30px;
}

.certificate-card{
    background:rgba(255,255,255,.05);
    border-radius:20px;
    overflow:hidden;
    transition:.45s;
    text-align:center;
    border:1px solid rgba(255,255,255,.08);
}

.certificate-card:hover{
    transform:translateY(-12px);
    border-color:var(--gold);
    box-shadow:0 25px 50px rgba(0,0,0,.35);
}

.certificate-card img{
    width:100%;
    height:230px;
    object-fit:cover;
    transition:.5s;
}

.certificate-card:hover img{
    transform:scale(1.05);
}

.certificate-card h3{
    margin:20px 0 8px;
}

.certificate-card p{
    color:var(--gray);
    margin-bottom:20px;
}

/*==========================
IMAGE OVERLAY EFFECT
===========================*/

.project-card,
.certificate-card{
    position:relative;
}

.project-card::before,
.certificate-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to top,
        rgba(2,12,27,.55),
        transparent);
    opacity:0;
    transition:.4s;
    pointer-events:none;
}

.project-card:hover::before,
.certificate-card:hover::before{
    opacity:1;
}

/*=====================================================
  STYLE.CSS - PART 4
  TESTIMONIALS • CONTACT • FOOTER • ANIMATIONS
======================================================*/

/*==========================
TESTIMONIALS
===========================*/

.testimonials{
    background:var(--secondary);
}

.testimonial-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:30px;
}

.testimonial-card{
    background:rgba(255,255,255,.05);
    padding:40px 30px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.08);
    transition:.4s;
    position:relative;
}

.testimonial-card:hover{
    transform:translateY(-12px);
    border-color:var(--accent);
    box-shadow:0 25px 50px rgba(0,0,0,.35);
}

.testimonial-card::before{
    content:"❝";
    position:absolute;
    top:20px;
    left:25px;
    font-size:4rem;
    color:rgba(100,255,218,.15);
}

.testimonial-card p{
    color:var(--light);
    margin-bottom:25px;
    margin-top:20px;
}

.testimonial-card h4{
    color:var(--gold);
    margin-bottom:8px;
}

.testimonial-card span{
    color:var(--gray);
}

/*==========================
CONTACT
===========================*/

.contact{
    background:var(--primary);
}

.contact-wrapper{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:start;
}

.contact-info h3{
    font-size:2rem;
    margin-bottom:20px;
}

.contact-info p{
    color:var(--light);
    margin-bottom:20px;
}

.info{
    margin:30px 0;
}

.info p{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:18px;
}

.info i{
    width:45px;
    height:45px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:var(--accent);
    color:var(--primary);
    border-radius:50%;
}

.social-links{
    display:flex;
    gap:18px;
    margin-top:25px;
}

.social-links a{
    width:50px;
    height:50px;
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    transition:.4s;
}

.social-links a:hover{
    background:var(--accent);
    color:var(--primary);
    transform:translateY(-8px);
}

.contact form{
    background:rgba(255,255,255,.05);
    padding:40px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.08);
}

.contact form input,
.contact form textarea{
    width:100%;
    padding:16px;
    margin-bottom:20px;
    border:none;
    outline:none;
    border-radius:12px;
    background:rgba(255,255,255,.08);
    color:var(--white);
    font-size:1rem;
}

.contact form textarea{
    resize:none;
}

.contact form input::placeholder,
.contact form textarea::placeholder{
    color:var(--gray);
}

.contact form button{
    width:100%;
}

/*==========================
FOOTER
===========================*/

footer{
    background:#020817;
    padding:80px 0 30px;
}

.footer-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:40px;
    margin-bottom:50px;
}

.footer-grid h2,
.footer-grid h3{
    margin-bottom:20px;
}

.footer-grid p,
.footer-grid li{
    color:var(--gray);
    margin-bottom:12px;
}

.footer-grid a{
    transition:.3s;
}

.footer-grid a:hover{
    color:var(--accent);
    padding-left:8px;
}

footer hr{
    border:none;
    height:1px;
    background:rgba(255,255,255,.08);
    margin:30px 0;
}

.copyright{
    text-align:center;
    color:var(--gray);
}

/*==========================
SCROLL TO TOP
===========================*/

#scroll-top{
    position:fixed;
    right:25px;
    bottom:25px;
    width:55px;
    height:55px;
    background:var(--accent);
    color:var(--primary);
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:50%;
    font-size:1.3rem;
    box-shadow:0 10px 30px rgba(0,0,0,.3);
    opacity:0;
    visibility:hidden;
    transition:.4s;
    z-index:999;
}

#scroll-top.active{
    opacity:1;
    visibility:visible;
}

#scroll-top:hover{
    background:var(--gold);
    transform:translateY(-6px);
}

/*==========================
COMMON ANIMATIONS
===========================*/

@keyframes fadeUp{

    from{
        opacity:0;
        transform:translateY(40px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

.fade-up{
    animation:fadeUp .8s ease forwards;
}

@keyframes pulse{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.05);
    }

    100%{
        transform:scale(1);
    }

}

.btn:hover{
    animation:pulse .5s ease;
}

/*==========================
GLASS EFFECT
===========================*/

.glass{
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(12px);
    border:1px solid rgba(255,255,255,.08);
}

/*==========================
TEXT SELECTION
===========================*/

::selection{
    background:var(--accent);
    color:var(--primary);
}

/*=====================================================
  STYLE.CSS - PART 5
  RESPONSIVE DESIGN
======================================================*/

/*==========================
LARGE LAPTOPS
===========================*/

@media (max-width:1200px){

.container{
    width:92%;
}

.hero-left h1{
    font-size:3.5rem;
}

.hero-left h3{
    font-size:1.8rem;
}

.image-box{
    width:380px;
    height:380px;
}

.project-grid{
    grid-template-columns:repeat(2,1fr);
}

.skills-grid,
.services-grid,
.certificate-grid{
    grid-template-columns:repeat(2,1fr);
}

}

/*==========================
TABLETS
===========================*/

@media (max-width:992px){

section{
    padding:90px 0;
}

.hero-container,
.about-content,
.github-box,
.contact-wrapper{

    grid-template-columns:1fr;

}

.hero{

    text-align:center;

}

.hero-left{

    order:2;

}

.hero-right{

    order:1;

    margin-bottom:50px;

}

.hero-buttons{

    justify-content:center;

}

.social-icons{

    justify-content:center;

}

.image-box{

    width:320px;

    height:320px;

}

.about-image{

    margin-bottom:30px;

}

.timeline{

    padding-left:10px;

}

.timeline::before{

    left:15px;

}

.timeline-item{

    padding-left:60px;

}

.project-grid{

    grid-template-columns:1fr;

}

.skills-grid{

    grid-template-columns:repeat(2,1fr);

}

.services-grid{

    grid-template-columns:repeat(2,1fr);

}

.certificate-grid{

    grid-template-columns:repeat(2,1fr);

}

.github-stats{

    grid-template-columns:repeat(2,1fr);

}

.footer-grid{

    grid-template-columns:repeat(2,1fr);

}

}

/*==========================
MOBILE MENU
===========================*/

@media(max-width:768px){

.menu-btn{

display:block;

}

nav{

position:fixed;

top:80px;

right:-100%;

width:280px;

height:100vh;

background:var(--secondary);

padding:40px 20px;

transition:.4s;

}

nav.active{

right:0;

}

nav ul{

flex-direction:column;

gap:25px;

}

nav ul li{

text-align:left;

}

.hero{

padding-top:120px;

}

.hero-left h1{

font-size:2.7rem;

}

.hero-left h3{

font-size:1.5rem;

}

.hero-left p{

font-size:1rem;

}

.hero-buttons{

flex-direction:column;

}

.btn{

width:100%;

text-align:center;

margin-right:0;

}

.section-title h2{

font-size:2.2rem;

}

.about-info{

grid-template-columns:1fr;

}

.skills-grid,

.services-grid,

.certificate-grid,

.testimonial-grid,

.footer-grid,

.stats .container{

grid-template-columns:1fr;

}

.github-stats{

grid-template-columns:1fr;

}

.project-filter{

gap:10px;

}

.project-filter button{

padding:10px 20px;

font-size:.9rem;

}

.image-box{

width:280px;

height:280px;

}

.contact form{

padding:30px;

}

}

/*==========================
SMALL PHONES
===========================*/

@media(max-width:576px){

.hero-left h1{

font-size:2.2rem;

}

.hero-left h3{

font-size:1.2rem;

}

.section-title h2{

font-size:2rem;

}

.hero-left p{

font-size:.95rem;

}

.image-box{

width:240px;

height:240px;

}

.stat-box h2{

font-size:2rem;

}

.project-content{

padding:20px;

}

.project-content h3{

font-size:1.2rem;

}

.buttons{

flex-direction:column;

}

.buttons a{

width:100%;

}

.hire-content h2{

font-size:2rem;

}

.github-box h3{

font-size:1.6rem;

}

.contact-info h3{

font-size:1.7rem;

}

.footer-grid{

text-align:center;

}

.social-icons{

flex-wrap:wrap;

}

.social-links{

justify-content:center;

}

}

/*==========================
EXTRA SMALL DEVICES
===========================*/

@media(max-width:400px){

.hero-left h1{

font-size:1.9rem;

}

.hero-left h3{

font-size:1rem;

}

.image-box{

width:200px;

height:200px;

}

.btn{

padding:14px 20px;

font-size:.9rem;

}

.logo h2{

font-size:1.5rem;

}

}

/*==========================
SMOOTH FADE-IN
===========================*/

.fade{

opacity:0;

transform:translateY(30px);

transition:all .8s ease;

}

.fade.show{

opacity:1;

transform:translateY(0);

}

/*==========================
END OF STYLE.CSS
===========================*/