PageSourceSearch

https://itb.edu.ec/Mensaje

html itb.edu.ec collected 2026-10-01 13:14:02 UTC 118,103 bytes, 1,446 lines download raw bytes

1<!doctype html>
2<html lang="en">
3<head>
4<script  id="debugbar_loader" data-time="1790860439.631317" src="https://itb.edu.ec/?debugbar"></script>
4<script  id="debugbar_dynamic_script"></script>
4<style  id="debugbar_dynamic_style"></style>
4<script class="kint-rich-script">"use strict";(()=>{function m(n){if(!(n instanceof Element))throw new Error("Invalid argument to dedupeElement()");let t=n.ownerDocument,e=E(n);for(let s of t.querySelectorAll(e))n!==s&&s.parentNode.removeChild(s)}function d(n){return n instanceof Element?n.ownerDocument.contains(n):!1}function E(n){if(!(n instanceof Element))throw new Error("Invalid argument to buildClassSelector()");return[n.nodeName,...n.classList].join(".")}function f(n){if(!(n instanceof Element))throw new Error("Invalid argument to selectText()");let t=n.ownerDocument,e=t.getSelection(),s=t.createRange();s.selectNodeContents(n),e.removeAllRanges(),e.addRange(s)}function I(n,t){let e;return function(...s){clearTimeout(e),e=setTimeout(function(){n(...s)},t)}}function x(n){if(!(n instanceof Element))throw new Error("Invalid argument to offsetTop()");return n.offsetTop+(n.offsetParent?x(n.offsetParent):0)}var u=class n{static#e=new Set;static toggleSearchBox(t,e){let s=t.querySelector(".kint-search"),i=t.parentNode;if(s)if(s.classList.toggle("kint-show",e)){if(s.focus(),s.select(),!n.#e.has(s)){let r=i.querySelectorAll("dl").length,o=200;r>1e4&&(o=700),s.addEventListener("keyup",I(n.#t.bind(null,s),o)),n.#e.add(s)}n.#t(s)}else i.classList.remove("kint-search-root")}static#t(t){let e=t.closest(".kint-parent")?.parentNode;if(e)if(t.classList.contains("kint-show")&&t.value.length){let s=e.dataset.lastSearch;if(e.classList.add("kint-search-root"),s!==t.value){e.dataset.lastSearch=t.value,e.classList.remove("kint-search-match");for(let i of e.querySelectorAll(".kint-search-match"))i.classList.remove("kint-search-match");n.#s(e,t.value.toUpperCase())}}else e.classList.remove("kint-search-root")}static#s(t,e){let s=t.cloneNode(!0);for(let c of s.querySelectorAll(".access-path"))c.remove();if(!s.textContent.toUpperCase().includes(e))return;t.classList.add("kint-search-match");let i=t.firstElementChild;for(;i&&i.tagName!=="DT";)i=i.nextElementSibling;if(!i)return;let r=a.getChildContainer(i);if(!r)return;let o,l;for(let c of r.children)c.tagName==="DL"?n.#s(c,e):c.tagName==="UL"&&(c.classList.contains("kint-tabs")?o=c.children:c.classList.contains("kint-tab-contents")&&(l=c.children));if(!(!o||o.length!==l?.length))for(let c=o.length;c--;){let k=!1,F=!1;o[c].textContent.toUpperCase().includes(e)&&(k=!0);let O=l[c].cloneNode(!0);for(let v of O.querySelectorAll(".access-path"))v.remove();if(O.textContent.toUpperCase().includes(e)&&(k=!0,F=!0),k&&o[c].classList.add("kint-search-match"),F)for(let v of l[c].children)v.tagName==="DL"&&n.#s(v,e)}}};var g=class{static sort(t,e){let s=t.dataset.kintTableSort,i=parseInt(s)===e?-1:1,r=t.tBodies[0];[...r.rows].sort(function(o,l){o=o.cells[e].textContent.trim().toLocaleLowerCase(),l=l.cells[e].textContent.trim().toLocaleLowerCase();let c=0;return!isNaN(o)&&!isNaN(l)?(o=parseFloat(o),l=parseFloat(l),c=o-l):isNaN(o)&&!isNaN(l)?c=1:isNaN(l)&&!isNaN(o)?c=-1:c=(""+o).localeCompare(""+l),c*i}).forEach(o=>r.appendChild(o)),i<0?t.dataset.kintTableSort=null:t.dataset.kintTableSort=e}};var a=class n{#e;#t;#s;constructor(t){if(!(t instanceof h))throw new Error("Invalid argument to Rich.constructor()");this.#e=t,this.#e.runOnInit(this.#i.bind(this));let e=new q(this,t);new b(this,t.window,e)}#i(){let t=this.#e.window.document;if(d(this.#t)||(this.#t=t.querySelector("style.kint-rich-style")),this.#t&&m(this.#t),t.querySelector(".kint-rich.kint-file")){this.setupFolder(t);let e=this.#s.querySelector("dd.kint-foldout"),s=Array.from(t.querySelectorAll(".kint-rich.kint-file"));for(let i of s)i.parentNode!==e&&e.appendChild(i);this.#s.classList.add("kint-show")}}addToFolder(t){let e=t.closest(".kint-rich");if(!e)throw new Error("Bad addToFolder");let s=this.#e.window.document;if(this.setupFolder(s),this.folder.contains(t))throw new Error("Bad addToFolder");let i=this.#s.querySelector("dd.kint-foldout"),r=t.closest(".kint-parent, .kint-rich"),o=Array.from(e.querySelectorAll(".kint-folder-trigger"));if(e===r||e.querySelectorAll(".kint-rich > dl").length===1){for(let l of o)l.remove();e.classList.add("kint-file"),i.insertBefore(e,i.firstChild)}else{let l=s.createElement("div");l.classList.add("kint-rich"),l.classList.add("kint-file"),l.appendChild(r.closest(".kint-rich > dl"));let c=e.lastElementChild;c.matches(".kint-rich > footer")&&l.appendChild(c.cloneNode(!0));for(let k of o)k.remove();i.insertBefore(l,i.firstChild)}n.toggle(this.#s.querySelector(".kint-parent"),!0)}setupFolder(t){if(this.#s)d(this.#s)||(this.#s=t.querySelector(".kint-rich.kint-folder"));else{let e=t.createElement("template");e.innerHTML='<div class="kint-rich kint-folder"><dl><dt class="kint-parent"><nav></nav>Kint</dt><dd class="kint-foldout"></dd></dl></div>',this.#s=e.content.firstChild,t.body.appendChild(this.#s)}}get folder(){return d(this.#s)||(this.#s=this.#e.window.document.querySelector(".kint-rich.kint-folder")),this.#s&&m(this.#s),this.#s}isFolderOpen(){let t=this.#s?.querySelector("dd.kint-foldout");if(t)return t.previousSibling.classList.contains("kint-show")}static getChildContainer(t){let e=t.nextElementSibling;for(;e&&!e.matches("dd");
4)e=e.nextElementSibling;return e}static toggle(t,e){let s=n.getChildContainer(t);s&&(e=t.classList.toggle("kint-show",e),n.#n(s,e))}static switchTab(t){t.parentNode.getElementsByClassName("kint-active-tab")[0].classList.remove("kint-active-tab"),t.classList.add("kint-active-tab");let e=t,s=0;for(;e=e.previousElementSibling;)s++;let i=t.parentNode.nextSibling.children;for(let r=i.length;r--;)r===s?(i[r].classList.add("kint-show"),n.#n(i[r],!0)):i[r].classList.remove("kint-show")}static toggleChildren(t,e){let s=n.getChildContainer(t);if(!s)return;e===void 0&&(e=t.classList.contains("kint-show"));let i=Array.from(s.getElementsByClassName("kint-parent"));for(let r of i)r.classList.toggle("kint-show",e)}static toggleAccessPath(t,e){let s=t.querySelector(".access-path");s?.classList.toggle("kint-show",e)&&f(s)}static#n(t,e){if(t.children.length===2&&t.lastElementChild.matches("ul.kint-tab-contents"))for(let s of t.lastElementChild.children)s.matches("li.kint-show")&&(t=s);if(t.children.length===1&&t.firstElementChild.matches("dl")){let s=t.firstElementChild.firstElementChild;s?.classList?.contains("kint-parent")&&n.toggle(s,e)}}},b=class{#e;#t;#s;#i=null;#n=null;#o=0;constructor(t,e,s){this.#e=t,this.#t=s,this.#s=e,this.#s.addEventListener("click",this.#a.bind(this),!0)}#r(){clearTimeout(this.#i),this.#i=setTimeout(this.#l.bind(this),250)}#l(){clearTimeout(this.#i),this.#i=null,this.#n=null,this.#o=0}#c(){let t=this.#n;if(!t.matches(".kint-parent > nav"))return;let e=t.parentNode;if(this.#o===1)a.toggleChildren(e),this.#t.onTreeChanged(),this.#r(),this.#o=2;else if(this.#o===2){this.#l();let s=e.classList.contains("kint-show"),i=this.#e.folder?.querySelector(".kint-parent"),r=Array.from(this.#s.document.getElementsByClassName("kint-parent"));for(let o of r)o!==i&&o.classList.toggle("kint-show",s);this.#t.onTreeChanged(),this.#t.scrollToFocus()}}#a(t){if(this.#o){this.#c();return}let e=t.target;if(!e.closest(".kint-rich"))return;if(e.tagName==="DFN"&&f(e),e.tagName==="TH"){t.ctrlKey||g.sort(e.closest("table"),e.cellIndex);return}if(e.tagName==="LI"&&e.parentNode.className==="kint-tabs"){if(e.className!=="kint-active-tab"){let i=e.closest("dl")?.querySelector(".kint-parent > nav")??e;a.switchTab(e),this.#t.onTreeChanged(),this.#t.setCursor(i)}return}let s=e.closest("dt");if(e.tagName==="NAV")e.parentNode.tagName==="FOOTER"?(this.#t.setCursor(e),e.parentNode.classList.toggle("kint-show")):s?.classList.contains("kint-parent")&&(a.toggle(s),this.#t.onTreeChanged(),this.#t.setCursor(e),this.#r(),this.#o=1,this.#n=e);else if(e.classList.contains("kint-access-path-trigger"))s&&a.toggleAccessPath(s);else if(e.classList.contains("kint-search-trigger"))s?.matches(".kint-rich > dl > dt.kint-parent")&&u.toggleSearchBox(s);else if(e.classList.contains("kint-folder-trigger")){if(s?.matches(".kint-rich > dl > dt.kint-parent"))this.#e.addToFolder(e),this.#t.onTreeChanged(),this.#t.setCursor(s.querySelector("nav")),this.#t.scrollToFocus();else if(e.parentNode.tagName==="FOOTER"){let i=e.closest(".kint-rich").querySelector(".kint-parent > nav, .kint-rich > footer > nav");this.#e.addToFolder(e),this.#t.onTreeChanged(),this.#t.setCursor(i),this.#t.scrollToFocus()}}else e.classList.contains("kint-search")||(e.tagName==="PRE"&&t.detail===3?f(e):e.closest(".kint-source")&&t.detail===3?f(e.closest(".kint-source")):e.classList.contains("access-path")?f(e):e.tagName!=="A"&&s?.classList.contains("kint-parent")&&(a.toggle(s),this.#t.onTreeChanged(),this.#t.setCursor(s.querySelector("nav"))))}},j=65,G=68,A=70,S=72,K=74,D=75,p=76,V=83,P=9,T=13,B=27,L=32,N=37,R=38,C=39,H=40,M=".kint-rich .kint-parent > nav, .kint-rich > footer > nav, .kint-rich .kint-tabs > li:not(.kint-active-tab)",q=class{#e=[];#t=0;#s=!1;#i;#n;constructor(t,e){this.#i=t,this.#n=e.window,this.#n.addEventListener("keydown",this.#c.bind(this),!0),e.runOnInit(this.onTreeChanged.bind(this))}scrollToFocus(){let t=this.#e[this.#t];if(!t)return;let e=this.#i.folder;if(t===e?.querySelector(".kint-parent > nav"))return;let s=x(t);if(this.#i.isFolderOpen()){let i=e.querySelector("dd.kint-foldout");i.scrollTo(0,s-i.clientHeight/2)}else this.#n.scrollTo(0,s-this.#n.innerHeight/2)}onTreeChanged(){let t=this.#e[this.#t];this.#e=[];let e=this.#i.folder,s=e?.querySelector(".kint-parent > nav"),i=this.#n.document;this.#i.isFolderOpen()&&(i=e,this.#e.push(s));let r=Array.from(i.querySelectorAll(M));for(let o of r)o.offsetParent!==null&&o!==s&&this.#e.push(o);if(s&&!this.#i.isFolderOpen()&&this.#e.push(s),this.#e.length===0){this.#s=!1,this.#r();return}t&&this.#e.indexOf(t)!==-1?this.#t=this.#e.indexOf(t):this.#r()}setCursor(t){if(this.#i.isFolderOpen()&&!this.#i.folder.contains(t)||!t.matches(M))return!1;let e=this.#e.indexOf(t);if(e===-1&&(this.onTreeChanged(),e=this.#e.indexOf(t)),e!==-1){if(e!==this.#t)return this.#t=e,this.#r(),!0;this.#e[e]?.classList.remove("kint-weak-focus")}else console.error("setCursor failed to find target in list",t),console.info("Please report this as a bug in Kint at https://github.com/kint-php/kint");return!1}#o(t){if(this.#e.length===0)return this.#t=0,null;for(this.#t+=t;this.#t<0;)this.#t+=this.#e.length;for(;this.#t>=this.#e.length;)this.#t-=this.#e.length;return this.#r(),this.#t}#r(){let t=this.#n.document.querySelector(".kint-focused");t&&(t.classList.remove("kint-focused"),t.classList.remove("kint-weak-focus")),this.#s&&this.#e[this.#t]?.classList.add("kint-focused")}#l(t){let e=t.closest(".kint-rich .kint-parent ~ dd")?.parentNode.querySelector(".kint-parent > nav");e&&(this.setCursor(e),this.scrollToFocus())}#c(t){if(this.#s&&t.keyCode===B&&t.target.matches(".kint-search")){t.target.blur(),this.#r();return}if(t.target!==this.#n.document.body||t.altKey||t.ctrlKey)return;if(t.keyCode===G){if(this.#s)this.#s=!1;else{if(this.#s=!0,this.onTreeChanged(),this.#e.length===0){this.#s=!1;return}this.scrollToFocus()}this.#r(),t.preventDefault();return}else if(t.keyCode===B){this.#s&&(this.#s=!1,this.#r(),t.preventDefault());return}else if(!this.#s)return;t.preventDefault(),d(this.#e[this.#t])||this.onTreeChanged();let e=this.#e[this.#t];if([P,R,D,H,K].includes(t.keyCode)){t.keyCode===P?this.#o(t.shiftKey?-1:1):t.keyCode===R||t.keyCode===D?this.#o(-1):(t.keyCode===H||t.keyCode===K)&&this.#o(1),this.scrollToFocus();return}if(e.tagName==="LI"&&[L,T,C,p,N,S].includes(t.keyCode)){t.keyCode===L||t.keyCode===T?(a.switchTab(e),this.onTreeChanged()):t.keyCode===C||t.keyCode===p?this.#o(1):(t.keyCode===N||t.keyCode===S)&&this.#o(-1),this.scrollToFocus();return}if(e.parentNode.tagName==="FOOTER"&&e.closest(".kint-rich")){if(t.keyCode===L||t.keyCode===T)e.parentNode.classList.toggle("kint-show");else if(t.keyCode===N||t.keyCode===S)if(e.parentNode.classList.contains("kint-show"))e.parentNode.classList.remove("kint-show");else{this.#l(e.closest(".kint-rich"));return}else if(t.keyCode===C||t.keyCode===p)e.parentNode.classList.add("kint-show");else if(t.keyCode===A&&!this.#i.isFolderOpen()&&e.matches(".kint-rich > footer > nav")){let i=e.closest(".kint-rich").querySelector(".kint-parent > nav, .kint-rich > footer > nav");this.#i.addToFolder(e),this.onTreeChanged(),this.setCursor(i),this.scrollToFocus()}return}let s=e.closest(".kint-parent");
4if(s){if(t.keyCode===j){a.toggleAccessPath(s);return}if(t.keyCode===A){!this.#i.isFolderOpen()&&s.matches(".kint-rich:not(.kint-folder) > dl > .kint-parent")&&(this.#i.addToFolder(e),this.onTreeChanged(),this.setCursor(e),this.scrollToFocus());return}if(t.keyCode===V){let i=s.closest(".kint-rich > dl")?.querySelector(".kint-search")?.closest(".kint-parent");if(i){e.classList.add("kint-weak-focus"),u.toggleSearchBox(i,!0);return}}if(t.keyCode===L||t.keyCode===T){a.toggle(s),this.onTreeChanged();return}if([C,p,N,S].includes(t.keyCode)){let i=s.classList.contains("kint-show");if(t.keyCode===C||t.keyCode===p){i&&a.toggleChildren(s,!0),a.toggle(s,!0),this.onTreeChanged();return}else if(i){a.toggleChildren(s,!1),a.toggle(s,!1),this.onTreeChanged();return}else{this.#l(s);return}}}}};var y=class{#e;#t;constructor(t){if(!(t instanceof h))throw new Error("Invalid argument to Plain.constructor()");this.#e=t.window,t.runOnInit(this.#s.bind(this))}#s(){d(this.#t)||(this.#t=this.#e.document.querySelector("style.kint-plain-style")),this.#t&&m(this.#t)}};var w=class{#e;constructor(t){if(!(t instanceof h))throw new Error("Invalid argument to Microtime.constructor()");this.#e=t.window,t.runOnInit(this.#t.bind(this))}#t(){let t={},e=this.#e.document.querySelectorAll("[data-kint-microtime-group]");for(let s of e){let i=s.querySelector(".kint-microtime-lap");if(!i)continue;let r=s.dataset.kintMicrotimeGroup,o=parseFloat(i.textContent),l=parseFloat(s.querySelector(".kint-microtime-avg").textContent);t[r]??={min:o,max:o,avg:l},t[r].min>o&&(t[r].min=o),t[r].max<o&&(t[r].max=o),t[r].avg=l}for(let s of e){let i=s.querySelector(".kint-microtime-lap");if(!i)continue;let r=parseFloat(i.textContent),o=t[s.dataset.kintMicrotimeGroup];if(s.querySelector(".kint-microtime-avg").textContent=o.avg,!(r===o.min&&r===o.max))if(s.classList.add("kint-microtime-js"),r>o.avg){let l=(r-o.avg)/(o.max-o.avg);i.style.background="hsl("+(40-40*l)+", 100%, 65%)"}else{let l=0;o.avg!==o.min&&(l=(o.avg-r)/(o.avg-o.min)),i.style.background="hsl("+(40+80*l)+", 100%, 65%)"}}}};var U=Symbol(),h=class n{static#e=null;#t;#s=[];#i=new Set;static init(t){return n.#e??=new n(t,U),n.#e.#n(),n.#e.runOnLoad(n.#r),n.#e}get window(){return this.#t}constructor(t,e){if(U!==e)throw new Error("Kint constructor is private. Use Kint.init()");if(!(t instanceof Window))throw new Error("Invalid argument to Kint.init()");this.#t=t,this.runOnInit(this.#o.bind(this)),new y(this),new a(this),new w(this)}runOnLoad(t){if(this.#t.document.readyState==="complete")try{t()}catch{}else this.#t.addEventListener("load",t)}runOnInit(t){this.#s.push(t)}#n(){this.#t.document.currentScript&&(this.#i.add(E(window.document.currentScript)),window.document.currentScript.remove())}#o(){for(let t of this.#i.keys())for(let e of this.#t.document.querySelectorAll(t))e.remove()}static#r(){for(let t of n.#e.#s)t()}};window.Kint||(window.Kint=h);window.Kint.init(window);})();
5</script>
5<style class="kint-rich-style">.kint-rich{--spacing: 4px;--nav-size: 15px;--backdrop-color: rgba(255, 255, 255, 0.9);--main-background: #e0eaef;--secondary-background: #c1d4df;--text-color: #1d1e1e;--variable-name-color: #1d1e1e;--variable-type-color: #0092db;--variable-type-color-hover: #5cb730;--border-color: #b6cedb;--border-color-hover: #0092db;--border: 1px solid var(--border-color);--foldout-max-size: calc(100vh - 100px);--foldout-zindex: 999999;--caret-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 150'><g stroke-width='2' fill='%23FFF'><path d='M1 1h28v28H1zm5 14h18m-9 9V6M1 61h28v28H1zm5 14h18' stroke='%23379'/><path d='M1 31h28v28H1zm5 14h18m-9 9V36M1 91h28v28H1zm5 14h18' stroke='%235A3'/><path d='M1 121h28v28H1zm5 5l18 18m-18 0l18-18' stroke='%23CCC'/></g></svg>");--ap-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><g stroke='%23000' fill='transparent'><path d='M2 8h3m3 3v3M8 2v3m3 3h3M3 8' stroke-width='2' stroke-linecap='round'/><circle stroke-width='1.5' r='4.5' cx='8' cy='8'/></g></svg>");--folder-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M2 2h4l2 2h6v9H2V2h2' stroke-width='2' stroke='%23000' fill='transparent' stroke-linejoin='round'/></svg>");--search-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><g stroke='%23000' fill='transparent'><path d='M2 14l3-3' stroke-linecap='round' stroke-width='3'/><circle stroke-width='2' r='5' cx='9' cy='7'/></g></svg>");font-size:13px;overflow-x:auto;white-space:nowrap;background:var(--backdrop-color);direction:ltr;contain:content}.kint-rich.kint-folder{position:fixed;bottom:0;left:0;right:0;z-index:var(--foldout-zindex);width:100%;margin:0;display:block}.kint-rich.kint-folder dd.kint-foldout{max-height:var(--foldout-max-size);padding-right:calc(var(--spacing)*2);overflow-y:scroll;display:none}.kint-rich.kint-folder dd.kint-foldout.kint-show{display:block}.kint-rich::selection{background:var(--border-color-hover);color:var(--text-color)}.kint-rich .kint-focused{box-shadow:0 0 3px 3px var(--variable-type-color-hover)}.kint-rich .kint-focused.kint-weak-focus{box-shadow:0 0 3px 1px color-mix(in srgb, var(--variable-type-color-hover) 50%, transparent)}.kint-rich,.kint-rich::before,.kint-rich::after,.kint-rich *,.kint-rich *::before,.kint-rich *::after{box-sizing:border-box;border-radius:0;color:var(--text-color);float:none !important;font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;line-height:15px;margin:0;padding:0;text-align:left}.kint-rich{margin:calc(var(--spacing)*2) 0}.kint-rich dt,.kint-rich dl{width:auto}.kint-rich dt,.kint-rich div.access-path{background:var(--main-background);border:var(--border);color:var(--text-color);display:block;font-weight:bold;list-style:none outside none;overflow:auto;padding:var(--spacing)}.kint-rich dt:hover,.kint-rich div.access-path:hover{border-color:var(--border-color-hover)}.kint-rich>dl dl{padding:0 0 0 calc(var(--spacing)*3)}.kint-rich dt.kint-parent>nav,.kint-rich>footer>nav{background:var(--caret-image) no-repeat scroll 0 0/var(--nav-size) 75px rgba(0,0,0,0);cursor:pointer;display:inline-block;height:var(--nav-size);width:var(--nav-size);margin-right:3px;vertical-align:middle}.kint-rich dt.kint-parent:hover>nav,.kint-rich>footer>nav:hover{background-position:0 25%}.kint-rich dt.kint-parent.kint-show>nav,.kint-rich>footer.kint-show>nav{background-position:0 50%}.kint-rich dt.kint-parent.kint-show:hover>nav,.kint-rich>footer.kint-show>nav:hover{background-position:0 75%}.kint-rich dt.kint-parent.kint-locked>nav{background-position:0 100%}.kint-rich dt.kint-parent+dd{display:none;border-left:1px dashed var(--border-color);contain:strict}.kint-rich dt.kint-parent.kint-show+dd{display:block;contain:content}.kint-rich var,.kint-rich var a{color:var(--variable-type-color);font-style:normal}.kint-rich dt:hover var,.kint-rich dt:hover var a{color:var(--variable-type-color-hover)}.kint-rich dfn{font-style:normal;font-family:monospace;color:var(--variable-name-color)}.kint-rich pre{color:var(--text-color);margin:0 0 0 calc(var(--spacing)*3);padding:5px;overflow-y:hidden;border-top:0;border:var(--border);background:var(--main-background);
5display:block;word-break:normal}.kint-rich .kint-access-path-trigger,.kint-rich .kint-folder-trigger,.kint-rich .kint-search-trigger{background:color-mix(in srgb, var(--text-color) 80%, transparent);border-radius:3px;padding:2px;height:var(--nav-size);width:var(--nav-size);font-size:var(--nav-size);margin-left:5px;font-weight:bold;text-align:center;line-height:1;float:right !important;cursor:pointer;position:relative;overflow:hidden}.kint-rich .kint-access-path-trigger::before,.kint-rich .kint-folder-trigger::before,.kint-rich .kint-search-trigger::before{display:block;content:"";width:100%;height:100%;background:var(--main-background);mask:center/contain no-repeat alpha}.kint-rich .kint-access-path-trigger:hover,.kint-rich .kint-folder-trigger:hover,.kint-rich .kint-search-trigger:hover{background:var(--main-background)}.kint-rich .kint-access-path-trigger:hover::before,.kint-rich .kint-folder-trigger:hover::before,.kint-rich .kint-search-trigger:hover::before{background:var(--text-color)}.kint-rich .kint-access-path-trigger::before{mask-image:var(--ap-image)}.kint-rich .kint-folder-trigger::before{mask-image:var(--folder-image)}.kint-rich .kint-search-trigger::before{mask-image:var(--search-image)}.kint-rich input.kint-search{display:none;border:var(--border);border-top-width:0;border-bottom-width:0;padding:var(--spacing);float:right !important;margin:calc(var(--spacing)*-1) 0;color:var(--variable-name-color);background:var(--secondary-background);height:calc(var(--nav-size) + var(--spacing)*2);width:calc(var(--nav-size)*10);position:relative;z-index:100}.kint-rich input.kint-search.kint-show{display:block}.kint-rich .kint-search-root ul.kint-tabs>li:not(.kint-search-match){background:var(--secondary-background);filter:saturate(0);opacity:.5}.kint-rich .kint-search-root dl:not(.kint-search-match){opacity:.5}.kint-rich .kint-search-root dl:not(.kint-search-match)>dt{background:var(--main-background);filter:saturate(0)}.kint-rich .kint-search-root dl:not(.kint-search-match) dl,.kint-rich .kint-search-root dl:not(.kint-search-match) ul.kint-tabs>li:not(.kint-search-match){opacity:1}.kint-rich div.access-path{background:var(--secondary-background);display:none;margin-top:5px;padding:4px;white-space:pre}.kint-rich div.access-path.kint-show{display:block}.kint-rich footer{padding:0 3px 3px;font-size:9px;background:rgba(0,0,0,0)}.kint-rich footer>.kint-folder-trigger{background:rgba(0,0,0,0)}.kint-rich footer>.kint-folder-trigger::before{background:var(--text-color)}.kint-rich footer nav{height:10px;width:10px;background-size:10px 50px}.kint-rich footer>ol{display:none;margin-left:32px}.kint-rich footer.kint-show>ol{display:block}.kint-rich a{color:var(--text-color);text-shadow:none;text-decoration:underline}.kint-rich a:hover{color:var(--variable-name-color);border-bottom:1px dotted var(--variable-name-color)}.kint-rich ul{list-style:none;padding-left:calc(var(--spacing)*3)}.kint-rich ul:not(.kint-tabs) li{border-left:1px dashed var(--border-color)}.kint-rich ul:not(.kint-tabs) li>dl{border-left:none}.kint-rich ul.kint-tabs{margin:0 0 0 calc(var(--spacing)*3);padding-left:0;background:var(--main-background);border:var(--border);border-top:0}.kint-rich ul.kint-tabs>li{background:var(--secondary-background);border:var(--border);cursor:pointer;display:inline-block;height:calc(var(--spacing)*6);margin:calc(var(--spacing)/2);padding:0 calc(2px + var(--spacing)*2.5);vertical-align:top}.kint-rich ul.kint-tabs>li:hover,.kint-rich ul.kint-tabs>li.kint-active-tab:hover{border-color:var(--border-color-hover);color:var(--variable-type-color-hover)}.kint-rich ul.kint-tabs>li.kint-active-tab{background:var(--main-background);border-top:0;margin-top:-1px;height:27px;line-height:24px}.kint-rich ul.kint-tabs>li:not(.kint-active-tab){line-height:calc(var(--spacing)*5)}.kint-rich ul.kint-tabs li+li{margin-left:0}.kint-rich ul.kint-tab-contents>li{display:none;contain:strict}.kint-rich ul.kint-tab-contents>li.kint-show{display:block;contain:content}.kint-rich dt:hover+dd>ul>li.kint-active-tab{border-color:var(--border-color-hover);color:var(--variable-type-color-hover)}.kint-rich dt>.kint-color-preview{width:var(--nav-size);height:var(--nav-size);display:inline-block;vertical-align:middle;margin-left:10px;border:var(--border);background-color:#ccc;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="%23FFF" d="M0 0h1v2h1V1H0z"/></svg>');background-size:min(20px,100%)}.kint-rich dt>.kint-color-preview:hover{border-color:var(--border-color-hover)}.kint-rich dt>.kint-color-preview>div{width:100%;height:100%}.kint-rich table{border-collapse:collapse;empty-cells:show;border-spacing:0}.kint-rich table *{font-size:12px}.kint-rich table dt{background:none;padding:calc(var(--spacing)/2)}.kint-rich table dt .kint-parent{min-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kint-rich table td,.kint-rich table th{border:var(--border);padding:calc(var(--spacing)/2);vertical-align:center}.kint-rich table th{cursor:alias}.kint-rich table td:first-child,.kint-rich table th{font-weight:bold;background:var(--secondary-background);color:var(--variable-name-color)}.kint-rich table td{background:var(--main-background);white-space:pre}.kint-rich table td>dl{padding:0}.kint-rich table pre{border-top:0;border-right:0}.kint-rich table thead th:first-child{background:none;border:0}.kint-rich table tr:hover>td{box-shadow:0 0 1px 0 var(--border-color-hover) inset}.kint-rich table tr:hover var{color:var(--variable-type-color-hover)}.kint-rich table ul.kint-tabs li.kint-active-tab{height:20px;line-height:17px}.kint-rich pre.kint-source{margin-left:-1px}.kint-rich pre.kint-source[data-kint-filename]:before{display:block;content:attr(data-kint-filename);margin-bottom:var(--spacing);padding-bottom:var(--spacing);border-bottom:1px solid var(--secondary-background)}.kint-rich pre.kint-source>div:before{display:inline-block;content:counter(kint-l);counter-increment:kint-l;border-right:1px solid var(--border-color-hover);padding-right:calc(var(--spacing)*2);margin-right:calc(var(--spacing)*2)}.kint-rich pre.kint-source>div.kint-highlight{background:var(--secondary-background)}.kint-rich .kint-microtime-js .kint-microtime-lap{text-shadow:-1px 0 var(--border-color-hover),0 1px var(--border-color-hover),1px 0 var(--border-color-hover),0 -1px var(--border-color-hover);color:var(--main-background);font-weight:bold}input.kint-note-input{width:100%}.kint-rich{--main-background: #f8f8f8;--secondary-background: #f8f8f8;--variable-type-color: #06f;--variable-type-color-hover: #f00;--border-color: #d7d7d7;--border-color-hover: #aaa;--alternative-background: #fff;--highlight-color: #cfc;--caret-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 150'><path d='M6 7h18l-9 15zm0 30h18l-9 15zm0 45h18l-9-15zm0 30h18l-9-15zm0 12l18 18m-18 0l18-18' fill='%23555'/><path d='M6 126l18 18m-18 0l18-18' stroke-width='2' stroke='%23555'/></svg>")}.kint-rich .kint-focused{box-shadow:0 0 3px 2px var(--variable-type-color-hover)}.kint-rich dt{font-weight:normal}.kint-rich dt.kint-parent{margin-top:4px}.kint-rich dl dl{margin-top:4px;padding-left:25px;border-left:none}.kint-rich>dl>dt{background:var(--secondary-background)}.kint-rich ul{margin:0;padding-left:0}.kint-rich ul:not(.kint-tabs)>li{border-left:0}.kint-rich ul.kint-tabs{background:var(--secondary-background);border:var(--border);border-width:0 1px 1px 1px;padding:4px 0 0 12px;margin-left:-1px;margin-top:-1px}.kint-rich ul.kint-tabs li,.kint-rich ul.kint-tabs li+li{margin:0 0 0 4px}.kint-rich ul.kint-tabs li{border-bottom-width:0;height:calc(var(--spacing)*6 + 1px)}.kint-rich ul.kint-tabs li:first-child{margin-left:0}.kint-rich ul.kint-tabs li.kint-active-tab{border-top:var(--border);background:var(--alternative-background);font-weight:bold;padding-top:0;border-bottom:1px solid var(--alternative-background) !important;margin-bottom:-1px}.kint-rich ul.kint-tabs li.kint-active-tab:hover{border-bottom:1px solid var(--alternative-background)}.kint-rich ul>li>pre{border:var(--border)}.kint-rich dt:hover+dd>ul{border-color:var(--border-color-hover)}.kint-rich pre{background:var(--alternative-background);margin-top:4px;margin-left:25px}.kint-rich .kint-source{margin-left:-1px}.kint-rich .kint-source .kint-highlight{background:var(--highlight-color)}.kint-rich .kint-parent.kint-show>.kint-search{border-bottom-width:1px}.kint-rich table td{background:var(--alternative-background)}.kint-rich table td>dl{padding:0;margin:0}.kint-rich table td>dl>dt.kint-parent{margin:0}.kint-rich table td:first-child,.kint-rich table td,.kint-rich table th{padding:2px 4px}.kint-rich table dd,.kint-rich table dt{background:var(--alternative-background)}.kint-rich table tr:hover>td{box-shadow:none;background:var(--highlight-color)}
6</style>
7
8    <meta charset="utf-8">
9    <meta name="viewport" content="width=device-width, initial-scale=1">
10    <meta name="description" content="Instituto Superior Tecnológico Bolivariano de Tecnología">
11    <meta name="author" content="ITB - TIC">
12    <meta name="generator" content="ITB - TIC">
13    <title>ITB - Mensaje del Rector</title>
14    <link rel="icon" href="https://itb.edu.ec/statics/imagenes/plantilla/favicon.ico">
15    <link href="https://itb.edu.ec/statics/vendor/bootstrap523/css/bootstrap.min.css" rel="stylesheet">
16    <link href="https://itb.edu.ec/statics/vendor/animatecss/animate.min.css" rel="stylesheet">
17    <link href="https://itb.edu.ec/statics/fonts/fontawesome672/css/all.min.css" rel="stylesheet">
18    <link href="https://itb.edu.ec/statics/css/estilo.css" rel="stylesheet">
19    </head>
20<body id="body" style="overflow:hidden;">
21<div id="content-preloader">
22    <img src="https://itb.edu.ec/statics/imagenes/main/nadalog.jpg" width="300" height="110" alt="Cargando..."/>
23    <div id="preloader"></div>
24</div>
25    <div id="overlay"></div>
26    <div id="overlaycolor"></div>
27<div class="tpl-snow"></div>
28<script>const _root='https://itb.edu.ec/';const prelodmask = '1';</script>
28
29<header>
30    <nav class="navbar navbar-dark bg-naranja fixed-top" id="navsocial" aria-label="Bar Link">
31        <div class="container justify-content-end">
32            <ul class="social-icons-ql">
33                <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.1s;">
34                    <a href="https://www.tiktok.com/@itb_ec?lang=es" target="_blank"><i class="fa-brands fa-tiktok"></i></a>
35                </li>
36                <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.2s;">
37                    <a href="https://www.instagram.com/itb_ec/" target="_blank"><i class="fa-brands fa-instagram"></i></a>
38                </li>
39                <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.3s;">
40                    <a href="https://www.facebook.com/itb.edu.ec" target="_blank"><i class="fa-brands fa-facebook-f"></i></a>
41                </li>
42                <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.4s;">
43                    <a href="https://x.com/ITBolivariano" target="_blank"><i class="fa-brands fa-x-twitter"></i></a>
44                </li>
45                <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.5s;">
46                    <a href="https://www.youtube.com/c/itbinstitutosuperioruniversitariobolivariano" target="_blank"><i class="fa-brands fa-youtube"></i></a>
47                </li>
48                <li class="wow animate__animated animate__fadeInDown" style="animation-delay:0.6s;">
49                    <a href="https://www.linkedin.com/company/itb-ec/?originalSubdomain=ec" target="_blank"><i class="fa-brands fa-linkedin-in"></i></a>
50                </li>
51            </ul>
52            <a href="https://eva.itb.edu.ec/" class="btn btn-sm btn-naranja rounded rounded-pill mb-3 mx-2 wow animate__animated animate__fadeInRight"> Portal estudiantil </a>
53        </div>
54    </nav>
55    <nav class="navbar navbar-expand-lg fixed-top bg-white py-2 py-lg-0" id="navmenu">
56        <div class="container d-flex justify-content-sm-between justify-content-lg-center px-3 px-lg-0 py-0 py-lg-1 py-xl-0">
57            <a class="navbar-brand animate__animated animate__fadeInLeft" style="animation-delay:0.2s;" href="https://itb.edu.ec/">
58                <img src="https://itb.edu.ec/statics/imagenes/plantilla/logo-itb.png" alt="Logo Itb">
59            </a>
60            <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapseMenu" aria-controls="navbarCollapseMenu" aria-expanded="false" aria-label="Toggle navigation">
61                <span class="navbar-toggler-icon"></span>
62            </button>
63            <div class="collapse d-lg-flex justify-content-start justify-content-lg-end align-items-center navbar-collapse animate__animated animate__fadeInRight" style="animation-delay:0.3s;" id="navbarCollapseMenu" data-isanmate="false">
64                <ul class="navbar-nav">
65                    <li class="nav-item dropdown position-static align-content-center">
66                        <a class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 active" href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" aria-expanded="false">
67                            Instituto
68                        </a>
69                        <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu">
70                            <div class="container-fluid">
71                                <div class="row py-lg-4 px-lg-4">
72                                    <div class="d-none d-lg-block col-lg-5">
73                                        <h1>Acerca de ITB</h1>
74                                        <p class="text-justify">
75                                            En ITB, nuestra principal prioridad es brindarle una educación de alta calidad en un entorno propicio para su crecimiento
76                                            como estudiante y futuro profesional. Ofrece a cada estudiante una oportunidad &uacute;nica de convertirse en un pensador original que se enfrenta a los desafíos del mundo. Más all&aacute; de los fundamentos, le brindamos las herramientas
77                                            para expandir su conocimiento.</p>
78                                        <div class="d-grid">
79                                            <a href="https://itb.edu.ec/Antecedentes" class="btn btn-outline-azul rounded-0 py-3"> OBT&Eacute;N M&Aacute;S INFORMACI&Oacute;N</a>
80                                        </div>
81                                    </div>
82                                    <div class="col-lg-7">
83                                        <div class="row">
84                                            <div class="d-none d-lg-block col-lg-4">
85                                                <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Rendicion">
86                                                    <img src="https://itb.edu.ec/statics/imagenes/plantilla/instituto.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto">
87                                                    <div class="card-body">
88                                                        <h5 class="card-title">DATOS Y CALIFICACIONES DEL ITB</h5>
89                                                        <p class="card-text">
90                                                            Con cifras: nuestra identidad y la posici&oacute;n que ocupamos.
91                                                        </p>
92                                                    </div>
93                                                </div>
94                                            </div>
95                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
96                                                <h6 class="dropdown-header">Instituto</h6>
97                                                <a class="dropdown-item " href="https://itb.edu.ec/Antecedentes">Antecedentes</a>
98                                                <a class="dropdown-item " href="https://itb.edu.ec/Filosofia">Filosof&iacute;a Institucional</a>
99                                                <a class="dropdown-item menuactivo" href="https://itb.edu.ec/Mensaje">Mensaje </a>
100                                                <a class="dropdown-item " href="https://itb.edu.ec/Himno">Himno al ITB</a>
101                                                <a class="dropdown-item " href="https://itb.edu.ec/Baselegal">Base Legal</a>
102                                                <a class="dropdown-item " href="https://itb.edu.ec/Trabaja_con_nosotros">Trabaja con Nosotros</a>
103
104                                                <h6 class="dropdown-header">Estructura</h6>
105                                                <a class="dropdown-item " href="https://itb.edu.ec/Autoridades">Autoridades</a>
106                                                <a class="dropdown-item " href="https://itb.edu.ec/Organigrama">Organigrama</a>
107                                                <a class="dropdown-item " href="https://itb.edu.ec/CoGobierno">Co-Gobierno</a>
108                                            </div>
109                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
110                                                <h6 class="dropdown-header">Transparencia</h6>
111                                                <a class="dropdown-item " href="https://itb.edu.ec/Presupuesto">Presupuesto</a>
112                                                <a class="dropdown-item " href="https://itb.edu.ec/Rendicion">Rendición de Cuentas</a>
113                                                <a class="dropdown-item " href="https://itb.edu.ec/Remuneracion">Remuneración Mensual</a>
114                                                <a class="dropdown-item " href="https://itb.edu.ec/Aranceles">Aranceles</a>
115                                                <a class="dropdown-item " href="https://itb.edu.ec/Balance">Balance General</a>
116                                                <a class="dropdown-item " href="https://itb.edu.ec/Obligaciones">Cumplimiento de Obligaciones</a>
117                                                <a class="dropdown-item " href="https://itb.edu.ec/Planificacion">Planificación</a>
118                                                <a class="dropdown-item " href="https://itb.edu.ec/Auditados">Balances Auditados</a>
119                                                <a class="dropdown-item " href="https://itb.edu.ec/Aseguramiento_calidad">Sistema de Aseguramiento de la Calidad</a>
120                                            </div>
121                                        </div>
122                                    </div>
123                                </div>
124                            </div>
125                        </div>
126                    </li>
127                    <li class="nav-item dropdown position-static align-content-center">
128                        <a href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 " aria-expanded="false">
129                            Vida estudiantil
130                        </a>
131                        <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu">
132                            <div class="container-fluid">
133                                <div class="row py-lg-4 px-lg-4">
134                                    <div class="d-none d-lg-block col-lg-5">
135                                        <h1>Experiencia del Estudiante</h1>
136                                        <p class="text-justify">
137                                            Incluye toda la atención m&eacute;dica del campus en un solo lugar,
138                                            brindando f&aacute;cil acceso para los estudiantes y est&aacute; diseñado
139                                            para ser un entorno colaborativo de alto impacto para apoyar
140                                            el aprendizaje, el bienestar y el &eacute;xito de los estudiantes. </p>
141                                        <div class="d-grid">
142                                            <a class="btn btn-outline-azul rounded-0 py-3" href="https://itb.edu.ec/Bienestar"> OBT&Eacute;N M&Aacute;S INFORMACI&Oacute;N</a>
143                                        </div>
144                                    </div>
145                                    <div class="col-lg-7">
146                                        <div class="row">
147                                            <div class="d-none d-lg-block col-lg-4 ">
148                                                <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Asistencia">
149                                                    <img src="https://itb.edu.ec/statics/imagenes/plantilla/estudiantil.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto">
150                                                    <div class="card-body">
151                                                        <h5 class="card-title">SERVICIO DE
152                                                            ASISTENCIA SOCIAL</h5>
153                                                        <p class="card-text">
154                                                            Brinda apoyo, orientaci&oacute;n y acompa&ntilde;amiento a estudiantes y familias, fomentando el bienestar social y acad&eacute;mico.
155                                                        </p>
156                                                    </div>
157                                                </div>
158                                            </div>
159                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
160                                                <h6 class="dropdown-header">Bienestar estudiantil</h6>
161                                                <a class="dropdown-item " href="https://itb.edu.ec/Bienestar">Qui&eacute;nes Somos</a>
162                                                <a class="dropdown-item " href="https://itb.edu.ec/Informes">Informes</a>
163                                                <a class="dropdown-item " href="https://itb.edu.ec/Actividades">Actividades Realizadas</a>
164                                                <a class="dropdown-item " href="https://itb.edu.ec/Arte_Cultura">Arte y Cultura</a>
165                                                <h6 class="dropdown-header">Servicios y Beneficios</h6>
166                                                <a class="dropdown-item " href="https://itb.edu.ec/Asistencia">Asistencia Social</a>
167                                                <a class="dropdown-item " href="https://itb.edu.ec/Cruzroja">Cuenta en la Cruz Roja Ecuatoriana</a>
168                                                <a class="dropdown-item " href="https://itb.edu.ec/Gym">Gym</a>
169                                            </div>
170                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
171                                                <a class="dropdown-item " href="https://itb.edu.ec/Observatorio">Observatorio Bolivariano</a>
172                                                <a class="dropdown-item " href="https://itb.edu.ec/Orientacion">Orientaci&oacute;n Vocacional y Profesional</a>
173                                                <a class="dropdown-item " href="https://itb.edu.ec/Podologia">Podolog&iacute;a</a>
174                                                <a class="dropdown-item " href="https://itb.edu.ec/Psicologico">Psic&oacute;logo</a>
175                                                <a class="dropdown-item " href="https://itb.edu.ec/Suenos">C.D.I. Sue&ntilde;os Bolivarianos</a>
176                                            </div>
177                                        </div>
178                                    </div>
179                                </div>
180                            </div>
181                        </div>
182                    </li>
183                    <li class="nav-item align-content-center">
184                        <a class="nav-link pt-3 px-lg-2 py-xl-4 py-lg-3 px-xl-3 " href="https://itb.edu.ec/Oferta_academica">Oferta acad&eacute;mica</a>
185                    </li>
186                    <li class="nav-item dropdown position-static align-content-center">
187                        <a class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 " href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" aria-expanded="false">
188                            Vinculaci&oacute;n
189                        </a>
190                        <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu">
191                            <div class="container-fluid">
192                                <div class="row py-lg-4 px-lg-4">
193                                    <div class="d-none d-lg-block col-lg-5">
194                                        <h1>Vinculaci&oacute;n con la Comunidad</h1>
195                                        <p class="text-justify">
196                                            Se esfuerza por eliminar barreras y contribuir a la pr&aacute;ctica
197                                            comunitaria de pertenencia de los estudiantes del ITB; al
198                                            hacerlo, cultivamos comunidades inclusivas y empoderamos
199                                            a los estudiantes para que se afirmen en sus identidades y las
200                                            formas en que se cruzan.</p>
201                                        <div class="d-grid">
202                                            <a class="btn btn-outline-azul rounded-0 py-3" href="https://itb.edu.ec/Vinculacion"> OBT&Eacute;N M&Aacute;S INFORMACI&Oacute;N</a>
203                                        </div>
204                                    </div>
205                                    <div class="col-lg-7">
206                                        <div class="row">
207                                            <div class="d-none d-lg-block col-lg-4">
208                                                <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Centro_atencion">
209                                                    <img src="https://itb.edu.ec/statics/imagenes/plantilla/vinculacion.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto">
210                                                    <div class="card-body">
211                                                        <h5 class="card-title">CENTRO DE
212                                                            ATENCI&Oacute;N M&Eacute;DICA</h5>
213                                                        <p class="card-text">
214                                                            Destinado a brindar servicios de salud, atenci&oacute;n preventiva y orientaci&oacute;n m&eacute;dica integral para la comunidad universitaria.
215                                                        </p>
216                                                    </div>
217                                                </div>
218                                            </div>
219                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
220                                                <h6 class="dropdown-header">Vinculaci&oacute;n con la <br> Comunidad</h6>
221                                                <a class="dropdown-item " href="https://itb.edu.ec/Vinculacion">Qui&eacute;nes Somos</a>
222                                                <a class="dropdown-item " href="https://itb.edu.ec/Centro_atencion">Centro de Atenci&oacute;n M&eacute;dica</a>
223                                                <a class="dropdown-item " href="https://itb.edu.ec/Convenio">Convenios</a>
224                                                <a class="dropdown-item " href="https://itb.edu.ec/Info_vinculacion">Info-V&iacute;nculo</a>
225                                                <h6 class="dropdown-header">Programas</h6>
226                                                <a class="dropdown-item " href="https://itb.edu.ec/Salud_comunidad">Salud para la Comunidad</a>
227                                                <a class="dropdown-item " href="https://itb.edu.ec/Centro_contable">Centro Contable y Tributario</a>
228                                            </div>
229                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
230                                                <h6 class="dropdown-header">Graduados</h6>
231                                                <a class="dropdown-item " href="https://itb.edu.ec/Info_graduado">Inf&oacute;rmate Graduado</a>
232                                                <a class="dropdown-item" href="https://bancodeproblemas.itb.edu.ec/">Banco de Problemas</a>
233
234                                            </div>
235                                        </div>
236                                    </div>
237                                </div>
238                            </div>
239                        </div>
240                    </li>
241                    <li class="nav-item dropdown position-static align-content-center srcmenuhiden">
242                        <a class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 " href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" aria-expanded="false">
243                            Investigaci&oacute;n
244                        </a>
245                        <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu">
246                            <div class="container-fluid">
247                                <div class="row py-lg-4 px-lg-4">
248                                    <div class="d-none d-lg-block col-lg-5">
249                                        <h1>Investigaci&oacute;n</h1>
250                                        <p class="text-justify">
251                                            Fomentar y sistematizar la investigaci&oacute;n multi, inter y
252                                            transdisciplinar que se realiza en ITB por parte de docentes y
253                                            estudiantes, en correspondencia con los dominios
254                                            académicos declarados por la instituci&oacute;n y, que tiene como
255                                            finalidad esencial dar respuesta a los problemas planteados
256                                            por el entorno social de la región y el pa&iacute;s.</p>
257                                        <div class="d-grid">
258                                            <a class="btn btn-outline-azul rounded-0 py-3" href="https://itb.edu.ec/Investigacion"> OBT&Eacute;N M&Aacute;S INFORMACI&Oacute;N</a>
259                                        </div>
260                                    </div>
261                                    <div class="col-lg-7">
262                                        <div class="row">
263                                            <div class="d-none d-lg-block col-lg-4">
264                                                <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Proyecto_investigacion">
265                                                    <img src="https://itb.edu.ec/statics/imagenes/plantilla/investigacion.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto">
266                                                    <div class="card-body">
267                                                        <h5 class="card-title">PROYECTOS DE
268                                                            INVESTIGACI&Oacute;N</h5>
269                                                        <p class="card-text">
270                                                            Destinados a fomentar la generaci&oacute;n de conocimiento, la innovaci&oacute;n y el desarrollo cient&iacute;fico en beneficio de la comunidad.
271                                                        </p>
272                                                    </div>
273                                                </div>
274                                            </div>
275                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
276                                                <h6 class="dropdown-header">Investigaci&oacute;n</h6>
277                                                <a class="dropdown-item " href="https://itb.edu.ec/Investigacion">Qui&eacute;nes Somos</a>
278                                                <a class="dropdown-item " href="https://itb.edu.ec/Modelo_politicas">Modelo y Pol&iacute;ticas de Investigaci&oacute;n</a>
279                                                <a class="dropdown-item " href="https://itb.edu.ec/Convocatoria">Convocatorias</a>
280                                                <a class="dropdown-item " href="https://itb.edu.ec/Proyecto_investigacion">Proyectos de Investigaci&oacute;n</a>
281                                                <a class="dropdown-item " href="https://itb.edu.ec/Info_interes">Noticias y Novedades</a>
282                                                <a class="dropdown-item " href="https://itb.edu.ec/Lineas">L&iacute;neas y Programas de Investigaci&oacute;n</a>
283                                                <a class="dropdown-item " href="https://itb.edu.ec/Conocimiento">Transferencia de Conocimiento y Tecnolog&iacute;as</a>
284                                                <a class="dropdown-item " href="https://itb.edu.ec/Servicios">Servicios Cient&iacute;ficos, T&eacute;cnico y Tecnol&oacute;gicos</a>
285                                            </div>
286                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
287                                                <a class="dropdown-item " href="https://itb.edu.ec/Semilleros">Semilleros de Investigaci&oacute;n e Innovaci&oacute;n</a>
288                                                <h6 class="dropdown-header">Gesti&oacute;n de la Informaci&oacute;n Cient&iacute;fica</h6>
289                                                <a class="dropdown-item " href="https://itb.edu.ec/Biblioteca_tradicional">Biblioteca Tradicional</a>
290                                                <a class="dropdown-item " href="https://itb.edu.ec/Biblioteca_virtual">Biblioteca Virtual</a>
291                                                <a class="dropdown-item " href="https://itb.edu.ec/Divulgacion">Divulgaci&oacute;n Cient&iacute;fica</a>
292                                                <a class="dropdown-item" href="https://identidadbolivariana.itb.edu.ec/" target="_blank">Identidad Bolivariana</a>
293                                                <a class="dropdown-item" href="https://dspace.itb.edu.ec/" target="_blank">Repositorio Digital</a>
294                                            </div>
295                                        </div>
296                                    </div>
297                                </div>
298                            </div>
299                        </div>
300                    </li>
301                    <li class="nav-item dropdown position-static align-content-center srcmenuhiden">
302                        <a class="nav-link dropdown-toggle d-flex align-items-center pt-3 px-lg-2 py-lg-3 py-xl-4 px-xl-3 " href="#" id="megaMenu" role="button" data-bs-toggle="dropdown" aria-expanded="false">
303                            Contacto
304                        </a>
305                        <div class="dropdown-menu no-close w-100" aria-labelledby="megaMenu">
306                            <div class="container-fluid">
307                                <div class="row py-lg-4 px-lg-4">
308                                    <div class="d-none d-lg-block col-lg-5">
309                                        <h1>Admisión y Ayuda</h1>
310                                        <p class="text-justify">
311                                            Nuestras decisiones de admisión se basan en un proceso
312                                            holístico y selectivo, independientemente de las finanzas.
313                                            Tener la oportunidad de cambiar el mundo no debería
314                                            depender de tener el dinero para pagar el instituto. La ayuda
315                                            financiera líder en la industria de ITB garantiza que todos los
316                                            estudiantes de todos los orígenes puedan reunirse, aprender
317                                            juntos y crecer juntos. En pocas palabras: cuando usted se
318                                            compromete con nosotros, nosotros nos comprometemos con
319                                            usted.</p>
320                                        <div class="d-grid">
321                                            <a class="btn btn-outline-azul rounded-0 py-3" href="https://itb.edu.ec/Inscripcion"> OBT&Eacute;N M&Aacute;S INFORMACI&Oacute;N</a>
322                                        </div>
323                                    </div>
324                                    <div class="col-lg-7">
325                                        <div class="row">
326                                            <div class="d-none d-lg-block col-lg-4">
327                                                <div class="card rounded-0 shadow-sm urlclic" data-url="https://itb.edu.ec/Sugerencia">
328                                                    <img src="https://itb.edu.ec/statics/imagenes/plantilla/contacto.webp" class="card-img-top rounded-0" width="200" height="175" alt="Contacto">
329                                                    <div class="card-body">
330                                                        <h5 class="card-title">CONTACTO</h5>
331                                                        <p class="card-text">
332                                                            Ponte en comunicaci&oacute;n con nosotros para consultas, informaci&oacute;n o atenci&oacute;n personalizada.
333                                                        </p>
334                                                    </div>
335                                                </div>
336                                            </div>
337                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
338                                                <h6 class="dropdown-header">Quiero estudiar en ITB</h6>
339                                                <a class="dropdown-item " href="https://itb.edu.ec/Inscripcion">Inscripci&oacute;n</a>
340                                                <h6 class="dropdown-header">Informaci&oacute;n de contacto</h6>
341                                                <a class="dropdown-item " href="https://itb.edu.ec/Directorio">Tel&eacute;fonos</a>
342                                                <a class="dropdown-item " href="https://itb.edu.ec/Directorio/correos">Correos</a>
343                                                <h6 class="dropdown-header">Pol&iacute;ticas</h6>
344                                                <a class="dropdown-item " href="https://itb.edu.ec/Politicas/cookies">Pol&iacute;tica de Cookies</a>
345                                                <a class="dropdown-item " href="https://itb.edu.ec/Politica_proteccion_datos">Pol&iacute;tica de Protecci&oacute;n de Datos Personales</a>
346                                            </div>
347                                            <div class="col-lg-4 px-2 px-lg-3 py-2">
348                                                <h6 class="dropdown-header">Tu opini&oacute;n es importante</h6>
349                                                <a class="dropdown-item " href="https://itb.edu.ec/Sugerencia">Sugerencias</a>
350                                            </div>
351                                        </div>
352                                    </div>
353                                </div>
354                            </div>
355                        </div>
356                    </li>
357                    <li class="nav-item position-static d-none" id="searchcontainer">
358                        <div class="nav-link align-content-center">
359                            <input type="search" class="form-control rounded rounded-pill" id="search" placeholder="Buscar por carrera....">
360                            <div id="suggestions" class="autocomplete-suggestions"></div>
361                        </div>
362                    </li>
363                    <li class="nav-item position-static">
364                        <a class="nav-link py-3 px-lg-2 py-xl-4 px-xl-3">
365                            <i class="fas fa-search text-naranja fs-5 " id="searchicon"></i>
366                            <i class="fas fa-times text-azul fs-3 d-none" id="closesearchicon"></i>
367                        </a>
368                    </li>
369                </ul>
370
371            </div>
372        </div>
373    </nav>
374</header>
375<script>
376    document.getElementById('searchicon').addEventListener('click',function(){
377        document.getElementById('searchcontainer').classList.remove('d-none');
378        document.getElementById('closesearchicon').classList.remove('d-none');
379        document.getElementById('searchicon').classList.add('d-none');
380        document.querySelectorAll('.srcmenuhiden').forEach(element => {
381            element.classList.add('d-none');
382        });
383    });
384    document.getElementById('closesearchicon').addEventListener('click',function(){
385        document.getElementById('searchcontainer').classList.add('d-none');
386        document.getElementById('closesearchicon').classList.add('d-none');
387        document.getElementById('searchicon').classList.remove('d-none');
388        document.getElementById('search').value = '';
389        document.querySelectorAll('.srcmenuhiden').forEach(element => {
390            element.classList.remove('d-none');
391        });
392    });
393</script>
393
394<main>
395        <div class="hero-container">
396        <img src="https://itb.edu.ec/statics/imagenes/instituto/porqueitb.webp" alt="Mensaje del Rector" width="1905" height="450" loading="eager" fetchpriority="high" class="hero-image">
397        <div class="hero-text" aria-hidden="true"></div>
398    </div>
399    <div class="container-fluid">
400        <div class="container py-5">
401            <div class="row">
402                <div class="anim texto mb-3" data-animate="fadeInUp">
403                    <h6 class="mb-3 fw-bold text-uppercase text-center titulo-encabezado">Instituto</h6>
404                    <h3 class="mb-2 titulo-seccion text-center">Mensaje de la Rectora</h3>
405                </div>
406                <div class="container mb-5">
407                    <div class="mensaje clearfix my-5 font-sans">
408                        <div class="float-md-start mx-auto me-md-4 mb-md-3 mb-4 position-relative anim" data-animate="fadeIn">
409                            <div class="shadow rounded overflow-hidden position-relative">
410                                <img src="https://itb.edu.ec/statics/imagenes/instituto/rectora.webp" alt="Imagen de la Rectora" class="img-fluid w-100">
411                                <div class="position-absolute bottom-0 end-0 translate-middle rounded p-3" style="z-index: 1; width: 70%; height: 70%;"></div>
412                            </div>
413                            <span class="badge bg-verde position-absolute top-0 end-0 mt-3 me-3 px-3 py-2">
414                                PhD. Elena Tolozano Benites
415                            </span>
416                        </div>
417                        <h4 class="border-start border-4 ps-3 mb-4 texto anim" data-animate="fadeInRight">Comunidad Educativa Bolivariana:</h4>
418                        <div class="text-justify anim" data-animate="fadeInRight">
419                            <p class="lh-lg texto">
420                                En este mensaje me permito expresar el arduo trabajo realizado en el a&ntilde;o, el cual, nos ha permitido consolidar nuestras funciones sustantivas y de apoyo y continuar con el crecimiento institucional socialmente reconocido que nos ha convertido en un referente nacional e internacional en la formaci&oacute;n t&eacute;cnica, tecnol&oacute;gica y tecnol&oacute;gica universitaria.
421                            </p>
422                            <p class="lh-lg texto">
423                                Pero estos logros no ser&iacute;an posible sin el trabajo, el compromiso y la responsabilidad de nuestro equipo, el que con orgullo denominado &ldquo;la familia bolivariana&rdquo; que para quienes hacemos el ITB es mucho m&aacute;s que una expresi&oacute;n, es el sentido de pertenencia y participaci&oacute;n activa de cada uno de nuestros colaboradores en los logros y responsabilidades que representa la formaci&oacute;n integral de profesionales.
424                            </p>
425                            <p class=" lh-lg texto">
426                                En este mensaje quiero dar las gracias a nuestros profesores, personal administrativo y de apoyo, directivos y estudiantes, estos &uacute;ltimos que son nuestra raz&oacute;n de ser y hacia donde est&aacute;n dirigidos todos nuestros esfuerzos institucionales. Con orgullo podemos decir, que el a&ntilde;o en el cual rendimos cuentas en este informe, ha sido el resultado de un proceso de planificaci&oacute;n que demuestra, que somos la mejor instituci&oacute;n de formaci&oacute;n t&eacute;cnica y tecnol&oacute;gica del pa&iacute;s, nuestros procesos acad&eacute;micos, bienestar institucional, investigaci&oacute;n y vinculaci&oacute;n con la sociedad, constituyen el hilo conductor de este informe y el centro de nuestros procesos.
427                            </p>
428                        </div>
429                    </div>
430                    <div class="bg-light rounded p-4 text-justify anim" data-animate="fadeInUp">
431                        <p class=" lh-lg texto">
432                            Sirvan estos resultados para seguir trabajando en el pr&oacute;ximo a&ntilde;o, a la luz de una nueva planificaci&oacute;n estrat&eacute;gica, que permita la consolidaci&oacute;n de nuestros procesos y sigamos demostrando que como instituci&oacute;n somos imparables. Ofreciendo al Ecuador el profesional integro que necesita, nuestro pa&iacute;
432s y el mundo, con un sentido ciudadano profundo y preparado para enfrentar los desaf&iacute;os sociales y naturales que se avecinan. Termino este mensaje, con el sentir de pertenencia de la familia Bolivariana:
433                        </p>
434                        <blockquote class="block border-start border-5 ps-4 mt-4 position-relative">
435                            <i class="fas fa-quote-left position-absolute top-0 start-0 text-naranja opacity-25 fs-1"></i>
436                            <p class="fst-italic text-muted texto">
437                                "Pertenecer es una forma de estar con, de relacionarnos con nosotros mismos, con los dem&aacute;s y con el mundo que nos rodea, en nuestros sombr&iacute;os momentos de desconexi&oacute;n puede ser reconfortante recordar que no solo pertenecemos inherentemente por la virtud de estar aqu&iacute; ahora, sino que los brazos donde buscamos pertenecer se abren mucho m&aacute;s de los que imaginamos"
438                            </p>
439                            <footer class="blockquote-footer text-end text-secondary fw-semibold texto">Pogosyan, 2021</footer>
440                        </blockquote>
441                    </div>
442                </div>
443            </div>
444        </div>
445    </div>
446    <div class="links-float" id="links-float" data-wow-delay="0.1s">
447        <div class="card rounded-0">
448            <div class="card-header rounded-0" data-open="true">
449                <i class="fas"></i>
450            </div>
451            <div class="list-group rounded-0">
452                <a href="https://itb.edu.ec/Sugerencia"
453                   target="_blank"
454                   class="list-group-item list-group-item-action rounded-0">
455                    <span class="tooltip-text">Sugerencias</span>
456                    <i class="fas fa-envelope"></i>
457                </a>
458                <a href="https://itb.edu.ec/Videos"
459                   target="_blank"
460                   class="list-group-item list-group-item-action">
461                    <span class="tooltip-text">Videos</span>
462                    <i class="fab fa-youtube"></i>
463                </a>
464                <a href="https://itb.edu.ec/Gym" class="list-group-item list-group-item-action">
465                    <span class="tooltip-text">Gimnasio</span>
466                    <i class="fas fa-dumbbell"></i>
467                </a>
468                <a href="https://itb.edu.ec/Actividades" class="list-group-item list-group-item-action">
469                    <span class="tooltip-text">Actividades</span>
470                    <i class="far fa-newspaper"></i>
471                </a>
472                <a href="https://conducecuador.itb.edu.ec/" target="_blank" class="list-group-item list-group-item-action">
473                    <span class="tooltip-text">Escuela de conducci&oacute;n</span>
474                    <i class="fas fa-car"></i>
475                </a>
476            </div>
477        </div>
478    </div>
479    <div class="img-foother">
480        <img src="https://itb.edu.ec/statics/imagenes/plantilla/ruedabg.gif" alt="Pie de p&aacute;gina" loading="lazy" width="80" height="100">
481    </div>
482    <div class="container-fluid text-white-50 footer pt-5 wow fadeIn" data-wow-delay="0.1s">
483        <div class="container py-5">
484            <div class="row g-5">
485                <div class="col-lg-4 col-md-6">
486                    <img src="https://itb.edu.ec/statics/imagenes/plantilla/logo-white.png"
487                         class="img-fluid mb-4"
488                         style="max-height:85px"
489                         alt="Logo Itb Pie de p&aacute;gina">
490                    <p class="mb-2 texto"><i class="fa fa-map-marker-alt me-3"></i> PBX : (04) 5000175 - 2307028 - 5002164 - 3727040</p>
491                    <p class="mb-2 texto"><i class="fa fa-phone-alt me-3"></i> 1800 ITB-ITB: 482-482 </p>
492                    <p class="mb-2">
493                        <i class="fa fa-envelope me-3"></i>
494                        <a href="mailto:[email protected]" data-bs-toggle="tooltip" data-bs-placement="top" title="Novedades Generales" aria-label="Correo Informacíon/Novedades generales">info</a>&nbsp;|&nbsp;
495                        <a href="mailto:[email protected]" data-bs-toggle="tooltip" data-bs-placement="top" title="Novedades Tecnolog&iacute;as" aria-label="Correo Soporte">soporte</a>
496                    </p>
497                    <div class="d-flex pt-2">
498                        <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp"
499                           style="animation-delay:0.1s;"
500                           href="https://twitter.com/ITBolivariano"
501                           target="_blank" aria-label="Boton Ir a Twiter ITB"><i class="fa-brands fa-x-twitter"></i></a>
502                        <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp"
503                           style="animation-delay:0.3s;"
504                           href="https://www.facebook.com/itb.edu.ec"
505                           target="_blank" aria-label="Boton Ir a Facebook ITB"><i class="fab fa-facebook-f"></i></a>
506                        <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp"
507                           style="animation-delay:0.6s;"
508                           href="https://itb.edu.ec/"
509                           aria-label="Boton Ir a  Google Plus ITB"><i class="fab fa-google-plus-g"></i></a>
510                        <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp"
511                           style="animation-delay:0.9s;"
512                           href="https://www.youtube.com/channel/UCc8EQVMtBoGCIWrnLKkG0cw"
513                           target="_blank" aria-label="Boton ir a Youtube ITB"><i class="fab fa-youtube"></i></a>
514                        <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp"
515                           style="animation-delay:1.2s;"
516                           href="https://www.instagram.com/itb_ec/?hl=es-la"
517                           target="" aria-label="Boton ir a Instagram ITB"><i class="fab fa-instagram"></i></a>
518                        <a class="btn btn-outline-light btn-social wow animate__animated animate__fadeInUp"
519                           style="animation-delay:1.5s;"
520                           href="https://www.tiktok.com/@itb_ec?lang=es"
521                           target="" aria-label="Boton ir a Tiktok ITB"><i class="fab fa-tiktok"></i></a>
522                    </div>
523                </div>
524                <div class="col-lg-4 col-md-6">
525                    <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Beca"> Becas</a>
526                    <a class="btn btn-link text-white-50 texto" href="https://buckcenter.edu.ec/" target="_blank"> Buckingham English Center S.A</a>
527                    <a class="btn btn-link text-white-50 texto" href="https://conducecuador.itb.edu.ec/" target="_blank"> Conduce Ecuador</a>
528                    <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Oferta_academica"> Oferta acad&eacute;mica</a>
529                    <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Directorio"> Directorio Telefon&iacute;co</a>
530                    <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Vinculacion"> Vinculaci&oacute;n</a>
531                    <a class="btn btn-link text-white-50 texto" href="https://itb.edu.ec/Biblioteca_virtual"> Efem&eacute;rides</a>
532                </div>
533                <div class="col-lg-4 col-md-6">
534                    <div class="row">
535                        <div class="col-4">
536                            <ul class="nav flex-column nav-tabs border-0" id="mapaTab" role="tablist">
537                                <li class="nav-item" role="presentation" onclick="cargaMapas()">
538                                    <span class="active" id="matriz1-tab" data-bs-toggle="tab" data-bs-target="#matriz1" type="button" role="tab" aria-controls="matriz1" aria-selected="true" aria-label="Dirección Sede Matriz"> Matriz</span>
539                                </li>
540                                <li class="nav-item" role="presentation" onclick="cargaMapas()">
541                                    <span class="" id="matriz2-tab" data-bs-toggle="tab" data-bs-target="#matriz2" type="button" role="tab" aria-controls="matriz2" aria-selected="false" aria-label="Dirección Sede Boyacá"> Boyac&aacute;</span>
542                                </li>
543                                <li class="nav-item" role="presentation" onclick="cargaMapas()">
544                                    <span class="" id="matriz3-tab" data-bs-toggle="tab" data-bs-target="#matriz3" type="button" role="tab" aria-controls="matriz3" aria-selected="false" aria-label="Dirección Sede Rocafuerte"> Rocafuerte</span>
545                                </li>
546                                <li class="nav-item " role="presentation" onclick="cargaMapas()">
547                                    <span class="" id="matriz4-tab" data-bs-toggle="tab" data-bs-target="#matriz4" type="button" role="tab" aria-controls="matriz4" aria-selected="false" aria-label="Dirección Sede Atarazana"> Teresa Benites Ayala</span>
548                                </li>
549                            </ul>
550                        </div>
551                        <div class="col-8">
552                            <div class="tab-content" id="mapTabContent">
553                                <div class="tab-pane fade show active" id="matriz1" role="tabpanel" aria-labelledby="matriz1-tab">
554                                    <div class="card bg-transparent mx-lg-3" style="width:16rem;">
555                                        <div id="frmmatriz1"><img src="https://itb.edu.ec/statics/imagenes/plantilla/mapa.jpg" class="card-img-top"></div>
556                                        <div class="card-body">
557                                            <p class="card-text texto">V&iacute;ctor Manuel Rend&oacute;n 236 y Pedro Carbo.</p>
558                                        </div>
559                                    </div>
560                                </div>
561                                <div class="tab-pane fade" id="matriz2" role="tabpanel" aria-labelledby="matriz2-tab">
562                                    <div class="card bg-transparent mx-lg-3" style="width:16rem;">
563                                        <div id="frmmatriz2"></div>
564                                        <div class="card-body">
565                                            <p class="card-text texto">Padre Solano No.324 y Boyac&aacute; Esquina.</p>
566                                        </div>
567                                    </div>
568                                </div>
569                                <div class="tab-pane fade" id="matriz3" role="tabpanel" aria-labelledby="matriz3-tab">
570                                    <div class="card bg-transparent mx-lg-3" style="width:16rem;">
571                                        <div id="frmmatriz3"></div>
572                                        <div class="card-body">
573                                            <p class="card-text texto">Roca #101 y Pedro Carbo Esquina.</p>
574                                        </div>
575                                    </div>
576                                </div>
577                                <div class="tab-pane fade" id="matriz4" role="tabpanel" aria-labelledby="matriz4-tab">
578                                    <div class="card bg-transparent mx-lg-3" style="width:16rem;">
579                                        <div id="frmmatriz4"></div>
580                                        <div class="card-body">
581                                            <p class="card-text texto">Avenida Pedro Men&eacute;ndez Gilbert y callej&oacute;n.</p>
582                                        </div>
583                                    </div>
584                                </div>
585                            </div>
586                        </div>
587                    </div>
588                </div>
589            </div>
590        </div>
591        <div class="container">
592            <div class="copyright wow animate__animated animate__slideInRight">
593                <div class="d-flex flex-wrap align-items-center">
594                    <div class="flex-grow-1 text-center text-lg-start mb-2 mb-lg-0 pe-3">
595                        &copy; 2025<a href="#" class="text-decoration-none"> TIC - ITB</a> | Todos los derechos reservados
596                    </div>
597                    <div class="d-flex flex-column flex-lg-row align-items-center gap-3 me-lg-4">
598                        <div class="footer-menu">
599                            <a href="javascript:void(0);" aria-label="Total de visitas 9 M"><span class="pe-1"><i class="fas fa-users text-white"></i></span>Visitas</a>
600                            <a href="javascript:void(0);"  data-bs-toggle="tooltip"
601                               data-bs-placement="top"
602                               title="Total de visitas 9 M"
603                               data-purecounter-start="0"
604                               data-purecounter-end="9"
605                               data-purecounter-duration="4"
606                               class="purecounter">9 M</a>
607                        </div>
608                    </div>
609                </div>
610            </div>
611        </div>
612    </div>
613    <div id="discapacidad" class="discapacidad">
614        <i class="fas fa-wheelchair"></i>
615    </div>
616    <div id="contenMenudisc" class="conten-menu-discapaciada" style="display:none;">
617        <div class="card border-0 rounded-0 shadow">
618            <div class="card-header rounded-0">
619                <h5 class="mb-0 text-center">Men&uacute; de Accesibilidad</h5>
620            </div>
621            <div id="tblMenuDisc" class="card-body pb-0">
622                <div class="row justify-content-center">
623                    <div class="col-6 mb-2 d-flex align-items-center justify-content-center position-relative">
624                        <a onclick="SetColor();" id="menuColorbtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-palette me-2 mb-2'></i> <span>Escala de Grises</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a>
625                    </div>
626                    <div class="col-6 mb-2 d-flex align-items-center justify-content-center position-relative">
627                        <a onclick="ChngCursor();" id="menuCursorBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-mouse-pointer me-2 mb-2'></i> <span>Ampliar Cursor</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a>
628                    </div>
629                    <div class="col-6 mb-2 d-flex align-items-center justify-content-center position-relative">
630                        <a onclick="NarradorOff();" id="menuSpeackBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-volume-mute me-2 mb-2'></i> <span>Narrador</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a>
631                    </div>
632                    <div class="col-6 d-flex align-items-center justify-content-center position-relative">
633                        <a onclick="ResaltLink();" id="menuLinksBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-link me-2 mb-2'></i> <span>Destacar Links</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a>
634                    </div>
635                    <div class="col-6 d-flex align-items-center justify-content-center position-relative">
636                        <a onclick="ChngFuente();" id="menuFuenteBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2"><i class='fas fa-text-height me-2 mb-2'></i> <span>Ampliar Texto</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a>
637                    </div>
638                    <div class="col-6 d-flex align-items-center justify-content-center position-relative">
639                        <a onclick="ResetFuente();" id="menuReseTxtBtn" class="btn h-100 w-100 d-flex flex-column align-items-center justify-content-center font-weight-bold p-2 d-none"><i class='fas fa-undo me-2 mb-2'></i> <span>Resetear Fuente</span> <i class="fa-solid fa-circle-check text-naranja position-absolute top-0 end-0 m-1 check-icon"></i></a>
640                    </div>
641                    <div class="col-12 my-2">
642                        <a onclick="ResetMenu();" id="menuResetBtn" class="btn h-100 w-100 d-flex justify-content-center align-items-center font-weight-bold d-none text-white py-2"><i class="fa-solid fa-rotate me-2" style="font-size: unset !important;"></i> <span>Restablecer Todo</span></a>
643                    </div>
644                </div>
645            </div>
646        </div>
647    </div>
648    <div id="whasapicon" class="whasapicon">
649        <a href="https://api.whatsapp.com/send?phone=5930968695213&text='Consulta de Información desde Página Web'" target="_blank" aria-label="Contactar por WhatsApp">
650            <i class="fab fa-whatsapp"></i>
651        </a>
652    </div>
653    <span onclick="goToTop()" id="goTopBtn"> <i class="fa-solid fa-arrow-up fa-2xl"></i> </span>
654
655        <div class="content-cookies fixed-bottom" style="display: none">
656        <div class="card shadow-lg px-4 py-4 py-sm-0 bg-transparent">
657            <div class="card-body">
658                <div class="row justify-content-evenly align-items-center">
659                    <div class="col-sm-6 col-lg-8 col-xl-6 col-xxl-5">
660                        <p class="mb-0 texto">Este sitio web utiliza cookies propias y de terceros para ofrecer una mejor experiencia. Al continuar su navegación, autoriza su uso de acuerdo a nuestra Política de Privacidad y manejo de cookies.</p>
661                        <a href="https://itb.edu.ec/Politicas/cookies" class="text-decoration-underline text-naranja texto link">Revisar política</a>
662                    </div>
663                    <div class="col-sm-4 col-lg-3 col-xl-5 col-xxl-4 mt-4 mt-sm-0">
664                        <div class="d-flex flex-xl-row flex-column w-100 gap-2">
665                            <a href="javascript:void(0);" onclick="aceptarCookies();" class="btn w-100 rounded-pill texto bg-naranja">Aceptar todo</a>
666                            <a href="javascript:void(0);" onclick="rechazarCookies();" class="btn w-100 rounded-pill texto btn-light">Rechazar todo</a>
667                            <a data-bs-toggle="modal" data-bs-target="#cookiesModal" class="btn w-100 rounded-pill texto btn-light">Configuración</a>
668                        </div>
669                    </div>
670                </div>
671            </div>
672        </div>
673    </div>
674
675        <div class="modal fade" id="cookiesModal" tabindex="-1" aria-labelledby="cookiesModalLabel" aria-hidden="true">
676        <div class="modal-dialog modal-lg">
677            <div class="modal-content border-0 bg-transparent texto">
678                <div class="modal-header justify-content-center">
679                    <h5 class="modal-title" id="cookiesModalLabel">Configuración de cookies</h5>
680                </div>
681                <div class="modal-body p-5 pb-0 bg-white">
682                    <div class="form-check form-switch mb-4">
683                        <input class="form-check-input" type="checkbox" id="todasopcionales">
684                        <label class="form-check-label" for="todasopcionales">Seleccionar todas las cookies opcionales</label>
685                    </div>
686                    <div class="form-check form-switch">
687                        <input class="form-check-input" type="checkbox" id="necesarias" checked disabled>
688                        <label class="form-check-label" for="necesarias">Necesarias (siempre activas)</label>
689                        <p>Estas cookies son esenciales para el funcionamiento básico del sitio web. Permiten funciones como la navegación, el acceso a áreas seguras y la correcta visualización del contenido. Sin estas cookies, el sitio no puede funcionar correctamente.</p>
690                    </div>
691                    <div class="form-check form-switch">
692                        <input class="form-check-input" type="checkbox" id="analiticas">
693                        <label class="form-check-label" for="analiticas">Analíticas</label>
694                        <p>Estas cookies nos ayudan a comprender cómo los visitantes interactúan con el sitio web mediante la recopilación de información de forma anónima. Usamos estos datos para mejorar continuamente la experiencia del usuario.</p>
695                    </div>
696                    <div class="form-check form-switch">
697                        <input class="form-check-input" type="checkbox" id="preferencias">
698                        <label class="form-check-label" for="preferencias">De preferencias</label>
699                        <p>Estas cookies permiten recordar información que cambia la forma en que el sitio se comporta o 
699se muestra, como el menú de accesibilidad.</p>
700                    </div>
701                </div>
702                <div class="d-flex justify-content-end gap-2 border-top bg-white p-4">
703                    <button type="button" class="btn rechazar px-3 py-2" onclick="rechazarCookies()" data-bs-dismiss="modal">Rechazar todo</button>
704                    <button type="button" class="btn guardar px-3 py-2" onclick="guardarConsentimiento()" data-bs-dismiss="modal">Guardar cambios</button>
705                </div>
706                <div class="modal-footer justify-content-center border-0">
707                    <a type="button" class="btn" data-bs-dismiss="modal" aria-label="Clic para cerrar"><i class="fas fa-times text-white"></i></a>
708                </div>
709            </div>
710        </div>
711    </div>
712    <!-- Bot -->
713    <df-messenger
714            chat-icon="https:&#x2F;&#x2F;itb.edu.ec&#x2F;statics&#x2F;imagenes&#x2F;main&#x2F;chat.png"
715            intent="WELCOME"
716            chat-title="Agente Virtual ITB-Bot"
717            agent-id="39adfdb1-3055-4fa6-affe-28e150469441"
718            language-code="es"
719    ></df-messenger>
720    <div class="btn-bot" id="chatbot-btn">
721        <img class="img-fluid" src="https://itb.edu.ec/statics/imagenes/main/chatbot.png">
722    </div>
723    <style>
724        df-messenger {
725            --df-messenger-bot-message: #f5f5f5;
726            --df-messenger-button-titlebar-color: #2B4781;
727            --df-messenger-chat-background-color: #fafafa;
728            --df-messenger-send-icon: #0E1A39;
729        }
730    </style>
731</main>
732
733<script src="https://itb.edu.ec/statics/vendor/bootstrap523/js/bootstrap.bundle.min.js"></script>
vendor: 1 bytes, line 733
733
734<script src="https://itb.edu.ec/statics/js/jquery371.min.js"></script>
vendor: 1 bytes, line 734
734
735<script src="https://itb.edu.ec/statics/js/main.js"></script>
vendor: 1 bytes, line 735
735
736<script src="https://itb.edu.ec/statics/js/lazysizes.min.js"></script>
vendor: 1 bytes, line 736
736
737<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
737
738
739<script src="https://itb.edu.ec/statics/vendor/gsap-public/minified/gsap.min.js"></script>
vendor: 1 bytes, line 739
739
740<script src="https://itb.edu.ec/statics/vendor/gsap-public/minified/ScrollTrigger.min.js"></script>
vendor: 1 bytes, line 740
740
741<script src="https://itb.edu.ec/statics/vendor/gsap-public/minified/ScrollSmoother.min.js"></script>
741
742<!-- Bot -->
743<script src="https://www.gstatic.com/dialogflow-console/fast/messenger/bootstrap.js?v=1"></script>
743
744
745    <style>
746        .hero-container {position: relative;margin-top: 100px;contain: paint;}
747        .hero-image {width: 100%;height: 450px;aspect-ratio: 16/9;object-fit: cover;will-change: transform; object-position: center 0%;}
748        .hero-text {position: absolute;inset: 0;background: linear-gradient(135deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.5) 100%);pointer-events: none;}
749        /*Cambiar segun la imagen (object position)*/
750        @media (min-width: 768px) and (max-width: 1399px) {
751            .hero-image {object-position: center;}
752        }
753        @media (max-width: 767px) {
754            .hero-container {margin-top: 70px;height: 350px;}
755            .hero-image {height: 350px;object-position: center}
756        }
757        .mensaje .border-start{border-color: var(--naranja) !important; font-family: "Oswald-Medium", sans-serif; color: #0E1A39}
758        .mensaje h4{margin-left: 448px;}
759        .mensaje img{max-width: 425px;}
760        @media (min-width: 300px) and (max-width: 767px) {
761            .mensaje h4{margin-left: 0px}
762        }
763        .block {border-left: 5px solid var(--naranja) !important;}
764    </style>
765    
765<script>
766        gsap.registerPlugin(ScrollTrigger);
767        let hideVideo = getCookie("hideVideo") || !1;
768        let loadContent = !0;
769        window.addEventListener("load", function () {
770            InitMask();
771        });
772        function InitMask(){
773            const overlay = document.getElementById("overlay");
774            const preloader = document.getElementById("preloader");
775            const body = document.getElementById("body");
776            const contentpreloader = document.getElementById("content-preloader");
777            const tl = gsap.timeline({ ease: "power2.out" });
778            if (prelodmask == 1) {
779                tl.add(() => {
780                    if (preloader) preloader.style.display = "none";
781                }, 0.3)
782                    .add(() => {
783                        StartAnimScroll();
784                    }, 0.9)
785                    .add(() => {
786                        if (overlay) {
787                            overlay.style.display = "none";
788                            body.style.overflow = "auto";
789                        }
790                    }, 1.5);
791            } else if (prelodmask == 0) {
792                tl.add(() => {
793                    if (preloader) preloader.style.display = "none";
794                }, 0.3)
795                    .add(() => {
796                        if (contentpreloader) contentpreloader.style.display = "none";
797                        body.style.overflow = "auto";
798                        StartAnimScroll();
799                    }, 1.5);
800            }
801        }
802        window.addEventListener("scroll", (e) => {
803            if (window.scrollY > 200 && loadContent) {
804                loadContent = !1;
805            }
806        });
807        function StartAnimScroll() {
808            document.querySelectorAll(".anim").forEach((el) => {
809                if (el.hasAttribute("data-animate")) {
810                    const animClass = "animate__" + el.getAttribute("data-animate");
811                    ScrollTrigger.create({ trigger: el, start: "top 95%", onEnter: () => el.classList.add("animate__animated", animClass), onLeaveBack: () => el.classList.remove("animate__animated", animClass), once: !1 });
812                }
813            });
814        }
815    </script>
vendor: 1 bytes, line 815
815
816<script>
817    // Variables globales
818    var fontSize = [1, 3, 6, 12];
819    var ultimoElementoNarrado = null;
820    var reproduciendo = false;
821    // **************** Funcionalidad de escala de grises ****************
822    function SetColor(){
823        var current = getCookie('Color');
824        var newValue = (current === '1') ? '0' : '1';
825        setCookie('Color',newValue,1);
826        getColor();
827    }
828    function getColor() {
829        if(getCookie('Color') === '1') {
830            $("html").addClass("gris");
831            $("#menuColorbtn").html("<i class='fas fa-palette me-2 mb-2'></i><span>Agregar Color</span><i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>");
832            document.getElementById('menuColorbtn').classList.add('active');
833        } else {
834            $("html").removeClass("gris");
835            $("#menuColorbtn").html("<i class='fas fa-palette me-2 mb-2'></i> <span>Escala de Grises</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>");
836            document.getElementById('menuColorbtn').classList.remove('active');
837        }
838        getBtnReset();
839    }
840    // **************** Funcionalidad de tamaño de fuente ****************
841    function ChngFuente(){
842        var aumentar = 1;
843        var indice = 0;
844        if(getCookie('fuente')) {
845            var fuente = getCookie('fuente').split(":");
846            aumentar = parseInt(fuente[0]);
847            indice = parseInt(fuente[1]);
848        }
849        if(aumentar === 1) {
850            indice = indice + 1;
851            aumentar = (indice >= fontSize.length) ? 0 : 1;
852        } else {
853            indice = indice - 1;
854            aumentar = (indice === 0) ? 1 : 0;
855        }
856        indice = (indice >= fontSize.length) ? fontSize.length - 1 : indice;
857        indice = (indice < 0) ? 0 : indice;
858        setCookie('fuente', aumentar + ':' + indice, 1);
859        getFuente();
860    }
861    function getFuente() {
862        if(getCookie('fuente')) {
863            var elementos = document.querySelectorAll("h1, h2, h3, h4, h5, h6, p, li, a, small, span");
864            var fuente = getCookie('fuente').split(":");
865            var indice = parseInt(fuente[1]);
866
867            for (var i = 0; i < elementos.length; i++) {
868                var sizeActual = parseInt(window.getComputedStyle(elementos[i]).fontSize);
869                var newSize = (fuente[0] === '1') ?
870                    parseInt(sizeActual + fontSize[indice]):
871                    parseInt(sizeActual - fontSize[indice]);
872                elementos[i].style.fontSize = newSize + "px";
873            }
874            if(fuente[0] === '1') {
875                $("#menuFuenteBtn").html("<i class='fas fa-text-height me-2'></i> <span>Ampliar Texto</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>");
876            } else {
877                $("#menuFuenteBtn").html("<i class='fas fa-text-height me-2'></i> <span>Reducir Texto</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>");
878            }
879            if(indice === 0) {
880                $("#menuFuenteBtn").html("<i class='fas fa-text-height me-2'></i> <span>Ampliar Texto</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>");
881            }
882            if(indice > 0) {
883                $("#menuReseTxtBtn").removeClass("d-none");
884            } else {
885                $("#menuReseTxtBtn").addClass("d-none");
886            }
887            $("#menuFuenteBtn").toggleClass("active", indice > 0);
888            getBtnReset();
889        }
890    }
891    function ResetFuente() {
892        eraseCookie('fuente');
893        window.location.reload();
894    }
895    // **************** Funcionalidad de cursor ****************
896    function ChngCursor() {
897        var current = getCookie('cursor');
898        var newValue = (current === '1') ? '0' : '1';
899        setCookie('cursor', newValue, 1);
900        getCursor();
901    }
902    function getCursor() {
903        if(getCookie('cursor') === '1') {
904            $("html").addClass("cursorlg");
905            $("#menuCursorBtn").html("<i class='fas fa-mouse-pointer me-2 mb-2'></i> <span>Normal Cursor</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>");
906            $("#menuCursorBtn").addClass("active");
907        } else {
908            $("html").removeClass("cursorlg");
909            $("#menuCursorBtn").html("<i class='fas fa-mouse-pointer me-2 mb-2'></i> <span>Ampliar Cursor</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>");
910            $("#menuCursorBtn").removeClass("active");
911        }
912        getBtnReset();
913    }
914    // **************** Funcionalidad de resaltar links ****************
915    function ResaltLink() {
916        var current = getCookie('links');
917        var newValue = (current === '1') ? '0' : '1';
918        setCookie('links', newValue, 1);
919        getLinks();
920    }
921    function getLinks() {
922        if(getCookie('links') === '0') {
923            $("#menuLinksBtn")
924                .html("<i class='fas fa-link me-2 mb-2'></i> <span>Normal Links</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>")
925                .addClass("active");
926            $("a").addClass("resaltado");
927        } else {
928            $("#menuLinksBtn")
929                .html("<i class='fas fa-link me-2 mb-2'></i> <span>Destacar Links</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>")
930                .removeClass("active");
931            $("a").removeClass("resaltado");
932        }
933        getBtnReset();
934    }
935    // **************** Funcionalidad de narrador ****************
936    function NarradorOff() {
937        var current = getCookie('narrador');
938        var newValue = (current === 'si') ? 'no' : 'si';
939        setCookie('narrador', newValue, 1);
940        recibirTexto();
941    }
942    function recibirTexto() {
943        var puedeNarrar = getCookie('narrador') || 'no';
944        if (puedeNarrar === 'si') {
945            $("#menuSpeackBtn")
946                .html("<i class='fas fa-volume-up me-2 mb-2'></i> <span>Narrador</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>")
947                .addClass("active");
948            $(".texto").hover(
949                function() {
950                    if (!reproduciendo && $(this).text() !== ultimoElementoNarrado) {
951                        decir($(this).text());
952                        ultimoElementoNarrado = $(this).text();
953                        reproduciendo = true;
954                    }
955                },
956                function() {
957                    if ($(this).text() === ultimoElementoNarrado) {
958                        detenerReproduccion();
959                    }
960                }
961            );
962            // Configurar eventos para imágenes con atributo alt
963            $("img[alt]").hover(
964                function() {
965                    if (!reproduciendo && $(this).attr('alt') !== ultimoElementoNarrado) {
966                        decir($(this).attr('alt'));
967                        ultimoElementoNarrado = $(this).attr('alt');
968                        reproduciendo = true;
969                    }
970                },
971                function() {
972                    if ($(this).attr('alt') === ultimoElementoNarrado) {
973                        detenerReproduccion();
974                    }
975                }
976            );
977
978            // Configurar eventos para elementos con aria-label
979            $("[aria-label]").hover(
980                function() {
981                    if (!reproduciendo && $(this).attr('aria-label') !== ultimoElementoNarrado) {
982                        decir($(this).attr('aria-label'));
983                        ultimoElementoNarrado = $(this).attr('aria-label');
984                        reproduciendo = true;
985                    }
986                },
987                function() {
988                    if ($(this).attr('aria-label') === ultimoElementoNarrado) {
989                        detenerReproduccion();
990                    }
991                }
992            );
993
994        } else {
995            $("#menuSpeackBtn")
996                .html("<i class='fas fa-volume-mute me-2 mb-2'></i> <span>Narrador</span> <i class='fa-solid fa-circle-check text-naranja position-absolute m-1 check-icon'></i>")
997                .removeClass("active");
998            detenerReproduccion();
999        }
1000        getBtnReset();
1001    }
1002    function decir(texto) {
1003        var puedeNarrar = getCookie('narrador') || 'si';
1004        if (puedeNarrar === 'si') {
1005            var mensaje = new SpeechSynthesisUtterance(texto);
1006            mensaje.lang = 'es-ES';
1007            mensaje.onend = function() {
1008                reproduciendo = false;
1009            };
1010            speechSynthesis.speak(mensaje);
1011        }
1012    }
1013    function detenerReproduccion() {
1014        speechSynthesis.cancel();
1015        reproduciendo = false;
1016    }
1017    // **************** Funcionalidad de reset ****************
1018    function ResetMenu() {
1019        eraseCookie('Color');
1020        eraseCookie('fuente');
1021        eraseCookie('cursor');
1022        eraseCookie('links');
1023        eraseCookie('narrador');
1024        window.location.reload();
1025    }
1026    function getBtnReset() {
1027        var showReset = false;
1028        if(getCookie('Color') || getCookie('fuente') || getCookie('cursor') || getCookie('links') || getCookie('narrador')) {
1029            showReset = true;
1030        }
1031
1032        if(showReset) {
1033            $("#menuResetBtn").removeClass("d-none");
1034        } else {
1035            $("#menuResetBtn").addClass("d-none");
1036        }
1037    }
1038    // **************** Inicialización y eventos ****************
1039    $(document).ready(function(){
1040        // Cargar configuraciones guardadas al iniciar
1041        getColor();
1042        getFuente();
1043        getCursor();
1044        getLinks();
1045        recibirTexto();
1046        getBtnReset();
1047        // Mostrar/ocultar menú al hacer clic en el botón de discapacidad
1048        $(".discapacidad").click(function(e){
1049            e.stopPropagation();
1050            $("#contenMenudisc").fadeToggle(300);
1051        });
1052        // Cerrar menú solo al hacer clic en el botón de cerrar
1053        $("#btnclosemenu").click(function(e){
1054            e.stopPropagation();
1055            $("#contenMenudisc").hide();
1056        });
1057        // Prevenir que el menú se cierre al hacer clic en una opción
1058        $("#tblMenuDisc li").click(function(e){
1059            e.stopPropagation(); // Evita que el evento se propague al documento
1060            // El menú permanecerá abierto después de la selección
1061        });
1062        // Cerrar menú al hacer clic fuera de él
1063        $(document).click(function(e){
1064            if (!$(e.target).closest("#contenMenudisc").length && !$(e.target).closest(".discapacidad").length){
1065                $("#contenMenudisc").hide();
1066            }
1067        });
1068        // Menú de busqueda de carreras
1069        function debounce(func,wait){
1070            let timeout;
1071            return function() {
1072                const context = this, args = arguments;
1073                clearTimeout(timeout);
1074                timeout = setTimeout(() => func.apply(context, args), wait);
1075            };
1076        }
1077        $("#search").on("input",debounce(function(){
1078            const listaSugerencia = $("#suggestions");
1079            const animclase = "animate__bounceIn";
1080            listaSugerencia.hide();
1081            let query = $(this).val();
1082
1083            if(listaSugerencia.hasClass(animclase)){
1084                listaSugerencia.removeClass('animate__animated');
1085                listaSugerencia.removeClass(animclase);
1086            }
1087
1088            if(query.length > 3){
1089                $.ajax({
1090                    type: 'POST',
1091                    url: _root+'ajaxsapp/ajax',
1092                    headers: {'X-Requested-With':'XMLHttpRequest'},
1093                    data: {action:'query_carrera',s:query },
1094                    success: function(data) {
1095                        var array = eval(data);
1096                        var listado = "";
1097                        $.each(array,function(i,fila){
1098                            const tipo = fila['online']?'Online':'Presencial';
1099                            listado += '<div class="card-lista d-flex align-items-center" data-url="'+_root+fila['url']+'">' +
1100                                '<div class="flex-shrink-0">'+
1101                                '<img src="https://itb.edu.ec/'+fila['img']+'" width="50" alt="Carrera"></div>'+
1102                                '<div class="flex-grow-1 ms-3"><strong class="mb-1">'+fila['descripcion']+'</strong>'+
1103                                '</br> <small>'+tipo+'</small><small class="text-muted"> - '+fila['duracion']+'</small>'+
1104                                '</div></div>';
1105                        });
1106                        listaSugerencia.addClass('animate__animated');
1107                        listaSugerencia.addClass(animclase);
1108                        listaSugerencia.html(listado).show();
1109                    },
1110                    error: function(xhr,status,error){
1111                        console.log(xhr);
1112                        console.log(status);
1113                        console.log(error);
1114                    }
1115                });
1116            } else {
1117                $("#suggestions").hide();
1118                if(listaSugerencia.hasClass(animclase)){
1119                    listaSugerencia.removeClass('animate__animated');
1120                    listaSugerencia.removeClass(animclase);
1121                }
1122            }
1123        },500));
1124        $(document).on("click",".card-lista",function(){
1125            $("#search").val($(this).text());
1126            const url = $(this).data('url');
1127            if (url){
1128                $("#content-preloader").removeClass("d-none");
1129                window.location.href = url;
1130            }
1131            $("#suggestions").hide();
1132        });
1133    });
1134    window.addEventListener('load',function(){
1135        // No todas las paginas incluyen estos elementos del preloader.
1136        const overlayEl = document.getElementById('overlay');
1137        if (overlayEl) overlayEl.classList.add('overlay-efect');
1138        const overlayColorEl = document.getElementById('overlaycolor');
1139        if (overlayColorEl) overlayColorEl.classList.add('overlaycolor-efect');
1140        const contentPreloaderEl = document.getElementById('content-preloader');
1141        if (contentPreloaderEl) contentPreloaderEl.classList.add('d-none');
1142    });
1143    $("#mapTabContent").hover(function(){ cargaMapas(); });
1144    $(".urlclic").click(function(){
1145        const url = $(this).data('url');
1146        if (url){
1147            $("#content-preloader").removeClass("d-none");
1148            window.location.href = url;
1149        }
1150    });
1151    window.addEventListener('pageshow', function(event) {
1152        if (event.persisted) {
1153            // Mostrar preloader
1154            const preloader = document.getElementById('content-preloader');
1155            if (preloader) {
1156                preloader.classList.remove('d-none');
1157            }
1158            window.location.reload();
1159        }
1160    });
1161
1162    // **************** Sistema de gestión de cookies ****************
1163
1164    // Verificar y mostrar banner de cookies
1165    $(document).ready(function(){
1166        if (!getCookie('politicacookies') && !getCookie('cookie_consent')) {
1167            $('.content-cookies').fadeIn();
1168        }
1169
1170        $('#todasopcionales').change(function(){
1171            const isChecked = $(this).prop('checked');
1172            $('#analiticas').prop('checked', isChecked);
1173            $('#preferencias').prop('checked', isChecked);
1174        });
1175
1176        $('#analiticas, #preferencias').change(function(){
1177            const allChecked = $('#analiticas').prop('checked') && $('#preferencias').prop('checked');
1178            $('#todasopcionales').prop('checked', allChecked);
1179        });
1180
1181        cargarConfiguracionCookies();
1182    });
1183
1184    // Aceptar todas las cookies
1185    function aceptarCookies() {
1186        setCookie('politicacookies', '1', 365);
1187        setCookie('cookie_consent', 'all', 365);
1188        setCookie('cookie_analiticas', '1', 365);
1189        setCookie('cookie_preferencias', '1', 365);
1190        $('.content-cookies').fadeOut();
1191        cargarAnaliticas();
1192        cargarPreferencias();
1193        activarMenuPreferencias();
1194    }
1195
1196    // Rechazar todas las cookies opcionales
1197    function rechazarCookies() {
1198        setCookie('politicacookies', '1', 365);
1199        setCookie('cookie_consent', 'necessary', 365);
1200        eraseCookie('cookie_analiticas');
1201        eraseCookie('cookie_preferencias');
1202        $('.content-cookies').fadeOut();
1203        limpiarCookiesAnaliticas();
1204        detenerAnaliticas();
1205        desactivarPreferencias();
1206
1207        // Cerrar modal si está abierto
1208        $('#cookiesModal').modal('hide');
1209    }
1210
1211    // Guardar configuración personalizada de cookies
1212    function guardarConsentimiento() {
1213        setCookie('politicacookies', '1', 365);
1214        const analiticas = $('#analiticas').prop('checked');
1215        const preferencias = $('#preferencias').prop('checked');
1216        if (analiticas && preferencias) {
1217            setCookie('cookie_consent', 'all', 365);
1218        } else if (!analiticas && !preferencias) {
1219            setCookie('cookie_consent', 'necessary', 365);
1220        } else {
1221            setCookie('cookie_consent', 'custom', 365);
1222        }
1223        if (analiticas) {
1224            setCookie('cookie_analiticas', '1', 365);
1225            cargarAnaliticas();
1226        } else {
1227            eraseCookie('cookie_analiticas');
1228            limpiarCookiesAnaliticas();
1229            detenerAnaliticas();
1230        }
1231        if (preferencias) {
1232            setCookie('cookie_preferencias', '1', 365);
1233            cargarPreferencias();
1234            activarMenuPreferencias();
1235        } else {
1236            eraseCookie('cookie_preferencias');
1237            desactivarPreferencias();
1238        }
1239
1240        $('.content-cookies').fadeOut();
1241    }
1242
1243    function cargarConfiguracionCookies() {
1244        const analiticas = getCookie('cookie_analiticas');
1245        const preferencias = getCookie('cookie_preferencias');
1246
1247        $('#analiticas').prop('checked', analiticas === '1');
1248        $('#preferencias').prop('checked', preferencias === '1');
1249
1250        const allChecked = (analiticas === '1') && (preferencias === '1');
1251        $('#todasopcionales').prop('checked', allChecked);
1252
1253        if (analiticas === '1') {
1254            cargarAnaliticas();
1255        }
1256        if (preferencias === '1') {
1257            cargarPreferencias();
1258            activarMenuPreferencias();
1259        } else {
1260            desactivarMenuPreferencias();
1261        }
1262    }
1263
1264    // Cargar scripts de analíticas
1265    function cargarAnaliticas() {
1266        if (window.gtagLoaded) return;
1267
1268        // Google Analytics
1269        const script = document.createElement('script');
1270        script.async = true;
1271        script.src = 'https://www.googletagmanager.com/gtag/js?i
1271d=AW-780440524';
1272        document.head.appendChild(script);
1273
1274        window.dataLayer = window.dataLayer || [];
1275        function gtag(){ dataLayer.push(arguments); }
1276        window.gtag = gtag;
1277        gtag('js', new Date());
1278        gtag('config', 'AW-780440524');
1279
1280        // Facebook Pixel
vendor: 501 bytes, lines 1280-1289
1280
1281        !function(f,b,e,v,n,t,s){
1282            if(f.fbq)return;n=f.fbq=function(){ n.callMethod ? n.callMethod.apply(n,arguments) : n.queue.push(arguments) };
1283            if(!f._fbq)f._fbq=n;
1284            n.push=n;n.loaded=!0;n.version='2.0';
1285            n.queue=[];t=b.createElement(e);t.async=!0;
1286            t.src=v;s=b.getElementsByTagName(e)[0];
1287            s.parentNode.insertBefore(t,s)
1288        }(window, document,'script','https://connect.facebook.net/en_US/fbevents.js');
1289        fbq('init', '
1289185165846907852
vendor: 47 bytes, lines 1289-1292
1289');
1290        fbq('track', 'PageView');
1291
1292        
1292window.gtagLoaded = true;
1293        habilitarMapas();
1294        // console.log('Cookies analíticas activadas');
1295    }
1296
1297    function detenerAnaliticas() {
1298        if (typeof gtag !== 'undefined') {
1299            gtag('consent', 'update', {
1300                ad_storage: 'denied',
1301                analytics_storage: 'denied'
1302            });
1303        }
1304        if (typeof fbq !== 'undefined') {
1305            fbq('consent', 'revoke');
1306            fbq = function () {};
1307        }
1308    }
1309
1310    function limpiarCookiesAnaliticas() {
1311        eraseCookie('_fbp');
1312        eraseCookie('_fbc');
1313        eraseCookie('_gcl_au');
1314        eraseCookie('_ga');
1315        eraseCookie('_gid');
1316        eraseCookie('_gat');
1317
1318        // console.log('Cookies analíticas eliminadas');
1319    }
1320
1321    function cargarPreferencias() {
1322        getColor();
1323        getFuente();
1324        getCursor();
1325        getLinks();
1326        recibirTexto();
1327        getBtnReset();
1328        // console.log('Cookies de preferencias activadas');
1329    }
1330
1331    function desactivarPreferencias() {
1332        eraseCookie('Color');
1333        eraseCookie('fuente');
1334        eraseCookie('cursor');
1335        eraseCookie('links');
1336        eraseCookie('narrador');
1337        desactivarMenuPreferencias();
1338        // console.log('Cookies de preferencias desactivadas');
1339    }
1340
1341    function desactivarMenuPreferencias() {
1342        const menu = document.getElementById('tblMenuDisc');
1343        if (!menu) return;
1344
1345        const items = menu.querySelectorAll('a[onclick]');
1346
1347        items.forEach(item => {
1348            const originalOnclick = item.getAttribute('onclick');
1349            item.setAttribute('data-original-onclick', originalOnclick);
1350            item.removeAttribute('onclick');
1351            item.style.cursor = 'not-allowed';
1352            item.style.opacity = '0.5';
1353
1354            item.addEventListener('click', function(e) {
1355                e.preventDefault();
1356                e.stopPropagation();
1357
1358                const cookiesModal = new bootstrap.Modal(document.getElementById('cookiesModal'));
1359                cookiesModal.show();
1360            });
1361        });
1362    }
1363
1364    function activarMenuPreferencias() {
1365        const menu = document.getElementById('tblMenuDisc');
1366        if (!menu) return;
1367
1368        const items = menu.querySelectorAll('a[data-original-onclick]');
1369        items.forEach(item => {
1370            const originalOnclick = item.getAttribute('data-original-onclick');
1371            if (originalOnclick) {
1372                item.setAttribute('onclick', originalOnclick);
1373                item.removeAttribute('data-original-onclick');
1374            }
1375            item.style.cursor = '';
1376            item.style.opacity = '';
1377
1378            const newItem = item.cloneNode(true);
1379            item.parentNode.replaceChild(newItem, item);
1380        });
1381    }
1382
1383    function habilitarMapas() {
1384        window.mapasifrm = 0;
1385        // console.log('Mapas habilitados para carga');
1386    }
1387
1388    $(document).ready(function() {
1389        const necesarias = document.getElementById('necesarias');
1390        const labelNecesarias = document.querySelector("label[for='necesarias']");
1391
1392        if (necesarias) {
1393            necesarias.addEventListener('click', e => e.preventDefault());
1394            necesarias.addEventListener('keydown', e => e.preventDefault());
1395        }
1396        if (labelNecesarias) {
1397            labelNecesarias.addEventListener('click', e => e.preventDefault());
1398        }
1399    });
1400
1401    // Para el chatbot
1402    $('#chatbot-btn').hover(function() {
1403        $(this).hide();
1404    });
1405    $('df-messenger').mouseleave(function() {
1406        $('#chatbot-btn').show();
1407    });
1408
1409    window.addEventListener('dfMessengerLoaded', function() {
1410        const dfMessenger = document.querySelector('df-messenger');
1411        const shadowRoot = dfMessenger.shadowRoot;
1412        const style = document.createElement('style');
1413        style.textContent = `
1414        button#widgetIcon {
1415            width: 70px !important;
1416            height: 70px !important;
1417            bottom: -5px !important;
1418        }
1419        button#widgetIcon .df-chat-icon{
1420            width: 50px !important;
1421            height: 50px !important;
1422        }
1423        button#widgetIcon div #closeSvg{
1424            left: 23px !important;
1425            top: 23px !important;
1426        }
1427        `;
1428        shadowRoot.appendChild(style);
1429    });
1430
1431    const button = document.getElementById('chatbot-btn');
1432    button.classList.add('bounce');
1433    setTimeout(() => {
1434        button.classList.remove('bounce');
1435    }, 1000);
1436    function animateButton() {
1437        const button = document.getElementById('chatbot-btn');
1438        button.classList.add('animate');
1439        setTimeout(() => {
1440            button.classList.remove('animate');
1441        }, 2000);
1442    }
1443    setInterval(animateButton, 8000);
1444</script>
1444
1445</body>
1446</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.