/* --- SERVICIOS EDOGO MODERN & ICONIC --- */

:root {
    --edogo-orange: #ffa200;
    --dark-bg: #0a0a0b;
    --card-bg: #141417;
}

body.bg-dark-edogo {
    background-color: var(--dark-bg);
}

.servicios-hero-modern {
    padding: 160px 0 60px;
    background: radial-gradient(circle at top right, rgba(255,162,0,0.05), transparent);
}

.hero-titulo-modern {
    font-family: 'BebasNeue', sans-serif;
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    font-weight: 900;
    color: #fff;
    letter-spacing: 2px;
}

.hero-subtitulo-modern {
    color: var(--edogo-orange);
    letter-spacing: 4px;
    font-weight: 700;
    font-size: 0.85rem;
}

/* BLOQUES DE SERVICIO (REPETIBLES Y SEPARADOS) */
.servicio-block-modern {
    background: var(--card-bg);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 250px; /* Altura original para mantener el impacto */
    text-decoration: none;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.block-content {
    text-align: center;
    z-index: 2;
    transition: transform 0.3s ease;
}

/* Estilo de los Iconos */
.service-icon {
    font-size: 3.5rem;
    color: #ffffff;
    display: block;
    margin-bottom: 15px;
    transition: all 0.3s ease;
}

.service-title {
    font-family: 'BebasNeue', sans-serif, system-ui;
    font-size: 1.8rem;
    color: #ffffff;
    font-weight: 900;
    letter-spacing: 1px;
    transition: color 0.3s ease;
}

/* Efecto de fondo al pasar el mouse (Slider naranja original) */
.servicio-block-modern::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--edogo-orange);
    transform: translateY(100%);
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    z-index: 1;
}

/* Estados Hover */
.servicio-block-modern:hover::before {
    transform: translateY(0);
}

.servicio-block-modern:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.5);
    border-color: var(--edogo-orange);
}

.servicio-block-modern:hover .service-icon,
.servicio-block-modern:hover .service-title {
    color: #000000; /* Texto e icono oscuro sobre el fondo naranja */
}

/* CTA & Footer */
.extra-cta-modern { background-color: var(--edogo-orange); }

.btn-modern-orange {
    display: inline-block;
    padding: 15px 50px;
    background-color: #000;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 900;
    font-size: 1.2rem;
    transition: 0.3s;
}

.btn-modern-orange:hover {
    background-color: #fff;
    color: #000;
    transform: scale(1.05);
}

@media (max-width: 768px) {
    .servicio-block-modern { min-height: 180px; }
    .service-icon { font-size: 2.5rem; }
    .service-title { font-size: 1.5rem; }
}