/* BREACKPOINT 480PX */
@media screen and (min-width: 480px) {

    /* TOP-BAR */
    .top-bar {
        display: block;
    }

    /* FOOTER */
    .footer-top {
        display: flex;
    }
}

/* BREAKPOINT 800PX */
@media screen and (min-width: 800px) {

    /**** TOP-BAR ****/
    .top-bar__content {
        padding: 0 25px;
    }

    .top-bar__icon {
        font-size: 1rem;
    }

    .top-bar__text {
        font-size: 1rem;
        transition: all 0.6s;
    }

    .top-bar__link {
        font-size: 1rem;
        transition: all 0.6s;
    }

    /**** HEADER ****/
    .header {
        display: flex;
        align-items: center;
        justify-content: space-around;
        position: sticky;
        top: 0;
        left: 0;
        right: 0;
        z-index: 10;
    }

    .header__logo {
        padding: 0;
    }

    .header__title {
        display: none;
    }

    .header__img {
        display: block;
    }

    .hamburger {
        display: none;
    }

    .nav {
        display: flex;
        overflow: visible;
        background-color: white;
    }

    .nav__list {
        display: flex;
        align-items: center;
        gap: 40px;
        padding: 0;
    }

    .nav__item {
        padding: 0;
        border-bottom: none;
    }

    .nav__link i {
        border-bottom: none;
    }

    /*** CARDS ***/
    .best-place__content {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        transition: all 0.6s ease-in;
    }

    .best-place__card {
        width: 100%;
        max-width: 350px;
    }
}

/* BREACKPOINT 1024PX */
@media screen and (min-width:1024px) {

    /**** HEADER ****/
    .top-bar__icon {
        font-size: 1.2rem;
    }

    .top-bar__text {
        font-size: 1.2rem;
    }

    .header__img {
        width: 200px;
    }

    /**** MENÚ ****/
    .nav__link {
        font-size: 1.2rem;
    }

    /*** BEST-PLACE ***/
    .best-place__title {
        font-size: 2rem;
        transition: all 0.6s ease-in-out;
    }

    /** CARD **/
    .card__title {
        font-size: 1.2rem;
    }

    .card__subtitle {
        font-size: 1rem;
    }

    .card__texts {
        font-size: 1.1rem;
    }

    .card__btn {
        font-size: 0.95rem;
    }

    /**** FOOTER ****/
    .footer__title {
        font-size: 2rem;
    }

    .footer__link {
        font-size: 1.2rem;
    }

    .footer__icon {
        font-size: 1.2rem;
    }

    .footer-bottom {
        font-size: 1.2rem;
    }

}

/* BREACKPOINT 1200PX */
@media screen and (min-width: 1200px) {

    /**** HEADER ****/
    .header__img {
        animation: rotateImg 2.5s ease-out forwards;
    }

    @keyframes rotateImg {
        0% {
            transform: rotate(0deg) scale(0);
            opacity: 0;
        }

        50% {
            opacity: 0.5;
        }

        100% {
            transform: rotate(360deg) scale(1);
            opacity: 1;
        }
    }

    /*** CARDS ***/
    .best-place__content {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
        transition: all 0.8s ease-out;
    }

    .best-place__card {
        width: 100%;
        max-width: 450px;
    }

    /** CAPA IMG **/
    .card__wrapper{
        position: relative;
        display: inline-block;
        width: 100%;
    }

    .card__wrapper::before{
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(199, 199, 199, 0.5);
        opacity: 0;
        transition: opacity 0.3s ease;
        border-radius: 5px;
        z-index: 1;
    }

    .best-place__card:hover .card__wrapper::before{
        opacity: 1;
    }

    .icon__cont{
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) scale(0);
        opacity: 0;
        transition: transform 0.3s ease, opacity 0.3s ease;
        z-index: 1;
        background-color: #7cb342;
        padding: 8px;
        border-radius: 5%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .card__icon-img{
        font-size: 3rem;
        color: #fff;
        font-family: "Inter";
    }

    .best-place__card:hover .icon__cont{
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
        animation: vibrate 0.6s ease-in-out 0.3s;
    }

    @keyframes vibrate {
        0%, 100% {
            transform: translate(-50%, -50%) scale(1) rotate(0deg);
        }
        10%, 30%, 50%, 70%, 90% {
            transform: translate(-50%, -50%) scale(1) rotate(-3deg);
        }
        20%, 40%, 60%, 80% {
            transform: translate(-50%, -50%) scale(1) rotate(3deg);
        }
    }
}