@import url('https://fonts.googleapis.com/css2?family=Merriweather+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400..700&display=swap');

.merriweather-sans {
  font-family: "Merriweather Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 450;
  font-style: normal;
}

.dancing-script {
  font-family: "Dancing Script", cursive;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

:root {
    --naranja1: #d89e51;
    --verde1: #618b50;
}

html {
    overflow-x: hidden;
}

body {
    background-color: var(--verde1);
}

.card {
    border: none;
}

/*CABECERA  -------------------------------------------------------------------*/

.navbar {
    background: transparent;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(2px);
}

nav {
    background: var(--verde1);
    min-height: fit-content;
    z-index: 5;
}

.navbar-toggler {
    outline: none;
    border: none;
    background-color: #7feb557a;
    padding: 15px;
    margin-inline-end: 30px;
    border-radius: 50%;
}

.navbar-toggler:focus {
    outline: none;
    box-shadow: none;
}

#navi img {
    width: 80px;
    margin-inline-start: 30px;
}


#links li {
    padding-inline: 30px;
    color: white;
}

#links li a {
    color:white !important;
    text-shadow: 5px 5px 7px #666666;
}

#links a:hover {
    color: black !important;
    transition: 0.3s;
}

#portada {
    height: 80vh;
    background-color: black;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

#portada video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#portada h1 {
    position: absolute;
    transform: translateY(-100px);
    color: white;
    font-size: 4rem;
    animation: glitch 2s infinite;
}

#portada img {
    width: 100px;
}


@keyframes glitch {
    0%, 100% { text-shadow: 3px 0 #00ff88, -3px 0 #ff0055; }
    25% { text-shadow: -3px 0 #00ff88, 3px 0 #ff0055; }
    50% { text-shadow: 3px 3px #00ff88, -3px -3px #ff0055; }
    75% { text-shadow: 0 -3px #00ff88, 0 3px #ff0055; }
}

@media (min-width: 992px) {
    #navbarNav {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }
}

@media (max-width: 991px) {
    .navbar {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .navbar-nav {
        padding-inline-end: 0;
        margin-inline-start: auto !important;
        margin-inline-end: 0 !important;
    }

    #navbarNav {
        position: absolute;
        top: 10vh;
        right: 0;
        left: auto;
        transform: none;
        width: 50%;
        transition: 0.5s;
        padding-inline: 30px;
    }

    #links li {
        width: 100%;
        font-size: 1.5rem;
        backdrop-filter: blur(20px);
        background-color: #618b506c;
        padding: 10px;
        margin-block-start: 10px;
        border-radius: 50px;
        text-align: center;
    }

    #links {
        position: relative;
        left: auto;
        transform: none;
        margin-block-start: 10px;
    }
}

@media (max-width:576px) {
    #portada h1 {
        font-size: 2rem;
        transform: translateY(-100px);
    }
}

/*SERVICIOS Y ONDAS     -------------------------------------------------------*/

#servicios {
    background-color: var(--verde1);
    display: flex;
    flex-direction: row;
    text-align: center;
    gap: 24px;
    height: 70vh;
    padding: 40px 60px;
    position: relative;
}

#servicios .card {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 0;
    overflow: hidden;
    border: 3px solid rgb(255, 255, 255);
    box-shadow: 0px 0px 10px white;
    border-radius: 30px;
}

#servicios .card .card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#servicios .card .card-img-overlay {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

#servicios h5 {
    background-color: rgba(72, 116, 53, 0.842);
    text-shadow: 2px 2px 5px black;
    font-size: 1.8rem;
    width: 60%;
    text-align: center;
    border-radius: 10px;
    padding: 4px 10px;
    backdrop-filter: blur(15px);
}

#servicios p {
    text-shadow: 2px 2px 5px black;
    font-size: 1.3rem;
    padding: 5px;
    background-color: rgba(255, 255, 255, 0.425);
    border-radius: 10px;
    backdrop-filter: blur(15px);
}

@media (max-width: 1200px) {
    #servicios {
        flex-direction: column;
        height: auto;
        padding: 20px;
    }

    #servicios .card {
        width: 100%;
        height: 25vh;
    }

    #servicios .card h5 {
        font-size: 1.1rem;
    }

    #servicios .card p {
        font-size: 0.9rem;
    }
}

.wave-wrapper {
    position: relative;
    line-height: 0;
    overflow: hidden;
    height: 90px;
}

.wave-wrapper svg {
    display: block;
    width: 100%;
    height: 100%;
}

.wave-top {
    background: transparent;
    position: relative;
    width: 100%;
    margin-block-start: -90px;
    z-index: 10;
}

