:root {
    --exec-navy: #102c51;
    --exec-deep: #071d3b;
    --exec-red: #d90a2c;
    --exec-muted: #52627a;
    --exec-border: #e2e8f0;
}

body { color: var(--exec-deep); }

.exec-hero {
    position: relative;
    overflow: hidden;
    padding: 100px 0 125px;
    color: #fff;
    background: linear-gradient(120deg,#071a35,#12345f 75%,#1d4773);
}
.exec-hero:after {
    content: "";
    position: absolute;
    width: 430px;
    height: 430px;
    right: -160px;
    top: -190px;
    border: 65px solid rgba(255,255,255,.035);
    border-radius: 50%;
    pointer-events: none;
}
.exec-hero .container { position: relative; z-index: 1; }
.exec-eyebrow, .exec-kicker {
    display: inline-block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}
.exec-eyebrow { color: #d5e6f8; }
.exec-kicker { color: var(--exec-red); margin-bottom: 14px; }
.exec-hero h1 {
    max-width: 850px;
    margin: 20px 0;
    font-size: clamp(38px,5vw,68px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -2px;
}
.exec-hero h1 span, .exec-title span { color: #ee294a; }
.exec-hero p { max-width: 700px; font-size: 17px; color: #e2eaf4; }
.exec-primary, .exec-dark, .exec-outline {
    padding: 13px 22px;
    border-radius: 9px;
    font-weight: 700;
}
.exec-primary { background: var(--exec-red); color: #fff; border: 1px solid var(--exec-red); }
.exec-primary:hover { background: #b80726; color: #fff; }
.exec-outline { border: 1px solid #fff; color: #fff; }
.exec-outline:hover { background: #fff; color: var(--exec-deep); }
.exec-dark { background: var(--exec-deep); color: #fff; }
.exec-dark:hover { background: #204a79; color: #fff; }
.exec-hero-points { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 38px; font-size: 13px; }
.exec-hero-points i { color: #fff; margin-right: 6px; }
.exec-hero-panel {
    padding: 35px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 18px;
    background: rgba(255,255,255,.09);
    box-shadow: 0 20px 50px rgba(0,0,0,.12);
}
.exec-hero-panel > i { font-size: 40px; color: #ff4764; }
.exec-hero-panel > span { display: block; margin: 20px 0 10px; font-size: 11px; letter-spacing: 2px; }
.exec-hero-panel h2 { font-size: 25px; font-weight: 800; line-height: 1.4; }
.exec-panel-rule { width: 65px; height: 4px; background: var(--exec-red); margin: 25px 0; }
.exec-hero-panel strong { font-size: 13px; }

.exec-services { position: relative; z-index: 2; margin-top: -55px; }
.exec-service-grid {
    display: grid;
    grid-template-columns: repeat(6,minmax(0,1fr));
    padding: 25px 15px;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 14px 45px rgba(10,35,65,.12);
}
.exec-service { text-align: center; padding: 10px 14px; border-right: 1px solid var(--exec-border); }
.exec-service:last-child { border-right: 0; }
.exec-service i { font-size: 32px; color: var(--exec-navy); }
.exec-service h3 { font-size: 13px; font-weight: 800; margin: 13px 0 5px; }
.exec-service p { font-size: 12px; color: var(--exec-muted); margin: 0; }

.exec-section { padding: 85px 0; }
.exec-title { font-size: clamp(30px,3vw,44px); font-weight: 800; line-height: 1.2; letter-spacing: -1px; }
.exec-copy { color: var(--exec-muted); line-height: 1.85; max-width: 690px; }
.exec-principles { display: grid; gap: 14px; }
.exec-principles > div {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 22px;
    border: 1px solid var(--exec-border);
    border-radius: 12px;
    background: #fff;
}
.exec-principles i { color: var(--exec-red); font-size: 29px; }
.exec-principles strong { display: block; font-size: 16px; }
.exec-principles small { display: block; color: var(--exec-muted); line-height: 1.6; }

.exec-news { background: #f3f6fa; }
.exec-news-card {
    height: 100%;
    background: #fff;
    border: 1px solid var(--exec-border);
    border-radius: 13px;
    overflow: hidden;
}
.exec-news-visual {
    min-height: 145px;
    display: flex;
    justify-content: space-between;
    align-items: end;
    padding: 20px;
    background: linear-gradient(135deg,#173a69,#aabbd2);
    color: #fff;
}
.exec-news-visual i { font-size: 40px; }
.exec-news-visual span { font-size: 11px; font-weight: 800; text-transform: uppercase; }
.exec-news-body { padding: 22px; }
.exec-news-body small { color: var(--exec-muted); }
.exec-news-body h3 { font-size: 19px; font-weight: 800; margin: 10px 0; }
.exec-news-body p { font-size: 14px; color: var(--exec-muted); }
.exec-disclaimer { color: var(--exec-muted); font-size: 12px; }

.exec-access {
    display: flex;
    align-items: center;
    gap: 17px;
    min-height: 90px;
    padding: 24px;
    border-radius: 12px;
    background: var(--exec-navy);
    color: #fff;
    text-decoration: none;
    font-weight: 700;
}
.exec-access > i:first-child { font-size: 28px; }
.exec-access > i:last-child { margin-left: auto; }
.exec-access:hover { color: #fff; filter: brightness(1.1); }
.exec-access-red { background: var(--exec-red); }
.exec-access-light { background: #edf2f8; color: var(--exec-deep); }
.exec-access-light:hover { color: var(--exec-deep); }

.exec-final { padding: 20px 0 80px; }
.exec-final-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
    padding: 35px;
    border: 1px solid var(--exec-border);
    border-radius: 15px;
}
.exec-final h2 { font-size: 26px; font-weight: 800; }
.exec-final p { margin: 0; color: var(--exec-muted); }

@media(max-width: 991px) {
    .exec-service-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .exec-service:nth-child(3) { border-right: 0; }
    .exec-hero { padding: 70px 0 110px; }
}
@media(max-width: 575px) {
    .exec-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .exec-service:nth-child(3) { border-right: 1px solid var(--exec-border); }
    .exec-service:nth-child(even) { border-right: 0; }
    .exec-hero h1 { letter-spacing: -1px; }
    .exec-final-inner { flex-direction: column; align-items: start; }
    .exec-section { padding: 60px 0; }
}

/* ===================================================
   SIDICOBACH - DISEÑO EJECUTIVO DE ANCHO COMPLETO
   =================================================== */

/* Contenedores principales */
@media (min-width: 1200px) {
    body .container {
        width: 92%;
        max-width: 1540px;
    }
}

@media (min-width: 1600px) {
    body .container {
        width: 92%;
        max-width: 1680px;
    }
}

/* Cabecera */
.site-header {
    background: #ffffff;
    box-shadow: 0 3px 18px rgba(8, 28, 57, .08);
}

.site-header .navbar {
    min-height: 94px;
}

.site-header .navbar .container {
    max-width: 1540px;
}

.logo-sidicobach-header {
    width: 230px;
    height: auto;
    max-height: 85px;
    object-fit: contain;
}

/* Portada */
.exec-hero {
    min-height: 460px;
    padding: 85px 0 105px;
    display: flex;
    align-items: center;
}

.exec-hero h1 {
    max-width: 850px;
    font-size: clamp(44px, 4.2vw, 74px);
    line-height: 1.08;
}

.exec-hero p {
    max-width: 740px;
    font-size: 18px;
}

.exec-hero-panel {
    max-width: 430px;
    margin-left: auto;
}

/* Servicios */
.exec-services {
    margin-top: -55px;
}

.exec-service-grid {
    padding: 30px 20px;
}

.exec-service {
    padding: 16px;
}

.exec-service i {
    font-size: 38px;
}

.exec-service h3 {
    font-size: 15px;
}

.exec-service p {
    font-size: 13px;
}

/* Secciones institucionales */
.exec-section {
    padding: 75px 0;
}

.exec-title {
    font-size: clamp(34px, 3vw, 49px);
}

.exec-copy {
    font-size: 16px;
}

/* Noticias */
.exec-news-visual {
    min-height: 195px;
}

.exec-news-body {
    padding: 26px;
}

.exec-news-body h3 {
    font-size: 21px;
}

/* Accesos rápidos */
.exec-access {
    min-height: 105px;
    padding: 28px;
    font-size: 16px;
}

/* Adaptación móvil */
@media (max-width: 991.98px) {
    .exec-hero {
        min-height: auto;
        padding: 65px 0 100px;
    }

    .exec-hero-panel {
        max-width: none;
        margin-left: 0;
    }

    .logo-sidicobach-header {
        width: 175px;
        max-height: 75px;
    }
}

@media (max-width: 575.98px) {
    .exec-hero h1 {
        font-size: 39px;
    }

    .exec-hero p {
        font-size: 15px;
    }

    .exec-service-grid {
        padding: 15px 8px;
    }

    .exec-service {
        padding: 12px 8px;
    }

    .exec-service h3 {
        font-size: 12px;
    }

    .exec-service p {
        font-size: 11px;
    }

    .exec-section {
        padding: 55px 0;
    }
}

/* ===================================================
   SIDICOBACH - DISEÑO EJECUTIVO DE ANCHO COMPLETO
   =================================================== */

/* Contenedores principales */
@media (min-width: 1200px) {
    body .container {
        width: 92%;
        max-width: 1540px;
    }
}

@media (min-width: 1600px) {
    body .container {
        width: 92%;
        max-width: 1680px;
    }
}

/* Cabecera */
.site-header {
    background: #ffffff;
    box-shadow: 0 3px 18px rgba(8, 28, 57, .08);
}

.site-header .navbar {
    min-height: 94px;
}

.site-header .navbar .container {
    max-width: 1540px;
}

.logo-sidicobach-header {
    width: 230px;
    height: auto;
    max-height: 85px;
    object-fit: contain;
}

/* Portada */
.exec-hero {
    min-height: 460px;
    padding: 85px 0 105px;
    display: flex;
    align-items: center;
}

.exec-hero h1 {
    max-width: 850px;
    font-size: clamp(44px, 4.2vw, 74px);
    line-height: 1.08;
}

.exec-hero p {
    max-width: 740px;
    font-size: 18px;
}

.exec-hero-panel {
    max-width: 430px;
    margin-left: auto;
}

/* Servicios */
.exec-services {
    margin-top: -55px;
}

.exec-service-grid {
    padding: 30px 20px;
}

.exec-service {
    padding: 16px;
}

.exec-service i {
    font-size: 38px;
}

.exec-service h3 {
    font-size: 15px;
}

.exec-service p {
    font-size: 13px;
}

/* Secciones institucionales */
.exec-section {
    padding: 75px 0;
}

.exec-title {
    font-size: clamp(34px, 3vw, 49px);
}

.exec-copy {
    font-size: 16px;
}

/* Noticias */
.exec-news-visual {
    min-height: 195px;
}

.exec-news-body {
    padding: 26px;
}

.exec-news-body h3 {
    font-size: 21px;
}

/* Accesos rápidos */
.exec-access {
    min-height: 105px;
    padding: 28px;
    font-size: 16px;
}

/* Adaptación móvil */
@media (max-width: 991.98px) {
    .exec-hero {
        min-height: auto;
        padding: 65px 0 100px;
    }

    .exec-hero-panel {
        max-width: none;
        margin-left: 0;
    }

    .logo-sidicobach-header {
        width: 175px;
        max-height: 75px;
    }
}

@media (max-width: 575.98px) {
    .exec-hero h1 {
        font-size: 39px;
    }

    .exec-hero p {
        font-size: 15px;
    }

    .exec-service-grid {
        padding: 15px 8px;
    }

    .exec-service {
        padding: 12px 8px;
    }

    .exec-service h3 {
        font-size: 12px;
    }

    .exec-service p {
        font-size: 11px;
    }

    .exec-section {
        padding: 55px 0;
    }
}
