{"id":1693,"date":"2026-09-21T15:53:43","date_gmt":"2026-09-21T15:53:43","guid":{"rendered":"https:\/\/villasrivero.com\/?page_id=1693"},"modified":"2026-09-21T16:10:18","modified_gmt":"2026-09-21T16:10:18","slug":"dashboard-reina-del-atlantico","status":"publish","type":"page","link":"https:\/\/villasrivero.com\/en\/dashboard-reina-del-atlantico\/","title":{"rendered":"Dashboard Reina del Atl\u00e1ntico"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1693\" class=\"elementor elementor-1693\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-33ab041 e-flex e-con-boxed e-con e-parent\" data-id=\"33ab041\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a9501d0 elementor-widget elementor-widget-html\" data-id=\"a9501d0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!doctype html>\n<html lang=\"es\">\n<head>\n<meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n<title>Reina del Atl\u00e1ntico \u00b7 Villas Rivero<\/title>\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js@4.4.1\/dist\/chart.umd.min.js\"><\/script>\n<style>\n:root{--navy:#242B59;--sea:#4ABCC5;--sand:#D1B38C;--bg:#F7F6F3;--card:#fff;--line:#E4E1DA;--text:#171717;--muted:#6D6962;--up:#5BAE6A;--dn:#C97962;--upbg:#EEF8F0;--dnbg:#F8EDE8}\n*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Arial,Helvetica,sans-serif;color:var(--text);line-height:1.5}.wrap{max-width:1160px;margin:0 auto;padding:0 28px}\nheader{background:linear-gradient(135deg,#242B59,#30386C);color:#fff;padding:36px 0 32px;border-bottom:4px solid var(--sand)}.head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}\n.brand{font-family:Georgia,serif;font-style:italic;font-size:31px}.brand span{color:var(--sea)}.kicker{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#C2C7DC;margin-top:18px}\nh1{font-family:Georgia,serif;font-size:34px;font-weight:400;margin:5px 0 0}.meta{font-size:12px;color:#C7CBDE;line-height:1.7;text-align:right}.meta b{color:#fff}\nnav{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav{display:flex;overflow:auto}.nav button{border:0;background:none;padding:15px 16px;font-size:12px;color:var(--muted);cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent}.nav button.on{color:var(--navy);font-weight:700;border-bottom-color:var(--sea)}\nmain{padding:36px 0 58px}.pane{display:none}.pane.on{display:block}section{margin-bottom:45px}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#967A58;font-weight:700;margin-bottom:7px}\nh2{font-family:Georgia,serif;font-size:29px;font-weight:400;color:var(--navy);margin:0 0 7px}.lead{font-size:14px;color:#5D5953;max-width:900px;margin:0 0 22px}\n.hero{background:linear-gradient(135deg,#242B59,#333C74);border-radius:10px;color:#fff;padding:30px}.hero-title{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#C9CDDF;margin-bottom:18px}.hero-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}\n.hlabel{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#C2C7DA}.hvalue{font-family:Georgia,serif;font-size:37px;color:var(--sea);margin-top:5px}.hdesc{font-size:11px;color:#CDD1E1}.hdesc strong{color:#F2D5B0}\n.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:17px}.kpi{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px}.kpi .l{font-size:9px;text-transform:uppercase;color:var(--muted)}.kpi .v{font-family:Georgia,serif;font-size:24px;color:var(--navy);margin:5px 0}.delta{font-size:11px;font-weight:700}.up{color:var(--up)}.dn{color:var(--dn)}\n.card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:20px}.chartbox{height:310px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:17px}\n.month-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.month{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px;min-height:245px}.month.closed{border-top:4px solid var(--sea)}.month.live{border-top:4px solid var(--sand)}.month.future{border-top:4px solid #B9B3A8}\n.mname{font-family:Georgia,serif;font-size:21px;color:var(--navy)}.status{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:700}.compare{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.box{background:#F7F6F3;border-radius:6px;padding:10px}.box .yr{font-size:8px;text-transform:uppercase;color:var(--muted)}.box .val{font-family:Georgia,serif;font-size:19px;color:var(--navy)}\n.result{font-size:11px;margin-top:9px;padding:7px 9px;border-radius:5px}.good{background:var(--upbg);color:var(--up);font-weight:700}.bad{background:var(--dnbg);color:var(--dn);font-weight:700}.neutral{background:#F4F1EA;color:#625D55}\n.metrics{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.micro{border:1px solid var(--line);border-radius:6px;padding:8px}.micro .l{font-size:8px;text-transform:uppercase;color:var(--muted)}.micro .v{font-family:Georgia,serif;font-size:16px;color:var(--navy)}.micro .s{font-size:9px;color:var(--muted)}\n.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px 12px}table{width:100%;border-collapse:collapse;font-size:12px;min-width:800px}th{font-size:8.5px;text-transform:uppercase;color:var(--muted);padding:10px 8px;border-bottom:1px solid var(--line);text-align:right}th:first-child,td:first-child{text-align:left}td{padding:10px 8px;border-bottom:1px solid #F0EEE9;text-align:right}.rp{background:#F8FCF9;color:#2D6E3D;font-weight:700}\n.hist-controls{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.hist-controls label{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:700}.hist-controls select{display:block;margin-top:5px;padding:9px 11px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--navy)}\n.hist-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.hk{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px}.hk .l{font-size:8px;text-transform:uppercase;color:var(--muted)}.hk .pair{font-family:Georgia,serif;font-size:17px;color:var(--navy);margin:4px 0}.hk .chg{font-size:10px;font-weight:700}\n.note{margin-top:12px;font-size:10.5px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:23px 0 30px;font-size:10.5px;color:var(--muted)}\n@media(max-width:900px){.hero-grid,.kpis{grid-template-columns:1fr 1fr}.month-grid{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}.hist-kpis{grid-template-columns:1fr 1fr}}\n@media(max-width:620px){.wrap{padding:0 15px}.meta{text-align:left}.hero-grid,.kpis,.month-grid,.hist-kpis{grid-template-columns:1fr}}\n<\/style><\/head><body>\n<header><div class=\"wrap\"><div class=\"head\"><div><div class=\"brand\">Villas <span>Rivero<\/span><\/div><div class=\"kicker\">Informe de rendimiento<\/div><h1>Reina del Atl\u00e1ntico<\/h1><\/div><div class=\"meta\"><b>1 alojamiento(s)<\/b><br>2025 cerrado \u00b7 2026 a fecha de hoy<br>Actualizado \u00b7 16\/09\/2026<\/div><\/div><\/div><\/header>\n<nav><div class=\"wrap nav\"><button class=\"on\" data-pane=\"resumen\">Situaci\u00f3n general<\/button><button data-pane=\"meses\">Mes a mes<\/button><button data-pane=\"historico\">Hist\u00f3rico 2024\u20132026<\/button><\/div><\/nav>\n<main><div class=\"wrap\">\n<div class=\"pane on\" id=\"resumen\"><section><div class=\"eyebrow\">Visi\u00f3n global<\/div><h2>Situaci\u00f3n general<\/h2><p class=\"lead\">2025 est\u00e1 cerrado. 2026 incluye las reservas ya confirmadas hasta final de a\u00f1o y todav\u00eda puede seguir creciendo.<\/p>\n<div class=\"hero\"><div class=\"hero-title\">2025 completo vs 2026 a fecha de hoy<\/div><div class=\"hero-grid\">\n<div><div class=\"hlabel\">Revenue<\/div><div class=\"hvalue\" id=\"revCh\"><\/div><div class=\"hdesc\"><strong id=\"r25\"><\/strong> \u2192 <strong id=\"r26\"><\/strong><\/div><\/div>\n<div><div class=\"hlabel\">Noches<\/div><div class=\"hvalue\" id=\"nCh\"><\/div><div class=\"hdesc\"><strong id=\"n25\"><\/strong> \u2192 <strong id=\"n26\"><\/strong><\/div><\/div>\n<div><div class=\"hlabel\">RevPAR<\/div><div class=\"hvalue\" id=\"rpCh\"><\/div><div class=\"hdesc\"><strong id=\"rp25\"><\/strong> \u2192 <strong id=\"rp26\"><\/strong><\/div><\/div>\n<div><div class=\"hlabel\">Sep\u2013dic 2026<\/div><div class=\"hvalue\" id=\"future\"><\/div><div class=\"hdesc\"><strong id=\"futureN\"><\/strong> noches ya reservadas<\/div><\/div>\n<\/div><\/div>\n<div class=\"kpis\"><div class=\"kpi\"><div class=\"l\">ADR<\/div><div class=\"v\" id=\"adr\"><\/div><div class=\"delta\" id=\"adrD\"><\/div><\/div><div class=\"kpi\"><div class=\"l\">Ocupaci\u00f3n*<\/div><div class=\"v\" id=\"occ\"><\/div><div class=\"delta\" id=\"occD\"><\/div><\/div><div class=\"kpi\"><div class=\"l\">LOS<\/div><div class=\"v\" id=\"los\"><\/div><div class=\"delta\" id=\"losD\"><\/div><\/div><div class=\"kpi\"><div class=\"l\">Revenue ya asegurado 2026<\/div><div class=\"v\" id=\"assured\"><\/div><div class=\"delta\">Todav\u00eda abierto a nuevas reservas<\/div><\/div><\/div>\n<div class=\"two\"><div class=\"card\"><div class=\"chartbox\"><canvas id=\"revChart\"><\/canvas><\/div><\/div><div class=\"card\"><div class=\"chartbox\"><canvas id=\"kpiChart\"><\/canvas><\/div><\/div><\/div>\n<p class=\"note\">* RevPAR y ocupaci\u00f3n se calculan sobre el periodo operativo registrado para el alojamiento o grupo.<\/p><\/section><\/div>\n<div class=\"pane\" id=\"meses\"><section><div class=\"eyebrow\">Evoluci\u00f3n<\/div><h2>Mes a mes<\/h2><div class=\"month-grid\" id=\"monthGrid\"><\/div><\/section><\/div>\n\n<div class=\"pane\" id=\"historico\"><section><div class=\"eyebrow\">Consulta hist\u00f3rica<\/div><h2>Hist\u00f3rico 2024\u20132026<\/h2><p class=\"lead\">Selecciona dos a\u00f1os y el periodo que quieras comparar.<\/p><div class=\"hist-controls\"><label>A\u00f1o A<select id=\"ya\"><option>2024<\/option><option>2025<\/option><option>2026<\/option><\/select><\/label><label>A\u00f1o B<select id=\"yb\"><option>2025<\/option><option>2024<\/option><option>2026<\/option><\/select><\/label><label>Periodo<select id=\"period\"><option value=\"year\">A\u00f1o completo<\/option><\/select><\/label><\/div><div class=\"hist-kpis\" id=\"histKpis\"><\/div><\/section><\/div>\n<\/div><\/main><footer><div class=\"wrap\">Villas Rivero \u00b7 Reina del Atl\u00e1ntico \u00b7 Actualizado 16\/09\/2026<\/div><\/footer>\n<script>\nconst D={\"title\": \"Reina del Atl\u00e1ntico\", \"members\": [\"Reina del Atl\u00e1ntico\"], \"months\": [\"Enero\", \"Febrero\", \"Marzo\", \"Abril\", \"Mayo\", \"Junio\", \"Julio\", \"Agosto\", \"Septiembre\", \"Octubre\", \"Noviembre\", \"Diciembre\"], \"yearly\": {\"2024\": {\"revenue\": 15107.89, \"nights\": 86, \"available\": 366, \"stays\": 13, \"adr\": 175.67, \"revpar\": 41.28, \"occupancy\": 23.5, \"los\": 6.62}, \"2025\": {\"revenue\": 26410.33, \"nights\": 149, \"available\": 365, \"stays\": 22, \"adr\": 177.25, \"revpar\": 72.36, \"occupancy\": 40.82, \"los\": 6.77}, \"2026\": {\"revenue\": 23384.14, \"nights\": 128, \"available\": 365, \"stays\": 20, \"adr\": 182.69, \"revpar\": 64.07, \"occupancy\": 35.07, \"los\": 6.4}}, \"monthly\": {\"2024\": {\"1\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 31, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"2\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 29, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"3\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 31, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"4\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 30, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"5\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 31, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"6\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 30, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"7\": {\"revenue\": 2128.0, \"nights\": 13, \"available\": 31, \"stays\": 3, \"adr\": 163.69, \"revpar\": 68.65, \"occupancy\": 41.94, \"los\": 4.33}, \"8\": {\"revenue\": 4598.42, \"nights\": 23, \"available\": 31, \"stays\": 2, \"adr\": 199.93, \"revpar\": 148.34, \"occupancy\": 74.19, \"los\": 11.5}, \"9\": {\"revenue\": 3084.39, \"nights\": 20, \"available\": 30, \"stays\": 3, \"adr\": 154.22, \"revpar\": 102.81, \"occupancy\": 66.67, \"los\": 6.67}, \"10\": {\"revenue\": 3484.85, \"nights\": 20, \"available\": 31, \"stays\": 4, \"adr\": 174.24, \"revpar\": 112.41, \"occupancy\": 64.52, \"los\": 5.0}, \"11\": {\"revenue\": 1302.23, \"nights\": 6, \"available\": 30, \"stays\": 2, \"adr\": 217.04, \"revpar\": 43.41, \"occupancy\": 20.0, \"los\": 3.0}, \"12\": {\"revenue\": 510.0, \"nights\": 4, \"available\": 31, \"stays\": 1, \"adr\": 127.5, \"revpar\": 16.45, \"occupancy\": 12.9, \"los\": 4.0}}, \"2025\": {\"1\": {\"revenue\": 3104.83, \"nights\": 22, \"available\": 31, \"stays\": 3, \"adr\": 141.13, \"revpar\": 100.16, \"occupancy\": 70.97, \"los\": 7.33}, \"2\": {\"revenue\": 2746.24, \"nights\": 12, \"available\": 28, \"stays\": 3, \"adr\": 228.85, \"revpar\": 98.08, \"occupancy\": 42.86, \"los\": 4.0}, \"3\": {\"revenue\": 837.0, \"nights\": 7, \"available\": 31, \"stays\": 1, \"adr\": 119.57, \"revpar\": 27.0, \"occupancy\": 22.58, \"los\": 7.0}, \"4\": {\"revenue\": 3038.22, \"nights\": 19, \"available\": 30, \"stays\": 3, \"adr\": 159.91, \"revpar\": 101.27, \"occupancy\": 63.33, \"los\": 6.33}, \"5\": {\"revenue\": 937.86, \"nights\": 8, \"available\": 31, \"stays\": 1, \"adr\": 117.23, \"revpar\": 30.25, \"occupancy\": 25.81, \"los\": 8.0}, \"6\": {\"revenue\": 2347.61, \"nights\": 11, \"available\": 30, \"stays\": 2, \"adr\": 213.42, \"revpar\": 78.25, \"occupancy\": 36.67, \"los\": 5.5}, \"7\": {\"revenue\": 4041.03, \"nights\": 21, \"available\": 31, \"stays\": 3, \"adr\": 192.43, \"revpar\": 130.36, \"occupancy\": 67.74, \"los\": 7.0}, \"8\": {\"revenue\": 2468.43, \"nights\": 11, \"available\": 31, \"stays\": 2, \"adr\": 224.4, \"revpar\": 79.63, \"occupancy\": 35.48, \"los\": 5.5}, \"9\": {\"revenue\": 2704.12, \"nights\": 18, \"available\": 30, \"stays\": 3, \"adr\": 150.23, \"revpar\": 90.14, \"occupancy\": 60.0, \"los\": 6.0}, \"10\": {\"revenue\": 1087.94, \"nights\": 7, \"available\": 31, \"stays\": 1, \"adr\": 155.42, \"revpar\": 35.09, \"occupancy\": 22.58, \"los\": 7.0}, \"11\": {\"revenue\": 1200.76, \"nights\": 8, \"available\": 30, \"stays\": 2, \"adr\": 150.09, \"revpar\": 40.03, \"occupancy\": 26.67, \"los\": 4.0}, \"12\": {\"revenue\": 1896.29, \"nights\": 5, \"available\": 31, \"stays\": 1, \"adr\": 379.26, \"revpar\": 61.17, \"occupancy\": 16.13, \"los\": 5.0}}, \"2026\": {\"1\": {\"revenue\": 1041.34, \"nights\": 5, \"available\": 31, \"stays\": 2, \"adr\": 208.27, \"revpar\": 33.59, \"occupancy\": 16.13, \"los\": 2.5}, \"2\": {\"revenue\": 696.0, \"nights\": 5, \"available\": 28, \"stays\": 1, \"adr\": 139.2, \"revpar\": 24.86, \"occupancy\": 17.86, \"los\": 5.0}, \"3\": {\"revenue\": 3410.94, \"nights\": 22, \"available\": 31, \"stays\": 3, \"adr\": 155.04, \"revpar\": 110.03, \"occupancy\": 70.97, \"los\": 7.33}, \"4\": {\"revenue\": 502.15, \"nights\": 3, \"available\": 30, \"stays\": 1, \"adr\": 167.38, \"revpar\": 16.74, \"occupancy\": 10.0, \"los\": 3.0}, \"5\": {\"revenue\": 1818.8, \"nights\": 12, \"available\": 31, \"stays\": 3, \"adr\": 151.57, \"revpar\": 58.67, \"occupancy\": 38.71, \"los\": 4.0}, \"6\": {\"revenue\": 566.0, \"nights\": 4, \"available\": 30, \"stays\": 1, \"adr\": 141.5, \"revpar\": 18.87, \"occupancy\": 13.33, \"los\": 4.0}, \"7\": {\"revenue\": 2778.59, \"nights\": 12, \"available\": 31, \"stays\": 2, \"adr\": 231.55, \"revpar\": 89.63, \"occupancy\": 38.71, \"los\": 6.0}, \"8\": {\"revenue\": 2355.68, \"nights\": 10, \"available\": 31, \"stays\": 3, \"adr\": 235.57, \"revpar\": 75.99, \"occupancy\": 32.26, \"los\": 3.33}, \"9\": {\"revenue\": 2530.96, \"nights\": 14, \"available\": 30, \"stays\": 2, \"adr\": 180.78, \"revpar\": 84.37, \"occupancy\": 46.67, \"los\": 7.0}, \"10\": {\"revenue\": 4685.28, \"nights\": 27, \"available\": 31, \"stays\": 4, \"adr\": 173.53, \"revpar\": 151.14, \"occupancy\": 87.1, \"los\": 6.75}, \"11\": {\"revenue\": 2998.39, \"nights\": 14, \"available\": 30, \"stays\": 2, \"adr\": 214.17, \"revpar\": 99.95, \"occupancy\": 46.67, \"los\": 7.0}, \"12\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 31, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}}}, \"futureRevenue\": 10214.63, \"futureNights\": 55, \"memberData\": {\"Reina del Atl\u00e1ntico\": {\"2024\": {\"revenue\": 15107.89, \"nights\": 86, \"adr\": 175.67, \"los\": 6.62, \"available\": 366, \"revpar\": 41.28, \"occupancy\": 23.5, \"stays\": 13}, \"2025\": {\"revenue\": 26410.33, \"nights\": 149, \"adr\": 177.25, \"los\": 6.82, \"available\": 365, \"revpar\": 72.36, \"occupancy\": 40.82, \"stays\": 22}, \"2026\": {\"revenue\": 23384.14, \"nights\": 128, \"adr\": 182.69, \"los\": 6.65, \"available\": 365, \"revpar\": 64.07, \"occupancy\": 35.07, \"stays\": 20}}}};\nconst euro=n=>new Intl.NumberFormat('es-ES',{style:'currency',currency:'EUR',maximumFractionDigits:0}).format(n||0),euro2=n=>new Intl.NumberFormat('es-ES',{style:'currency',currency:'EUR',minimumFractionDigits:2,maximumFractionDigits:2}).format(n||0),num=n=>new Intl.NumberFormat('es-ES').format(Math.round(n||0));\nconst change=(a,b)=>a?((b\/a)-1)*100:0,p1=n=>(n>=0?'+':'')+n.toFixed(1)+'%',arrow=n=>n>=0?'\u25b2':'\u25bc';\ndocument.querySelectorAll('.nav button').forEach(b=>b.onclick=()=>{document.querySelectorAll('.nav button').forEach(x=>x.classList.remove('on'));document.querySelectorAll('.pane').forEach(x=>x.classList.remove('on'));b.classList.add('on');document.getElementById(b.dataset.pane).classList.add('on');window.scrollTo({top:0,behavior:'smooth'});});\nconst a=D.yearly['2025'],b=D.yearly['2026'];const rc=change(a.revenue,b.revenue),nc=change(a.nights,b.nights),rpc=change(a.revpar,b.revpar);\nrevCh.textContent=p1(rc);r25.textContent=euro(a.revenue);r26.textContent=euro(b.revenue);nCh.textContent=p1(nc);n25.textContent=num(a.nights);n26.textContent=num(b.nights);rpCh.textContent=p1(rpc);rp25.textContent=euro2(a.revpar);rp26.textContent=euro2(b.revpar);future.textContent=euro(D.futureRevenue);futureN.textContent=num(D.futureNights);assured.textContent=euro(b.revenue);\nadr.textContent=euro2(a.adr)+' \u2192 '+euro2(b.adr);adrD.textContent=arrow(change(a.adr,b.adr))+' '+Math.abs(change(a.adr,b.adr)).toFixed(1)+'%';adrD.className='delta '+(change(a.adr,b.adr)>=0?'up':'dn');\nocc.textContent=a.occupancy.toFixed(1)+'% \u2192 '+b.occupancy.toFixed(1)+'%';occD.textContent=(b.occupancy-a.occupancy>=0?'\u25b2 +':'\u25bc ')+Math.abs(b.occupancy-a.occupancy).toFixed(1)+' pp';occD.className='delta '+(b.occupancy>=a.occupancy?'up':'dn');\nlos.textContent=a.los.toFixed(1)+' \u2192 '+b.los.toFixed(1)+' noches';losD.textContent=arrow(change(a.los,b.los))+' '+Math.abs(change(a.los,b.los)).toFixed(1)+'%';losD.className='delta '+(change(a.los,b.los)>=0?'up':'dn');\nChart.defaults.font.family='Arial, Helvetica, sans-serif';Chart.defaults.color='#6D6962';\nnew Chart(revChart,{type:'bar',data:{labels:D.months,datasets:[{label:'2025',data:D.months.map((_,i)=>D.monthly['2025'][String(i+1)].revenue),backgroundColor:'#D1B38C',borderRadius:3},{label:'2026',data:D.months.map((_,i)=>D.monthly['2026'][String(i+1)].revenue),backgroundColor:'#4ABCC5',borderRadius:3}]},options:{maintainAspectRatio:false,plugins:{legend:{position:'bottom'},tooltip:{callbacks:{label:x=>x.dataset.label+': '+euro(x.raw)}}},scales:{y:{ticks:{callback:v=>euro(v)},grid:{color:'#EFEBE5'}},x:{grid:{display:false}}}}});\nnew Chart(kpiChart,{type:'bar',data:{labels:['ADR','RevPAR'],datasets:[{label:'2025',data:[a.adr,a.revpar],backgroundColor:'#D1B38C',borderRadius:4},{label:'2026',data:[b.adr,b.revpar],backgroundColor:'#4ABCC5',borderRadius:4}]},options:{maintainAspectRatio:false,plugins:{legend:{position:'bottom'}},scales:{y:{ticks:{callback:v=>v+' \u20ac'},grid:{color:'#EFEBE5'}},x:{grid:{display:false}}}}});\nD.months.forEach((name,i)=>{const m=String(i+1),x=D.monthly['2025'][m],y=D.monthly['2026'][m],ch=change(x.revenue,y.revenue),future=i>=8,css=i<8?'closed':i===8?'live':'future';monthGrid.insertAdjacentHTML('beforeend',`<div class=\"month ${css}\"><div class=\"mname\">${name}<\/div><div class=\"status\">${i<8?'Mes cerrado':i===8?'Mes en curso':'Reservas confirmadas'}<\/div><div class=\"compare\"><div class=\"box\"><div class=\"yr\">2025<\/div><div class=\"val\">${euro(x.revenue)}<\/div><\/div><div class=\"box\"><div class=\"yr\">2026<\/div><div class=\"val\">${euro(y.revenue)}<\/div><\/div><\/div><div class=\"result ${future?'neutral':ch>=0?'good':'bad'}\">${future?(y.revenue>=x.revenue?'Ya supera 2025':'Todav\u00eda puede crecer'):(arrow(ch)+' '+Math.abs(ch).toFixed(1)+'% de revenue')}<\/div><div class=\"metrics\"><div class=\"micro\"><div class=\"l\">ADR<\/div><div class=\"v\">${euro2(y.adr)}<\/div><div class=\"s\">2025: ${euro2(x.adr)}<\/div><\/div><div class=\"micro\"><div class=\"l\">RevPAR<\/div><div class=\"v\">${euro2(y.revpar)}<\/div><div class=\"s\">2025: ${euro2(x.revpar)}<\/div><\/div><div class=\"micro\"><div class=\"l\">Ocupaci\u00f3n<\/div><div class=\"v\">${y.occupancy.toFixed(1)}%<\/div><div class=\"s\">2025: ${x.occupancy.toFixed(1)}%<\/div><\/div><div class=\"micro\"><div class=\"l\">LOS<\/div><div class=\"v\">${y.los.toFixed(1)}<\/div><div class=\"s\">2025: ${x.los.toFixed(1)}<\/div><\/div><\/div><\/div>`);});\n\nD.months.forEach((x,i)=>period.insertAdjacentHTML('beforeend',`<option value=\"${i+1}\">${x}<\/option>`));\nfunction histItem(y,p){return p==='year'?D.yearly[y]:D.monthly[y][p]}\nfunction hist(){const x=histItem(ya.value,period.value),y=histItem(yb.value,period.value);histKpis.innerHTML=[['Revenue','revenue',euro],['Noches','nights',num],['ADR','adr',euro2],['RevPAR','revpar',euro2],['LOS','los',n=>(n||0).toFixed(1)]].map(([l,k,f])=>{const c=change(x[k],y[k]);return `<div class=\"hk\"><div class=\"l\">${l}<\/div><div class=\"pair\">${f(x[k])} \u2192 ${f(y[k])}<\/div><div class=\"chg ${c>=0?'up':'dn'}\">${x[k]?p1(c):'\u2014'}<\/div><\/div>`}).join('')}\n[ya,yb,period].forEach(x=>x.onchange=hist);hist();\n<\/script><\/body><\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-094f9ce e-flex e-con-boxed e-con e-parent\" data-id=\"094f9ce\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-48d6bc2 elementor-widget elementor-widget-html\" data-id=\"48d6bc2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!doctype html>\n<html lang=\"es\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n<title>Reina del Atl\u00e1ntico \u00b7 Villas Rivero<\/title>\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js@4.4.1\/dist\/chart.umd.min.js\"><\/script>\n<style>\n:root{\n --navy:#242B59;--sea:#4ABCC5;--sand:#D1B38C;--bg:#F7F6F3;--line:#E4E1DA;\n --muted:#6D6962;--up:#5BAE6A;--dn:#C97962;--upbg:#EEF8F0;--dnbg:#F8EDE8;\n --bluebg:#EDF8F9;--warn:#FFF8EC;\n}\n*{box-sizing:border-box}\nbody{margin:0;background:var(--bg);font-family:Arial,Helvetica,sans-serif;color:#171717;line-height:1.5}\n.wrap{max-width:1160px;margin:auto;padding:0 28px}\nheader{background:linear-gradient(135deg,#242B59,#30386C);color:#fff;padding:36px 0 32px;border-bottom:4px solid var(--sand)}\n.head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}\n.brand{font-family:Georgia,serif;font-style:italic;font-size:31px}.brand span{color:var(--sea)}\n.kicker{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#C2C7DC;margin-top:18px}\nh1{font-family:Georgia,serif;font-size:34px;font-weight:400;margin:5px 0 0}\n.meta{font-size:12px;color:#C7CBDE;line-height:1.7;text-align:right}.meta b{color:#fff}\nnav{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}\n.nav{display:flex;overflow:auto}.nav button{border:0;background:none;padding:15px 16px;font-size:12px;color:var(--muted);cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent}\n.nav button.on{color:var(--navy);font-weight:700;border-bottom-color:var(--sea)}\nmain{padding:36px 0 58px}.pane{display:none}.pane.on{display:block}section{margin-bottom:44px}\n.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#967A58;font-weight:700;margin-bottom:7px}\nh2{font-family:Georgia,serif;font-size:29px;font-weight:400;color:var(--navy);margin:0 0 7px}\nh3{font-family:Georgia,serif;font-size:21px;font-weight:400;color:var(--navy);margin:0 0 6px}\n.lead{font-size:14px;color:#5D5953;max-width:940px;margin:0 0 22px}\n\n.status-banner{background:#fff;border:1px solid var(--line);border-left:5px solid var(--sea);border-radius:9px;padding:18px 20px;margin-bottom:17px}\n.status-banner .big{font-family:Georgia,serif;font-size:24px;color:var(--navy);margin-bottom:4px}\n.status-banner p{margin:0;color:#555149;font-size:13px}\n.status-banner strong{color:var(--navy)}\n\n.hero{background:linear-gradient(135deg,#242B59,#333C74);border-radius:10px;color:#fff;padding:30px}\n.hero-title{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:#C9CDDF;margin-bottom:18px}\n.hero-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}\n.hlabel{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#C2C7DA}\n.hvalue{font-family:Georgia,serif;font-size:35px;color:var(--sea);margin-top:5px}\n.hdesc{font-size:11px;color:#CDD1E1}.hdesc strong{color:#F2D5B0}\n\n.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:17px}\n.kpi{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px}\n.kpi .l{font-size:9px;text-transform:uppercase;color:var(--muted)}\n.kpi .v{font-family:Georgia,serif;font-size:23px;color:var(--navy);margin:5px 0}\n.kpi .s{font-size:10px;color:var(--muted)}\n.delta{font-size:11px;font-weight:700}.up{color:var(--up)}.dn{color:var(--dn)}\n\n.block-section{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;margin-top:17px}\n.block-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:15px}\n.block-card{background:#F8F7F4;border-radius:8px;padding:15px}\n.block-card .l{font-size:9px;text-transform:uppercase;color:var(--muted)}\n.block-card .v{font-family:Georgia,serif;font-size:23px;color:var(--navy);margin:5px 0}\n.block-card .s{font-size:10px;color:var(--muted)}\n.impact{margin-top:16px;background:var(--warn);border-left:4px solid var(--sand);padding:15px 17px;border-radius:0 7px 7px 0;font-size:12.5px;color:#554F48}\n.impact strong{color:var(--navy)}\n.goodcall{margin-top:14px;background:var(--upbg);border-left:4px solid var(--up);padding:16px 18px;border-radius:0 8px 8px 0;font-size:13px;color:#3F5147}\n.goodcall strong{color:#2D6E3D}\n\n.two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:17px}\n.card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:20px}.chartbox{height:310px}\n\n.month-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}\n.month{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px;min-height:305px}\n.month.closed{border-top:4px solid var(--sea)}.month.live{border-top:4px solid var(--sand)}.month.future{border-top:4px solid #B9B3A8}\n.mname{font-family:Georgia,serif;font-size:21px;color:var(--navy)}\n.status{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:700}\n.compare{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}\n.box{background:#F7F6F3;border-radius:6px;padding:10px}.box .yr{font-size:8px;text-transform:uppercase;color:var(--muted)}.box .val{font-family:Georgia,serif;font-size:19px;color:var(--navy)}\n.result{font-size:11px;margin-top:9px;padding:7px 9px;border-radius:5px}\n.good{background:var(--upbg);color:var(--up);font-weight:700}.bad{background:var(--dnbg);color:var(--dn);font-weight:700}.neutral{background:#F4F1EA;color:#625D55}\n.metrics{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}\n.micro{border:1px solid var(--line);border-radius:6px;padding:8px}.micro .l{font-size:8px;text-transform:uppercase;color:var(--muted)}.micro .v{font-family:Georgia,serif;font-size:16px;color:var(--navy)}.micro .s{font-size:9px;color:var(--muted)}\n.blockline{margin-top:8px;padding:8px 9px;border-radius:6px;background:#F3F1EC;font-size:10px;color:#554F48}\n\n.hist-controls{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}\n.hist-controls label{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:700}\n.hist-controls select{display:block;margin-top:5px;padding:9px 11px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--navy)}\n.hist-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}\n.hk{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px}.hk .l{font-size:8px;text-transform:uppercase;color:var(--muted)}.hk .pair{font-family:Georgia,serif;font-size:17px;color:var(--navy);margin:4px 0}.hk .chg{font-size:10px;font-weight:700}\n.note{margin-top:13px;font-size:11px;color:var(--muted)}\nfooter{border-top:1px solid var(--line);padding:23px 0 30px;font-size:10.5px;color:var(--muted)}\n@media(max-width:900px){.hero-grid,.kpis,.block-grid{grid-template-columns:1fr 1fr}.month-grid{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}.hist-kpis{grid-template-columns:1fr 1fr}}\n@media(max-width:620px){.wrap{padding:0 15px}.meta{text-align:left}.hero-grid,.kpis,.block-grid,.month-grid,.hist-kpis{grid-template-columns:1fr}}\n<\/style>\n<\/head>\n<body>\n<header><div class=\"wrap\"><div class=\"head\">\n<div><div class=\"brand\">Villas <span>Rivero<\/span><\/div><div class=\"kicker\">Informe de rendimiento<\/div><h1>Reina del Atl\u00e1ntico<\/h1><\/div>\n<div class=\"meta\"><b>Situaci\u00f3n 2026 a fecha de extracci\u00f3n<\/b><br>2025 cerrado \u00b7 2026 todav\u00eda abierto<br>Bloqueos 2025\u20132026 incorporados<\/div>\n<\/div><\/div><\/header>\n\n<nav><div class=\"wrap nav\">\n<button class=\"on\" data-pane=\"resumen\">Situaci\u00f3n general<\/button>\n<button data-pane=\"meses\">Mes a mes<\/button>\n<button data-pane=\"historico\">Hist\u00f3rico 2024\u20132026<\/button>\n<\/div><\/nav>\n\n<main><div class=\"wrap\">\n<div class=\"pane on\" id=\"resumen\">\n\n<section>\n<div class=\"eyebrow\">Lectura principal<\/div><h2>Situaci\u00f3n general<\/h2>\n<div class=\"status-banner\">\n<div class=\"big\">2026 todav\u00eda no est\u00e1 cerrado<\/div>\n<p>La cifra actual de 2026 es <strong>producci\u00f3n ya confirmada<\/strong>, no el resultado final del ejercicio. Octubre y noviembre todav\u00eda tienen recorrido comercial y diciembre no tiene reservas registradas actualmente. Por eso no debe interpretarse la diferencia frente a 2025 como una ca\u00edda anual cerrada.<\/p>\n<\/div>\n\n<div class=\"hero\">\n<div class=\"hero-title\">Foto actual \u00b7 2025 cerrado vs 2026 abierto<\/div>\n<div class=\"hero-grid\">\n<div><div class=\"hlabel\">Revenue 2026 ya confirmado<\/div><div class=\"hvalue\" id=\"rev26\"><\/div><div class=\"hdesc\"><strong id=\"pct25\"><\/strong> de todo el revenue final de 2025<\/div><\/div>\n<div><div class=\"hlabel\">Bloqueos<\/div><div class=\"hvalue\" id=\"blockDiff\"><\/div><div class=\"hdesc\"><strong id=\"blocks\"><\/strong><\/div><\/div>\n<div><div class=\"hlabel\">Inventario vendible<\/div><div class=\"hvalue\" id=\"sellDelta\"><\/div><div class=\"hdesc\"><strong id=\"sellable\"><\/strong> noches<\/div><\/div>\n<div><div class=\"hlabel\">RevPAR ajustado<\/div><div class=\"hvalue\" id=\"rpChange\"><\/div><div class=\"hdesc\"><strong id=\"rpVals\"><\/strong><\/div><\/div>\n<\/div>\n<\/div>\n\n<div class=\"kpis\">\n<div class=\"kpi\"><div class=\"l\">Revenue 2025 final<\/div><div class=\"v\" id=\"rev25\"><\/div><div class=\"s\">ejercicio ya cerrado<\/div><\/div>\n<div class=\"kpi\"><div class=\"l\">Para igualar 2025<\/div><div class=\"v\" id=\"gap\"><\/div><div class=\"s\">reservas adicionales necesarias<\/div><\/div>\n<div class=\"kpi\"><div class=\"l\">ADR<\/div><div class=\"v\" id=\"adr\"><\/div><div class=\"delta up\" id=\"adrDelta\"><\/div><\/div>\n<div class=\"kpi\"><div class=\"l\">Ocupaci\u00f3n ajustada<\/div><div class=\"v\" id=\"occ\"><\/div><div class=\"delta up\" id=\"occDelta\"><\/div><\/div>\n<\/div>\n\n<div class=\"block-section\">\n<h3>C\u00f3mo est\u00e1n afectando los bloqueos<\/h3>\n<p class=\"lead\">La vivienda ha tenido bastante menos inventario disponible para vender en 2026. Esta diferencia debe leerse junto al revenue, no por separado.<\/p>\n<div class=\"block-grid\">\n<div class=\"block-card\"><div class=\"l\">Bloqueos 2025<\/div><div class=\"v\" id=\"b25\"><\/div><div class=\"s\" id=\"bp25\"><\/div><\/div>\n<div class=\"block-card\"><div class=\"l\">Bloqueos 2026<\/div><div class=\"v\" id=\"b26\"><\/div><div class=\"s\" id=\"bp26\"><\/div><\/div>\n<div class=\"block-card\"><div class=\"l\">Noches a la venta<\/div><div class=\"v\" id=\"sellCompare\"><\/div><div class=\"s\">55 noches menos comercializables<\/div><\/div>\n<div class=\"block-card\"><div class=\"l\">Peso de los bloqueos<\/div><div class=\"v\" id=\"blockPctChange\"><\/div><div class=\"s\">incremento sobre calendario<\/div><\/div>\n<\/div>\n<div class=\"impact\" id=\"impactText\"><\/div>\n<div class=\"goodcall\" id=\"performanceText\"><\/div>\n<\/div>\n\n<div class=\"two\">\n<div class=\"card\"><h3>Revenue mensual<\/h3><p class=\"lead\" style=\"margin-bottom:8px\">2026 muestra reservas actualmente confirmadas; los meses futuros todav\u00eda pueden crecer.<\/p><div class=\"chartbox\"><canvas id=\"revenueChart\"><\/canvas><\/div><\/div>\n<div class=\"card\"><h3>Bloqueos por mes<\/h3><p class=\"lead\" style=\"margin-bottom:8px\">Comparativa directa de noches bloqueadas en 2025 y 2026.<\/p><div class=\"chartbox\"><canvas id=\"blocksChart\"><\/canvas><\/div><\/div>\n<\/div>\n<\/section>\n<\/div>\n\n<div class=\"pane\" id=\"meses\"><section>\n<div class=\"eyebrow\">Evoluci\u00f3n mensual<\/div><h2>Mes a mes<\/h2>\n<p class=\"lead\">Cada mes incluye revenue, ADR, RevPAR ajustado, ocupaci\u00f3n ajustada y bloqueos. Septiembre est\u00e1 en curso; octubre, noviembre y diciembre son producci\u00f3n on the books y no meses cerrados.<\/p>\n<div class=\"month-grid\" id=\"monthGrid\"><\/div>\n<\/section><\/div>\n\n<div class=\"pane\" id=\"historico\"><section>\n<div class=\"eyebrow\">Consulta hist\u00f3rica<\/div><h2>Hist\u00f3rico 2024\u20132026<\/h2>\n<p class=\"lead\">2025\u20132026 pueden analizarse con bloqueos. Para 2024 no disponemos del mismo detalle de disponibilidad, por lo que el RevPAR hist\u00f3rico de ese ejercicio se mantiene sobre calendario.<\/p>\n<div class=\"hist-controls\">\n<label>A\u00f1o A<select id=\"ya\"><option>2024<\/option><option selected>2025<\/option><option>2026<\/option><\/select><\/label>\n<label>A\u00f1o B<select id=\"yb\"><option>2024<\/option><option>2025<\/option><option selected>2026<\/option><\/select><\/label>\n<label>Periodo<select id=\"period\"><option value=\"year\">A\u00f1o completo \/ OTB<\/option><\/select><\/label>\n<\/div>\n<div class=\"hist-kpis\" id=\"histKpis\"><\/div>\n<div class=\"note\">En 2026 los meses futuros reflejan \u00fanicamente reservas actualmente confirmadas.<\/div>\n<\/section><\/div>\n\n<\/div><\/main>\n<footer><div class=\"wrap\">Villas Rivero \u00b7 Reina del Atl\u00e1ntico \u00b7 Revenue y bloqueos 2025\u20132026<\/div><\/footer>\n\n<script>\nconst D={\"months\": [\"Enero\", \"Febrero\", \"Marzo\", \"Abril\", \"Mayo\", \"Junio\", \"Julio\", \"Agosto\", \"Septiembre\", \"Octubre\", \"Noviembre\", \"Diciembre\"], \"yearly\": {\"2024\": {\"revenue\": 15107.89, \"nights\": 86, \"available\": 366, \"stays\": 13, \"adr\": 175.67, \"revpar\": 41.28, \"occupancy\": 23.5, \"los\": 6.62}, \"2025\": {\"revenue\": 26410.33, \"nights\": 149, \"available\": 365, \"stays\": 22, \"adr\": 177.25, \"revpar\": 72.36, \"occupancy\": 40.82, \"los\": 6.77}, \"2026\": {\"revenue\": 23384.14, \"nights\": 128, \"available\": 365, \"stays\": 20, \"adr\": 182.69, \"revpar\": 64.07, \"occupancy\": 35.07, \"los\": 6.4}}, \"monthly\": {\"2024\": {\"1\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 31, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"2\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 29, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"3\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 31, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"4\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 30, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"5\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 31, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"6\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 30, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}, \"7\": {\"revenue\": 2128.0, \"nights\": 13, \"available\": 31, \"stays\": 3, \"adr\": 163.69, \"revpar\": 68.65, \"occupancy\": 41.94, \"los\": 4.33}, \"8\": {\"revenue\": 4598.42, \"nights\": 23, \"available\": 31, \"stays\": 2, \"adr\": 199.93, \"revpar\": 148.34, \"occupancy\": 74.19, \"los\": 11.5}, \"9\": {\"revenue\": 3084.39, \"nights\": 20, \"available\": 30, \"stays\": 3, \"adr\": 154.22, \"revpar\": 102.81, \"occupancy\": 66.67, \"los\": 6.67}, \"10\": {\"revenue\": 3484.85, \"nights\": 20, \"available\": 31, \"stays\": 4, \"adr\": 174.24, \"revpar\": 112.41, \"occupancy\": 64.52, \"los\": 5.0}, \"11\": {\"revenue\": 1302.23, \"nights\": 6, \"available\": 30, \"stays\": 2, \"adr\": 217.04, \"revpar\": 43.41, \"occupancy\": 20.0, \"los\": 3.0}, \"12\": {\"revenue\": 510.0, \"nights\": 4, \"available\": 31, \"stays\": 1, \"adr\": 127.5, \"revpar\": 16.45, \"occupancy\": 12.9, \"los\": 4.0}}, \"2025\": {\"1\": {\"revenue\": 3104.83, \"nights\": 22, \"available\": 31, \"stays\": 3, \"adr\": 141.13, \"revpar\": 100.16, \"occupancy\": 70.97, \"los\": 7.33}, \"2\": {\"revenue\": 2746.24, \"nights\": 12, \"available\": 28, \"stays\": 3, \"adr\": 228.85, \"revpar\": 98.08, \"occupancy\": 42.86, \"los\": 4.0}, \"3\": {\"revenue\": 837.0, \"nights\": 7, \"available\": 31, \"stays\": 1, \"adr\": 119.57, \"revpar\": 27.0, \"occupancy\": 22.58, \"los\": 7.0}, \"4\": {\"revenue\": 3038.22, \"nights\": 19, \"available\": 30, \"stays\": 3, \"adr\": 159.91, \"revpar\": 101.27, \"occupancy\": 63.33, \"los\": 6.33}, \"5\": {\"revenue\": 937.86, \"nights\": 8, \"available\": 31, \"stays\": 1, \"adr\": 117.23, \"revpar\": 30.25, \"occupancy\": 25.81, \"los\": 8.0}, \"6\": {\"revenue\": 2347.61, \"nights\": 11, \"available\": 30, \"stays\": 2, \"adr\": 213.42, \"revpar\": 78.25, \"occupancy\": 36.67, \"los\": 5.5}, \"7\": {\"revenue\": 4041.03, \"nights\": 21, \"available\": 31, \"stays\": 3, \"adr\": 192.43, \"revpar\": 130.36, \"occupancy\": 67.74, \"los\": 7.0}, \"8\": {\"revenue\": 2468.43, \"nights\": 11, \"available\": 31, \"stays\": 2, \"adr\": 224.4, \"revpar\": 79.63, \"occupancy\": 35.48, \"los\": 5.5}, \"9\": {\"revenue\": 2704.12, \"nights\": 18, \"available\": 30, \"stays\": 3, \"adr\": 150.23, \"revpar\": 90.14, \"occupancy\": 60.0, \"los\": 6.0}, \"10\": {\"revenue\": 1087.94, \"nights\": 7, \"available\": 31, \"stays\": 1, \"adr\": 155.42, \"revpar\": 35.09, \"occupancy\": 22.58, \"los\": 7.0}, \"11\": {\"revenue\": 1200.76, \"nights\": 8, \"available\": 30, \"stays\": 2, \"adr\": 150.09, \"revpar\": 40.03, \"occupancy\": 26.67, \"los\": 4.0}, \"12\": {\"revenue\": 1896.29, \"nights\": 5, \"available\": 31, \"stays\": 1, \"adr\": 379.26, \"revpar\": 61.17, \"occupancy\": 16.13, \"los\": 5.0}}, \"2026\": {\"1\": {\"revenue\": 1041.34, \"nights\": 5, \"available\": 31, \"stays\": 2, \"adr\": 208.27, \"revpar\": 33.59, \"occupancy\": 16.13, \"los\": 2.5}, \"2\": {\"revenue\": 696.0, \"nights\": 5, \"available\": 28, \"stays\": 1, \"adr\": 139.2, \"revpar\": 24.86, \"occupancy\": 17.86, \"los\": 5.0}, \"3\": {\"revenue\": 3410.94, \"nights\": 22, \"available\": 31, \"stays\": 3, \"adr\": 155.04, \"revpar\": 110.03, \"occupancy\": 70.97, \"los\": 7.33}, \"4\": {\"revenue\": 502.15, \"nights\": 3, \"available\": 30, \"stays\": 1, \"adr\": 167.38, \"revpar\": 16.74, \"occupancy\": 10.0, \"los\": 3.0}, \"5\": {\"revenue\": 1818.8, \"nights\": 12, \"available\": 31, \"stays\": 3, \"adr\": 151.57, \"revpar\": 58.67, \"occupancy\": 38.71, \"los\": 4.0}, \"6\": {\"revenue\": 566.0, \"nights\": 4, \"available\": 30, \"stays\": 1, \"adr\": 141.5, \"revpar\": 18.87, \"occupancy\": 13.33, \"los\": 4.0}, \"7\": {\"revenue\": 2778.59, \"nights\": 12, \"available\": 31, \"stays\": 2, \"adr\": 231.55, \"revpar\": 89.63, \"occupancy\": 38.71, \"los\": 6.0}, \"8\": {\"revenue\": 2355.68, \"nights\": 10, \"available\": 31, \"stays\": 3, \"adr\": 235.57, \"revpar\": 75.99, \"occupancy\": 32.26, \"los\": 3.33}, \"9\": {\"revenue\": 2530.96, \"nights\": 14, \"available\": 30, \"stays\": 2, \"adr\": 180.78, \"revpar\": 84.37, \"occupancy\": 46.67, \"los\": 7.0}, \"10\": {\"revenue\": 4685.28, \"nights\": 27, \"available\": 31, \"stays\": 4, \"adr\": 173.53, \"revpar\": 151.14, \"occupancy\": 87.1, \"los\": 6.75}, \"11\": {\"revenue\": 2998.39, \"nights\": 14, \"available\": 30, \"stays\": 2, \"adr\": 214.17, \"revpar\": 99.95, \"occupancy\": 46.67, \"los\": 7.0}, \"12\": {\"revenue\": 0.0, \"nights\": 0, \"available\": 31, \"stays\": 0, \"adr\": 0, \"revpar\": 0.0, \"occupancy\": 0.0, \"los\": 0}}}, \"blocks\": {\"2025\": {\"year\": {\"calendar\": 365, \"blocked\": 70, \"sellable\": 295, \"block_pct\": 19.18, \"revpar_adj\": 89.53, \"occ_adj\": 50.51}, \"months\": {\"1\": {\"calendar\": 31, \"blocked\": 5, \"sellable\": 26, \"block_pct\": 16.13, \"revpar_adj\": 119.42, \"occ_adj\": 84.62}, \"2\": {\"calendar\": 28, \"blocked\": 5, \"sellable\": 23, \"block_pct\": 17.86, \"revpar_adj\": 119.4, \"occ_adj\": 52.17}, \"3\": {\"calendar\": 31, \"blocked\": 2, \"sellable\": 29, \"block_pct\": 6.45, \"revpar_adj\": 28.86, \"occ_adj\": 24.14}, \"4\": {\"calendar\": 30, \"blocked\": 6, \"sellable\": 24, \"block_pct\": 20.0, \"revpar_adj\": 126.59, \"occ_adj\": 79.17}, \"5\": {\"calendar\": 31, \"blocked\": 2, \"sellable\": 29, \"block_pct\": 6.45, \"revpar_adj\": 32.34, \"occ_adj\": 27.59}, \"6\": {\"calendar\": 30, \"blocked\": 4, \"sellable\": 26, \"block_pct\": 13.33, \"revpar_adj\": 90.29, \"occ_adj\": 42.31}, \"7\": {\"calendar\": 31, \"blocked\": 5, \"sellable\": 26, \"block_pct\": 16.13, \"revpar_adj\": 155.42, \"occ_adj\": 80.77}, \"8\": {\"calendar\": 31, \"blocked\": 3, \"sellable\": 28, \"block_pct\": 9.68, \"revpar_adj\": 88.16, \"occ_adj\": 39.29}, \"9\": {\"calendar\": 30, \"blocked\": 4, \"sellable\": 26, \"block_pct\": 13.33, \"revpar_adj\": 104.0, \"occ_adj\": 69.23}, \"10\": {\"calendar\": 31, \"blocked\": 14, \"sellable\": 17, \"block_pct\": 45.16, \"revpar_adj\": 64.0, \"occ_adj\": 41.18}, \"11\": {\"calendar\": 30, \"blocked\": 13, \"sellable\": 17, \"block_pct\": 43.33, \"revpar_adj\": 70.63, \"occ_adj\": 47.06}, \"12\": {\"calendar\": 31, \"blocked\": 7, \"sellable\": 24, \"block_pct\": 22.58, \"revpar_adj\": 79.01, \"occ_adj\": 20.83}}}, \"2026\": {\"year\": {\"calendar\": 365, \"blocked\": 125, \"sellable\": 240, \"block_pct\": 34.25, \"revpar_adj\": 97.43, \"occ_adj\": 53.33}, \"months\": {\"1\": {\"calendar\": 31, \"blocked\": 19, \"sellable\": 12, \"block_pct\": 61.29, \"revpar_adj\": 86.78, \"occ_adj\": 41.67}, \"2\": {\"calendar\": 28, \"blocked\": 23, \"sellable\": 5, \"block_pct\": 82.14, \"revpar_adj\": 139.2, \"occ_adj\": 100.0}, \"3\": {\"calendar\": 31, \"blocked\": 7, \"sellable\": 24, \"block_pct\": 22.58, \"revpar_adj\": 142.12, \"occ_adj\": 91.67}, \"4\": {\"calendar\": 30, \"blocked\": 16, \"sellable\": 14, \"block_pct\": 53.33, \"revpar_adj\": 35.87, \"occ_adj\": 21.43}, \"5\": {\"calendar\": 31, \"blocked\": 11, \"sellable\": 20, \"block_pct\": 35.48, \"revpar_adj\": 90.94, \"occ_adj\": 60.0}, \"6\": {\"calendar\": 30, \"blocked\": 10, \"sellable\": 20, \"block_pct\": 33.33, \"revpar_adj\": 28.3, \"occ_adj\": 20.0}, \"7\": {\"calendar\": 31, \"blocked\": 7, \"sellable\": 24, \"block_pct\": 22.58, \"revpar_adj\": 115.77, \"occ_adj\": 50.0}, \"8\": {\"calendar\": 31, \"blocked\": 16, \"sellable\": 15, \"block_pct\": 51.61, \"revpar_adj\": 157.05, \"occ_adj\": 66.67}, \"9\": {\"calendar\": 30, \"blocked\": 9, \"sellable\": 21, \"block_pct\": 30.0, \"revpar_adj\": 120.52, \"occ_adj\": 66.67}, \"10\": {\"calendar\": 31, \"blocked\": 4, \"sellable\": 27, \"block_pct\": 12.9, \"revpar_adj\": 173.53, \"occ_adj\": 100.0}, \"11\": {\"calendar\": 30, \"blocked\": 3, \"sellable\": 27, \"block_pct\": 10.0, \"revpar_adj\": 111.05, \"occ_adj\": 51.85}, \"12\": {\"calendar\": 31, \"blocked\": 0, \"sellable\": 31, \"block_pct\": 0.0, \"revpar_adj\": 0.0, \"occ_adj\": 0.0}}}}, \"derived\": {\"pct_of_2025\": 88.54, \"gap_to_2025\": 3026.19, \"blocked_diff\": 55, \"sellable_change\": -18.64, \"block_pp\": 15.07, \"adr_change\": 3.07, \"revpar_change\": 8.82, \"occ_pp\": 2.82, \"blocked_capacity_2025_rp\": 4924.15, \"blocked_capacity_2026_rp\": 5358.65}};\nconst euro=n=>new Intl.NumberFormat('es-ES',{style:'currency',currency:'EUR',maximumFractionDigits:0}).format(n||0);\nconst euro2=n=>new Intl.NumberFormat('es-ES',{style:'currency',currency:'EUR',minimumFractionDigits:2,maximumFractionDigits:2}).format(n||0);\nconst num=n=>new Intl.NumberFormat('es-ES').format(Math.round(n||0));\nconst p1=n=>(n>=0?'+':'')+n.toFixed(1)+'%';\nconst change=(a,b)=>a?((b\/a)-1)*100:0;\ndocument.querySelectorAll('.nav button').forEach(b=>b.onclick=()=>{\n document.querySelectorAll('.nav button').forEach(x=>x.classList.remove('on'));\n document.querySelectorAll('.pane').forEach(x=>x.classList.remove('on'));\n b.classList.add('on');document.getElementById(b.dataset.pane).classList.add('on');window.scrollTo({top:0,behavior:'smooth'});\n});\n\nconst Y25=D.yearly['2025'],Y26=D.yearly['2026'],B25=D.blocks['2025'].year,B26=D.blocks['2026'].year,X=D.derived;\nrev26.textContent=euro(Y26.revenue);\npct25.textContent=X.pct_of_2025.toFixed(1)+'%';\nblockDiff.textContent='+'+num(X.blocked_diff);\nblocks.textContent=num(B25.blocked)+' \u2192 '+num(B26.blocked)+' noches';\nsellDelta.textContent=p1(X.sellable_change);\nsellable.textContent=num(B25.sellable)+' \u2192 '+num(B26.sellable);\nrpChange.textContent=p1(X.revpar_change);\nrpVals.textContent=euro2(B25.revpar_adj)+' \u2192 '+euro2(B26.revpar_adj);\n\nrev25.textContent=euro(Y25.revenue);\ngap.textContent=euro(X.gap_to_2025);\nadr.textContent=euro2(Y25.adr)+' \u2192 '+euro2(Y26.adr);\nadrDelta.textContent='\u25b2 +'+X.adr_change.toFixed(1)+'%';\nocc.textContent=B25.occ_adj.toFixed(1)+'% \u2192 '+B26.occ_adj.toFixed(1)+'%';\noccDelta.textContent='\u25b2 +'+X.occ_pp.toFixed(1)+' pp';\n\nb25.textContent=num(B25.blocked)+' noches';bp25.textContent=B25.block_pct.toFixed(1)+'% del calendario';\nb26.textContent=num(B26.blocked)+' noches';bp26.textContent=B26.block_pct.toFixed(1)+'% del calendario';\nsellCompare.textContent=num(B25.sellable)+' \u2192 '+num(B26.sellable);\nblockPctChange.textContent='+'+X.block_pp.toFixed(1)+' pp';\n\nimpactText.innerHTML=`En 2026 se han bloqueado <strong>${num(X.blocked_diff)} noches m\u00e1s<\/strong>. Eso reduce el inventario comercializable un <strong>${Math.abs(X.sellable_change).toFixed(1)}%<\/strong>. Para dimensionar el efecto: esas 55 noches, valoradas al RevPAR ajustado de 2025, representan aproximadamente <strong>${euro(X.blocked_capacity_2025_rp)}<\/strong> de capacidad potencial de producci\u00f3n que este a\u00f1o no ha estado disponible para vender. No es revenue garantizado, pero s\u00ed muestra que los bloqueos reducen de forma material el techo de ingresos.`;\n\nperformanceText.innerHTML=`Sobre las noches que s\u00ed han estado disponibles, el rendimiento <strong>mejora<\/strong>: ADR ${euro2(Y25.adr)} \u2192 ${euro2(Y26.adr)} (${p1(X.adr_change)}), ocupaci\u00f3n ajustada ${B25.occ_adj.toFixed(1)}% \u2192 ${B26.occ_adj.toFixed(1)}% (+${X.occ_pp.toFixed(1)} pp) y RevPAR ajustado ${euro2(B25.revpar_adj)} \u2192 ${euro2(B26.revpar_adj)} (${p1(X.revpar_change)}). Con 2026 todav\u00eda abierto, los datos no permiten leer la cifra actual como una ca\u00edda anual cerrada.`;\n\nChart.defaults.font.family='Arial, Helvetica, sans-serif';Chart.defaults.color='#6D6962';\n\nnew Chart(document.getElementById('revenueChart'),{\n type:'bar',\n data:{labels:D.months,datasets:[\n  {label:'2025',data:D.months.map((_,i)=>D.monthly['2025'][String(i+1)].revenue),backgroundColor:'#D1B38C',borderRadius:3},\n  {label:'2026 \u00b7 OTB',data:D.months.map((_,i)=>D.monthly['2026'][String(i+1)].revenue),backgroundColor:'#4ABCC5',borderRadius:3}\n ]},\n options:{maintainAspectRatio:false,plugins:{legend:{position:'bottom'},tooltip:{callbacks:{label:x=>x.dataset.label+': '+euro(x.raw)}}},scales:{y:{ticks:{callback:v=>euro(v)},grid:{color:'#EFEBE5'}},x:{grid:{display:false}}}}\n});\n\nnew Chart(document.getElementById('blocksChart'),{\n type:'bar',\n data:{labels:D.months,datasets:[\n  {label:'Bloqueos 2025',data:D.months.map((_,i)=>D.blocks['2025'].months[String(i+1)].blocked),backgroundColor:'#D1B38C',borderRadius:3},\n  {label:'Bloqueos 2026',data:D.months.map((_,i)=>D.blocks['2026'].months[String(i+1)].blocked),backgroundColor:'#4ABCC5',borderRadius:3}\n ]},\n options:{maintainAspectRatio:false,plugins:{legend:{position:'bottom'},tooltip:{callbacks:{label:x=>x.dataset.label+': '+num(x.raw)+' noches'}}},scales:{y:{beginAtZero:true,grid:{color:'#EFEBE5'},ticks:{precision:0}},x:{grid:{display:false}}}}\n});\n\nD.months.forEach((name,i)=>{\n const m=String(i+1),a=D.monthly['2025'][m],b=D.monthly['2026'][m],ba=D.blocks['2025'].months[m],bb=D.blocks['2026'].months[m];\n const status=i<8?'Mes cerrado':i===8?'Mes en curso':'Mes futuro \u00b7 reservas OTB';\n const css=i<8?'closed':i===8?'live':'future';\n let result='';\n if(i<8){\n   const ch=change(a.revenue,b.revenue);\n   result=`<div class=\"result ${ch>=0?'good':'bad'}\">${ch>=0?'\u25b2':'\u25bc'} ${Math.abs(ch).toFixed(1)}% de revenue<\/div>`;\n } else {\n   result=`<div class=\"result neutral\">${i===11 && b.revenue===0?'Sin reservas confirmadas actualmente \u00b7 mes todav\u00eda abierto':'Producci\u00f3n actualmente confirmada \u00b7 todav\u00eda puede crecer'}<\/div>`;\n }\n monthGrid.insertAdjacentHTML('beforeend',`<div class=\"month ${css}\">\n  <div class=\"mname\">${name}<\/div><div class=\"status\">${status}<\/div>\n  <div class=\"compare\"><div class=\"box\"><div class=\"yr\">2025 final<\/div><div class=\"val\">${euro(a.revenue)}<\/div><\/div><div class=\"box\"><div class=\"yr\">2026 actual<\/div><div class=\"val\">${euro(b.revenue)}<\/div><\/div><\/div>\n  ${result}\n  <div class=\"metrics\">\n   <div class=\"micro\"><div class=\"l\">ADR 2026<\/div><div class=\"v\">${euro2(b.adr)}<\/div><div class=\"s\">2025: ${euro2(a.adr)}<\/div><\/div>\n   <div class=\"micro\"><div class=\"l\">RevPAR ajustado<\/div><div class=\"v\">${euro2(bb.revpar_adj)}<\/div><div class=\"s\">2025: ${euro2(ba.revpar_adj)}<\/div><\/div>\n   <div class=\"micro\"><div class=\"l\">Ocupaci\u00f3n ajustada<\/div><div class=\"v\">${bb.occ_adj.toFixed(1)}%<\/div><div class=\"s\">2025: ${ba.occ_adj.toFixed(1)}%<\/div><\/div>\n   <div class=\"micro\"><div class=\"l\">Bloqueos 2026<\/div><div class=\"v\">${num(bb.blocked)}<\/div><div class=\"s\">2025: ${num(ba.blocked)}<\/div><\/div>\n  <\/div>\n  <div class=\"blockline\">Noches vendibles: <strong>${num(ba.sellable)} en 2025<\/strong> \u2192 <strong>${num(bb.sellable)} en 2026<\/strong> \u00b7 Bloqueo ${ba.block_pct.toFixed(1)}% \u2192 ${bb.block_pct.toFixed(1)}%<\/div>\n <\/div>`);\n});\n\nD.months.forEach((x,i)=>period.insertAdjacentHTML('beforeend',`<option value=\"${i+1}\">${x}<\/option>`));\n\nfunction histData(year,p){\n const base=p==='year'?D.yearly[year]:D.monthly[year][p];\n let out={...base};\n if((year==='2025'||year==='2026')){\n   const bl=p==='year'?D.blocks[year].year:D.blocks[year].months[p];\n   out.revpar_display=bl.revpar_adj;\n   out.occupancy_display=bl.occ_adj;\n   out.blocked=bl.blocked;\n }else{\n   out.revpar_display=base.revpar;\n   out.occupancy_display=base.occupancy;\n   out.blocked=null;\n }\n return out;\n}\nfunction renderHistory(){\n const a=histData(ya.value,period.value),b=histData(yb.value,period.value);\n const arr=[\n  ['Revenue','revenue',euro],\n  ['Noches','nights',num],\n  ['ADR','adr',euro2],\n  ['RevPAR','revpar_display',euro2],\n  ['Ocupaci\u00f3n','occupancy_display',n=>(n||0).toFixed(1)+'%']\n ];\n histKpis.innerHTML=arr.map(([l,k,f])=>{\n   const c=change(a[k]||0,b[k]||0);\n   return `<div class=\"hk\"><div class=\"l\">${l}<\/div><div class=\"pair\">${f(a[k]||0)} \u2192 ${f(b[k]||0)}<\/div><div class=\"chg ${c>=0?'up':'dn'}\">${a[k]?p1(c):'\u2014'}<\/div><\/div>`;\n }).join('');\n}\n[ya,yb,period].forEach(x=>x.onchange=renderHistory);renderHistory();\n<\/script>\n<\/body><\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\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>Reina del Atl\u00e1ntico \u00b7 Villas Rivero Villas RiveroInforme de rendimiento Reina del Atl\u00e1ntico 1 alojamiento(s)2025 cerrado \u00b7 2026 a fecha de hoyActualizado \u00b7 16\/09\/2026 Situaci\u00f3n generalMes a mesHist\u00f3rico 2024\u20132026 Visi\u00f3n global Situaci\u00f3n general 2025 est\u00e1 cerrado. 2026 incluye las reservas ya confirmadas hasta final de a\u00f1o y todav\u00eda puede seguir creciendo. 2025 completo vs 2026 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-1693","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Dashboard Reina del Atl\u00e1ntico - Villas Rivero<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/villasrivero.com\/en\/dashboard-reina-del-atlantico\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dashboard Reina del Atl\u00e1ntico - Villas Rivero\" \/>\n<meta property=\"og:description\" content=\"Reina del Atl\u00e1ntico \u00b7 Villas Rivero Villas RiveroInforme de rendimiento Reina del Atl\u00e1ntico 1 alojamiento(s)2025 cerrado \u00b7 2026 a fecha de hoyActualizado \u00b7 16\/09\/2026 Situaci\u00f3n generalMes a mesHist\u00f3rico 2024\u20132026 Visi\u00f3n global Situaci\u00f3n general 2025 est\u00e1 cerrado. 2026 incluye las reservas ya confirmadas hasta final de a\u00f1o y todav\u00eda puede seguir creciendo. 2025 completo vs 2026 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/villasrivero.com\/en\/dashboard-reina-del-atlantico\/\" \/>\n<meta property=\"og:site_name\" content=\"Villas Rivero\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-21T16:10:18+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/villasrivero.com\\\/dashboard-reina-del-atlantico\\\/\",\"url\":\"https:\\\/\\\/villasrivero.com\\\/dashboard-reina-del-atlantico\\\/\",\"name\":\"Dashboard Reina del Atl\u00e1ntico - Villas Rivero\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/villasrivero.com\\\/#website\"},\"datePublished\":\"2026-09-21T15:53:43+00:00\",\"dateModified\":\"2026-09-21T16:10:18+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/villasrivero.com\\\/dashboard-reina-del-atlantico\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/villasrivero.com\\\/dashboard-reina-del-atlantico\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/villasrivero.com\\\/dashboard-reina-del-atlantico\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/villasrivero.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dashboard Reina del Atl\u00e1ntico\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/villasrivero.com\\\/#website\",\"url\":\"https:\\\/\\\/villasrivero.com\\\/\",\"name\":\"Villas Rivero\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/villasrivero.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dashboard Reina del Atl\u00e1ntico - Villas Rivero","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/villasrivero.com\/en\/dashboard-reina-del-atlantico\/","og_locale":"en_GB","og_type":"article","og_title":"Dashboard Reina del Atl\u00e1ntico - Villas Rivero","og_description":"Reina del Atl\u00e1ntico \u00b7 Villas Rivero Villas RiveroInforme de rendimiento Reina del Atl\u00e1ntico 1 alojamiento(s)2025 cerrado \u00b7 2026 a fecha de hoyActualizado \u00b7 16\/09\/2026 Situaci\u00f3n generalMes a mesHist\u00f3rico 2024\u20132026 Visi\u00f3n global Situaci\u00f3n general 2025 est\u00e1 cerrado. 2026 incluye las reservas ya confirmadas hasta final de a\u00f1o y todav\u00eda puede seguir creciendo. 2025 completo vs 2026 [&hellip;]","og_url":"https:\/\/villasrivero.com\/en\/dashboard-reina-del-atlantico\/","og_site_name":"Villas Rivero","article_modified_time":"2026-09-21T16:10:18+00:00","twitter_card":"summary_large_image","twitter_misc":{"Estimated reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/villasrivero.com\/dashboard-reina-del-atlantico\/","url":"https:\/\/villasrivero.com\/dashboard-reina-del-atlantico\/","name":"Dashboard Reina del Atl\u00e1ntico - Villas Rivero","isPartOf":{"@id":"https:\/\/villasrivero.com\/#website"},"datePublished":"2026-09-21T15:53:43+00:00","dateModified":"2026-09-21T16:10:18+00:00","breadcrumb":{"@id":"https:\/\/villasrivero.com\/dashboard-reina-del-atlantico\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/villasrivero.com\/dashboard-reina-del-atlantico\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/villasrivero.com\/dashboard-reina-del-atlantico\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/villasrivero.com\/"},{"@type":"ListItem","position":2,"name":"Dashboard Reina del Atl\u00e1ntico"}]},{"@type":"WebSite","@id":"https:\/\/villasrivero.com\/#website","url":"https:\/\/villasrivero.com\/","name":"Villas Rivero","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/villasrivero.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"}]}},"_links":{"self":[{"href":"https:\/\/villasrivero.com\/en\/wp-json\/wp\/v2\/pages\/1693","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/villasrivero.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/villasrivero.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/villasrivero.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/villasrivero.com\/en\/wp-json\/wp\/v2\/comments?post=1693"}],"version-history":[{"count":10,"href":"https:\/\/villasrivero.com\/en\/wp-json\/wp\/v2\/pages\/1693\/revisions"}],"predecessor-version":[{"id":1703,"href":"https:\/\/villasrivero.com\/en\/wp-json\/wp\/v2\/pages\/1693\/revisions\/1703"}],"wp:attachment":[{"href":"https:\/\/villasrivero.com\/en\/wp-json\/wp\/v2\/media?parent=1693"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}