{"id":35,"date":"2026-04-18T11:29:03","date_gmt":"2026-04-18T11:29:03","guid":{"rendered":"https:\/\/miquelblanch.com\/?page_id=35"},"modified":"2026-04-18T11:37:02","modified_gmt":"2026-04-18T11:37:02","slug":"35-2","status":"publish","type":"page","link":"https:\/\/miquelblanch.com\/","title":{"rendered":"Miquel Blanch"},"content":{"rendered":"\n<div class=\"mb-portfolio-wrap\">\n  <style>\n    .mb-portfolio-wrap {\n      position: relative;\n      width: 100vw;\n      margin-left: calc(-50vw + 50%);\n      margin-right: calc(-50vw + 50%);\n      overflow: hidden;\n      background: #07090d;\n      color: #e6edf3;\n      font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Inter\", Helvetica, Arial, sans-serif;\n      line-height: 1.7;\n      -webkit-font-smoothing: antialiased;\n      min-height: 100vh;\n    }\n\n    .mb-bg-art {\n      position: absolute;\n      inset: 0;\n      width: 100%;\n      height: 100%;\n      pointer-events: none;\n    }\n\n    .mb-bg-veil {\n      position: absolute;\n      inset: 0;\n      pointer-events: none;\n      background:\n        radial-gradient(ellipse at 20% 15%, rgba(40,70,110,0.35) 0%, transparent 55%),\n        radial-gradient(ellipse at 85% 90%, rgba(20,40,70,0.4) 0%, transparent 50%),\n        linear-gradient(180deg, rgba(7,9,13,0.4) 0%, rgba(7,9,13,0.75) 100%);\n    }\n\n    .mb-container {\n      position: relative;\n      z-index: 2;\n      max-width: 760px;\n      margin: 0 auto;\n      padding: 6rem 2rem 4rem 2rem;\n    }\n\n    .mb-hero {\n      text-align: center;\n      margin-bottom: 4rem;\n    }\n\n    .mb-portfolio-wrap h1.mb-title {\n      font-size: 3rem;\n      font-weight: 600;\n      letter-spacing: -0.03em;\n      margin: 0 0 0.75rem 0;\n      padding: 0;\n      color: #e6edf3;\n      text-shadow: 0 0 40px rgba(139,180,216,0.15);\n      border: none;\n      line-height: 1.2;\n    }\n\n    .mb-subtitle {\n      font-size: 1.1rem;\n      color: #8b949e;\n      font-weight: 400;\n      letter-spacing: 0.04em;\n      margin: 0;\n    }\n\n    .mb-section {\n      margin-bottom: 2.75rem;\n    }\n\n    .mb-portfolio-wrap h2.mb-section-label {\n      font-size: 0.78rem;\n      text-transform: uppercase;\n      letter-spacing: 0.22em;\n      color: #8bb4d8;\n      margin: 0 0 1rem 0;\n      padding: 0;\n      font-weight: 600;\n      border: none;\n      background: none;\n    }\n\n    .mb-portfolio-wrap p.mb-text {\n      font-size: 1.02rem;\n      color: #e6edf3;\n      margin: 0 0 1.1rem 0;\n      font-weight: 300;\n    }\n\n    .mb-portfolio-wrap p.mb-text strong {\n      color: #e6edf3;\n      font-weight: 500;\n    }\n\n    .mb-contact-row {\n      display: flex;\n      align-items: center;\n      gap: 1rem;\n    }\n\n    .mb-portfolio-wrap a.mb-email-link {\n      color: #8bb4d8;\n      text-decoration: none;\n      border-bottom: 1px solid rgba(139,180,216,0.35);\n      padding-bottom: 2px;\n      transition: all 0.25s ease;\n    }\n\n    .mb-portfolio-wrap a.mb-email-link:hover {\n      color: #bcd4e8;\n      border-bottom-color: #bcd4e8;\n    }\n\n    .mb-portfolio-wrap a.mb-icon-link {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      width: 32px;\n      height: 32px;\n      color: #8bb4d8;\n      border: 1px solid rgba(139,180,216,0.25);\n      border-radius: 6px;\n      transition: all 0.25s ease;\n      text-decoration: none;\n    }\n\n    .mb-portfolio-wrap a.mb-icon-link:hover {\n      color: #bcd4e8;\n      border-color: rgba(188,212,232,0.6);\n      background: rgba(139,180,216,0.08);\n    }\n\n    .mb-portfolio-wrap a.mb-icon-link svg {\n      width: 16px;\n      height: 16px;\n      fill: currentColor;\n    }\n\n    .mb-footer {\n      margin-top: 5rem;\n      padding-top: 2rem;\n      border-top: 1px solid rgba(255,255,255,0.08);\n      font-size: 0.8rem;\n      color: #8b949e;\n      text-align: center;\n      letter-spacing: 0.05em;\n    }\n\n    @keyframes mb-drift {\n      0%, 100% { transform: translate(0, 0); }\n      50% { transform: translate(10px, -8px); }\n    }\n\n    @keyframes mb-pulse {\n      0%, 100% { opacity: 0.8; }\n      50% { opacity: 0.35; }\n    }\n\n    .mb-layer-a { animation: mb-drift 22s ease-in-out infinite; }\n    .mb-layer-b { animation: mb-drift 28s ease-in-out infinite reverse; }\n    .mb-node-pulse { animation: mb-pulse 5s ease-in-out infinite; }\n\n    @media (max-width: 600px) {\n      .mb-container { padding: 3.5rem 1.25rem; }\n      .mb-portfolio-wrap h1.mb-title { font-size: 2.1rem; }\n    }\n  <\/style>\n\n  <svg class=\"mb-bg-art\" viewBox=\"0 0 1600 1000\" preserveAspectRatio=\"xMidYMid slice\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\">\n    <defs>\n      <radialGradient id=\"mb-nodeGlow\" cx=\"50%\" cy=\"50%\" r=\"50%\">\n        <stop offset=\"0%\"   stop-color=\"#8bb4d8\" stop-opacity=\"0.85\"\/>\n        <stop offset=\"60%\"  stop-color=\"#8bb4d8\" stop-opacity=\"0.15\"\/>\n        <stop offset=\"100%\" stop-color=\"#8bb4d8\" stop-opacity=\"0\"\/>\n      <\/radialGradient>\n      <linearGradient id=\"mb-curveStroke\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\">\n        <stop offset=\"0%\"   stop-color=\"#8bb4d8\" stop-opacity=\"0\"\/>\n        <stop offset=\"50%\"  stop-color=\"#8bb4d8\" stop-opacity=\"0.45\"\/>\n        <stop offset=\"100%\" stop-color=\"#8bb4d8\" stop-opacity=\"0\"\/>\n      <\/linearGradient>\n      <linearGradient id=\"mb-meshStroke\" x1=\"0%\" y1=\"0%\" x2=\"0%\" y2=\"100%\">\n        <stop offset=\"0%\"   stop-color=\"#8bb4d8\" stop-opacity=\"0.0\"\/>\n        <stop offset=\"40%\"  stop-color=\"#8bb4d8\" stop-opacity=\"0.12\"\/>\n        <stop offset=\"100%\" stop-color=\"#8bb4d8\" stop-opacity=\"0.25\"\/>\n      <\/linearGradient>\n      <radialGradient id=\"mb-aurora1\" cx=\"50%\" cy=\"50%\" r=\"50%\">\n        <stop offset=\"0%\"   stop-color=\"#2e5d8a\" stop-opacity=\"0.45\"\/>\n        <stop offset=\"100%\" stop-color=\"#2e5d8a\" stop-opacity=\"0\"\/>\n      <\/radialGradient>\n      <radialGradient id=\"mb-aurora2\" cx=\"50%\" cy=\"50%\" r=\"50%\">\n        <stop offset=\"0%\"   stop-color=\"#4a7fa8\" stop-opacity=\"0.3\"\/>\n        <stop offset=\"100%\" stop-color=\"#4a7fa8\" stop-opacity=\"0\"\/>\n      <\/radialGradient>\n    <\/defs>\n\n    <ellipse cx=\"300\"  cy=\"180\" rx=\"500\" ry=\"320\" fill=\"url(#mb-aurora1)\"\/>\n    <ellipse cx=\"1350\" cy=\"820\" rx=\"520\" ry=\"340\" fill=\"url(#mb-aurora2)\"\/>\n\n    <g class=\"mb-layer-a\" fill=\"none\" stroke=\"url(#mb-meshStroke)\" stroke-width=\"0.8\">\n      <path d=\"M 0 680 Q 800 640 1600 680\"\/>\n      <path d=\"M 0 720 Q 800 675 1600 720\"\/>\n      <path d=\"M 0 760 Q 800 710 1600 760\"\/>\n      <path d=\"M 0 810 Q 800 755 1600 810\"\/>\n      <path d=\"M 0 870 Q 800 810 1600 870\"\/>\n      <path d=\"M 0 940 Q 800 875 1600 940\"\/>\n      <path d=\"M 0    1000 Q 400  820 800 650\"\/>\n      <path d=\"M 200  1000 Q 500  820 800 650\"\/>\n      <path d=\"M 400  1000 Q 600  820 800 650\"\/>\n      <path d=\"M 600  1000 Q 700  820 800 650\"\/>\n      <path d=\"M 800  1000 L 800  650\"\/>\n      <path d=\"M 1000 1000 Q 900  820 800 650\"\/>\n      <path d=\"M 1200 1000 Q 1000 820 800 650\"\/>\n      <path d=\"M 1400 1000 Q 1100 820 800 650\"\/>\n      <path d=\"M 1600 1000 Q 1200 820 800 650\"\/>\n    <\/g>\n\n    <g class=\"mb-layer-b\" fill=\"none\" stroke=\"url(#mb-curveStroke)\" stroke-width=\"1\">\n      <path d=\"M 120 200 Q 500 80  900 260\"\/>\n      <path d=\"M 200 350 Q 700 200 1200 380\"\/>\n      <path d=\"M 80  480 Q 600 380 1350 520\"\/>\n      <path d=\"M 350 120 Q 800 60  1450 180\"\/>\n      <path d=\"M 500 600 Q 900 440 1500 600\"\/>\n    <\/g>\n\n    <g>\n      <circle cx=\"180\"  cy=\"220\" r=\"40\" fill=\"url(#mb-nodeGlow)\"\/>\n      <circle cx=\"180\"  cy=\"220\" r=\"2.2\" fill=\"#bcd4e8\" class=\"mb-node-pulse\"\/>\n      <circle cx=\"1380\" cy=\"180\" r=\"44\" fill=\"url(#mb-nodeGlow)\"\/>\n      <circle cx=\"1380\" cy=\"180\" r=\"2.4\" fill=\"#bcd4e8\" class=\"mb-node-pulse\"\/>\n      <circle cx=\"1450\" cy=\"720\" r=\"50\" fill=\"url(#mb-nodeGlow)\"\/>\n      <circle cx=\"1450\" cy=\"720\" r=\"2.6\" fill=\"#bcd4e8\" class=\"mb-node-pulse\"\/>\n      <circle cx=\"260\"  cy=\"820\" r=\"38\" fill=\"url(#mb-nodeGlow)\"\/>\n      <circle cx=\"260\"  cy=\"820\" r=\"2.2\" fill=\"#bcd4e8\" class=\"mb-node-pulse\"\/>\n      <circle cx=\"800\"  cy=\"100\" r=\"36\" fill=\"url(#mb-nodeGlow)\"\/>\n      <circle cx=\"800\"  cy=\"100\" r=\"2\"   fill=\"#bcd4e8\"\/>\n      <circle cx=\"760\"  cy=\"900\" r=\"34\" fill=\"url(#mb-nodeGlow)\"\/>\n      <circle cx=\"760\"  cy=\"900\" r=\"2\"   fill=\"#bcd4e8\"\/>\n      <g fill=\"#bcd4e8\" opacity=\"0.55\">\n        <circle cx=\"90\"   cy=\"90\"  r=\"1.1\"\/>\n        <circle cx=\"340\"  cy=\"60\"  r=\"0.9\"\/>\n        <circle cx=\"520\"  cy=\"150\" r=\"1\"\/>\n        <circle cx=\"680\"  cy=\"260\" r=\"0.8\"\/>\n        <circle cx=\"980\"  cy=\"200\" r=\"1.1\"\/>\n        <circle cx=\"1150\" cy=\"110\" r=\"0.9\"\/>\n        <circle cx=\"1240\" cy=\"320\" r=\"1\"\/>\n        <circle cx=\"1540\" cy=\"280\" r=\"0.8\"\/>\n        <circle cx=\"60\"   cy=\"420\" r=\"0.9\"\/>\n        <circle cx=\"420\"  cy=\"460\" r=\"1\"\/>\n        <circle cx=\"620\"  cy=\"380\" r=\"0.8\"\/>\n        <circle cx=\"920\"  cy=\"460\" r=\"1.1\"\/>\n        <circle cx=\"1120\" cy=\"540\" r=\"0.9\"\/>\n        <circle cx=\"1320\" cy=\"440\" r=\"0.8\"\/>\n        <circle cx=\"1560\" cy=\"500\" r=\"1\"\/>\n        <circle cx=\"120\"  cy=\"640\" r=\"0.9\"\/>\n        <circle cx=\"480\"  cy=\"700\" r=\"1\"\/>\n        <circle cx=\"980\"  cy=\"720\" r=\"0.9\"\/>\n        <circle cx=\"1220\" cy=\"860\" r=\"1\"\/>\n        <circle cx=\"580\"  cy=\"980\" r=\"0.9\"\/>\n        <circle cx=\"1040\" cy=\"960\" r=\"0.8\"\/>\n      <\/g>\n    <\/g>\n  <\/svg>\n\n  <div class=\"mb-bg-veil\"><\/div>\n\n  <div class=\"mb-container\">\n    <section class=\"mb-hero\">\n      <h1 class=\"mb-title\">Miquel Blanch<\/h1>\n      <p class=\"mb-subtitle\">AI Engineer \u00b7 M\u00e1ster en Big Data &amp; AI<\/p>\n    <\/section>\n\n    <section class=\"mb-section\">\n      <h2 class=\"mb-section-label\">Sobre m\u00ed<\/h2>\n      <p class=\"mb-text\">\n        M\u00e1s de dos d\u00e9cadas construyendo tecnolog\u00eda, hoy dedicado a\n        llevar la <strong>Inteligencia Artificial<\/strong> al coraz\u00f3n\n        de los equipos y de las personas.\n      <\/p>\n      <p class=\"mb-text\">\n        Dise\u00f1o y desarrollo soluciones basadas en Machine Learning,\n        Deep Learning, LLMs y agentes aut\u00f3nomos: chatbots, sistemas RAG,\n        herramientas de productividad y aplicaciones con MCPs.\n      <\/p>\n    <\/section>\n\n    <section class=\"mb-section\">\n      <h2 class=\"mb-section-label\">Contacto<\/h2>\n      <div class=\"mb-contact-row\">\n        <a class=\"mb-email-link\" href=\"mailto:info@miquelblanch.com\">info@miquelblanch.com<\/a>\n        <a class=\"mb-icon-link\" href=\"https:\/\/www.linkedin.com\/in\/miquelblanch\/\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"LinkedIn\">\n          <svg viewBox=\"0 0 24 24\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\">\n            <path d=\"M20.45 20.45h-3.55v-5.57c0-1.33-.02-3.04-1.85-3.04-1.85 0-2.13 1.45-2.13 2.94v5.67H9.37V9h3.41v1.56h.05c.47-.9 1.64-1.85 3.37-1.85 3.6 0 4.27 2.37 4.27 5.45v6.29zM5.34 7.43a2.06 2.06 0 1 1 0-4.13 2.06 2.06 0 0 1 0 4.13zM7.12 20.45H3.56V9h3.56v11.45zM22.22 0H1.77C.79 0 0 .77 0 1.72v20.56C0 23.23.79 24 1.77 24h20.45C23.2 24 24 23.23 24 22.28V1.72C24 .77 23.2 0 22.22 0z\"\/>\n          <\/svg>\n        <\/a>\n      <\/div>\n    <\/section>\n\n    <footer class=\"mb-footer\">\n      &copy; 2026 Miquel Blanch\n    <\/footer>\n  <\/div>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>Miquel Blanch AI Engineer \u00b7 M\u00e1ster en Big Data &amp; AI Sobre m\u00ed M\u00e1s de dos d\u00e9cadas construyendo tecnolog\u00eda, hoy dedicado a llevar la Inteligencia Artificial al coraz\u00f3n de los equipos y de las personas. Dise\u00f1o y desarrollo soluciones basadas en Machine Learning, Deep Learning, LLMs y agentes aut\u00f3nomos: chatbots, sistemas RAG, herramientas de productividad [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-35","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/miquelblanch.com\/index.php\/wp-json\/wp\/v2\/pages\/35","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/miquelblanch.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/miquelblanch.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/miquelblanch.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/miquelblanch.com\/index.php\/wp-json\/wp\/v2\/comments?post=35"}],"version-history":[{"count":4,"href":"https:\/\/miquelblanch.com\/index.php\/wp-json\/wp\/v2\/pages\/35\/revisions"}],"predecessor-version":[{"id":39,"href":"https:\/\/miquelblanch.com\/index.php\/wp-json\/wp\/v2\/pages\/35\/revisions\/39"}],"wp:attachment":[{"href":"https:\/\/miquelblanch.com\/index.php\/wp-json\/wp\/v2\/media?parent=35"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}