/* ============================================ */
/* SOBRE-NOSOTROS PAGE SPECIFIC STYLES */
/* ============================================ */

/* QUIÉNES SOMOS SECTION */
.quien-somos-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    padding: 80px 40px;
    max-width: 1400px;
    margin: 0 auto;
}

/* LEFT COLUMN */
.quien-somos-left {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.quien-somos-label-text {
    display: inline-block;
    padding: 0;
    background: transparent;
    border: none;
    color: #C9000C;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    width: fit-content;
}

.quien-somos-title {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.2;
    color: var(--black);
}

.quien-somos-description {
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-secondary);
}

.quien-somos-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 16px;
}

.quien-somos-list li {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    font-size: 15px;
    line-height: 1.6;
    color: var(--black);
}

.quien-somos-list .list-checkmark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    min-width: 28px;
    flex-shrink: 0;
    font-size: 20px;
    line-height: 1.2;
    color: #C9000C;
    font-weight: bold;
    margin-right: 4px;
    vertical-align: middle;
}

/* RIGHT COLUMN */
.quien-somos-right {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* PILARES SECTION */
.pilares-label-text {
    display: inline-block;
    padding: 0;
    background: transparent;
    border: none;
    color: #C9000C;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    width: fit-content;
}

.pilares-container {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 32px;
    background: #F9FAFB;
    border-radius: 16px;
}

.pilares-grid {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.pilar-card {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 28px;
    border: none;
    border-radius: 12px;
    background: #FFFFFF;
    transition: all 0.3s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.pilar-card:hover {
    box-shadow: 0 4px 12px rgba(227, 6, 19, 0.1);
    transform: translateY(-2px);
}

.pilar-icon {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(227, 6, 19, 0.08);
    border-radius: 12px;
}

.pilar-icon img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.pilar-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--black);
}

.pilar-description {
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-secondary);
}

/* ============================================ */
/* HIGHLIGHT STYLES FOR HERO */
/* ============================================ */
.highlight-red {
    color: #C9000C !important;
    font-weight: 600 !important;
    display: inline !important;
}

.hero-sobre-nosotros h1 .highlight-red {
    color: #C9000C !important;
    font-weight: 700 !important;
    display: inline !important;
}

.hero-sobre-nosotros p .highlight-red {
    color: #FF4444 !important;
    font-weight: 600 !important;
    display: inline !important;
}

.hero-description-highlight {
    color: #FF4444 !important;
    font-weight: 600 !important;
    display: inline !important;
}

.hero-sobre-nosotros p .hero-description-highlight {
    color: #FF4444 !important;
    font-weight: 600 !important;
    display: inline !important;
}

/* ============================================ */
/* RESPONSIVE DESIGN */
/* ============================================ */

/* Tablet (769px - 1024px) */
@media (max-width: 1024px) {
    .quien-somos-layout {
        grid-template-columns: 1fr;
        gap: 60px;
        padding: 60px 30px;
    }

    .quien-somos-title {
        font-size: 38px;
    }

    .quien-somos-description {
        font-size: 15px;
    }

    .pilares-label-text {
        font-size: 16px;
    }
}

/* Mobile (max-width 768px) */
@media (max-width: 768px) {
    .quien-somos-layout {
        gap: 40px;
        padding: 40px 20px;
    }

    .quien-somos-title {
        font-size: 32px;
    }

    .quien-somos-description {
        font-size: 14px;
    }

    .quien-somos-list li {
        font-size: 14px;
    }

    .pilares-label-text {
        font-size: 14px;
    }

    .pilar-icon {
        width: 48px;
        height: 48px;
    }

    .pilar-icon img {
        width: 24px;
        height: 24px;
    }

    .pilares-grid {
        gap: 16px;
    }

    .pilar-card {
        padding: 16px;
    }
}

