/* Start custom CSS for html, class: .elementor-element-444d928 */:root {
    --empo-primary: #0a6fb5;
    --empo-text-dark: #2c3e50;
    --empo-text-light: #555555;
    --empo-border: #dcdde1;
    --empo-bg-light: #f4f6f8;
}

.sp-formal-container {
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    max-width: 950px;
    margin: 40px auto;
    color: var(--empo-text-dark);
}

.sp-formal-header {
    margin-bottom: 40px;
    border-bottom: 3px solid var(--empo-primary);
    padding-bottom: 20px;
}

/* Ajustado de 35px a 30px */
.sp-formal-header h2 {
    color: var(--empo-primary);
    font-size: 30px; 
    margin-bottom: 15px;
    line-height: 1.2;
}

/* Ajustado de 20px a 17px */
.sp-formal-header p {
    font-size: 17px; 
    color: var(--empo-text-light);
    line-height: 1.6;
    margin: 0;
    text-align: justify;
}

.sp-formal-block {
    margin-bottom: 35px;
    background-color: #ffffff;
    border: 1px solid var(--empo-border);
    border-radius: 6px;
    overflow: hidden;
}

.sp-block-title {
    background-color: var(--empo-bg-light);
    border-bottom: 1px solid var(--empo-border);
    border-left: 5px solid var(--empo-primary);
    padding: 15px 25px;
}

/* Ajustado de 22px a 20px */
.sp-block-title h3 {
    margin: 0;
    font-size: 20px; 
    color: var(--empo-primary);
    font-weight: 600;
}

.sp-block-content {
    padding: 25px;
}

/* Ajustado de 19px a 17px */
.sp-intro-text {
    font-size: 17px; 
    color: var(--empo-text-light);
    margin-top: 0;
    margin-bottom: 20px;
}

.sp-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Ajustado de 20px a 17px */
.sp-contact-list li {
    font-size: 17px; 
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px dashed var(--empo-border);
    color: var(--empo-text-dark);
}

.sp-contact-list li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.sp-contact-list strong {
    color: var(--empo-primary);
    display: block;
    margin-bottom: 4px;
}

.sp-link-action {
    color: var(--empo-primary);
    text-decoration: none;
    font-weight: 600;
    transition: color 0.2s;
}

.sp-link-action:hover {
    color: #085a94;
    text-decoration: underline;
}

.sp-doc-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sp-doc-list.two-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.sp-doc-list li {
    margin-bottom: 12px;
}

/* Ajustado de 19px a 17px */
.sp-doc-link {
    display: flex;
    align-items: center;
    padding: 12px 15px;
    background-color: #ffffff;
    border: 1px solid var(--empo-border);
    border-radius: 4px;
    color: var(--empo-text-dark);
    font-size: 17px; 
    text-decoration: none;
    transition: all 0.2s ease;
}

.sp-doc-link:hover {
    border-color: var(--empo-primary);
    background-color: #f8fbff;
    color: var(--empo-primary);
    transform: translateX(4px);
}

.sp-svg-icon {
    width: 20px; /* Reducido un poquito para acompañar la fuente de 17px */
    height: 20px;
    margin-right: 12px;
    color: var(--empo-text-light);
    flex-shrink: 0;
}

.sp-doc-link:hover .sp-svg-icon {
    color: var(--empo-primary);
}

@media (max-width: 768px) {
    .sp-doc-list.two-columns {
        grid-template-columns: 1fr;
    }
    
    .sp-block-title h3 {
        font-size: 18px; 
    }
}/* End custom CSS */