:root {
      --color-primary: #2563eb;
      --color-secondary: #0f172a;
      --color-accent: #f0f9ff;
      --color-gray-light: #f1f5f9;
      --color-gray: #94a3b8;
      --color-text: #334155;
      --shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
      --shadow-md: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
      --radius: 8px;
    }
    body { font-family: 'Poppins', sans-serif; line-height: 1.8; color: var(--color-text); background-color: #ffffff; margin: 0; padding: 0; }
    .articulo-contenedor { max-width: 800px; margin: 0 auto; padding: 2rem; }
    p { margin-bottom: 1.5rem; font-size: 1rem; font-weight: 400; }
    h2 { font-size: 1.875rem; color: var(--color-secondary); margin-top: 3rem; margin-bottom: 1.5rem; font-weight: 600; position: relative; padding-bottom: 0.75rem; }
    h2::after { content: ""; position: absolute; left: 0; bottom: 0; height: 3px; width: 60px; background-color: var(--color-primary); border-radius: 3px; }
    strong { color: var(--color-primary); font-weight: 600; }
    .intro { font-size: 1.125rem; line-height: 1.7; margin-bottom: 2.5rem; padding-left: 1rem; border-left: 3px solid var(--color-primary); }
    .internal-link-box { background: #f0f7ff; border-left: 4px solid #2563eb; padding: 14px 20px; margin: 0 0 2rem 0; border-radius: 0 8px 8px 0; }
    .internal-link-box p { margin: 0; font-size: 1rem; color: #2d3748; }
    .internal-link-box a { color: #2563eb; font-weight: 600; text-decoration: none; }
    .internal-link-box a:hover { text-decoration: underline; }
    .card { background-color: var(--color-accent); padding: 1.5rem; border-radius: var(--radius); margin: 2rem 0; box-shadow: var(--shadow-sm); }
    .highlight-box { background-color: var(--color-gray-light); padding: 1.5rem; border-radius: var(--radius); margin: 2rem 0; border: 1px solid #e2e8f0; }
    ul, ol { padding-left: 1.25rem; margin: 1.75rem 0; }
    ul li, ol li { margin-bottom: 0.75rem; position: relative; padding-left: 0.75rem; }
    ul { list-style: none; }
    ul li::before { content: ""; position: absolute; left: -15px; top: 12px; width: 6px; height: 6px; background-color: var(--color-primary); border-radius: 50%; }
    ol { counter-reset: counter; list-style: none; }
    ol li { counter-increment: counter; }
    ol li::before { content: counter(counter); color: white; font-size: 0.75rem; font-weight: 600; position: absolute; left: -25px; top: 5px; width: 22px; height: 22px; background-color: var(--color-primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; }
    .showcase { display: flex; flex-direction: column; gap: 1.5rem; margin: 2rem 0; }
    .showcase-item { display: flex; background: white; border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); transition: all 0.3s ease; border: 1px solid #e2e8f0; }
    .showcase-item:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); border-color: var(--color-primary); }
    .showcase-icon { display: flex; align-items: center; justify-content: center; background-color: var(--color-primary); padding: 1.5rem; color: white; min-width: 80px; }
    .showcase-icon .icon { width: 28px; height: 28px; }
    .showcase-content { padding: 1.25rem; flex: 1; }
    .showcase-content h3 { color: var(--color-secondary); margin-top: 0; margin-bottom: 0.5rem; font-size: 1.25rem; font-weight: 600; }
    .showcase-content p { margin-bottom: 1rem; font-size: 0.95rem; }
    .showcase-benefits { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.75rem; }
    .showcase-benefits span { background-color: var(--color-accent); color: var(--color-primary); font-size: 0.75rem; font-weight: 600; padding: 0.25rem 0.75rem; border-radius: 20px; border: 1px solid rgba(37, 99, 235, 0.2); }
    .image-container { margin: 2rem 0; border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-md); }
    .featured-image { display: block; width: 100%; height: auto; transition: transform 0.3s ease; }
    .image-container:hover .featured-image { transform: scale(1.02); }
    .image-caption { background-color: var(--color-secondary); color: white; padding: 0.75rem 1rem; font-size: 0.9rem; text-align: center; font-style: italic; }
    .faq-container { margin: 2rem 0; }
    .faq-item { margin-bottom: 1rem; border: 1px solid #e2e8f0; border-radius: var(--radius); background-color: white; overflow: hidden; box-shadow: var(--shadow-sm); transition: all 0.3s ease; }
    .faq-item:hover { box-shadow: var(--shadow-md); }
    .faq-question { padding: 1.25rem; display: flex; justify-content: space-between; align-items: center; cursor: pointer; user-select: none; }
    .faq-question h3 { margin: 0; font-size: 1.125rem; color: var(--color-secondary); flex: 1; }
    .faq-icon { display: flex; align-items: center; justify-content: center; background-color: var(--color-primary); color: white; width: 24px; height: 24px; border-radius: 50%; font-weight: bold; transition: all 0.3s ease; }
    .faq-item.active .faq-icon { transform: rotate(45deg); }
    .faq-answer { padding: 0 1.25rem; max-height: 0; overflow: hidden; transition: all 0.3s ease; border-top: 0px solid #e2e8f0; }
    .faq-item.active .faq-answer { padding: 0 1.25rem 1.25rem; max-height: 1000px; border-top: 1px solid #e2e8f0; }
    .faq-answer p { margin-bottom: 0; }
    .cta { background: linear-gradient(135deg, var(--color-accent), white); padding: 2rem; border-radius: var(--radius); margin: 3rem 0 1.5rem; box-shadow: var(--shadow-md); border-left: 4px solid var(--color-primary); }
    .cta h3 { margin-top: 0; color: var(--color-secondary); font-size: 1.25rem; }
    .cta-button { display: inline-block; background-color: var(--color-primary); color: white; text-decoration: none; padding: 0.75rem 1.5rem; border-radius: var(--radius); font-weight: 500; margin-top: 1rem; transition: all 0.3s ease; }
    .cta-button:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); background-color: #1d4ed8; }
    @media (max-width: 768px) {
      .articulo-contenedor { padding: 1.5rem; }
      h2 { font-size: 1.5rem; }
      .intro { font-size: 1rem; }
      .showcase-item { flex-direction: column; }
      .showcase-icon { min-width: 100%; padding: 1rem; }
      .cta { padding: 1.5rem; }
    }
    @media (max-width: 480px) {
      h2 { font-size: 1.25rem; }
      p { font-size: 0.95rem; }
      .showcase-content h3 { font-size: 1.125rem; }
    }