{"id":11787,"date":"2026-08-04T17:40:09","date_gmt":"2026-08-04T17:40:09","guid":{"rendered":"https:\/\/mechtech.vinte.sh\/pr\/?page_id=11787"},"modified":"2026-08-15T01:53:22","modified_gmt":"2026-08-15T01:53:22","slug":"servicios","status":"publish","type":"page","link":"https:\/\/mechtech.vinte.sh\/pr\/servicios\/","title":{"rendered":"Servicios"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"11787\" class=\"elementor elementor-11787\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-531d5b91 e-con-full e-flex e-con e-parent\" data-id=\"531d5b91\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e5e5237 elementor-widget elementor-widget-html\" data-id=\"e5e5237\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     MECH-TECH \u00b7 DASHBOARD DEL ESTUDIANTE \u2014 bloque para Elementor  (v4 HUD)\n     Lenguaje visual heredado del home\/splash de mechtech.edu:\n     Chakra Petch + Koulen + Oswald \u00b7 rojo #E60004 \u00b7 esquinas recortadas\n     (clip-path) \u00b7 glass \u00b7 texto delineado \u00b7 scramble \u00b7 punto de estado.\n     Pegar completo en UN widget HTML. No trae header ni footer.\n     Todo el CSS est\u00e1 encapsulado bajo .mtd \u2014 no toca el tema.\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n\n<style>\n\/* Fuentes del home (Google Fonts, subset latin, mismas del splash). *\/\n@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:400;font-display:swap;\n  src:url(https:\/\/fonts.gstatic.com\/s\/chakrapetch\/v12\/cIf6MapbsEk7TDLdtEz1BwkWn6pgar3I1A.woff2) format('woff2')}\n@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:500;font-display:swap;\n  src:url(https:\/\/fonts.gstatic.com\/s\/chakrapetch\/v12\/cIflMapbsEk7TDLdtEz1BwkebIl1R5_F_gUk0w.woff2) format('woff2')}\n@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;font-display:swap;\n  src:url(https:\/\/fonts.gstatic.com\/s\/chakrapetch\/v12\/cIflMapbsEk7TDLdtEz1BwkeJI91R5_F_gUk0w.woff2) format('woff2')}\n@font-face{font-family:'Koulen';font-style:normal;font-weight:400;font-display:swap;\n  src:url(https:\/\/fonts.gstatic.com\/s\/koulen\/v29\/AMOQz46as3KIBPemhXo8sOUcUw.woff2) format('woff2')}\n@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;\n  src:url(https:\/\/fonts.gstatic.com\/s\/oswald\/v57\/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlWHYjMdZwl.woff2) format('woff2')}\n@font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;\n  src:url(https:\/\/fonts.gstatic.com\/s\/oswald\/v57\/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlWHYjMdZwl.woff2) format('woff2')}\n\/* fallback por glifo para Koulen (no trae \u00bf ni \u00c9): Oswald re-escalado a la\n   altura de caja de Koulen (cap 70\/100 vs 81\/100 \u2192 86.4%) *\/\n@font-face{font-family:'Oswald Disp';font-style:normal;font-weight:400 700;font-display:swap;\n  size-adjust:86.4%;\n  src:url(https:\/\/fonts.gstatic.com\/s\/oswald\/v57\/TK3IWkUHHAIjg75cFRf3bXL8LICs1_Fv40pKlN4NNSeSASz7FmlWHYjMdZwl.woff2) format('woff2')}\n\/* URW Gothic Demi \u2014 fuente display del cliente, embebida (no existe en CDNs) *\/\n@font-face{font-family:'URW Gothic Demi';font-style:normal;font-weight:400 700;font-display:swap;\n  src:url(data:font\/woff2;base64,d09GMgABAAAAAExAAA8AAAAA8TQAAEvhAAER6wAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGkIboT4cgV4GVgCGVhEICoL0IIKWdwE2AiQDkVwLiHAABCAFh0YHnVAbEL0XxNt3FLcD9PxT\/\/FHIW5HUm3IfOCRgWDjAIH9vnv2\/\/9pyYkMBawkTbVzOnf\/wyoilCmDenIiKoe3QCKHjbCDYmBDIrsIFbyZ0hS8Two2W073RGGio6Nzp5c4UObxlmezaDF0tbxW8rnI7CW3MptPvtntrmbhxdPysJ7kqiYFK8NrufthmPr35\/ktFEra0n\/KsLRlX\/Bv7KbM\/fvg2VGL3dANDl3ytFeyCIxb+Kg59fJ8\/Vifp2+\/2Q3OD6MFRyqSyAKABZZRLExqbQjLAwsTiaSoh2Bu3aJgxMhtwIABAiNyI2oVsGhGDRhRo0pyDJkiFm00iomN0agffBj5pZvv+23Fv\/p9Of2+qiUN1FUPAewAqEFW51lJFNYA+52XjXsrbQcRZHvm\/0udBuXg3vIHgDeCidfK5kZ0tpy7mMws\/808kkCAll32uMsfY+UUS3cu2sYD6\/6d20JXguLaSl0G0OeoUMh7IP49HIAHHamC2+yBZRQlwCH+fXWfXS+36sQz87nQh7VQYeUIJ50S4Bm+0I86mVL+KWz+29SYAxOHGTUjYhz\/S3\/EiJGEHW65HMDvESYao2XHsVjbnuiwkFgA\/zYn5PLpN2m3Qe9AceQQsZS7PE5oQNgpnfpKO\/07neQkpak9lTcAmnonRWUYRpRWeX0wJJ1EEAKbgyCg4GR\/ZmwrFRrVy46z8kANbLd3JAa2Dfo\/1uyxotJCrECMQiOAARyM3MI\/tazZfhdnyCvP3ciTLRzJipu++LcvpdkhpSYPeVhFnYJszzmGvKAW1EpS9BiJkpb\/X1XfFRDIY\/7SilLLrp\/Wh\/0vC3nx8EA0QgIJWgRNF9o6dlf7TZaT4AF4D6QkyxTd5PpLbbKl35pSSm1TbWNOlinDnKlttW9LtjFjlqHzwHcq3\/gvFIz5pYp72djkxRQQC5\/3RXn5ZprVy1KHOrQWEZHD7vb1uRn3+HqnPLI9ZBCRICFIKpKGwT3+S5flbAGajLWeim0Uf5\/+7VzNjq0LuaxWYTqIVfzxqR\/i1KbgKMlzt33JMZKATmDZ6QZQL\/c1knIPwAffz6\/RZbVfcM4fCBTgQRBLdYPq8RzECy9BvUosSOISDxpqaCDggL8oT98HSTjIXddLFkDDDLdp3Hmzux+tcYTR1zNokJ13VeEql8D3+vveFBxCK3bJS1\/GWlp7ar6uRpnxXMibru5NPbeg8Lr1YANH6Dbfb3hbfs4\/ofuM5Be+xE3GWeWlOEu+DMlamZSfRRQruIXYkBq44XHQ49EYGzcoUg+6XOf0Z1XNpcx0Kofn2EyXHZuTTb2t27Zsl+6f3p55rV3d3sL6fZ5t3+xgnWJ36nbW7szv3ADjNv\/iOmw8hoMROBMJw0uanuQRpU5SX9ZAYM4Hr1E\/tMATDrGI5TQ34chchy2zl9yfVh7T4jlN+IEQpjNq\/sZrBrynRyWGg2eT3v\/dLYK4doP8wrG7wW\/cynX2nGYLnFyjd3EfmcdgPCcDPyjCVIVd7rWbRwi+TCME6geJScTpasFHiCfQBszaX+pYUJ3HIpJHUinpYZk19N9AVa7k2kAKMO+vWda5xJ7qHuod4w4MmrQIPepryjf4zo\/3dVOa4X1kNaHIOopDOiHTRIcIWSJIyCi2GjXkMGKM3t4XLgFkwwmPcx5UayljgYGRjYyOdCk86gR2dipZlA7JVGQT6G18LSEQkZBRqnDIFaHcMLcmN5ytobrAFQilUC5jUAubPcdvEBCRkFGkb5iyYJkY10wsrTHbKFcJIWMSgYsqegefJQQiEjJKUBe5xuISHJwfDbiYtL\/vWFBKlK2TngJb4DpmDfsN3JKRpUuLWktsY5O1Zt3uQ7Dteg3NI72yX3asq6mKBGxmmBOhXvyDbeMWQfCKHChl1RNawfBXIxgzQW\/149xDe0b3sRMQPhg22bLP6xjKBk5ADmOzhNAio9jqBY3XCD2ZcluwDAYX82BpjbY5f+Cfn+axZEb60AXOZKPo8WVjslBaqeOeQu49tArz08lFZ5NAHTSE1DFFihSzd6a1FmJpGzVmlcXabKN0AIee2Od2zI3ilhSSEjjMsYsG0AWfaqaFxTiFNtPooNs\/BEy7FiyD0WFOsbRm8I7PQ6FxpHIdm2nMgWwv0TkdypQp0xrtDAG+KMATiDhIhmZAZw\/UqQSvdBvJFNDeApOQi4H6HIWkknfKLUxUq6JdwOZ1j\/VueUcu4B0ACAgICMiAUTkNxkzQO\/1SY8Rtk624CsKQW8CukWWoYXVo0JKQJYKEjNJQ17wxvn+mmzrgW4jYSI765I5E7bA3wPgMXFYwUrtlrRg2hDs12MOPEoSIhIxiq18ZRo0YM0Hv5EucsWq7tvaQkOtCizALb0RENblpv+m4gXJ1oi2JAFJglxfSKot5Wrfq2CKua1DC7yQIEQkZxVb\/NmwaMWaC3u6XU0bSNrVKAtAN+0kUxKpBCDzCHGJvcUZ3sgmRJkSBAgAgICAqH8iSIodPUhpHSV+3Th4AAAAAAICPgICAgICMSJN9uzyH7gXujEuZ6HU0KYwgZy0tYZRlDsUbFQWPTi\/ggqCf7xaoGfbMY6Dl\/tV5SQkpd1XtDoFy27GObNprIZbrOD1We+uBCgAERKpMi2TBb2kbfExeFutLHLjKDoiGXflIqoDcBjoG8\/DNVtZVAKbcTmIjpm8txNI29pi7LNb5Q1oXPOz9DVEJ9IbC44tpgaJjFNW55i0TQscxcqboe7iBP2Ny6AgNAofcLLCyA6CHBZbg5wjnnuQuv26AFTVrhdOiiSlrOm93wR0p1V2DHtXncJlP+Z+60942c9uU8k3DbYUp\/ib\/yiz+s57c5oX0suix2GqeDgTeQqh1gg+4Bi8VBYw1fWsRLINxxcyyMOvCeMJ+7fN5tTZsLge8iggb5OTS4JlCXtXPi7R2zZ9a02DGnAVL28i6TTMZaA+HOcJxzXeOhToKdSQkBFhYRFaw6ERERBwAABsfUrqT7JWVfvzEYXZOgIEAg7OhcoLhwcDAwMDAQIGBgYGBgT2+tGPC0YUnjYmJmRfX5QXDbcH9jvdaiWHthZU3RCY2LHjBnqPefbFl0yALuQlbp2CN6hqxYEGmZ8i1C+ga8lh6HOoYL0cXeI5nMQX1edHjjSEgeiaBQ4AadzDlhod42l0RzjYyfSY4suiAlBP4BAkS3HGdUzQPUr1d4PzHG5F8KKrxuVnReGkEGYHPgy\/5z3\/++ysrbzEiAUaSsmS4lggRIrO3BGC3N6j6NXWXuRmFf6btjstFMOr0\/BMGW8jKw5w58\/\/XbVCenOAAB\/MGEyiYg1AUOBGiuIoRxwNVGgI2LjK+TEHEclF06pSkl1myZZahW2scw6QNuLbYSmSHGVlm7SF12FFyxx2niktcqeMeT9qQQpIDAtiHn+RvLrrUo6D\/dVJTwPGu2y0ccNt5yOlyIJAc3\/YXZ3xXNohYMFgeQkDAvQAVUVfHfm\/SRJI4UJl5XoYsEDC8YC9h1OzEv86OCyKyLrD4cseYi1+a1j0h4vJjlgQY3Zlo92QIKLd7cEj9Gi0E4EPwxQPjHmMKCq7X\/Bjo6Zfxu8DdfOX1lAf8OPwTmN+coltePgJe\/IcAoKN2jAo5ddFLg7w9JcMrGnAeOgQ0B9321VNrQ8i1\/LQK1sL6Yi2u1+v9CRN8wA9koQhtmMLyhH1rHplsNkTeRT4o+5H9yf6dVHLqV29+tNXnz8j+\/Gx1oLXB52ruLQB\/el1bX6\/v17sTRniDL4AmO5xED+QNa39j8z+PmL+Hmdxk588c+r\/Lo6wW7fv29f3Z\/ywbawsqxVIIdV\/U0cM1kpsDGYj\/RBk9WyXFhnkQV2dX7ICrHRaEKHR2AkKl+jv+NPTnz4ekPSwHjpw4w3Hhyo07D57wCIi8ePNB4suPP7IAgYIsESzEiLkw4ZcSefHRSuzFx\/\/koEmQKEmyFKnSpMtAx8DEwsbBxcMnICSSKYuYhJSMnIKSipqGVjadHLny5CugVwh4itkyFmuM22CrLbbZYbuddpm12x577bfPAQcdcsTST4nHHXPKSaedGV6dYgblIWqxmVFlyJpUJNSgyYWoDyVhSjUnIEEAuFMHYI95PYrUJLjoQE5RrTNegMeYjOVSrnEOLu7x8I9zO7Fw50uMb\/ziE9J3op89QtAat3jGW7\/l+qwwZKURqwxbZxTwjGnrTXlerBKoLU5xi6ethMUvNqDmMwWQMwHWPUB\/AZx5AXDeG0C9A9R1rlpe4EDhYZ5QCkUeasJqUeShJqzGE1CBfPUvdwFpR2zBiSKQIgQYD\/clwUmDTzjUoRsPJ8gykuUuIFkvKg\/DSQCIwjwDztjQuUIgKqU9NJdTP4xCBKhLSwPebB0oIN\/EUxSCQYAYMDBThUxodLU2Ib8QieTGfeEc2hMBk72HSE6S9EsejF+R\/OFFkjeRdwQkCmNONWBzJef8pMltw791C4KsuQx4DqXRpGB7Ygyw4RoRNIThyWmUc91DDLgRzImIusKpm+OxYnUU\/LXY4ANs+HQ8Lwm9Vy35SaJWv3+J7roZHQZrFSgggC7wy9itRK7HouFeUaNPoQ8tHUKt8T3vKKmEFVYENGt21mwj\/VCXgCLifmNWbbD0qstRjsPTT5yOZ18ubAF8zGx3pbuGCSI\/UDeYKTYvWFXsvRW1RnQefjtPe7kCuyFHXFPQJq0a5\/4oiiQxihSC9m0MrQ8ocwRxa+hGwg59kngQCBZpuW+GEkfcDMK3MHu0k5+FhogjN8f2l7aZzUA4ghjak7vIEkWSuA0YQ2WZAHJtdvlc89rd2DXOcE1nNBbCKo7bqtzF8aT9sygtu6H7fKj5HlDEhDNIa7GYrDNCWytFRPgNj64OyBqwQT1tsBg2fZAL1IT2GSztzk5qRML4bCnRe7zi39+gV2LSiNi064id2dJsh30sXh9EpEKdI6tdLT+JKMMi1VmIjRV4su7foz8u1Z626RIxILOyW6SViFen9X3IIVLSPnBL18wzkWpVWyS01NLjephiM9u3GLzTjdTXpS\/LjKudrRpk6KFEpJjiebcSHXJ5+AZ\/9QqBWGjxGvuSpG2cbRon5py9r\/X9W+y2GccYdSzz9VnRilmo0NmqM4FsfS1gxZhDroKQgjBomTeSH88fG+5cq0PuPfeWef9mGSCSmcH7SRNcT5yhgxg07soVWB+sF2spjxS9V1+KTCbKF53CyLKhO2wivGUMlvhscm6C7IpNBHL5TN4enTL3kDtnhsKNxWdIDYMaYRjepoKBX41kNfGrMhR7\/YTo8VSd2C5bgdgwRUghHntVDvQdB0vwaWzD2IgbnMS3DbqIHSD8fSMVCiOsyWrHLYPWsJU2RN1kLVU0oJYg0Ke5lX24sgLzPTLWuH6m3\/h0ihXdWaYraZZpyJ69I7lfQgxihcoxuf3c9avLU+zcsF2XXUNGTdMj6qVShqhRc1NBT4rBtWtuckjchEsG+bU14maqQpT69RPrrzaenL3KmSu8YRsYBBISFgaDxjs68g8rDKInsyYwyG5i651qTLEWWLjiDRhzS\/GMehHEOdIhlAkjBdezDXXPhA4D5uIwUyv0bBKj55OoKfAP0Vm9SoPuBM66zLerqbLjFcGLO4Imyg019CDKBHIDJduK8jopQtAk5pdwvKxFvdrqTFruudi2sKMzxQs8YbFo2HNhPqnt2cauY7tiZaUzsU3OmtbC3+sGP8FgqWQcTMdZCkNPXRY1KugJhIg2+oUE7xmZUK2w86LNFVNgGSkCKyoliwYe1eKnKipnVzii+QVa5BHlvMDDOJfrRV6gWvzs2Gs2IDYMmePhTGlMRH6wjV2rhg+JjCss7jVsVxyFKGmQGjtFc80xwP6tnjRJRdUsvmDV8pIlt0RjoYm2WAjJXRyqvf+I2OZsY07MElvQgbAuLjcBDhmqc16DKMYOdpbj+ZpyuRhdZAsGU4FcxzbYNJRb0dtMFWsip4\/b5v3wGWTiKJnUljJ+SUZusJGOXwQnJg1m2PuZViCKGVlBQaYpJ5CQprhGxqua9WYJ\/hrjo0Kdk1vXugFvqISKjkonSCXJ1TE2bZBmKVPYor5OPfSUX4Vqu4ClZSnLDaCpYUsVPTmbk2FKyrqulw0N0CoJhkrSMOPYpNHxJpaaWV02Ekc4UpZC24pK0CVnrdnSM1E26V5ZTXq4iMLHZXJ6Sd6ZCataAivZ9WNDYNGrOsD8bgLbVIl\/LmVZ1W1xsoviEa9lE6MWZuRIALtUPLZzi+F0QrFNHXQcTuLr451Gbe+sA2mStIIax2tj0Z75PEigDKxSQLdxg23QG0bJrWE4Q+O2mJOyQCgxCCgG4gySmqP86s70YFjSlDf0Yco3SQ+WiQumQr0UkqgNZS9kA5Y\/yUbAMVNuUI+bsDzqdLp4+Lw\/YGBK0pRX3ppRKtxb5B0LtLktOdOSb\/C07YadDVVmbAb6ZxuQtRoJwhLraAQHvEc9jUHU1\/IEASOvoDOcOhp\/yBVcNXZYW0cbMP57bsJuRewehA89moopPnPXjeOdsE2EMcsKtfYukNaP\/bhrNxCfRXcZfcWYXWi\/uhLbm65oX0GEnRcrZpLEhUCxzfmGWMcNGYQrGB+sIX8QYpA9I4xeoxhA3vw3ysYsnSkpiGVkEuEB\/+IG0AhqhYqEkpZJMJ0Us2ZYcTsLrB2MCD\/MHdU5Dws99fiuL6i6UTya+YxG1r+f6K7YynOrWhbUm3m8VSa2U3qjInSBy9zm+R7W1uDj2Pr7lC0yT+LranX8EfXC0UYqTFVz2PgnnVX5tlAyTqcDLu0kGBKoNvcffME4vLr1q1m\/zRo4CFecd0Xjmr6ZrJUCiolLxqyrllVdmqIyBYkNE3yu3\/r7ip\/3SuY5Nq1ouh5f9OiEG\/bJJRMGq6cSgKHae9wPocp7SeoPc\/H4Y2xjOIWd\/m9CHduVpZ9sd17MSki4Fp52UqGasRxoAjsPwM8nWq6o\/NugnhBj7HZBPch4naz5NSBDSf6cWxqRvGWEC9HZDTWI9IEYdu5cHSt\/9qbtdm9IZ7XWFKOHnWviOWvY7l3tP7cNQsyixARG0yIEOgLwe8Tukl7ViholyYCHbOTpiYZtmFfmEvAwtvWfmepCAWM3EDBNEBuXJTI0mF8tEur\/UPk0utInqpCg11Iyv4qeZ2s7wgz6ZcG3v7ska8mZaBbGhDJvlcWH2+Jzl\/CX2A5CiPuztutzBqpFjaHNE05T7diTsea\/hqDj347IfYKuTtwaKzv6piSOGD9sqAJDpWd6zWmqun5g7EzV3dXhjdDAOi9TzoH9PyF41Gq1D8Zs51sp5m5PIijwjCkADrZSHPhMsmHnnFG1xMi3+nAZ82Nix3i4ExMr560nyaDGAeK2bFeMQCkOxl+OMLa8ZyrtWei0arGdZJK2Y2ac8oLt0iWDPCdlykH00BnX6MQeB1YrVR3i63Nr8GDO4tk7tmT\/2wUarPkA5aaKZ7NYCkRp5c+S5U5Xw+bol7U3V8bBCtBBJ9SwU23kBEV9jwNzOwCzpoSYrwJ05wY\/eyy9Nc\/37Jy3MQeClRuuu7V1X1SZ7cqD0EL6EtvKBJdtxklk7X7thC7dYtUe5zYQmx5ruG1uccCMbeAP\/J3LWcKXmhcOmJ197KeS6l+6D6QREEvd1kXiJXwjEPpG3qRegJqBrPAEWQDhpHDDSWB6zQT2VanWTuPdSCoddGle3W4OIxswBpPGJiFMKRuk33WMUcHh9SF1xwkbrXE95zk7emQmueAtFjwgbSbIxdJ7Xyc8fH0fC6IAdwCzKGKBg9AgNBw0N6kXsr4oEUo3pDfvkJqQxCImJ9yF+XqiUFRgvgsGpGqYkKwUWzDLjq0Bj71ypmcCeTBIhAaC\/uZPFr2As6Erix7SiJfR\/1APnAE8EeZsuzwHmql2p4fB755+ab0qOra5e4rt7Wl+5A+84cot0UNrmCr6RMo5sChNRAzSucVddBgd1tmIDp+lyu95orAln28m\/bwG\/eyNmqvTQvmkmxDPkT\/XpgNr4t0PcYVKP4fxoooHwqZDqHd0N\/YNxLgMrjs+ndVTzhf7qahT0DSXrcnbbiF6\/zweRt0\/ew4F0\/qVxZxgd6DDwZDE4wPepMZis0HbJiBlO0g8VJMGjaxoSX20gP2iZE10X67z1OM1q7GiKc9+ObdH8lu5zxlpsP6rOGiMgnelWpAoRwuuwI3Sd2nLZ+EMAtahtM6VswgWhR17n9D1N8LIF5yI0hull4jeQ7CfqAwDc5QRe84Ufygas10tFdrFRFtbDqxJBCaCPDJdL5CAudU07alcSUQZe\/0mVZ1UPdGLJduCxpX+Js0BKzdg+Q8SZ+yA8WARVpXux588TFWKZGgjn2VGMo+Grg3Dg89JV+IKklNJIDzN+okfdl9RbU+y92zm3NKTOvKY9jk6duTmu0w9Tt2teaLMoRzEHlbVMoTLN6Wb56NTkLWAnwqg+WhXvDH8qVTLlFUGLUU884lhn0B5MgR6UaqMBygvqCIFSOtKCc0LjFAcRhLOBpfUlPddZQW+MbIylonTpGIhnpWZs6zWeOCA0+R3zTHSpSiTM1qNO0QzLhSgprBEsLnlpDk6oWdW6bJzRII7ww2ectmdCMoleGpj67TLCMguOJKEEHlDcx2OLx4Ika3jEwDubFlHwIIN15tDVx51I5X8z6ZwCWU09H+DyfYmTYK0uIHplPARi0IkreSNIQRq+AAoTgFvqYzZedQEK+eLdVYaeyxYsVSGHEWVxpBNg+vLcLerqoSTmcN+v4VjtoKHQnuSaIn+FcgOAAyBXaEjkWfLPnhl48kdLaaUEZlHwhX3Db3yXY5pSJvLfNGn1LgVkc2U3Xr6Ujz2nyWD+EwVfcyhEG39qYxsD5ABO1FQq8s3gQf4TmZr00\/YDYa\/+2tbzLieYWWTS7dCMV\/33r151duf4sTN1\/rELbn7wZjsTX4MGT9oBfiw+70wcv48LCQTXiAzd2JpDWkY8xNet++DwvbkGWoO+QHMPkhdjD5hXrsZ+JbqlAYdzkmzbNFFFzcYN68+UgkQAIMgcuWAUlmrgy7etTWJ8fbI+TpxuZcC+TMkkAfiDjpQhuPuj5yH3ZeBz9SdJVuTRWhgK48Zzfx+aQu2GaVCwikqdWbXHUxVU07tKgvNYRagF6f2RUpv5pwksRW2eFWWxXy30EkhqyvSTFo+k0cMtGw3dKnZJhYzab+HI4LZdujxMK5kOknaYH2jknQQ4qqQsMcevTX\/RLm1w3SzPiFkCJ4I4bO6KDs\/5jNPg\/EsTEksQ4rwpZ0kW7MfCy3JIS\/sWOCSvuYYWXdEcFyrZvPcUijhnUICGrcdix5NZmmPdjwYfwu77Lrvp460c6s0QS6SyfK8czvvm\/QeKOKYvSo2eWfrrGBrYI134Gyf\/+mcEtkreItNO21s5DhQRQYz44ycki6\/zkXHV5JIIeH9yH8AQPgNopZFwdLGpsaK3lPR5Xv4Ki81Q5Zzd\/\/Xgq+gwPTY9\/jVqjXtQ9TXjRp2puNBZzPoiD9dEYi3JoQYoZWo2hlLxwVGwABkhgKNrBHKVYtBY3QdFcfVJ1RX121p\/ivPAEiJcEh0SVjloJGnFoPYN1SsYd5Gua2lDhW2SFnIzrVSvvFAWGo6bg1Cp2UiMDiHihRJolyqp\/SZgDRNakgpN1ZpwwKmMMaErvisr391zsomwXboVz2SFlgCOqGZtWUaAts2OAb+7pfuvNMzVSXVb51NVZqwB7ITmlWgMsPFVMlw6kkdtQvPmIq5Gk123aHQoTVhQ16XRxhju7xNrauPA2ycL6NCV4rip7qIGa9jZcLA28LEr506U8mtzjTcvBGg+9Zh8KBfCRdjPM9jAphVreODo8qA93rYOxB2enoumxFhAqHt2mLFSRGsDX2N+DWpkdcgE7\/f9mEHgRnsB5ef\/DaszGisnfQpFPDbrpbnhaOmvsZAJjMxjtN37lxnOrisJqh33x0EV5xDiaFJnrnrUidlNnJRnep0XA9ZHJEl7BMlMsklTWcb+MnkEo9TRGtNMTumrx4nX\/+I9IHMDo8hQ7rkVPuDa2J9jnw2E7rYTWdPspttOz01yGoGSbnEUhAVbJk4RnP0ghek8JGg85HuPmIM5D03HFNWwDZyuLrHKyZ+m8PAW0IATVbfkk9OZVJTVGd1RL4i9Ii\/sQfKFd4rftcL4lidneKR487q2Oq+5eAmPLnuABF2RSeXu8sOFO0a3gD5CBhBiMyAUUiHwDsWmgIl5wy\/EAKSYEEsW1PSNie9nn30jg06EqAE8WJqgCJx56lmsC0qh16FCZM0O71TCceOS+RJotzhtl2m+I6NgCcz3W2n+h4jNL4+bJLaJiiss\/rRk2687zIjREaj+RWz8OMuh91yMk7oodkzUF1kcnZ6J62iZlcWlqO0ZRpfkvlhBI70JgRjiELhpsZ1XsZcdU6+rJVxbW4Ltz9rkrCJJyJabJM7Dr9huh6G0s1NU6hx6piY1NFUNlR1avq49UdCzg89xYzldGD7y8GDT1keJr+vaKzNIiw770GT9f\/LUZ7BbM88krsIx+GXPgIL9zuA4MJzx8BuxZ0MDOtxfI5Zs7MrVerE6c7abbmLUdy3H2rpAj33SGd2v+gfxiZbtV9WTlTPYz8pIylIEa\/wt6SjAHJWu0MPzcxVbI\/qEI8bWfEOPlx0XW3O2bvHj3Td5Cqt0VRlC2bRY5Yln9vK2BKn2LZ4m\/huk5M28lR8+VIHUnWQ\/+vQg6MPcfjK0SRnWBzVy02h83JU3+o6QfilxILlEyMfkGx1Ad4WBvxxa9XdxRd1i97BzVQ8pV6dqtBjKpehzDeqleGt36LLalDorukVkdkplDtbmfoyLpByXiiN84PKbq3fnNnlcZs6m+J4XDJUNoJqLNjmpPDtuAEFOv8bQXNneS+CcuNOfmysk\/b2BEShfmBHWVbOnTR\/Utb3QVAGDAoXnAkTikCbwm3x5nbwTL1oPUgh+jKdrGb7DChuxnT3XYcH47FTAsNQDPYCfcwAm1rALD3L4xFwhCAXERThzSXwQMs7HWwOHjjda+4FRJBpzRx4FBtbgqtWnfd9DXK6gbKLy+y12YZS36e621gN6WmO\/heQQoPRXqsvNmYWYbUaey1IfjeY+uJXXFzlGo+Ici82waM30qxtPfXB3GP+GMDJ9u0+Sw1+LHIKXohk4Pn4P\/SFHdokcOTyQM9AOpERhxKj0cDJWhZjLT2Yo6Ax1tDVDCqeoaIx+uhaFhWZUUFhr3YLN7xzoahWu1JUvPov\/1+mnxmJrjxaYsCnubGeB6bhfFW5MU229stgI1ecwsipyeOld4V2RLrp2NQlLD2NraeLLlH9mMKxmZVTIlx47jqHkOc5juS2vKCGTlmgFoFKsqvyjrbbD8aAXd4nykWtySSuV6lqOpx2eeB35fXtcIjgeK\/uN6D32du1MwsdQaBs4X2q8eK\/YaoI9XaqXI\/g6+HxEnOkhqL5FKctRPKK4ODF\/sttly+0XJjcZoDfa14mf3GQwhIw4Uh7BBA8bnGf0aEXEHrc4orz+Xc1APsOWhbJoOv6hrh5\/5Z+XFPEuqcZYuafrdC\/7c5z2IpNne9hfqiWuL6ESIm8QvCmNK\/LagPBzch3UmU6y2+VL9eH+SjCVFgTKzO47\/Cq58oSGbni86e5GeNDAV3gfnGvM39rdLR0wZGKZi5DCPHx8Zt0xUn8Mb78x4bY4VYlj5VYsJSvzoJrBjFZX1UQmSjskiy2r2MY+EGBqvtf3CquNddmpLf4nPAGEXp2n7jrD89lbhF1LBWVXdiuELHTi9qytC5kb1iW2blA7LDVgefjRBGoFoJoS+M5gGTdPIe8TzIky77N7lOLWClFHUJlGrdYQ9N1bTohFmIdQkQm6xL+f\/8Hi4pvAqlnSXDXkS6HEjA0zS+1dyzgpXaLSpIF29ZzCbrrQ64LsiY5l5lUUM+XprIKxGuTTr2MErQi0ZEagluYZq1HdOk7V78MaHgA3f9SQPpLbEC6y2Fgt\/kQ8qN3QbIkmp7TrxaxkvX4F8+gS8qr6Dyp4H7so0Y4ZzZeChRgHSltsvpn6kCd2Wz231S6jO2TWEnjkgsuSQSnWblBuanpv4dFgGLX8q7l7aXxt3jgWZNqg2pT83+PikDaKTOUgRYL1OFXI5PeCYkix2yCGZlrShIVYbZgq+niQ19uC+aiadi721SDT3rNvYCV6rcEbkf0Cv+nPmOlXixMNa7SFcm0A50S3fRsFqcTNYdV\/\/ODKLkNXDCadDWQddsrjRU1m+BI1Lghd9e6QFF1I4P9lVIaRM0qosi6MhoELJmQrn5RUl5Fe2hH5sIWnFN2PCBzIEcAKs5aTbVOiM+hZOdMjE3iXwDbNtnjcWxGHAMvRiBlmpNv57vU6cKKzNTBMUZIe0o\/u8kx1RmT1wdlDIaXXcVjRZWJQP3NVmrX0iQhWbO+trymxG7UwWmspLq4ajUWOA+XK+f8GPNTdEUJ6oJjI1uaKILl1EiEXFahlpN2CrBtswc08e18n+nlUbMGwx88uVwSvBYgkeR+UvsWUYiHvofcLGD4Cje2egG2baUJfuC96f0+uAmwbW2mfw88Nj2OAuJ3vTaX1SU1OJyxfnamoaK2FDWFsZ8srymvmsBccBwxqrJSfeRbOYXmOiZ\/BUbn49Cg4HPTSzrYGusMYNssFDTFYrPQ0LTEvcsG3KwWpxW6xB8zCtKZtBE0xnI3jlkI2DZLxuP0ne6V7q07H7M5DUtvlaHFmatRC1FnqrGUC6F1g0IxfpxsiCEQLbapeDwBbP93srqsqhSzDuu4qbymrGoaiUFvrC2rLsGMYR02VVZXVm9EYpCmJr7CmCuqkwq4GUWNXEUSW98kFbDTANt2oquaEZtNQzfaYasZ9L\/fO5RBXT3CCRtCpM++SKB7FBU+SYwEcReMS+vs5OLYe2JaAxSJ2NpQZiyxX+fgtAH8jwqbUXZ2u4zVxnrItjXanJ1+SF9SY24NDIH03iWrskStUJ4talcJOKnFLUJ5GqcIh8My1vTmvAVs2+22gWsnsxhNRhG9n+1ceM159iLRq5\/V6c6W4xNT7uekAYcbq9A5OYxVaz2jvOrMyAd90W51ZLdCYfohaUk6mx2\/FiYZQXCOS5HxxHxcqGWGS1CQPsaxGKl5RgmHkair5nCH2gfAar3FtN5k0QOW1XKL6xt5OOU\/KI7Eu2W51RZJx0EShAZnuXslj4tb6DGCEF\/r6qsxV2NW+1jBw3vW4T5YF8zQCeuHDd+11rQ8bX8KEP\/X\/t+wfS9kDrL586\/PtZvnPu39BN7gXlwf3a7Yphh9cR0HcI2ef2JM+zrdH4eavgUB1nU3IKmiz6mT55ud\/dYVe1A57ZXRmWbYkEiygu1xC7zNZ1vzQeDQMpfxT310zLrSDfia7AH3cT0WwExiWczh1g755FIWs8wVRL\/SvQKCh4manwbixaA0lNLBZwg16O+dTZJclqRxeY4ii1NXkyGKpwpnqrXhnK9T8jhh7TTJGkZUAStqGNBs5r8+nxFbHLqlOTx5Sz1dIdL3FdJpf\/3L235ZHc76IYX8dJegC+PuScphxGwCl46NxyzrpPxL61Zr5IqWnmyFXNzapsh6UBUcMh4sylaHsU8mZtOjN9GyItkQYLDaOvhciR6ORnVIs4Xyln61WiyuLf87gPzHFEkWRccma2xHkiVRdJ9ULT3mX6C7vx8nEOBP+rOnVOo1R9+qi80DmmyJrKlbq1RIWwdkeTx5u9ex3DiPwnK7OYdGcpEbSD4UXRuNVo5S2RFa3PNuB+r5ZAhSVCs6BGyhPRcnE\/gSw8RmZcXIm4lXTPgWh1HkXIZQgX7u0puVz5C2mLVyEae6LVW+c0lOiFBLKxNQAqLyQwVqahEnwuMw0j73+l\/WKToTNUGQYiQqyezVmdN6w5l9yz+LAGgUM2WgpMvcBXihZkTrTJS4r7SuOyndAJaVnpuDb77i+CvxyBkorK3Ygn8z1RH\/jo284FgSz6NxWYoaSGMyuy07sZRujhYPH4pj7iArcebozJpLiZyhmxIcoFE6qf8J4WhMC01ChhVA8aFmp\/K126jMFwygQqIQgEnrV+kkitZmjVKtaOtUqxXKlnaNUqVobRdh01JU1q0JWZ8iUmSXjgDqvK2Dwcxq7BfnMiWNQ9mK39kRmiIe\/e+pZkUk42OSlh59MFESQf+YrHm+CjwN7bCZ\/2EwSpbKdEJ5S5daIRHXtaQptgSpI5l\/JmczojYmKCIYD5Kyn60CNEoHLX4KRrDrbYH2xgOXg4PYBSky9Behvdeq94zGJUT6LFnOinFjaqr5Uf0rwgIW\/Ql7r0gFHicShTpugk6Qt7dVexUIDzHaGSfNJ6Xt0kOAHErppE6ykJC6RJkGWuDkFmp2qti6Np53Q1KCAA9\/Dh3tMXYZx38OBd9fCV1VJMuVVepkBtnItVBFeWllKYBc9pm1Hy+eKZwZ322\/4LOl8WzjWVA+X\/bXV68nO0rNpVMZVuDW+jLlXmvr9PBHtYKfwzul673vMpyeywhou072529IHxKr8dz1IRtVAvtomEyEgWcikBsr+Ph5CvGhVHlBzwAVVlurDTRR2aq0LqnuiJKPhUc\/gObAHzsyBAk5Lu7u\/hOqw25EjmqPf0K6EPGoITW4gEkccwgEizVX3T9U1Eu6apiO39K5kOJSAb+Z7lzeVa73jFJ8rB0RNqRc\/OBPTxvxjUlYG9ffSAKhXStigpOKAW6kKxkRViVms1Jym5iyzL1e9svcpAwkHZn8+DcfBDJsy3ddVZ+iliyEir4J9Ng8sM9Tz6IHxOYpEDIvQEyTSL7ezmG\/\/CpTOh3miUQzkK4B05mSk7fMtR+fFD+oHbww2IR6YfUdKKekNoTOwYcy2foQOu0t+P70gnYhoXxYmz\/sOLZZuUU5PeKYqx1OLL+ivXIaVFgjWyNbjo6P8uBZbPe5lwhE4jqv0MXtUrqvM4fhqhQmubALJfFmcVu6rAApgMEHffK+upykXOrkjWjZpjDE1qi4CTHkU7HZ4ohI3i7\/LRFjf48KjN6+Xc7O4yJBENE6AwTNZrM5ix9VwY8ZtR75yrC7CQa6IFNmEGYcluXTmdMTtQl5lxzSXh1J8MKyXY\/4s7ivNxgrqkvRk1jsmtIade5Sz6CASWNptQG7BjiPldYYqtdigXNmd3a2VtvdDZ8cNN1dOk22pnMgJ1ujBjIrhRlalMHfdCpBesAYk1wYrE6PqtyOj24N84hs346PW0Y4WMNN4AJT1fJ+w\/K+TmYiM+lWR\/wBOxB7711Aw6FB8HjnRpPcncX6CGVJtqUU1w63F5gHvw16y6CxIEsoGAnvWMEyg7sBfL1feOZEvPhMTVzmmXvxWYsr8Qn773hRTxt51v1XvWin88CLL43Kslh7Z9tO661C3\/xVDRssnF0XlE6R3nZOOeehSRtcLkagUMrFo9ESLTdPeEwKet7LeWC5O9r7RCHavx4GzWbtbU4WcVODogkMkkzGoCyn5UUyi8K1LcQ++yhqDS7W6OYBlhpis34xU3PAqbi\/zTYzQnWKlk1LS7E6GxBmSif1PXcLlgme9XxVB0mQkjllvIT5q92tD4pL3infAV6Y2WwGrfECD\/uoM+986SFJhOTvVgekfUMg7A22Iy0vQrlSksBkcFWKdN1pMP931uLTePHiSLzwRwyNv391PCei5YhHnJngHpvd5x7ZFnagjhvHBfyqTmYSM7FzeZ9B0P9rEvgxxlow3FbnBr6jCiOiM6OZWuali6LpkqkzU0Vr1+L04YrKXEdqrkTsUfuQtustZS3w21VDuNI\/jWY3XbY0ffL\/K1EmwK6l9sVmVH79wUrXnDoct0Cg60MHFoUPLLf31kAI70ib+nx+vNFz4Ap0raVqtWWNpOD8GlODpkr23NCjiD6nXIOuU6VXY9xzvdwI51LZs1BG9Xn\/boGcof2D9k34p9c38Z\/3pMS\/V\/swCYPuKEK5DPV05wPcE6vC9ODAd6bv9j0wFZ+\/VHvuHKPxPBjB\/kfDxJx9SsIJPmXD9LPE5ytuRIFf8aBrrlFXs9yMeBa\/2ZpsHqDxfBQoG6HguX31kBERBSeY23ARaAzBNWioyPx2QFDnRdvAxq4rTnxhY4qLEVGFsyI7XEY6uWZrY0zRV+nTTJ3z7hD4bGiPnC01uBwVL1kJwWBOr9LMUI9Co38Dj+mvo3vXAq9T01XTdsRSwLaHzVaYBob9Z0BXQizCnt81BiGibPD84IV5yX53bqS+W\/a4fcraz09mi96a2VmZjD3PDybw6ElqdlfD7k0VNWVVU0gMJlsckKIpoCery\/Nww8H4ybKa0qoxu++dVBJyWk4o1mn0u8hGXuEvw4UHUU7rDkTW8qXdXZkFdpDN6Z032nT2l\/DJoUXZGPcZoL5ks9zHg7SvKlEsuqgwRRqx29dxGafurTaGvywmTSa7mvxx599yP4ed8t2aiBUZAlSmXhj6UxaHltekpP+iaU\/Ikdidka9ZwLvRRo55pYf5+0XxAdrevsWe2nuCxHR746rpsbCM67jPOJehJHbGyPwdwxlferKGpHtZUYz5DRmzzTZ\/fg1c\/99AEup2rPHWZMfRA\/nlaWwILrUjNZWDJuPNihy+pKlPq5RlNRsy6OSEjgQOUw\/apWqhpI40uI8ok7qXEHgIieQfbFIeM6qLJo1g\/JCkebT5SVW0d1V7E0jHhns4xK067sMMDiUkndsSmHqW6N3pgfazyFBunkmhhW1unEKqMNf2Pa1DxilLGyJL6VCb1vZegTOs89kVThfWKBvhd2F+sZ39Zlu0i42v3BLiM2MC5Ikoi2yuQbyYL6D68Hd\/X0r+cAfirQ7uzSKr+PUBpT3dfdlqhdSufXVTKltrhLILrE9W4tDp0wx1cFdW4PaeT0YuncE8D6hOFddbCkvasDE0q+RGDS2zQuYnFmZ16dF26mWV37Qybat6wjLTMiVb849sgDtpNlEhy4Q1IhAdWqVK3p7IjstUJcXw9druDs3L24I25ukEWeTHvZ8CXTMd0lJifaYPo2a9xJ8iklOM+Uzg8bGkSJHZkjx8FCibKBoxiovtLeqgl0ugAD1CquLdHNVqfsXgVfZn5TElTcM5ciGzupLBe2UmNSsi6R+TdIzoTTRZBONjsvqRyIYsYunQrChIaw26WWFsBaJ18qss3iW9HrxjZRExltZRCpVyg4rjmgOUu4qtfpeVv93rc0jZuYmKhlnW5oHx+b3fztmS5eOXubCdSFeFyMn1wnUxZa2eMfsdQxUcX3NoDn77mWKmGHom7TtzWcKq9rTZ+M+6Asma1Zaqo80R5WG3OGHrxN\/ZOlUn\/a9POl8+hGAfnI9hLkoTpevgc7JyEb32dcVMmmd\/Vm3pT3FxRd2a7lgzqcI9x+a6Iiwcx12RgLmsJYplH5uJtK3UlyYP83Ismd9+id\/3m8jV5BU\/CMi+v9+ZzyfcJxd7VunGsv\/E7va+7\/swaQ8miR181Luqzb2P58XvVXNAKcz2Mw5OHvNW21F7MoYYiqraf5zFw\/eRd72Zd4TYxAz7b2INvV2ZuK3lOHmBQQtwHS1BqYZUnUWH5ucWpuFrdDUanMqGqB38Z2DWcQ3cIHOQyGCYAwEjYCN60pa4aLXh0T5g2cApruhkUFJDA1BQGh2Hw4AyIGhBcJF\/w8OOsUd3F2sD7wML88AvCTpkBxqUnvdSov6q\/15LEvg9tNBou5iMKTFQYWJeoJiS5Ox9bXvyVEySIw23\/9UEx1zDYJjRAhhxBeKlw8VUWzArazpXGn+29oKiNGlasTSdaYZQQpf3OCFMhOeECsQZXnCSzKqntovuu45OQ37NQl7SJ91tgcg\/pyJLp0sZpu9AtekHrECeejltmPW93Kr96\/pImuQn01P2jZFUyY+mqruUZLv9\/yqRKfNWb6murKqHbtlRWV1RvRVMyPPlJf69Lz5nPq1k8DMk0JIGKZ+ZnNvIVFGZ+jYpn54MEnq3jwSWGCKnmcvFpfHxWXUrzcockbS5S6uUS1oKOdS1t8X6EnucW54wplk87cfYjxfxPSd96PdVEb6ST15JOcyYTYnSCMafSRp6zObHNZG+NS0NIWrzKLYSi2BGLW5S5y5A4lQ4S37T+zGUem8adQOPvf3z56ivhIV0e2pNj8JY4rOr\/s+71J\/1P6\/9ac6vqM4tNm8kpL1X0STwUvrdY7FPhfw6KZtOBXcrOBb9DUP+duv6EMPv+3uhzv\/0DAmF0mfSlMNYgLIi5iWUiw2dzCyvb8g6H+FfZCh1EoVG21s+DALwcoVFwTfwZ1Oe9SzbAL59+Mj8iNHMyDksc4602SVnNQbzjeDmlfU+7z5tOfP1\/jtfD0Ul89WIyEvdgiqeAkFEUV81c0\/KKovWwp9Fw2\/dcx+bvmKeIoDGlScwgvsdq3k8yOUe462Lr47QM2qVHg7QrBPM+++x3sTGxElQcoE7FSKMyHSWXXF+8lrdvbm0LBSGVWSq7LrPEf6bMP4hwQ9U8XNdGvLSqtw7Hqz8kZ5m8H7i2hjnkD5FcMpOUeW7NOQLcIoC7fI0UaXDC9cmTFpJPWNlBlvEZhjXjDYna4nAT2UK+rl4+HaItqsJxmvZ7AOi8XAuW7jG9FKBnk6fTTXBLJY901DTaJLmpwGqGFuMNy4CBZQeiqwrpUCKttbj\/MHb+MqEvT6Qff1poqppEDFRpz+CZpDD9l90D9iBPnelAmgs+iOmz9B7GQCHYjtCcTwV\/YWuXA\/m5utMDZ5FauoxrunLxmj+vlhT7JisnlJRb\/YKfAXZTjfgqLUKf7ovpLhYEI7jMyR2qNIMhgIjxN5hamvXa6TDetHljMQnWRaCXcIXz6Qgz0oIT6uesBnEVXx7HFq\/EJn4\/pyhAiqL\/pDpDcR8FoyVAymaU7CXSQbX3nE3L4H6vhsAX++feg+u\/DZzJQs4DSZP8NDNL2C9hRCPn7JZiDGEDcd\/8YMtFnOzG8NmQF7q251pf6BCK8iz2i5tWr3pi6wl6dH61ZbHBMu6FZgIEx3qM8TtB\/uVmTobK17VE3397\/s7kDLwR0Hd3wUygPwJPnlg4gA2vhjAGs5j9k73VvfKnY\/TM7r+IZ\/89RC48m9NqecRfMbsvqCuleW6Hz3tAiyf7ru6qS08C7gXXVdPPht3NnzpodCSTIq\/s8BzsyBz8Yn7Gp\/LkmUrxm7xwP7ymPX3uamP9baMKkat2\/1811smds1l+ybnMkf373TiRLHYdjmH9K4p15rHzxR7q57\/+XwVmM3dlTtaaAWTYadAYYNQYzk8oMlJGQTeFu\/ToNAoUJhO9OpyGMtB2NCB0Z8gl48d9GBuWwDuO8gel3+CANQni2XtSZxv8zqnjmFnEHMoxvIhbvWo785ii83y6QFr71AsfyYOu+6xYQDzk+15IuH8OwHSKieE9+OLi\/nhroUCb9LcbQPEzv64\/isZniJJk+49lAFV2qG3TVktBFzuFVaih7xunqhXxBSkI+B1TGFrxRQ5S9yyrFw5PFZdUlWMXQ2cJ8uMZdVj9s+cJiuK5d6srXyRBH3duUogOf+pwQQWqXzhZCqJq5o0ZeIhzDimyvO1rr3dVHx4P7WLBRl8BDF7zusniXJCRDc2ZTGMeYhC0u0h\/c9pOfdTEtUyl6shqzurpZ0xtZ4IaQ0DshyOpMmcLXvHDtdYFLk8STMosGd\/poSjm\/pCq6UeOe6CHHLm8MeWIkCj9A5OP5XQzzaN2oTbEtXMcGd\/kpHcymPo4fDQr25C2PXUuBw4KsASlA5olPJ22yHQ3y\/7U\/7nu35R2+DHzNmZymHBZ3700r1IoBF2BnrkV+IVx81zcIQZ4bF4sK1fCzZ8lV6REXfa6lpark+nI5D+v1td02bN4GJsUaP9I6etPjmtvtpfeD72QszSfv+vk9ekG\/\/gaFpTzVU3K0f\/XSzov8Mj+mwciatCo1Q53EehlT+HjncZe4yjILN2rbFynbHWTPl2C2L6O0q5G9+23TYvrxu2G+avmGntXbZdDNdnMt2I++yoO1TRXg5pazsEDBsgP5Iy2s1xfUCpy1K0NKsVKkUrqDXXdgC1RqZobtOoVPJm8BWQCgA2LVl5Y+spIAKfIpKll7brAXR7pU7ryV0EdqoQdX0A4etnnh2FdIez1E3LzeOSNerAmk\/xXBv8vQcKmKl7cUszeoSxD6TtILMzH919up\/+HRN62PX113EENzYa\/EVJMc\/Fx08+33t+KOYhc+uW6U8ij+deSsgOFo17sIfYSkVWW69SK5a3dGarVNK2cUVj\/8fxWK4QooxkzRWBU7cgs3oS4ohGfQY\/SvvlKGqmcWKf375XEAfqP4OF9suDK+73+b0+\/iV22YW5H1w\/CgtCXJh9rMlUXZn57SpGH8Kt2b8CS4admpj4EoDf+JDqECFc\/C\/q449wARK9F+kTPJB\/+\/dYIGjitIWW6k51nBEOAqGqXU0yAxU40gFkMvoXdN956tafXnyeRytx4ZuCLI8vygjm3xDIn7Dcve6aDB37rcIeShQq\/7YGOon55w5rKtLSUead8XOo5yHqdUwB2ES3iFRssGniKh1bZ+vOLe1uRPoEq\/JdfMGFY9tyclCVuefazgLBABCo2lVgSNSaYU1+uDeBG+D64HDdJBfx4EGpv3W96q13Dn0VDUxq0LjEke4cXjsMFhXYc8Xcb3wDX2qRsg3skn0\/cK0V\/xedgVB7WD+6OuaCUmlmGtsAvDf8zOWcfuurfTwLCyHefY2fKsMJFqjyStBnkbkcsLHrZw7na1io5vkqGndqE9ydxQpT8qwyMy97+JXFCzkcDmDbUMBofgHXAxrl13LTI9shsDg5ZZniGDhPVprgxTwDOPX+g\/lDuiF9sbzdpmAZNEykXILqkIHlBYDL+5xOyFW6MMSuJdXuz1b68beHOQX3hrl7OXsQgAWcpXQUE8d9NsZUhcR9+rSyIR7TgsaQ7GvyyArlNhBn8gbr14I1QaTbIcEFAxeiG\/wTPcgW+o0n35nBsVCDAYVCCaafSrS\/2ITb0pB12cGUMR84zARCK\/chtU1PuUIX13+RsuzwQlrC+Aa+0qJkG8Cpje1pnsfMm9IN6SHmkAxDaeRHkki1RfG+BFxliRWadspSfn3VVIP1ZrfMJH0u5IcPTqB7337LfqaBGddXaDj6g2Z\/xYl1aX7k2keCMu20fymkjJ7gsDVU9Xy2xaxdWeFy3Un3Ie2NEUX3zOvwdcg0B+Um\/RzX3eDHjv2E7zEoh1m8YyMhaVgsyHQm\/VaFXJ97b\/T6HO86Fs6e16v8slu\/z7ZYZPGNWpgDnKoOl0sI07hjDBTDrMzOXzkcjGu1e+ezBcXoghOMlyAoHpt\/1x+61LTrt5YUkvK0IR+yfzUrcdLLlD5WHPwggJz612syQfZOcavJRKbDe3Nw\/2rx6ANma\/t67\/t63xq+PvzYvVSdcEfYxFH0Yne4VmkSj\/Gb+PJL9uwKz9lZGePGZZD+Ccj8PwTT58Zn7vuvyCFp5LvN29lwxvWaOKL\/amfOsl4nroOE8UiGtMrjF0IcmSiLdm2\/V8IloxW8UhfjeGQ4cOCVp5rjyzhfmWPrb5YbWPXYXjUJ2PnobKfPOSgt+qzL9mTjfm151TJyT98NLarN5mHGzjQaC290tkMAXlGveVj57CCFlaREoOyRgPubMcyvEu8M3eWCQWBe4HsqJ288tsP5UFYdxR45dorJXgYpSB27QDqELiHQWE9ubdkab47f3rL9JFBbR7e1bCvgwoB54OedMAoibLLIrBQFPeZmapaPMVVqvQUMvebea9D0Re9g7285Wfb467nH755tFb8NpfTAo4n9AL\/q0Teh\/dEH+A15aiQehf8oO3flS0OSu5aUFiapWPd\/7nJhwFP8NP4Rzv6a3y8WVGbaX3eM0Qd3Sv0k2aIIbri\/9taxEk8Nx9XJDiDW1Uu3whSpQ\/tyzjt9k2JwNwwffSBxKQ7+5H\/8f08lSHaxLZf5mkjUHh+SbHl7PWgHJtFQhixjSAQqt\/ZnesU3igwiw+jKmLbrT+h5Fdk0zk5uEZvPFySf\/N0HyfE7oU3YS8NHX7LEsX6OZYVxheKS3N9cU0LpFcIvnMtxAEk\/iD\/oErv2zJfg4NXT9V8U8AsJa9lE6vXG5xNPb2gwO4hYCe2xHFD2t7xrAVnkh1\/nRy6RX8zbra6\/kI3FmPaCxq+3hT30LU7izwgLuKk9ImmSiprFQ0qRhSn830QlguQKATORt\/5hc4QJ7x4cxAoCMb\/7xPJWHXON2jGoRwUHsmmA\/pQUrVoN1oxSM79rIYuqC1jz3JapZwOB8B\/e\/tHPHGOO9y\/WW7uGOJQfcl6vPc4cU6Wn2+r6ubbLlRlnahaavZsGQM8H8zvAXUeCTWgGfuH3Ujyw0jhGd7a\/VOSM8YLnNnvxLpyG1OGAAejY+GmYHJZnD\/Fb8PjK9qHbgOpR4qP65gpvziHi28y2sSSyUaYf6Aq5wsHYcvb9OTgvAUsAcEZBWGAtuP7iuRxyZAw+uwEXYieCA06CkxCyHgd4a3zCqhylQWklTEeENQ1RiuAXFQpvjTAQ6IYoEdBC+DaCz1O+5p9zyJEWl2yG85kHgcVZDkYEWeDXRF0WaAW7AMKIlS3MReQ16ihNoEXUNU5qwq9NQFsoiGhqHumJslYD4oiWT5OyPAcgoq1JjyYLR3QdA7\/UBqmbEBrJ5TqMtnkEwvm0wQc3E+z6EvxtP+zip2gIgMGe8alTsX\/BJu2Pm1ne9XUsZDf+FF28eldsoL7qG46+CZDu2Np1DqYYbdFFERpyTafQzJ0YG+ay6rT+bramHtcew4b1bgw4hQAzL2tEjvzLsbUy\/LgsU2Uc4zglrjOrpwE1iNp2hDG+YpMk9Hdo+wPaI+29UUWAAvqJvs7O5QMbDwbkAQaRw0ti+p814LOzOKAv5P5nyysJIIA68Efe6\/2fCkrq32h72NN\/lPAx34xj3\/wXs3s9HB4GgQZQVcA6enbTbUBjXqbfW6\/Hc2bh\/wS6WN1H2PwqJ0w08ptSOpd7dgvwIxDW0tgcVPO40YqrMztGMFtEnIqk6SmanACAxR0GvnWP4GAgWjHEKZrgl8dgtIMKG7uxgJQz2EEDdj18wze7Nxc+w6Tamq800E8\/Lk1Ho2dTio61Ayq9kZ2BngRUdkNEGVavuBSdsJbSIShaGbkG6qVsFEmiHYddpKOFZ\/fr2Vo0z9AKDnBhP833vtmstrZOq4mK3lTzXCscJn9pNEj7scN0czmyFrmVklMvPbNEx7SbDtbLeC0MBinVIfWKMI9nXuW8dz4QXOp0z1eLpWZSdvJw+Z4uxwdpnCkJK+Xv8D0naL78eAaeaByt14OjPQCnP+hRgO60n4JDPNXzaJ5whJongCRA0J+IADAmKIFWvjG9EinesIVnY\/JBtbrH2ntuuDWUiA30tzOK0CuUvVDsu4e9IM6l8gLo3RjVqOe9yNORJj0chXR2AywaBv2EMQo\/jGezpXeKMeNhDRiJifnC3kHLh6iOdsAWxYJ\/vmwNmM9iIgCLAA3hqpzTJQwQoH7njkWHy2NeLyR+SaPskoTFFWjJuMB2TUWHxwjNGtSKYIdACDYFq4gYrQfr6L2cQZEPT+FTsDjYDAAAWx3s5okJOLuRY8hwvAmjQFwPwVM+pUznc4YaCoQU2Q3A7rrphiMg0Zz+zgZO9yH9GWzf30y+cJx8\/SJ1PWxzc+VTR+LZ1DxBUCu\/15d8Sp2L5E+eIe5hs+9oy4VQlUruJ8TT7C6gXxWd\/bpThxGxvSZ05dH53TS5NmCB2+LwsdQQ2YiUBr71CK22oKUIMm1IXQlWd3gmGy12R+yHNSrNTUiotVTXIlU9VGigDa+ScNDsuCmVV\/5E63Ertwu70OqLeFIFjzag1jdceFYTY34EmtspQ9IcZhdsDJ56GY0BsI4uZhhaAnACj4jTUsepW\/qBDACrtmBs\/OysU9AS+umURMl1gCcAyBgbJzvrVNS1m2wEnaFXjNJcGijvMiEI+oMGyquNswMYA2jhiZ6tYGawTE8ZuB7mBUaGETxZtJiDAqU6wmhBX4zefWPQf2mJAeYJRuqJuEUmXeP1RtwHzBaE6a+A\/m5lQPEWuPVws0SLzmkNTjoaNgAc6plAJglsuRf1ZQ2x2BCD8+ofxBgg8yVH377soBHyBz8+jo9Q4vqcSxXMJtejpeEoG6YrC0KrSqigATpi37BAlpuzUAaFCQZK\/+HIhHNzEIDMA9dD\/B6zrkeNmbg24A7XtiDHaxecH2o3HPx1wbs4eQ8GsjAA1EWF\/quFwEdZC4VOdS2MME21cOScq0Ug5uEBkEj58KM8juh7Xk\/3Sq1Wz8EXaJRmoueXLy2+mUNuBovIQQhxNLDIS9iv9JFIGcYNE+MBa4c4QvAnlBeVF9pQGmOyC7s+G67qYFZOMnR9\/kPpSzY3EB6TtPCSXE932HBpOxoclwZ19oae1mcKs1SoJMxid9xow3fdnyM9nHSx02yP1kPEOjbKd3JggRNeXA6LTQJlVyd3FbW++\/rifMeEHDRQvVZvD5YM3qoKk0YxpzxZI0A5yrCuI82MBaxC6pxDkzkLMScLNk\/eOqbTGXQk5SYUgvwjv+awKKLPc0854A5rMuhqi0JH41\/rIq1zZigqLQljbZ7lwFOCPOtgUuEW00PmlxpDNDiUZuVE7ROgbGwFydZDO2qt0CdtLz9CVKYcaFUTarAK6HDpsYb27PaZtJuGvCfwXEcTUiNEgiRwRCMdIn\/9HZuGzg\/kedtWMx4\/Tdj+N7FnjXvquRErbDRrh+UeeGJdiNlKE4ZchrenTfZ4bW7pg\/2+VPFHkWKrGXztgi\/UdTS1tEkuuqmr568yz7x2B2jgsj9pXqlUoUqNakZb1KpXp0GjZk1atPrDYx3adeqy1LytenTr1ecvuni4ZTsud\/\/z2uvx+vJBkAeEeH4ExXCCpGiG5VrbtE8gFIklUplcoVSpNVpdllEnDUaT2WK12R1Ol9vjjcZ02g8AgsAQKAyOQKLQmOYcisDhCUQSmUKl9ZGDxXWGwWSxOVweXyAUiSVSmVyhVKk1nY7U6Q09IXS3mThz91AQKAwJQvTAarM7nC63x+vz84IoyYqq6YZp2Y7r+UEYxUma5UVZ1aPxZDpr5u1iuVpvtrv94Xg6d5f+ers\/nq\/35zv8\/rl8oVgqV6q1eqPZane6vf4WOBiOxhCMoBhOkBTNsBwviJKsqJpumJPpbL5YrtYby3ZcT8VAkhVV0w3Tsh3X8wEQghEUwwmSohmW4wuEIrFEKpMrlCq1RqvTG4wms8VqsztC54jjTljQO+YKwSWqva4anHdmGVewTNptyr9aa60yaszJ0R6vzy9JufCIoHNki853YU5b6JeuIUTZdL4A\/f0eqytBAQHqZ8ROo6DsKAB\/8Onkw4No3yT0uUzwZ8mtSEZx2wSkc4m1L6RhRuUigjXMT4uniae4asJSQTYWTSKIkFQkEC4jEltBRIgkGYSAacm0MokJVDerg43IRKULE6D9+Ycz1slbR3AVu5G86YwI6RDdQEXNVgjZo0WE0AtjRYlIcYIhYh8q\/pMkfJ0S4dtcNL\/\/q0eYln7QxiAaorHmSwPVZWm+IZosD1JfqFtHaJ3LSD1mEMtQt7XNaXJ5UCS0yWQAPCp1fNutsI0wwqxwwrbCqbaOLnOpu6c52\/f\/gV2fEuzLdJc6IhG1HE++6HR7hlEaj0haLU3dpGSantNpgZ75I6+5nPWdy86Jc1byQrFkJS37qPL03PvoMvlNK5q0lpOiOHG1bPWl9r3FpVEcR2Rql85OwgzD6pxHH0h74VUvmEHTaWwME5BxyxaOJOXq\/Oo5TEDGLVs4kpSr81sBGwAAAAAAAAAQERERERERERljjDHGGGOMMcY455xzzjnnnHPOV7FICHE6g5qAjFu2cCQpV48iKaWUUkoppZRSSiIiIiIiIiIipZQKNSC2oFz1HSYg45YtHEnK1fmtmmittdZaa6211trzPM8Lb0DE\/nzex7HfPXbngfezHhYp45adopm35wG\/V4rX7hmt+QQ=) format('woff2')}\n\n\n\/* \u2500\u2500 tokens (del splash) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.mtd{\n  --bg:#080808; --glass:rgba(20,20,20,.6); --glass2:rgba(15,15,15,.55);\n  --ink:#fff; --dim:#9a9a9e; --muted:#888; --faint:#666;\n  --red:#E60004; --red-t:#FF4D4F;\n  --line:rgba(255,255,255,.1); --line2:rgba(255,255,255,.22);\n  --clip:polygon(20px 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%,0 20px);\n  --clip-s:polygon(10px 0,100% 0,100% 100%,0 100%,0 10px);\n  --clip-c:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px);\n  --disp:'URW Gothic Demi','Oswald Disp',impact,sans-serif;\n  --osw:'Oswald',sans-serif;\n  --body:'Chakra Petch',sans-serif;\n  --mono:'Chakra Petch',ui-monospace,monospace;\n  \/* columna de contenido: m\u00e1x 1320px centrada \u2014 en pantallas anchas el padding\n     lateral crece solo y el dashboard deja de ocupar todo el viewport *\/\n  --maxw:1320px;\n  --pad:max(clamp(20px,5vw,72px), calc((100% - var(--maxw)) \/ 2));\n  --ease:cubic-bezier(.16,1,.3,1);\n\n  position:relative;background:var(--bg);color:var(--ink);\n  font-family:var(--body);font-size:16px;line-height:1.55;\n  -webkit-font-smoothing:antialiased;isolation:isolate;overflow:hidden;\n}\n.mtd *:not(.mtd-mapa *),.mtd *:not(.mtd-mapa *)::before,.mtd *:not(.mtd-mapa *)::after{box-sizing:border-box}\n\n\/* fondo: taller en b\/n, como el splash *\/\n\/* fondo: degradado gris oscuro puro (la foto se descart\u00f3) \u2014 cero dependencias de URL *\/\n.mtd .mtd-bg{position:absolute;inset:0;z-index:0;pointer-events:none;\n  background:\n    radial-gradient(1200px 560px at 76% -10%, rgba(255,255,255,.055), transparent 62%),\n    radial-gradient(3800px 3800px at 8% 4%, rgba(255,255,255,.028), transparent 58%),\n    linear-gradient(180deg,#141416 0%,#0C0C0E 38%,#080808 70%,#000 100%)}\n.mtd>*{position:relative;z-index:1}\n\n\/* resets acotados *\/\n\/* peso 700 + synthesis:none \u2014 Koulen (una sola cara) rinde igual, pero los glifos\n   que caen a 'Oswald Disp' (\u00bf \u00c9) salen en wght 700, al peso de Koulen *\/\n.mtd h1:not(.mtd-mapa *),.mtd h2:not(.mtd-mapa *),.mtd h3:not(.mtd-mapa *){font-family:var(--disp);font-weight:700;font-synthesis:none;\n  letter-spacing:.01em;\n  line-height:1;margin:0;padding:0;color:var(--ink);text-transform:none}\n.mtd p:not(.mtd-mapa *){margin:0}\n.mtd ul:not(.mtd-mapa *){margin:0;padding:0;list-style:none}\n.mtd a:not(.mtd-mapa *){color:inherit;text-decoration:none;box-shadow:none}\n.mtd a:hover:not(.mtd-mapa *){text-decoration:none}\n.mtd button:not(.mtd-mapa *){font:inherit;color:inherit;background:none;border:0;cursor:pointer;\n  padding:0;margin:0;text-transform:none;letter-spacing:normal;border-radius:0}\n.mtd button:hover:not(.mtd-mapa *),.mtd button:focus:not(.mtd-mapa *){background:none;box-shadow:none}\n.mtd input:not(.mtd-mapa *){font:inherit;margin:0}\n.mtd svg:not(.mtd-mapa *){display:block}\n.mtd kbd:not(.mtd-mapa *){position:relative;font-family:var(--mono);font-size:11px;letter-spacing:.08em;\n  padding:7px 11px;\n  border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--dim);\n  white-space:nowrap;flex:none;line-height:1;box-shadow:none;clip-path:var(--clip-c)}\n.mtd :focus-visible{outline:2px solid var(--red-t);outline-offset:3px}\n\n\/* etiqueta HUD *\/\n.mtd .lbl{font-family:var(--body);font-size:10.5px;letter-spacing:.3em;\n  text-transform:uppercase;color:var(--muted);font-weight:700}\n\n\/* \u2500\u2500 secciones \u2500\u2500 *\/\n.mtd .mtd-sec{padding:clamp(52px,8vh,96px) var(--pad);border-top:1px solid var(--line)}\n.mtd .mtd-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;\n  flex-wrap:wrap;margin-bottom:clamp(28px,4vh,46px)}\n.mtd .mtd-head .hgroup::before{content:\"\";display:block;width:44px;height:3px;\n  background:var(--red);box-shadow:0 0 12px rgba(230,0,4,.6);margin-bottom:16px}\n.mtd .mtd-head h2{font-size:clamp(2rem,5.4vw,3.4rem);\n  background:linear-gradient(180deg,#fff,#aaa);\n  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}\n.mtd .mtd-meta{text-align:right;padding-bottom:6px;line-height:2}\n\n\/* \u2500\u2500 chips (city-chip del splash: esquina cortada + tick rojo) \u2500\u2500 *\/\n.mtd .mtd-chip{position:relative;display:inline-flex;align-items:center;gap:8px;\n  padding:8px 15px;border:1px solid rgba(230,0,4,.4);background:rgba(255,255,255,.04);\n  color:#fff;font-family:var(--osw);font-size:11.5px;letter-spacing:.14em;\n  text-transform:uppercase;font-weight:500;white-space:nowrap;\n  clip-path:var(--clip-c);transition:background .25s,border-color .25s,color .25s}\n.mtd .mtd-chip::before{content:\"\";position:absolute;top:0;left:0;width:8.5px;height:1.5px;\n  background:var(--red);transform:translate(6px,0) rotate(135deg);transform-origin:0 0;\n  box-shadow:0 0 6px var(--red);pointer-events:none}\n.mtd .mtd-chip:hover{background:rgba(230,0,4,.15);border-color:var(--red);color:#fff}\n.mtd .mtd-chip[aria-pressed=\"true\"]{background:#fff;border-color:#fff;color:#0a0a0a;\n  box-shadow:0 0 15px rgba(255,255,255,.3)}\n.mtd .mtd-chip[aria-pressed=\"true\"]::before{background:#0a0a0a;box-shadow:none}\n\n\/* \u2500\u2500 trazo en la esquina cortada: clip-path se come el border en la diagonal \u2500\u2500 *\/\n.mtd .mtd-tile .keyhint::before,.mtd .mtd-doc .go::before,\n.mtd kbd::before,.mtd-pal kbd::before,.mtd-pal .sugg button::before{\n  content:\"\";position:absolute;top:0;left:0;width:8.6px;height:1px;\n  pointer-events:none;transform:translate(6px,0) rotate(135deg);transform-origin:0 0;\n  transition:background .3s}\n.mtd kbd::before{background:var(--line)}\n.mtd .mtd-tile .keyhint::before{background:rgba(230,0,4,.55)}\n.mtd .mtd-tile:hover .keyhint::before{background:var(--red)}\n.mtd .mtd-doc .go::before{background:rgba(230,0,4,.35)}\n.mtd .mtd-doc:hover .go::before{background:var(--red)}\n.mtd-pal kbd::before{background:rgba(255,255,255,.14)}\n.mtd-pal .sugg button::before{background:rgba(230,0,4,.4)}\n.mtd-pal .sugg button:hover::before{background:#E60004}\n\/* cortes de 20px (buscador del hero y paleta) *\/\n.mtd .mtd-search .cut-tl,.mtd .mtd-search .cut-br{position:absolute;height:1px;\n  background:var(--line);pointer-events:none;transition:background .3s}\n.mtd .mtd-search .cut-tl{top:0;left:0;width:28.6px;\n  transform:translate(20px,0) rotate(135deg);transform-origin:0 0}\n.mtd .mtd-search .cut-br{bottom:0;right:20px;width:28.6px;\n  transform:rotate(135deg);transform-origin:100% 100%}\n.mtd .mtd-search:hover .cut-tl,.mtd .mtd-search:focus-visible .cut-tl,\n.mtd .mtd-search:hover .cut-br,.mtd .mtd-search:focus-visible .cut-br{\n  background:rgba(230,0,4,.4)}\n.mtd-pal::before,.mtd-pal::after{content:\"\";position:absolute;height:1px;\n  background:rgba(255,255,255,.14);z-index:2;pointer-events:none}\n.mtd-pal::before{top:0;left:0;width:28.6px;\n  transform:translate(20px,0) rotate(135deg);transform-origin:0 0}\n.mtd-pal::after{bottom:0;right:20px;width:28.6px;\n  transform:rotate(135deg);transform-origin:100% 100%}\n\n\/* \u2550\u2550 HERO \u2550\u2550 *\/\n.mtd .mtd-hero{border-top:0;padding:clamp(48px,7vh,88px) var(--pad) clamp(34px,5vh,56px);\n  display:grid;grid-template-columns:minmax(0,1fr) auto;\n  gap:clamp(32px,5vw,90px);align-items:end}\n.mtd .mtd-status{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap;\n  font-family:var(--body);font-size:11.5px;letter-spacing:.32em;text-transform:uppercase;\n  color:var(--red-t);font-weight:700}\n.mtd .mtd-status .dot{width:8px;height:8px;border-radius:50%;background:var(--red);\n  box-shadow:0 0 10px var(--red);animation:mtdBlink 2s infinite;flex:none}\n@keyframes mtdBlink{0%,100%{opacity:1}50%{opacity:.4}}\n.mtd .mtd-status .sep{color:var(--faint)}\n.mtd .mtd-status .soft{color:var(--muted)}\n\/* \u2500\u2500 MAPA DE TECLADO: banda plegable, cerrada por defecto \u2500\u2500 *\/\n.mtd .mtd-kbd-sec{padding-top:0;padding-bottom:50px}\n.mtd .mtd-kbd-toggle{display:flex;align-items:center;gap:20px;width:100%;\n  padding:19px 0;text-align:left;transition:.3s}\n.mtd .mtd-kbd-toggle .t{font-family:var(--osw);font-weight:500;font-size:14.5px;\n  letter-spacing:.08em;text-transform:uppercase;color:var(--dim);transition:.3s}\n.mtd .mtd-kbd-toggle:hover .t{color:#fff}\n.mtd .mtd-kbd-toggle .keys{margin-left:auto;display:flex;gap:7px}\n.mtd .mtd-kbd-toggle .keys kbd{font-size:10px;padding:5px 8px;color:var(--muted)}\n.mtd .mtd-kbd-toggle .cta{font-family:var(--body);font-size:10.5px;font-weight:700;\n  letter-spacing:.26em;text-transform:uppercase;color:var(--red-t);flex:none;\n  transition:.3s}\n.mtd .mtd-kbd-toggle:hover .cta{text-shadow:0 0 10px rgba(230,0,4,.5)}\n\/* flecha \u25be que indica que la fila abre \u2014 rota al expandir *\/\n.mtd .mtd-kbd-toggle .pm{position:relative;width:26px;height:26px;flex:none;\n  border:1px solid rgba(230,0,4,.55);clip-path:var(--clip-c);transition:.3s;\n  background:rgba(230,0,4,.12)}\n.mtd .mtd-kbd-toggle .pm::before{content:\"\";position:absolute;top:0;left:0;\n  width:8.6px;height:1px;background:rgba(230,0,4,.55);pointer-events:none;\n  transform:translate(6px,0) rotate(135deg);transform-origin:0 0}\n.mtd .mtd-kbd-toggle .pm::after{content:\"\";position:absolute;left:50%;top:50%;\n  width:8px;height:8px;pointer-events:none;\n  border-right:1.5px solid var(--red-t);border-bottom:1.5px solid var(--red-t);\n  transform:translate(-50%,-68%) rotate(45deg);transition:transform .35s var(--ease)}\n.mtd .mtd-kbd-toggle:hover .pm::after{transform:translate(-50%,-52%) rotate(45deg)}\n.mtd .mtd-kbd-toggle[aria-expanded=\"true\"] .pm{background:rgba(230,0,4,.22)}\n.mtd .mtd-kbd-toggle[aria-expanded=\"true\"] .pm::after{\n  transform:translate(-50%,-32%) rotate(225deg)}\n.mtd .mtd-kbd-wrap{display:grid;grid-template-rows:0fr;\n  transition:grid-template-rows .55s var(--ease)}\n.mtd .mtd-kbd-wrap.open{grid-template-rows:1fr}\n.mtd .mtd-kbd-wrap .in{overflow:hidden;min-height:0}\n.mtd .mtd-kbd-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,320px);\n  gap:clamp(32px,4vw,72px);align-items:center;padding:18px 0 48px}\n.mtd .mtd-kbd-sec .kicker{display:block;font-family:var(--body);font-size:10px;\n  letter-spacing:.3em;text-transform:uppercase;color:var(--red-t);font-weight:700;\n  margin:0;flex:none}\n.mtd .mtd-kbd-h{font-size:clamp(1.3rem,2vw,1.8rem)!important;\n  background:linear-gradient(180deg,#fff,#aaa);\n  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}\n.mtd .mtd-kbd-p{margin-top:14px;color:var(--muted);font-size:13px;line-height:1.6}\n.mtd .mtd-kbd{margin:0;min-width:0}\n.mtd .mtd-kbd svg{display:block;width:100%;max-width:680px;height:auto}\n.mtd .mtd-kbd .k{fill:rgba(255,255,255,.03);stroke:var(--line);stroke-width:1}\n.mtd .mtd-kbd .k.on{fill:rgba(230,0,4,.13);stroke:rgba(230,0,4,.75)}\n.mtd .mtd-kbd .kt{fill:#777;font-family:var(--mono);font-size:8.5px;letter-spacing:.04em}\n.mtd .mtd-kbd .kt.on{fill:#fff;font-weight:700}\n.mtd .mtd-kbd .case{fill:none;stroke:var(--line);stroke-width:1}\n.mtd .mtd-kbd .brand{fill:#555;font-family:var(--body);font-size:6.5px;\n  letter-spacing:.34em;font-weight:700}\n.mtd .mtd-kbd .ld{stroke:rgba(230,0,4,.45);stroke-width:1;fill:none}\n.mtd .mtd-kbd .dot{fill:var(--red)}\n.mtd .mtd-kbd .an{fill:var(--red-t);font-family:var(--body);font-size:9.5px;\n  font-weight:700;letter-spacing:.2em}\n\n\/* el H1 cede el protagonismo: el buscador es ahora el elemento hero *\/\n.mtd .mtd-hero h1{font-size:clamp(1.6rem,3vw,2.5rem);line-height:.95;\n  background:linear-gradient(180deg,#fff,#aaa);\n  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;\n  filter:drop-shadow(0 0 20px rgba(255,255,255,.08))}\n\n.mtd .mtd-search{position:relative;display:flex;align-items:center;gap:clamp(16px,2vw,24px);\n  width:100%;\n  text-align:left;margin-top:clamp(18px,3vh,30px);\n  padding:clamp(24px,3.6vh,36px) clamp(22px,2.4vw,34px);\n  border:1px solid var(--line);\n  background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);\n  clip-path:var(--clip);\n  transition:border-color .3s,background .3s}\n.mtd .mtd-search::before{content:\"\";position:absolute;top:0;left:0;width:100%;height:3px;\n  background:var(--red);box-shadow:0 0 10px rgba(230,0,4,.5);\n  transform:translateX(-101%);transition:transform .35s var(--ease)}\n.mtd .mtd-search:hover::before,.mtd .mtd-search:focus-visible::before{transform:translateX(0)}\n.mtd .mtd-search:hover,.mtd .mtd-search:focus-visible{border-color:rgba(230,0,4,.4);\n  background:rgba(25,20,20,.72)}\n.mtd .mtd-search .ico{flex:none;width:26px;height:26px;stroke:var(--red);stroke-width:2.2;\n  fill:none;filter:drop-shadow(0 0 8px rgba(230,0,4,.7))}\n\/* placeholder: Oswald ligera y contenida \u2014 prompt, no titular (el Koulen pesado\n   se sent\u00eda \"too much\"; el type grande queda para lo que se escribe en la paleta) *\/\n.mtd .mtd-search .ph{flex:1;font-family:var(--osw);font-weight:500;\n  font-size:clamp(1.1rem,1.9vw,1.45rem);line-height:1;letter-spacing:.08em;\n  text-transform:uppercase;color:var(--dim);transition:color .3s;\n  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n.mtd .mtd-search:hover .ph,.mtd .mtd-search:focus-visible .ph{color:#fff}\n\/* gatillo visible del buscador (patr\u00f3n campo+bot\u00f3n, traducido al HUD) *\/\n.mtd .mtd-search-go{display:flex;align-items:center;gap:16px;flex:none}\n.mtd .mtd-search-go kbd{font-size:11px;padding:7px 10px;color:var(--faint)}\n.mtd .mtd-search-go .go{display:inline-flex;align-items:center;gap:11px;\n  font-family:var(--body);font-weight:700;font-size:12.5px;\n  letter-spacing:.22em;text-transform:uppercase;color:#fff;\n  background:var(--red);padding:15px 22px 15px 26px;\n  clip-path:var(--clip-s);\n  box-shadow:0 0 18px rgba(230,0,4,.35);transition:.3s}\n.mtd .mtd-search-go .go i{font-style:normal;font-weight:400;font-size:15px;\n  transition:transform .3s var(--ease)}\n.mtd .mtd-search:hover .go,.mtd .mtd-search:focus-visible .go{\n  background:#ff1418;box-shadow:0 0 28px rgba(230,0,4,.55)}\n.mtd .mtd-search:hover .go i,.mtd .mtd-search:focus-visible .go i{\n  transform:translateX(4px)}\n\n\/* panel de estado *\/\n.mtd .mtd-clock-block{text-align:right;min-width:250px}\n.mtd .mtd-ctls{display:inline-flex;gap:9px;margin-bottom:20px}\n.mtd .mtd-ctl{position:relative;display:inline-flex;align-items:stretch;padding:4px;\n  background:rgba(255,255,255,.05);\n  border:1px solid var(--line);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}\n.mtd .mtd-ctl button{display:inline-flex;align-items:center;font-family:var(--body);font-weight:700;\n  font-size:12px;letter-spacing:.1em;color:var(--muted);transition:.3s}\n.mtd .mtd-ctl #mtdSnd{padding:6px 11px}\n.mtd .mtd-ctl #mtdLang{padding:0}\n.mtd .mtd-ctl #mtdLang span{display:inline-block;padding:6px 11px;color:var(--muted);transition:.3s}\n.mtd .mtd-ctl #mtdSnd:hover,.mtd .mtd-ctl #mtdLang span:hover{color:#fff}\n.mtd .mtd-ctl button.on,.mtd .mtd-ctl #mtdLang span.on{color:#0a0a0a;background:#fff;\n  box-shadow:0 0 15px rgba(255,255,255,.3)}\n.mtd .mtd-clock{display:flex;align-items:baseline;justify-content:flex-end;gap:6px;\n  font-family:var(--osw);font-weight:500;line-height:1}\n.mtd .mtd-clock b{font-size:clamp(2.6rem,3.6vw,3.6rem);font-weight:500;letter-spacing:.02em;\n  background:linear-gradient(180deg,#fff,#aaa);\n  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}\n.mtd .mtd-clock i{font-style:normal;font-size:clamp(2.6rem,3.6vw,3.6rem);color:var(--red-t);\n  letter-spacing:.02em;min-width:2.4ch;text-align:left}\n.mtd .mtd-clock em{font-style:normal;font-family:var(--body);font-size:10px;\n  letter-spacing:.3em;color:var(--faint);margin-left:6px;font-weight:700}\n.mtd .mtd-cdate{margin-top:12px}\n.mtd .mtd-cstat{display:flex;align-items:center;justify-content:flex-end;gap:9px;\n  margin-top:16px;font-family:var(--body);font-size:11px;letter-spacing:.22em;\n  text-transform:uppercase;font-weight:700;color:#fff}\n.mtd .mtd-cstat .dot{width:8px;height:8px;border-radius:50%;background:var(--red);\n  box-shadow:0 0 10px var(--red);animation:mtdBlink 2s infinite;flex:none}\n.mtd .mtd-cstat.off{color:var(--muted)}\n.mtd .mtd-cstat.off .dot{background:var(--faint);box-shadow:none;animation:none}\n\n\/* \u2550\u2550 TILES \u2014 glass con esquinas cortadas \u2550\u2550 *\/\n.mtd .mtd-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}\n.mtd .mtd-tiles.three{grid-template-columns:repeat(3,1fr)}\n.mtd .mtd-tile{position:relative;min-height:210px;padding:24px;\n  display:flex;flex-direction:column;\n  background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);\n  clip-path:var(--clip);\n  transition:transform .4s var(--ease),filter .4s var(--ease),background .3s}\n.mtd .mtd-tile::before{content:\"\";position:absolute;top:0;left:0;width:100%;height:4px;\n  background:var(--red);transform:translateX(-101%);transition:transform .3s;z-index:3}\n.mtd .mtd-tile::after{content:\"\";position:absolute;inset:0;pointer-events:none;\n  background:linear-gradient(135deg,rgba(255,255,255,.04),rgba(0,0,0,.2))}\n.mtd .mtd-tile:hover,.mtd .mtd-tile:focus-visible{transform:translateY(-8px);\n  filter:drop-shadow(0 0 15px rgba(230,0,4,.3));background:rgba(25,22,22,.72)}\n.mtd .mtd-tile:hover::before,.mtd .mtd-tile:focus-visible::before{transform:translateX(0)}\n.mtd .mtd-tile .ico{width:30px;height:30px;color:var(--red);stroke:var(--red);fill:none;\n  flex:none;position:relative;z-index:2;\n  filter:drop-shadow(0 0 10px rgba(230,0,4,.6));transition:.3s}\n.mtd .mtd-tile:hover .ico{transform:scale(1.1);color:#fff;stroke:#fff}\n.mtd .mtd-tile .keyhint{position:absolute;top:16px;right:16px;z-index:2;\n  font-family:var(--mono);font-size:15px;font-weight:700;color:#fff;\n  padding:8px 15px;border:1px solid rgba(230,0,4,.55);background:rgba(230,0,4,.12);\n  clip-path:var(--clip-c);transition:.3s}\n.mtd .mtd-tile:hover .keyhint{color:#fff;border-color:var(--red);background:rgba(230,0,4,.28);\n  box-shadow:0 0 14px rgba(230,0,4,.35)}\n.mtd .mtd-tile .btm{margin-top:auto;position:relative;z-index:2;padding-top:28px}\n.mtd .mtd-tile .kicker{display:block;font-family:var(--body);font-size:10px;\n  letter-spacing:.24em;text-transform:uppercase;color:var(--red-t);font-weight:700;\n  margin-bottom:8px}\n.mtd .mtd-tile .name{display:block;font-family:var(--osw);font-weight:500;\n  letter-spacing:.04em;line-height:1.12;text-transform:uppercase;\n  font-size:clamp(1.15rem,1.6vw,1.4rem);max-width:13ch;color:#fff}\n.mtd .mtd-tile .arw{position:absolute;bottom:18px;right:18px;z-index:2;color:var(--faint);\n  font-size:17px;transition:transform .3s var(--ease),color .3s}\n.mtd .mtd-tile:hover .arw{color:var(--red-t);transform:translateX(4px)}\n\n\/* \u2550\u2550 DOCUMENTOS \u2014 tabla HUD \u2550\u2550 *\/\n.mtd .mtd-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}\n.mtd .mtd-docfind{display:flex;align-items:center;gap:13px;padding:4px 2px 14px;\n  border-bottom:1px solid var(--line);margin-bottom:6px;transition:border-color .25s}\n.mtd .mtd-docfind:focus-within{border-color:rgba(230,0,4,.5)}\n.mtd .mtd-docfind input{flex:1;background:none;border:0;color:#fff;font-size:15px;\n  outline:none;min-width:0;box-shadow:none;padding:0;height:auto;font-weight:500}\n.mtd .mtd-docfind input::placeholder{color:var(--faint)}\n.mtd .mtd-docfind svg{width:16px;height:16px;stroke:var(--red);stroke-width:2.2;fill:none;\n  flex:none;filter:drop-shadow(0 0 6px rgba(230,0,4,.6))}\n.mtd .mtd-doclist{display:flex;flex-direction:column}\n.mtd .mtd-docgrp{display:flex;align-items:baseline;gap:14px;padding:42px 2px 12px}\n.mtd .mtd-docgrp .lbl{color:#fff;font-family:var(--osw);font-weight:500;\n  font-size:clamp(1.2rem,1.7vw,1.5rem);letter-spacing:.09em;text-transform:uppercase}\n.mtd .mtd-docgrp i{font-style:normal;font-family:var(--osw);\n  font-size:clamp(1.2rem,1.7vw,1.5rem);\n  letter-spacing:.09em;color:var(--red-t);font-weight:500}\n.mtd .mtd-doc{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;\n  gap:clamp(16px,3vw,40px);padding:16px 8px;border-bottom:1px solid var(--line);\n  position:relative;transition:background .2s,padding .25s var(--ease)}\n.mtd .mtd-docgrp+.mtd-doc{border-top:1px solid var(--line)}\n.mtd .mtd-doc::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:3px;\n  background:var(--red);box-shadow:0 0 8px rgba(230,0,4,.6);\n  transform:scaleY(0);transition:transform .25s var(--ease)}\n.mtd .mtd-doc:hover,.mtd .mtd-doc:focus-visible{background:rgba(255,255,255,.03);\n  padding-left:18px;padding-right:12px}\n.mtd .mtd-doc:hover::before{transform:scaleY(1)}\n.mtd .mtd-doc .t{font-weight:500;letter-spacing:.01em;line-height:1.35;\n  font-size:clamp(.95rem,1.4vw,1.05rem);color:#eee}\n.mtd .mtd-doc:hover .t{color:#fff}\n.mtd .mtd-doc .rm{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;\n  text-transform:uppercase;color:var(--muted);white-space:nowrap;text-align:right}\n.mtd .mtd-doc .go{position:relative;width:34px;height:34px;display:grid;place-items:center;\n  border:1px solid rgba(230,0,4,.35);background:rgba(230,0,4,.08);color:var(--red-t);\n  font-size:14px;clip-path:var(--clip-c);transition:.25s}\n.mtd .mtd-doc:hover .go{background:var(--red);border-color:var(--red);color:#fff;\n  box-shadow:0 0 20px rgba(230,0,4,.4)}\n.mtd .mtd-empty{padding:40px 2px;color:var(--muted);font-family:var(--body);\n  font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:700}\n\n\/* \u2550\u2550 RECIENTES \u2550\u2550 *\/\n.mtd #mtdRecientes{padding-top:30px;padding-bottom:30px;border-top:0}\n.mtd #mtdRecientes[hidden]{display:none}\n.mtd .mtd-rec{display:flex;gap:8px;flex-wrap:wrap}\n.mtd .mtd-rec .mtd-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;\n  max-width:260px}\n\n\/* \u2550\u2550 AYUDA \u2014 consola HUD de cierre: un solo panel de vidrio con celdas \u2550\u2550 *\/\n.mtd .mtd-console{position:relative;display:grid;\n  grid-template-columns:repeat(3,minmax(0,1fr));\n  background:var(--glass);border:1px solid var(--line);\n  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);\n  clip-path:var(--clip)}\n.mtd .mtd-console::before,.mtd .mtd-console::after{content:\"\";position:absolute;\n  height:1px;background:var(--line);pointer-events:none;z-index:2}\n.mtd .mtd-console::before{top:0;left:0;width:28.6px;\n  transform:translate(20px,0) rotate(135deg);transform-origin:0 0}\n.mtd .mtd-console::after{bottom:0;right:20px;width:28.6px;\n  transform:rotate(135deg);transform-origin:100% 100%}\n.mtd .mtd-card{display:flex;flex-direction:column;min-width:0;\n  padding:0;background:none;border:0;border-left:1px solid var(--line)}\n.mtd .mtd-card:first-of-type{border-left:0}\n\/* RECINTOS: fila completa bajo las otras 3 celdas \u2014 el mapa gana todo el ancho *\/\n.mtd .mtd-card:nth-of-type(4){grid-column:1\/-1;border-left:0;\n  border-top:1px solid var(--line)}\n.mtd .mtd-card .kicker{display:block;font-family:var(--body);font-size:10px;\n  letter-spacing:.3em;text-transform:uppercase;color:var(--red-t);font-weight:700;\n  padding:19px 26px 15px;margin:0;border-bottom:1px solid var(--line);\n  background:rgba(255,255,255,.03)}\n.mtd .mtd-card .bd{flex:1;padding:26px 26px 32px}\n.mtd .mtd-card .big{font-family:var(--osw);font-weight:500;letter-spacing:.02em;\n  font-size:clamp(1.25rem,1.8vw,1.5rem);line-height:1.1;display:inline-block;color:#fff;\n  text-transform:uppercase}\n.mtd .mtd-card a.big:hover{color:var(--red-t)}\n.mtd .mtd-card .ext{display:block;font-style:normal;font-family:var(--body);\n  font-size:9.5px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;\n  color:var(--red-t);margin-top:7px}\n.mtd .mtd-card p{margin-top:16px;color:var(--muted);font-size:13px;line-height:1.6}\n.mtd .mtd-hours{font-size:13px;color:var(--muted)}\n.mtd .mtd-hours li{display:flex;justify-content:space-between;gap:14px;padding:7px 0}\n.mtd .mtd-hours li:first-child{padding-top:0}\n.mtd .mtd-hours li b{color:#fff;font-weight:500;font-family:var(--osw);\n  font-size:13px;letter-spacing:.08em}\n.mtd .mtd-campus{display:flex;flex-wrap:wrap;gap:8px}\n.mtd .mtd-campus .hq{font-style:normal;font-family:var(--body);font-size:8px;\n  font-weight:700;letter-spacing:.14em;color:var(--red-t);flex:none;\n  align-self:flex-start;margin:-2px 0 0 -1px;text-shadow:0 0 8px rgba(230,0,4,.6)}\n\/* mapa de recintos adoptado (widget Elementor movido al slot) \u2014 sin marco:\n   el widget se presenta tal cual, sin caja adicional.\n   overflow:hidden = contenci\u00f3n: nada de adentro (p.ej. la tarjeta overlay\n   absoluta del plugin) se pinta fuera de la celda ni sobre el label RECINTOS\n   (la overlay ancla en el .multi-google-maps-wrapper del plugin, que ya es\n   position:relative \u2014 el slot no necesita position propio).\n   padding-top:60px = aire bajo el kicker; min-height 420 < contenido real,\n   as\u00ed la celda abraza el widget y no queda espacio muerto abajo. *\/\n.mtd .mtd-mapa{margin-top:0;overflow:hidden;\n  padding-top:60px;min-height:420px}\n.mtd .mtd-mapa>*{width:100%!important;max-width:100%!important;margin:0!important}\n.mtd .mtd-mapa iframe{display:block;width:100%!important;min-height:240px;border:0}\n\n\/* placa: fila final integrada en la consola *\/\n.mtd .mtd-plate{grid-column:1\/-1;display:flex;align-items:center;\n  justify-content:space-between;gap:12px 28px;flex-wrap:wrap;\n  padding:17px 26px;border-top:1px solid var(--line);\n  background:rgba(255,255,255,.03)}\n.mtd .mtd-plate,.mtd .mtd-plate b{font-family:var(--body);font-size:10px;\n  letter-spacing:.28em;text-transform:uppercase;color:#555;font-weight:700}\n.mtd .mtd-plate b{color:var(--muted)}\n\n\/* \u2550\u2550 PALETA (vive en <body>) \u2550\u2550 *\/\n.mtd-scrim{position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.82);\n  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;pointer-events:none;\n  transition:opacity .2s}\n.mtd-scrim.on{opacity:1;pointer-events:auto}\n.mtd-pal{position:fixed;z-index:2147483001;left:50%;top:clamp(48px,9vh,110px);\n  transform:translate(-50%,-12px) scale(.98);width:min(720px,calc(100vw - 28px));\n  max-height:min(640px,78vh);display:flex;flex-direction:column;\n  clip-path:polygon(20px 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%,0 20px);\n  background:rgba(15,15,15,.78);backdrop-filter:blur(24px) saturate(140%);\n  -webkit-backdrop-filter:blur(24px) saturate(140%);\n  border:1px solid rgba(255,255,255,.1);color:#fff;\n  font-family:'Chakra Petch',sans-serif;\n  opacity:0;pointer-events:none;\n  transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}\n.mtd-pal.on{opacity:1;pointer-events:auto;transform:translate(-50%,0) scale(1)}\n.mtd-pal *,.mtd-pal *::before,.mtd-pal *::after{box-sizing:border-box}\n.mtd-pal .in{display:flex;align-items:center;gap:14px;padding:21px 24px;\n  border-bottom:1px solid rgba(255,255,255,.09);position:relative}\n.mtd-pal .in::before{content:\"\";position:absolute;top:0;left:0;width:100%;height:3px;\n  background:#E60004;box-shadow:0 0 12px rgba(230,0,4,.6)}\n.mtd-pal .in svg{width:19px;height:19px;stroke:#E60004;stroke-width:2.2;fill:none;flex:none;\n  filter:drop-shadow(0 0 8px rgba(230,0,4,.7))}\n.mtd-pal input{flex:1;background:none;border:0;outline:none;color:#fff;box-shadow:none;\n  padding:0;margin:0;height:auto;min-width:0;\n  font-family:'URW Gothic Demi','Oswald Disp',impact,sans-serif;font-weight:700;\n  font-synthesis:none;text-transform:none;letter-spacing:.01em;\n  font-size:clamp(1.3rem,2.8vw,1.8rem);caret-color:#E60004}\n.mtd-pal input::placeholder{color:#666}\n.mtd-pal kbd{position:relative;font-family:'Chakra Petch',monospace;font-size:11px;\n  padding:7px 11px;\n  border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);\n  color:#9a9a9e;flex:none;line-height:1;\n  clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}\n.mtd-pal .res{overflow-y:auto;overscroll-behavior:contain;padding:8px;scrollbar-width:thin;\n  scrollbar-color:rgba(255,255,255,.18) transparent}\n.mtd-pal .res::-webkit-scrollbar{width:8px}\n.mtd-pal .res::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14)}\n.mtd-pal .grp{font-family:'Chakra Petch',sans-serif;font-size:9.5px;letter-spacing:.3em;\n  text-transform:uppercase;color:#666;padding:16px 14px 8px;margin:0;font-weight:700}\n.mtd-pal .opt{position:relative;display:flex;align-items:center;gap:14px;padding:12px 14px;\n  cursor:pointer;scroll-margin:12px;\n  clip-path:polygon(8px 0,100% 0,100% 100%,0 100%,0 8px)}\n.mtd-pal .opt::before{content:\"\";position:absolute;left:0;top:0;bottom:0;width:3px;\n  background:#E60004;box-shadow:0 0 8px rgba(230,0,4,.6);opacity:0;transition:opacity .15s}\n.mtd-pal .opt[aria-selected=\"true\"]{background:rgba(230,0,4,.1)}\n.mtd-pal .opt[aria-selected=\"true\"]::before{opacity:1}\n.mtd-pal .opt .ic{flex:none;width:34px;height:34px;display:grid;place-items:center;\n  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);\n  font-family:'Chakra Petch',monospace;font-size:8.5px;color:#9a9a9e;font-weight:700;\n  clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}\n.mtd-pal .opt[aria-selected=\"true\"] .ic{border-color:rgba(230,0,4,.5);color:#FF4D4F;\n  background:rgba(230,0,4,.12)}\n.mtd-pal .opt .tx{flex:1;min-width:0}\n.mtd-pal .opt .tx b{display:block;font-weight:500;font-size:14.5px;line-height:1.25;\n  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff}\n.mtd-pal .opt .tx small{display:block;font-family:'Chakra Petch',monospace;font-size:9.5px;\n  letter-spacing:.12em;text-transform:uppercase;color:#777;margin-top:4px;\n  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n.mtd-pal .opt .ent{font-family:'Chakra Petch',monospace;font-size:10px;color:#666;\n  opacity:0;flex:none}\n.mtd-pal .opt[aria-selected=\"true\"] .ent{opacity:1;color:#FF4D4F}\n.mtd-pal .sugg{display:flex;gap:8px;flex-wrap:wrap;padding:4px 14px 16px}\n.mtd-pal .sugg button{position:relative;font-family:'Oswald',sans-serif;font-size:11px;\n  letter-spacing:.12em;text-transform:uppercase;padding:7px 14px;\n  border:1px solid rgba(230,0,4,.4);color:#fff;background:rgba(255,255,255,.04);\n  cursor:pointer;transition:.25s;\n  clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px)}\n.mtd-pal .sugg button:hover{background:rgba(230,0,4,.15);border-color:#E60004}\n.mtd-pal .foot{display:flex;gap:18px;flex-wrap:wrap;padding:12px 22px;\n  border-top:1px solid rgba(255,255,255,.09);font-family:'Chakra Petch',monospace;\n  font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#666;font-weight:700}\n.mtd-pal .foot b{color:#9a9a9e;font-weight:700}\n.mtd-pal .foot .cnt{margin-left:auto}\n.mtd-pal .empty{padding:28px 14px 6px;color:#777;font-family:'Chakra Petch',sans-serif;\n  font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin:0;font-weight:700}\n.mtd mark,.mtd-pal mark{background:none;color:#FF4D4F;font-weight:700;padding:0}\nbody.mtd-locked{overflow:hidden}\n\n\/* \u2550\u2550 LIGHTBOX DE VIDEOS \u2014 MTC Online (misma gram\u00e1tica que la paleta) \u2550\u2550 *\/\n.mtd-vid{position:fixed;z-index:2147483001;left:50%;top:50%;\n  transform:translate(-50%,calc(-50% + 14px)) scale(.98);\n  width:min(960px,calc(100vw - 28px));max-height:min(780px,90vh);\n  display:flex;flex-direction:column;\n  clip-path:polygon(20px 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%,0 20px);\n  background:rgba(15,15,15,.82);backdrop-filter:blur(24px) saturate(140%);\n  -webkit-backdrop-filter:blur(24px) saturate(140%);\n  border:1px solid rgba(255,255,255,.1);color:#fff;\n  font-family:'Chakra Petch',sans-serif;\n  opacity:0;pointer-events:none;\n  transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}\n.mtd-vid.on{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}\n.mtd-vid *,.mtd-vid *::before,.mtd-vid *::after{box-sizing:border-box}\n.mtd-vid .hd{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;\n  padding:22px 24px 18px;border-bottom:1px solid rgba(255,255,255,.09);position:relative;flex:none}\n.mtd-vid .hd::before{content:\"\";position:absolute;top:0;left:0;width:100%;height:3px;\n  background:#E60004;box-shadow:0 0 12px rgba(230,0,4,.6)}\n.mtd-vid .hd .kick{display:block;font-family:'Chakra Petch',monospace;font-size:9.5px;\n  letter-spacing:.3em;text-transform:uppercase;color:#FF4D4F;font-weight:700;margin:0 0 9px}\n.mtd-vid .hd .ttl{display:block;font-family:'URW Gothic Demi','Oswald Disp',impact,sans-serif;\n  font-weight:700;font-synthesis:none;text-transform:none;letter-spacing:.01em;line-height:1;\n  font-size:clamp(1.4rem,3vw,1.9rem);color:#fff}\n.mtd-vid .x{position:relative;flex:none;cursor:pointer;\n  font-family:'Chakra Petch',monospace!important;font-size:11px;letter-spacing:.1em;\n  line-height:1;padding:8px 12px!important;\n  border:1px solid rgba(255,255,255,.14)!important;background:rgba(255,255,255,.05)!important;\n  color:#9a9a9e!important;border-radius:0!important;-webkit-appearance:none;appearance:none;\n  clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px);transition:.2s}\n.mtd-vid .x:hover,.mtd-vid .x:focus-visible{border-color:rgba(230,0,4,.7)!important;\n  color:#fff!important;background:rgba(230,0,4,.15)!important;outline:none}\n.mtd-vid .note{margin:0;padding:15px 24px 0;flex:none;\n  font-family:'Chakra Petch',sans-serif;font-size:12.5px;line-height:1.6;color:#9a9a9e}\n.mtd-vid .vids{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;\n  padding:18px 24px 22px;overflow-y:auto;overscroll-behavior:contain;\n  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}\n.mtd-vid .vids::-webkit-scrollbar{width:8px}\n.mtd-vid .vids::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14)}\n.mtd-vid .vcard{position:relative;border:1px solid rgba(255,255,255,.1);\n  background:rgba(255,255,255,.03);display:flex;flex-direction:column;\n  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);\n  transition:border-color .2s}\n.mtd-vid .vcard:hover{border-color:rgba(230,0,4,.55)}\n.mtd-vid .vcard.live{grid-column:1\/-1;border-color:rgba(230,0,4,.55)}\n.mtd-vid .frame{position:relative;aspect-ratio:16\/9;background:#000;overflow:hidden;flex:none}\n.mtd-vid .thumb{display:block;position:absolute;inset:0;width:100%;height:100%;cursor:pointer;\n  padding:0!important;margin:0;border:0!important;border-radius:0!important;\n  background:#000!important;color:#fff!important;overflow:hidden;\n  -webkit-appearance:none;appearance:none}\n.mtd-vid .thumb:focus-visible{outline:2px solid #E60004;outline-offset:-2px}\n.mtd-vid .thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:.8;\n  transition:opacity .25s,transform .35s}\n.mtd-vid .vcard:hover .thumb img,.mtd-vid .thumb:focus-visible img{opacity:1;transform:scale(1.04)}\n.mtd-vid .thumb .play{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}\n.mtd-vid .thumb .play i{display:grid;place-items:center;width:54px;height:46px;\n  background:rgba(8,8,8,.74);border:1px solid rgba(230,0,4,.65);\n  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);\n  box-shadow:0 0 18px rgba(230,0,4,.35);transition:background .2s}\n.mtd-vid .vcard:hover .play i{background:rgba(230,0,4,.28)}\n.mtd-vid .thumb .play svg{width:16px;height:16px;display:block}\n.mtd-vid .vcard.live .thumb{display:none}\n.mtd-vid .frame iframe{position:absolute;inset:0;width:100%!important;height:100%!important;\n  border:0!important;display:block}\n.mtd-vid .vtx{display:block;padding:13px 15px 15px}\n.mtd-vid .vtx .vkick{display:block;font-family:'Chakra Petch',monospace;font-size:8.5px;\n  letter-spacing:.24em;text-transform:uppercase;color:#777;font-weight:700;margin-bottom:6px}\n.mtd-vid .vtx .vname{display:block;font-size:13.5px;line-height:1.4;color:#fff;font-weight:500}\n.mtd-vid .foot{display:flex;gap:18px;flex-wrap:wrap;padding:12px 22px;flex:none;\n  border-top:1px solid rgba(255,255,255,.09);font-family:'Chakra Petch',monospace;\n  font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#666;font-weight:700}\n.mtd-vid .foot b{color:#9a9a9e;font-weight:700}\n.mtd-vid .foot .cnt{margin-left:auto}\n\n\/* \u2550\u2550 RESPONSIVE \u2550\u2550 *\/\n@media(max-width:1080px){\n  .mtd .mtd-hero{grid-template-columns:1fr;align-items:start}\n  .mtd .mtd-clock-block{text-align:left;min-width:0}\n  .mtd .mtd-clock,.mtd .mtd-cstat{justify-content:flex-start}\n  .mtd .mtd-tiles,.mtd .mtd-tiles.three{grid-template-columns:repeat(2,1fr)}\n  .mtd .mtd-kbd-grid{grid-template-columns:1fr;gap:26px}\n  .mtd .mtd-kbd-toggle .keys{display:none}\n  .mtd .mtd-console{grid-template-columns:repeat(2,minmax(0,1fr))}\n  .mtd .mtd-card:nth-of-type(3){border-left:0}\n  .mtd .mtd-card:nth-of-type(n+3){border-top:1px solid var(--line)}\n  .mtd-vid .vids{grid-template-columns:repeat(2,minmax(0,1fr))}\n}\n@media(max-width:720px){\n  .mtd{font-size:15px}\n  .mtd .mtd-hero{padding-top:38px;padding-bottom:30px;gap:26px}\n  .mtd .mtd-sec{padding-top:46px;padding-bottom:46px}\n  .mtd .mtd-ctls{margin-bottom:16px}\n  .mtd .mtd-status{font-size:10px;letter-spacing:.22em;margin-bottom:14px}\n  .mtd .mtd-search{padding:19px 18px;gap:13px;\n    clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}\n  .mtd .mtd-search .ph{font-size:1rem}\n  .mtd .mtd-search .ico{width:21px;height:21px}\n  .mtd .mtd-tile .keyhint{font-size:13px;padding:6px 12px}\n  .mtd .mtd-clock b,.mtd .mtd-clock i{font-size:2.2rem}\n  .mtd .mtd-docgrp .lbl,.mtd .mtd-docgrp i{font-size:1.1rem}\n  .mtd .mtd-search .cut-tl{width:20.2px;transform:translate(14px,0) rotate(135deg)}\n  .mtd .mtd-search .cut-br{width:20.2px;right:14px}\n  .mtd-pal::before,.mtd-pal::after{display:none}\n  .mtd .mtd-tiles,.mtd .mtd-tiles.three{grid-template-columns:repeat(2,1fr);gap:10px}\n  .mtd .mtd-tile{min-height:158px;padding:16px;\n    clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}\n  .mtd .mtd-tile .name{font-size:1rem}\n  .mtd .mtd-tile .btm{padding-top:18px}\n  .mtd .mtd-doc{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}\n  .mtd .mtd-doc .rm{grid-column:1;grid-row:2;text-align:left;\n    overflow:hidden;text-overflow:ellipsis}\n  .mtd .mtd-doc .go{grid-column:2;grid-row:1\/3}\n  .mtd .hide-sm,.mtd-pal .hide-sm{display:none!important}\n  .mtd-pal{top:0;left:0;transform:translateY(-10px);width:100vw;max-height:100vh;height:100%;\n    clip-path:none;border:0}\n  .mtd-pal.on{transform:translateY(0)}\n  .mtd-pal .res{flex:1}\n  .mtd-pal .foot{display:none}\n  .mtd-vid{top:0;left:0;transform:translateY(-10px);width:100vw;max-height:100vh;height:100%;\n    clip-path:none;border:0}\n  .mtd-vid.on{transform:translateY(0)}\n  .mtd-vid .vids{grid-template-columns:1fr;flex:1}\n  .mtd-vid .foot{display:none}\n  .mtd .mtd-console{grid-template-columns:1fr}\n  .mtd .mtd-card{border-left:0}\n  .mtd .mtd-card:nth-of-type(n+2){border-top:1px solid var(--line)}\n  .mtd .mtd-card .kicker{padding:15px 18px 12px}\n  .mtd .mtd-card .bd{padding:20px 18px 26px}\n  .mtd .mtd-plate{justify-content:center;text-align:center;padding:15px 18px}\n}\n\/* touch primario (celular \/ tablet sin trackpad): fuera las affordances de\n   teclado y el sonido \u2014 WebAudio en iOS es poco fiable (switch de silencio)\n   y sin teclado f\u00edsico los atajos no aplican. hover:none + pointer:coarse\n   mira el input PRIMARIO: un iPad con teclado\/trackpad los conserva. *\/\n.mtd-vid .x .if-touch{display:none}\n@media (hover:none) and (pointer:coarse){\n  .mtd .mtd-ctl-snd,\n  .mtd .mtd-kbd-sec,\n  .mtd .mtd-tile .keyhint,\n  .mtd .mtd-search-go kbd,\n  .mtd .mtd-plate .hide-sm,\n  .mtd-pal .in kbd,\n  .mtd-pal .foot,\n  .mtd-vid .foot{display:none!important}\n  .mtd-vid .x .if-kbd{display:none}\n  .mtd-vid .x .if-touch{display:inline}\n}\n@media(prefers-reduced-motion:reduce){\n  .mtd *,.mtd *::before,.mtd *::after,.mtd-pal,.mtd-vid,.mtd-vid *,.mtd-scrim{\n    animation-duration:.001ms!important;animation-iteration-count:1!important;\n    transition-duration:.001ms!important}\n}\n@media print{.mtd .mtd-search,.mtd-scrim,.mtd-pal,.mtd-vid,.mtd .mtd-bg{display:none}}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   BLINDAJE \u2014 re-afirma lo m\u00ednimo contra temas que usan !important.\n   \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n.mtd,.mtd p:not(.mtd-mapa *),.mtd input:not(.mtd-mapa *),.mtd button:not(.mtd-mapa *){font-family:var(--body)!important}\n.mtd h1:not(.mtd-mapa *),.mtd h2:not(.mtd-mapa *),.mtd h3:not(.mtd-mapa *){font-family:var(--disp)!important;\n  text-transform:none!important;font-weight:700!important;\n  font-synthesis:none!important;\n  margin:0!important;padding:0!important;letter-spacing:.01em!important;\n  line-height:1!important}\n.mtd .mtd-hero h1{font-size:clamp(1.6rem,3vw,2.5rem)!important;line-height:1!important}\n.mtd .mtd-head h2{font-size:clamp(2rem,5.4vw,3.4rem)!important}\n.mtd .mtd-tile .name,.mtd .mtd-card .big{font-family:var(--osw)!important;\n  text-transform:uppercase!important;font-weight:500!important}\n.mtd .mtd-doc .t{font-family:var(--body)!important;font-weight:500!important;\n  text-transform:none!important}\n.mtd .lbl,.mtd .mtd-meta,.mtd .mtd-empty,.mtd kbd,.mtd .mtd-doc .rm,\n.mtd .mtd-card .kicker,.mtd .mtd-tile .kicker,.mtd .mtd-status,.mtd .mtd-cstat,\n.mtd .mtd-cdate,.mtd .mtd-plate,.mtd .mtd-plate b{font-family:var(--body)!important}\n.mtd .mtd-clock,.mtd .mtd-hours li b,.mtd .mtd-docgrp i,.mtd .mtd-chip,\n.mtd .mtd-docgrp .lbl{font-family:var(--osw)!important}\n.mtd a:not(.mtd-mapa *){color:inherit!important;text-decoration:none!important;box-shadow:none!important}\n.mtd .mtd-card a.big:hover{color:var(--red-t)!important}\n.mtd ul:not(.mtd-mapa *){list-style:none!important;padding-left:0!important;margin:0!important}\n.mtd p{margin:0!important}\n.mtd .mtd-card p{margin-top:16px!important}\n.mtd .mtd-card p.kicker{margin-top:0!important}\n.mtd .mtd-chip{background:rgba(255,255,255,.04)!important;\n  border:1px solid rgba(230,0,4,.4)!important;color:#fff!important;\n  padding:8px 15px!important;border-radius:0!important;\n  font-size:11.5px!important;font-weight:500!important;\n  text-transform:uppercase!important;letter-spacing:.14em!important}\n.mtd .mtd-chip:hover{background:rgba(230,0,4,.15)!important;border-color:var(--red)!important}\n.mtd .mtd-chip[aria-pressed=\"true\"]{background:#fff!important;color:#0a0a0a!important;\n  border-color:#fff!important}\n.mtd .mtd-search{border:1px solid var(--line)!important;border-radius:0!important;\n  background:var(--glass)!important;color:#fff!important;padding:20px 24px!important}\n.mtd .mtd-search .ph{font-family:var(--osw)!important;font-weight:500!important;\n  text-transform:uppercase!important;letter-spacing:.08em!important}\n.mtd .mtd-docfind input{background:none!important;border:0!important;box-shadow:none!important;\n  color:#fff!important;padding:0!important;height:auto!important}\n.mtd .mtd-ctl button{background:none!important;border:0!important;color:var(--muted)!important;\n  border-radius:0!important;font-size:12px!important}\n.mtd .mtd-ctl #mtdSnd{padding:6px 11px!important}\n.mtd .mtd-ctl #mtdLang{padding:0!important}\n.mtd .mtd-ctl button.on,.mtd .mtd-ctl #mtdLang span.on{background:#fff!important;color:#0a0a0a!important}\n.mtd-pal,.mtd-pal .opt .tx b{font-family:'Chakra Petch',sans-serif!important}\n.mtd-pal input{font-family:'URW Gothic Demi','Oswald Disp',impact,sans-serif!important;\n  font-weight:700!important;text-transform:none!important}\n.mtd-pal .sugg button{font-family:'Oswald',sans-serif!important;\n  background:rgba(255,255,255,.04)!important;border:1px solid rgba(230,0,4,.4)!important;\n  color:#fff!important;padding:7px 14px!important;border-radius:0!important}\n.mtd-pal input{background:none!important;border:0!important;box-shadow:none!important;\n  color:#fff!important;padding:0!important;height:auto!important;text-transform:none!important;\n  font-weight:500!important}\n.mtd-pal p{margin:0!important}\n.mtd-pal .opt{cursor:pointer!important}\n<\/style>\n\n\n<div class=\"mtd\" id=\"mtd\">\n  <div class=\"mtd-bg\" aria-hidden=\"true\"><\/div>\n\n  <!-- \u2550\u2550 HERO \u2550\u2550 -->\n  <div class=\"mtd-hero\">\n    <div>\n      <p class=\"mtd-status\">\n        <span class=\"dot\" aria-hidden=\"true\"><\/span>\n        <span id=\"mtdGreet\">Buenas tardes<\/span>\n        <span class=\"sep\">\/<\/span>\n        <span class=\"soft\" data-i=\"eyebrow\">Dashboard del Estudiante<\/span>\n      <\/p>\n      <!-- Si la plantilla ya imprime el t\u00edtulo de la p\u00e1gina como <h1>, cambiar a <h2>. -->\n      <!-- Con URW Gothic Demi (Latin completo) la tilde vuelve: \u00bfQu\u00e9? correcto. -->\n      <h1><span data-i=\"h1q\" id=\"mtdH1\">\u00bfQu\u00e9 necesitas hoy?<\/span><\/h1>\n\n      <button class=\"mtd-search\" id=\"mtdSearchBtn\" type=\"button\" aria-haspopup=\"dialog\">\n        <i class=\"cut-tl\" aria-hidden=\"true\"><\/i><i class=\"cut-br\" aria-hidden=\"true\"><\/i>\n        <svg class=\"ico\" viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"11\" cy=\"11\" r=\"7\"\/><path d=\"m20 20-3.5-3.5\"\/><\/svg>\n        <span class=\"ph\" data-i=\"ph\">Busca un documento o servicio\u2026<\/span>\n        <span class=\"mtd-search-go hide-sm\" aria-hidden=\"true\">\n          <kbd>\u2318K<\/kbd>\n          <span class=\"go\"><span data-i=\"buscarBtn\">Buscar<\/span><i>\u2192<\/i><\/span>\n        <\/span>\n      <\/button>\n    <\/div>\n\n    <div class=\"mtd-clock-block\" role=\"group\" aria-label=\"Estado del sistema\">\n      <div class=\"mtd-ctls\">\n        <div class=\"mtd-ctl mtd-ctl-snd\">\n          <button id=\"mtdSnd\" type=\"button\" aria-pressed=\"false\" title=\"Sonido de interfaz\">\n            <span id=\"mtdSndIco\" aria-hidden=\"true\">\u266a<\/span><\/button>\n        <\/div>\n        <div class=\"mtd-ctl\">\n          <button id=\"mtdLang\" type=\"button\" aria-label=\"Switch to English\"><span\n            id=\"mtdLangEs\" class=\"on\">ES<\/span><span id=\"mtdLangEn\">EN<\/span><\/button>\n        <\/div>\n      <\/div>\n      <div class=\"mtd-clock\" aria-live=\"off\">\n        <b id=\"mtdClock\">--:--<\/b><i id=\"mtdSec\">:--<\/i><em><span id=\"mtdAmpm\"><\/span> AST<\/em>\n      <\/div>\n      <p class=\"mtd-cdate lbl\" id=\"mtdToday\"><\/p>\n      <div class=\"mtd-cstat\" id=\"mtdCampus\"><span class=\"dot\" aria-hidden=\"true\"><\/span>\n        <span id=\"mtdCampusTxt\"><\/span><\/div>\n    <\/div>\n  <\/div>\n\n  <!-- \u2550\u2550 RECIENTES \u2550\u2550 -->\n  <section class=\"mtd-sec\" id=\"mtdRecientes\" hidden aria-labelledby=\"mtdRecH\">\n    <p class=\"lbl\" id=\"mtdRecH\" style=\"padding-bottom:14px\" data-i=\"recent\">Contin\u00faa donde quedaste<\/p>\n    <div class=\"mtd-rec\" id=\"mtdRecList\"><\/div>\n  <\/section>\n\n  <!-- \u2550\u2550 ACCESOS \u2550\u2550 -->\n  <!-- \u2550\u2550 MAPA DE TECLADO (dibujo t\u00e9cnico) \u2550\u2550 -->\n  <section class=\"mtd-sec mtd-kbd-sec hide-sm\" aria-labelledby=\"mtdKbdH\" style=\"border-top:0\">\n    <button class=\"mtd-kbd-toggle\" id=\"mtdKbdToggle\" type=\"button\"\n            aria-expanded=\"false\" aria-controls=\"mtdKbdBody\">\n      <span class=\"kicker\" data-i=\"kbdKick\">Controles<\/span>\n      <span class=\"t\" id=\"mtdKbdH\" data-i=\"kbdT\">Todo se opera desde el teclado<\/span>\n      <span class=\"keys\" aria-hidden=\"true\"><kbd>1\u20138<\/kbd><kbd>\u2318K<\/kbd><kbd>\u21b5<\/kbd><kbd>ESC<\/kbd><\/span>\n      <span class=\"cta\" id=\"mtdKbdCta\" data-i=\"kbdOpen\">Ver instrucciones<\/span>\n      <span class=\"pm\" aria-hidden=\"true\"><\/span>\n    <\/button>\n    <div class=\"mtd-kbd-wrap\" id=\"mtdKbdBody\">\n     <div class=\"in\">\n    <div class=\"mtd-kbd-grid\">\n      <figure class=\"mtd-kbd\" role=\"img\" aria-label=\"Mapa de atajos: teclas 1 a 8 abren los accesos, \u2318K o \/ abren el buscador, flechas navegan, Enter abre, Escape cierra\">\n        <svg viewBox=\"0 0 594 286\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\"><path class=\"case\" d=\"M 12 40 H 594 V 222 L 582 234 H 0 V 52 Z\"\/><text class=\"brand\" x=\"580\" y=\"229.5\" text-anchor=\"end\">MECH-TECH COLLEGE<\/text><rect class=\"k on\" x=\"14.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"52.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"90.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"128.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"166.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"204.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"242.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"280.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"318.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"356.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"394.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"432.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"470.0\" y=\"54\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"508.0\" y=\"54\" width=\"72.0\" height=\"30\"\/><rect class=\"k\" x=\"14.0\" y=\"88\" width=\"53.0\" height=\"30\"\/><rect class=\"k\" x=\"71.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"109.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"147.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"185.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"223.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"261.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"299.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"337.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"375.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"413.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"451.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"489.0\" y=\"88\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"527.0\" y=\"88\" width=\"53.0\" height=\"30\"\/><rect class=\"k\" x=\"14.0\" y=\"122\" width=\"62.5\" height=\"30\"\/><rect class=\"k\" x=\"80.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"118.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"156.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"194.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"232.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"270.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"308.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"346.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"384.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"422.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"460.5\" y=\"122\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"498.5\" y=\"122\" width=\"81.5\" height=\"30\"\/><rect class=\"k\" x=\"14.0\" y=\"156\" width=\"81.5\" height=\"30\"\/><rect class=\"k\" x=\"99.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"137.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"175.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"213.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"251.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"289.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"327.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"365.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"403.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"441.5\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"479.5\" y=\"156\" width=\"62.5\" height=\"30\"\/><rect class=\"k on\" x=\"546.0\" y=\"156\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"14.0\" y=\"190\" width=\"43.5\" height=\"30\"\/><rect class=\"k\" x=\"61.5\" y=\"190\" width=\"43.5\" height=\"30\"\/><rect class=\"k on\" x=\"109.0\" y=\"190\" width=\"43.5\" height=\"30\"\/><rect class=\"k\" x=\"156.5\" y=\"190\" width=\"214.5\" height=\"30\"\/><rect class=\"k\" x=\"375.0\" y=\"190\" width=\"43.5\" height=\"30\"\/><rect class=\"k\" x=\"422.5\" y=\"190\" width=\"43.5\" height=\"30\"\/><rect class=\"k\" x=\"470.0\" y=\"190\" width=\"34.0\" height=\"30\"\/><rect class=\"k on\" x=\"508.0\" y=\"190\" width=\"34.0\" height=\"30\"\/><rect class=\"k\" x=\"546.0\" y=\"190\" width=\"34.0\" height=\"30\"\/><text class=\"kt on\" x=\"31.0\" y=\"72.0\" text-anchor=\"middle\">ESC<\/text><text class=\"kt on\" x=\"69.0\" y=\"72.0\" text-anchor=\"middle\">1<\/text><text class=\"kt on\" x=\"107.0\" y=\"72.0\" text-anchor=\"middle\">2<\/text><text class=\"kt on\" x=\"145.0\" y=\"72.0\" text-anchor=\"middle\">3<\/text><text class=\"kt on\" x=\"183.0\" y=\"72.0\" text-anchor=\"middle\">4<\/text><text class=\"kt on\" x=\"221.0\" y=\"72.0\" text-anchor=\"middle\">5<\/text><text class=\"kt on\" x=\"259.0\" y=\"72.0\" text-anchor=\"middle\">6<\/text><text class=\"kt on\" x=\"297.0\" y=\"72.0\" text-anchor=\"middle\">7<\/text><text class=\"kt on\" x=\"335.0\" y=\"72.0\" text-anchor=\"middle\">8<\/text><text class=\"kt\" x=\"373.0\" y=\"72.0\" text-anchor=\"middle\">9<\/text><text class=\"kt\" x=\"411.0\" y=\"72.0\" text-anchor=\"middle\">0<\/text><text class=\"kt\" x=\"449.0\" y=\"72.0\" text-anchor=\"middle\">-<\/text><text class=\"kt\" x=\"487.0\" y=\"72.0\" text-anchor=\"middle\">=<\/text><text class=\"kt\" x=\"544.0\" y=\"72.0\" text-anchor=\"middle\">\u232b<\/text><text class=\"kt\" x=\"40.5\" y=\"106.0\" text-anchor=\"middle\">TAB<\/text><text class=\"kt\" x=\"88.0\" y=\"106.0\" text-anchor=\"middle\">Q<\/text><text class=\"kt\" x=\"126.0\" y=\"106.0\" text-anchor=\"middle\">W<\/text><text class=\"kt\" x=\"164.0\" y=\"106.0\" text-anchor=\"middle\">E<\/text><text class=\"kt\" x=\"202.0\" y=\"106.0\" text-anchor=\"middle\">R<\/text><text class=\"kt\" x=\"240.0\" y=\"106.0\" text-anchor=\"middle\">T<\/text><text class=\"kt\" x=\"278.0\" y=\"106.0\" text-anchor=\"middle\">Y<\/text><text class=\"kt\" x=\"316.0\" y=\"106.0\" text-anchor=\"middle\">U<\/text><text class=\"kt\" x=\"354.0\" y=\"106.0\" text-anchor=\"middle\">I<\/text><text class=\"kt\" x=\"392.0\" y=\"106.0\" text-anchor=\"middle\">O<\/text><text class=\"kt\" x=\"430.0\" y=\"106.0\" text-anchor=\"middle\">P<\/text><text class=\"kt\" x=\"468.0\" y=\"106.0\" text-anchor=\"middle\">[<\/text><text class=\"kt\" x=\"506.0\" y=\"106.0\" text-anchor=\"middle\">]<\/text><text class=\"kt\" x=\"553.5\" y=\"106.0\" text-anchor=\"middle\">\\<\/text><text class=\"kt\" x=\"45.2\" y=\"140.0\" text-anchor=\"middle\">CAPS<\/text><text class=\"kt\" x=\"97.5\" y=\"140.0\" text-anchor=\"middle\">A<\/text><text class=\"kt\" x=\"135.5\" y=\"140.0\" text-anchor=\"middle\">S<\/text><text class=\"kt\" x=\"173.5\" y=\"140.0\" text-anchor=\"middle\">D<\/text><text class=\"kt\" x=\"211.5\" y=\"140.0\" text-anchor=\"middle\">F<\/text><text class=\"kt\" x=\"249.5\" y=\"140.0\" text-anchor=\"middle\">G<\/text><text class=\"kt\" x=\"287.5\" y=\"140.0\" text-anchor=\"middle\">H<\/text><text class=\"kt\" x=\"325.5\" y=\"140.0\" text-anchor=\"middle\">J<\/text><text class=\"kt on\" x=\"363.5\" y=\"140.0\" text-anchor=\"middle\">K<\/text><text class=\"kt\" x=\"401.5\" y=\"140.0\" text-anchor=\"middle\">L<\/text><text class=\"kt\" x=\"439.5\" y=\"140.0\" text-anchor=\"middle\">\u00d1<\/text><text class=\"kt\" x=\"477.5\" y=\"140.0\" text-anchor=\"middle\">\u00b4<\/text><text class=\"kt on\" x=\"539.2\" y=\"140.0\" text-anchor=\"middle\">\u21b5<\/text><text class=\"kt\" x=\"54.8\" y=\"174.0\" text-anchor=\"middle\">\u21e7<\/text><text class=\"kt\" x=\"116.5\" y=\"174.0\" text-anchor=\"middle\">Z<\/text><text class=\"kt\" x=\"154.5\" y=\"174.0\" text-anchor=\"middle\">X<\/text><text class=\"kt\" x=\"192.5\" y=\"174.0\" text-anchor=\"middle\">C<\/text><text class=\"kt\" x=\"230.5\" y=\"174.0\" text-anchor=\"middle\">V<\/text><text class=\"kt\" x=\"268.5\" y=\"174.0\" text-anchor=\"middle\">B<\/text><text class=\"kt\" x=\"306.5\" y=\"174.0\" text-anchor=\"middle\">N<\/text><text class=\"kt\" x=\"344.5\" y=\"174.0\" text-anchor=\"middle\">M<\/text><text class=\"kt\" x=\"382.5\" y=\"174.0\" text-anchor=\"middle\">,<\/text><text class=\"kt\" x=\"420.5\" y=\"174.0\" text-anchor=\"middle\">.<\/text><text class=\"kt on\" x=\"458.5\" y=\"174.0\" text-anchor=\"middle\">\/<\/text><text class=\"kt\" x=\"510.8\" y=\"174.0\" text-anchor=\"middle\">\u21e7<\/text><text class=\"kt on\" x=\"563.0\" y=\"174.0\" text-anchor=\"middle\">\u2191<\/text><text class=\"kt on\" x=\"35.8\" y=\"208.0\" text-anchor=\"middle\">CTRL<\/text><text class=\"kt\" x=\"83.2\" y=\"208.0\" text-anchor=\"middle\">ALT<\/text><text class=\"kt on\" x=\"130.8\" y=\"208.0\" text-anchor=\"middle\">\u2318<\/text><text class=\"kt\" x=\"396.8\" y=\"208.0\" text-anchor=\"middle\">ALT<\/text><text class=\"kt\" x=\"444.2\" y=\"208.0\" text-anchor=\"middle\">FN<\/text><text class=\"kt\" x=\"487.0\" y=\"208.0\" text-anchor=\"middle\">\u2190<\/text><text class=\"kt on\" x=\"525.0\" y=\"208.0\" text-anchor=\"middle\">\u2193<\/text><text class=\"kt\" x=\"563.0\" y=\"208.0\" text-anchor=\"middle\">\u2192<\/text><circle class=\"dot\" cx=\"31.0\" cy=\"52.0\" r=\"2\"\/><line class=\"ld\" x1=\"31.0\" y1=\"52.0\" x2=\"44.0\" y2=\"22\"\/><text class=\"an\" x=\"44.0\" y=\"12\" text-anchor=\"start\" data-i=\"kCerrar\">ESC \u00b7 CERRAR<\/text><circle class=\"dot\" cx=\"202.0\" cy=\"52.0\" r=\"2\"\/><line class=\"ld\" x1=\"202.0\" y1=\"52.0\" x2=\"216.0\" y2=\"22\"\/><text class=\"an\" x=\"216.0\" y=\"12\" text-anchor=\"middle\" data-i=\"kAcc\">1\u20138 \u00b7 ACCESOS<\/text><circle class=\"dot\" cx=\"363.5\" cy=\"154.0\" r=\"2\"\/><line class=\"ld\" x1=\"363.5\" y1=\"154.0\" x2=\"310.0\" y2=\"262\"\/><text class=\"an\" x=\"310.0\" y=\"278\" text-anchor=\"middle\" data-i=\"kBusca\">CTRL\/\u2318+K \u00f3 \/ \u00b7 BUSCAR<\/text><circle class=\"dot\" cx=\"539.2\" cy=\"154.0\" r=\"2\"\/><line class=\"ld\" x1=\"539.2\" y1=\"154.0\" x2=\"448.0\" y2=\"262\"\/><text class=\"an\" x=\"448.0\" y=\"278\" text-anchor=\"middle\" data-i=\"kAbrir\">\u21b5 \u00b7 ABRIR<\/text><circle class=\"dot\" cx=\"525.0\" cy=\"222.0\" r=\"2\"\/><line class=\"ld\" x1=\"525.0\" y1=\"222.0\" x2=\"592.0\" y2=\"262\"\/><text class=\"an\" x=\"592.0\" y=\"278\" text-anchor=\"end\" data-i=\"kNav\">\u2191\u2193 \u00b7 NAVEGAR<\/text><\/svg>\n      <\/figure>\n      <div>\n        <p class=\"mtd-kbd-p\" data-i=\"kbdP\">Sin men\u00fas que abrir: los n\u00fameros disparan tus accesos, \u2318K busca en todo, y las flechas te mueven por los resultados.<\/p>\n      <\/div>\n    <\/div>\n     <\/div>\n    <\/div>\n  <\/section>\n\n  <section class=\"mtd-sec\" aria-labelledby=\"mtdAccH\">\n    <div class=\"mtd-head\">\n      <div class=\"hgroup\"><h2 id=\"mtdAccH\" data-i=\"accesos\">Accesos<\/h2><\/div>\n      <p class=\"mtd-meta lbl\"><span data-i=\"accesosMeta\">Tus cuentas y plataformas<\/span><\/p>\n    <\/div>\n    <div class=\"mtd-tiles\" id=\"mtdTilesMain\"><\/div>\n  <\/section>\n\n  <!-- \u2550\u2550 DOCUMENTOS \u2550\u2550 -->\n  <section class=\"mtd-sec\" aria-labelledby=\"mtdDocH\">\n    <div class=\"mtd-head\">\n      <div class=\"hgroup\"><h2 id=\"mtdDocH\" data-i=\"documentos\">Documentos<\/h2><\/div>\n      <p class=\"mtd-meta lbl\" id=\"mtdDocCount\"><\/p>\n    <\/div>\n    <div class=\"mtd-filters\" id=\"mtdFilters\" role=\"group\" aria-label=\"Filtrar por categor\u00eda\"><\/div>\n    <div class=\"mtd-docfind\">\n      <svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"11\" cy=\"11\" r=\"7\"\/><path d=\"m20 20-3.5-3.5\"\/><\/svg>\n      <input id=\"mtdDocFind\" type=\"search\" autocomplete=\"off\" placeholder=\"Filtrar documentos\u2026\" aria-label=\"Filtrar documentos\">\n    <\/div>\n    <div class=\"mtd-doclist\" id=\"mtdDocList\"><\/div>\n  <\/section>\n\n  <!-- \u2550\u2550 HERRAMIENTAS DEL OFICIO \u2550\u2550 -->\n  <section class=\"mtd-sec\" aria-labelledby=\"mtdOficioH\">\n    <div class=\"mtd-head\">\n      <div class=\"hgroup\"><h2 id=\"mtdOficioH\" data-i=\"oficio\">Herramientas del oficio<\/h2><\/div>\n      <p class=\"mtd-meta lbl\" data-i=\"oficioMeta\">Certificaciones y data t\u00e9cnica<\/p>\n    <\/div>\n    <div class=\"mtd-tiles three\" id=\"mtdTilesTrade\"><\/div>\n  <\/section>\n\n  <!-- \u2550\u2550 AYUDA \u2550\u2550 -->\n  <section class=\"mtd-sec\" aria-labelledby=\"mtdAyudaH\">\n    <div class=\"mtd-head\">\n      <div class=\"hgroup\"><h2 id=\"mtdAyudaH\" data-i=\"ayuda\">Ayuda<\/h2><\/div>\n    <\/div>\n    <div class=\"mtd-console\">\n      <div class=\"mtd-card\">\n        <p class=\"kicker\" data-i=\"consejeria\">Consejer\u00eda<\/p>\n        <div class=\"bd\">\n          <a class=\"big\" href=\"tel:+18778008033\">1-877-800-8033<\/a>\n          <p data-i=\"consejeriaP\">Orientaci\u00f3n acad\u00e9mica y personal. Tutor\u00edas y acomodo se coordinan por la Oficina de Consejer\u00eda o Retenci\u00f3n de tu recinto.<\/p>\n        <\/div>\n      <\/div>\n      <div class=\"mtd-card\">\n        <p class=\"kicker\" data-i=\"horario\">Horario de oficina<\/p>\n        <div class=\"bd\">\n          <ul class=\"mtd-hours\">\n            <li><span data-i=\"lmv\">Lun \u00b7 Mi\u00e9 \u00b7 Vie<\/span><b>8:00 AM\u20135:00 PM<\/b><\/li>\n            <li><span data-i=\"mj\">Mar \u00b7 Jue<\/span><b>10:00 AM\u20137:00 PM<\/b><\/li>\n            <li><span data-i=\"central\">Cuadro central<\/span><b><a href=\"tel:+17872389494\">787-238-9494<\/a><\/b><\/li>\n          <\/ul>\n          <p data-i=\"horarioP\">Transcripciones y certificaciones: 5 d\u00edas laborables v\u00eda Registradur\u00eda.<\/p>\n        <\/div>\n      <\/div>\n      <div class=\"mtd-card\">\n        <p class=\"kicker\" data-i=\"acomodo\">Acomodo razonable<\/p>\n        <div class=\"bd\">\n          <a class=\"big\" href=\"tel:+17877441060,1029\">787-744-1060<i class=\"ext\">ext. 1029<\/i><\/a>\n          <p data-i=\"acomodoP\">Servicios para estudiantes con impedimentos o diversidad funcional.<\/p>\n        <\/div>\n      <\/div>\n      <div class=\"mtd-card\">\n        <p class=\"kicker\" data-i=\"recintos\">Recintos<\/p>\n        <div class=\"bd\">\n          <!-- Los nombres de recintos los muestra el propio mapa (widget adoptado).\n               Slot: cualquier elemento de la p\u00e1gina con la clase CSS\n               \"mtd-mapa-recintos\" (Elementor \u2192 Avanzado \u2192 Clases CSS) se adopta\n               aqu\u00ed dentro al cargar. Si no existe, el slot no ocupa espacio. -->\n          <div class=\"mtd-mapa\" id=\"mtdMapaSlot\" hidden><\/div>\n        <\/div>\n      <\/div>\n      <footer class=\"mtd-plate\">\n        <span>Mech-Tech College \u2014 <b data-i=\"plateA\">Dashboard del Estudiante<\/b> \u00b7 Puerto Rico \u00b7 est. 1984<\/span>\n        <span class=\"hide-sm\"><b>\u2318K<\/b> <span data-i=\"plateB\">busca todo<\/span><\/span>\n      <\/footer>\n    <\/div>\n  <\/section>\n\n<\/div>\n\n<!-- La paleta se mueve a <body> al iniciar: si Elementor aplica transform a un\n     contenedor padre, position:fixed dejar\u00eda de anclarse al viewport. -->\n<div class=\"mtd-scrim\" id=\"mtdScrim\"><\/div>\n<div class=\"mtd-pal\" id=\"mtdPal\" role=\"dialog\" aria-modal=\"true\" aria-label=\"Buscar en el dashboard\">\n  <div class=\"in\">\n    <svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"11\" cy=\"11\" r=\"7\"\/><path d=\"m20 20-3.5-3.5\"\/><\/svg>\n    <input id=\"mtdPalIn\" type=\"text\" autocomplete=\"off\" autocorrect=\"off\" spellcheck=\"false\"\n           placeholder=\"Busca un documento o servicio\u2026\" aria-label=\"Buscar\"\n           role=\"combobox\" aria-expanded=\"true\" aria-controls=\"mtdPalRes\" aria-autocomplete=\"list\">\n    <kbd>ESC<\/kbd>\n  <\/div>\n  <div class=\"res\" id=\"mtdPalRes\" role=\"listbox\" aria-label=\"Resultados\"><\/div>\n  <div class=\"foot\">\n    <span><b>\u2191\u2193<\/b> <span data-i=\"navegar\">navegar<\/span><\/span>\n    <span><b>\u21b5<\/b> <span data-i=\"abrir\">abrir<\/span><\/span>\n    <span><b>ESC<\/b> <span data-i=\"cerrar\">cerrar<\/span><\/span>\n    <span class=\"cnt\" id=\"mtdCnt\"><\/span>\n  <\/div>\n<\/div>\n\n<!-- lightbox de videos (MTC Online) \u2014 tambi\u00e9n se muda a <body> al iniciar -->\n<div class=\"mtd-vid\" id=\"mtdVid\" role=\"dialog\" aria-modal=\"true\" aria-label=\"MTC Online \u2014 tutoriales en video\">\n  <div class=\"hd\">\n    <div>\n      <span class=\"kick\" data-i=\"vidKick\">MTC Online \u00b7 Equipo MIS<\/span>\n      <b class=\"ttl\" data-i=\"vidT\">Tutoriales en video<\/b>\n    <\/div>\n    <button type=\"button\" class=\"x\" id=\"mtdVidX\" aria-label=\"Cerrar\"><span\n      class=\"if-kbd\">ESC<\/span><span class=\"if-touch\">\u2715<\/span><\/button>\n  <\/div>\n  <p class=\"note\" data-i=\"vidP\">Todo lo de tu cuenta de Office 365, explicado por el equipo MIS \u2014 sin salir del dashboard.<\/p>\n  <div class=\"vids\" id=\"mtdVidList\"><\/div>\n  <div class=\"foot\">\n    <span><b>\u21b9<\/b> <span data-i=\"navegar\">navegar<\/span><\/span>\n    <span><b>\u21b5<\/b> <span data-i=\"vidPlay\">Reproducir<\/span><\/span>\n    <span><b>ESC<\/b> <span data-i=\"cerrar\">cerrar<\/span><\/span>\n    <span class=\"cnt\" data-i=\"vidCnt\">3 videos<\/span>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n\"use strict\";\nif (window.__MTD_INIT__) return;\nwindow.__MTD_INIT__ = true;\n\nfunction boot(){\nconst root = document.getElementById(\"mtd\");\nif(!root) return;\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 DATOS \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nconst DOCS = [{\"id\":\"catalogo-institucional-2026-2027\",\"t\":\"doc\",\"cat\":\"catalogo\",\"es\":\"Cat\u00e1logo Institucional 2026-2027\",\"en\":\"Institutional Catalog 2026-2027 (Spanish)\",\"url\":\"\/documentos\/pr\/catalogo\/catalogo-institucional-2026-2027.pdf\",\"old\":\"\/wp-content\/uploads\/2026\/05\/2026-27-Mech-Tech-College-Mech-Tech-Institute-Catalogo-Institucional.pdf\",\"lang\":\"ES\",\"v\":\"2026-2027\",\"kb\":2420,\"p\":135,\"kw\":\"catalogo curso cursos programa programas creditos grados oferta academica catalog\"},{\"id\":\"institutional-catalog-2026-2027-en\",\"t\":\"doc\",\"cat\":\"catalogo\",\"es\":\"Cat\u00e1logo Institucional 2026-2027 (Ingl\u00e9s)\",\"en\":\"Institutional Catalog 2026-2027\",\"url\":\"\/documentos\/pr\/catalogo\/institutional-catalog-2026-2027-en.pdf\",\"old\":\"\/wp-content\/uploads\/2026\/05\/2026-2027-Mech-Tech-College-Mech-Tech-Institute-Catalog.pdf\",\"lang\":\"EN\",\"v\":\"2026-2027\",\"kb\":2014,\"p\":141,\"kw\":\"catalog english ingles courses programs credits degrees\"},{\"id\":\"manual-titulo-ix-2024-2028\",\"t\":\"doc\",\"cat\":\"titulo-ix\",\"es\":\"Manual de T\u00edtulo IX 2024-2028\",\"en\":\"Title IX Manual 2024-2028\",\"url\":\"\/documentos\/pr\/titulo-ix\/manual-titulo-ix-2024-2028.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/07\/TITULO-IX-MANUAL-2024-a-2028-NUEVAS-REGULACIONES.pdf\",\"lang\":\"ES\",\"v\":\"2024-2028\",\"kb\":706,\"p\":26,\"kw\":\"titulo ix title 9 acoso hostigamiento sexual discrimen genero manual\"},{\"id\":\"informe-anual-titulo-ix-2023\",\"t\":\"doc\",\"cat\":\"titulo-ix\",\"es\":\"Informe Anual de T\u00edtulo IX 2023\",\"en\":\"Title IX Annual Report 2023\",\"url\":\"\/documentos\/pr\/titulo-ix\/informe-anual-titulo-ix-2023.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/01\/Title-IX-Annual-Report-2023-.pdf\",\"lang\":\"EN\",\"v\":\"2023\",\"kb\":656,\"p\":26,\"kw\":\"titulo ix title 9 informe reporte anual estadisticas 2023\"},{\"id\":\"informe-anual-titulo-ix-2016-2022\",\"t\":\"doc\",\"cat\":\"titulo-ix\",\"es\":\"Informe Anual de T\u00edtulo IX 2016-2022\",\"en\":\"Title IX Annual Report 2016-2022\",\"url\":\"\/documentos\/pr\/titulo-ix\/informe-anual-titulo-ix-2016-2022.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/01\/Title-IX-Annual-Report-2016-to-2022.pdf\",\"lang\":\"EN\",\"v\":\"2016-2022\",\"kb\":924,\"p\":47,\"kw\":\"titulo ix title 9 informe reporte anual historico estadisticas\"},{\"id\":\"reglamento-de-estudiantes-2024\",\"t\":\"doc\",\"cat\":\"reglamentos\",\"es\":\"Reglamento de Estudiantes\",\"en\":\"Student Regulations\",\"url\":\"\/documentos\/pr\/reglamentos\/reglamento-de-estudiantes-2024.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/07\/REGLAMENTO-DE-ESTUDIANTES-Rev2024-Final.pdf\",\"lang\":\"ES\",\"v\":\"Rev. 2024\",\"kb\":173,\"p\":18,\"kw\":\"reglamento estudiante normas deberes derechos disciplina rules\"},{\"id\":\"codigo-de-conducta-institucional-2025\",\"t\":\"doc\",\"cat\":\"reglamentos\",\"es\":\"C\u00f3digo de Conducta Institucional\",\"en\":\"Institutional Code of Conduct\",\"url\":\"\/documentos\/pr\/reglamentos\/codigo-de-conducta-institucional-2025.pdf\",\"old\":\"\/wp-content\/uploads\/2025\/06\/Codigo-de-Conducta-Institucional-2025.pdf\",\"lang\":\"ES\",\"v\":\"2025\",\"kb\":51,\"p\":1,\"kw\":\"codigo conducta etica comportamiento conduct\"},{\"id\":\"politica-de-conducta-y-terminacion\",\"t\":\"doc\",\"cat\":\"reglamentos\",\"es\":\"Pol\u00edtica de Conducta y Terminaci\u00f3n\",\"en\":\"Conduct and Termination Policy\",\"url\":\"\/documentos\/pr\/reglamentos\/politica-de-conducta-y-terminacion.pdf\",\"old\":\"\/wp-content\/uploads\/2014\/11\/politica-de-conducta-y-terminacion.pdf\",\"lang\":\"ES\",\"v\":\"Vigente\",\"kb\":95,\"p\":2,\"kw\":\"conducta terminacion baja expulsion suspension\"},{\"id\":\"reglamento-uso-ilegal-drogas-alcohol-2025\",\"t\":\"doc\",\"cat\":\"reglamentos\",\"es\":\"Reglamento sobre Uso Ilegal de Drogas y Abuso de Alcohol\",\"en\":\"Drug and Alcohol Abuse Prevention Policy\",\"url\":\"\/documentos\/pr\/reglamentos\/reglamento-uso-ilegal-drogas-alcohol-2025.pdf\",\"old\":\"\/wp-content\/uploads\/2025\/05\/Reglamento-sobre-Uso-Ilegal-de-Drogas-y-Abuso-de-Alcohol-Revision-2025.pdf\",\"lang\":\"ES\",\"v\":\"Rev. 2025\",\"kb\":264,\"p\":25,\"kw\":\"drogas alcohol sustancias uso ilegal prevencion drug\"},{\"id\":\"politica-de-asalto-sexual-2024\",\"t\":\"doc\",\"cat\":\"reglamentos\",\"es\":\"Pol\u00edtica de Asalto Sexual y Agencias de Servicio\",\"en\":\"Sexual Assault Policy and Service Agencies\",\"url\":\"\/documentos\/pr\/reglamentos\/politica-de-asalto-sexual-2024.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/04\/Politica-de-asalto-sexual-con-las-agencias-de-servicios-por-recinto-Rev.-2024.pdf\",\"lang\":\"ES\",\"v\":\"Rev. 2024\",\"kb\":90,\"p\":4,\"kw\":\"asalto sexual violencia agresion ayuda agencias apoyo\"},{\"id\":\"politica-poseer-y-portar-armas-2023\",\"t\":\"doc\",\"cat\":\"reglamentos\",\"es\":\"Pol\u00edtica sobre Poseer y Portar Armas\",\"en\":\"Weapons Possession Policy\",\"url\":\"\/documentos\/pr\/reglamentos\/politica-poseer-y-portar-armas-2023.pdf\",\"old\":\"\/wp-content\/uploads\/2023\/12\/Politica-sobre-Poseer-y-Portar-Armas-Revisada-a-abril-2023.pdf\",\"lang\":\"ES\",\"v\":\"Rev. 2023\",\"kb\":96,\"p\":1,\"kw\":\"armas portar seguridad weapons\"},{\"id\":\"politica-de-asistencia-2025\",\"t\":\"doc\",\"cat\":\"politicas\",\"es\":\"Pol\u00edtica de Asistencia\",\"en\":\"Attendance Policy\",\"url\":\"\/documentos\/pr\/politicas\/politica-de-asistencia-2025.pdf\",\"old\":\"\/wp-content\/uploads\/2026\/01\/POLITICA-DE-ASISTENCIA-ESP-NOV-2025.pdf\",\"lang\":\"ES\",\"v\":\"Nov. 2025\",\"kb\":76,\"p\":5,\"kw\":\"asistencia ausencia tardanza faltas attendance\"},{\"id\":\"politica-personas-con-impedimentos-2026\",\"t\":\"doc\",\"cat\":\"politicas\",\"es\":\"Pol\u00edtica sobre Personas con Impedimentos o Diversidad Funcional\",\"en\":\"Disability and Functional Diversity Policy\",\"url\":\"\/documentos\/pr\/politicas\/politica-personas-con-impedimentos-2026.pdf\",\"old\":\"\/wp-content\/uploads\/2026\/03\/Politica-y-Procedimiento-Institucional-sobre-Personas-con-Impedimentos-o-Diversidad-Funcional-2026.pdf\",\"lang\":\"ES\",\"v\":\"2026\",\"kb\":670,\"p\":12,\"kw\":\"impedimento discapacidad diversidad funcional acomodo razonable ada accesibilidad\"},{\"id\":\"politica-condiciones-de-salud-2024\",\"t\":\"doc\",\"cat\":\"politicas\",\"es\":\"Pol\u00edtica de Tratamiento de Estudiantes con Condiciones de Salud\",\"en\":\"Student Health Conditions Policy\",\"url\":\"\/documentos\/pr\/politicas\/politica-condiciones-de-salud-2024.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/04\/Politica-de-Tratamiento-de-Estudiantes-que-padecen-Asma-Diabetes-u-otras-enfermedades-Revisada-a-marzo-2024.pdf\",\"lang\":\"ES\",\"v\":\"Rev. 2024\",\"kb\":51,\"p\":1,\"kw\":\"salud asma diabetes condicion medica emergencia medica\"},{\"id\":\"politica-de-vacunacion\",\"t\":\"doc\",\"cat\":\"politicas\",\"es\":\"Pol\u00edtica de Vacunaci\u00f3n\",\"en\":\"Immunization Policy\",\"url\":\"\/documentos\/pr\/politicas\/politica-de-vacunacion.pdf\",\"old\":\"\/wp-content\/uploads\/2014\/10\/politica-de-vacunacion-11.pdf\",\"lang\":\"ES\",\"v\":\"Vigente\",\"kb\":49,\"p\":2,\"kw\":\"vacuna vacunacion inmunizacion salud requisito\"},{\"id\":\"politica-ferpa\",\"t\":\"doc\",\"cat\":\"politicas\",\"es\":\"Pol\u00edtica FERPA \u2014 Privacidad del Expediente\",\"en\":\"FERPA \u2014 Student Records Privacy\",\"url\":\"\/documentos\/pr\/politicas\/politica-ferpa.pdf\",\"old\":\"\/wp-content\/uploads\/2014\/10\/ferpa.pdf\",\"lang\":\"ES\",\"v\":\"Vigente\",\"kb\":39,\"p\":2,\"kw\":\"ferpa privacidad expediente record confidencialidad datos\"},{\"id\":\"politica-de-derecho-de-autor-2024\",\"t\":\"doc\",\"cat\":\"politicas\",\"es\":\"Pol\u00edtica de Derecho de Autor\",\"en\":\"Copyright Policy\",\"url\":\"\/documentos\/pr\/politicas\/politica-de-derecho-de-autor-2024.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/04\/Politica-de-Derecho-de-Autor.pdf\",\"lang\":\"ES\",\"v\":\"2024\",\"kb\":103,\"p\":7,\"kw\":\"derecho autor copyright propiedad intelectual plagio\"},{\"id\":\"plan-manejo-de-emergencias-2026\",\"t\":\"doc\",\"cat\":\"politicas\",\"es\":\"Plan para el Manejo de Emergencias\",\"en\":\"Emergency Management Plan\",\"url\":\"\/documentos\/pr\/politicas\/plan-manejo-de-emergencias-2026.pdf\",\"old\":\"\/wp-content\/uploads\/2026\/03\/Plan-para-el-Manejo-de-Emergencias-actualizado.pdf\",\"lang\":\"ES\",\"v\":\"2026\",\"kb\":942,\"p\":18,\"kw\":\"emergencia huracan terremoto fuego evacuacion plan seguridad\"},{\"id\":\"guia-del-estudiante-consumidor-2024\",\"t\":\"doc\",\"cat\":\"divulgacion\",\"es\":\"Gu\u00eda del Estudiante Consumidor\",\"en\":\"Student Consumer Guide\",\"url\":\"\/documentos\/pr\/divulgacion\/guia-del-estudiante-consumidor-2024.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/04\/Guia-del-Estudiante-Consumidor-Rev-2024-Oficiales.pdf\",\"lang\":\"ES\",\"v\":\"Rev. 2024\",\"kb\":841,\"p\":85,\"kw\":\"consumidor guia asistencia economica beca pell costo ayuda financiera informacion al consumidor\"},{\"id\":\"student-right-to-know-2022\",\"t\":\"doc\",\"cat\":\"divulgacion\",\"es\":\"Student Right to Know\",\"en\":\"Student Right to Know\",\"url\":\"\/documentos\/pr\/divulgacion\/student-right-to-know-2022.pdf\",\"old\":\"\/wp-content\/uploads\/2014\/10\/Student-Right-to-Know-revisado-junio-2022-divulgaci\u00f3n-2022.pdf\",\"lang\":\"ES\",\"v\":\"2022\",\"kb\":190,\"p\":2,\"kw\":\"student right to know graduacion tasa derecho saber divulgacion\"},{\"id\":\"tasas-de-retencion-ipeds-2023-2024\",\"t\":\"doc\",\"cat\":\"divulgacion\",\"es\":\"Tasas de Retenci\u00f3n IPEDS 2023-2024\",\"en\":\"IPEDS Retention Rates 2023-2024\",\"url\":\"\/documentos\/pr\/divulgacion\/tasas-de-retencion-ipeds-2023-2024.pdf\",\"old\":\"\/wp-content\/uploads\/2024\/05\/IPEDS-2023-24-Retention-Rates-Cohort-Fall-2022.pdf\",\"lang\":\"EN\",\"v\":\"2023-2024\",\"kb\":267,\"p\":1,\"kw\":\"retencion ipeds tasa datos estadisticas\"},{\"id\":\"diversidad-del-cuerpo-estudiantil\",\"t\":\"doc\",\"cat\":\"divulgacion\",\"es\":\"Diversidad del Cuerpo Estudiantil\",\"en\":\"Student Body Diversity\",\"url\":\"\/documentos\/pr\/divulgacion\/diversidad-del-cuerpo-estudiantil.pdf\",\"old\":\"\/wp-content\/uploads\/2014\/10\/diversidad-estudiantil.pdf\",\"lang\":\"ES\",\"v\":\"Vigente\",\"kb\":31,\"p\":2,\"kw\":\"diversidad estudiantes demografia cuerpo estudiantil\"}];\nconst CATS = {\"catalogo\":{\"es\":\"Cat\u00e1logos\",\"en\":\"Catalogs\"},\"titulo-ix\":{\"es\":\"T\u00edtulo IX\",\"en\":\"Title IX\"},\"reglamentos\":{\"es\":\"Reglamentos y Conducta\",\"en\":\"Regulations & Conduct\"},\"politicas\":{\"es\":\"Pol\u00edticas Institucionales\",\"en\":\"Institutional Policies\"},\"divulgacion\":{\"es\":\"Divulgaci\u00f3n y Datos\",\"en\":\"Disclosures & Data\"}};\n\nconst SERVICES = [\n {id:\"correo\", url:\"https:\/\/mail.office365.com\/\", ext:1,\n  es:\"Correo Estudiantil\", en:\"Student Email\", des_es:\"Office 365\", des_en:\"Office 365\",\n  kw:\"email correo mail outlook office 365 mensajes\"},\n {id:\"office\", url:\"https:\/\/portal.microsoftonline.com\/\", ext:1,\n  es:\"Office 365\", en:\"Office 365\", des_es:\"Word \u00b7 Excel \u00b7 Teams\", des_en:\"Word \u00b7 Excel \u00b7 Teams\",\n  kw:\"office 365 word excel powerpoint teams onedrive microsoft\"},\n {id:\"biblioteca\", url:\"https:\/\/www.mechtech.edu\/biblioteca-virtual\/\",\n  es:\"Biblioteca Virtual\", en:\"Virtual Library\", des_es:\"Cat\u00e1logo en l\u00ednea\", des_en:\"Online catalog\",\n  kw:\"biblioteca library catalogo en linea libros recursos investigacion\"},\n {id:\"inventario\", url:\"https:\/\/faculty.mechtech.edu\/student\", ext:1,\n  es:\"Inventario de Equipos\", en:\"Equipment Inventory\", des_es:\"Herramientas asignadas\", des_en:\"Assigned tools\",\n  kw:\"inventario equipo herramientas tools kit snap-on\"},\n {id:\"netprice\", url:\"https:\/\/www.mechtech.edu\/NetPriceCalculator\/\",\n  es:\"Calculadora de Costo\", en:\"Net Price Calculator\", des_es:\"Estima tu inversi\u00f3n\", des_en:\"Estimate your cost\",\n  kw:\"costo precio calculadora net price cuanto cuesta pago inversion\"},\n {id:\"navigator\", url:\"https:\/\/nces.ed.gov\/collegenavigator\/\", ext:1,\n  es:\"College Navigator\", en:\"College Navigator\", des_es:\"Datos federales NCES\", des_en:\"NCES federal data\",\n  kw:\"college navigator nces datos federales comparar estadisticas\"},\n {id:\"mtconline\", url:\"https:\/\/www.youtube.com\/watch?v=QPQGj27fZQs\", ext:1, vid:1,\n  es:\"MTC Online\", en:\"MTC Online\", des_es:\"Tutoriales en video\", des_en:\"Video tutorials\",\n  kw:\"mtc online cursos virtual clases distancia video tutorial tutoriales youtube office 365 cuenta contrase\u00f1a password correo email\"},\n {id:\"maestro\", url:\"https:\/\/faculty.mechtech.edu\/\", ext:1,\n  es:\"Portal del Maestro\", en:\"Faculty Portal\", des_es:\"Acceso de facultad\", des_en:\"Faculty access\",\n  kw:\"maestro profesor facultad faculty portal docente\"}\n];\n\nconst TRADE = [\n {id:\"nc3\", url:\"https:\/\/nc3certs.com\/\", ext:1,\n  es:\"NC3 Certifications\", en:\"NC3 Certifications\",\n  des_es:\"Credenciales de industria\", des_en:\"Industry credentials\",\n  kw:\"nc3 certificacion certification snap-on credencial\"},\n {id:\"shopkey\", url:\"https:\/\/shopkeypro.com\/\", ext:1,\n  es:\"ShopKey Pro\", en:\"ShopKey Pro\", des_es:\"Data de servicio automotriz\", des_en:\"Automotive service data\",\n  kw:\"shopkey mitchell data automotriz diagramas reparacion manual\"},\n {id:\"prodemand\", url:\"https:\/\/truck.prodemand.com\", ext:1,\n  es:\"Mitchell1 ProDemand\", en:\"Mitchell1 ProDemand\", des_es:\"Di\u00e9sel y camiones pesados\", des_en:\"Diesel & heavy truck\",\n  kw:\"mitchell prodemand diesel camion truck reparacion data\"}\n];\n\nconst CAMPUSES = [\n {n:\"Caguas\", u:\"\/pr\/caguas\/\", hq:1}, {n:\"Bayam\u00f3n\", u:\"\/pr\/bayamon\/\"},\n {n:\"Ponce\", u:\"\/pr\/ponce\/\"},   {n:\"Mayag\u00fcez\", u:\"\/pr\/mayaguez\/\"},\n {n:\"Vega Baja\", u:\"\/pr\/vega-baja\/\"}\n];\n\n\/* videos de la vieja p\u00e1gina \/mtc-online\/ (que muere con el sitio nuevo):\n   tutoriales del equipo MIS. Se sirven en el lightbox \u2014 thumbnail primero,\n   iframe de youtube-nocookie solo al darle play. *\/\nconst VIDEOS = [\n {yt:\"QPQGj27fZQs\", es:\"C\u00f3mo usar el correo de Office 365\", en:\"How to use your Office 365 email\"},\n {yt:\"wBH905_XFSw\", es:\"C\u00f3mo crear tu cuenta de Office 365\", en:\"How to create your Office 365 account\"},\n {yt:\"o4CVl-jhNGk\", es:\"C\u00f3mo reiniciar tu contrase\u00f1a\", en:\"How to reset your password\"}\n];\n\n\/* iconos monoline *\/\nconst ICONS = {\n correo:'<rect x=\"3\" y=\"5\" width=\"18\" height=\"14\" rx=\"2\"\/><path d=\"M3 7.5 12 13l9-5.5\"\/>',\n office:'<rect x=\"4\" y=\"4\" width=\"7\" height=\"7\" rx=\"1.2\"\/><rect x=\"13\" y=\"4\" width=\"7\" height=\"7\" rx=\"1.2\"\/><rect x=\"4\" y=\"13\" width=\"7\" height=\"7\" rx=\"1.2\"\/><rect x=\"13\" y=\"13\" width=\"7\" height=\"7\" rx=\"1.2\"\/>',\n biblioteca:'<path d=\"M2 4h6a4 4 0 0 1 4 4v13a3 3 0 0 0-3-3H2z\"\/><path d=\"M22 4h-6a4 4 0 0 0-4 4v13a3 3 0 0 1 3-3h7z\"\/>',\n inventario:'<path d=\"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z\"\/>',\n netprice:'<rect x=\"5\" y=\"2\" width=\"14\" height=\"20\" rx=\"2\"\/><path d=\"M8.5 6.5h7\"\/><path d=\"M8.5 11h.01M12 11h.01M15.5 11h.01M8.5 14.5h.01M12 14.5h.01M15.5 14.5h.01M8.5 18h.01M12 18h.01M15.5 18h.01\"\/>',\n navigator:'<circle cx=\"12\" cy=\"12\" r=\"9\"\/><path d=\"m16 8-2.1 6-6 2.1L10 10z\"\/>',\n mtconline:'<rect x=\"2.5\" y=\"4\" width=\"19\" height=\"13\" rx=\"2\"\/><path d=\"M8.5 21h7M12 17v4\"\/><path d=\"m10.5 8 4 2.5-4 2.5z\"\/>',\n maestro:'<circle cx=\"12\" cy=\"7.5\" r=\"3.5\"\/><path d=\"M6 20.5v-1.5a5 5 0 0 1 5-5h2a5 5 0 0 1 5 5v1.5\"\/>',\n nc3:'<circle cx=\"12\" cy=\"9\" r=\"5.5\"\/><path d=\"m8.7 13.6-1.5 7 4.8-2.8 4.8 2.8-1.5-7\"\/>',\n shopkey:'<circle cx=\"7.3\" cy=\"15.7\" r=\"4.3\"\/><path d=\"m10.5 12.5 9.5-9.5M17 6l3 3\"\/>',\n prodemand:'<path d=\"M1.5 5.5h13.5v11H1.5z\"\/><path d=\"M15 9.5h4l3 3v4h-7z\"\/><circle cx=\"6\" cy=\"18.5\" r=\"2\"\/><circle cx=\"18\" cy=\"18.5\" r=\"2\"\/>'\n};\nconst svg = (id, cls) => `<svg${cls===\"\"?\"\":` class=\"${cls||\"ico\"}\"`} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\">${ICONS[id]||\"\"}<\/svg>`;\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 i18n \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nconst I18N = {\n es:{eyebrow:\"Dashboard del Estudiante\",h1q:\"\u00bfQu\u00e9 necesitas hoy?\",\n   ph:\"Busca un documento o servicio\u2026\",recent:\"Contin\u00faa donde quedaste\",\n   accesos:\"Accesos\",accesosMeta:\"Tus cuentas y plataformas\",\n   kbdKick:\"Controles\",kbdT:\"Todo se opera desde el teclado\",\n   kbdP:\"Sin men\u00fas que abrir: los n\u00fameros disparan tus accesos, \u2318K busca en todo, y las flechas te mueven por los resultados.\",\n   kAcc:\"1\u20138 \u00b7 ACCESOS\",kBusca:\"CTRL\/\u2318+K \u00f3 \/ \u00b7 BUSCAR\",kNav:\"\u2191\u2193 \u00b7 NAVEGAR\",\n   kAbrir:\"\u21b5 \u00b7 ABRIR\",kCerrar:\"ESC \u00b7 CERRAR\",\n   kbdOpen:\"Ver instrucciones\",kbdClose:\"Cerrar\",\n   documentos:\"Documentos\",oficio:\"Herramientas del oficio\",oficioMeta:\"Certificaciones y data t\u00e9cnica\",\n   ayuda:\"Ayuda\",consejeria:\"Consejer\u00eda\",\n   consejeriaP:\"Orientaci\u00f3n acad\u00e9mica y personal. Tutor\u00edas y acomodo se coordinan por la Oficina de Consejer\u00eda o Retenci\u00f3n de tu recinto.\",\n   horario:\"Horario de oficina\",lmv:\"Lun \u00b7 Mi\u00e9 \u00b7 Vie\",mj:\"Mar \u00b7 Jue\",central:\"Cuadro central\",\n   horarioP:\"Transcripciones y certificaciones: 5 d\u00edas laborables v\u00eda Registradur\u00eda.\",\n   acomodo:\"Acomodo razonable\",acomodoP:\"Servicios para estudiantes con impedimentos o diversidad funcional.\",\n   recintos:\"Recintos\",navegar:\"navegar\",abrir:\"abrir\",cerrar:\"cerrar\",\n   filtrar:\"Filtrar documentos\u2026\",todos:\"Todos\",abierto:\"Abierto ahora\",hasta:\"hasta\",\n   cerrado:\"Cerrado ahora\",nores:\"Sin resultados\",tal:\"Prueba con\",pag:\"p\u00e1g\",\n   resultados:\"Resultados\",buscarBtn:\"Buscar\",\n   vidT:\"Tutoriales en video\",vidKick:\"MTC Online \u00b7 Equipo MIS\",\n   vidP:\"Todo lo de tu cuenta de Office 365, explicado por el equipo MIS \u2014 sin salir del dashboard.\",\n   vidPlay:\"Reproducir\",vidCnt:\"3 videos\",\n   docsMeta1:\"%N documentos \u00b7 %P p\u00e1ginas\",docsMeta2:\"descarga directa\",\n   greetM:\"Buenos d\u00edas\",greetT:\"Buenas tardes\",greetN:\"Buenas noches\",\n   serv:\"Servicios\",docsG:\"Documentos\",plateA:\"Dashboard del Estudiante\",plateB:\"busca todo\"},\n en:{eyebrow:\"Student Dashboard\",h1q:\"What do you need today?\",\n   ph:\"Search a document or service\u2026\",recent:\"Pick up where you left off\",\n   accesos:\"Quick access\",accesosMeta:\"Your accounts and platforms\",\n   kbdKick:\"Controls\",kbdT:\"The whole thing runs on your keyboard\",\n   kbdP:\"No menus to dig through: numbers fire your quick links, \u2318K searches everything, and the arrows move you through results.\",\n   kAcc:\"1\u20138 \u00b7 QUICK ACCESS\",kBusca:\"CTRL\/\u2318+K or \/ \u00b7 SEARCH\",kNav:\"\u2191\u2193 \u00b7 NAVIGATE\",\n   kAbrir:\"\u21b5 \u00b7 OPEN\",kCerrar:\"ESC \u00b7 CLOSE\",\n   kbdOpen:\"View instructions\",kbdClose:\"Close\",\n   documentos:\"Documents\",oficio:\"Trade tools\",oficioMeta:\"Certifications and technical data\",\n   ayuda:\"Help\",consejeria:\"Counseling\",\n   consejeriaP:\"Academic and personal guidance. Tutoring and accommodation are coordinated through your campus Counseling or Retention Office.\",\n   horario:\"Office hours\",lmv:\"Mon \u00b7 Wed \u00b7 Fri\",mj:\"Tue \u00b7 Thu\",central:\"Main line\",\n   horarioP:\"Transcripts and certifications: 5 business days via the Registrar.\",\n   acomodo:\"Reasonable accommodation\",acomodoP:\"Services for students with disabilities or functional diversity.\",\n   recintos:\"Campuses\",navegar:\"navigate\",abrir:\"open\",cerrar:\"close\",\n   filtrar:\"Filter documents\u2026\",todos:\"All\",abierto:\"Open now\",hasta:\"until\",\n   cerrado:\"Closed now\",nores:\"No results\",tal:\"Try\",pag:\"pp\",\n   resultados:\"Results\",buscarBtn:\"Search\",\n   vidT:\"Video tutorials\",vidKick:\"MTC Online \u00b7 MIS team\",\n   vidP:\"Everything about your Office 365 account, by the MIS team \u2014 videos in Spanish.\",\n   vidPlay:\"Play\",vidCnt:\"3 videos\",\n   docsMeta1:\"%N documents \u00b7 %P pages\",docsMeta2:\"direct download\",\n   greetM:\"Good morning\",greetT:\"Good afternoon\",greetN:\"Good evening\",\n   serv:\"Services\",docsG:\"Documents\",plateA:\"Student Dashboard\",plateB:\"search everything\"}\n};\nconst SUGG = [\"cat\u00e1logo\",\"t\u00edtulo ix\",\"reglamento\",\"beca\",\"emergencia\"];\n\nlet L = \"es\";\nconst t = k => (I18N[L][k] !== undefined ? I18N[L][k] : (I18N.es[k] || \"\"));\n\nconst store = {\n  get(k,d){ try{ const v=localStorage.getItem(k); return v===null?d:JSON.parse(v) }catch(e){ return d } },\n  set(k,v){ try{ localStorage.setItem(k,JSON.stringify(v)) }catch(e){} }\n};\n\nconst $  = s => root.querySelector(s);\nconst $$ = s => Array.from(root.querySelectorAll(s));\nconst esc = s => String(s).replace(\/[&<>\"']\/g, c =>\n  ({\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"}[c]));\nconst norm = s => String(s).toLowerCase().normalize(\"NFD\").replace(\/[\\u0300-\\u036f]\/g,\"\");\nconst fmtKb = k => k >= 1024 ? (k\/1024).toFixed(1).replace(\".0\",\"\") + \" MB\" : k + \" KB\";\n\nconst pal   = document.getElementById(\"mtdPal\");\nconst scrim = document.getElementById(\"mtdScrim\");\nconst palIn = document.getElementById(\"mtdPalIn\");\nconst palRes= document.getElementById(\"mtdPalRes\");\nconst vid   = document.getElementById(\"mtdVid\");\nif(pal && pal.parentNode !== document.body){ document.body.appendChild(scrim); document.body.appendChild(pal) }\nif(vid && vid.parentNode !== document.body){ document.body.appendChild(vid) }\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 scramble \u2014 la firma del home \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nconst REDUCED = window.matchMedia && matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\nconst LETTERS = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";\nfunction scramble(el, finalValue){\n  if(!el || finalValue == null) return;\n  if(REDUCED){ el.textContent = finalValue; return }\n  if(el.__mtdScr) clearInterval(el.__mtdScr);\n  let it = 0;\n  el.__mtdScr = setInterval(() => {\n    el.textContent = finalValue.split(\"\").map((ch,i) => {\n      if(i < it) return finalValue[i];\n      if(ch === \" \") return \" \";\n      return LETTERS[Math.floor(Math.random()*LETTERS.length)];\n    }).join(\"\");\n    if(it >= finalValue.length){ clearInterval(el.__mtdScr); el.__mtdScr = null }\n    it += 1\/3;\n  }, 25);\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 \u00edndice \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nconst INDEX = [];\nDOCS.forEach(d => INDEX.push({\n  id:d.id, kind:\"doc\", url:d.url, ext:0,\n  es:d.es, en:d.en, sub_es:CATS[d.cat].es, sub_en:CATS[d.cat].en, kw:d.kw, doc:d\n}));\n[...SERVICES, ...TRADE].forEach(s => INDEX.push({\n  id:s.id, kind:\"srv\", url:s.url, ext:s.ext||0, vid:s.vid||0,\n  es:s.es, en:s.en, sub_es:s.des_es, sub_en:s.des_en, kw:s.kw, srv:s\n}));\n\nfunction within1(a,b){\n  const la=a.length, lb=b.length;\n  if(Math.abs(la-lb)>1) return false;\n  let i=0,j=0,diff=0;\n  while(i<la && j<lb){\n    if(a[i]===b[j]){i++;j++;continue}\n    if(++diff>1) return false;\n    if(la>lb) i++; else if(lb>la) j++; else {i++;j++}\n  }\n  return diff+(la-i)+(lb-j)<=1;\n}\nfunction typoHit(text,term){\n  if(term.length<4) return false;\n  for(const w of text.split(\/[^a-z0-9]+\/)){\n    if(w.length<4) continue;\n    if(within1(w,term)) return true;\n    if(w.length>term.length && within1(w.slice(0,term.length),term)) return true;\n  }\n  return false;\n}\nfunction score(item,q){\n  if(!q) return 0;\n  const title=norm(L===\"en\"?item.en:item.es);\n  const alt  =norm(L===\"en\"?item.es:item.en);\n  const kw   =norm(item.kw||\"\");\n  const sub  =norm((L===\"en\"?item.sub_en:item.sub_es)||\"\");\n  let total=0;\n  for(const term of q.split(\/\\s+\/).filter(Boolean)){\n    const rx=term.replace(\/[.*+?^${}()|[\\]\\\\]\/g,\"\\\\$&\");\n    let s=0;\n    if(title===term) s=1000;\n    else if(title.startsWith(term)) s=800;\n    else if(new RegExp(\"\\\\b\"+rx).test(title)) s=600;\n    else if(new RegExp(\"\\\\b\"+rx).test(kw)) s=460;\n    else if(title.includes(term)) s=340;\n    else if(kw.includes(term)) s=260;\n    else if(new RegExp(\"\\\\b\"+rx).test(alt)||new RegExp(\"\\\\b\"+rx).test(sub)) s=220;\n    else if(typoHit(title,term)) s=150;\n    else if(typoHit(kw,term)) s=110;\n    if(s===0) return 0;\n    total+=s;\n  }\n  return total;\n}\nfunction search(q){\n  const nq=norm(q.trim());\n  if(!nq){\n    const recent=store.get(\"mt_recent\",[]);\n    const pinned=recent.map(id=>INDEX.find(i=>i.id===id)).filter(Boolean);\n    return [...pinned, ...INDEX.filter(i=>!recent.includes(i.id))].slice(0,40);\n  }\n  return INDEX.map(i=>({i,s:score(i,nq)})).filter(x=>x.s>0)\n              .sort((a,b)=>b.s-a.s).slice(0,40).map(x=>x.i);\n}\nfunction hl(text,q){\n  const nq=norm(q.trim());\n  if(!nq) return esc(text);\n  const terms=nq.split(\/\\s+\/).filter(Boolean).sort((a,b)=>b.length-a.length)\n                .map(x=>x.replace(\/[.*+?^${}()|[\\]\\\\]\/g,\"\\\\$&\"));\n  if(!terms.length) return esc(text);\n  const n=norm(text), hits=new Array(text.length).fill(false);\n  for(const term of terms){\n    let from=0,at;\n    while((at=n.indexOf(term,from))!==-1){\n      for(let k=at;k<at+term.length&&k<hits.length;k++) hits[k]=true;\n      from=at+term.length;\n    }\n  }\n  let out=\"\",open=false;\n  for(let k=0;k<text.length;k++){\n    if(hits[k]&&!open){out+=\"<mark>\";open=true}\n    if(!hits[k]&&open){out+=\"<\/mark>\";open=false}\n    out+=esc(text[k]);\n  }\n  return out+(open?\"<\/mark>\":\"\");\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 sonido \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nconst TOUCH = window.matchMedia && matchMedia(\"(hover: none) and (pointer: coarse)\").matches;\nlet AC=null, sndOn=store.get(\"mt_snd\",false);\nfunction blip(f,d,v){\n  if(!sndOn || TOUCH) return;\n  try{\n    AC=AC||new (window.AudioContext||window.webkitAudioContext)();\n    if(AC.state===\"suspended\") AC.resume();\n    const o=AC.createOscillator(), g=AC.createGain();\n    o.type=\"sine\"; o.frequency.value=f;\n    g.gain.setValueAtTime(0,AC.currentTime);\n    g.gain.linearRampToValueAtTime(v,AC.currentTime+.008);\n    g.gain.exponentialRampToValueAtTime(.0001,AC.currentTime+d);\n    o.connect(g); g.connect(AC.destination);\n    o.start(); o.stop(AC.currentTime+d);\n  }catch(e){}\n}\nconst sMove=()=>blip(880,.045,.012), sOpen=()=>blip(523.25,.09,.02), sPick=()=>blip(1046.5,.12,.026);\n\/* el blip de abrir \u00edtem pero una octava arriba (C7) y m\u00e1s corto: mismo car\u00e1cter,\n   m\u00e1s agudo y filoso. Pitch fijo = computadora; remate en E7. *\/\nfunction sScramble(dur){\n  if(!sndOn || REDUCED) return;\n  const step=95, n=Math.max(6,Math.round(dur\/step));\n  for(let i=0;i<n;i++) setTimeout(()=>blip(2093,.05,.024), i*step);\n  setTimeout(()=>blip(2637,.12,.026), n*step+70);\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 recientes \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nfunction remember(id){\n  const r=store.get(\"mt_recent\",[]).filter(x=>x!==id);\n  r.unshift(id); store.set(\"mt_recent\",r.slice(0,6)); paintRecent();\n}\nfunction paintRecent(){\n  const items=store.get(\"mt_recent\",[]).map(id=>INDEX.find(i=>i.id===id)).filter(Boolean);\n  const sec=$(\"#mtdRecientes\");\n  if(!items.length){ sec.hidden=true; return }\n  sec.hidden=false;\n  $(\"#mtdRecList\").innerHTML=items.map(i=>\n    `<a class=\"mtd-chip\" href=\"${esc(i.url)}\" data-id=\"${esc(i.id)}\"${i.kind===\"doc\"?' target=\"_blank\" rel=\"noopener\"':''}>\n       <span>${esc(L===\"en\"?i.en:i.es)}<\/span><\/a>`).join(\"\");\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 render \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nfunction tileHTML(s,n,withKey){\n  const name=L===\"en\"?s.en:s.es, des=L===\"en\"?s.des_en:s.des_es;\n  return `<a class=\"mtd-tile\" href=\"${esc(s.url)}\" data-id=\"${esc(s.id)}\"\n     ${s.ext?'target=\"_blank\" rel=\"noopener\"':\"\"}>\n    ${svg(s.id)}\n    ${withKey?`<span class=\"keyhint hide-sm\" aria-hidden=\"true\">${n}<\/span>`:\"\"}\n    <span class=\"btm\">\n      <span class=\"kicker\">${esc(des)}<\/span>\n      <span class=\"name\">${esc(name)}<\/span>\n    <\/span>\n    <span class=\"arw\" aria-hidden=\"true\">\u2192<\/span>\n  <\/a>`;\n}\nfunction paintTiles(){\n  $(\"#mtdTilesMain\").innerHTML  = SERVICES.map((s,i)=>tileHTML(s,i+1,true)).join(\"\");\n  $(\"#mtdTilesTrade\").innerHTML = TRADE.map((s,i)=>tileHTML(s,i+1,false)).join(\"\");\n  \/* chips de recintos retirados: los nombres los muestra el mapa adoptado\n     en el slot #mtdMapaSlot (CAMPUSES se conserva por si vuelven) *\/\n  const cl=$(\"#mtdCampusList\");\n  if(cl) cl.innerHTML = CAMPUSES.map(c=>\n    `<a class=\"mtd-chip\" href=\"${c.u}\"${c.hq?' title=\"Sede principal\"':\"\"}>${esc(c.n)}${c.hq?'<i class=\"hq\" aria-hidden=\"true\">HQ<\/i>':\"\"}<\/a>`).join(\"\");\n}\n\nlet filterCat=\"all\", filterTxt=\"\";\nconst CAT_ORDER=[\"catalogo\",\"titulo-ix\",\"reglamentos\",\"politicas\",\"divulgacion\"];\nfunction paintFilters(){\n  $(\"#mtdFilters\").innerHTML=[`<button type=\"button\" class=\"mtd-chip\" data-cat=\"all\" aria-pressed=\"${filterCat===\"all\"}\">${esc(t(\"todos\"))}<\/button>`]\n    .concat(CAT_ORDER.filter(c=>CATS[c]).map(c=>\n      `<button type=\"button\" class=\"mtd-chip\" data-cat=\"${c}\" aria-pressed=\"${filterCat===c}\">${esc(CATS[c][L]||CATS[c].es)}<\/button>`)).join(\"\");\n}\nfunction docRow(d){\n  const title=L===\"en\"?d.en:d.es;\n  const meta=[d.v, `${d.p} ${t(\"pag\")}`, fmtKb(d.kb), d.lang];\n  return `<a class=\"mtd-doc\" href=\"${esc(d.url)}\" target=\"_blank\" rel=\"noopener\" data-id=\"${esc(d.id)}\">\n    <span class=\"t\">${hl(title,filterTxt)}<\/span>\n    <span class=\"rm\"><span class=\"hide-sm\">${esc(meta[0])} \u00b7 ${esc(meta[1])} \u00b7 <\/span>${esc(meta[2])} \u00b7 ${esc(meta[3])}<\/span>\n    <span class=\"go\" aria-hidden=\"true\">\u2193<\/span>\n  <\/a>`;\n}\nfunction paintDocs(){\n  const nq=norm(filterTxt.trim());\n  const match=d=>{\n    if(filterCat!==\"all\"&&d.cat!==filterCat) return false;\n    if(!nq) return true;\n    return norm(d.es+\" \"+d.en+\" \"+d.kw+\" \"+CATS[d.cat].es).includes(nq);\n  };\n  const total=DOCS.reduce((a,d)=>a+d.p,0);\n  $(\"#mtdDocCount\").innerHTML =\n    esc(t(\"docsMeta1\").replace(\"%N\",DOCS.length).replace(\"%P\",total)) +\n    `<br><span>${esc(t(\"docsMeta2\"))}<\/span>`;\n  const list=DOCS.filter(match);\n  if(!list.length){ $(\"#mtdDocList\").innerHTML=`<p class=\"mtd-empty\">${esc(t(\"nores\"))}<\/p>`; return }\n  if(filterCat===\"all\" && !nq){\n    let html=\"\";\n    for(const c of CAT_ORDER){\n      const docs=list.filter(d=>d.cat===c);\n      if(!docs.length) continue;\n      html+=`<div class=\"mtd-docgrp\"><span class=\"lbl\">${esc(CATS[c][L]||CATS[c].es)}<\/span><i>\/${String(docs.length).padStart(2,\"0\")}<\/i><\/div>`;\n      html+=docs.map(docRow).join(\"\");\n    }\n    $(\"#mtdDocList\").innerHTML=html;\n  } else {\n    \/* con filtro o b\u00fasqueda: encabezado de grupo propio (misma jerarqu\u00eda\n       que la vista agrupada) \u2014 as\u00ed la lista nunca pega dos l\u00edneas seguidas *\/\n    const lbl = nq ? t(\"resultados\") : (CATS[filterCat][L]||CATS[filterCat].es);\n    $(\"#mtdDocList\").innerHTML =\n      `<div class=\"mtd-docgrp\"><span class=\"lbl\">${esc(lbl)}<\/span><i>\/${String(list.length).padStart(2,\"0\")}<\/i><\/div>`\n      + list.map(docRow).join(\"\");\n  }\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 paleta \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nlet open=false, cursor=0, results=[];\nfunction paintPal(){\n  const q=palIn.value;\n  results=search(q);\n  if(cursor>=results.length) cursor=Math.max(0,results.length-1);\n  const cnt=document.getElementById(\"mtdCnt\");\n  if(cnt) cnt.textContent=`${DOCS.length} DOCS \u00b7 ${SERVICES.length+TRADE.length} SERV`;\n  if(!results.length){\n    palRes.innerHTML=`<p class=\"empty\">${esc(t(\"nores\"))} \u2014 ${esc(t(\"tal\"))}:<\/p>\n      <div class=\"sugg\">${SUGG.map(s=>`<button type=\"button\" data-q=\"${esc(s)}\">${esc(s)}<\/button>`).join(\"\")}<\/div>`;\n    return;\n  }\n  let html=\"\", lastKind=null;\n  results.forEach((r,i)=>{\n    if(r.kind!==lastKind){\n      html+=`<p class=\"grp\">${r.kind===\"doc\"?esc(t(\"docsG\")):esc(t(\"serv\"))}<\/p>`;\n      lastKind=r.kind;\n    }\n    const name=L===\"en\"?r.en:r.es;\n    const sub=(L===\"en\"?r.sub_en:r.sub_es)||\"\";\n    const meta=r.kind===\"doc\"\n      ? `<span class=\"hide-sm\">PDF \u00b7 ${r.doc.p} ${esc(t(\"pag\"))} \u00b7 <\/span>${fmtKb(r.doc.kb)}`\n      : (r.ext?\"\u2197 externo\":\"mechtech.edu\");\n    html+=`<div class=\"opt\" role=\"option\" id=\"mtdOpt${i}\" data-i=\"${i}\" aria-selected=\"${i===cursor}\">\n      <span class=\"ic\" aria-hidden=\"true\">${r.kind===\"doc\"?\"PDF\":\"\u2197\"}<\/span>\n      <span class=\"tx\"><b>${hl(name,q)}<\/b><small>${esc(sub)} \u00b7 ${meta}<\/small><\/span>\n      <span class=\"ent\" aria-hidden=\"true\">\u21b5<\/span><\/div>`;\n  });\n  palRes.innerHTML=html;\n  palIn.setAttribute(\"aria-activedescendant\",\"mtdOpt\"+cursor);\n}\nfunction moveCursor(d){\n  if(!results.length) return;\n  cursor=(cursor+d+results.length)%results.length;\n  Array.from(palRes.querySelectorAll(\".opt\")).forEach(el=>\n    el.setAttribute(\"aria-selected\",String(+el.dataset.i===cursor)));\n  const el=document.getElementById(\"mtdOpt\"+cursor);\n  if(el) el.scrollIntoView({block:\"nearest\"});\n  palIn.setAttribute(\"aria-activedescendant\",\"mtdOpt\"+cursor);\n  sMove();\n}\nlet lastFocus=null;\nfunction openPal(){\n  if(open) return;\n  open=true; lastFocus=document.activeElement;\n  scrim.classList.add(\"on\"); pal.classList.add(\"on\");\n  document.body.classList.add(\"mtd-locked\");\n  palIn.value=\"\"; cursor=0; paintPal();\n  setTimeout(()=>palIn.focus(),40);\n  sOpen();\n}\nfunction closePal(){\n  if(!open) return;\n  open=false;\n  scrim.classList.remove(\"on\"); pal.classList.remove(\"on\");\n  document.body.classList.remove(\"mtd-locked\");\n  if(lastFocus&&lastFocus.focus) lastFocus.focus();\n}\nfunction activate(i){\n  const r=results[i]; if(!r) return;\n  sPick(); remember(r.id); closePal();\n  if(r.vid){ openVid(); return }\n  if(r.kind===\"doc\"||r.ext) window.open(r.url,\"_blank\",\"noopener\");\n  else window.location.href=r.url;\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 lightbox de videos (MTC Online) \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   La p\u00e1gina vieja \/mtc-online\/ era solo YouTube embeds; muere con el sitio\n   nuevo. Sus videos viven aqu\u00ed: thumbnail est\u00e1tico primero (cero peso de\n   YouTube al cargar la p\u00e1gina) y el iframe de youtube-nocookie se inyecta\n   solo al darle play. Un video a la vez; el activo se expande a lo ancho. *\/\nlet vidOpen=false, lastFocusV=null;\nfunction paintVids(){\n  const list=vid.querySelector(\"#mtdVidList\");\n  if(list.childElementCount) return;                     \/* se pinta una vez *\/\n  list.innerHTML=VIDEOS.map(v=>`\n    <div class=\"vcard\" data-yt=\"${esc(v.yt)}\">\n      <div class=\"frame\">\n        <button type=\"button\" class=\"thumb\">\n          <img decoding=\"async\" src=\"https:\/\/i.ytimg.com\/vi\/${esc(v.yt)}\/hqdefault.jpg\" alt=\"\" loading=\"lazy\">\n          <span class=\"play\"><i><svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><path d=\"M3 1.5v13l11-6.5z\" fill=\"#FF4D4F\"\/><\/svg><\/i><\/span>\n        <\/button>\n      <\/div>\n      <span class=\"vtx\">\n        <span class=\"vkick\">Tutorial \u00b7 MIS<\/span>\n        <span class=\"vname\"><\/span>\n      <\/span>\n    <\/div>`).join(\"\");\n}\nfunction vidLang(){\n  if(!vid) return;\n  vid.setAttribute(\"lang\",L);\n  vid.setAttribute(\"aria-label\",L===\"en\"?\"MTC Online \u2014 video tutorials\":\"MTC Online \u2014 tutoriales en video\");\n  Array.from(vid.querySelectorAll(\"[data-i]\")).forEach(el=>{\n    const k=el.dataset.i; if(I18N[L][k]!==undefined) el.textContent=I18N[L][k] });\n  Array.from(vid.querySelectorAll(\".vcard\")).forEach(c=>{\n    const v=VIDEOS.find(x=>x.yt===c.dataset.yt); if(!v) return;\n    const name=L===\"en\"?v.en:v.es;\n    c.querySelector(\".vname\").textContent=name;\n    const th=c.querySelector(\".thumb\");\n    if(th) th.setAttribute(\"aria-label\",t(\"vidPlay\")+\": \"+name);\n    const fr=c.querySelector(\"iframe\"); if(fr) fr.title=name;\n  });\n  const x=vid.querySelector(\"#mtdVidX\"); if(x) x.setAttribute(\"aria-label\",t(\"cerrar\"));\n}\nfunction stopVids(){\n  Array.from(vid.querySelectorAll(\".frame iframe\")).forEach(f=>f.remove());\n  Array.from(vid.querySelectorAll(\".vcard.live\")).forEach(c=>c.classList.remove(\"live\"));\n}\nfunction playVid(card){\n  stopVids();\n  const v=VIDEOS.find(x=>x.yt===card.dataset.yt); if(!v) return;\n  const f=document.createElement(\"iframe\");\n  f.src=\"https:\/\/www.youtube-nocookie.com\/embed\/\"+v.yt\n    +\"?autoplay=1&rel=0&modestbranding=1&playsinline=1&hl=\"+(L===\"en\"?\"en\":\"es\");\n  f.allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen\";\n  f.allowFullscreen=true;\n  f.title=L===\"en\"?v.en:v.es;\n  card.classList.add(\"live\");\n  card.querySelector(\".frame\").appendChild(f);\n  sPick();\n  requestAnimationFrame(()=>card.scrollIntoView({block:\"nearest\",behavior:REDUCED?\"auto\":\"smooth\"}));\n}\nfunction openVid(){\n  if(vidOpen || !vid) return;\n  if(open) closePal();\n  vidOpen=true; lastFocusV=document.activeElement;\n  paintVids(); vidLang();\n  scrim.classList.add(\"on\"); vid.classList.add(\"on\");\n  document.body.classList.add(\"mtd-locked\");\n  sOpen();\n  setTimeout(()=>{ const th=vid.querySelector(\".thumb\"); if(th) th.focus() },40);\n}\nfunction closeVid(){\n  if(!vidOpen) return;\n  vidOpen=false;\n  stopVids();\n  scrim.classList.remove(\"on\"); vid.classList.remove(\"on\");\n  document.body.classList.remove(\"mtd-locked\");\n  if(lastFocusV&&lastFocusV.focus) lastFocusV.focus();\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 reloj, saludo, estado \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nfunction prTime(){ return new Date(Date.now()+(new Date().getTimezoneOffset()*60000)-(4*3600000)) }\nfunction tick(){\n  const d=prTime(), hh=d.getHours(), mm=d.getMinutes(), ss=d.getSeconds();\n  const h12=hh%12||12;\n  $(\"#mtdClock\").textContent=String(h12)+\":\"+String(mm).padStart(2,\"0\");\n  $(\"#mtdSec\").textContent=\":\"+String(ss).padStart(2,\"0\");\n  $(\"#mtdAmpm\").textContent=hh<12?\"AM\":\"PM\";\n  const g=hh<12?t(\"greetM\"):hh<18?t(\"greetT\"):t(\"greetN\");\n  const ge=$(\"#mtdGreet\");\n  if(ge.textContent!==g && !ge.__mtdScr) ge.textContent=g;\n  $(\"#mtdToday\").textContent=d.toLocaleDateString(L===\"en\"?\"en-US\":\"es-PR\",\n    {weekday:\"long\",day:\"numeric\",month:\"long\"});\n  const wd=d.getDay(), mins=hh*60+mm;\n  let openNow=false, closeAt=\"\";\n  if(wd===1||wd===3||wd===5){ openNow=mins>=480&&mins<1020; closeAt=\"5:00 PM\" }\n  else if(wd===2||wd===4){    openNow=mins>=600&&mins<1140; closeAt=\"7:00 PM\" }\n  const el=$(\"#mtdCampus\");\n  el.classList.toggle(\"off\",!openNow);\n  $(\"#mtdCampusTxt\").textContent=openNow?`${t(\"abierto\")} \u00b7 ${t(\"hasta\")} ${closeAt}`:t(\"cerrado\");\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 idioma (scramble en titulares, como el home) \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nfunction applyLang(withFx){\n  root.setAttribute(\"lang\",L);\n  pal.setAttribute(\"lang\",L);\n  $$(\"[data-i]\").forEach(el=>{ const k=el.dataset.i; if(I18N[L][k]!==undefined) el.textContent=I18N[L][k] });\n  Array.from(pal.querySelectorAll(\"[data-i]\")).forEach(el=>{\n    const k=el.dataset.i; if(I18N[L][k]!==undefined) el.textContent=I18N[L][k] });\n  vidLang();\n  $(\"#mtdLangEs\").classList.toggle(\"on\",L===\"es\");\n  $(\"#mtdLangEn\").classList.toggle(\"on\",L===\"en\");\n  $(\"#mtdLang\").setAttribute(\"aria-label\",L===\"es\"?\"Switch to English\":\"Cambiar a espa\u00f1ol\");\n  $(\"#mtdDocFind\").placeholder=t(\"filtrar\");\n  palIn.placeholder=t(\"ph\");\n  paintTiles(); paintFilters(); paintDocs(); paintRecent(); tick();\n  if(open) paintPal();\n  if(withFx){\n    const d=prTime(), hh=d.getHours();\n    const greet=hh<12?t(\"greetM\"):hh<18?t(\"greetT\"):t(\"greetN\");\n    \/* 75ms por letra (3 frames \u00d7 25ms) + el delay de cada tanda *\/\n    const dur=Math.max(\n      t(\"h1q\").length*75, greet.length*75, t(\"accesos\").length*75,\n      150+t(\"documentos\").length*75, 150+t(\"oficio\").length*75,\n      300+t(\"ayuda\").length*75);\n    sScramble(dur);\n    scramble($(\"#mtdH1\"), t(\"h1q\"));\n    scramble($(\"#mtdGreet\"), greet);\n    scramble($(\"#mtdAccH\"), t(\"accesos\"));\n    setTimeout(()=>{ scramble($(\"#mtdDocH\"), t(\"documentos\"));\n                     scramble($(\"#mtdOficioH\"), t(\"oficio\")) },150);\n    setTimeout(()=>{ scramble($(\"#mtdAyudaH\"), t(\"ayuda\")) },300);\n  }\n}\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 eventos \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n$(\"#mtdSearchBtn\").addEventListener(\"click\",openPal);\nscrim.addEventListener(\"click\",()=>{ closePal(); closeVid() });\n\n\/* acceso #7 y su chip de recientes abren el lightbox (cmd\/ctrl-click\n   conserva el fallback: el video en YouTube en otra pesta\u00f1a) *\/\nroot.addEventListener(\"click\",e=>{\n  const a=e.target.closest('a[data-id=\"mtconline\"]');\n  if(!a || e.metaKey || e.ctrlKey || e.shiftKey) return;\n  e.preventDefault(); remember(\"mtconline\"); openVid();\n});\nvid.addEventListener(\"click\",e=>{\n  if(e.target.closest(\"#mtdVidX\")){ closeVid(); return }\n  const th=e.target.closest(\".thumb\");\n  if(th) playVid(th.closest(\".vcard\"));\n});\npalIn.addEventListener(\"input\",()=>{cursor=0;paintPal()});\npalRes.addEventListener(\"mousemove\",e=>{\n  const o=e.target.closest(\".opt\"); if(!o) return;\n  const i=+o.dataset.i;\n  if(i!==cursor){ cursor=i;\n    Array.from(palRes.querySelectorAll(\".opt\")).forEach(el=>\n      el.setAttribute(\"aria-selected\",String(+el.dataset.i===cursor))) }\n});\npalRes.addEventListener(\"click\",e=>{\n  const s=e.target.closest(\"[data-q]\");\n  if(s){ palIn.value=s.dataset.q; cursor=0; paintPal(); palIn.focus(); return }\n  const o=e.target.closest(\".opt\"); if(o) activate(+o.dataset.i);\n});\n\ndocument.addEventListener(\"keydown\",e=>{\n  const typing=\/^(INPUT|TEXTAREA|SELECT)$\/.test(e.target.tagName)||e.target.isContentEditable;\n  if(vidOpen){\n    if(e.key===\"Escape\"){ e.preventDefault(); closeVid(); return }\n    if((e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===\"k\"){ e.preventDefault(); closeVid(); openPal(); return }\n    if(e.key===\"Tab\"){\n      const f=Array.from(vid.querySelectorAll(\".thumb,.x\")).filter(el=>el.offsetWidth>0);\n      if(!f.length) return;\n      e.preventDefault();\n      const i=f.indexOf(document.activeElement);\n      const n=e.shiftKey?(i<=0?f.length-1:i-1):(i>=f.length-1?0:i+1);\n      f[n].focus();\n    }\n    return;\n  }\n  if((e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===\"k\"){ e.preventDefault(); open?closePal():openPal(); return }\n  if(!open&&e.key===\"\/\"&&!typing){ e.preventDefault(); openPal(); return }\n  if(!open&&!typing&&\/^[1-9]$\/.test(e.key)){\n    const tile=$$(\"#mtdTilesMain .mtd-tile\")[+e.key-1];\n    if(tile){ e.preventDefault(); sPick(); remember(tile.dataset.id); tile.click() }\n    return;\n  }\n  if(!open) return;\n  if(e.key===\"Escape\"){ e.preventDefault(); closePal() }\n  else if(e.key===\"ArrowDown\"){ e.preventDefault(); moveCursor(1) }\n  else if(e.key===\"ArrowUp\"){ e.preventDefault(); moveCursor(-1) }\n  else if(e.key===\"Home\"){ e.preventDefault(); cursor=0; paintPal() }\n  else if(e.key===\"End\"){ e.preventDefault(); cursor=results.length-1; paintPal() }\n  else if(e.key===\"Enter\"){ e.preventDefault(); activate(cursor) }\n  else if(e.key===\"Tab\"){ e.preventDefault() }\n});\n\n$(\"#mtdFilters\").addEventListener(\"click\",e=>{\n  const b=e.target.closest(\"[data-cat]\"); if(!b) return;\n  filterCat=b.dataset.cat; sMove(); paintFilters(); paintDocs();\n});\n\/* mapa de teclado plegable *\/\nconst kbdTgl=$(\"#mtdKbdToggle\"), kbdBody=$(\"#mtdKbdBody\");\nif(kbdTgl && kbdBody){\n  kbdTgl.addEventListener(\"click\",()=>{\n    const o=!kbdBody.classList.contains(\"open\");\n    kbdBody.classList.toggle(\"open\",o);\n    kbdTgl.setAttribute(\"aria-expanded\",String(o));\n    const cta=$(\"#mtdKbdCta\");\n    if(cta){ cta.dataset.i=o?\"kbdClose\":\"kbdOpen\"; cta.textContent=t(cta.dataset.i) }\n    o?sOpen():sMove();\n  });\n}\n\n$(\"#mtdDocFind\").addEventListener(\"input\",e=>{\n  filterTxt=e.target.value;\n  \/* escribir = buscar en TODO: si hay un chip de categor\u00eda activo, se suelta solo\n     (si no, \"titulo\" con CAT\u00c1LOGOS activo dar\u00eda \"sin resultados\" \u2014 se siente roto) *\/\n  if(filterTxt.trim() && filterCat!==\"all\"){ filterCat=\"all\"; paintFilters() }\n  paintDocs();\n});\nroot.addEventListener(\"click\",e=>{\n  const a=e.target.closest(\"a[data-id]\"); if(a){ sPick(); remember(a.dataset.id) }\n});\n\n$(\"#mtdLang\").addEventListener(\"click\",()=>{\n  L=L===\"es\"?\"en\":\"es\"; store.set(\"mt_lang\",L); applyLang(true);\n});\n$(\"#mtdSnd\").addEventListener(\"click\",()=>{\n  sndOn=!sndOn; store.set(\"mt_snd\",sndOn);\n  $(\"#mtdSnd\").setAttribute(\"aria-pressed\",String(sndOn));\n  $(\"#mtdSnd\").classList.toggle(\"on\",sndOn);\n  if(sndOn) sOpen();\n});\n\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 arranque \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\nL=store.get(\"mt_lang\",\"es\")===\"en\"?\"en\":\"es\";\n$(\"#mtdSnd\").setAttribute(\"aria-pressed\",String(sndOn));\n$(\"#mtdSnd\").classList.toggle(\"on\",sndOn);\napplyLang(false);\n\n\/* \u2500\u2500 adopci\u00f3n del mapa de recintos \u2500\u2500\n   Busca en la p\u00e1gina un elemento con clase .mtd-mapa-recintos (un widget de\n   Elementor con esa clase en Avanzado \u2192 Clases CSS) y lo mueve dentro del panel\n   RECINTOS. Corre en DOMContentLoaded \u2014 ANTES de que el API async de Google\n   inicialice el mapa \u2014 para que el mapa nazca ya dentro de la celda con el\n   tama\u00f1o correcto (si se muda despu\u00e9s, los tiles quedan calculados para el\n   contenedor viejo: mapa pegado arriba y espacio muerto abajo). window.load\n   queda como reintento por si el widget a\u00fan no estaba en el DOM. *\/\nfunction mtdAdoptarMapa(){\n  try{\n    const slot=document.getElementById(\"mtdMapaSlot\");\n    if(!slot || slot.childElementCount) return;\n    const w=document.querySelector(\".mtd-mapa-recintos\");\n    if(!w || slot.contains(w) || w.contains(slot)) return;\n    slot.appendChild(w);\n    slot.hidden=false;\n    w.style.removeProperty(\"display\");\n    \/* empuj\u00f3n por si el mapa ya se hab\u00eda inicializado en el sitio viejo *\/\n    const nudge=()=>{try{window.dispatchEvent(new Event(\"resize\"))}catch(e){}};\n    nudge(); setTimeout(nudge,600);\n  }catch(e){}\n}\nif(document.readyState!==\"loading\") mtdAdoptarMapa();\nelse document.addEventListener(\"DOMContentLoaded\",mtdAdoptarMapa);\nwindow.addEventListener(\"load\",mtdAdoptarMapa);\nsetInterval(tick,1000);\n\/* scramble de entrada, como el splash *\/\nsetTimeout(()=>{ scramble($(\"#mtdH1\"), t(\"h1q\")) }, 150);\n}\n\nif(document.readyState===\"loading\") document.addEventListener(\"DOMContentLoaded\",boot);\nelse boot();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4bb144ff mtd-mapa-recintos elementor-widget elementor-widget-multi_google_maps\" data-id=\"4bb144ff\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"mtd-mapa-recintos\" data-widget_type=\"multi_google_maps.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n\t\t<div class=\"multi-google-maps-wrapper\">\n\t\t\t<div id=\"multi-map-4bb144ff\" class=\"multi-google-maps-canvas\"><\/div>\n\t\t<\/div>\n\n\t\t<script>\n\t\t(function(){\n\t\t\t'use strict';\n\n\t\t\tvar locations  = [{\"title\":\"Caguas\",\"address\":\"Parque Industrial Oeste, Calle B 39-40, Caguas, PR 00725\",\"phone\":\"787-744-1060\",\"lat\":18.218,\"lng\":-66.0485,\"gmaps_url\":\"\"},{\"title\":\"Vega Baja\",\"address\":\"Carr. #155 km 65.7, Barrio Pugnado Afuera, Sector Golpe Avisa, Vega Baja, PR 00694\",\"phone\":\"787-807-0575\",\"lat\":18.4468,\"lng\":-66.3977,\"gmaps_url\":\"\"},{\"title\":\"Bayam\\u00f3n\",\"address\":\"Carr. #167 km 18.9, Barrio P\\u00e1jaros, Bayam\\u00f3n, PR 00956\",\"phone\":\"787-797-1144\",\"lat\":18.37099,\"lng\":-66.183783,\"gmaps_url\":\"https:\\\/\\\/maps.app.goo.gl\\\/Hmt6omtzL3nwonk89\"},{\"title\":\"Mayag\\u00fcez\",\"address\":\"Calle William F Brennan, Edificio 43, Zona Industrial Guanajibo, Mayag\\u00fcez, PR 00681\",\"phone\":\"787-834-5225\",\"lat\":18.1611819,\"lng\":-67.1546884,\"gmaps_url\":\"https:\\\/\\\/maps.app.goo.gl\\\/BPz1atYEM2dhZN2w7\"},{\"title\":\"Ponce\",\"address\":\"Carr. PR #2 Km 220.1, Complejo Recreacional El Tuque, Ponce, PR 00728\",\"phone\":\"787-709-4440\",\"lat\":17.9722583,\"lng\":-66.6769694,\"gmaps_url\":\"https:\\\/\\\/maps.app.goo.gl\\\/7TGxQ8cLt4NS9Wyt5\"}];\n\t\t\tvar mapId      = 'multi-map-4bb144ff';\n\t\t\tvar zoom       = 10;\n\t\t\tvar mapType    = 'roadmap';\n\t\t\tvar scrollZoom = false;\n\t\t\tvar autoFit    = true;\n\t\t\tvar mapStyle   = null;\n\n\t\t\t\n\t\t\tfunction escapeHtml(str) {\n\t\t\t\treturn String(str || '')\n\t\t\t\t\t.replace(\/&\/g, '&amp;')\n\t\t\t\t\t.replace(\/<\/g, '&lt;')\n\t\t\t\t\t.replace(\/>\/g, '&gt;')\n\t\t\t\t\t.replace(\/\"\/g, '&quot;')\n\t\t\t\t\t.replace(\/'\/g, '&#039;');\n\t\t\t}\n\n\t\t\tfunction waitFor(cb, max) {\n\t\t\t\tmax = max || 10000;\n\t\t\t\tvar t0 = Date.now();\n\n\t\t\t\t(function poll() {\n\t\t\t\t\tif (typeof google !== 'undefined' && typeof google.maps !== 'undefined') return cb();\n\t\t\t\t\tif (Date.now() - t0 < max) return setTimeout(poll, 200);\n\n\t\t\t\t\tvar el = document.getElementById(mapId);\n\t\t\t\t\tif (el) {\n\t\t\t\t\t\tel.innerHTML = '<iframe src=\"https:\/\/maps.google.com\/maps?q=' +\n\t\t\t\t\t\t\tencodeURIComponent(locations[0].address) + '&z=' + zoom +\n\t\t\t\t\t\t\t'&output=embed\" frameborder=\"0\" allowfullscreen style=\"width:100%;height:100%;border:0;\"><\/iframe>';\n\t\t\t\t\t}\n\t\t\t\t})();\n\t\t\t}\n\n\t\t\tfunction init() {\n\t\t\t\tvar el = document.getElementById(mapId);\n\t\t\t\tif (!el) return;\n\n\t\t\t\tvar wrapper = el.closest('.multi-google-maps-wrapper');\n\t\t\t\tif (!wrapper) return;\n\n\t\t\t\tvar oldOverlay = wrapper.querySelector('.mt-map-overlay');\n\t\t\t\tif (oldOverlay) oldOverlay.remove();\n\n\t\t\t\tvar overlayCard = document.createElement('div');\n\t\t\t\toverlayCard.className = 'mt-map-overlay';\n\t\t\t\toverlayCard.innerHTML =\n\t\t\t\t\t'<button class=\"mt-map-overlay-close\" type=\"button\" aria-label=\"Cerrar\">\u00d7<\/button>' +\n\t\t\t\t\t'<div class=\"mt-map-overlay-inner\"><\/div>';\n\n\t\t\t\twrapper.appendChild(overlayCard);\n\n\t\t\t\tvar overlayInner = overlayCard.querySelector('.mt-map-overlay-inner');\n\t\t\t\tvar closeBtn = overlayCard.querySelector('.mt-map-overlay-close');\n\t\t\t\tvar activeMarker = null;\n\n\t\t\t\tcloseBtn.addEventListener('click', function() {\n\t\t\t\t\toverlayCard.classList.remove('is-visible');\n\t\t\t\t\toverlayCard.classList.remove('mt-flip-below');\n\t\t\t\t\tactiveMarker = null;\n\t\t\t\t});\n\n\t\t\t\tvar hideClutter = [\n\t\t\t\t\t{ featureType: 'poi', elementType: 'all', stylers: [{ visibility: 'off' }] },\n\t\t\t\t\t{ featureType: 'transit', elementType: 'all', stylers: [{ visibility: 'off' }] }\n\t\t\t\t];\n\n\t\t\t\tvar opts = {\n\t\t\t\t\tzoom: zoom,\n\t\t\t\t\tmapTypeId: mapType,\n\t\t\t\t\tscrollwheel: (scrollZoom === 'true' || scrollZoom === true),\n\t\t\t\t\tdraggable: true,\n\t\t\t\t\tstreetViewControl: true,\n\t\t\t\t\tmapTypeControl: true,\n\t\t\t\t\tfullscreenControl: true,\n\t\t\t\t\tcenter: { lat: 18.22, lng: -66.4 },\n\t\t\t\t\tstyles: mapStyle ? mapStyle.concat(hideClutter) : hideClutter,\n\t\t\t\t\tclickableIcons: false\n\t\t\t\t};\n\n\t\t\t\tvar map = new google.maps.Map(el, opts);\n\t\t\t\tvar bounds = new google.maps.LatLngBounds();\n\n\t\t\t\tvar projectionHelper = new google.maps.OverlayView();\n\t\t\t\tprojectionHelper.onAdd = function(){};\n\t\t\t\tprojectionHelper.draw = function(){};\n\t\t\t\tprojectionHelper.onRemove = function(){};\n\t\t\t\tprojectionHelper.setMap(map);\n\n\t\t\t\tfunction buildCardHtml(loc) {\n\t\t\t\t\tvar phoneClean = loc.phone.replace(\/[^+\\d]\/g, '');\n\t\t\t\t\tvar directionsUrl = loc.gmaps_url\n    ? loc.gmaps_url\n    : 'https:\/\/www.google.com\/maps\/search\/?api=1&query=' + encodeURIComponent(loc.address);\n\n\t\t\t\t\treturn '' +\n\t\t\t\t\t\t'<div class=\"mt-map-card\">' +\n\t\t\t\t\t\t\t'<h4 class=\"mt-map-title\">' + escapeHtml(loc.title) + '<\/h4>' +\n\t\t\t\t\t\t\t'<p class=\"mt-map-address\">' + escapeHtml(loc.address) + '<\/p>' +\n\t\t\t\t\t\t\t'<div class=\"mt-map-actions\">' +\n\t\t\t\t\t\t\t\t'<a href=\"tel:' + phoneClean + '\" class=\"mt-map-btn primary\">Llamar<\/a>' +\n\t\t\t\t\t\t\t\t'<a href=\"' + directionsUrl + '\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"mt-map-btn\">Direcciones<\/a>' +\n\t\t\t\t\t\t\t'<\/div>' +\n\t\t\t\t\t\t'<\/div>';\n\t\t\t\t}\n\n\t\t\t\tfunction positionOverlay(latLng) {\n\t\t\t\t\tvar proj = projectionHelper.getProjection();\n\t\t\t\t\tif (!proj) return;\n\n\t\t\t\t\tvar point = proj.fromLatLngToContainerPixel(latLng);\n\t\t\t\t\tif (!point) return;\n\n\t\t\t\t\toverlayCard.style.visibility = 'hidden';\n\t\t\t\t\toverlayCard.classList.add('is-visible');\n\n\t\t\t\t\tvar cardWidth  = overlayCard.offsetWidth || 280;\n\t\t\t\t\tvar cardHeight = overlayCard.offsetHeight || 140;\n\n\t\t\t\t\tvar pad = 12;\n\t\t\t\t\tvar gapAbove = 45;\n\t\t\t\t\tvar gapBelow = 22;\n\n\t\t\t\t\tvar left = point.x - (cardWidth \/ 2);\n\t\t\t\t\tvar top  = point.y - cardHeight - gapAbove;\n\n\t\t\t\t\tvar mapWidth  = el.offsetWidth;\n\t\t\t\t\tvar mapHeight = el.offsetHeight;\n\n\t\t\t\t\tif (left < pad) left = pad;\n\t\t\t\t\tif (left + cardWidth > mapWidth - pad) left = mapWidth - cardWidth - pad;\n\n\t\t\t\t\tif (top < pad) {\n\t\t\t\t\t\ttop = point.y + gapBelow;\n\t\t\t\t\t\toverlayCard.classList.add('mt-flip-below');\n\t\t\t\t\t} else {\n\t\t\t\t\t\toverlayCard.classList.remove('mt-flip-below');\n\t\t\t\t\t}\n\n\t\t\t\t\tif (top + cardHeight > mapHeight - pad) {\n\t\t\t\t\t\ttop = mapHeight - cardHeight - pad;\n\t\t\t\t\t}\n\n\t\t\t\t\toverlayCard.style.left = left + 'px';\n\t\t\t\t\toverlayCard.style.top  = top + 'px';\n\t\t\t\t\toverlayCard.style.visibility = '';\n\t\t\t\t}\n\n\t\t\t\tfunction openOverlay(marker, loc) {\n\t\t\t\t\tactiveMarker = marker;\n\t\t\t\t\toverlayInner.innerHTML = buildCardHtml(loc);\n\n\t\t\t\t\trequestAnimationFrame(function() {\n\t\t\t\t\t\tpositionOverlay(marker.getPosition());\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tlocations.forEach(function(loc) {\n\t\t\t\t\tvar pos = new google.maps.LatLng(loc.lat, loc.lng);\n\n\t\t\t\t\tvar marker = new google.maps.Marker({\n\t\t\t\t\t\tposition: pos,\n\t\t\t\t\t\tmap: map,\n\t\t\t\t\t\ttitle: loc.title\n\t\t\t\t\t});\n\n\t\t\t\t\tbounds.extend(pos);\n\n\t\t\t\t\tmarker.addListener('click', function() {\n\t\t\t\t\t\topenOverlay(marker, loc);\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\t\tmap.addListener('click', function() {\n\t\t\t\t\toverlayCard.classList.remove('is-visible');\n\t\t\t\t\toverlayCard.classList.remove('mt-flip-below');\n\t\t\t\t\tactiveMarker = null;\n\t\t\t\t});\n\n\t\t\t\tmap.addListener('zoom_changed', function() {\n\t\t\t\t\tif (activeMarker && overlayCard.classList.contains('is-visible')) {\n\t\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\t\tpositionOverlay(activeMarker.getPosition());\n\t\t\t\t\t\t}, 30);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tmap.addListener('center_changed', function() {\n\t\t\t\t\tif (activeMarker && overlayCard.classList.contains('is-visible')) {\n\t\t\t\t\t\trequestAnimationFrame(function() {\n\t\t\t\t\t\t\tpositionOverlay(activeMarker.getPosition());\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tgoogle.maps.event.addListenerOnce(map, 'idle', function() {\n\t\t\t\t\tif (autoFit && locations.length > 1) {\n\t\t\t\t\t\tmap.fitBounds(bounds);\n\t\t\t\t\t\tgoogle.maps.event.addListenerOnce(map, 'bounds_changed', function() {\n\t\t\t\t\t\t\tif (map.getZoom() > 10) map.setZoom(10);\n\t\t\t\t\t\t});\n\t\t\t\t\t} else if (locations.length === 1) {\n\t\t\t\t\t\tmap.setCenter({ lat: locations[0].lat, lng: locations[0].lng });\n\t\t\t\t\t\tmap.setZoom(zoom);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar avgLat = 0, avgLng = 0;\n\t\t\t\t\t\tlocations.forEach(function(l) {\n\t\t\t\t\t\t\tavgLat += l.lat;\n\t\t\t\t\t\t\tavgLng += l.lng;\n\t\t\t\t\t\t});\n\t\t\t\t\t\tmap.setCenter({ lat: avgLat \/ locations.length, lng: avgLng \/ locations.length });\n\t\t\t\t\t\tmap.setZoom(zoom);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\twindow.addEventListener('resize', function() {\n\t\t\t\t\tif (activeMarker && overlayCard.classList.contains('is-visible')) {\n\t\t\t\t\t\tpositionOverlay(activeMarker.getPosition());\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\twaitFor(init);\n\n\t\t\tif (typeof elementorFrontend !== 'undefined') {\n\t\t\t\telementorFrontend.hooks.addAction(\n\t\t\t\t\t'frontend\/element_ready\/multi_google_maps.default',\n\t\t\t\t\tfunction(){ waitFor(init); }\n\t\t\t\t);\n\t\t\t}\n\t\t})();\n\t\t<\/script>\n\n\t\t<style>\n\t\t#multi-map-4bb144ff {\n\t\t\twidth: 100%;\n\t\t\theight: 465px;\n\t\t\tbackground-color: #f5f5f5;\n\t\t}\n\n\t\t#multi-map-4bb144ff iframe {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t}\n\n\t\t.multi-google-maps-wrapper {\n\t\t\tposition: relative;\n\t\t}\n\n\t\t.mt-map-overlay {\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tz-index: 30;\n\t\t\twidth: 280px;\n\t\t\tmax-width: calc(100% - 24px);\n\t\t\topacity: 0;\n\t\t\tpointer-events: none;\n\t\t\ttransform: translateY(8px);\n\t\t\ttransition: opacity .18s ease, transform .18s ease;\n\t\t}\n\n\t\t.mt-map-overlay.is-visible {\n\t\t\topacity: 1;\n\t\t\tpointer-events: auto;\n\t\t\ttransform: translateY(0);\n\t\t}\n\n\t\t.mt-map-overlay-inner {\n\t\t\tposition: relative;\n\t\t}\n\n\t\t.mt-map-card {\n\t\t\tposition: relative;\n\t\t\tbackground: none;\n\t\t\tbackdrop-filter: blur(10px);\n\t\t\t-webkit-backdrop-filter: blur(10px);\n\t\t\tborder-radius: 14px;\n\t\t\tpadding: 12px 14px;\n\t\t\tbox-shadow: 0 14px 34px rgba(0,0,0,0.18);\n\t\t\tborder: 1px solid rgba(255,255,255,0.55);\n\t\t\tline-height: 1.3;\n\t\t}\n\n\n\n\t\t.mt-map-overlay.mt-flip-below .mt-map-card::after {\n\t\t\tbottom: auto;\n\t\t\ttop: -8px;\n\t\t\ttransform: translateX(-50%) rotate(225deg);\n\t\t}\n\n\t\t.mt-map-title {\n\t\t\tmargin: 0 0 4px;\n\t\t\tfont-size: 15px;\n\t\t\tfont-weight: 700;\n\t\t\tcolor: #CF0103;\n\t\t}\n\n\t\t.mt-map-address {\n\t\t\tmargin: 0 0 8px;\n\t\t\tfont-size: 12px;\n\t\t\tcolor: #5f6368;\n\t\t}\n\n\t\t.mt-map-actions {\n\t\t\tdisplay: flex;\n\t\t\tgap: 6px;\n\t\t\tmargin-top: 8px;\n\t\t}\n\n\t\t.mt-map-btn.primary {\n    background: rgb(207 0 3);\n    color: #ffffff;\n}\n\n.mt-map-btn.primary:hover {\n    transform: translateY(-1px);\n    background: #ffffff;\n    box-shadow: none;\n    color: rgb(207 0 3);\n}\n\n.mt-map-btn {\n\tflex: 1;\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\tmin-height: 36px;\n\tpadding: 8px 10px;\n\tborder-radius: 8px;\n\tfont-size: 12px;\n\tfont-weight: 600;\n\ttext-decoration: none;\n\n\tbackground: #eef0f3;\n\tcolor: #111;\n\n\t\/* reset any weird default shadows *\/\n\tbox-shadow: none;\n\n\t\/* smoother, more premium feel *\/\n\ttransition: all .2s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.mt-map-btn:hover {\n\ttransform: translateY(-1px);\n\tbackground: #ffffff;\n\tbox-shadow: none;\n}\n\n\n.mt-map-btn {\n\tbackground: rgba(255,255,255,0.6);\n\tbackdrop-filter: blur(6px);\n\tborder: 1px solid rgba(255,255,255,0.4);\n}\n\n\t\t.mt-map-overlay-close {\n\t\t\tposition: absolute;\n\t\t\ttop: -10px;\n\t\t\tright: -10px;\n\t\t\twidth: 28px;\n\t\t\theight: 28px;\n\t\t\tborder: 0;\n\t\t\tborder-radius: 999px;\n\t\t\tbackground: #111;\n\t\t\tcolor: #fff;\n\t\t\tfont-size: 18px;\n\t\t\tline-height: 1;\n\t\t\tcursor: pointer;\n\t\t\tz-index: 2;\n\t\t\tbox-shadow: 0 8px 20px rgba(0,0,0,0.18);\n\t\t}\n\n\t\t.mt-map-overlay-close:hover {\n\t\t\ttransform: scale(1.04);\n\t\t}\n\n\t\t@media (max-width: 767px) {\n\t\t\t.mt-map-overlay {\n\t\t\t\twidth: min(280px, calc(100% - 20px));\n\t\t\t}\n\n\t\t\t.mt-map-card {\n\t\t\t\tpadding: 11px 12px;\n\t\t\t\tborder-radius: 12px;\n\t\t\t}\n\n\t\t\t.mt-map-title {\n\t\t\t\tfont-size: 14px;\n\t\t\t}\n\n\t\t\t.mt-map-address {\n\t\t\t\tfont-size: 11px;\n\t\t\t}\n\n\t\t\t.mt-map-btn {\n\t\t\t\tfont-size: 11px;\n\t\t\t\tmin-height: 34px;\n\t\t\t\tpadding: 7px 9px;\n\t\t\t}\n\t\t}\n\t\t<\/style>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Buenas tardes \/ Dashboard del Estudiante \u00bfQu\u00e9 necesitas hoy? Busca un documento o servicio\u2026 \u2318K Buscar\u2192 \u266a ESEN &#8211;:&#8211;:&#8211; AST Contin\u00faa donde quedaste Controles Todo se opera desde el teclado 1\u20138\u2318K\u21b5ESC Ver instrucciones MECH-TECH COLLEGEESC1234567890&#8211;=\u232bTABQWERTYUIOP[]CAPSASDFGHJKL\u00d1\u00b4\u21b5\u21e7ZXCVBNM,.\/\u21e7\u2191CTRLALT\u2318ALTFN\u2190\u2193\u2192ESC \u00b7 CERRAR1\u20138 \u00b7 ACCESOSCTRL\/\u2318+K \u00f3 \/ \u00b7 BUSCAR\u21b5 \u00b7 ABRIR\u2191\u2193 \u00b7 NAVEGAR Sin men\u00fas que abrir: los n\u00fameros disparan tus [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"class_list":["post-11787","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/mechtech.vinte.sh\/pr\/wp-json\/wp\/v2\/pages\/11787","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mechtech.vinte.sh\/pr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mechtech.vinte.sh\/pr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mechtech.vinte.sh\/pr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mechtech.vinte.sh\/pr\/wp-json\/wp\/v2\/comments?post=11787"}],"version-history":[{"count":55,"href":"https:\/\/mechtech.vinte.sh\/pr\/wp-json\/wp\/v2\/pages\/11787\/revisions"}],"predecessor-version":[{"id":11911,"href":"https:\/\/mechtech.vinte.sh\/pr\/wp-json\/wp\/v2\/pages\/11787\/revisions\/11911"}],"wp:attachment":[{"href":"https:\/\/mechtech.vinte.sh\/pr\/wp-json\/wp\/v2\/media?parent=11787"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}