/* Extra Small (max-width 480px) */
@media (max-width: 480px) {
    .quien-somos-layout {
        padding: 30px 16px;
    }

    .quien-somos-title {
        font-size: 28px;
    }

    .quien-somos-list li {
        font-size: 13px;
    }
}

/* ============================================ */
/* NUESTRA FORMA DE TRABAJAR - RESPONSIVE */
/* ============================================ */

/* Tablet (max-width: 1024px) */
@media (max-width: 1024px) {
    .working-method-section {
        padding: 70px 30px !important;
    }

    .working-method-section h2 {
        font-size: 42px !important;
        margin-bottom: 24px !important;
    }

    .working-method-section > div > p {
        font-size: 15px !important;
        margin-bottom: 50px !important;
    }

    .working-method-section > div > div[style*="grid"] {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 24px !important;
    }

    .working-method-section > div > div[style*="grid"] > div {
        padding: 32px 24px !important;
    }

    .working-method-section > div > div[style*="grid"] > div h3 {
        font-size: 18px !important;
        margin-bottom: 12px !important;
    }
}

/* Mobile (max-width: 768px) */
@media (max-width: 768px) {
    .working-method-section {
        padding: 60px 20px !important;
    }

    .working-method-section h2 {
        font-size: 36px !important;
        margin-bottom: 20px !important;
    }

    .working-method-section > div > p {
        font-size: 14px !important;
        margin-bottom: 40px !important;
    }

    .working-method-section > div > div[style*="grid"] {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .working-method-section > div > div[style*="grid"] > div {
        padding: 24px 20px !important;
    }

    .working-method-section > div > div[style*="grid"] > div > div[style*="background: #C9000C"] {
        width: 44px !important;
        height: 44px !important;
        font-size: 20px !important;
    }

    .working-method-section > div > div[style*="grid"] > div h3 {
        font-size: 18px !important;
        margin-bottom: 12px !important;
    }

    .working-method-section > div > div[style*="grid"] > div p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }
}

/* Extra Small (max-width: 480px) */
@media (max-width: 480px) {
    .working-method-section {
        padding: 40px 16px !important;
    }

    .working-method-section h2 {
        font-size: 28px !important;
        line-height: 1.3 !important;
        margin-bottom: 16px !important;
    }

    .working-method-section > div > p {
        font-size: 13px !important;
        max-width: 100% !important;
        margin-bottom: 30px !important;
    }

    .working-method-section > div > div[style*="grid"] {
        gap: 16px !important;
        margin-bottom: 40px !important;
    }

    .working-method-section > div > div[style*="grid"] > div {
        padding: 20px 16px !important;
        border-radius: 8px !important;
    }

    .working-method-section > div > div[style*="grid"] > div > div[style*="background: #C9000C"] {
        width: 40px !important;
        height: 40px !important;
        font-size: 18px !important;
        margin-bottom: 16px !important;
    }

    .working-method-section > div > div[style*="grid"] > div h3 {
        font-size: 16px !important;
        margin-bottom: 10px !important;
    }

    .working-method-section > div > div[style*="grid"] > div p {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }
}

/* ============================================ */
/* LO QUE NOS DIFERENCIA - RESPONSIVE */
/* ============================================ */

