body {
    background: linear-gradient(90deg, #000000 0%, #363636 50%);
}

.intro {
    color: #fff;
    max-width: 1400px;
    margin: 40px auto;
    text-align: center;
}

.intro p {
    margin-top: 10px;
    color: #ccc;
}

.intro a {
    color: var(--color-dorado);
}

.intro a:hover {
    text-decoration: underline;
}

.cotizador-section {
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 20px;
}

.cotizador-grid {
    display: grid;
    grid-template-columns: .5fr 1fr;
    gap: 30px;
}

.cotizador-planes {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 30px;
}

.cotizador-planes h2 {
    color: #fff;
    margin-bottom: 20px;
}

.cotizador-plan-btn {
    background: linear-gradient(310deg, #ffffff 50%, #ccc 100%);
    color: #000;
    border: none;
    border-radius: 30px;
    padding: 15px 20px;
    cursor: pointer;
    text-align: center;
    transition: all 0.6s ease;
    width: 100%;
    will-change: background-color, color, transform;
}

.cotizador-plan-btn:hover {
    transform: translateY(-4px);
}

.cotizador-plan-btn.selected {
    transform: scale(1.03);
    background: var(--color-dorado);
    color: #fff;
}

.cotizador-opciones {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.cotizador-opciones h2 {
    margin-bottom: 20px;
    color: #fff;
}

.cotizador-opcion {
    display: flex;
    flex-direction: column;
}

.cotizador-opcion label {
    margin-bottom: 15px;
    color: #fff;
}

.cotizador-opcion select {
    padding: 15px 0;
    border: none;
    border-bottom: 1px solid #ddd;
    background: transparent;
    outline: none;
    transition: border-color 0.3s ease;
    color: #fff;

}

.cotizador-opcion select option {
    background-color: #1b1b1b;
    color: #fff;
}

.cotizador-opcion select:focus {
    border-bottom-color: var(--color-dorado);
}

.cotizador-resumen {
    background: linear-gradient(10deg, #ffffff 50%, #ccc 100%);
    padding: 30px;
    height: fit-content;
    margin-bottom: 30px;
    border-radius: 15px;
}

.cotizador-resumen h3 {
    margin-bottom: 30px;
}

.cotizador-resumen-item {
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cotizador-descuento {
    margin: 15px 0;
}

.precio-original {
    color: rgba(0, 0, 0, 0.8);
}

.cotizador-contacto-wrapper {
    grid-column: 2 / 3;
}

.cotizador-contacto h3 {
    margin-bottom: 30px;
    color: #fff;
}

.cotizador-contacto-grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 30px;
}

.cotizador-contacto input {
    border: none;
    border-bottom: 1px solid #ddd;
    background: transparent;
    width: 100%;
    padding: 15px 0;
    font-size: 1em;
    color: #fff;
    font-family: var(--fuente-principal);
    outline: none;
    transition: border-color 0.3s ease;
}

.cotizador-contacto input:focus {
    border-bottom-color: var(--color-dorado);
}

.cotizador-contacto input::placeholder {
    color: #ccc;
}

.cotizador-contacto label {
    display: block;
    margin-bottom: 15px;
    color: #fff;
}

.cotizador-enviar-btn {
    background: linear-gradient(310deg, #ffffff 50%, #ccc 100%);
    border: none;
    padding: 15px 30px;
    cursor: pointer;
    border-radius: 15px;
    transition: background 0.3s ease;
    width: 100%;
}

.cotizador-enviar-btn:hover {
    background: var(--color-dorado);
    color: #fff;
}

@media (max-width: 768px) {
    .cotizador-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .cotizador-contacto-wrapper {
        grid-column: 1 / 2;
    }

    .cotizador-planes {
        margin-bottom: 20px;
    }

    .cotizador-resumen {
        padding: 20px;
        margin-bottom: 20px;
    }
}

.cotizador-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.cotizador-popup-content {
    background-color: white;
    padding: 50px;
        border-radius: 15px;
    text-align: center;
    max-width: 500px;
    margin: 20px;
}

.cotizador-popup-content h3 {
    margin-bottom: 25px;
    font-size: 1.5em;
    font-weight: 300;
}

.cotizador-popup-content p {
    margin-bottom: 40px;
    font-weight: 300;
    line-height: 1.6;
    color: #666;
}

.cotizador-popup-buttons {
    display: flex;
    gap: 20px;
    justify-content: center;
}

.cotizador-popup-btn {
        border-radius: 15px;
    padding: 15px 30px;
    border: 1px solid transparent;
    background: transparent;
    cursor: pointer;
    transition: all 0.3s ease;
}

.cotizador-popup-btn.acepto {
    background-color: #333;
    color: white;
}

.cotizador-popup-btn.acepto:hover {
    background-color: var(--color-dorado);
}

.cotizador-popup-btn.cancelar {
    color: #666;
}

.cotizador-popup-btn.cancelar:hover {
    border-color: #000;
    color: #333;
}

@media (max-width: 768px) {
    .cotizador-section {
        padding: 10px 5px;
    }

    .cotizador-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}