:root {
    --lima: #C0D12D;
    --crema: #F7F4F0;
    --mostaza: #F8C651;
    --verde: #1D5248;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
    font-family: 'Inter', sans-serif;
    color: var(--verde);
    line-height: 1.6;
}

.faja {
    min-height: 50vh; 
    width: 100%;
    display: flex;
    align-items: center;
    padding: 100px 0;
}

.container {
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 40px;
    width: 100%;
}

.s1, .s4 { background-color: var(--lima); }
.s2 { background-color: var(--crema); }
.s3 { background-color: var(--mostaza); }
.s5 { background-color: var(--verde); color: var(--crema); }

/* LOGO */
.logo-anchor {
    position: relative;
    height: 100px;
}

.brand-logo {
    position: absolute;
    top: -70px; /* Ajusta esto para subir/bajar el logo */
    left: 0;
    height: 60px; /* ESTA ES LA CLAVE: Define el tamaño visual */
    width: auto;  /* Mantiene la proporción original del logo */
    display: block;
}

/* FUENTES */
h1 { font-family: 'Playfair Display', serif; font-size: 4.5rem; line-height: 1.1; margin-bottom: 30px; }
h2 { font-family: 'Playfair Display', serif; font-size: 3.2rem; line-height: 1.1; margin-bottom: 35px; }

.bloque-texto { max-width: 580px; font-size: 1.25rem; } 
.mt-20 { margin-top: 30px; }

/* LAYOUTS */
.split { display: flex; justify-content: space-between; align-items: center; gap: 100px; }
.split-right { display: flex; justify-content: flex-end; }
.col-left { flex: 1.2; }
.col-right { flex: 1; }
.col-right-full { width: 580px; }

/* GRÁFICO */
.pie-chart-container {
    position: relative;
    width: 330px; 
    height: 330px;
    margin-top: 80px;
}

.pie-chart {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: conic-gradient(
        #c2a679 0% 47.6%, 
        #5b9bd5 47.6% 71.4%, 
        #1d5248 71.4% 88.1%, 
        #C0D12D 88.1% 95.2%, 
        #a189f1 95.2% 100%
    );
}

.chart-text { 
    position: absolute; 
    font-size: 1.05rem; 
    font-weight: 600; 
    text-align: center;
    line-height: 1.2;
}

.t-re { top: 45%; left: 108%; } 
.t-vc { top: 28%; right: 105%; }
.t-equity { bottom: -40px; left: 0%; transform: translateX(-50%); } 
.t-alt { top: -25px; right: 75%; } 
.t-liquidity { bottom: 105%; left: 45%; transform: translateX(-55%); }

/* EMAIL */
.mail-link {
    display: inline-block;
    margin-top: 35px;
    color: inherit;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 600;
    border-bottom: 2px solid currentColor;
}

/* ==========================================
   AJUSTES PARA MÓVIL (RESPONSIVE) 📱
   ========================================== */

@media (max-width: 900px) {
    .faja { padding: 60px 0; }
    
    .container { padding: 0 30px; }

    h1 { font-size: 3rem; }
    h2 { font-size: 2.2rem; }
    
    /* Apilamos las columnas */
    .split { 
        flex-direction: column; 
        gap: 50px; 
        align-items: flex-start;
    }

    .split-right { justify-content: flex-start; }
    
    .col-right-full { width: 100%; }
    .bloque-texto { max-width: 100%; }

    /* Ajuste del gráfico para que no se corte */
    .pie-chart-container {
        width: 280px;
        height: 280px;
        margin: 60px auto 40px auto; /* Lo centramos */
    }

    .chart-text { font-size: 0.9rem; }

    /* Reposicionamos etiquetas para que no se salgan de la pantalla */
    .t-re { left: 102%; }
    .t-vc { right: 102%; }
    
    .brand-logo {
        height: 60px;
        top: -50px;
    }
}