/* Tablet (max-width: 1024px) */
@media (max-width: 1024px) {
    /* Main Container: Stack vertically */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 50px !important;
        padding: 70px 30px !important;
    }

    /* Left Column - Title Reduction */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:first-child h2 {
        font-size: 42px !important;
        margin-bottom: 40px !important;
    }

    /* Card Styling */
    section[style*="padding: 80px 20px"] .card-white h3 {
        font-size: 17px !important;
        margin-bottom: 10px !important;
    }

    section[style*="padding: 80px 20px"] .card-white p {
        font-size: 14px !important;
    }

    /* Sectores Title */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:first-child h3 {
        font-size: 24px !important;
        margin-bottom: 24px !important;
    }

    /* Valores Grid - Keep 2 columns */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child > div[style*="grid-template-columns: 1fr 1fr"] {
        gap: 20px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child h4 {
        font-size: 15px !important;
        margin-bottom: 8px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child p {
        font-size: 12px !important;
    }
}

/* Mobile (max-width: 768px) */
@media (max-width: 768px) {
    /* Main Container */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] {
        gap: 40px !important;
        padding: 50px 20px !important;
    }

    /* Left Column */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:first-child h2 {
        font-size: 36px !important;
        margin-bottom: 30px !important;
    }

    /* Cards */
    section[style*="padding: 80px 20px"] .card-white {
        gap: 12px !important;
    }

    section[style*="padding: 80px 20px"] .card-white > div[style*="width: 50px"] {
        width: 44px !important;
        height: 44px !important;
    }

    section[style*="padding: 80px 20px"] .card-white > div[style*="width: 50px"] img {
        width: 24px !important;
        height: 24px !important;
    }

    section[style*="padding: 80px 20px"] .card-white h3 {
        font-size: 16px !important;
        margin-bottom: 8px !important;
    }

    section[style*="padding: 80px 20px"] .card-white p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    /* Sectores Section */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:first-child {
        padding: 32px 24px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:first-child h3 {
        font-size: 20px !important;
        margin-bottom: 20px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:first-child span[style*="padding: 12px 20px"] {
        padding: 10px 16px !important;
        font-size: 13px !important;
    }

    /* Valores - Convert to 1 column */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child {
        padding: 32px 24px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child > div[style*="grid-template-columns: 1fr 1fr"] {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child > div[style*="width: 40px"] {
        width: 36px !important;
        height: 36px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child > div[style*="width: 40px"] img {
        width: 20px !important;
        height: 20px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child h4 {
        font-size: 14px !important;
        margin-bottom: 8px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child p {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }
}

/* Extra Small (max-width: 480px) */
@media (max-width: 480px) {
    /* Main Container */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] {
        gap: 30px !important;
        padding: 30px 16px !important;
    }

    /* Left Column */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:first-child h2 {
        font-size: 28px !important;
        line-height: 1.3 !important;
        margin-bottom: 24px !important;
    }

    /* Cards */
    section[style*="padding: 80px 20px"] .card-white {
        gap: 10px !important;
    }

    section[style*="padding: 80px 20px"] .card-white > div[style*="width: 50px"] {
        width: 40px !important;
        height: 40px !important;
    }

    section[style*="padding: 80px 20px"] .card-white h3 {
        font-size: 15px !important;
        margin-bottom: 6px !important;
    }

    section[style*="padding: 80px 20px"] .card-white p {
        font-size: 12px !important;
        line-height: 1.4 !important;
    }

    /* Sectores Section */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:first-child {
        padding: 24px 20px !important;
        border-radius: 12px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:first-child h3 {
        font-size: 18px !important;
        margin-bottom: 16px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:first-child span[style*="padding: 12px 20px"] {
        padding: 8px 14px !important;
        font-size: 12px !important;
        border-radius: 20px !important;
    }

    /* Valores */
    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child {
        padding: 24px 20px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child > div[style*="grid-template-columns: 1fr 1fr"] {
        gap: 16px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child > div[style*="width: 40px"] {
        width: 32px !important;
        height: 32px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child h4 {
        font-size: 13px !important;
        margin-bottom: 6px !important;
    }

    section[style*="padding: 80px 20px"] > div[style*="grid-template-columns: 1fr 1fr"] > div:last-child > div:last-child p {
        font-size: 11px !important;
        line-height: 1.4 !important;
    }
}

/* ============================================ */
/* PREGUNTAS FRECUENTES (FAQ) - RESPONSIVE */
/* ============================================ */

/* Tablet (max-width: 1024px) */
@media (max-width: 1024px) {
    /* FAQ Container */
    section:has(h2[data-es*="Respuestas para entender"]) {
        padding: 70px 30px !important;
    }

    /* FAQ Header Grid */
    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child {
        grid-template-columns: 1fr !important;
        gap: 50px !important;
    }

    /* Left Column - Title */
    section:has(h2[data-es*="Respuestas para entender"]) h2 {
        font-size: 42px !important;
        margin-bottom: 20px !important;
    }

    /* FAQ Items */
    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child {
        gap: 18px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div h3 {
        font-size: 15px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div p {
        font-size: 14px !important;
    }

    /* CTA Section */
    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta {
        margin-top: 60px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-title {
        font-size: 36px !important;
    }
}

/* Mobile (max-width: 768px) */
@media (max-width: 768px) {
    /* FAQ Container */
    section:has(h2[data-es*="Respuestas para entender"]) {
        padding: 50px 20px !important;
    }

    /* Left Column - Title */
    section:has(h2[data-es*="Respuestas para entender"]) h2 {
        font-size: 36px !important;
        margin-bottom: 16px !important;
    }

    /* FAQ Items */
    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child {
        gap: 16px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child > div {
        padding-bottom: 16px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div h3 {
        font-size: 14px !important;
        margin: 0 !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div > div:first-child {
        padding: 12px 0 !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div > div:first-child span {
        font-size: 18px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    /* CTA Section */
    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta {
        margin-top: 40px !important;
        padding: 40px 20px !important;
        flex-direction: column !important;
        gap: 24px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-content {
        text-align: center !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-label {
        font-size: 14px !important;
        margin-bottom: 16px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-title {
        font-size: 28px !important;
        margin-bottom: 12px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-description {
        font-size: 14px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-buttons {
        flex-direction: column !important;
        gap: 12px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-buttons .btn {
        width: 100% !important;
        padding: 16px 20px !important;
        font-size: 14px !important;
    }
}

/* Extra Small (max-width: 480px) */
@media (max-width: 480px) {
    /* FAQ Container */
    section:has(h2[data-es*="Respuestas para entender"]) {
        padding: 30px 16px !important;
    }

    /* Left Column - Title */
    section:has(h2[data-es*="Respuestas para entender"]) h2 {
        font-size: 28px !important;
        line-height: 1.3 !important;
        margin-bottom: 12px !important;
    }

    /* Badge */
    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:first-child span {
        font-size: 16px !important;
        margin-bottom: 20px !important;
    }

    /* FAQ Items */
    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child {
        gap: 14px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child > div {
        border-bottom: 1px solid #e5e5e5 !important;
        padding-bottom: 14px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div h3 {
        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 1.4 !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div > div:first-child {
        padding: 10px 0 !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div > div:first-child span {
        font-size: 16px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) > div > div:first-child > div:last-child div p {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    /* CTA Section */
    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta {
        margin-top: 24px !important;
        padding: 24px 16px !important;
        border-radius: 12px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-label {
        font-size: 12px !important;
        margin-bottom: 12px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-title {
        font-size: 22px !important;
        margin-bottom: 10px !important;
        line-height: 1.3 !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-description {
        font-size: 12px !important;
        margin-bottom: 16px !important;
        line-height: 1.4 !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-buttons {
        flex-direction: column !important;
        gap: 10px !important;
    }

    section:has(h2[data-es*="Respuestas para entender"]) .portfolio-cta-buttons .btn {
        width: 100% !important;
        padding: 14px 16px !important;
        font-size: 13px !important;
    }
}
/* ============================================ */
        /* SERVICIOS GRID SECTION */
        /* ============================================ */
        .servicios-grid-section {
            background: var(--white);
            padding: 60px 40px;
        }

        .servicios-grid-container {
            max-width: 1200px;
            margin: 0 auto;
            display: flex;
            flex-direction: column;
            gap: 48px;
        }

        .servicios-grid-header {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 40px;
        }

        .servicios-grid-header-left {
            flex: 1;
        }

        .servicios-grid-label {
            font-size: 18px;
            font-weight: 700;
            color: var(--primary);
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 16px;
            display: block;
        }

        .servicios-grid-header h2 {
            font-size: 32px;
            font-weight: 700;
            color: var(--black);
            line-height: 1.3;
            margin: 0;
        }

        .servicios-grid-cards {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 32px;
        }

        @media (min-width: 769px) and (max-width: 1024px) {
            .servicios-grid-section {
                padding: 50px 30px;
            }

            .servicios-grid-container {
                gap: 40px;
            }

            .servicios-grid-header {
                flex-direction: column;
                align-items: flex-start;
                gap: 24px;
            }

            .servicios-grid-cards {
                grid-template-columns: repeat(2, 1fr);
                gap: 24px;
            }

            .servicios-grid-card {
                padding: 28px;
            }

            .servicios-grid-card-content {
                gap: 14px;
            }

            .servicios-grid-card h3 {
                font-size: 20px;
            }

            .servicios-grid-card p {
                font-size: 14px;
            }

            .btn-link {
                font-size: 13px;
            }
        }

        .servicios-grid-card {
            background: var(--white);
            border: 1px solid #e5e5e5;
            border-radius: 8px;
            padding: 32px;
            transition: all 0.3s ease;
            display: flex;
            flex-direction: column;
        }

        .servicios-grid-card:hover {
            border-color: var(--primary);
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
        }

        .servicios-grid-card-content {
            display: flex;
            flex-direction: column;
            gap: 16px;
        }

        .servicios-grid-card h3 {
            font-size: 20px;
            font-weight: 700;
            color: var(--black);
            margin: 0;
            line-height: 1.3;
        }

        .servicios-grid-card p {
            font-size: 14px;
            color: var(--text-secondary);
            line-height: 1.6;
            margin: 0;
        }

        .btn-link {
            color: var(--primary);
            text-decoration: none;
            font-weight: 600;
            font-size: 14px;
            display: inline-block;
            transition: all 0.3s ease;
            align-self: flex-start;
        }

        .btn-link:hover {
            color: var(--primary);
            transform: translateX(4px);
        }

        @media (max-width: 768px) {
            .servicios-grid-section {
                padding: 40px 20px;
            }

            .servicios-grid-container {
                gap: 32px;
            }

            .servicios-grid-header {
                flex-direction: column;
                align-items: flex-start;
                gap: 16px;
            }

            .servicios-grid-header h2 {
                font-size: 28px;
                margin: 0;
            }

            .servicios-grid-header .btn {
                width: 100%;
                padding: 16px 20px;
                font-size: 14px;
                text-align: center;
            }

            .servicios-grid-cards {
                grid-template-columns: 1fr;
                gap: 20px;
            }

            .servicios-grid-card {
                padding: 24px 20px;
            }

            .servicios-grid-card-content {
                gap: 12px;
            }

            .servicios-grid-card h3 {
                font-size: 18px;
            }

            .servicios-grid-card p {
                font-size: 13px;
                line-height: 1.5;
            }

            .btn-link {
                font-size: 13px;
            }
        }

        @media (max-width: 480px) {
            .servicios-grid-section {
                padding: 24px 16px;
            }

            .servicios-grid-container {
                gap: 24px;
            }

            .servicios-grid-header {
                flex-direction: column;
                align-items: flex-start;
                gap: 14px;
            }

            .servicios-grid-header-left {
                width: 100%;
            }

            .servicios-grid-label {
                display: block !important;
                font-size: 14px !important;
                margin-bottom: 10px !important;
            }

            .servicios-grid-header h2 {
                font-size: 24px;
                line-height: 1.3;
                margin-bottom: 12px;
            }

            .servicios-grid-header .btn {
                width: 100%;
                padding: 14px 16px;
                font-size: 13px;
            }

            .servicios-grid-cards {
                gap: 16px;
            }

            .servicios-grid-card {
                padding: 20px 16px;
                border-radius: 8px;
            }

            .servicios-grid-card-content {
                gap: 10px;
            }

            .servicios-grid-card h3 {
                font-size: 16px;
                line-height: 1.3;
            }

            .servicios-grid-card p {
                font-size: 12px;
                line-height: 1.4;
            }

            .btn-link {
                font-size: 12px;
            }
        }

/* ============================================ */
/* METODOLOGÍA SECTION - RESPONSIVE */
/* ============================================ */

.metodologia-wrapper {
    background: #111827;
    color: white;
    border-radius: 20px;
    max-width: 1200px;
    margin: 0 auto;
}

.metodologia-container {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 60px;
    align-items: start;
}

.metodologia-label {
    display: inline-block;
    color: #C9000C;
    font-weight: 600;
    font-size: 18px;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.metodologia-title {
    font-size: 44px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0;
    color: white;
}

.metodologia-points {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.metodologia-point {
    border: 1px solid #444444;
    border-radius: 12px;
    padding: 24px;
    background: rgba(255, 255, 255, 0.02);
}

.metodologia-point-wrapper {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}

.metodologia-point-icon {
    color: #C9000C;
    font-size: 22px;
    flex-shrink: 0;
    font-weight: bold;
}

.metodologia-point-text {
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
    color: #e8e8e8;
}

/* Desktop (1200px+) - MANTENER ACTUAL */
@media (min-width: 1200px) {
    .metodologia-wrapper {
        padding: 60px 40px;
    }

    .metodologia-container {
        grid-template-columns: 1fr 1.2fr;
        gap: 60px;
    }

    .metodologia-title {
        font-size: 44px;
    }

    .metodologia-points {
        gap: 20px;
    }

    .metodologia-point {
        padding: 24px;
    }

    .metodologia-point-text {
        font-size: 16px;
    }
}

/* Tablet (1024px - 1199px) */
@media (max-width: 1199px) {
    .metodologia-wrapper {
        padding: 50px 30px;
    }

    .metodologia-container {
        grid-template-columns: 1fr;
        gap: 40px;
        align-items: start;
    }

    .metodologia-label {
        font-size: 16px;
        margin-bottom: 16px;
    }

    .metodologia-title {
        font-size: 38px;
        line-height: 1.2;
    }

    .metodologia-points {
        gap: 18px;
    }

    .metodologia-point {
        padding: 20px;
        border-radius: 10px;
    }

    .metodologia-point-icon {
        font-size: 20px;
    }

    .metodologia-point-text {
        font-size: 15px;
        line-height: 1.6;
    }
}

/* Mobile (768px - 1024px) */
@media (max-width: 768px) {
    .metodologia-wrapper {
        padding: 40px 20px;
    }

    .metodologia-label {
        font-size: 14px;
        margin-bottom: 12px;
    }

    .metodologia-title {
        font-size: 32px;
        line-height: 1.2;
    }

    .metodologia-points {
        gap: 16px;
    }

    .metodologia-point {
        padding: 18px;
        border-radius: 10px;
    }

    .metodologia-point-icon {
        font-size: 20px;
        width: 24px;
    }

    .metodologia-point-text {
        font-size: 14px;
        line-height: 1.5;
    }
}

/* Extra Small (<480px) */
@media (max-width: 480px) {
    .metodologia-wrapper {
        padding: 30px 16px;
        border-radius: 16px;
    }

    .metodologia-label {
        font-size: 12px;
        margin-bottom: 12px;
        letter-spacing: 0.5px;
    }

    .metodologia-title {
        font-size: 28px;
        line-height: 1.3;
    }

    .metodologia-points {
        gap: 14px;
    }

    .metodologia-point {
        padding: 16px;
        border-radius: 8px;
    }

    .metodologia-point-wrapper {
        gap: 12px;
    }

    .metodologia-point-icon {
        font-size: 18px;
        flex-shrink: 0;
        width: 20px;
    }

    .metodologia-point-text {
        font-size: 13px;
        line-height: 1.5;
    }
}