{"id":290,"date":"2026-01-23T10:49:33","date_gmt":"2026-01-23T09:49:33","guid":{"rendered":"https:\/\/dogsportexperience.it\/?page_id=290"},"modified":"2026-02-27T11:10:27","modified_gmt":"2026-02-27T10:10:27","slug":"ricerca-alloggio","status":"publish","type":"page","link":"https:\/\/dogsportexperience.it\/en\/ricerca-alloggio\/","title":{"rendered":"Ricerca Alloggio"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"290\" class=\"elementor elementor-290\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-97ba61f e-flex e-con-boxed e-con e-parent\" data-id=\"97ba61f\" 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-1d8aae9 elementor-widget elementor-widget-shortcode\" data-id=\"1d8aae9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<style>\n\/* ====== ISV SEARCH (card scura) ====== *\/\n.isv-prof-wrap{ padding:56px 0; }\n@media (max-width:768px){ .isv-prof-wrap{ padding:36px 0; } }\n\n.isv-prof{ max-width: 980px; margin: 0 auto; }\n\n.isv-prof-card{\n  border-radius: 26px;\n  border: 1px solid rgba(255,255,255,0.10);\n  background:\n    radial-gradient(1200px 520px at 15% 10%, rgba(245,158,11,0.14), transparent 60%),\n    radial-gradient(900px 420px at 85% 20%, rgba(251,113,133,0.12), transparent 62%),\n    linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));\n  box-shadow:\n    0 30px 80px rgba(0,0,0,0.55),\n    inset 0 1px 0 rgba(255,255,255,0.06);\n  backdrop-filter: blur(10px);\n  -webkit-backdrop-filter: blur(10px);\n  padding: 26px;\n}\n\n.isv-prof-head{\n  display:flex; align-items:flex-start; justify-content:space-between; gap:14px; flex-wrap:wrap;\n  padding-bottom: 18px;\n  border-bottom: 1px solid rgba(255,255,255,0.10);\n  margin-bottom: 18px;\n}\n\n.isv-prof-title{\n  margin:0;\n  font-size: 22px;\n  line-height: 1.2;\n  letter-spacing: -0.2px;\n  color: rgba(255,255,255,0.95);\n}\n.isv-prof-sub{\n  margin: 8px 0 0 0;\n  color: rgba(255,255,255,0.65);\n  font-size: 13px;\n  line-height: 1.5;\n}\n\n.isv-prof-alert{\n  margin-top: 14px;\n  border-radius: 16px;\n  padding: 12px 14px;\n  border: 1px solid rgba(255,255,255,0.14);\n  background: rgba(2,6,23,0.35);\n  color: rgba(241,245,249,0.92);\n  font-weight: 800;\n  font-size: 13px;\n}\n.isv-prof-alert.ok{ border-color: rgba(34,197,94,0.35); background: rgba(34,197,94,0.10); }\n.isv-prof-alert.err{ border-color: rgba(239,68,68,0.35); background: rgba(239,68,68,0.10); }\n\n.isv-um-section{\n  margin-top: 18px;\n  padding-top: 18px;\n  border-top: 1px solid rgba(255,255,255,0.10);\n}\n.isv-um-section:first-of-type{ margin-top: 0; padding-top: 0; border-top: none; }\n\n.isv-um-h3{\n  margin: 0 0 10px 0;\n  font-size: 13px;\n  font-weight: 900;\n  color: rgba(241,245,249,0.92);\n  letter-spacing: 0.2px;\n}\n\n.isv-um-grid{\n  display:grid;\n  grid-template-columns: 1fr 1fr 1fr;\n  gap: 12px;\n}\n@media (max-width:860px){\n  .isv-um-grid{ grid-template-columns: 1fr; }\n}\n\n.isv-um-field label{\n  display:block;\n  font-size: 12px;\n  color: rgba(226,232,240,0.70);\n  margin: 0 0 6px 0;\n  font-weight: 800;\n}\n\n.isv-um-input, .isv-um-select{\n  width: 100%;\n  height: 42px;\n  border-radius: 12px;\n  border: 1px solid rgba(255,255,255,0.16);\n  background: rgba(2,6,23,0.35);\n  color: rgba(241,245,249,0.92);\n  padding: 0 12px;\n  box-sizing: border-box;\n  outline: none;\n}\n\n.isv-um-input:focus, .isv-um-select:focus{\n  border-color: rgba(245,158,11,0.65);\n  box-shadow: 0 0 0 4px rgba(245,158,11,0.18);\n}\n\n.isv-prof-actions{\n  display:flex;\n  justify-content:flex-end;\n  margin-top: 20px;\n  gap: 10px;\n  flex-wrap: wrap;\n}\n\n.isv-prof-btn{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  gap: 10px;\n  padding: 12px 16px;\n  border-radius: 999px;\n  border: 1px solid rgba(255,255,255,0.16);\n  background: rgba(255,255,255,0.06);\n  color: rgba(241,245,249,0.92);\n  cursor: pointer;\n  font-weight: 900;\n  font-size: 13px;\n}\n.isv-prof-btn:hover{ background: rgba(255,255,255,0.10); }\n\n.isv-prof-btn.primary{\n  border: 0;\n  background: #f59e0b;\n  color: rgba(2,6,23,0.95);\n}\n.isv-prof-btn.primary:hover{ filter: brightness(1.03); }\n\n\/* Calendar icon bianca (Chrome, Edge, Safari) *\/\n.isv-um-input[type=\"date\"]::-webkit-calendar-picker-indicator{\n  filter: invert(1);\n  opacity: 0.85;\n  cursor: pointer;\n}\n.isv-um-input[type=\"date\"]::-webkit-calendar-picker-indicator:hover{\n  opacity: 1;\n}\n<\/style>\n\n<div class=\"isv-prof-wrap\">\n  <div class=\"container\">\n    <div class=\"isv-prof\">\n      <div class=\"isv-prof-card\">\n\n        <div class=\"isv-prof-head\">\n          <div>\n            <h1 class=\"isv-prof-title\">Search available accommodations<\/h1>\n            <p class=\"isv-prof-sub\">Set the parameters and start your search.<\/p>\n          <\/div>\n        <\/div>\n\n                  <div class=\"isv-prof-alert err\">\n            You must be logged in to search accommodations.            \u2014 <a href=\"https:\/\/dogsportexperience.it\/en\/login\/\" style=\"color:inherit; text-decoration: underline; text-underline-offset:3px;\">\n              Log in \/ Sign up            <\/a>\n          <\/div>\n\n        \n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  const form = document.getElementById('isv_alloggi_form');\n  if (!form) return;\n\n  const startEl = document.getElementById('isv_start');\n  const endEl   = document.getElementById('isv_end');\n  if (!startEl || !endEl) return;\n\n  const evMin = startEl.getAttribute('data-ev-min') || endEl.getAttribute('data-ev-min') || '';\n  const evMax = startEl.getAttribute('data-ev-max') || endEl.getAttribute('data-ev-max') || '';\n  const minNights = parseInt(startEl.getAttribute('data-min-nights') || '1', 10);\n\n  function parseYMD(s){\n    if (!s || typeof s !== 'string') return null;\n    const m = s.match(\/^(\\d{4})-(\\d{2})-(\\d{2})$\/);\n    if (!m) return null;\n    const y = parseInt(m[1],10), mo = parseInt(m[2],10)-1, d = parseInt(m[3],10);\n    const dt = new Date(Date.UTC(y, mo, d));\n    return isNaN(dt.getTime()) ? null : dt;\n  }\n  function formatYMD(dt){\n    const y = dt.getUTCFullYear();\n    const m = String(dt.getUTCMonth()+1).padStart(2,'0');\n    const d = String(dt.getUTCDate()).padStart(2,'0');\n    return `${y}-${m}-${d}`;\n  }\n  function addDays(dt, days){\n    const out = new Date(dt.getTime());\n    out.setUTCDate(out.getUTCDate() + days);\n    return out;\n  }\n\n  function openPicker(el){\n    if (typeof el.showPicker === 'function') {\n      try { el.showPicker(); return; } catch(e){}\n    }\n    el.focus({preventScroll:true});\n    try { el.click(); } catch(e){}\n  }\n\n  \/\/ range globale evento\n  startEl.min = evMin;\n  startEl.max = evMax;\n  endEl.min   = evMin;\n  endEl.max   = evMax;\n\n  function syncEndMinAndMaybeReset(){\n    const s = parseYMD(startEl.value);\n    if (!s) { endEl.min = evMin; return; }\n\n    const minEnd = addDays(s, minNights);\n    let minEndStr = formatYMD(minEnd);\n\n    if (parseYMD(minEndStr) && parseYMD(minEndStr) > parseYMD(evMax)) {\n      minEndStr = evMax;\n    }\n\n    endEl.min = minEndStr;\n\n    const e = parseYMD(endEl.value);\n    if (e && e < parseYMD(endEl.min)) endEl.value = '';\n  }\n\n  \/\/ apri picker clickando l\u2019input (non l\u2019iconcina)\n  startEl.addEventListener('click', function(){ openPicker(startEl); });\n  endEl.addEventListener('click', function(){ openPicker(endEl); });\n\n  startEl.addEventListener('change', function(){\n    if (startEl.value && startEl.value < evMin) startEl.value = evMin;\n    if (startEl.value && startEl.value > evMax) startEl.value = evMax;\n\n    syncEndMinAndMaybeReset();\n\n    \/\/ dopo aver scelto check-in, apri check-out\n    if (startEl.value) setTimeout(function(){ openPicker(endEl); }, 60);\n  });\n\n  endEl.addEventListener('change', function(){\n    if (endEl.value && endEl.value > evMax) endEl.value = evMax;\n    if (endEl.value && endEl.min && endEl.value < endEl.min) endEl.value = '';\n  });\n\n  form.addEventListener('submit', function(e){\n    syncEndMinAndMaybeReset();\n\n    const s = parseYMD(startEl.value);\n    const en = parseYMD(endEl.value);\n\n    if (!s || !en) {\n      e.preventDefault();\n      e.stopPropagation();\n      if (!s) openPicker(startEl);\n      else openPicker(endEl);\n      return;\n    }\n\n    const evMinDt = parseYMD(evMin);\n    const evMaxDt = parseYMD(evMax);\n    if (s < evMinDt) { e.preventDefault(); startEl.value = evMin; openPicker(startEl); return; }\n    if (en > evMaxDt) { e.preventDefault(); endEl.value = evMax; openPicker(endEl); return; }\n\n    const minEnd = addDays(s, minNights);\n    if (en < minEnd) {\n      e.preventDefault();\n      endEl.value = '';\n      openPicker(endEl);\n      return;\n    }\n  });\n\n  syncEndMinAndMaybeReset();\n})();\n<\/script>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-290","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/dogsportexperience.it\/en\/wp-json\/wp\/v2\/pages\/290","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dogsportexperience.it\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/dogsportexperience.it\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/dogsportexperience.it\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dogsportexperience.it\/en\/wp-json\/wp\/v2\/comments?post=290"}],"version-history":[{"count":9,"href":"https:\/\/dogsportexperience.it\/en\/wp-json\/wp\/v2\/pages\/290\/revisions"}],"predecessor-version":[{"id":759,"href":"https:\/\/dogsportexperience.it\/en\/wp-json\/wp\/v2\/pages\/290\/revisions\/759"}],"wp:attachment":[{"href":"https:\/\/dogsportexperience.it\/en\/wp-json\/wp\/v2\/media?parent=290"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}