:root{
--white:#ffffff;
--red:#d72638;
--navy:#001f3f;
--beige-light:#fdf5e6;
--font-main:'Poppins',sans-serif;
}

/* RESET */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-main);
    background: linear-gradient(180deg,#ffffff,#f7f7f7);
    color: var(--navy);
    line-height: 1.6;
    padding-top: 107px; /* espacio debajo del header */
}

a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }

/* MAIN */
.container{
    width:100%;
    max-width:1400px;
    margin:auto;
    padding: 0 clamp(16px, 4vw, 40px);
}
.section-title { text-align:center; font-size:42px; margin-top:90px; color:var(--red); margin-bottom:16px; font-weight: 600; }

/* BLOQUES VACANTES */
.corporate-block {
    margin-bottom:80px;
    position:relative;
    min-height:280px;
    border-radius:15px;
    display:flex;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,0.05);
    border-left:10px solid var(--red);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.corporate-block:hover { transform:translateY(-5px); box-shadow:0 15px 40px rgba(0,0,0,0.1); }

.corporate-block::after {
    content:"";
    position:absolute;
    top:0; left:0; right:0; bottom:0;
    background:linear-gradient(to right, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.6) 55%, rgba(0,0,0,0.5) 100%);
    z-index:1;
}

.corporate-block img {
    position:absolute; top:0; left:0; width:100%; height:100%;
    object-fit:cover; border-radius:15px; z-index:0;
}

.badge {
    position:absolute; top:-18px; left:20px; background:var(--red);
    color:#fff; padding:6px 22px; font-size:13px; font-weight:700;
    text-transform:uppercase; letter-spacing:1px; border-radius:5px; z-index:2;
    box-shadow:0 4px 10px rgba(0,0,0,0.1);
}

.block-content { display:flex; justify-content:flex-end; align-items:center; width:100%; padding:40px; position:relative; z-index:2; }
.text-and-button { width:45%; text-align:right; display:flex; flex-direction:column; align-items:flex-end; z-index:2; }
.text-and-button h3 { color:#fff; font-size:20px; margin-bottom:10px; text-shadow:0 3px 10px rgba(0,0,0,0.7); }
.text-and-button p { color:rgba(255,255,255,0.9); font-size:16px; margin-bottom:20px; text-shadow:0 2px 8px rgba(0,0,0,0.6); }
.btn-postulate { background-color:var(--red); color:var(--white); padding:12px 24px; border-radius:50px; font-weight:600; text-transform:uppercase; font-size:14px; letter-spacing:1px; text-decoration:none; transition:0.3s; box-shadow:0 4px 10px rgba(215,38,56,0.3); }
.btn-postulate:hover { background-color:#be1e2f; transform:translateY(-3px); box-shadow:0 6px 15px rgba(215,38,56,0.5); }

