/* ===========================
   TABLETS
=========================== */

@media (max-width:992px){

.hero{
    grid-template-columns:1fr;
    text-align:center;
    gap:60px;
    padding:40px 0;
}

.hero-content{
    order:2;
}

.hero-image{
    order:1;
}

.hero-content p{
    margin:auto;
}

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

.socials{
    justify-content:center;
}

.circle{
    width:170px;
    height:170px;
    left:20px;
    bottom:-30px;
}

.hero-content h1{
    font-size:70px;
}

.hero-content h2{
    font-size:40px;
}

}

/* ===========================
   PHONES
=========================== */

@media (max-width:768px){

.container{
    width:92%;
}

.stats-grid{

    grid-template-columns:1fr 1fr;

}

.navbar{
    justify-content:space-between;
}

.nav-links{

    display:none;

}

.join-btn{

    display:none;

}

.menu-btn{

    display:block;

    font-size:30px;

    color:white;

    cursor:pointer;

}

.hero{
    display:flex;
    flex-direction:column;
    text-align:center;
    padding-top:30px;
}

.hero-content{
    order:2;
}

.hero-image{
    order:1;
    margin-bottom:40px;
}

.hero-image > img{
    width:90%;
    max-width:320px;
}

.circle{
    width:120px;
    height:120px;
    left:50%;
    transform:translateX(-50%);
    bottom:-40px;
}

.hero-content h1{
    font-size:56px;
    line-height:1;
}

.hero-content h2{
    font-size:32px;
}

.hero-content p{
    font-size:18px;
    margin:20px auto;
}

.hero-buttons{
    flex-direction:column;
    align-items:center;
}

.primary-btn,
.secondary-btn{
    width:220px;
}

.socials{
    justify-content:center;
}

.footer-top{

    grid-template-columns:1fr;

    text-align:center;

}

.about-grid{

    grid-template-columns:1fr;

    text-align:center;

}

.about-content h1{

    font-size:2.2rem;

}

.about-hero{

    padding:80px 0;

}

}

/* ===========================
   SMALL PHONES
=========================== */

@media (max-width:480px){

.container{
    width:92%;
}

.hero-content h1{
    font-size:42px;
}

.hero-content h2{
    font-size:28px;
}

.hero-content p{
    font-size:16px;
}

.hero-image > img{
    max-width:260px;
}

.circle{
    width:110px;
    height:110px;
}

.socials{
    gap:10px;
}

.socials a{
    width:42px;
    height:42px;
}

}

/* ==========================
   FOOTER RESPONSIVE
========================== */

@media (max-width:992px){

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

}

@media (max-width:768px){

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

.footer-logo{
    margin:0 auto 20px;
}

.footer-bottom{
    flex-direction:column;
}

.footer-bottom .socials{
    justify-content:center;
}

}

@media(max-width:991px){

.testimonial-grid{

    grid-template-columns:1fr;

}

.testimonial-card{

    padding:25px;

}

}

@media(max-width:991px){

.trainer-grid{

    grid-template-columns:1fr;

}

.trainer-card img{

    height:320px;

}

}

/* CONTACT CTA */

@media (max-width:991px){

.contact-grid{

    grid-template-columns:repeat(2,1fr);

}

}

@media (max-width:768px){

.contact-grid{

    grid-template-columns:1fr;

}

.cta-content h2{

    font-size:2.2rem;

}

.cta-buttons{

    flex-direction:column;

    align-items:center;

}

.cta-buttons a{

    width:100%;

    max-width:300px;

    text-align:center;

}

}

@media(max-width:992px){

.plans-grid{

    grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.plans-grid{

    grid-template-columns:1fr;

}

.membership-hero h1{

    font-size:2.5rem;

}

}

@media(max-width:768px){

.form-grid{

    grid-template-columns:1fr;

}

.membership-form{

    padding:30px 20px;

}

.hero-bottom{
    text-align:center;
}

.nav-links{

    position:fixed;
    top:0;
    right:-100%;
    width:280px;
    height:100vh;

    background:#22002d;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    gap:30px;

    transition:.4s;
    z-index:999;

}

.nav-links.active{

    right:0;

}

}

@media(max-width:768px){

.form-grid{

grid-template-columns:1fr;

}

.registration-form{

padding:25px;

}

}