.breadcrumb {
    font-size: 16px;
    margin-bottom: 10px;
    color: #666;
}

.breadcrumb a {
    text-decoration: none;
    color: #45b8b1;
}

.breadcrumb span {
    color: #666;
}

#encabezadoServicios {
    position: relative;
    width: 100%;
    overflow: hidden;
}


#contenedorTextoDescripcion {
    width: 100%;
    height: 44px;
    font-size: 16px;
    display: flex;
    align-items: center;  /* Centra verticalmente */
    justify-content: center; /* Centra horizontalmente */
    text-align: center; /* Asegura que el texto esté centrado */
    line-height: 140%;
}

#presupuesto {
    max-width: 1296px;
    /* margin: 50px auto 0 auto; */
    padding: 20px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}



#contenedorPresupuesto {
    width: 100%;
    height: 788px;
    background: #1c1c1c;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.contenedorFormulario {
    width: 943px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 40px;
}

/* Columnas ajustadas */
.columnaIzquierda, .columnaDerecha {
    width: 35%; /* Ajustamos para que estén lado a lado */
    display: flex;
    flex-direction: column;
}

input, select, button {
    margin-bottom: 15px;
    padding: 10px 16px;
    border-radius: 8px;
    width: 352px;
    background-color: #E2E2E2;
    font-size: 16px;
    border: 2px solid transparent; /* Borde transparente por defecto */
    outline: none; /* Elimina el borde negro al hacer clic */
    box-sizing: border-box; /* Incluye el borde dentro del tamaño total */
}

input:focus, select:focus, textarea:focus {
    border: 2px solid #20928a; /* Color suave para el borde al enfocar */
    outline: none;
}

select {
    cursor: pointer;
}
textarea {
    margin-bottom: 10px;
    padding: 10px;
    border-radius: 8px;
    width: 352px; /* Mantiene el ancho definido */
    height: 307px; /* Mantiene la altura definida */
    background-color: #E2E2E2;
    font-size: 16px;
    box-sizing: border-box; /* Evita que el padding haga que sobresalga */
    resize: none; /* Evita que el usuario lo haga más grande manualmente */
    overflow: hidden; /* Evita que el contenido sobresalga */
}


.infoFormulario {
    color: white;
    font-size: 13px;
    line-height: 140%;
    margin-bottom: 10px;
    width: 352px;
}

h3 {
    color: white;
    font-size: 14px;
    font-family: 'KGHAPPYSolid';
    margin-bottom: 20px;
    line-height: 140%;
}


.tituloPresupuesto .o {
    display: inline-block;
    width: 50px;  /* Ajusta según la imagen */
    height: 60px; /* Ajusta según la imagen */
    background-image: url('../img/Otexto.webp'); /* Imagen de la "O" */
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    text-indent: -9999px; /* Oculta la "O" textual pero mantiene el SEO */
    margin: 0 5px; /* Agrega espacio a los lados */
}

.contenedorFormulario h3 {
    margin-bottom: 20px; /* Espacio debajo de los títulos */
}

.contenedorFormulario input, .contenedorFormulario select, .contenedorFormulario textarea, .contenedorFormulario button, .contenedorFormulario label {
    margin-bottom: 15px; /* Espacio entre los elementos del formulario */
}

.contenedorFormulario p {
    margin-bottom: 20px; /* Espacio debajo de los párrafos */
}


/* Estilizando el checkbox */
.checkboxContainer {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: white;
    margin-bottom: 10px;
    cursor: pointer;
}

.checkboxContainer input {
    display: none; /* Ocultamos el checkbox real */
}

/* Checkbox personalizado */
.customCheckbox {
    width: 18px;
    height: 18px;
    border-radius: 4px;
    border: 2px solid white;
    display: inline-block;
    margin-right: 10px;
    position: relative;
}

/* Marca de verificación cuando está seleccionado */
.checkboxContainer input:checked + .customCheckbox::after {
    content: '✔';
    font-size: 14px;
    color: white;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


.btnEnviar {
    background-color: #45b8b1;
    border: none;
    outline: none;
    cursor: pointer;
    color: white;
    transition: background-color 0.4s ease-in-out, color 0.4s ease-in-out, opacity 0.4s ease-in-out;
}

.btnEnviar:hover {
    background-color: #8dc8c4;
    color: black;
}




.tituloPresupuesto {
    font-size: 55px;
    text-align: center; /* Asegura que el texto esté centrado */    
}

/* Estilos generales para móvil */
@media (max-width: 768px) {
    #presupuesto {
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box;
    }

 

    .tituloPresupuesto {
        font-size: 35px;
        padding: 0 15px;
    }

    #contenedorTextoDescripcion {
        height: auto;
        padding: 0 20px;
        margin: 20px 0;
        text-align: center;
    }

    #contenedorPresupuesto {
        height: auto;
        padding: 30px 20px;
    }

    .contenedorFormulario {
        width: 100%;
        flex-direction: column;
        margin-top: 0;
    }

    .columnaIzquierda, .columnaDerecha {
        width: 100%;
    }

    input, select, textarea, button, .infoFormulario {
        width: 100% !important;
        max-width: 100%;
    }

    textarea {
        height: 200px;
    }

    .btnEnviar {
        width: 100%;
        margin-top: 10px;
    }

    .checkboxContainer {
        margin-bottom: 20px;
    }
}

/* Para pantallas muy pequeñas */
@media (max-width: 480px) {
    /* .tituloPresupuesto {
        font-size: 28px;
    } */

    .tituloPresupuesto .o {
        width: 35px; /* Reducir tamaño */
        height: 45px; /* Reducir tamaño */
    }

    #contenedorTextoDescripcion p {
        font-size: 14px;
    }

    input, select, textarea, button {
        padding: 8px 12px;
        font-size: 14px;
    }

    h3 {
        font-size: 16px;
    }
}
