* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    height: 100%;
    min-height: 100vh;
}

body {
    position: relative;
    overflow-x: hidden;
}

/* Contenedor principal con fondo */
.main-container {
    min-height: 100vh;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 2rem 1rem;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.main-container .container-fluid {
    min-height: calc(100vh - 4rem);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Fondos según dispositivo - Mobile First */
.main-container {
    background-image: url('img/fondo-mobile.png');
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1023px) {
    .main-container {
        background-image: url('img/fondo-tablet.png');
    }
}

/* Desktop */
@media (min-width: 1024px) {
    .main-container {
        background-image: url('img/fondo-desk.png');
    }
}

/* Wrapper para logo y proximamente juntos */
.logo-proximamente-wrapper {
    text-align: center;
}

/* Contenedor del logo */
.logo-container {
    text-align: center;
    margin-top: 10rem;
    margin-bottom: 0.2rem;
}

.logo {
    max-width: 100%;
    height: auto;
}

/* Contenedor de "próximamente" */
.proximamente-container {
    text-align: center;
    margin-top: 0;
}

.proximamente-img {
    max-width: 100%;
    height: auto;
}

/* Contenedor del botón */
.boton-container {
    text-align: center;
    margin-bottom: 2rem;
}

.boton-container a {
    display: inline-block;
    text-decoration: none;
    border: none;
}

.boton-contacta {
    max-width: 100%;
    height: auto;
    cursor: pointer;
    transition: all 0.3s ease;
    display: block;
    transform: scale(1);
}

.boton-contacta:hover {
    opacity: 0.9;
    transform: scale(1.05);
    filter: brightness(1.1);
}

.boton-contacta:active {
    transform: scale(0.95);
    transition: transform 0.1s ease;
}

.boton-contacta img {
    max-width: 100%;
    height: auto;
}

/* Botones según dispositivo - Mobile First */
.boton-desktop {
    display: none;
}

.boton-tablet {
    display: none;
}

.boton-mobile {
    display: block;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1023px) {
    .boton-mobile {
        display: none;
    }

    .boton-tablet {
        display: block;
    }
}

/* Desktop */
@media (min-width: 1024px) {
    .boton-mobile {
        display: none;
    }

    .boton-tablet {
        display: none;
    }

    .boton-desktop {
        display: block;
    }
}