{"id":13231,"date":"2024-02-07T12:28:50","date_gmt":"2024-02-07T12:28:50","guid":{"rendered":"https:\/\/sierravillas.es\/tarifas-y-reservas\/"},"modified":"2024-07-01T10:23:39","modified_gmt":"2024-07-01T10:23:39","slug":"tarifas-y-reservas","status":"publish","type":"page","link":"https:\/\/sierravillas.es\/es\/tarifas-y-reservas\/","title":{"rendered":"Tarifas y reservas"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"13231\" class=\"elementor elementor-13231\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1519ad1 elementor-reverse-tablet elementor-reverse-mobile elementor-hidden-laptop elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1519ad1\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-145d970\" data-id=\"145d970\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-94898bb elementor-widget-laptop__width-initial elementor-widget elementor-widget-html\" data-id=\"94898bb\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div>\n<style>\n.container {\n    font-family: 'Playfair Display SC', serif;\n    max-width: 600px;\n    margin: 20px auto;\n    padding: 20px;\n    border-radius: 10px;\n    background-color: #f7f7f7;\n    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);\n}\n\n.container h2 {\n    font-family: 'Playfair Display SC', serif;\n    margin-bottom: 20px;\n    color: #6e3a14;\n    font-size: 32px;\n    text-align: center;\n}\n\nform label {\n    margin-top: 10px;\n    display: block;\n    font-weight: bold;\n    color: #6e3a14;\n    font-family: 'Playfair Display SC', serif;\n\n}\n\nform input[type=\"text\"],\nform input[type=\"email\"],\nform input[type=\"date\"],\nform textarea,\nform select,\nform input[type=\"number\"] {\n    font-family: 'Playfair Display SC', serif;\n    width: 100%;\n    padding: 10px;\n    margin-top: 5px;\n    margin-bottom: 15px;\n    border: 1px solid #ccc;\n    border-radius: 5px;\n    font-size: 16px;\n    color: #333;\n}\n\nform select {\n    appearance: none;\n    -webkit-appearance: none;\n    -moz-appearance: none;\n    background-image: url('data:image\/svg+xml;utf8,<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\" fill=\"%236e3a14\" width=\"18px\" height=\"18px\"><path d=\"M7 10l5 5 5-5H7z\"\/><path d=\"M0 0h24v24H0z\" fill=\"none\"\/><\/svg>');\n    background-repeat: no-repeat;\n    background-position: right 10px top 50%;\n    background-size: 18px 18px;\n    padding-right: 30px;\n    font-family: 'Playfair Display SC', serif;\n}\n\nform select:focus {\n    border-color: #6e3a14;\n}\n\nform button {\n    background-color: #6e3a14;\n    color: white;\n    padding: 12px 20px;\n    border: none;\n    border-radius: 5px;\n    cursor: pointer;\n    margin-top: 10px;\n    font-size: 16px;\n}\n\nform button:hover {\n    background-color: #8d4e1a;\n}\n\nfieldset {\n    font-family: 'Playfair Display SC', serif;\n    border: 1px solid #ccc;\n    border-radius: 5px;\n    padding: 10px;\n    margin-bottom: 15px;\n    flex-grow: 1;\n    width: 100%;\n}\n.month-selector {\n    display: flex;\n    justify-content: space-between;\n    margin-bottom: 32px;\n    width: 100%;\n}\nlegend {\n    font-weight: bold;\n    color: #6e3a14;\n}\n\n#calendar {\n    margin-top: 20px;\n    width: 100%;\n}\n\n.day {\n    padding: 5px;\n    border: 1px solid #ccc;\n    width: 100%;\n    box-sizing: border-box;\n    font-size: 12px;\n}\n\n.day.booked {\n    background-color: #ffcccc;\n    pointer-events: none;\n}\n\ninput[type=\"date\"].available {\n    background-color: lightgreen;\n    font-family: 'Playfair Display SC', serif;\n\n}\n\ninput[type=\"date\"].unavailable {\n    background-color: lightcoral;\n    font-family: 'Playfair Display SC', serif;\n}\n\ntable {\n    border-collapse: collapse;\n    width: 100%;\n}\n\nth, td {\n    border: 1px solid #dddddd;\n    text-align: center;\n    padding: 8px;\n}\n\nth {\n    background-color: #f2f2f2;\n}\n\ntd {\n    cursor: pointer;\n}\n\ntd:hover {\n    background-color: #f0f0f0;\n}\n\n.selected {\n    background-color: #c0c0c0;\n    color: white;\n}\n\n.selected-start,\n.selected-end {\n    background-color: #4CAF50;\n    color: white;\n}\n\n.unavailable {\n    background-color: #ff0000;\n    color: white;\n}\n\n.unavailable:hover {\n    cursor: not-allowed;\n}\n.fa-arrow-right:before {\n    padding-left: 5px;\n    transition: transform 0.3s ease, color 0.3s ease; \/* P\u0159id\u00e1n\u00ed p\u0159echodov\u00e9ho efektu pro transformaci a barvu *\/\n}\n\n.fa-arrow-right:hover:before {\n    transform: translateX(5px);\n    color: #8d4e1a; \/* Zm\u011bna barvy na sv\u011btlej\u0161\u00ed odst\u00edn hn\u011bd\u00e9 p\u0159i najet\u00ed my\u0161\u00ed *\/\n}\n.prev-month-btn{\n    padding: 5px;\n    min-width: 100px;\n}\n.next-month-btn{\n    padding: 5px;\n    min-width: 100px;\n}\n.selected-start-end{\n    background-color: green!important;\n}\n\/* Media queries pro responzivn\u00ed design *\/\n\n@media screen and (max-width: 768px) {\n    .container {\n        max-width: 90%;\n    }\n}\n\n@media screen and (max-width: 576px) {\n    form input[type=\"text\"],\n    form input[type=\"email\"],\n    form input[type=\"date\"],\n    form textarea,\n    form select,\n    form input[type=\"number\"] {\n        width: 100%;\n    }\n\n    .day {\n        font-size: 10px;\n    }\n}\n<\/style>\n\n\n\n\n<div class=\"container\">\n        <h2>Reservar estancia<\/h2>\n        <form id=\"order-form\" action=\"https:\/\/sierravillas.es\/process_form.php\" method=\"POST\" enctype=\"multipart\/form-data\">\n            <label for=\"name\">Nombre y apellidos<\/label><br>\n            <input type=\"text\" id=\"name\" name=\"name\" required=\"\"><br>\n            <label for=\"email\">E-mail:<\/label><br>\n            <input type=\"email\" id=\"email\" name=\"email\" required=\"\"><br>\n            <div style=\"display: flex; align-items: flex-start;\">\n                <div style=\"flex: 1;\">\n                    <label for=\"villa\">Seleccione una villa<\/label><br>\n                    <select id=\"villa\" name=\"villa\" required=\"\" onchange=\"updateUnavailableDates()\">\n                        <option value=\"\" disabled selected>Elige una villa<\/option>\n                        <option value=\"Casa Dominika\">Casa Dominika<\/option>\n                        <option value=\"Casa Thea\">Casa Thea<\/option>\n                    <\/select>\n                <\/div>\n                <div style=\"flex: 1; margin-left: 20px;\">\n                    <label for=\"persons\">Cantidad de personas:<\/label><br>\n                    <input type=\"number\" id=\"persons\" name=\"persons\" min=\"1\" max=\"12\" required=\"\">\n                <\/div>\n            <\/div>\n            <div>\n                <fieldset>\n                    <legend>Fechas de estancia:<\/legend>\n                    <div id=\"calendar\"><\/div>\n                    <input type=\"date\" id=\"startDate\" name=\"startDate\" style=\"display: none;\" required=\"\">\n                    <input type=\"date\" id=\"endDate\" name=\"endDate\" style=\"display: none;\" required=\"\">\n                <\/fieldset>\n            <\/div>\n            <label for=\"message\">Mensaje:<\/label><br>\n            <textarea id=\"message\" name=\"message\" rows=\"4\"><\/textarea><br>\n            <label for=\"terms\" style=\"font-size: 10px; color: grey;\">Al enviar el formulario, acepta los t\u00e9rminos y <a href=\"https:\/\/sierravillas.es\/obchodni-podminky\/\" target=\"_blank\" style=\"color: black\">condiciones comerciales.<\/a><\/label><br>\n            <div class=\"g-recaptcha\" data-sitekey=\"6LcKppQpAAAAAE1D6PeBOMmWyDSUZ-mHY8_v2EqT\" required=\"\"><\/div>\n            <button type=\"submit\">Consultar estancia <i class=\"fas fa-arrow-right\"><\/i><\/button>\n        <\/form>\n    <\/div>\n<script src=\"https:\/\/www.google.com\/recaptcha\/api.js\" async defer><\/script>\n<script>\nconst days = ['Po', '\u00dat', 'St', '\u010ct', 'P\u00e1', 'So', 'Ne']; \nconst months = ['Leden', '\u00danor', 'B\u0159ezen', 'Duben', 'Kv\u011bten', '\u010cerven', '\u010cervenec', 'Srpen', 'Z\u00e1\u0159\u00ed', '\u0158\u00edjen', 'Listopad', 'Prosinec'];\n\nlet currentDate = new Date();\nlet currentMonth = currentDate.getMonth();\nlet currentYear = currentDate.getFullYear();\nlet startDate = null;\nlet endDate = null;\nlet unavailableDates = {}; \/\/ Objekt pro uchov\u00e1n\u00ed nedostupn\u00fdch dat u jednotliv\u00fdch vil\n\nfunction updateUnavailableDates() {\n    const selectedVilla = document.getElementById('villa').value;\n    \/\/ Simulace na\u010dten\u00ed nedostupn\u00fdch dat z n\u011bjak\u00e9ho zdroje (nap\u0159. ze serveru)\n    if (selectedVilla === \"Casa Dominika\") {\n        \/\/ Nedostupn\u00e9 term\u00edny pro Casa Dominika\n        startDate = new Date(2024, 6, 13); \n        endDate = new Date(2024, 6, 19); \n        unavailableDates = [];\n        for (let date = new Date(startDate); date <= endDate; date.setDate(date.getDate() + 1)) {\n            unavailableDates.push(new Date(date));\n        }\n        \/\/ P\u0159id\u00e1n\u00ed nov\u00e9ho term\u00ednu: 26.6.2024 - 3.7.2024\n        startDate = new Date(2024, 5, 26); \n        endDate = new Date(2024, 6, 2); \n        for (let date = new Date(startDate); date <= endDate; date.setDate(date.getDate() + 1)) {\n            unavailableDates.push(new Date(date));\n        }\n        \/\/ P\u0159id\u00e1n\u00ed nov\u00e9ho term\u00ednu: 26.6.2024 - 3.7.2024\n        startDate = new Date(2024, 7, 3); \n        endDate = new Date(2024, 7, 9); \n        for (let date = new Date(startDate); date <= endDate; date.setDate(date.getDate() + 1)) {\n            unavailableDates.push(new Date(date));\n        }\n    } else if (selectedVilla === \"Casa Thea\") {\n        \/\/ Nedostupn\u00e9 term\u00edny pro Casa Thea\n        startDate = new Date(2024, 5, 21); \n        endDate = new Date(2024, 5, 30); \n        unavailableDates = [];\n        for (let date = new Date(startDate); date <= endDate; date.setDate(date.getDate() + 1)) {\n            unavailableDates.push(new Date(date));\n        }\n        \/\/ P\u0159id\u00e1n\u00ed dal\u0161\u00edho term\u00ednu pro Casa Thea: 15.7.2024 - 2.8.2024\n        const secondStartDate = new Date(2024, 6, 15); \n        const secondEndDate = new Date(2024, 7, 1); \n        for (let date = new Date(secondStartDate); date <= secondEndDate; date.setDate(date.getDate() + 1)) {\n            unavailableDates.push(new Date(date));\n        }\n        \/\/ P\u0159id\u00e1n\u00ed dal\u0161\u00edho term\u00ednu pro Casa Thea: 9.8.2024 - 26.8.2024\n        const thirdStartDate = new Date(2024, 7, 9); \n        const thirdEndDate = new Date(2024, 7, 25); \n        for (let date = new Date(thirdStartDate); date <= thirdEndDate; date.setDate(date.getDate() + 1)) {\n            unavailableDates.push(new Date(date));\n        }\n    } else {\n        unavailableDates = [];\n    }\n    renderCalendar();\n}\n\nfunction renderCalendar() {\n  const firstDayOfMonth = new Date(currentYear, currentMonth, 1);\n  const daysInMonth = new Date(currentYear, currentMonth + 1, 0).getDate();\n  let startingDay = firstDayOfMonth.getDay();\n\n  \/\/ Adjust starting day to start with Monday (0 represents Sunday, so we need to shift it by 1)\n  startingDay = (startingDay === 0) ? 6 : startingDay - 1;\n\n  const calendarDiv = document.getElementById('calendar');\n  calendarDiv.innerHTML = '';\n\n  \/\/ Render month and year\n  const monthYearHeader = document.createElement('h2');\n  monthYearHeader.textContent = `${months[currentMonth]} ${currentYear}`;\n  calendarDiv.appendChild(monthYearHeader);\n\n  \/\/ Render month selector\n  const monthSelector = document.createElement('div');\n  monthSelector.classList.add('month-selector');\n\n  const prevMonthBtn = document.createElement('button');\n  prevMonthBtn.textContent = 'P\u0159edchoz\u00ed';\n  prevMonthBtn.classList.add('prev-month-btn');\n  prevMonthBtn.addEventListener('click', prevMonth);\n  monthSelector.appendChild(prevMonthBtn);\n\n  const nextMonthBtn = document.createElement('button');\n  nextMonthBtn.textContent = 'Dal\u0161\u00ed';\n  nextMonthBtn.classList.add('next-month-btn');\n  nextMonthBtn.addEventListener('click', nextMonth);\n  monthSelector.appendChild(nextMonthBtn);\n\n  calendarDiv.appendChild(monthSelector);\n\n  \/\/ Render table\n  const table = document.createElement('table');\n  const thead = document.createElement('thead');\n  const tbody = document.createElement('tbody');\n\n  \/\/ Render days of the week\n  const tr = document.createElement('tr');\n  for (let i = 0; i < 7; i++) {\n    const th = document.createElement('th');\n    th.textContent = days[i];\n    tr.appendChild(th);\n  }\n  thead.appendChild(tr);\n\n  \/\/ Render calendar days\n  let date = 1;\n  for (let i = 0; i < 6; i++) {\n    const tr = document.createElement('tr');\n    for (let j = 0; j < 7; j++) {\n      const td = document.createElement('td');\n      if (i === 0 && j < startingDay) {\n        \/\/ Empty cells before the first day of the month\n        td.textContent = new Date(currentYear, currentMonth, -startingDay + j + 1).getDate();\n        td.classList.add('other-month');\n        tr.appendChild(td);\n      } else if (date > daysInMonth) {\n        \/\/ No more days left in the month\n        break;\n      } else {\n        td.textContent = date;\n        td.dataset.month = currentMonth;\n        td.dataset.year = currentYear;\n        td.addEventListener('click', () => {\n          if (!td.classList.contains('unavailable')) {\n            selectDate(td);\n          }\n        });\n\n        const currentDate = new Date(currentYear, currentMonth, date);\n        const isUnavailable = unavailableDates.some(unavailableDate => currentDate.getTime() === unavailableDate.getTime());\n        if (isUnavailable) {\n            td.classList.add('unavailable');\n        } else if (startDate && currentDate >= startDate && currentDate <= endDate) {\n          td.classList.add('selected');\n          if (startDate.getTime() === currentDate.getTime() || endDate.getTime() === currentDate.getTime()) {\n            td.classList.add('selected-start-end');\n          }\n        } else if (startDate && currentDate.getTime() === startDate.getTime()) {\n          td.classList.add('selected-start');\n          td.classList.add('selected-start-end');\n        } else if (endDate && currentDate.getTime() === endDate.getTime()) {\n          td.classList.add('selected-end');\n          td.classList.add('selected-start-end');\n        }\n        tr.appendChild(td);\n        date++;\n      }\n    }\n    tbody.appendChild(tr);\n  }\n\n  table.appendChild(thead);\n  table.appendChild(tbody);\n  calendarDiv.appendChild(table);\n  \n  \/\/ P\u0159idejte vol\u00e1n\u00ed funkce pro nastaven\u00ed dat term\u00ednu pobytu po vykreslen\u00ed kalend\u00e1\u0159e\n  setStayDates();\n}\n\nfunction selectDate(td) {\n  const clickedDate = new Date(td.dataset.year, td.dataset.month, parseInt(td.textContent));\n  \n  if (!startDate || (startDate && endDate)) {\n    startDate = clickedDate;\n    endDate = null;\n  } else if (clickedDate < startDate) {\n    endDate = startDate;\n    startDate = clickedDate;\n  } else {\n    endDate = clickedDate;\n    \/\/ Po\u010det noc\u00ed mezi vybran\u00fdmi daty\n    const nights = (endDate - startDate) \/ (1000 * 60 * 60 * 24);\n    if (nights < 5) {\n      alert(\"Minim\u00e1ln\u011b 5 noc\u00ed je po\u017eadov\u00e1no.\");\n      endDate = null; \n    }\n  }\n  renderCalendar();\n}\n\nfunction prevMonth() {\n  currentMonth--;\n  if (currentMonth < 0) {\n    currentMonth = 11;\n    currentYear--;\n  }\n  renderCalendar();\n}\n\nfunction nextMonth() {\n  currentMonth++;\n  if (currentMonth > 11) {\n    currentMonth = 0;\n    currentYear++;\n  }\n  renderCalendar();\n}\n\ndocument.getElementById('order-form').addEventListener('submit', function(event) {\n    \/\/ event.preventDefault(); \/\/ Tuto \u0159\u00e1dku m\u016f\u017eete odebrat\n    \/\/ submitForm(); \/\/ Tuto \u0159\u00e1dku m\u016f\u017eete odebrat nebo p\u0159idat funkci submitForm()\n});\n\nfunction setStayDates() {\n  if (startDate && endDate) {\n    document.getElementById('startDate').value = formatDate(startDate);\n    document.getElementById('endDate').value = formatDate(endDate);\n  }\n}\n\n\/\/ Funkce pro form\u00e1tov\u00e1n\u00ed data ve form\u00e1tu YYYY-MM-DD\nfunction formatDate(date) {\n  const year = date.getFullYear();\n  const month = (date.getMonth() + 1).toString().padStart(2, '0');\n  const day = date.getDate().toString().padStart(2, '0');\n  return `${year}-${month}-${day}`;\n}\n\n document.getElementById('order-form').addEventListener('submit', function(event) {\n        var response = grecaptcha.getResponse();\n        if (response.length == 0) {\n            alert(\"Pros\u00edm, potvr\u010fte, \u017ee nejste robot.\");\n            event.preventDefault(); \/\/ Zabra\u0148uje odesl\u00e1n\u00ed formul\u00e1\u0159e\n        }\n    });\n<\/script>\n\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-de7db38\" data-id=\"de7db38\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ed2c7b3 elementor-widget elementor-widget-html\" data-id=\"ed2c7b3\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.pricing-table {\n     font-family: 'Playfair Display SC', serif;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    margin-top: 50px;\n}\n\n.plan {\n     font-family: 'Playfair Display SC', serif;\n    border-radius: 20px;\n    padding: 10px;\n    margin: 20px;\n    width: 450px;\n    text-align: center;\n    transition: transform 0.3s ease;\n    background-color: #fff;\n    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n}\n\n.plan:hover {\n    transform: translateY(-5px);\n}\n\n.plan-name {\n    font-family: 'Playfair Display SC', serif;\n    font-size: 40px;\n    margin-bottom: 20px;\n    color: #6c3e00;\n}\n\n.plan-details {\n    padding: 0;\n}\n\n.detail {\n    margin-bottom: 15px;\n}\n\n.season {\n    display: block;\n    font-size: 22px;\n    color: #6c3e00;\n    font-weight: 500;\n}\n\n.price {\n    display: inline-block; \n    font-size: 15px;\n    color: #fff;\n    background-color: #9b5900; \n    padding: 10px 20px; \n    margin-bottom: 10px; \n    font-weight: bold;\n}\n\n.period {\n    display: block;\n    font-size: 22px;\n    color: #6c3e00;\n}\n<\/style><body>\n  <div class=\"pricing-table\">\n    <div class=\"plan dominika\">\n      <h2 class=\"plan-name\">Dominika<\/h2>\n      <div class=\"plan-details\">\n        <div class=\"detail\">\n          <span class=\"season\">Temporada de verano:<\/span>\n          <span class=\"period\">29.6.-1.9.<\/span>\n        <\/div>\n        <div class=\"detail\">\n          <span class=\"price\">265 euros \/ noche<\/span>\n        <\/div>\n      <\/div>\n      <div class=\"plan-details\">\n        <div class=\"detail\">\n          <span class=\"season\">Temporada de primavera y oto\u00f1o:<\/span>\n          <span class=\"period\">2.9.-1.11. y 1.5.-28.6.<\/span>\n        <\/div>\n        <div class=\"detail\">\n          <span class=\"price\">245 euros \/ noche<\/span>\n        <\/div>\n      <\/div>\n      <div class=\"plan-details\">\n        <div class=\"detail\">\n          <span class=\"season\">Temporada de invierno:<\/span>\n          <span class=\"period\">2.11.-30.4.<\/span>\n        <\/div>\n        <div class=\"detail\">\n          <span class=\"price\">225 euros \/ noche<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/body>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-33 elementor-top-column elementor-element elementor-element-00aebd3\" data-id=\"00aebd3\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-048909f elementor-widget elementor-widget-html\" data-id=\"048909f\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.pricing-table {\n     font-family: 'Playfair Display SC', serif;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    margin-top: 50px;\n}\n\n.plan {\n     font-family: 'Playfair Display SC', serif;\n    border-radius: 20px;\n    padding: 10px;\n    margin: 20px;\n    width: 450px;\n    text-align: center;\n    transition: transform 0.3s ease;\n    background-color: #fff;\n    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n}\n\n.plan:hover {\n    transform: translateY(-5px);\n}\n\n.plan-name {\n    font-family: 'Playfair Display SC', serif;\n    font-size: 40px;\n    margin-bottom: 20px;\n    color: #6c3e00;\n}\n\n.plan-details {\n    padding: 0;\n}\n\n.detail {\n    margin-bottom: 15px;\n}\n\n.season {\n    display: block;\n    font-size: 22px;\n    color: #6c3e00;\n    font-weight: 500;\n}\n\n.price {\n    display: inline-block; \n    font-size: 15px;\n    color: #fff;\n    background-color: #9b5900; \n    padding: 10px 20px; \n    margin-bottom: 10px; \n    font-weight: bold;\n}\n\n.period {\n    display: block;\n    font-size: 22px;\n    color: #6c3e00;\n}\n<\/style><body>\n  <div class=\"pricing-table\">\n    <div class=\"plan thea\">\n      <h2 class=\"plan-name\">Thea<\/h2>\n      <div class=\"plan-details\">\n        <div class=\"detail\">\n          <span class=\"season\">Temporada de verano:<\/span>\n          <span class=\"period\">29.6.-1.9.<\/span>\n        <\/div>\n        <div class=\"detail\">\n          <span class=\"price\">255 euros \/ noche<\/span>\n        <\/div>\n      <\/div>\n      <div class=\"plan-details\">\n        <div class=\"detail\">\n          <span class=\"season\">Temporada de primavera y oto\u00f1o:<\/span>\n          <span class=\"period\">2.9.-1.11. y 1.5.-28.6.<\/span>\n        <\/div>\n        <div class=\"detail\">\n          <span class=\"price\">235 euros \/ noche<\/span> \n        <\/div>\n      <\/div>\n      <div class=\"plan-details\">\n        <div class=\"detail\">\n          <span class=\"season\">Temporada de invierno:<\/span>\n          <span class=\"period\">2.11.-30.4.<\/span>\n        <\/div>\n        <div class=\"detail\">\n          <span class=\"price\">220 euros \/ noche<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/body>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-32a945a elementor-reverse-tablet elementor-reverse-mobile elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"32a945a\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-528a3af\" data-id=\"528a3af\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ea1e87a elementor-widget-laptop__width-initial elementor-widget elementor-widget-html\" data-id=\"ea1e87a\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div><style>\n.container {\n    font-family: 'Playfair Display SC', serif;\n    max-width: 600px;\n    margin: 20px auto;\n    padding: 20px;\n    border-radius: 10px;\n    background-color: #f7f7f7;\n    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);\n}\n\n.container h2 {\n    font-family: 'Playfair Display SC', serif;\n    margin-bottom: 20px;\n    color: #6e3a14;\n    font-size: 32px;\n    text-align: center;\n}\n\nform label {\n    margin-top: 10px;\n    display: block;\n    font-weight: bold;\n    color: #6e3a14;\n    font-family: 'Playfair Display SC', serif;\n\n}\n\nform input[type=\"text\"],\nform input[type=\"email\"],\nform input[type=\"date\"],\nform textarea,\nform select,\nform input[type=\"number\"] {\n    font-family: 'Playfair Display SC', serif;\n    width: 100%;\n    padding: 10px;\n    margin-top: 5px;\n    margin-bottom: 15px;\n    border: 1px solid #ccc;\n    border-radius: 5px;\n    font-size: 16px;\n    color: #333;\n}\n\nform select {\n    appearance: none;\n    -webkit-appearance: none;\n    -moz-appearance: none;\n    background-image: url('data:image\/svg+xml;utf8,<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\" fill=\"%236e3a14\" width=\"18px\" height=\"18px\"><path d=\"M7 10l5 5 5-5H7z\"\/><path d=\"M0 0h24v24H0z\" fill=\"none\"\/><\/svg>');\n    background-repeat: no-repeat;\n    background-position: right 10px top 50%;\n    background-size: 18px 18px;\n    padding-right: 30px;\n    font-family: 'Playfair Display SC', serif;\n}\n\nform select:focus {\n    border-color: #6e3a14;\n}\n\nform button {\n    background-color: #6e3a14;\n    color: white;\n    padding: 12px 20px;\n    border: none;\n    border-radius: 5px;\n    cursor: pointer;\n    margin-top: 10px;\n    font-size: 16px;\n}\n\nform button:hover {\n    background-color: #8d4e1a;\n}\n\nfieldset {\n    font-family: 'Playfair Display SC', serif;\n    border: 1px solid #ccc;\n    border-radius: 5px;\n    padding: 10px;\n    margin-bottom: 15px;\n    flex-grow: 1;\n    width: 100%;\n}\n.month-selector {\n    display: flex;\n    justify-content: space-between;\n    margin-bottom: 32px;\n    width: 100%;\n}\nlegend {\n    font-weight: bold;\n    color: #6e3a14;\n}\n\n#calendar {\n    margin-top: 20px;\n    width: 100%;\n}\n\n.day {\n    padding: 5px;\n    border: 1px solid #ccc;\n    width: 100%;\n    box-sizing: border-box;\n    font-size: 12px;\n}\n\n.day.booked {\n    background-color: #ffcccc;\n    pointer-events: none;\n}\n\ninput[type=\"date\"].available {\n    background-color: lightgreen;\n    font-family: 'Playfair Display SC', serif;\n\n}\n\ninput[type=\"date\"].unavailable {\n    background-color: lightcoral;\n    font-family: 'Playfair Display SC', serif;\n}\n\ntable {\n    border-collapse: collapse;\n    width: 100%;\n}\n\nth, td {\n    border: 1px solid #dddddd;\n    text-align: center;\n    padding: 8px;\n}\n\nth {\n    background-color: #f2f2f2;\n}\n\ntd {\n    cursor: pointer;\n}\n\ntd:hover {\n    background-color: #f0f0f0;\n}\n\n.selected {\n    background-color: #c0c0c0;\n    color: white;\n}\n\n.selected-start,\n.selected-end {\n    background-color: #4CAF50;\n    color: white;\n}\n\n.unavailable {\n    background-color: #ff0000;\n    color: white;\n}\n\n.unavailable:hover {\n    cursor: not-allowed;\n}\n.fa-arrow-right:before {\n    padding-left: 5px;\n    transition: transform 0.3s ease, color 0.3s ease; \/* P\u0159id\u00e1n\u00ed p\u0159echodov\u00e9ho efektu pro transformaci a barvu *\/\n}\n\n.fa-arrow-right:hover:before {\n    transform: translateX(5px);\n    color: #8d4e1a; \/* Zm\u011bna barvy na sv\u011btlej\u0161\u00ed odst\u00edn hn\u011bd\u00e9 p\u0159i najet\u00ed my\u0161\u00ed *\/\n}\n.prev-month-btn{\n    padding: 5px;\n    min-width: 100px;\n}\n.next-month-btn{\n    padding: 5px;\n    min-width: 100px;\n}\n.selected-start-end{\n    background-color: green!important;\n}\n\/* Media queries pro responzivn\u00ed design *\/\n\n@media screen and (max-width: 768px) {\n    .container {\n        max-width: 90%;\n    }\n}\n\n@media screen and (max-width: 576px) {\n    form input[type=\"text\"],\n    form input[type=\"email\"],\n    form input[type=\"date\"],\n    form textarea,\n    form select,\n    form input[type=\"number\"] {\n        width: 100%;\n    }\n\n    .day {\n        font-size: 10px;\n    }\n}\n<\/style>\n\n\n\n\n<div class=\"container\">\n    <h2>Reservar estancia<\/h2>\n    <form id=\"order-form\" action=\"https:\/\/sierravillas.es\/process_form.php\" method=\"POST\" enctype=\"multipart\/form-data\">\n        <label for=\"name\">Nombre y apellidos<\/label><br>\n        <input type=\"text\" id=\"name\" name=\"name\" required=\"\"><br>\n        <label for=\"email\">E-mail:<\/label><br>\n        <input type=\"email\" id=\"email\" name=\"email\" required=\"\"><br>\n        <div style=\"display: flex; align-items: flex-start;\">\n            <div style=\"flex: 1;\">\n                <label for=\"villa\">Seleccione una villa<\/label><br>\n                <select id=\"villa\" name=\"villa\" required=\"\" onchange=\"updateUnavailableDates()\">\n                    <option value=\"\" disabled selected>Elige una villa<\/option>\n                    <option value=\"Casa Dominika\">Casa Dominika<\/option>\n                    <option value=\"Casa Thea\">Casa Thea<\/option>\n                <\/select>\n            <\/div>\n            <div style=\"flex: 1; margin-left: 20px;\">\n                <label for=\"persons\">Cantidad de personas:<\/label><br>\n                <input type=\"number\" id=\"persons\" name=\"persons\" min=\"1\" max=\"12\" required=\"\">\n            <\/div>\n        <\/div>\n        <div>\n            <fieldset>\n                <legend>Fechas de estancia:<\/legend>\n                <div id=\"calendar\"><\/div>\n                <input type=\"date\" id=\"startDate\" name=\"startDate\" style=\"display: none;\" required=\"\">\n                <input type=\"date\" id=\"endDate\" name=\"endDate\" style=\"display: none;\" required=\"\">\n            <\/fieldset>\n        <\/div>\n        <label for=\"message\">Mensaje:<\/label><br>\n        <textarea id=\"message\" name=\"message\" rows=\"4\"><\/textarea><br>\n        <label for=\"terms\" style=\"font-size: 10px; color: grey;\">Al enviar el formulario, acepta los t\u00e9rminos y <a href=\"https:\/\/sierravillas.es\/obchodni-podminky\/\" target=\"_blank\" style=\"color: black\">condiciones comerciales.<\/a><\/label><br>\n        <button type=\"submit\">Consultar estancia <i class=\"fas fa-arrow-right\"><\/i><\/button>\n    <\/form>\n<\/div>\n\n<script>\nconst days = ['Po', '\u00dat', 'St', '\u010ct', 'P\u00e1', 'So', 'Ne']; \nconst months = ['Leden', '\u00danor', 'B\u0159ezen', 'Duben', 'Kv\u011bten', '\u010cerven', '\u010cervenec', 'Srpen', 'Z\u00e1\u0159\u00ed', '\u0158\u00edjen', 'Listopad', 'Prosinec'];\n\nlet currentDate = new Date();\nlet currentMonth = currentDate.getMonth();\nlet currentYear = currentDate.getFullYear();\nlet startDate = null;\nlet endDate = null;\nlet unavailableDates = {}; \/\/ Objekt pro uchov\u00e1n\u00ed nedostupn\u00fdch dat u jednotliv\u00fdch vil\n\nfunction updateUnavailableDates() {\n    const selectedVilla = document.getElementById('villa').value;\n    \/\/ Simulace na\u010dten\u00ed nedostupn\u00fdch dat z n\u011bjak\u00e9ho zdroje (nap\u0159. ze serveru)\n    if (selectedVilla === \"Casa Dominika\") {\n        \/\/ Nedostupn\u00e9 term\u00edny pro Casa Dominika\n        startDate = new Date(2024, 6, 13); \n        endDate = new Date(2024, 6, 20); \n        unavailableDates = [];\n        for (let date = new Date(startDate); date <= endDate; date.setDate(date.getDate() + 1)) { unavailableDates.push(new Date(date)); } } else if (selectedVilla === \"Casa Thea\") { \/\/ Nedostupn\u00e9 term\u00edny pro Casa Theas startDate = new Date(2024, 5, 21); endDate = new Date(2024, 6, 1); unavailableDates = []; for (let date = new Date(startDate); date <= endDate; date.setDate(date.getDate() + 1)) { unavailableDates.push(new Date(date)); } \/\/ P\u0159id\u00e1n\u00ed term\u00ednu pro Casa Thea: 21.6.2024 - 1.7.2024 const secondStartDate = new Date(2024, 5, 21); const secondEndDate = new Date(2024, 6, 1); for (let date = new Date(secondStartDate); date <= secondEndDate; date.setDate(date.getDate() + 1)) { unavailableDates.push(new Date(date)); } \/\/ P\u0159id\u00e1n\u00ed term\u00ednu pro Casa Thea: 21.6.2024 - 1.7.2024 const thirdStartDate = new Date(2024, 5, 21); const thirdEndDate = new Date(2024, 6, 1); for (let date = new Date(thirdStartDate); date <= thirdEndDate; date.setDate(date.getDate() + 1)) { unavailableDates.push(new Date(date)); } } else { unavailableDates = []; } renderCalendar(); } function renderCalendar() { const firstDayOfMonth = new Date(currentYear, currentMonth, 1); const daysInMonth = new Date(currentYear, currentMonth + 1, 0).getDate(); let startingDay = firstDayOfMonth.getDay(); \/\/ Adjust starting day to start with Monday (0 represents Sunday, so we need to shift it by 1) startingDay = (startingDay === 0) ? 6 : startingDay - 1; const calendarDiv = document.getElementById('calendar'); calendarDiv.innerHTML = ''; \/\/ Render month and year const monthYearHeader = document.createElement('h2'); monthYearHeader.textContent = `${months[currentMonth]} ${currentYear}`; calendarDiv.appendChild(monthYearHeader); \/\/ Render month selector const monthSelector = document.createElement('div'); monthSelector.classList.add('month-selector'); const prevMonthBtn = document.createElement('button'); prevMonthBtn.textContent = 'P\u0159edchoz\u00ed'; prevMonthBtn.classList.add('prev-month-btn'); prevMonthBtn.addEventListener('click', prevMonth); monthSelector.appendChild(prevMonthBtn); const nextMonthBtn = document.createElement('button'); nextMonthBtn.textContent = 'Dal\u0161\u00ed'; nextMonthBtn.classList.add('next-month-btn'); nextMonthBtn.addEventListener('click', nextMonth); monthSelector.appendChild(nextMonthBtn); calendarDiv.appendChild(monthSelector); \/\/ Render table const table = document.createElement('table'); const thead = document.createElement('thead'); const tbody = document.createElement('tbody'); \/\/ Render days of the week const tr = document.createElement('tr'); for (let i = 0; i <7; i++) { const th = document.createElement('th'); th.textContent = days[i]; tr.appendChild(th); } thead.appendChild(tr); \/\/ Render calendar days let date = 1; for (let i = 0; i <6; i++) { const tr = document.createElement('tr'); for (let j = 0; j <7; j++) { const td = document.createElement('td'); if (i === 0 && j <startingDay) { \/\/ Empty cells before the first day of the month td.textContent = new Date(currentYear, currentMonth, -startingDay + j + 1).getDate(); td.classList.add('other-month'); tr.appendChild(td); } else if (date> daysInMonth) {\n        \/\/ No more days left in the month\n        break;\n      } else {\n        td.textContent = date;\n        td.dataset.month = currentMonth;\n        td.dataset.year = currentYear;\n        td.addEventListener('click', () => {\n          if (!td.classList.contains('unavailable')) {\n            selectDate(td);\n          }\n        });\n\n        const currentDate = new Date(currentYear, currentMonth, date);\n        const isUnavailable = unavailableDates.some(unavailableDate => currentDate.getTime() === unavailableDate.getTime());\n        if (isUnavailable) {\n            td.classList.add('unavailable');\n        } else if (startDate && currentDate >= startDate && currentDate <= endDate) { td.classList.add('selected'); if (startDate.getTime() === currentDate.getTime() || endDate.getTime() === currentDate.getTime()) { td.classList.add('selected-start-end'); } } else if (startDate && currentDate.getTime() === startDate.getTime()) { td.classList.add('selected-start'); td.classList.add('selected-start-end'); } else if (endDate && currentDate.getTime() === endDate.getTime()) { td.classList.add('selected-end'); td.classList.add('selected-start-end'); } tr.appendChild(td); date++; } } tbody.appendChild(tr); } table.appendChild(thead); table.appendChild(tbody); calendarDiv.appendChild(table); \/\/ P\u0159idejte vol\u00e1n\u00ed funkce pro nastaven\u00ed dat term\u00ednu pobytu po vykreslen\u00ed kalend\u00e1\u0159e setStayDates(); } function selectDate(td) { const clickedDate = new Date(td.dataset.year, td.dataset.month, parseInt(td.textContent)); if (!startDate || (startDate && endDate)) { startDate = clickedDate; endDate = null; } else if (clickedDate <startDate) { endDate = startDate; startDate = clickedDate; } else { endDate = clickedDate; \/\/ Po\u010det noc\u00ed mezi vybran\u00fdmi daty const nights = (endDate - startDate) \/ (1000 * 60 * 60 * 24); if (nights <5) { alert(\"Minim\u00e1ln\u011b 5 noc\u00ed je po\u017eadov\u00e1no.\"); endDate = null; } } renderCalendar(); } function prevMonth() { currentMonth--; if (currentMonth <0) { currentMonth = 11; currentYear--; } renderCalendar(); } function nextMonth() { currentMonth++; if (currentMonth> 11) {\n    currentMonth = 0;\n    currentYear++;\n  }\n  renderCalendar();\n}\n\ndocument.getElementById('order-form').addEventListener('submit', function(event) {\n    \/\/ event.preventDefault(); \/\/ Tuto \u0159\u00e1dku m\u016f\u017eete odebrat\n    \/\/ submitForm(); \/\/ Tuto \u0159\u00e1dku m\u016f\u017eete odebrat nebo p\u0159idat funkci submitForm()\n});\n\nfunction setStayDates() {\n  if (startDate && endDate) {\n    document.getElementById('startDate').value = formatDate(startDate);\n    document.getElementById('endDate').value = formatDate(endDate);\n  }\n}\n\n\/\/ Funkce pro form\u00e1tov\u00e1n\u00ed data ve form\u00e1tu YYYY-MM-DD\nfunction formatDate(date) {\n  const year = date.getFullYear();\n  const month = (date.getMonth() + 1).toString().padStart(2, '0');\n  const day = date.getDate().toString().padStart(2, '0');\n  return `${year}-${month}-${day}`;\n}\n<\/script>\n\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-cd12b5f elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"cd12b5f\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-0afc8ad\" data-id=\"0afc8ad\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8d43dc3 elementor-widget elementor-widget-html\" data-id=\"8d43dc3\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.pricing-table {\n     font-family: 'Playfair Display SC', serif;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    margin-top: 50px;\n}\n\n.plan {\n     font-family: 'Playfair Display SC', serif;\n    border-radius: 20px;\n    padding: 30px;\n    margin: 20px;\n    width: 450px;\n    text-align: center;\n    transition: transform 0.3s ease;\n    background-color: #fff;\n    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n}\n\n.plan:hover {\n    transform: translateY(-5px);\n}\n\n.plan-name {\n    font-family: 'Playfair Display SC', serif;\n    font-size: 40px;\n    margin-bottom: 20px;\n    color: #6c3e00;\n}\n\n.plan-details {\n    padding: 0;\n}\n\n.detail {\n    margin-bottom: 15px;\n}\n\n.season {\n    display: block;\n    font-size: 22px;\n    color: #6c3e00;\n    font-weight: 500;\n}\n\n.price {\n    display: inline-block; \n    font-size: 15px;\n    color: #fff;\n    background-color: #9b5900; \n    padding: 10px 20px; \n    margin-bottom: 10px; \n    font-weight: bold;\n}\n\n.period {\n    display: block;\n    font-size: 22px;\n    color: #6c3e00;\n}\n<\/style><body><div class=\"pricing-table\"><div class=\"plan dominika\"><h2 class=\"plan-name\">Dominika<\/h2><div class=\"plan-details\"><div class=\"detail\"><span class=\"season\">Letn\u00ed sezona:<\/span><span class=\"period\">29.6.-1.9.<\/span><\/div><div class=\"detail\"><span class=\"price\">265 euro \/ noc<\/span><\/div><\/div><div class=\"plan-details\"><div class=\"detail\"><span class=\"season\">Jarn\u00ed a podzimn\u00ed sezona:<\/span><span class=\"period\">2.9.-1.11. a 1.5.-28.6.<\/span><\/div><div class=\"detail\"><span class=\"price\">245 euro \/ noc<\/span><\/div><\/div><div class=\"plan-details\"><div class=\"detail\"><span class=\"season\">Zimn\u00ed sezona:<\/span><span class=\"period\">2.11.-30.4.<\/span><\/div><div class=\"detail\"><span class=\"price\">225 euro \/ noc<\/span><\/div><\/div><\/div><\/div><\/body>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-a9bb540\" data-id=\"a9bb540\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f98d7c2 elementor-widget elementor-widget-html\" data-id=\"f98d7c2\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.pricing-table {\n     font-family: 'Playfair Display SC', serif;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    margin-top: 50px;\n}\n\n.plan {\n     font-family: 'Playfair Display SC', serif;\n    border-radius: 20px;\n    padding: 30px;\n    margin: 20px;\n    width: 450px;\n    text-align: center;\n    transition: transform 0.3s ease;\n    background-color: #fff;\n    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n}\n\n.plan:hover {\n    transform: translateY(-5px);\n}\n\n.plan-name {\n    font-family: 'Playfair Display SC', serif;\n    font-size: 40px;\n    margin-bottom: 20px;\n    color: #6c3e00;\n}\n\n.plan-details {\n    padding: 0;\n}\n\n.detail {\n    margin-bottom: 15px;\n}\n\n.season {\n    display: block;\n    font-size: 22px;\n    color: #6c3e00;\n    font-weight: 500;\n}\n\n.price {\n    display: inline-block; \n    font-size: 15px;\n    color: #fff;\n    background-color: #9b5900; \n    padding: 10px 20px; \n    margin-bottom: 10px; \n    font-weight: bold;\n}\n\n.period {\n    display: block;\n    font-size: 22px;\n    color: #6c3e00;\n}\n<\/style><body><\/body><div class=\"pricing-table\"><div class=\"plan thea\"><h2 class=\"plan-name\">Thea<\/h2><div class=\"plan-details\"><div class=\"detail\"><span class=\"season\">Letn\u00ed sezona:<\/span><span class=\"period\">29.6.-1.9.<\/span><\/div><div class=\"detail\"><span class=\"price\">255 euro \/ noc<\/span><\/div><\/div><div class=\"plan-details\"><div class=\"detail\"><span class=\"season\">Jarn\u00ed a podzimn\u00ed sezona:<\/span><span class=\"period\">2.9.-1.11. a 1.5.-28.6.<\/span><\/div><div class=\"detail\"><span class=\"price\">235 euro \/ noc<\/span> \n                <\/div><\/div><div class=\"plan-details\"><div class=\"detail\"><span class=\"season\">Zimn\u00ed sezona:<\/span><span class=\"period\">2.11.-30.4.<\/span><\/div><div class=\"detail\"><span class=\"price\">220 euro \/ noc<\/span><\/div><\/div><\/div><\/div><\/body>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Reservar estancia Nombre y apellidos E-mail: Seleccione una villa Elige una villaCasa DominikaCasa Thea Cantidad de personas: Fechas de estancia: Mensaje: Al enviar el formulario, acepta los t\u00e9rminos y condiciones comerciales. Consultar estancia Dominika Temporada de verano: 29.6.-1.9. 265 euros \/ noche Temporada de primavera y oto\u00f1o: 2.9.-1.11. y 1.5.-28.6. 245 euros \/ noche Temporada [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-13231","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Reservar una estancia en Sierra Villas en Espa\u00f1a.<\/title>\n<meta name=\"description\" content=\"Reserve su estancia en Sierra Villas y disfrute de unas vacaciones inolvidables entre las colinas espa\u00f1olas que ofrecen un panorama espectacular.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sierravillas.es\/cenik-a-rezervace\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Reservar una estancia en Sierra Villas en Espa\u00f1a.\" \/>\n<meta property=\"og:description\" content=\"Reserve su estancia en Sierra Villas y disfrute de unas vacaciones inolvidables entre las colinas espa\u00f1olas que ofrecen un panorama espectacular.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sierravillas.es\/cenik-a-rezervace\/\" \/>\n<meta property=\"og:site_name\" content=\"Sieravillas.es\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-01T10:23:39+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minuto\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/sierravillas.es\/cenik-a-rezervace\/\",\"url\":\"https:\/\/sierravillas.es\/cenik-a-rezervace\/\",\"name\":\"Reservar una estancia en Sierra Villas en Espa\u00f1a.\",\"isPartOf\":{\"@id\":\"https:\/\/sierravillas.es\/#website\"},\"datePublished\":\"2024-02-07T12:28:50+00:00\",\"dateModified\":\"2024-07-01T10:23:39+00:00\",\"description\":\"Reserve su estancia en Sierra Villas y disfrute de unas vacaciones inolvidables entre las colinas espa\u00f1olas que ofrecen un panorama espectacular.\",\"breadcrumb\":{\"@id\":\"https:\/\/sierravillas.es\/cenik-a-rezervace\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/sierravillas.es\/cenik-a-rezervace\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/sierravillas.es\/cenik-a-rezervace\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Dom\u016f\",\"item\":\"https:\/\/sierravillas.es\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tarifas y reservas\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/sierravillas.es\/#website\",\"url\":\"https:\/\/sierravillas.es\/\",\"name\":\"Sieravillas.es\",\"description\":\"Villa\",\"alternateName\":\"luxusn\u00ed \u0161pan\u011blsk\u00e1 rezidence s v\u00fdhledem na mo\u0159e\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/sierravillas.es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Reservar una estancia en Sierra Villas en Espa\u00f1a.","description":"Reserve su estancia en Sierra Villas y disfrute de unas vacaciones inolvidables entre las colinas espa\u00f1olas que ofrecen un panorama espectacular.","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:\/\/sierravillas.es\/cenik-a-rezervace\/","og_locale":"es_ES","og_type":"article","og_title":"Reservar una estancia en Sierra Villas en Espa\u00f1a.","og_description":"Reserve su estancia en Sierra Villas y disfrute de unas vacaciones inolvidables entre las colinas espa\u00f1olas que ofrecen un panorama espectacular.","og_url":"https:\/\/sierravillas.es\/cenik-a-rezervace\/","og_site_name":"Sieravillas.es","article_modified_time":"2024-07-01T10:23:39+00:00","twitter_card":"summary_large_image","twitter_misc":{"Tiempo de lectura":"1 minuto"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/sierravillas.es\/cenik-a-rezervace\/","url":"https:\/\/sierravillas.es\/cenik-a-rezervace\/","name":"Reservar una estancia en Sierra Villas en Espa\u00f1a.","isPartOf":{"@id":"https:\/\/sierravillas.es\/#website"},"datePublished":"2024-02-07T12:28:50+00:00","dateModified":"2024-07-01T10:23:39+00:00","description":"Reserve su estancia en Sierra Villas y disfrute de unas vacaciones inolvidables entre las colinas espa\u00f1olas que ofrecen un panorama espectacular.","breadcrumb":{"@id":"https:\/\/sierravillas.es\/cenik-a-rezervace\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sierravillas.es\/cenik-a-rezervace\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/sierravillas.es\/cenik-a-rezervace\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Dom\u016f","item":"https:\/\/sierravillas.es\/es\/"},{"@type":"ListItem","position":2,"name":"Tarifas y reservas"}]},{"@type":"WebSite","@id":"https:\/\/sierravillas.es\/#website","url":"https:\/\/sierravillas.es\/","name":"Sieravillas.es","description":"Villa","alternateName":"luxusn\u00ed \u0161pan\u011blsk\u00e1 rezidence s v\u00fdhledem na mo\u0159e","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sierravillas.es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"}]}},"_links":{"self":[{"href":"https:\/\/sierravillas.es\/es\/wp-json\/wp\/v2\/pages\/13231","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sierravillas.es\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sierravillas.es\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sierravillas.es\/es\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sierravillas.es\/es\/wp-json\/wp\/v2\/comments?post=13231"}],"version-history":[{"count":10,"href":"https:\/\/sierravillas.es\/es\/wp-json\/wp\/v2\/pages\/13231\/revisions"}],"predecessor-version":[{"id":13334,"href":"https:\/\/sierravillas.es\/es\/wp-json\/wp\/v2\/pages\/13231\/revisions\/13334"}],"wp:attachment":[{"href":"https:\/\/sierravillas.es\/es\/wp-json\/wp\/v2\/media?parent=13231"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}