.wave-top .wave-path-1 {
    fill: var(--verde1);
    opacity: 1;
}

.wave-top .wave-path-2 {
    fill: var(--verde1);
    opacity: 0.4;
}

.wave-bottom {
    background: transparent;
    position: absolute;
}

.wave-bottom .wave-path-1 {
    fill: var(--verde1);
    opacity: 1;
}

.wave-bottom .wave-path-2 {
    fill: var(--verde1);
    opacity: 0.4;
}

/*DESTACADO      ---------------------------------------------------------------*/

#destacado {
    min-height: 45vh;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: url(../img/seccion3.jpg);
}

#destacado h1 {
    color: white;
    font-size: 3rem;
    text-shadow: 0px 0px 15px black;
    align-self: center;
    width: 60%;
    margin-inline-start: 10%;
    z-index: 1;
}

/*PERSONAL      ----------------------------------------------------------------*/

#personal {
    background: linear-gradient(transparent, white);
    padding-block-end: 10vh;
}

#equipo {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#matcha {
    position: absolute;
    right: 0;
    z-index: 0;
    width: 25%;
    transform: translateY(-220px);
    margin-inline-end: 10%;
}

#personal h2 {
    color: white;
    justify-self: center;
    margin-block: 30px;
    padding: 20px;
    border-radius: 50px;
    text-shadow: 2px 2px 10px black;
    background-color: rgba(62, 82, 62, 0.432);
}

#equipo {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;
    justify-content: center;
}

#equipo .card-img-overlay {
    display: flex;
    flex-direction: column;
    justify-content: end;
}

#equipo h5, #equipo p {
    background-color: rgba(0, 0, 0, 0.596);
    color: white;
    width: fit-content;
    padding: 2%;
    border-radius: 50px;
}

.unidad {
    min-width: 80%;
    margin-inline: auto;
}

#equipo .card {
    border-radius: 20px;
    box-shadow: 0px 0px 15px rgb(82, 82, 82);
    border: 0;
}

#equipo .card img {
    border-radius: 20px;
}

@media (max-width:1200px) {
    #equipo {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width:992px) {
    #destacado h1 {
        font-size: 2rem;
        margin-block-start: 10%;
    }

    #matcha {
        width: 35%;
        transform: translateY(-220px) translateX(30px);
    }

    #equipo {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    #destacado h1 {
        font-size: 1.5rem;
        margin-block-start: 10%;
    }

    #matcha {
        transform: translateY(-180px) translateX(35px);
    }

}

@media (max-width: 576px) {
    #equipo {
        grid-template-columns: repeat(1, 1fr);
    }

}

/*MENÚ DEL DIA Y FILTROS A PÁGINAS      ----------------------------------------*/

.card {
    color: white;
}

#menus {
    background: linear-gradient(white,var(--verde1));
}

#botones button {
    border-radius: 100px !important;
    background-color: #d6ffec;
    transition: 0.5s;
    box-shadow: 0px 0px 5px black;
    font-weight: 650 !important;
    border: none !important;
}

#botones button:hover {
    background-color: var(--verde1);
    color: white;
}

.etiqueta {
    text-align: center;
    font-size: 1.5rem;
    color: blue;
    margin-block: auto;
}

#menudeldia {
    display: flex;
    justify-content: center;
    padding-inline: 10%;
    margin-block: 50px;
    text-shadow: 0px 0px 15px black;
}

#menudeldia .card {
    max-width: 900px;
    width: 100%;
    min-height: 450px;
    border-radius: 20px;
    box-shadow: 0px 0px 15px white;
}

#menudeldia .card-img-overlay {
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
}

#menudeldia img, #menu img {
    object-fit: cover;
    border-radius: 20px;
    height: 100%;
    width: 100%;
}

/*INFO                   --------------------------------------------------*/

#info {
    padding: 30px;
    background: linear-gradient(var(--verde1), black);
    margin-block-start: 30px;
}

#info i {
    margin-inline-end: 20px;
    font-size: 2rem;
}

#datos p {
    padding: 10px 20px;
    color: white;
    font-weight: 350;
    background: rgba(116, 143, 116, 0.096);
    backdrop-filter: blur(15px);
    border-radius: 50px;
    display: flex;
    align-items: center;
}

#info a {
    text-decoration: none;
    color: white;
}

iframe {
    width: 100%;
    min-width: 300px;
    height: 40vh;
    border-radius: 25px;
    box-shadow: 0px 0px 10px black;
}

#derechos {
    background: transparent !important;
    color: rgb(196, 196, 196) !important;
    font-size: 0.9rem;
    margin-block-start: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#derechos i {
    font-size: 1rem;
    margin-inline-end: 5px;
}
