    @import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;500;700&display=swap');
     :root {
        --base-color: #e74241;
        --sec-color: #b01c31;
        --dark-color: #08060d;
        --accent-color: #510d32;
        --bg-gradient: radial-gradient(#f39d7d 0%, #ea5a54 100%);
    }
    
    * {
        padding: 0;
        margin: 0;
        box-sizing: border-box;
    }
    
    html,
    body {
        width: 100%;
        color: white;
        font-family: 'M PLUS Rounded 1c', Arial, Helvetica, sans-serif;
        font-weight: 400;
    }
    

    
    .wrapper {
        background: var(--bg-gradient);
        height: 100vh;
        overflow-x: hidden;
        overflow-y: auto;
        perspective: 300px;
    }
    
    .parallax_group {
        position: relative;
        height: 100vh;
        width: 100vw;
        transform-style: preserve-3d;
    }
    
    .parallax-layer {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        overflow: hidden;
    }
    
    .sun {
        background: url('../src/bg/sun.png') no-repeat center;
        background-size: cover;
        transform: translateZ(-600px) scale(3);
        z-index: 1;
    }
    
    .big-mountain {
        background: url('../src/bg/big-mountain.png') no-repeat center;
        background-size: cover;
        transform: translateZ(-580px) scale(2.9);
        z-index: 2;
    }
    
    .small-mountain {
        background: url('../src/bg/small-mountain.png') no-repeat center;
        background-size: cover;
        transform: translateZ(-550px) scale(2.8);
        z-index: 3;
    }
    
    .treeline1 {
        background: url('../src/bg/treeline-1.png') no-repeat center;
        background-size: cover;
        transform: translateZ(-400px) scale(2.3);
        z-index: 4;
    }
    
    .treeline2 {
        background: url('../src/bg/treeline-2.png') no-repeat center;
        background-size: cover;
        transform: translateZ(-300px) scale(2);
        z-index: 5;
    }
    
    .treeline3 {
        background: url('../src/bg/treeline-3.png') no-repeat center;
        background-size: cover;
        transform: translateZ(-200px) scale(1.7);
        z-index: 6;
    }
    
    .frontline {
        background: url('../src/bg/frontline.png') no-repeat center;
        background-size: cover;
        transform: translateZ(0px) scale(1);
        z-index: 6;
    }
    
    .hero-text {
        transform: translateZ(-200px) scale(2);
        z-index: 7;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }
    
    .down {
        position: absolute;
        bottom: 60px;
        width: 100%;
        height: 40px;
        z-index: 200;
        display: flex;
        justify-content: center;
        color: white;
        transform: translateZ(10px) scale(1);
    }
    
    .down a {
        cursor: pointer;
        background: none;
        border: none;
        width: 50px;
        scroll-behavior: smooth;
    }
    
    a {
        transform: scale(1);
        transition: transform linear 0.15s;
    }
    
    
    h1 {
        font-size: 3rem;
        font-weight: 700;
    }
    
    h5 {
        font-size: 1.2em;
    }
    
    .accent {
        background-color: var(--accent-color);
    }
    
    .fest-date {
        font-size: 2em;
        text-align: center;
    }
    
    .tickets-container {
        color: white;
        text-align: center;
    }
    
    .tickets-container a:hover {
        color: #f39d7d;
    }
    
    .small-container {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        transform: translateZ(0) scale(1.01);
        z-index: 9;
        min-height: 50%;
        top: -10px;
        width: 100%;
        padding: 2em 0;
    }
    
    .x-small-container {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        transform: translateZ(0) scale(1.01);
        z-index: 9;
        min-height: 30%;
        top: -10px;
    }
    
    .dark {
        background-color: var(--dark-color);
    }
    
    .light {
        background-color: var(--base-color);
    }
    
    .white {
        background: white;
    }
    
    .matte {
        background: #1d1d1d;
    }
    
    @media (min-width: 1024px) {
        .cta {
            padding: 2rem 0;
        }
        .info-container {
            text-align: justify;
            margin: 2rem 0;
            max-width: 50%;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-wrap: wrap;
        }
        h3 {
            font-weight: 700;
            font-size: 2em;
            margin-top: 1em;
        }
        h4 {
            font-size: 1.8em;
            font-weight: 700;
        }
    }
    
    .social-container {
        margin: 2em 0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }
    
    .social-links {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    .card-container {
        margin: 2em 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        max-width: 92%;
    }
    
    .card {
        margin: 10px;
        border-radius: 1em;
        width: 400px;
        min-height: 400px;
        display: flex;
        align-items: flex-end;
        overflow: hidden;
        color: white;
        transform: scale(1);
        transition: ALL ease-out 0.3s;
    }
    
    .one {
        background: url('../src/artists/galandum.jpg') no-repeat center;
        background-size: cover;
        color: var(--dark-color);
    }
    
    .two {
        background: url('../src/artists/ibanez.jpg') no-repeat center;
        background-size: cover;
    }
    
    .three {
        background: url('../src/artists/chega.jpg') no-repeat center;
        background-size: cover;
    }
    
    .info {
        width: 100%;
        padding: 15px;
        font-weight: 500;
        font-size: 1.5rem;
        /* background-image: linear-gradient(to top, var(--dark-color) 20%, transparent); */
    }
    
    .load-container {
        z-index: 15;
        height: 100vh;
        width: 100vw;
        position: absolute;
        background-color: var(--dark-color);
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    .loader {
        border: 4px solid var(--accent-color);
        border-top: 4px solid var(--base-color);
        border-radius: 100%;
        width: 120px;
        height: 120px;
        animation: spin 2s ease infinite;
    }
    
    @keyframes spin {
        0% {
            transform: rotate(0deg);
        }
        100% {
            transform: rotate(360deg);
        }
    }
    
    .hide-loader {
        visibility: hidden;
        transition: visibility 400ms ease 0ms;
    }
    
    .mapa {
        width: 100%;
        border: 0px;
        border-color: #b01c31;
    }
    
    .overlay:hover {
        background-color: #1d1d1d48;
        transition: transform ease-in-out 0.1s;
    }
    
    .overlay {
        display: flex;
        justify-content: center;
        align-items: center;
        cursor: pointer;
        position: absolute;
        z-index: 12;
        width: 100%;
        height: 100%;
        background-color: transparent;
    }
    
    .overlay h4 {
        color: #08060d00;
        transition: all ease-in-out 0.2s;
    }
    
    .overlay:hover h4 {
        transform: translateY(-10px);
        color: #08060d;
    }
    
     ::selection {
        background-color: #1d1d1d;
    }
    

    
    .prod-logo-container a {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    @media (max-width: 1024px) {
        .info-container {
            text-align: justify;
            width: 90%;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-wrap: wrap;
        }
        h3 {
            font-weight: 700;
            font-size: 1.5em;
            margin-bottom: 1em;
        }
        h4 {
            font-size: 1.3em;
            font-weight: 700;
        }
        .hero-text h1 {
            font-size: 2rem;
        }
        .cta {
            padding: 4rem 0;
        }
    }
    
    .last {
        text-transform: uppercase;
        margin-top: 2rem;
        padding: .5rem 0;
        font-weight: bold;
        color: #f39d7d;
        border-top: #f39d7d 2px solid;
        border-bottom: #f39d7d 2px solid;
    }