/* CUSTOM FONTS */

@font-face {
        font-family: englebert;
        src: url(../assets/fonts/Englebert-Regular.ttf);
}

/* END OF CUSTOM FONTS */

/* MAIN STRUCTURE */

* {
    box-sizing: border-box;
    color: #FFFFFF99;
    font-family: englebert;
}

html {background-size: fill;
}

body {
    height: fit-content;
    min-height: 100vh;
    padding: 2%;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: max-content max-content max-content max-content max-content max-content max-content;
    grid-template-areas: "header"
                         "nav"
                         "pripol"
                         "portada"
                         "lSide"
                         "rSide"
                         "merch"
                         "footerObject"
}
    
.homePage {
    background: linear-gradient(90deg, #33333344, transparent, #33333344) fixed no-repeat, url(../assets/images/bg.jpg);
}

hr {
    background: url(../assets/images/hr.png) center no-repeat;
    background-size: 100%;
    width: 100%;
    height: 10px;
    border: 0 !important;
    z-index: 0;
}

h1, h2, h3 {
    font-family: englebert;
    text-align: center;
    
}

h1 {
    font-size: calc(140% + 2vw);
    margin-bottom: 2%;
}

h2 {
    font-size: calc(100% + 2vw);
    text-align: center;
}

h3 {
    font-size: calc(70% + 1vw);
}

/* END OF MAIN STRUCTURE */

/* HEADER */

header {
    grid-area: header;
}

.logo {
    display: block;
    width: 35vw;
    min-width: 300px;
    height: unset;
    margin-left: auto;
    margin-right: auto;
    transition: all .25s ease-in-out;
}

.logo:hover {
    width: 36vw;
    height: unset;
}

.logo:hover ~ nav {
    margin-top: .9vw;
}

/* END OF HEADER */

/* NAV */

nav {
    grid-area: nav;
    display: flex;
    width: fit-content;
    max-width: 100%;
    margin: 2%;
    margin-left: auto;
    margin-right: auto;
    padding: 15px;
    justify-content: center;
    align-content: center;
    gap: calc(5px + 0.8vw);
    background: #9992;
    border-radius: 30px;
    box-shadow: 0 0 20px 2px #3335;
    transition: all 0.25s;
}

.navLink span {
    cursor: pointer;
}

.navLink a, .navLink span{
    text-decoration: none;
    text-wrap: nowrap;
    font-size: calc(90% + 0.1vw);
    color: #FFF;
    text-shadow: 0 0 8px #000;
    font-weight: 100;
    transition: all 0.25s;
}

.navLink a:hover,  .navLink span:hover{
    font-size: 1.2rem;
    color: #ff6a00;
    text-shadow:-1px -1px #0007, +1px +1px #0007, +1px -1px #0007, -1px +1px 5px #0007;
    font-weight: 900;
    align-items: end;
}

.navLink {
    padding: 0.2rem;
    transition: all 0.25s;
}

.navLink:has(a:hover), .navLink:has(span:hover){
    padding: 0;
}

.current a, .current span {
    opacity: 0.6;
    color: #ff6a00;
    pointer-events: none;
    cursor: default;
}

/* END OF NAV */

/* LSIDE */

.lSide {
    grid-area: lSide;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: max-content max-content max-content max-content;
    grid-template-areas: "socialTitle"
                         "tiktok"
                         "instagram"
                         "twitter"
}

.lSide h2 {
    grid-area: socialTitle;
    height: fit-content;
}

.lSide h3 {
    grid-area: socialSub;
}

.x {
    grid-area: twitter;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: max-content;
    grid-template-areas: "socialSub"
                         "tweet"
}

.instagram {
    grid-area: instagram;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: max-content;
    grid-template-areas: "socialSub"
                         "reel"
}

.reel {
    grid-area: reel;
}

iframe.instagram-media, .tiktok-embed {
    max-width: 100% !important;
    width: 100% !important;
    min-width: auto !important;
    border-radius: 20px !important;
    filter: drop-shadow(0 0 10px #333333);
}
    

.tiktok {
    grid-area: tiktok;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: max-content;
    grid-template-areas: "socialSub"
                         "tik"
}

.tik {
    grid-area: tik;
    display: flex;
    justify-items: center;
    filter: drop-shadow(0 0 10px #333333);
}

.tik iframe {
    border-radius: 20px;
}

/* END OF LSIDE */

/* RSIDE */

.rSide {
    grid-area: rSide;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: max-content max-content max-content max-content max-content;
    grid-template-areas: "pTitle"
                         "comentarios"
}

.comentarios {
    grid-area: comentarios;
    display: flex;
    justify-content: center;
    gap: 1%;
}

/* END OF RSIDE */

/* MERCH */

/*
.merch {
    grid-area: merch;
    padding: 0;
    padding-bottom: 2%;
    justify-self: center;
    justify-content: center;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
}
    
.merch h3 {
    width: 100%;
}

.merch img {
    width: 100%;
    filter: drop-shadow(0 0 5px #33333355);
}
    
.merchFooter {
    width: 100%;
    font-size: calc(100% - 0.5vh);
}
    
.merch img {
    max-height: 20vw;
}

*/

/* END OF MERCH */

/* GALLERY */

.login, .posting {
    position: absolute;
    width: 96%;
    justify-items: center;
    align-self: center;
}

.login .form-control, .login .btn {
    margin: 1rem;
    justify-self: center;
}

.save {
    margin: 1rem;
}

.controls {
    justify-self: center;
}

.controls .btn {
    margin-inline: 1rem;
}

.gallery img:not(.center) {
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

.pic:not(.center) {
    animation-name: galleryPicsAppear;
    animation-duration: 1s;
    opacity: 0.6;
    width: 100%;
    height: 100%;
    margin: 0;
    transition: opacity 0.25s, width 0.25s, height 0.25s, margin 0.25s;
}

.pic:not(.center):hover {
    opacity: 1;
    width: 110%;
    height: 110%;
    margin: -5%;
}

.v1 {
    grid-row: 1 / 3;
    grid-column: 1 / 2;
}

.v2 {
    grid-row: 2 / 4;
    grid-column: 3 / 4;
}

/* END OF GALLERY */

/* CONTACT */

.map {
    width: 100%;
}

.map iframe {
    border-radius: 20px;
    box-shadow: 0 0 10px 2px #33333355;
}

.companyInfo {
    display: flex;
    justify-content: center;
    width: 100%;
}

/* END OF CONTACT */

/* FOOTER */

.footerObject {
    grid-area: footerObject;
    width: 100%;
    height: fit-content;
    overflow: hidden;
}

.mainContainer{
    display:block;
    overflow: hidden;
}

.mainObject {
    grid-area: portada;
    width: 100%;
    height: fit-content;
    overflow: hidden;
}

/* END OF FOOTER */

/* RESPONSIVE */

@media (min-width: 640px) and (max-width: 999px) {
    body {
        grid-template-columns: 100%;
        grid-template-rows: max-content max-content max-content max-content max-content max-content;
        grid-template-areas: "header"
                             "nav"
                             "portada"
                             "rSide"
                             /*"merch"*/
                             "pripol"
                             "footerObject";
    }
    
    .homePage {
        background: linear-gradient(90deg, #33333344, transparent, #33333344) fixed no-repeat, url(../assets/images/bg.jpg);
        grid-template-columns: 30% 70%;
        grid-template-rows: max-content max-content max-content max-content max-content max-content;
        grid-template-areas: "header header"
                             "nav nav"
                             "lSide portada"
                             "rSide rSide"
                             /*"merch merch"*/
                             "pripol pripol"
                             "footerObject footerObject";
    }

    h1 {
        font-size: calc(150% + 1vw);
        margin-bottom: 2%;;
    }

    h2 {
        font-size: calc(40% + 1vw);
    }

    h3 {
        font-size: calc(30% + 2vw);
    }
    
    section {
        padding: 5%;
    }
    
    section h1 {
        margin-top: 1%;
    }
    
    .lSide {
        margin-right: 5%;
        margin-top: 12%;
    }
    
    .rSide {
        margin-left: 5%;
        margin-right: 5%;
    }
    
    .comentarios div {
        height: fit-content;
        align-self: center;
    }
}

@media (min-width: 1000px) {
    body {
        grid-template-columns: 18% 64% 18%;
        grid-template-rows: max-content max-content max-content max-content max-content /*max-content*/;
        grid-template-areas: "lSide header rSide"
                             "lSide nav rSide"
                             "lSide portada rSide"
                             "pripol pripol pripol"
                             /*"merch merch merch"*/
                             "footerObject footerObject footerObject"    
    }
    
    nav {
        margin-bottom: 0;
    }
    
    section {
        align-items: start;
        padding: 0;
    }
    
    .contact h1 {
        margin-bottom: 2%;
    }

    h1 {
        font-size: calc(150% + 1vw);
    }

    h2 {
        font-size: calc(40% + 1vw);
    }

    h3 {
        font-size: calc(30% + 1vw);
    }
    
    .lSide, .rSide {
        margin-top: 30%;
    }

    /* RSIDE */

    .comentarios {
        flex-wrap: wrap;
        gap: 10%;
    }

    /* END OF RSIDE */
}

/* END OF RESPONSIVE*/

