{"id":3946,"date":"2025-09-10T15:54:23","date_gmt":"2025-09-10T15:54:23","guid":{"rendered":"https:\/\/axiainversiones.com\/?page_id=3946"},"modified":"2025-09-10T22:00:36","modified_gmt":"2025-09-10T22:00:36","slug":"calculadora-rentabilidad","status":"publish","type":"page","link":"https:\/\/axiainversiones.com\/en\/calculadora-rentabilidad\/","title":{"rendered":"Calculadora Rentabilidad"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3946\" class=\"elementor elementor-3946\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4ec9385 e-con-full e-flex e-con e-parent\" data-id=\"4ec9385\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95a241 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"d95a241\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">\u00bfQu\u00e9 es la calculadora de rentabilidad?\n<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-44a24fa elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"44a24fa\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>La calculadora de rentabilidad es una herramienta digital dise\u00f1ada para calcular la rentabilidad de una inversi\u00f3n inmobiliaria o de alquiler de forma r\u00e1pida, precisa y sencilla.\u00a0<\/p><p>Con ella puedes introducir los datos clave de tu proyecto y obtener el c\u00e1lculo de la rentabilidad de una inversi\u00f3n, el umbral de rentabilidad y todos los indicadores esenciales de rendimiento real. Nuestra plataforma incluye funciones de calculadora de rendimento, c\u00e1lculo de rentabilidad alquiler, y acceso a una calculadora rentabilidad inversi\u00f3n inmobiliaria adaptada tanto a inversores primerizos como a expertos.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-738719d elementor-align-left elementor-tablet-align-left elementor-mobile-align-left elementor-widget elementor-widget-button\" data-id=\"738719d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/axiainversiones.com\/propiedades\/\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Agendar asesor\u00eda<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3f0ecad e-con-full e-flex e-con e-parent\" data-id=\"3f0ecad\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-ccdb18b e-con-full e-flex e-con e-child\" data-id=\"ccdb18b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-2e12285 e-con-full e-flex e-con e-child\" data-id=\"2e12285\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d8aacab elementor-widget elementor-widget-heading\" data-id=\"d8aacab\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Calculadora<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9a7c6e2 elementor-hidden-mobile elementor-hidden-tablet elementor-widget elementor-widget-html\" data-id=\"9a7c6e2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div id=\"simulador-proyectos\" class=\"sp-wrap\">\r\n  <!-- Encabezado -->\r\n  <div class=\"sp-head\">\r\n    <h3>Simulador de Inversi\u00f3n Inmobiliaria<\/h3>\r\n    <p>Calcula ROI para <b>Renta Vacacional \/ Condo-Hotel<\/b> o <b>Renta Larga<\/b> en los proyectos disponibles.<\/p>\r\n  <\/div>\r\n\r\n  <!-- Paso 1: Proyecto -->\r\n  <div class=\"sp-card\">\r\n    <div class=\"sp-title\">1) Selecciona el proyecto<\/div>\r\n    <div class=\"sp-row\">\r\n      <label>Proyecto\r\n        <select id=\"sp-proyecto\" class=\"sp-input\">\r\n          <option value=\"\">\u2014 Elegir \u2014<\/option>\r\n          <option value=\"Vento Suites\">Vento Suites<\/option>\r\n          <option value=\"Glamping Puerta Grande\">Glamping Puerta Grande<\/option>\r\n          <option value=\"Hotel Reserva Donato\">Hotel Reserva Donato<\/option>\r\n          <option value=\"Riviera Bay\">Riviera Bay<\/option>\r\n          <option value=\"The Reef\">The Reef<\/option>\r\n          <option value=\"Kaya at Downtown\">Kaya at Downtown<\/option>\r\n          <option value=\"City Place\">City Place<\/option>\r\n          <option value=\"Poseidonia Residences\">Poseidonia Residences<\/option>\r\n          <option value=\"Jardines de Bellas Artes\">Jardines de Bellas Artes<\/option>\r\n          <option value=\"The Seed\">The Seed<\/option>\r\n          <option value=\"Makai Residences\">Makai Residences<\/option>\r\n        <\/select>\r\n      <\/label>\r\n      <div id=\"sp-sugerencias\" class=\"sp-note\" style=\"display:none;\"><\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Paso 2: Datos base -->\r\n  <div class=\"sp-card\">\r\n    <div class=\"sp-title\">2) Datos de la unidad<\/div>\r\n    <div class=\"sp-row\">\r\n      <label>Precio (USD)\r\n        <input type=\"number\" id=\"sp-precio\" class=\"sp-input\" placeholder=\"Ej: 269000\">\r\n      <\/label>\r\n      <label>Superficie (m\u00b2)\r\n        <input type=\"number\" id=\"sp-area\" class=\"sp-input\" placeholder=\"Ej: 70\">\r\n      <\/label>\r\n      <label>Tipo de unidad\r\n        <select id=\"sp-tipo\" class=\"sp-input\">\r\n          <option value=\"\">\u2014 Seleccionar \u2014<\/option>\r\n          <option>Estudio<\/option>\r\n          <option>1 dormitorio<\/option>\r\n          <option>2 dormitorios<\/option>\r\n          <option>3 dormitorios<\/option>\r\n          <option>Penthouse<\/option>\r\n        <\/select>\r\n      <\/label>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Paso 3: Tabs de modo -->\r\n  <div class=\"sp-tabs\">\r\n    <button type=\"button\" class=\"sp-tab sp-tab-active\" data-target=\"#sp-vacacional\">Renta Vacacional \/ Condo-Hotel<\/button>\r\n    <button type=\"button\" class=\"sp-tab\" data-target=\"#sp-larga\">Renta Larga<\/button>\r\n  <\/div>\r\n\r\n  <!-- Vacacional -->\r\n  <div id=\"sp-vacacional\" class=\"sp-card sp-tabpanel\" style=\"display:block;\">\r\n    <div class=\"sp-title sp-title-accent\">3A) Par\u00e1metros de Renta Vacacional \/ Condo-Hotel<\/div>\r\n    <div class=\"sp-row\">\r\n      <label>Tarifa promedio por noche (USD)\r\n        <input type=\"number\" id=\"sp-adr\" class=\"sp-input\" placeholder=\"Ej: 120\">\r\n      <\/label>\r\n      <label>Ocupaci\u00f3n esperada (%)\r\n        <input type=\"number\" id=\"sp-ocupa\" class=\"sp-input\" placeholder=\"Ej: 55\" min=\"0\" max=\"100\">\r\n      <\/label>\r\n      <label>Comisi\u00f3n \/ operaci\u00f3n hotelera (%)\r\n        <input type=\"number\" id=\"sp-fee\" class=\"sp-input\" placeholder=\"Ej: 30\" min=\"0\" max=\"100\">\r\n      <\/label>\r\n      <label>HOA mensual (USD)\r\n        <input type=\"number\" id=\"sp-hoa\" class=\"sp-input\" placeholder=\"Ej: 180\">\r\n      <\/label>\r\n      <label style=\"position:relative;\">o estimar HOA con tarifa por m\u00b2\r\n        <div class=\"sp-grid2\">\r\n          <input type=\"number\" id=\"sp-hoa-m2\" class=\"sp-input\" placeholder=\"USD\/m\u00b2 (Ej: 2)\">\r\n          <button type=\"button\" class=\"sp-btn-mini\" onclick=\"estimarHOA()\">Calcular con m\u00b2<\/button>\r\n        <\/div>\r\n        <small class=\"sp-hint\">Usa tu superficie \u00d7 USD\/m\u00b2. Ej.: The Reef \u2248 $2\/m\u00b2, Kaya \u2248 $3\/m\u00b2, Makai \u2248 $4\/m\u00b2.<\/small>\r\n      <\/label>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Larga -->\r\n  <div id=\"sp-larga\" class=\"sp-card sp-tabpanel\" style=\"display:none;\">\r\n    <div class=\"sp-title sp-title-accent\">3B) Par\u00e1metros de Renta Larga<\/div>\r\n    <div class=\"sp-row\">\r\n      <label>Renta mensual estimada (USD)\r\n        <input type=\"number\" id=\"sp-renta\" class=\"sp-input\" placeholder=\"Ej: 1200\">\r\n      <\/label>\r\n      <label>Vacancia anual (% meses sin alquilar)\r\n        <input type=\"number\" id=\"sp-vacancia\" class=\"sp-input\" placeholder=\"Ej: 5\" min=\"0\" max=\"100\">\r\n      <\/label>\r\n      <label>HOA mensual (USD)\r\n        <input type=\"number\" id=\"sp-hoa-l\" class=\"sp-input\" placeholder=\"Ej: 180\">\r\n      <\/label>\r\n      <label>Otros gastos mensuales (servicios\/seguros) (USD)\r\n        <input type=\"number\" id=\"sp-otros\" class=\"sp-input\" placeholder=\"Ej: 120\">\r\n      <\/label>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Paso 4: Horizonte -->\r\n  <div class=\"sp-card\">\r\n    <div class=\"sp-title\">4) Horizonte y venta<\/div>\r\n    <div class=\"sp-row\">\r\n      <label>A\u00f1os de inversi\u00f3n\r\n        <input type=\"number\" id=\"sp-anios\" class=\"sp-input\" value=\"10\" min=\"1\">\r\n      <\/label>\r\n      <label>Revalorizaci\u00f3n anual (%)\r\n        <input type=\"number\" id=\"sp-reval\" class=\"sp-input\" value=\"7\" min=\"0\" max=\"100\">\r\n      <\/label>\r\n      <label>Comisi\u00f3n de venta (%)\r\n        <input type=\"number\" id=\"sp-comision\" class=\"sp-input\" value=\"3\" min=\"0\" max=\"100\">\r\n      <\/label>\r\n    <\/div>\r\n    <div class=\"sp-actions\">\r\n      <button type=\"button\" class=\"sp-btn\" onclick=\"spCalcular()\">Calcular resultados<\/button>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Resultados -->\r\n  <div id=\"sp-resultados\" style=\"margin-top:14px;\"><\/div>\r\n  <div id=\"sp-export\" class=\"sp-export\" style=\"display:none;\">\r\n    <button class=\"sp-btn-export\" onclick=\"spDescargarPNG()\">Descargar Gr\u00e1fico (PNG)<\/button>\r\n    <button class=\"sp-btn-export sp-btn-green\" onclick=\"spDescargarExcel()\">Descargar Excel<\/button>\r\n  <\/div>\r\n\r\n  <canvas id=\"sp-grafico\" style=\"display:none;margin-top:20px;max-width:100%;\"><\/canvas>\r\n<\/div>\r\n\r\n<style>\r\n\/* ===== Fondo y envoltorio ===== *\/\r\n.sp-wrap{\r\n  background: radial-gradient(1200px 600px at 10% -10%, #2b4a7a 0%, #1C2A42 38%, #121b2c 100%);\r\n  border-radius: 16px;\r\n  padding: 18px 12px 24px;\r\n  box-shadow: 0 16px 40px rgba(0,0,0,.25);\r\n  color:#e8f0ff;\r\n}\r\n\r\n\/* ===== Encabezado ===== *\/\r\n#simulador-proyectos .sp-head{\r\n  background: linear-gradient(135deg, #274469 0%, #1C2A42 70%);\r\n  border: 1px solid rgba(255,255,255,.08);\r\n  border-radius: 14px;\r\n  padding: 16px 16px 12px;\r\n  color: #e9f2ff;\r\n  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 8px 24px rgba(0,0,0,.25);\r\n}\r\n#simulador-proyectos .sp-head h3{\r\n  margin:0 0 4px;font-size:24px;letter-spacing:.3px\r\n}\r\n#simulador-proyectos .sp-head p{\r\n  margin:0;color:#cfe2ff\r\n}\r\n\r\n\/* ===== Tarjetas ===== *\/\r\n.sp-card{\r\n  background: linear-gradient(180deg, rgba(24,43,77,.9) 0%, rgba(18,31,55,.92) 100%);\r\n  border: 1px solid rgba(255,255,255,.06);\r\n  border-radius: 14px;\r\n  padding: 16px 16px 12px;\r\n  margin: 14px 0;\r\n  box-shadow: 0 10px 30px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.05);\r\n  color:#e8f0ff;\r\n}\r\n.sp-title{\r\n  font-weight:900;color:#fff;\r\n  border-left:5px solid #3FAEFF;\r\n  padding-left:10px;margin:0 0 12px;letter-spacing:.3px\r\n}\r\n.sp-title-accent{\r\n  background: linear-gradient(135deg, rgba(63,174,255,.15), rgba(28,42,66,.45));\r\n  border-radius:10px;\r\n  padding:10px 12px;\r\n  border-left:5px solid #FFB703;\r\n}\r\n\r\n\/* ===== Filas y campos ===== *\/\r\n.sp-row{display:flex;flex-wrap:wrap;gap:14px}\r\n.sp-row>label{\r\n  flex:1 1 220px;min-width:220px;display:flex;flex-direction:column;color:#dfe8ff\r\n}\r\n.sp-input{\r\n  border:1px solid rgba(255,255,255,.18);\r\n  background: rgba(10,15,25,.55);\r\n  color:#eaf2ff;border-radius:10px;\r\n  padding:10px 12px;font-size:15px;\r\n  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);\r\n}\r\n.sp-input::placeholder{color:#9db5d4}\r\n.sp-input:focus{\r\n  outline:none;border-color:#68bdff;box-shadow:0 0 0 3px rgba(104,189,255,.25)\r\n}\r\n.sp-note{\r\n  background: linear-gradient(135deg, rgba(104,189,255,.18), rgba(36,60,97,.35));\r\n  border:1px solid rgba(104,189,255,.35);\r\n  color:#d6ecff;border-radius:10px;padding:10px\r\n}\r\n.sp-hint{color:#b7c8e3;display:block;margin-top:6px}\r\n\r\n\/* ===== Tabs ===== *\/\r\n.sp-tabs{display:flex;gap:10px;margin:10px 0}\r\n.sp-tab{\r\n  flex:1 1 auto;border:1px solid rgba(255,255,255,.14);\r\n  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));\r\n  color:#cfe2ff;border-radius:999px;padding:12px 14px;\r\n  font-weight:900;cursor:pointer;transition:.2s;text-transform:uppercase;letter-spacing:.4px\r\n}\r\n.sp-tab:hover{filter:brightness(1.08)}\r\n.sp-tab-active{\r\n  background: linear-gradient(135deg,#3FAEFF 0%,#1C2A42 85%);\r\n  color:#07172d;border-color:#68bdff;box-shadow:0 6px 18px rgba(63,174,255,.35), inset 0 1px 0 rgba(255,255,255,.25)\r\n}\r\n\r\n\/* ===== Botones ===== *\/\r\n.sp-actions{text-align:right;margin-top:10px}\r\n.sp-btn{\r\n  display:inline-block;background: linear-gradient(90deg,#3FAEFF 0%,#183560 100%);\r\n  color:#fff;border:none;border-radius:10px;padding:12px 20px;\r\n  font-weight:900;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.15)\r\n}\r\n.sp-btn:hover{filter:brightness(1.06)}\r\n.sp-btn-mini{\r\n  padding:9px 12px;border:none;border-radius:8px;\r\n  background:#3FAEFF;color:#0a203b;font-weight:800;cursor:pointer;\r\n  box-shadow:0 4px 14px rgba(63,174,255,.35)\r\n}\r\n.sp-btn-mini:hover{background:#2d94e6}\r\n.sp-export{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:12px}\r\n.sp-btn-export{\r\n  padding:10px 16px;background:#3FAEFF;color:#0a203b;font-weight:900;border:none;border-radius:10px;cursor:pointer;\r\n  box-shadow:0 6px 18px rgba(63,174,255,.35)\r\n}\r\n.sp-btn-export:hover{background:#1f86d7;color:#fff}\r\n.sp-btn-green{background:#1b6c22;color:#fff}\r\n.sp-btn-green:hover{background:#169b3a}\r\n\r\n\/* ===== KPIs \/ Tabla ===== *\/\r\n.sp-kpi{\r\n  background: linear-gradient(180deg, rgba(8,118,93,.18), rgba(7,29,37,.45));\r\n  border:1px solid rgba(10,208,157,.35);\r\n  border-left:6px solid #0ad09d;border-radius:10px;\r\n  padding:12px 14px;margin:10px 0;color:#d7fff2\r\n}\r\n.sp-kpi b{color:#4df6c5}\r\n\r\n.sp-table{width:100%;border-collapse:collapse;background:rgba(10,18,30,.65);border-radius:10px;overflow:hidden}\r\n.sp-table th{\r\n  background: linear-gradient(180deg,#1C2A42,#15263f);\r\n  color:#eaf2ff;text-align:left;padding:10px;border-bottom:1px solid rgba(255,255,255,.06)\r\n}\r\n.sp-table td{\r\n  padding:10px;border-bottom:1px solid rgba(255,255,255,.06);\r\n  color:#dfe8ff\r\n}\r\n.sp-grid2{display:grid;grid-template-columns:1fr auto;gap:8px}\r\n\r\n\/* ===== Responsive ===== *\/\r\n@media(max-width:800px){\r\n  .sp-row{flex-direction:column;gap:10px}\r\n  .sp-card{padding:14px}\r\n  .sp-tab{padding:11px 12px;font-size:12.5px}\r\n  .sp-btn{padding:11px 16px;font-size:15px}\r\n  .sp-btn-export{padding:9px 14px}\r\n}\r\n<\/style>\r\n\r\n<!-- Librer\u00edas -->\r\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\r\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/xlsx@0.18.5\/dist\/xlsx.full.min.js\"><\/script>\r\n\r\n<script>\r\n\/* ===== PRESETS POR PROYECTO ===== *\/\r\nconst SP_PRESETS = {\r\n  \"The Reef\": { modo: \"vacacional\", adr: 180, ocupa: 55, fee: 30, hoaM2: 2 },\r\n  \"Kaya at Downtown\": { modo: \"vacacional\", adr: 120, ocupa: 50, fee: 30, hoaM2: 3 },\r\n  \"Makai Residences\": { modo: \"vacacional\", adr: 200, ocupa: 55, fee: 30, hoaM2: 4 },\r\n  \"City Place\": { modo: \"larga\", renta: 1200, vacancia: 5, hoa: 180, otros: 100 },\r\n  \"Jardines de Bellas Artes\": { modo: \"vacacional\", adr: 120, ocupa: 60, fee: 30, hoa: 150 },\r\n  \"The Seed\": { modo: \"vacacional\", adr: 115, ocupa: 49, fee: 30, hoa: 160 },\r\n  \"Riviera Bay\": { modo: \"vacacional\", adr: 130, ocupa: 55, fee: 30, hoa: 170 },\r\n  \"Poseidonia Residences\": { modo: \"vacacional\", adr: 150, ocupa: 55, fee: 30, hoa: 180 },\r\n  \"Vento Suites\": { modo: \"larga\", renta: 900, vacancia: 6, hoa: 90, otros: 80 },\r\n  \"Glamping Puerta Grande\": { modo: \"vacacional\", adr: 90, ocupa: 45, fee: 25, hoa: 0 },\r\n  \"Hotel Reserva Donato\": { modo: \"vacacional\", adr: 140, ocupa: 50, fee: 30, hoa: 0 }\r\n};\r\n\r\nconst el = s => document.querySelector(s);\r\nconst fmt = n => (isNaN(n)?'-': Number(n).toLocaleString());\r\n\r\n\/* Tabs *\/\r\ndocument.addEventListener('click', (e)=>{\r\n  const btn = e.target.closest('.sp-tab');\r\n  if(!btn) return;\r\n  document.querySelectorAll('.sp-tab').forEach(b=>b.classList.remove('sp-tab-active'));\r\n  btn.classList.add('sp-tab-active');\r\n  document.querySelectorAll('.sp-tabpanel').forEach(p=>p.style.display='none');\r\n  const target = btn.getAttribute('data-target');\r\n  if(target) document.querySelector(target).style.display = 'block';\r\n});\r\n\r\n\/* Proyecto -> cargar presets *\/\r\nel('#sp-proyecto').addEventListener('change', ()=>{\r\n  const p = el('#sp-proyecto').value;\r\n  const sug = el('#sp-sugerencias');\r\n  if(!p || !SP_PRESETS[p]){sug.style.display='none';return;}\r\n  const pr = SP_PRESETS[p];\r\n\r\n  \/\/ Limpiar campos de ambos modos\r\n  ['sp-adr','sp-ocupa','sp-fee','sp-hoa','sp-hoa-m2','sp-renta','sp-vacancia','sp-hoa-l','sp-otros'].forEach(id => {\r\n    const x = el('#'+id); if(x) x.value='';\r\n  });\r\n\r\n  \/\/ Activar tab sugerida y setear valores\r\n  if(pr.modo==='vacacional'){\r\n    activarTab('#sp-vacacional');\r\n    if(pr.adr) el('#sp-adr').value = pr.adr;\r\n    if(pr.ocupa) el('#sp-ocupa').value = pr.ocupa;\r\n    if(pr.fee) el('#sp-fee').value = pr.fee;\r\n    if(pr.hoa) el('#sp-hoa').value = pr.hoa;\r\n    if(pr.hoaM2) el('#sp-hoa-m2').value = pr.hoaM2;\r\n    sug.innerHTML = \"Sugerencias para <b>\"+p+\"<\/b>: ADR \u2248 <b>\"+(pr.adr||'-')+\"<\/b>, Ocupaci\u00f3n \u2248 <b>\"+(pr.ocupa||'-')+\"%<\/b>, Operaci\u00f3n \u2248 <b>\"+(pr.fee||'-')+\"%<\/b>\"+(pr.hoa?(\", HOA \u2248 <b>$\"+pr.hoa+\"\/mes<\/b>\"):\"\")+(pr.hoaM2?(\", o calcular HOA \u2248 <b>$\"+pr.hoaM2+\"\/m\u00b2<\/b>\"):\"\")+\". <br><small>Puedes modificar cualquier valor.<\/small>\";\r\n  } else {\r\n    activarTab('#sp-larga');\r\n    if(pr.renta) el('#sp-renta').value = pr.renta;\r\n    if(pr.vacancia) el('#sp-vacancia').value = pr.vacancia;\r\n    if(pr.hoa) el('#sp-hoa-l').value = pr.hoa;\r\n    if(pr.otros) el('#sp-otros').value = pr.otros;\r\n    sug.innerHTML = \"Sugerencias para <b>\"+p+\"<\/b>: Renta mensual \u2248 <b>$\"+(pr.renta||'-')+\"<\/b>, Vacancia \u2248 <b>\"+(pr.vacancia||'-')+\"%<\/b>, HOA \u2248 <b>$\"+(pr.hoa||'-')+\"\/mes<\/b>\"+(pr.otros?(\", otros \u2248 <b>$\"+pr.otros+\"\/mes<\/b>\"):\"\")+\". <br><small>Puedes modificar cualquier valor.<\/small>\";\r\n  }\r\n  sug.style.display='block';\r\n});\r\n\r\nfunction activarTab(target){\r\n  document.querySelectorAll('.sp-tab').forEach(b=>{\r\n    b.classList.toggle('sp-tab-active', b.getAttribute('data-target')===target);\r\n  });\r\n  document.querySelectorAll('.sp-tabpanel').forEach(p=>p.style.display='none');\r\n  document.querySelector(target).style.display = 'block';\r\n}\r\n\r\nfunction estimarHOA(){\r\n  const area = parseFloat(el('#sp-area').value||'0');\r\n  const hoaM2 = parseFloat(el('#sp-hoa-m2').value||'0');\r\n  if(area>0 && hoaM2>0){\r\n    el('#sp-hoa').value = Math.round(area*hoaM2);\r\n  } else {\r\n    alert('Ingresa Superficie (m\u00b2) y tarifa USD\/m\u00b2 para estimar HOA.');\r\n  }\r\n}\r\n\r\n\/* ===== C\u00e1lculo principal ===== *\/\r\nlet spChart = null;\r\n\r\nfunction spCalcular(){\r\n  const precio = parseFloat(el('#sp-precio').value||'0');\r\n  const anios = parseInt(el('#sp-anios').value||'0');\r\n  const reval = parseFloat(el('#sp-reval').value||'0');\r\n  const comVenta = parseFloat(el('#sp-comision').value||'0');\r\n\r\n  if(!precio || !anios){\r\n    el('#sp-resultados').innerHTML = \"<div class='sp-kpi'><b>Completa al menos:<\/b> Precio y A\u00f1os de inversi\u00f3n.<\/div>\";\r\n    el('#sp-grafico').style.display='none';\r\n    el('#sp-export').style.display='none';\r\n    return;\r\n  }\r\n\r\n  const vacTabActiva = el('.sp-tab.sp-tab-active').getAttribute('data-target')===\"#sp-vacacional\";\r\n\r\n  let ingresoAnualNeto = 0, ingresoAnualBruto = 0, gastosAnuales = 0;\r\n\r\n  if(vacTabActiva){\r\n    const adr = parseFloat(el('#sp-adr').value||'0');\r\n    const ocupa = parseFloat(el('#sp-ocupa').value||'0');\r\n    const fee = parseFloat(el('#sp-fee').value||'0');\r\n    const hoa = parseFloat(el('#sp-hoa').value||'0');\r\n\r\n    ingresoAnualBruto = adr * 365 * (Math.min(Math.max(ocupa,0),100)\/100);\r\n    const comision = ingresoAnualBruto * (Math.min(Math.max(fee,0),100)\/100);\r\n    gastosAnuales = comision + (hoa||0)*12;\r\n    ingresoAnualNeto = ingresoAnualBruto - gastosAnuales;\r\n  } else {\r\n    const renta = parseFloat(el('#sp-renta').value||'0');\r\n    const vacancia = parseFloat(el('#sp-vacancia').value||'0');\r\n    const hoaL = parseFloat(el('#sp-hoa-l').value||'0');\r\n    const otros = parseFloat(el('#sp-otros').value||'0');\r\n\r\n    ingresoAnualBruto = renta * 12 * (1 - Math.min(Math.max(vacancia,0),100)\/100);\r\n    gastosAnuales = (hoaL||0)*12 + (otros||0)*12;\r\n    ingresoAnualNeto = ingresoAnualBruto - gastosAnuales;\r\n  }\r\n\r\n  \/\/ Simulaci\u00f3n a\u00f1o a a\u00f1o\r\n  let valor = precio;\r\n  const capital = [precio];\r\n  const ingresosAcum = [0];\r\n  let acumulado = 0;\r\n  const tabla = [];\r\n\r\n  for(let i=1;i<=anios;i++){\r\n    valor = valor * (1 + (reval\/100));\r\n    acumulado += ingresoAnualNeto;\r\n    capital.push(Math.round(valor));\r\n    ingresosAcum.push(Math.round(acumulado));\r\n    tabla.push({\r\n      anio:i,\r\n      valor: Math.round(valor),\r\n      neto: Math.round(ingresoAnualNeto),\r\n      acum: Math.round(acumulado)\r\n    });\r\n  }\r\n\r\n  const comisionVenta = valor * (comVenta\/100);\r\n  const gananciaVenta = valor - precio - comisionVenta;\r\n  const gananciaTotal = acumulado + gananciaVenta;\r\n  const capRate = (ingresoAnualNeto\/precio)*100;\r\n\r\n  \/\/ KPIs\r\n  el('#sp-resultados').innerHTML = `\r\n    <div class=\"sp-kpi\"><b>Cap Rate estimado (a\u00f1o 1):<\/b> ${capRate.toFixed(2)}%<\/div>\r\n    <div class=\"sp-kpi\"><b>Ingresos netos anuales:<\/b> $${fmt(ingresoAnualNeto)}<\/div>\r\n    <div class=\"sp-kpi\"><b>Ingresos acumulados en ${anios} a\u00f1os:<\/b> $${fmt(acumulado)}<\/div>\r\n    <div class=\"sp-kpi\"><b>Valor futuro de la propiedad:<\/b> $${fmt(valor)}<\/div>\r\n    <div class=\"sp-kpi\"><b>Ganancia por venta (\u2013 comisi\u00f3n ${comVenta}%):<\/b> $${fmt(gananciaVenta)}<\/div>\r\n    <div class=\"sp-kpi\"><b>Ganancia total (rentas + venta):<\/b> $${fmt(gananciaTotal)}<\/div>\r\n    <details style=\"margin-top:8px;\"><summary style=\"cursor:pointer;color:#9ed3ff;font-weight:800\">Ver tabla a\u00f1o a a\u00f1o<\/summary>\r\n      <div style=\"overflow-x:auto;margin-top:8px;\">\r\n        <table class=\"sp-table\" id=\"sp-tabla\">\r\n          <thead><tr><th>A\u00f1o<\/th><th>Valor propiedad (USD)<\/th><th>Neto anual (USD)<\/th><th>Acumulado (USD)<\/th><\/tr><\/thead>\r\n          <tbody>\r\n            ${tabla.map(r=>`<tr>\r\n              <td>${r.anio}<\/td>\r\n              <td>$${fmt(r.valor)}<\/td>\r\n              <td>$${fmt(r.neto)}<\/td>\r\n              <td>$${fmt(r.acum)}<\/td>\r\n            <\/tr>`).join('')}\r\n          <\/tbody>\r\n        <\/table>\r\n      <\/div>\r\n    <\/details>\r\n  `;\r\n\r\n  \/\/ Gr\u00e1fico\r\n  const canvas = el('#sp-grafico');\r\n  canvas.style.display = 'block';\r\n  const ctx = canvas.getContext('2d');\r\n  if(spChart) spChart.destroy();\r\n  spChart = new Chart(ctx,{\r\n    type:'line',\r\n    data:{\r\n      labels: Array.from({length: anios+1}, (_,i)=> i),\r\n      datasets:[\r\n        { label:'Valor Propiedad (USD)', data: capital, borderWidth:3, fill:false },\r\n        { label:'Ingresos Acumulados (USD)', data: ingresosAcum, borderDash:[6,4], borderWidth:2, fill:false }\r\n      ]\r\n    },\r\n    options:{\r\n      plugins:{ legend:{ labels:{ color:'#cfe2ff', font:{size:13} } } },\r\n      scales:{\r\n        x:{ title:{display:true,text:'A\u00f1o',color:'#cfe2ff'}, ticks:{color:'#cfe2ff'}, grid:{color:'rgba(255,255,255,.08)'} },\r\n        y:{ title:{display:true,text:'Valor (USD)',color:'#cfe2ff'}, ticks:{color:'#cfe2ff'}, grid:{color:'rgba(255,255,255,.08)'} }\r\n      }\r\n    }\r\n  });\r\n\r\n  el('#sp-export').style.display='flex';\r\n}\r\n\r\n\/* ===== Exportar PNG del gr\u00e1fico ===== *\/\r\nfunction spDescargarPNG(){\r\n  const canvas = el('#sp-grafico');\r\n  \/\/ Componer con fondo oscuro para que no salga transparente\r\n  const w = canvas.width, h = canvas.height;\r\n  const temp = document.createElement('canvas');\r\n  temp.width = w; temp.height = h;\r\n  const tctx = temp.getContext('2d');\r\n  tctx.fillStyle = '#0e1726';\r\n  tctx.fillRect(0,0,w,h);\r\n  tctx.drawImage(canvas, 0, 0);\r\n  const a = document.createElement('a');\r\n  a.href = temp.toDataURL('image\/png');\r\n  a.download = 'simulador_inversion.png';\r\n  a.click();\r\n}\r\n\r\n\/* ===== Exportar Excel ===== *\/\r\nfunction spDescargarExcel(){\r\n  const tabla = document.getElementById('sp-tabla');\r\n  if(!tabla){ alert('Genera resultados primero.'); return; }\r\n  const wb = XLSX.utils.table_to_book(tabla,{sheet:\"Resultados\"});\r\n  XLSX.writeFile(wb,'resultados_inversion.xlsx');\r\n}\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c2c1ea2 elementor-hidden-desktop elementor-widget elementor-widget-html\" data-id=\"c2c1ea2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ============ SIMULADOR AXIA \u2013 FIJO, RESPONSIVE Y FUNCIONAL ============ -->\r\n<div id=\"ax-sim\" class=\"ax-wrap\">\r\n  <!-- Encabezado -->\r\n  <div class=\"ax-head\">\r\n    <h3>Simulador de Inversi\u00f3n Inmobiliaria<\/h3>\r\n    <p>Calcula ROI para <b>Renta Vacacional \/ Condo-Hotel<\/b> o <b>Renta Larga<\/b> en nuestros proyectos.<\/p>\r\n  <\/div>\r\n\r\n  <!-- Paso 1: Proyecto -->\r\n  <div class=\"ax-card\">\r\n    <div class=\"ax-title\">1) Selecciona el proyecto<\/div>\r\n    <div class=\"ax-row\">\r\n      <label>Proyecto\r\n        <select id=\"ax-proyecto\" class=\"ax-input\">\r\n          <option value=\"\">\u2014 Elegir \u2014<\/option>\r\n          <option value=\"Vento Suites\">Vento Suites<\/option>\r\n          <option value=\"Glamping Puerta Grande\">Glamping Puerta Grande<\/option>\r\n          <option value=\"Hotel Reserva Donato\">Hotel Reserva Donato<\/option>\r\n          <option value=\"Riviera Bay\">Riviera Bay<\/option>\r\n          <option value=\"The Reef\">The Reef<\/option>\r\n          <option value=\"Kaya at Downtown\">Kaya at Downtown<\/option>\r\n          <option value=\"City Place\">City Place<\/option>\r\n          <option value=\"Poseidonia Residences\">Poseidonia Residences<\/option>\r\n          <option value=\"Jardines de Bellas Artes\">Jardines de Bellas Artes<\/option>\r\n          <option value=\"The Seed\">The Seed<\/option>\r\n          <option value=\"Makai Residences\">Makai Residences<\/option>\r\n        <\/select>\r\n      <\/label>\r\n      <div id=\"ax-sugerencias\" class=\"ax-note\" style=\"display:none;\"><\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Paso 2: Datos base -->\r\n  <div class=\"ax-card\">\r\n    <div class=\"ax-title\">2) Datos de la unidad<\/div>\r\n    <div class=\"ax-row\">\r\n      <label>Precio (USD)\r\n        <input type=\"number\" id=\"ax-precio\" class=\"ax-input\" placeholder=\"Ej: 245000\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>Superficie (m\u00b2)\r\n        <input type=\"number\" id=\"ax-area\" class=\"ax-input\" placeholder=\"Ej: 70\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>Tipo de unidad\r\n        <select id=\"ax-tipo\" class=\"ax-input\">\r\n          <option value=\"\">\u2014 Seleccionar \u2014<\/option>\r\n          <option>Estudio<\/option>\r\n          <option>1 dormitorio<\/option>\r\n          <option>2 dormitorios<\/option>\r\n          <option>3 dormitorios<\/option>\r\n          <option>Penthouse<\/option>\r\n        <\/select>\r\n      <\/label>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Tabs -->\r\n  <div class=\"ax-tabs\">\r\n    <button type=\"button\" class=\"ax-tab ax-tab-active\" data-target=\"#ax-vacacional\" aria-controls=\"ax-vacacional\" aria-selected=\"true\">Renta Vacacional \/ Condo-Hotel<\/button>\r\n    <button type=\"button\" class=\"ax-tab\" data-target=\"#ax-larga\" aria-controls=\"ax-larga\" aria-selected=\"false\">Renta Larga<\/button>\r\n  <\/div>\r\n\r\n  <!-- Vacacional -->\r\n  <div id=\"ax-vacacional\" class=\"ax-card ax-tabpanel\" style=\"display:block;\">\r\n    <div class=\"ax-title ax-title-accent vac\">3A) Par\u00e1metros de Renta Vacacional \/ Condo-Hotel<\/div>\r\n    <div class=\"ax-row\">\r\n      <label>Tarifa promedio por noche (USD)\r\n        <input type=\"number\" id=\"ax-adr\" class=\"ax-input\" placeholder=\"Ej: 180\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>Ocupaci\u00f3n esperada (%)\r\n        <input type=\"number\" id=\"ax-ocupa\" class=\"ax-input\" placeholder=\"Ej: 55\" min=\"0\" max=\"100\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>Comisi\u00f3n \/ operaci\u00f3n hotelera (%)\r\n        <input type=\"number\" id=\"ax-fee\" class=\"ax-input\" placeholder=\"Ej: 30\" min=\"0\" max=\"100\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>HOA mensual (USD)\r\n        <input type=\"number\" id=\"ax-hoa\" class=\"ax-input\" placeholder=\"Ej: 180\" inputmode=\"decimal\">\r\n      <\/label>\r\n\r\n      <label style=\"position:relative;\">o estimar HOA con tarifa por m\u00b2\r\n        <div class=\"ax-grid2\">\r\n          <input type=\"number\" id=\"ax-hoa-m2\" class=\"ax-input\" placeholder=\"USD\/m\u00b2 (Ej: 2)\" inputmode=\"decimal\">\r\n          <button type=\"button\" class=\"ax-btn-mini\" id=\"ax-btn-hoa\">Calcular con m\u00b2<\/button>\r\n        <\/div>\r\n        <small class=\"ax-hint\">Ej.: The Reef \u2248 $2\/m\u00b2, Kaya \u2248 $3\/m\u00b2, Makai \u2248 $4\/m\u00b2.<\/small>\r\n      <\/label>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Larga -->\r\n  <div id=\"ax-larga\" class=\"ax-card ax-tabpanel\" style=\"display:none;\">\r\n    <div class=\"ax-title ax-title-accent lar\">3B) Par\u00e1metros de Renta Larga<\/div>\r\n    <div class=\"ax-row\">\r\n      <label>Renta mensual estimada (USD)\r\n        <input type=\"number\" id=\"ax-renta\" class=\"ax-input\" placeholder=\"Ej: 1200\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>Vacancia anual (% meses sin alquilar)\r\n        <input type=\"number\" id=\"ax-vacancia\" class=\"ax-input\" placeholder=\"Ej: 5\" min=\"0\" max=\"100\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>HOA mensual (USD)\r\n        <input type=\"number\" id=\"ax-hoa-l\" class=\"ax-input\" placeholder=\"Ej: 150\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>Otros gastos mensuales (servicios\/seguros) (USD)\r\n        <input type=\"number\" id=\"ax-otros\" class=\"ax-input\" placeholder=\"Ej: 120\" inputmode=\"decimal\">\r\n      <\/label>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Horizonte -->\r\n  <div class=\"ax-card\">\r\n    <div class=\"ax-title\">4) Horizonte y venta<\/div>\r\n    <div class=\"ax-row\">\r\n      <label>A\u00f1os de inversi\u00f3n\r\n        <input type=\"number\" id=\"ax-anios\" class=\"ax-input\" value=\"10\" min=\"1\" inputmode=\"numeric\">\r\n      <\/label>\r\n      <label>Revalorizaci\u00f3n anual (%)\r\n        <input type=\"number\" id=\"ax-reval\" class=\"ax-input\" value=\"7\" min=\"0\" max=\"100\" inputmode=\"decimal\">\r\n      <\/label>\r\n      <label>Comisi\u00f3n de venta (%)\r\n        <input type=\"number\" id=\"ax-comision\" class=\"ax-input\" value=\"3\" min=\"0\" max=\"100\" inputmode=\"decimal\">\r\n      <\/label>\r\n    <\/div>\r\n    <div class=\"ax-actions\">\r\n      <button type=\"button\" class=\"ax-btn\" id=\"ax-calcular\">Calcular resultados<\/button>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Resultados -->\r\n  <div id=\"ax-resultados\" style=\"margin-top:14px;\"><\/div>\r\n  <div id=\"ax-export\" class=\"ax-export\" style=\"display:none;\">\r\n    <button class=\"ax-btn-export\" id=\"ax-png\">Descargar Gr\u00e1fico (PNG)<\/button>\r\n    <button class=\"ax-btn-export ax-btn-green\" id=\"ax-xlsx\">Descargar Excel<\/button>\r\n  <\/div>\r\n\r\n  <canvas id=\"ax-grafico\" style=\"display:none;margin-top:20px;max-width:100%;\"><\/canvas>\r\n<\/div>\r\n\r\n<!-- Librer\u00edas (no tocan nada fuera del simulador) -->\r\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\r\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/xlsx@0.18.5\/dist\/xlsx.full.min.js\"><\/script>\r\n\r\n<style>\r\n\/* ======== Estilos totalmente encapsulados ======== *\/\r\n#ax-sim.ax-wrap{\r\n  background: radial-gradient(1200px 600px at 10% -10%, #2b4a7a 0%, #1C2A42 38%, #121b2c 100%);\r\n  border-radius: 16px; padding: 18px 12px 24px;\r\n  box-shadow: 0 16px 40px rgba(0,0,0,.25); color:#e8f0ff;\r\n  max-width: 980px; margin: 0 auto;\r\n  font-family:'Segoe UI',system-ui,Arial,sans-serif;\r\n}\r\n#ax-sim *{box-sizing:border-box}\r\n\r\n#ax-sim .ax-head{\r\n  background: linear-gradient(135deg, #274469 0%, #1C2A42 70%);\r\n  border: 1px solid rgba(255,255,255,.08); border-radius: 14px;\r\n  padding: 16px 16px 12px; color: #e9f2ff;\r\n  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 8px 24px rgba(0,0,0,.25);\r\n}\r\n#ax-sim .ax-head h3{margin:0 0 4px;font-size:22px;letter-spacing:.3px}\r\n#ax-sim .ax-head p{margin:0;color:#cfe2ff}\r\n\r\n#ax-sim .ax-card{\r\n  background: linear-gradient(180deg, rgba(24,43,77,.9) 0%, rgba(18,31,55,.92) 100%);\r\n  border: 1px solid rgba(255,255,255,.06);\r\n  border-radius: 14px; padding: 16px 16px 12px; margin: 14px 0;\r\n  box-shadow: 0 10px 30px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.05);\r\n  color:#e8f0ff;\r\n}\r\n#ax-sim .ax-title{\r\n  font-weight:900;color:#fff;border-left:5px solid #3FAEFF;\r\n  padding-left:10px;margin:0 0 10px;letter-spacing:.3px\r\n}\r\n#ax-sim .ax-title-accent{\r\n  background: linear-gradient(135deg, rgba(63,174,255,.15), rgba(28,42,66,.45));\r\n  border-radius:10px; padding:10px 12px; border-left:5px solid #FFB703;\r\n}\r\n#ax-sim .ax-title-accent.vac{border-left-color:#7fd1ff;color:#a7e2ff}\r\n#ax-sim .ax-title-accent.lar{border-left-color:#ffd37a;color:#ffe19a}\r\n\r\n#ax-sim .ax-row{display:flex;flex-wrap:wrap;gap:14px}\r\n#ax-sim .ax-row>label{flex:1 1 220px;min-width:220px;display:flex;flex-direction:column;color:#dfe8ff}\r\n#ax-sim .ax-input{\r\n  border:1px solid rgba(255,255,255,.18);\r\n  background: rgba(10,15,25,.55);\r\n  color:#eaf2ff;border-radius:10px;\r\n  padding:10px 12px;font-size:18px;\r\n  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);\r\n}\r\n#ax-sim .ax-input::placeholder{color:#9db5d4}\r\n#ax-sim .ax-input:focus{outline:none;border-color:#68bdff;box-shadow:0 0 0 3px rgba(104,189,255,.25)}\r\n\r\n#ax-sim .ax-note{\r\n  background: linear-gradient(135deg, rgba(104,189,255,.18), rgba(36,60,97,.35));\r\n  border:1px solid rgba(104,189,255,.35);\r\n  color:#d6ecff;border-radius:10px;padding:10px\r\n}\r\n#ax-sim .ax-hint{color:#b7c8e3;display:block;margin-top:6px}\r\n\r\n#ax-sim .ax-tabs{display:flex;gap:12px;margin:15px 0}\r\n#ax-sim .ax-tab{\r\n    flex:1 1 auto;\r\n  border:1px solid rgba(255,255,255,.15);\r\n  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));\r\n  color:#cfe2ff;\r\n  border-radius:999px;\r\n  padding:10px 15px;\r\n  font-weight:800;\r\n  font-size:13px; \/* \ud83d\udc48 Tama\u00f1o de tipograf\u00eda en p\u00edxeles *\/\r\n  cursor:pointer;\r\n  transition:.2s;\r\n  text-transform:uppercase;\r\n  letter-spacing:.4px;\r\n  display:inline-flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n}\r\n#ax-sim .ax-tab:hover{filter:brightness(1.08)}\r\n#ax-sim .ax-tab.ax-tab-active{\r\n  background: linear-gradient(135deg,#3FAEFF 0%,#1C2A42 85%);\r\n  color:#07172d;border-color:#68bdff;box-shadow:0 6px 12px rgba(63,174,255,.35), inset 0 1px 0 rgba(255,255,255,.25)\r\n}\r\n\r\n#ax-sim .ax-actions{text-align:right;margin-top:10px}\r\n#ax-sim .ax-btn{\r\n  display:inline-flex;align-items:center;justify-content:center;\r\n  background: linear-gradient(90deg,#3FAEFF 0%,#183560 100%);\r\n  color:#fff;border:none;border-radius:10px;padding:10px 16px;\r\n  font-weight:900;cursor:pointer;box-shadow:0 8px 2px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.15);\r\n  width:auto;max-width:100%\r\n}\r\n#ax-sim .ax-btn:hover{filter:brightness(1.06)}\r\n#ax-sim .ax-btn-mini{\r\n  padding:8px 12px;border:none;border-radius:8px;\r\n  background:#3FAEFF;color:#0a203b;font-weight:800;cursor:pointer;\r\n  box-shadow:0 4px 14px rgba(63,174,255,.35);\r\n  display:inline-flex;align-items:center;justify-content:center\r\n}\r\n#ax-sim .ax-btn-mini:hover{background:#2d94e6}\r\n#ax-sim .ax-export{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:12px}\r\n#ax-sim .ax-btn-export{\r\n  padding:9px 14px;background:#3FAEFF;color:#0a203b;font-weight:900;border:none;border-radius:10px;cursor:pointer;\r\n  box-shadow:0 6px 18px rgba(63,174,255,.35);display:inline-flex;align-items:center;justify-content:center\r\n}\r\n#ax-sim .ax-btn-export:hover{background:#1f86d7;color:#fff}\r\n#ax-sim .ax-btn-green{background:#1b6c22;color:#fff}\r\n#ax-sim .ax-btn-green:hover{background:#169b3a}\r\n\r\n#ax-sim .ax-kpi{\r\n  background: linear-gradient(180deg, rgba(8,118,93,.18), rgba(7,29,37,.45));\r\n  border:1px solid rgba(10,208,157,.35);\r\n  border-left:6px solid #0ad09d;border-radius:10px;\r\n  padding:12px 14px;margin:10px 0;color:#d7fff2\r\n}\r\n#ax-sim .ax-kpi b{color:#4df6c5}\r\n\r\n#ax-sim .ax-table{width:100%;border-collapse:collapse;background:rgba(10,18,30,.65);border-radius:10px;overflow:hidden}\r\n#ax-sim .ax-table th{\r\n  background: linear-gradient(180deg,#1C2A42,#15263f);\r\n  color:#eaf2ff;text-align:left;padding:10px;border-bottom:1px solid rgba(255,255,255,.06)\r\n}\r\n#ax-sim .ax-table td{\r\n  padding:10px;border-bottom:1px solid rgba(255,255,255,.06);\r\n  color:#dfe8ff\r\n}\r\n#ax-sim .ax-grid2{display:grid;grid-template-columns:1fr auto;gap:8px}\r\n\r\n@media(max-width:100px){\r\n  #ax-sim .ax-row{flex-direction:column;gap:10px}\r\n  #ax-sim .ax-card{padding:14px}\r\n  #ax-sim .ax-tab{padding:10px 12px;font-size:12px.5px}\r\n  #ax-sim .ax-btn{padding:9px 14px;font-size:12px}\r\n  #ax-sim .ax-btn-export{padding:9px 12px}\r\n}\r\n@media(max-width:500px){\r\n#ax-sim .ax-tabs{\r\n    flex-direction: column;\/* apila los dos botones *\/\r\n    gap: 12px;                        \/* menos separaci\u00f3n *\/\r\n    margin: 10px 0;  \r\n    \r\n}\r\n<\/style>\r\n\r\n<script>\r\n(function(){\r\n  \/\/ ====== Encapsular para no chocar con Elementor ======\r\n  const root = document.getElementById('ax-sim');\r\n  if(!root) return;\r\n\r\n  \/\/ Presets por proyecto (referenciales)\r\n  const PRESETS = {\r\n    \"The Reef\": { modo:\"vac\", adr:180, ocupa:55, fee:30, hoaM2:2 },\r\n    \"Kaya at Downtown\": { modo:\"vac\", adr:120, ocupa:50, fee:30, hoaM2:3 },\r\n    \"Makai Residences\": { modo:\"vac\", adr:200, ocupa:55, fee:30, hoaM2:4 },\r\n    \"City Place\": { modo:\"lar\", renta:1200, vacancia:5, hoa:180, otros:100 },\r\n    \"Jardines de Bellas Artes\": { modo:\"vac\", adr:120, ocupa:60, fee:30, hoa:150 },\r\n    \"The Seed\": { modo:\"vac\", adr:115, ocupa:49, fee:30, hoa:160 },\r\n    \"Riviera Bay\": { modo:\"vac\", adr:130, ocupa:58, fee:30, hoa:170 },\r\n    \"Poseidonia Residences\": { modo:\"vac\", adr:150, ocupa:55, fee:30, hoa:180 },\r\n    \"Vento Suites\": { modo:\"lar\", renta:950, vacancia:6, hoa:90, otros:80 },\r\n    \"Glamping Puerta Grande\": { modo:\"vac\", adr:90, ocupa:45, fee:25, hoa:0 },\r\n    \"Hotel Reserva Donato\": { modo:\"vac\", adr:140, ocupa:50, fee:30, hoa:0 }\r\n  };\r\n\r\n  \/\/ Utils locales\r\n  const $ = (sel) => root.querySelector(sel);\r\n  const $$ = (sel) => Array.from(root.querySelectorAll(sel));\r\n  const num = (sel) => parseFloat(($(sel)?.value || '0').replace(',','.')) || 0;\r\n  const fmt = (n) => isNaN(n) ? '-' : Number(n).toLocaleString();\r\n\r\n  \/\/ Tabs (delegaci\u00f3n dentro del root)\r\n  root.addEventListener('click', function(e){\r\n    const btn = e.target.closest('.ax-tab');\r\n    if(!btn || !root.contains(btn)) return;\r\n    $$('.ax-tab').forEach(b=>{ b.classList.remove('ax-tab-active'); b.setAttribute('aria-selected','false'); });\r\n    btn.classList.add('ax-tab-active'); btn.setAttribute('aria-selected','true');\r\n    const target = btn.getAttribute('data-target');\r\n    $$('.ax-tabpanel').forEach(p=> p.style.display='none');\r\n    if(target){ $(target).style.display='block'; }\r\n  });\r\n\r\n  \/\/ Cargar presets al cambiar proyecto\r\n  $('#ax-proyecto').addEventListener('change', function(){\r\n    const p = this.value;\r\n    const sug = $('#ax-sugerencias');\r\n    \/\/ limpiar campos\r\n    ['#ax-adr','#ax-ocupa','#ax-fee','#ax-hoa','#ax-hoa-m2','#ax-renta','#ax-vacancia','#ax-hoa-l','#ax-otros'].forEach(id=>{\r\n      const el = $(id); if(el) el.value = '';\r\n    });\r\n    if(!p || !PRESETS[p]){ sug.style.display='none'; return; }\r\n    const pr = PRESETS[p];\r\n\r\n    if(pr.modo==='vac'){\r\n      \/\/ activar tab vacacional\r\n      $$('.ax-tab').forEach(b=>{\r\n        b.classList.toggle('ax-tab-active', b.getAttribute('data-target')==='#ax-vacacional');\r\n        b.setAttribute('aria-selected', b.classList.contains('ax-tab-active') ? 'true' : 'false');\r\n      });\r\n      $$('#ax-larga')[0]?.style && ($('#ax-larga').style.display='none');\r\n      $('#ax-vacacional').style.display='block';\r\n\r\n      if(pr.adr) $('#ax-adr').value = pr.adr;\r\n      if(pr.ocupa) $('#ax-ocupa').value = pr.ocupa;\r\n      if(pr.fee) $('#ax-fee').value = pr.fee;\r\n      if(pr.hoa) $('#ax-hoa').value = pr.hoa;\r\n      if(pr.hoaM2) $('#ax-hoa-m2').value = pr.hoaM2;\r\n\r\n      sug.innerHTML = `Sugerencias para <b>${p}<\/b>: ADR \u2248 <b>${pr.adr??'-'}<\/b>, Ocupaci\u00f3n \u2248 <b>${pr.ocupa??'-'}%<\/b>, Operaci\u00f3n \u2248 <b>${pr.fee??'-'}%<\/b>${pr.hoa?`, HOA \u2248 <b>$${pr.hoa}\/mes<\/b>`:''}${pr.hoaM2?`, o calcular HOA \u2248 <b>$${pr.hoaM2}\/m\u00b2<\/b>`:''}. <br><small>Puedes modificar cualquier valor.<\/small>`;\r\n    } else {\r\n      \/\/ activar tab larga\r\n      $$('.ax-tab').forEach(b=>{\r\n        b.classList.toggle('ax-tab-active', b.getAttribute('data-target')==='#ax-larga');\r\n        b.setAttribute('aria-selected', b.classList.contains('ax-tab-active') ? 'true' : 'false');\r\n      });\r\n      $('#ax-vacacional').style.display='none';\r\n      $('#ax-larga').style.display='block';\r\n\r\n      if(pr.renta) $('#ax-renta').value = pr.renta;\r\n      if(pr.vacancia) $('#ax-vacancia').value = pr.vacancia;\r\n      if(pr.hoa) $('#ax-hoa-l').value = pr.hoa;\r\n      if(pr.otros) $('#ax-otros').value = pr.otros;\r\n\r\n      sug.innerHTML = `Sugerencias para <b>${p}<\/b>: Renta mensual \u2248 <b>$${pr.renta??'-'}<\/b>, Vacancia \u2248 <b>${pr.vacancia??'-'}%<\/b>, HOA \u2248 <b>$${pr.hoa??'-'}\/mes<\/b>${pr.otros?`, otros \u2248 <b>$${pr.otros}\/mes<\/b>`:''}. <br><small>Puedes modificar cualquier valor.<\/small>`;\r\n    }\r\n    sug.style.display='block';\r\n  });\r\n\r\n  \/\/ Estimar HOA por m\u00b2 (vacacional)\r\n  $('#ax-btn-hoa').addEventListener('click', function(){\r\n    const area = num('#ax-area'), m2 = num('#ax-hoa-m2');\r\n    if(area>0 && m2>0){ $('#ax-hoa').value = Math.round(area*m2); }\r\n    else { alert('Ingresa Superficie (m\u00b2) y tarifa USD\/m\u00b2 para estimar HOA.'); }\r\n  });\r\n\r\n  let axChart = null;\r\n\r\n  \/\/ Calcular\r\n  $('#ax-calcular').addEventListener('click', function(){\r\n    const precio = num('#ax-precio');\r\n    const anios = parseInt($('#ax-anios').value||'0',10);\r\n    const reval = num('#ax-reval');\r\n    const comVenta = num('#ax-comision');\r\n\r\n    if(!precio || !anios){\r\n      $('#ax-resultados').innerHTML = \"<div class='ax-kpi'><b>Completa al menos:<\/b> Precio y A\u00f1os de inversi\u00f3n.<\/div>\";\r\n      $('#ax-grafico').style.display='none';\r\n      $('#ax-export').style.display='none';\r\n      return;\r\n    }\r\n\r\n    \/\/ \u00bfQu\u00e9 tab est\u00e1 visible?\r\n    const vacVisible = ($('#ax-vacacional').style.display!=='none');\r\n\r\n    let ingresoAnualBruto = 0, ingresoAnualNeto = 0, gastosAnuales = 0;\r\n\r\n    if(vacVisible){\r\n      const adr = num('#ax-adr');\r\n      const ocupa = Math.min(Math.max(num('#ax-ocupa'),0),100);\r\n      const fee = Math.min(Math.max(num('#ax-fee'),0),100);\r\n      const hoa = num('#ax-hoa');\r\n\r\n      if(!adr || !ocupa){\r\n        alert('Completa al menos Tarifa por noche (ADR) y Ocupaci\u00f3n.');\r\n        return;\r\n      }\r\n\r\n      const noches = 365 * (ocupa\/100);\r\n      ingresoAnualBruto = adr * noches;\r\n      const comision = ingresoAnualBruto * (fee\/100);\r\n      gastosAnuales = comision + (hoa*12);\r\n      ingresoAnualNeto = ingresoAnualBruto - gastosAnuales;\r\n    } else {\r\n      const renta = num('#ax-renta');\r\n      const vac = Math.min(Math.max(num('#ax-vacancia'),0),100);\r\n      const hoaL = num('#ax-hoa-l');\r\n      const otros = num('#ax-otros');\r\n\r\n      if(!renta){\r\n        alert('Completa al menos la Renta mensual estimada.');\r\n        return;\r\n      }\r\n\r\n      ingresoAnualBruto = renta * 12 * (1 - (vac\/100));\r\n      gastosAnuales = (hoaL*12) + (otros*12);\r\n      ingresoAnualNeto = ingresoAnualBruto - gastosAnuales;\r\n    }\r\n\r\n    \/\/ Simulaci\u00f3n a\u00f1o a a\u00f1o\r\n    let valor = precio;\r\n    const capital = [precio];\r\n    const ingresosAcum = [0];\r\n    let acumulado = 0;\r\n    const tabla = [];\r\n\r\n    for(let i=1;i<=anios;i++){\r\n      valor = valor * (1 + (reval\/100));\r\n      acumulado += ingresoAnualNeto;\r\n      capital.push(Math.round(valor));\r\n      ingresosAcum.push(Math.round(acumulado));\r\n      tabla.push({anio:i,valor:Math.round(valor),neto:Math.round(ingresoAnualNeto),acum:Math.round(acumulado)});\r\n    }\r\n\r\n    const comisionVenta = valor * (comVenta\/100);\r\n    const gananciaVenta = valor - precio - comisionVenta;\r\n    const gananciaTotal = acumulado + gananciaVenta;\r\n    const capRate = (ingresoAnualNeto\/precio)*100;\r\n\r\n    \/\/ Render KPIs + tabla\r\n    $('#ax-resultados').innerHTML = `\r\n      <div class=\"ax-kpi\"><b>Cap Rate estimado (a\u00f1o 1):<\/b> ${capRate.toFixed(2)}%<\/div>\r\n      <div class=\"ax-kpi\"><b>Ingresos netos anuales:<\/b> $${fmt(ingresoAnualNeto)}<\/div>\r\n      <div class=\"ax-kpi\"><b>Ingresos acumulados en ${anios} a\u00f1os:<\/b> $${fmt(acumulado)}<\/div>\r\n      <div class=\"ax-kpi\"><b>Valor futuro de la propiedad:<\/b> $${fmt(valor)}<\/div>\r\n      <div class=\"ax-kpi\"><b>Ganancia por venta (\u2013 comisi\u00f3n ${comVenta}%):<\/b> $${fmt(gananciaVenta)}<\/div>\r\n      <div class=\"ax-kpi\"><b>Ganancia total (rentas + venta):<\/b> $${fmt(gananciaTotal)}<\/div>\r\n      <details style=\"margin-top:8px;\"><summary style=\"cursor:pointer;color:#9ed3ff;font-weight:800\">Ver tabla a\u00f1o a a\u00f1o<\/summary>\r\n        <div style=\"overflow-x:auto;margin-top:8px;\">\r\n          <table class=\"ax-table\" id=\"ax-tabla\">\r\n            <thead><tr><th>A\u00f1o<\/th><th>Valor propiedad (USD)<\/th><th>Neto anual (USD)<\/th><th>Acumulado (USD)<\/th><\/tr><\/thead>\r\n            <tbody>\r\n              ${tabla.map(r=>`<tr>\r\n                <td>${r.anio}<\/td>\r\n                <td>$${fmt(r.valor)}<\/td>\r\n                <td>$${fmt(r.neto)}<\/td>\r\n                <td>$${fmt(r.acum)}<\/td>\r\n              <\/tr>`).join('')}\r\n            <\/tbody>\r\n          <\/table>\r\n        <\/div>\r\n      <\/details>\r\n    `;\r\n\r\n    \/\/ Gr\u00e1fico\r\n    const canvas = $('#ax-grafico');\r\n    canvas.style.display = 'block';\r\n    const ctx = canvas.getContext('2d');\r\n    if(axChart) axChart.destroy();\r\n    axChart = new Chart(ctx,{\r\n      type:'line',\r\n      data:{\r\n        labels: Array.from({length: anios+1}, (_,i)=> i),\r\n        datasets:[\r\n          { label:'Valor Propiedad (USD)', data: capital, borderWidth:3, fill:false },\r\n          { label:'Ingresos Acumulados (USD)', data: ingresosAcum, borderDash:[6,4], borderWidth:2, fill:false }\r\n        ]\r\n      },\r\n      options:{\r\n        plugins:{ legend:{ labels:{ color:'#cfe2ff', font:{size:13} } } },\r\n        scales:{\r\n          x:{ title:{display:true,text:'A\u00f1o',color:'#cfe2ff'}, ticks:{color:'#cfe2ff'}, grid:{color:'rgba(255,255,255,.08)'} },\r\n          y:{ title:{display:true,text:'Valor (USD)',color:'#cfe2ff'}, ticks:{color:'#cfe2ff'}, grid:{color:'rgba(255,255,255,.08)'} }\r\n        }\r\n      }\r\n    });\r\n\r\n    $('#ax-export').style.display='flex';\r\n  });\r\n\r\n  \/\/ Exportar PNG\r\n  $('#ax-png').addEventListener('click', function(){\r\n    const canvas = $('#ax-grafico');\r\n    if(!canvas || canvas.style.display==='none'){ alert('Genera el gr\u00e1fico primero.'); return; }\r\n    const w = canvas.width, h = canvas.height;\r\n    const tmp = document.createElement('canvas');\r\n    tmp.width = w; tmp.height = h;\r\n    const tctx = tmp.getContext('2d');\r\n    tctx.fillStyle = '#0e1726';\r\n    tctx.fillRect(0,0,w,h);\r\n    tctx.drawImage(canvas,0,0);\r\n    const a = document.createElement('a');\r\n    a.href = tmp.toDataURL('image\/png');\r\n    a.download = 'simulador_inversion.png';\r\n    a.click();\r\n  });\r\n\r\n  \/\/ Exportar Excel\r\n  $('#ax-xlsx').addEventListener('click', function(){\r\n    const tabla = document.getElementById('ax-tabla');\r\n    if(!tabla){ alert('Genera resultados primero.'); return; }\r\n    const wb = XLSX.utils.table_to_book(tabla,{sheet:\"Resultados\"});\r\n    XLSX.writeFile(wb,'resultados_inversion.xlsx');\r\n  });\r\n})();\r\n<\/script>\r\n\r\n\r\n\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-393e9c2 e-con-full e-flex e-con e-child\" data-id=\"393e9c2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-8bc8459 e-con-full e-flex e-con e-child\" data-id=\"8bc8459\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0f508c4 elementor-widget elementor-widget-heading\" data-id=\"0f508c4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Beneficios de utilizar el c\u00e1lculo de la rentabilidad de una inversi\u00f3n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8744a42 elementor-widget elementor-widget-text-editor\" data-id=\"8744a42\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Utilizar una calculadora de rentabilidad te permite tomar decisiones basadas en datos concretos y minimizar riesgos. Puedes comparar alternativas, proyectar ingresos, identificar el umbral de rentabilidad y visualizar cu\u00e1l ser\u00e1 el rendimiento real de cada opci\u00f3n antes de invertir.<\/p><p>Con la calculadora de rentabilidade real obtienes el resultado inmediato del c\u00e1lculo de la rentabilidad de una inversi\u00f3n, lo que facilita tanto el an\u00e1lisis financiero como la planificaci\u00f3n estrat\u00e9gica. Adem\u00e1s, te ayuda a definir expectativas de rentabilidad alquiler y elegir solo aquellas oportunidades que realmente maximizan tu patrimonio.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-21cc5bd5 e-con-full e-flex e-con e-parent\" data-id=\"21cc5bd5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-1adbbe52 e-con-full e-flex e-con e-child\" data-id=\"1adbbe52\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4ea3172c elementor-widget elementor-widget-heading\" data-id=\"4ea3172c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">FAQS<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4d4d65e0 elementor-widget elementor-widget-n-accordion\" data-id=\"4d4d65e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;default_state&quot;:&quot;expanded&quot;,&quot;max_items_expended&quot;:&quot;one&quot;,&quot;n_accordion_animation_duration&quot;:{&quot;unit&quot;:&quot;ms&quot;,&quot;size&quot;:400,&quot;sizes&quot;:[]}}\" data-widget_type=\"nested-accordion.default\">\n\t\t\t\t\t\t\t<div class=\"e-n-accordion\" aria-label=\"Accordion. Open links with Enter or Space, close with Escape, and navigate with Arrow Keys\">\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-1290\" class=\"e-n-accordion-item\" open>\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"1\" tabindex=\"0\" aria-expanded=\"true\" aria-controls=\"e-n-accordion-item-1290\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> \u00bfC\u00f3mo funciona la calculadora rentabilidad inversi\u00f3n inmobiliaria? <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-1290\" class=\"elementor-element elementor-element-4ce78558 e-con-full e-flex e-con e-child\" data-id=\"4ce78558\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-93f5ab4 elementor-widget elementor-widget-text-editor\" data-id=\"93f5ab4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">La calculadora rentabilidad inversi\u00f3n inmobiliaria procesa tus datos, como valor de compra, alquiler y gastos, para mostrar el c\u00e1lculo de la rentabilidad de una inversi\u00f3n de forma autom\u00e1tica, transparente y confiable.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-1291\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"2\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-1291\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> \u00bfQu\u00e9 ventajas tiene calcular la rentabilidad alquiler? <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-1291\" class=\"elementor-element elementor-element-31339f7 e-con-full e-flex e-con e-child\" data-id=\"31339f7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-85dceb4 elementor-widget elementor-widget-text-editor\" data-id=\"85dceb4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Calcular rentabilidad alquiler te permite conocer el rendimiento anual de tu propiedad, optimizar el precio de renta y comparar distintas oportunidades para elegir la inversi\u00f3n m\u00e1s rentable y sostenible a largo plazo.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-1292\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"3\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-1292\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> \u00bfQu\u00e9 es el umbral de rentabilidad? <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-1292\" class=\"elementor-element elementor-element-4bf71c9 e-con-full e-flex e-con e-child\" data-id=\"4bf71c9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b5708b3 elementor-widget elementor-widget-text-editor\" data-id=\"b5708b3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">El <\/span><b>umbral de rentabilidad<\/b><span style=\"font-weight: 400;\"> es el punto a partir del cual una inversi\u00f3n empieza a generar beneficios reales. Nuestra calculadora umbral de rentabilidad te muestra cu\u00e1ndo tu propiedad comenzar\u00e1 a producir ganancias netas.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-1293\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"4\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-1293\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> \u00bfPuedo usar la calculadora de rendimento para inversiones en el extranjero? <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-1293\" class=\"elementor-element elementor-element-3b71f89 e-con-full e-flex e-con e-child\" data-id=\"3b71f89\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f86dc39 elementor-widget elementor-widget-text-editor\" data-id=\"f86dc39\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">S\u00ed, la <\/span><b>calculadora de rendimento<\/b><span style=\"font-weight: 400;\"> es flexible y permite calcular la rentabilidad de una inversi\u00f3n en cualquier mercado, simplemente introduciendo los valores correspondientes y adaptando los gastos e ingresos.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-1294\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"5\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-1294\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> \u00bfC\u00f3mo interpretar el c\u00e1lculo de rentabilidad de una inversi\u00f3n? <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-1294\" class=\"elementor-element elementor-element-fac1820 e-con-full e-flex e-con e-child\" data-id=\"fac1820\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ad20e52 elementor-widget elementor-widget-text-editor\" data-id=\"ad20e52\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">El c\u00e1lculo de la rentabilidad de una inversi\u00f3n te indica el porcentaje de retorno anual respecto al capital invertido. Sirve para comparar y seleccionar las opciones m\u00e1s favorables para tu portafolio inmobiliario.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-1295\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"6\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-1295\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><div class=\"e-n-accordion-item-title-text\"> \u00bfPor qu\u00e9 confiar en una calculadora de rentabilidade real? <\/div><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-1295\" class=\"elementor-element elementor-element-cdd0f4d e-con-full e-flex e-con e-child\" data-id=\"cdd0f4d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ce9aa77 elementor-widget elementor-widget-text-editor\" data-id=\"ce9aa77\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Una <\/span><b>calculadora de rentabilidade real<\/b><span style=\"font-weight: 400;\"> elimina los errores de estimaci\u00f3n y simplifica la toma de decisiones, ayudando a enfocarte en inversiones que cumplen tus expectativas de rendimiento, seguridad y crecimiento patrimonial.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u00bfQu\u00e9 es la calculadora de rentabilidad? La calculadora de rentabilidad es una herramienta digital dise\u00f1ada para calcular la rentabilidad de una inversi\u00f3n inmobiliaria o de alquiler de forma r\u00e1pida, precisa y sencilla.\u00a0 Con ella puedes introducir los datos clave de tu proyecto y obtener el c\u00e1lculo de la rentabilidad de una inversi\u00f3n, el umbral de [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3946","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/axiainversiones.com\/en\/wp-json\/wp\/v2\/pages\/3946","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/axiainversiones.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/axiainversiones.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/axiainversiones.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/axiainversiones.com\/en\/wp-json\/wp\/v2\/comments?post=3946"}],"version-history":[{"count":77,"href":"https:\/\/axiainversiones.com\/en\/wp-json\/wp\/v2\/pages\/3946\/revisions"}],"predecessor-version":[{"id":4042,"href":"https:\/\/axiainversiones.com\/en\/wp-json\/wp\/v2\/pages\/3946\/revisions\/4042"}],"wp:attachment":[{"href":"https:\/\/axiainversiones.com\/en\/wp-json\/wp\/v2\/media?parent=3946"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}