{"id":4283,"date":"2024-07-09T17:48:52","date_gmt":"2024-07-09T15:48:52","guid":{"rendered":"https:\/\/www.campingsansebastiano.com\/?page_id=4283"},"modified":"2026-07-08T09:25:35","modified_gmt":"2026-07-08T08:25:35","slug":"availability","status":"publish","type":"page","link":"https:\/\/www.campingsansebastiano.com\/de\/availability\/","title":{"rendered":"Verf\u00fcgbarkeit"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"4283\" class=\"elementor elementor-4283\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"has_eae_slider elementor-section elementor-top-section elementor-element elementor-element-651674b elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-column-slider-no wpr-equal-height-no elementor-invisible\" data-eae-slider=\"35848\" data-id=\"651674b\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"has_eae_slider elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-495760f\" data-eae-slider=\"13714\" data-id=\"495760f\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e938137 elementor-widget elementor-widget-vedhak_elementor_heading\" data-id=\"e938137\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"vedhak_elementor_heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div class=\"ova-heading template1\">\n\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t<h3 class=\"title\"><span class=\"title-bold\">Contact Us <br><\/span><span class=\"title-normal\">and ask for a free price quotation<\/span><\/h3>\n\n\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n\n\t\t\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=\"has_eae_slider elementor-section elementor-top-section elementor-element elementor-element-10334db elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-column-slider-no wpr-equal-height-no elementor-invisible\" data-eae-slider=\"30582\" data-id=\"10334db\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;background_background&quot;:&quot;classic&quot;,&quot;background_motion_fx_motion_fx_scrolling&quot;:&quot;yes&quot;,&quot;background_motion_fx_opacity_effect&quot;:&quot;yes&quot;,&quot;shape_divider_top&quot;:&quot;wave-brush&quot;,&quot;background_motion_fx_opacity_direction&quot;:&quot;out-in&quot;,&quot;background_motion_fx_opacity_level&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;background_motion_fx_opacity_range&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:{&quot;start&quot;:20,&quot;end&quot;:80}},&quot;background_motion_fx_devices&quot;:[&quot;desktop&quot;,&quot;tablet&quot;,&quot;mobile&quot;]}\">\n\t\t\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t<div class=\"elementor-shape elementor-shape-top\" aria-hidden=\"true\" data-negative=\"false\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 283.5 27.8\" preserveAspectRatio=\"none\">\n\t<path class=\"elementor-shape-fill\" d=\"M283.5,9.7c0,0-7.3,4.3-14,4.6c-6.8,0.3-12.6,0-20.9-1.5c-11.3-2-33.1-10.1-44.7-5.7\ts-12.1,4.6-18,7.4c-6.6,3.2-20,9.6-36.6,9.3C131.6,23.5,99.5,7.2,86.3,8c-1.4,0.1-6.6,0.8-10.5,2c-3.8,1.2-9.4,3.8-17,4.7\tc-3.2,0.4-8.3,1.1-14.2,0.9c-1.5-0.1-6.3-0.4-12-1.6c-5.7-1.2-11-3.1-15.8-3.7C6.5,9.2,0,10.8,0,10.8V0h283.5V9.7z M260.8,11.3\tc-0.7-1-2-0.4-4.3-0.4c-2.3,0-6.1-1.2-5.8-1.1c0.3,0.1,3.1,1.5,6,1.9C259.7,12.2,261.4,12.3,260.8,11.3z M242.4,8.6\tc0,0-2.4-0.2-5.6-0.9c-3.2-0.8-10.3-2.8-15.1-3.5c-8.2-1.1-15.8,0-15.1,0.1c0.8,0.1,9.6-0.6,17.6,1.1c3.3,0.7,9.3,2.2,12.4,2.7\tC239.9,8.7,242.4,8.6,242.4,8.6z M185.2,8.5c1.7-0.7-13.3,4.7-18.5,6.1c-2.1,0.6-6.2,1.6-10,2c-3.9,0.4-8.9,0.4-8.8,0.5\tc0,0.2,5.8,0.8,11.2,0c5.4-0.8,5.2-1.1,7.6-1.6C170.5,14.7,183.5,9.2,185.2,8.5z M199.1,6.9c0.2,0-0.8-0.4-4.8,1.1\tc-4,1.5-6.7,3.5-6.9,3.7c-0.2,0.1,3.5-1.8,6.6-3C197,7.5,199,6.9,199.1,6.9z M283,6c-0.1,0.1-1.9,1.1-4.8,2.5s-6.9,2.8-6.7,2.7\tc0.2,0,3.5-0.6,7.4-2.5C282.8,6.8,283.1,5.9,283,6z M31.3,11.6c0.1-0.2-1.9-0.2-4.5-1.2s-5.4-1.6-7.8-2C15,7.6,7.3,8.5,7.7,8.6\tC8,8.7,15.9,8.3,20.2,9.3c2.2,0.5,2.4,0.5,5.7,1.6S31.2,11.9,31.3,11.6z M73,9.2c0.4-0.1,3.5-1.6,8.4-2.6c4.9-1.1,8.9-0.5,8.9-0.8\tc0-0.3-1-0.9-6.2-0.3S72.6,9.3,73,9.2z M71.6,6.7C71.8,6.8,75,5.4,77.3,5c2.3-0.3,1.9-0.5,1.9-0.6c0-0.1-1.1-0.2-2.7,0.2\tC74.8,5.1,71.4,6.6,71.6,6.7z M93.6,4.4c0.1,0.2,3.5,0.8,5.6,1.8c2.1,1,1.8,0.6,1.9,0.5c0.1-0.1-0.8-0.8-2.4-1.3\tC97.1,4.8,93.5,4.2,93.6,4.4z M65.4,11.1c-0.1,0.3,0.3,0.5,1.9-0.2s2.6-1.3,2.2-1.2s-0.9,0.4-2.5,0.8C65.3,10.9,65.5,10.8,65.4,11.1\tz M34.5,12.4c-0.2,0,2.1,0.8,3.3,0.9c1.2,0.1,2,0.1,2-0.2c0-0.3-0.1-0.5-1.6-0.4C36.6,12.8,34.7,12.4,34.5,12.4z M152.2,21.1\tc-0.1,0.1-2.4-0.3-7.5-0.3c-5,0-13.6-2.4-17.2-3.5c-3.6-1.1,10,3.9,16.5,4.1C150.5,21.6,152.3,21,152.2,21.1z\"\/>\n\t<path class=\"elementor-shape-fill\" d=\"M269.6,18c-0.1-0.1-4.6,0.3-7.2,0c-7.3-0.7-17-3.2-16.6-2.9c0.4,0.3,13.7,3.1,17,3.3\tC267.7,18.8,269.7,18,269.6,18z\"\/>\n\t<path class=\"elementor-shape-fill\" d=\"M227.4,9.8c-0.2-0.1-4.5-1-9.5-1.2c-5-0.2-12.7,0.6-12.3,0.5c0.3-0.1,5.9-1.8,13.3-1.2\tS227.6,9.9,227.4,9.8z\"\/>\n\t<path class=\"elementor-shape-fill\" d=\"M204.5,13.4c-0.1-0.1,2-1,3.2-1.1c1.2-0.1,2,0,2,0.3c0,0.3-0.1,0.5-1.6,0.4\tC206.4,12.9,204.6,13.5,204.5,13.4z\"\/>\n\t<path class=\"elementor-shape-fill\" d=\"M201,10.6c0-0.1-4.4,1.2-6.3,2.2c-1.9,0.9-6.2,3.1-6.1,3.1c0.1,0.1,4.2-1.6,6.3-2.6\tS201,10.7,201,10.6z\"\/>\n\t<path class=\"elementor-shape-fill\" d=\"M154.5,26.7c-0.1-0.1-4.6,0.3-7.2,0c-7.3-0.7-17-3.2-16.6-2.9c0.4,0.3,13.7,3.1,17,3.3\tC152.6,27.5,154.6,26.8,154.5,26.7z\"\/>\n\t<path class=\"elementor-shape-fill\" d=\"M41.9,19.3c0,0,1.2-0.3,2.9-0.1c1.7,0.2,5.8,0.9,8.2,0.7c4.2-0.4,7.4-2.7,7-2.6\tc-0.4,0-4.3,2.2-8.6,1.9c-1.8-0.1-5.1-0.5-6.7-0.4S41.9,19.3,41.9,19.3z\"\/>\n\t<path class=\"elementor-shape-fill\" d=\"M75.5,12.6c0.2,0.1,2-0.8,4.3-1.1c2.3-0.2,2.1-0.3,2.1-0.5c0-0.1-1.8-0.4-3.4,0\tC76.9,11.5,75.3,12.5,75.5,12.6z\"\/>\n\t<path class=\"elementor-shape-fill\" d=\"M15.6,13.2c0-0.1,4.3,0,6.7,0.5c2.4,0.5,5,1.9,5,2c0,0.1-2.7-0.8-5.1-1.4\tC19.9,13.7,15.7,13.3,15.6,13.2z\"\/>\n<\/svg>\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"has_eae_slider elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-79d4689\" data-eae-slider=\"20821\" data-id=\"79d4689\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-388de62 elementor-widget elementor-widget-global elementor-global-7923 elementor-widget-html\" data-id=\"388de62\" 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<style>\n:root {\n    --primary-blue: #5B9BD5;\n    --primary-blue-hover: #4A89C4;\n    --secondary-green: #5FAD56;\n    --secondary-green-hover: #4E9C47;\n    --bg-cream: #FAF4E8;\n    --text-dark: #666666;\n    --text-darker: #444444;\n    --border-light: #E5DED0;\n    --white: #FFFFFF;\n    --error-red: #E74C3C;\n}\n\n.camping-quote-form {\n    max-width: 700px;\n    margin: 0 auto;\n    padding: 30px;\n    background: var(--white);\n    border-radius: 12px;\n    box-shadow: 0 4px 6px rgba(0,0,0,0.08);\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, sans-serif;\n}\n\n.language-selector {\n    display: flex;\n    gap: 8px;\n    justify-content: flex-end;\n    margin-bottom: 25px;\n    padding-bottom: 15px;\n    border-bottom: 1px solid var(--border-light);\n}\n\n.lang-btn {\n    padding: 6px 12px;\n    border: 2px solid var(--border-light);\n    background: white;\n    cursor: pointer;\n    border-radius: 6px;\n    font-size: 12px;\n    font-weight: 600;\n    transition: all 0.2s;\n    color: var(--text-dark);\n}\n\n.lang-btn:hover { border-color: var(--primary-blue); color: var(--primary-blue); }\n.lang-btn.active { background: var(--primary-blue); color: white; border-color: var(--primary-blue); }\n\n.progress-container {\n    display: flex;\n    justify-content: space-between;\n    margin-bottom: 30px;\n    position: relative;\n}\n\n.progress-container::before {\n    content: '';\n    position: absolute;\n    top: 20px;\n    left: 0;\n    width: 100%;\n    height: 4px;\n    background: var(--border-light);\n    z-index: 0;\n}\n\n.progress-bar {\n    position: absolute;\n    top: 20px;\n    left: 0;\n    height: 4px;\n    background: var(--secondary-green);\n    transition: width 0.3s ease;\n    z-index: 1;\n}\n\n.progress-step {\n    position: relative;\n    z-index: 2;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    flex: 1;\n}\n\n.progress-circle {\n    width: 40px;\n    height: 40px;\n    border-radius: 50%;\n    background: var(--border-light);\n    color: #999;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: bold;\n    transition: all 0.3s ease;\n}\n\n.progress-step.active .progress-circle {\n    background: var(--secondary-green);\n    color: white;\n    box-shadow: 0 2px 8px rgba(95,173,86,0.3);\n}\n\n.progress-step.completed .progress-circle {\n    background: var(--primary-blue);\n    color: white;\n}\n\n.progress-label {\n    margin-top: 8px;\n    font-size: 13px;\n    color: var(--text-dark);\n    text-align: center;\n}\n\n.form-step { display: none; animation: fadeIn 0.4s ease; }\n.form-step.active { display: block; }\n\n@keyframes fadeIn {\n    from { opacity: 0; transform: translateX(20px); }\n    to   { opacity: 1; transform: translateX(0); }\n}\n\n.form-row {\n    display: flex;\n    gap: 15px;\n    margin-bottom: 20px;\n}\n\n.form-group {\n    flex: 1;\n    display: flex;\n    flex-direction: column;\n    margin-bottom: 20px;\n}\n\n.form-group.full-width { width: 100%; }\n\n.form-group label {\n    margin-bottom: 8px;\n    font-weight: 500;\n    color: var(--text-darker);\n    font-size: 14px;\n}\n\n.required::after { content: ' *'; color: var(--error-red); }\n\n.form-group input,\n.form-group select,\n.form-group textarea {\n    padding: 12px;\n    border: 2px solid var(--border-light);\n    border-radius: 6px;\n    font-size: 15px;\n    transition: all 0.3s ease;\n    font-family: inherit;\n    background: var(--white);\n    color: var(--text-dark);\n}\n\n.form-group input:focus,\n.form-group select:focus,\n.form-group textarea:focus {\n    outline: none;\n    border-color: var(--primary-blue);\n    box-shadow: 0 0 0 3px rgba(91,155,213,0.1);\n}\n\n.form-group input.error,\n.form-group select.error { border-color: var(--error-red); }\n\n.error-message {\n    color: var(--error-red);\n    font-size: 12px;\n    margin-top: 5px;\n    display: none;\n}\n\ntextarea { resize: vertical; min-height: 100px; }\n\n.checkbox-group { display: flex; flex-direction: column; gap: 10px; margin-top: 10px; }\n.checkbox-group label { display: flex; align-items: center; gap: 10px; font-weight: normal; cursor: pointer; }\n.checkbox-group input[type=\"checkbox\"] { width: 20px; height: 20px; cursor: pointer; accent-color: var(--secondary-green); }\n\n.form-navigation {\n    display: flex;\n    justify-content: space-between;\n    margin-top: 30px;\n    gap: 15px;\n}\n\n.btn {\n    padding: 14px 30px;\n    border: none;\n    border-radius: 8px;\n    font-size: 16px;\n    font-weight: 600;\n    cursor: pointer;\n    transition: all 0.3s ease;\n    flex: 1;\n}\n\n.btn-prev { background: var(--bg-cream); color: var(--text-darker); border: 2px solid var(--border-light); }\n.btn-prev:hover { background: var(--border-light); transform: translateY(-1px); }\n.btn-next { background: var(--secondary-green); color: white; }\n.btn-next:hover { background: var(--secondary-green-hover); transform: translateY(-1px); }\n.btn-submit { background: var(--primary-blue); color: white; }\n.btn-submit:hover { background: var(--primary-blue-hover); transform: translateY(-1px); }\n.btn:disabled { opacity: 0.5; cursor: not-allowed; transform: none !important; }\n\n.custom-popup {\n    display: none;\n    position: fixed;\n    top: 0; left: 0;\n    width: 100%; height: 100%;\n    background: rgba(0,0,0,0.6);\n    z-index: 999999;\n    align-items: center;\n    justify-content: center;\n}\n\n.custom-popup.show { display: flex; }\n\n.popup-content {\n    background: var(--white);\n    border-radius: 16px;\n    padding: 40px 30px;\n    max-width: 450px;\n    width: 90%;\n    text-align: center;\n    box-shadow: 0 10px 40px rgba(0,0,0,0.2);\n    animation: slideUp 0.4s ease;\n}\n\n@keyframes slideUp {\n    from { opacity: 0; transform: translateY(30px); }\n    to   { opacity: 1; transform: translateY(0); }\n}\n\n.popup-icon {\n    width: 80px; height: 80px;\n    border-radius: 50%;\n    margin: 0 auto 20px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-size: 40px;\n}\n\n.popup-icon.success { background: #d4edda; color: var(--secondary-green); }\n.popup-icon.success::before { content: '\u2713'; }\n.popup-icon.error { background: #f8d7da; color: var(--error-red); }\n.popup-icon.error::before { content: '\u2715'; }\n\n.popup-title { font-size: 24px; font-weight: 700; color: var(--text-darker); margin: 0 0 15px 0; }\n.popup-message { font-size: 16px; color: var(--text-dark); line-height: 1.6; margin: 0 0 30px 0; }\n\n.popup-close {\n    background: var(--primary-blue);\n    color: white;\n    border: none;\n    padding: 14px 40px;\n    border-radius: 8px;\n    font-size: 16px;\n    font-weight: 600;\n    cursor: pointer;\n    transition: all 0.3s ease;\n}\n\n.popup-close:hover { background: var(--primary-blue-hover); transform: translateY(-2px); }\n\n@media (max-width: 600px) {\n    .form-row { flex-direction: column; }\n    .camping-quote-form { padding: 20px; }\n    .progress-label { font-size: 11px; }\n    .btn { padding: 12px 20px; font-size: 14px; }\n    .language-selector { gap: 5px; }\n    .lang-btn { padding: 5px 10px; font-size: 11px; }\n    .popup-content { padding: 30px 20px; }\n    .popup-icon { width: 60px; height: 60px; font-size: 30px; }\n    .popup-title { font-size: 20px; }\n    .popup-message { font-size: 14px; }\n}\n\n\/* Forza larghezza piena per gli input nei gruppi full-width *\/\n.form-group.full-width input,\n.form-group.full-width select {\n    width: 100%;\n    box-sizing: border-box;\n}\n\n\/*DE lang fix*\/\n.lang-choice-buttons { display: flex; gap: 10px; margin-top: 8px; }\n.lang-choice-btn {\n    padding: 10px 20px;\n    border: 2px solid var(--border-light);\n    border-radius: 6px;\n    cursor: pointer;\n    background: white;\n    font-size: 14px;\n    font-weight: 500;\n    color: var(--text-darker);\n    transition: all 0.2s;\n}\n.lang-choice-btn.active {\n    background: var(--primary-blue);\n    color: white;\n    border-color: var(--primary-blue);\n}\n\n<\/style>\n\n<script src=\"https:\/\/www.google.com\/recaptcha\/api.js?render=6LdcHUArAAAAAN8yKPqpSjy1bBsSJ8ANDngRzu2o\"><\/script>\n\n<div class=\"camping-quote-form\">\n    <div class=\"language-selector\">\n        <button class=\"lang-btn active\" data-lang=\"it\">IT<\/button>\n        <button class=\"lang-btn\" data-lang=\"en\">EN<\/button>\n        <button class=\"lang-btn\" data-lang=\"fr\">FR<\/button>\n        <button class=\"lang-btn\" data-lang=\"de\">DE<\/button>\n    <\/div>\n\n    <div class=\"progress-container\">\n        <div class=\"progress-bar\" id=\"progressBar\"><\/div>\n        <div class=\"progress-step active\" data-step=\"1\">\n            <div class=\"progress-circle\">1<\/div>\n            <span class=\"progress-label\" data-translate=\"step1_label\">Dati Personali<\/span>\n        <\/div>\n        <div class=\"progress-step\" data-step=\"2\">\n            <div class=\"progress-circle\">2<\/div>\n            <span class=\"progress-label\" data-translate=\"step2_label\">Soggiorno<\/span>\n        <\/div>\n        <div class=\"progress-step\" data-step=\"3\">\n            <div class=\"progress-circle\">3<\/div>\n            <span class=\"progress-label\" data-translate=\"step3_label\">Preferenze<\/span>\n        <\/div>\n    <\/div>\n\n    <form id=\"campingQuoteForm\">\n\n        <!-- STEP 1 -->\n        <div class=\"form-step active\" data-step=\"1\">\n            <div class=\"form-row\">\n                <div class=\"form-group\">\n                    <label class=\"required\" data-translate=\"firstname\">Nome<\/label>\n                    <input type=\"text\" name=\"firstname\" required>\n                    <span class=\"error-message\" data-translate=\"error_required\">Campo obbligatorio<\/span>\n                <\/div>\n                <div class=\"form-group\">\n                    <label class=\"required\" data-translate=\"lastname\">Cognome<\/label>\n                    <input type=\"text\" name=\"lastname\" required>\n                    <span class=\"error-message\" data-translate=\"error_required\">Campo obbligatorio<\/span>\n                <\/div>\n            <\/div>\n            <div class=\"form-row\">\n                <div class=\"form-group\">\n                    <label class=\"required\" data-translate=\"email\">Email<\/label>\n                    <input type=\"email\" name=\"email\" required>\n                    <span class=\"error-message\" data-translate=\"error_email\">Email non valida<\/span>\n                <\/div>\n                <div class=\"form-group\">\n                    <label data-translate=\"phone\">Telefono<\/label>\n                    <input type=\"tel\" name=\"phone\">\n                <\/div>\n            <\/div>\n            <div class=\"form-row\">\n                <div class=\"form-group\">\n                    <label class=\"required\" data-translate=\"adults\">Numero di adulti<\/label>\n                    <input type=\"number\" name=\"adults\" min=\"1\" value=\"2\" required>\n                    <span class=\"error-message\" data-translate=\"error_required\">Campo obbligatorio<\/span>\n                <\/div>\n                <div class=\"form-group\">\n                    <label data-translate=\"children\">Numero di bambini<\/label>\n                    <input type=\"number\" name=\"children\" min=\"0\" value=\"0\">\n                <\/div>\n            <\/div>\n            <div class=\"form-group full-width\">\n                <label data-translate=\"children_ages\">Et\u00e0 dei bambini (separate da virgola)<\/label>\n                <input type=\"text\" name=\"children_ages\" placeholder=\"es: 5, 8, 12\">\n            <\/div>\n        <\/div>\n\n        <!-- STEP 2 -->\n        <div class=\"form-step\" data-step=\"2\">\n            <div class=\"form-row\">\n                <div class=\"form-group\">\n                    <label class=\"required\" data-translate=\"arrival_date\">Data di arrivo<\/label>\n                    <input type=\"date\" name=\"arrival_date\" required>\n                    <span class=\"error-message\" data-translate=\"error_required\">Campo obbligatorio<\/span>\n                <\/div>\n                <div class=\"form-group\">\n                    <label class=\"required\" data-translate=\"departure_date\">Data di partenza<\/label>\n                    <input type=\"date\" name=\"departure_date\" required>\n                    <span class=\"error-message\" data-translate=\"error_date\">Deve essere successiva all'arrivo<\/span>\n                <\/div>\n            <\/div>\n\n            <div class=\"form-group full-width\">\n                <label class=\"required\" data-translate=\"accommodation\">Tipo di sistemazione<\/label>\n                <select name=\"accommodation\" id=\"accommodationSelect\" required>\n                    <option value=\"\" data-translate=\"select_option\">Seleziona un'opzione<\/option>\n                    <option value=\"bungalow\" data-translate=\"bungalow\">Bungalow<\/option>\n                    <option value=\"camper\" data-translate=\"camper\">Motorhome \/ Caravan<\/option>\n                    <option value=\"tent\" data-translate=\"tent\">Tenda<\/option>\n                <\/select>\n                <span class=\"error-message\" data-translate=\"error_required\">Campo obbligatorio<\/span>\n            <\/div>\n\n            <!-- CONDIZIONALE: Motorhome\/Caravan Type -->\n\t\t\t<div class=\"form-group full-width\" id=\"motorhomeTypeGroup\" style=\"display:none;\">\n\t\t\t    <label data-translate=\"motorhome_type\">Tipo di mezzo<\/label>\n\t\t\t    <select name=\"motorhome_type\" id=\"motorhomeTypeSelect\">\n\t\t\t        <option value=\"\" data-translate=\"select_option\">Seleziona un'opzione<\/option>\n\t\t\t        <option value=\"motorhome\" data-translate=\"mh_motorhome\">Camper<\/option>\n\t\t\t        <option value=\"caravan\"   data-translate=\"mh_caravan\">Roulotte<\/option>\n\t\t\t        <option value=\"campervan\" data-translate=\"mh_campervan\">Furgone camperizzato<\/option>\n\t\t\t    <\/select>\n\t\t\t<\/div>\n\n            <!-- CONDIZIONALE: Motorhome\/Caravan Size -->\n            <div class=\"form-group full-width\" id=\"motorhomeSizeGroup\" style=\"display:none;\">\n                <label data-translate=\"motorhome_size\">Lunghezza Motorhome\/Caravan (metri)<\/label>\n                <input type=\"text\" name=\"motorhome_size\" placeholder=\"es: 7.20 m\">\n            <\/div>\n\n\n            <!-- CONDIZIONALE: Tent Size -->\n            <div class=\"form-group full-width\" id=\"tentSizeGroup\" style=\"display:none;\">\n                <label data-translate=\"tent_size\">Dimensione tenda<\/label>\n                <select name=\"tent_size\">\n                    <option value=\"\" data-translate=\"select_option\">Seleziona un'opzione<\/option>\n                    <option value=\"mini\" data-translate=\"tent_mini\">Tenda mini (fino a 4,9 mq)<\/option>\n                    <option value=\"small\" data-translate=\"tent_small\">Tenda piccola (da 5 a 9,9 mq)<\/option>\n                    <option value=\"medium\" data-translate=\"tent_medium\">Tenda media (da 10 a 14,99 mq)<\/option>\n                    <option value=\"large\" data-translate=\"tent_large\">Tenda grande (oltre 15 mq)<\/option>\n                <\/select>\n            <\/div>\n\n            <!-- CONDIZIONALE: Tent Model -->\n            <div class=\"form-group full-width\" id=\"tentModelGroup\" style=\"display:none;\">\n                <label data-translate=\"tent_model\">Marca e modello tenda<\/label>\n                <input type=\"text\" name=\"tent_model\" placeholder=\"Brand and model\">\n            <\/div>\n\n            <div class=\"form-group full-width\">\n                <label class=\"required\" data-translate=\"vehicle\">Veicolo<\/label>\n                <select name=\"vehicle\" id=\"vehicleSelect\" required>\n                    <option value=\"\" data-translate=\"select_option\">Seleziona un'opzione<\/option>\n                    <option value=\"none\" data-translate=\"vehicle_none\">Nessuno<\/option>\n                    <option value=\"car\" data-translate=\"vehicle_car\">Auto<\/option>\n                    <option value=\"motorcycle\" data-translate=\"vehicle_motorcycle\">Moto<\/option>\n                    <option value=\"bicycle\" data-translate=\"vehicle_bicycle\">Bicicletta<\/option>\n                <\/select>\n                <span class=\"error-message\" data-translate=\"error_required\">Campo obbligatorio<\/span>\n            <\/div>\n\n            <!-- CONDIZIONALE: Car model -->\n            <div class=\"form-group full-width\" id=\"carLengthGroup\" style=\"display:none;\">\n                <label data-translate=\"car_length\">Modello auto<\/label>\n                <input type=\"text\" name=\"car_length\" placeholder=\"es: Fiat Panda 4x4\">\n            <\/div>\n\n            <div class=\"form-row\">\n                <div class=\"form-group\">\n                    <label data-translate=\"age_range\">Fascia d'et\u00e0<\/label>\n                    <select name=\"age_range\">\n                        <option value=\"\" data-translate=\"select_option\">Seleziona un'opzione<\/option>\n                        <option value=\"under18\" data-translate=\"age_under18\">Sotto i 18<\/option>\n                        <option value=\"18-24\">18-24<\/option>\n                        <option value=\"25-34\">25-34<\/option>\n                        <option value=\"35-44\">35-44<\/option>\n                        <option value=\"over45\" data-translate=\"age_over45\">Sopra i 45<\/option>\n                    <\/select>\n                <\/div>\n                <div class=\"form-group\">\n                    <label data-translate=\"traveling_with\">Viaggi con<\/label>\n                    <select name=\"traveling_with\">\n                        <option value=\"\" data-translate=\"select_option\">Seleziona un'opzione<\/option>\n                        <option value=\"alone\" data-translate=\"travel_alone\">Da solo<\/option>\n                        <option value=\"friends\" data-translate=\"travel_friends\">Amici<\/option>\n                        <option value=\"partner\" data-translate=\"travel_partner\">Partner<\/option>\n                        <option value=\"family\" data-translate=\"travel_family\">Famiglia<\/option>\n                    <\/select>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <!-- STEP 3 -->\n        <div class=\"form-step\" data-step=\"3\">\n            <div class=\"form-group full-width\">\n                <label data-translate=\"additional_requests\">Richieste particolari<\/label>\n                <textarea name=\"additional_requests\" rows=\"4\"><\/textarea>\n            <\/div>\n            <div class=\"form-group full-width\">\n                <label data-translate=\"last_minute_offers\">Interessato a offerte last minute per:<\/label>\n                <div class=\"checkbox-group\">\n                    <label>\n                        <input type=\"checkbox\" name=\"offer_tents\" value=\"1\">\n                        <span data-translate=\"tent\">Tende<\/span>\n                    <\/label>\n                    <label>\n                        <input type=\"checkbox\" name=\"offer_bungalows\" value=\"1\">\n                        <span data-translate=\"bungalow\">Bungalow<\/span>\n                    <\/label>\n                <\/div>\n            <\/div>\n            <div class=\"form-row\">\n                <div class=\"form-group\">\n                    <label data-translate=\"contact_preference\">Canale di contatto preferito<\/label>\n                    <select name=\"contact_preference\">\n                        <option value=\"email\" data-translate=\"contact_email\">Email<\/option>\n                        <option value=\"phone\" data-translate=\"contact_phone\">Telefono<\/option>\n                    <\/select>\n                <\/div>\n                <div class=\"form-group\">\n                    <label data-translate=\"response_language\">Lingua preferita di risposta<\/label>\n                    <div class=\"lang-choice-buttons\">\n                        <button type=\"button\" class=\"lang-choice-btn active\" data-value=\"1\" onclick=\"setResponseLang(this)\">\ud83c\uddee\ud83c\uddf9 Italiano<\/button>\n                        <button type=\"button\" class=\"lang-choice-btn\" data-value=\"2\" onclick=\"setResponseLang(this)\">\ud83c\uddec\ud83c\udde7 English<\/button>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <div class=\"form-navigation\">\n            <button type=\"button\" class=\"btn btn-prev\" id=\"prevBtn\" style=\"display:none;\" data-translate=\"btn_prev\">Indietro<\/button>\n            <button type=\"button\" class=\"btn btn-next\" id=\"nextBtn\" data-translate=\"btn_next\">Avanti<\/button>\n            <button type=\"submit\" class=\"btn btn-submit\" id=\"submitBtn\" style=\"display:none;\" data-translate=\"btn_submit\">Invia Richiesta<\/button>\n        <\/div>\n    <\/form>\n\n    <div class=\"custom-popup\" id=\"customPopup\">\n        <div class=\"popup-content\">\n            <div class=\"popup-icon\" id=\"popupIcon\"><\/div>\n            <h3 class=\"popup-title\" id=\"popupTitle\"><\/h3>\n            <p class=\"popup-message\" id=\"popupMessage\"><\/p>\n            <button class=\"popup-close\" id=\"popupClose\">Chiudi<\/button>\n        <\/div>\n    <\/div>\n<\/div>\n\n<script>\nconst translations = {\n    it: {\n        step1_label: 'Dati Personali', step2_label: 'Soggiorno', step3_label: 'Preferenze',\n        firstname: 'Nome', lastname: 'Cognome', email: 'Email', phone: 'Telefono',\n        adults: 'Numero di adulti', children: 'Numero di bambini',\n        children_ages: 'Et\u00e0 dei bambini (separate da virgola)',\n        arrival_date: 'Data di arrivo', departure_date: 'Data di partenza',\n        accommodation: 'Tipo di sistemazione', vehicle: 'Veicolo',\n        motorhome_size: 'Lunghezza Motorhome\/Caravan (metri)',\n        tent_size: 'Dimensione tenda', tent_model: 'Marca e modello tenda',\n        car_length: 'Modello auto',\n        tent_mini: 'Tenda mini (fino a 4,9 mq)',\n        tent_small: 'Tenda piccola (da 5 a 9,9 mq)',\n        tent_medium: 'Tenda media (da 10 a 14,99 mq)',\n        tent_large: 'Tenda grande (oltre 15 mq)',\n        age_range: 'Fascia d\\'et\u00e0', traveling_with: 'Viaggi con',\n        additional_requests: 'Richieste particolari',\n        last_minute_offers: 'Interessato a offerte last minute per:',\n        contact_preference: 'Canale di contatto preferito',\n        response_language: 'Lingua preferita di risposta',\n        select_option: 'Seleziona un\\'opzione',\n        bungalow: 'Bungalow', camper: 'Motorhome \/ Caravan', tent: 'Tenda',\n        vehicle_none: 'Nessuno', vehicle_car: 'Auto', vehicle_motorcycle: 'Moto', vehicle_bicycle: 'Bicicletta',\n        age_under18: 'Sotto i 18', age_over45: 'Sopra i 45',\n        travel_alone: 'Da solo', travel_friends: 'Amici', travel_partner: 'Partner', travel_family: 'Famiglia',\n        contact_email: 'Email', contact_phone: 'Telefono',\n        lang_italian: 'Italiano', lang_english: 'Inglese',\n        btn_prev: 'Indietro', btn_next: 'Avanti', btn_submit: 'Invia Richiesta',\n        error_required: 'Campo obbligatorio', error_email: 'Email non valida',\n        error_date: 'Deve essere successiva all\\'arrivo',\n        error_date_range: 'Date tra il 2 aprile e il 31 ottobre 2026',\n        error_date_order: 'La partenza deve essere dopo l\\'arrivo',\n        motorhome_type: 'Tipo di mezzo',\n        mh_motorhome:  'Camper',\n        mh_caravan:    'Roulotte',\n        mh_campervan:  'Furgone camperizzato',\n    },\n    en: {\n        step1_label: 'Personal Info', step2_label: 'Stay Details', step3_label: 'Preferences',\n        firstname: 'First Name', lastname: 'Last Name', email: 'Email', phone: 'Phone',\n        adults: 'Number of adults', children: 'Number of children',\n        children_ages: 'Children ages (comma separated)',\n        arrival_date: 'Date of arrival', departure_date: 'Date of departure',\n        accommodation: 'Accommodation type', vehicle: 'Vehicles',\n        motorhome_size: 'Motorhome\/Caravan Lenght (meters)',\n        tent_size: 'Tent Size', tent_model: 'Tent model',\n        car_length: 'Car model',\n        tent_mini: 'Mini tent (Up to 4.9 sqm)',\n        tent_small: 'Small tent (From 5 to 9.9 sqm)',\n        tent_medium: 'Medium tent (From 10 to 14.99 sqm)',\n        tent_large: 'Large tent (Over 15 sqm)',\n        age_range: 'Age Range', traveling_with: 'Travelling with',\n        additional_requests: 'Further requests',\n        last_minute_offers: 'Interested in last minute offers for:',\n        contact_preference: 'Contact channel',\n        response_language: 'Preferred reply language',\n        select_option: 'Select an option',\n        bungalow: 'Bungalow', camper: 'Motorhome \/ Caravan', tent: 'Tent',\n        vehicle_none: 'None', vehicle_car: 'Car', vehicle_motorcycle: 'Motorcycle', vehicle_bicycle: 'Bicycle',\n        age_under18: 'Under 18', age_over45: 'Over 45',\n        travel_alone: 'Alone', travel_friends: 'Friends', travel_partner: 'Partner', travel_family: 'Family',\n        contact_email: 'Email', contact_phone: 'Phone',\n        lang_italian: 'Italian', lang_english: 'English',\n        btn_prev: 'Previous', btn_next: 'Next', btn_submit: 'Submit Request',\n        error_required: 'Required field', error_email: 'Invalid email',\n        error_date: 'Must be after arrival date',\n        error_date_range: 'Dates must be between April 2 and October 31, 2026',\n        error_date_order: 'Departure must be after arrival',\n        motorhome_type: 'Type of vehicle',\n        mh_motorhome:  'Motorhome',\n        mh_caravan:    'Caravan',\n        mh_campervan:  'Campervan',\n    },\n    fr: {\n        step1_label: 'Infos Personnelles', step2_label: 'S\u00e9jour', step3_label: 'Pr\u00e9f\u00e9rences',\n        firstname: 'Pr\u00e9nom', lastname: 'Nom', email: 'Email', phone: 'T\u00e9l\u00e9phone',\n        adults: 'Nombre d\\'adultes', children: 'Nombre d\\'enfants',\n        children_ages: '\u00c2ges des enfants (s\u00e9par\u00e9s par virgule)',\n        arrival_date: 'Date d\\'arriv\u00e9e', departure_date: 'Date de d\u00e9part',\n        accommodation: 'Type de logement', vehicle: 'V\u00e9hicule',\n        motorhome_size: 'Taille Camping-car\/Caravane (m\u00e8tres)',\n        tent_size: 'Taille de la tente', tent_model: 'Marque et mod\u00e8le de tente',\n        car_length: 'Mod\u00e8le de voiture',\n        tent_mini: 'Mini tente (jusqu\\'\u00e0 4,9 m\u00b2)',\n        tent_small: 'Petite tente (de 5 \u00e0 9,9 m\u00b2)',\n        tent_medium: 'Tente moyenne (de 10 \u00e0 14,99 m\u00b2)',\n        tent_large: 'Grande tente (plus de 15 m\u00b2)',\n        age_range: 'Tranche d\\'\u00e2ge', traveling_with: 'Vous voyagez avec',\n        additional_requests: 'Demandes suppl\u00e9mentaires',\n        last_minute_offers: 'Int\u00e9ress\u00e9 par les offres de derni\u00e8re minute pour:',\n        contact_preference: 'Canal de contact pr\u00e9f\u00e9r\u00e9',\n        response_language: 'Langue de r\u00e9ponse pr\u00e9f\u00e9r\u00e9e',\n        select_option: 'S\u00e9lectionnez une option',\n        bungalow: 'Bungalow', camper: 'Camping-car \/ Caravane', tent: 'Tente',\n        vehicle_none: 'Aucun', vehicle_car: 'Voiture', vehicle_motorcycle: 'Moto', vehicle_bicycle: 'V\u00e9lo',\n        age_under18: 'Moins de 18 ans', age_over45: 'Plus de 45 ans',\n        travel_alone: 'Seul', travel_friends: 'Amis', travel_partner: 'Partenaire', travel_family: 'Famille',\n        contact_email: 'Email', contact_phone: 'T\u00e9l\u00e9phone',\n        lang_italian: 'Italien', lang_english: 'Anglais',\n        btn_prev: 'Pr\u00e9c\u00e9dent', btn_next: 'Suivant', btn_submit: 'Envoyer la demande',\n        error_required: 'Champ obligatoire', error_email: 'Email invalide',\n        error_date: 'Doit \u00eatre apr\u00e8s la date d\\'arriv\u00e9e',\n        error_date_range: 'Dates entre le 2 avril et le 31 octobre 2026',\n        error_date_order: 'Le d\u00e9part doit \u00eatre apr\u00e8s l\\'arriv\u00e9e',\n        motorhome_type: 'Type de v\u00e9hicule',\n        mh_motorhome:  'Camping-car',\n        mh_caravan:    'Caravane',\n        mh_campervan:  'Van am\u00e9nag\u00e9',\n    },\n    de: {\n        step1_label: 'Pers\u00f6nliche Daten', step2_label: 'Aufenthalt', step3_label: 'Pr\u00e4ferenzen',\n        firstname: 'Vorname', lastname: 'Nachname', email: 'E-Mail', phone: 'Telefon',\n        adults: 'Anzahl Erwachsene', children: 'Anzahl Kinder',\n        children_ages: 'Alter der Kinder (durch Komma getrennt)',\n        arrival_date: 'Anreisedatum', departure_date: 'Abreisedatum',\n        accommodation: 'Unterkunftsart', vehicle: 'Fahrzeug',\n        motorhome_size: 'Wohnmobil\/Wohnwagen Gr\u00f6\u00dfe (Meter)',\n        tent_size: 'Zeltgr\u00f6\u00dfe', tent_model: 'Marke und Modell des Zeltes',\n        car_length: 'Automodell',\n        tent_mini: 'Mini-Zelt (bis 4,9 m\u00b2)',\n        tent_small: 'Kleines Zelt (von 5 bis 9,9 m\u00b2)',\n        tent_medium: 'Mittelgro\u00dfes Zelt (von 10 bis 14,99 m\u00b2)',\n        tent_large: 'Gro\u00dfes Zelt (\u00fcber 15 m\u00b2)',\n        age_range: 'Altersbereich', traveling_with: 'Reisen mit',\n        additional_requests: 'Zus\u00e4tzliche W\u00fcnsche',\n        last_minute_offers: 'Interessiert an Last-Minute-Angeboten f\u00fcr:',\n        contact_preference: 'Bevorzugter Kontaktkanal',\n        response_language: 'Bevorzugte Antwortsprache',\n        select_option: 'Option w\u00e4hlen',\n        bungalow: 'Bungalow', camper: 'Wohnmobil \/ Wohnwagen', tent: 'Zelt',\n        vehicle_none: 'Keins', vehicle_car: 'Auto', vehicle_motorcycle: 'Motorrad', vehicle_bicycle: 'Fahrrad',\n        age_under18: 'Unter 18', age_over45: '\u00dcber 45',\n        travel_alone: 'Allein', travel_friends: 'Freunde', travel_partner: 'Partner', travel_family: 'Familie',\n        contact_email: 'E-Mail', contact_phone: 'Telefon',\n        lang_italian: 'Italienisch', lang_english: 'Englisch',\n        btn_prev: 'Zur\u00fcck', btn_next: 'Weiter', btn_submit: 'Anfrage senden',\n        error_required: 'Pflichtfeld', error_email: 'Ung\u00fcltige E-Mail',\n        error_date: 'Muss nach der Ankunft liegen',\n        error_date_range: 'Daten zwischen 2. April und 31. Oktober 2026',\n        error_date_order: 'Abreise muss nach Anreise sein',\n        motorhome_type: 'Fahrzeugtyp',\n        mh_motorhome:  'Wohnmobil',\n        mh_caravan:    'Wohnwagen',\n        mh_campervan:  'Campervan',\n    }\n};\n\nlet selectedResponseLang = '1'; \/\/ variabile globale, fuori dal DOM\n\nfunction setResponseLang(btn) {\n    document.querySelectorAll('.lang-choice-btn').forEach(b => b.classList.remove('active'));\n    btn.classList.add('active');\n    selectedResponseLang = btn.dataset.value; \/\/ aggiorna solo la variabile JS\n}\n\n\nconst popupTranslations = {\n    it: {\n        success_title: 'Richiesta Inviata!',\n        success_message: 'Grazie per la tua richiesta. Ti contatteremo al pi\u00f9 presto per fornirti un preventivo dettagliato.',\n        error_title: 'Errore di Invio',\n        error_message: 'Si \u00e8 verificato un errore durante l\\'invio. Per favore riprova o contattaci direttamente.',\n        security_error_title: 'Verifica Fallita',\n        security_error_message: 'La verifica di sicurezza \u00e8 fallita. Per favore ricarica la pagina e riprova.',\n        connection_error_title: 'Errore di Connessione',\n        connection_error_message: 'Impossibile connettersi al server. Verifica la tua connessione e riprova.',\n        popup_close: 'Chiudi'\n    },\n    en: {\n        success_title: 'Request Sent!',\n        success_message: 'Thank you for your request. We will contact you as soon as possible with a detailed quote.',\n        error_title: 'Sending Error',\n        error_message: 'An error occurred while sending. Please try again or contact us directly.',\n        security_error_title: 'Verification Failed',\n        security_error_message: 'Security verification failed. Please reload the page and try again.',\n        connection_error_title: 'Connection Error',\n        connection_error_message: 'Unable to connect to the server. Check your connection and try again.',\n        popup_close: 'Close'\n    },\n    fr: {\n        success_title: 'Demande Envoy\u00e9e!',\n        success_message: 'Merci pour votre demande. Nous vous contactons d\u00e8s que possible avec un devis d\u00e9taill\u00e9.',\n        error_title: 'Erreur d\\'Envoi',\n        error_message: 'Une erreur s\\'est produite. Veuillez r\u00e9essayer ou nous contacter directement.',\n        security_error_title: 'V\u00e9rification \u00c9chou\u00e9e',\n        security_error_message: 'La v\u00e9rification de s\u00e9curit\u00e9 a \u00e9chou\u00e9. Veuillez recharger la page et r\u00e9essayer.',\n        connection_error_title: 'Erreur de Connexion',\n        connection_error_message: 'Impossible de se connecter au serveur. V\u00e9rifiez votre connexion.',\n        popup_close: 'Fermer'\n    },\n    de: {\n        success_title: 'Anfrage Gesendet!',\n        success_message: 'Vielen Dank f\u00fcr Ihre Anfrage. Wir werden Sie baldm\u00f6glichst kontaktieren.',\n        error_title: 'Sendefehler',\n        error_message: 'Beim Senden ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.',\n        security_error_title: '\u00dcberpr\u00fcfung Fehlgeschlagen',\n        security_error_message: 'Die Sicherheits\u00fcberpr\u00fcfung ist fehlgeschlagen. Bitte laden Sie die Seite neu.',\n        connection_error_title: 'Verbindungsfehler',\n        connection_error_message: 'Verbindung zum Server nicht m\u00f6glich. \u00dcberpr\u00fcfen Sie Ihre Verbindung.',\n        popup_close: 'Schlie\u00dfen'\n    }\n};\n\n\/\/ \u2500\u2500 STATE \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nlet currentStep = 1;\nconst totalSteps = 3;\nlet currentLang = 'it';\nconst SEASON_START = '2026-04-02';\nconst SEASON_END   = '2026-10-31';\n\nlet form, prevBtn, nextBtn, submitBtn, progressBar;\n\n\/\/ \u2500\u2500 INIT \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\ndocument.addEventListener('DOMContentLoaded', function() {\n    form        = document.getElementById('campingQuoteForm');\n    prevBtn     = document.getElementById('prevBtn');\n    nextBtn     = document.getElementById('nextBtn');\n    submitBtn   = document.getElementById('submitBtn');\n    progressBar = document.getElementById('progressBar');\n\n    updateProgressBar();\n    setupDateInputs();\n    setupConditionalFields();\n    setupLanguageSwitcher();\n\n    document.getElementById('popupClose').addEventListener('click', hideCustomPopup);\n    document.getElementById('customPopup').addEventListener('click', function(e) {\n        if (e.target === this) hideCustomPopup();\n    });\n\n    prevBtn.addEventListener('click', () => {\n        if (currentStep > 1) { currentStep--; updateForm(); }\n    });\n\n    nextBtn.addEventListener('click', () => {\n        if (validateStep(currentStep) && currentStep < totalSteps) {\n            currentStep++;\n            updateForm();\n        }\n    });\n\n    form.addEventListener('submit', function(e) {\n        e.preventDefault();\n        if (!validateStep(currentStep)) return;\n\n        submitBtn.disabled = true;\n        submitBtn.textContent = currentLang === 'it' ? 'Verifica in corso...' : 'Verifying...';\n\n        grecaptcha.ready(function() {\n            grecaptcha.execute('6LdcHUArAAAAAN8yKPqpSjy1bBsSJ8ANDngRzu2o', {action: 'camping_quote'}).then(function(token) {\n                const formData = new FormData(form);\n                const data = {\n                    action: 'camping_quote_request',\n                    nonce: typeof campingQuoteAjax !== 'undefined' ? campingQuoteAjax.nonce : '',\n                    lang: currentLang,\n                    recaptcha_token: token\n                };\n                formData.forEach((value, key) => { data[key] = value; });\n                data['response_language'] = selectedResponseLang;\n\n                submitBtn.textContent = currentLang === 'it' ? 'Invio in corso...' : 'Sending...';\n                const ajaxUrl = typeof campingQuoteAjax !== 'undefined' ? campingQuoteAjax.ajax_url : '\/wp-admin\/admin-ajax.php';\n\n                fetch(ajaxUrl, {\n                    method: 'POST',\n                    headers: { 'Content-Type': 'application\/x-www-form-urlencoded' },\n                    body: new URLSearchParams(data)\n                })\n                .then(r => r.json())\n                .then(result => {\n                    if (result.success) {\n                        if (typeof gtag === 'function') {\n                            gtag('event', 'conversion', {'send_to': 'AW-330262679\/t3c0CIeq4swcEJfRvZ0B'});\n                        }\n                        showCustomPopup('success', 'success_title', 'success_message');\n                        form.reset();\n                        currentStep = 1;\n                        updateForm();\n                        setupConditionalFields();\n                    } else {\n                        const key = result.data?.message?.includes('sicurezza') ? 'security_error' : 'error';\n                        showCustomPopup('error', key + '_title', key + '_message');\n                    }\n                })\n                .catch(() => showCustomPopup('error', 'connection_error_title', 'connection_error_message'))\n                .finally(() => {\n                    submitBtn.disabled = false;\n                    submitBtn.textContent = translations[currentLang].btn_submit;\n                });\n            }).catch(() => {\n                showCustomPopup('error', 'security_error_title', 'security_error_message');\n                submitBtn.disabled = false;\n                submitBtn.textContent = translations[currentLang].btn_submit;\n            });\n        });\n    });\n});\n\n\/\/ \u2500\u2500 POPUP \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nfunction showCustomPopup(type, titleKey, messageKey) {\n    const popup = document.getElementById('customPopup');\n    const icon  = document.getElementById('popupIcon');\n    const title = document.getElementById('popupTitle');\n    const msg   = document.getElementById('popupMessage');\n    icon.className = 'popup-icon';\n    icon.classList.add(type);\n    title.textContent = popupTranslations[currentLang][titleKey];\n    msg.textContent   = popupTranslations[currentLang][messageKey];\n    popup.classList.add('show');\n}\n\nfunction hideCustomPopup() {\n    document.getElementById('customPopup').classList.remove('show');\n}\n\n\/\/ \u2500\u2500 ALERT \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nfunction showAlert(message) {\n    const alertDiv = document.createElement('div');\n    alertDiv.style.cssText = 'position:fixed;top:20px;left:50%;transform:translateX(-50%);background:#E74C3C;color:white;padding:15px 25px;border-radius:8px;z-index:999999;font-size:14px;font-weight:600;box-shadow:0 4px 12px rgba(0,0,0,0.3);max-width:90%;text-align:center;';\n    alertDiv.textContent = message;\n    document.body.appendChild(alertDiv);\n    setTimeout(() => alertDiv.remove(), 4000);\n}\n\n\/\/ \u2500\u2500 DATE \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nfunction isDateInSeason(dateString) {\n    if (!dateString) return false;\n    return dateString >= SEASON_START && dateString <= SEASON_END;\n}\n\nfunction areDatesValid() {\n    const arrivalInput   = document.querySelector('input[name=\"arrival_date\"]');\n    const departureInput = document.querySelector('input[name=\"departure_date\"]');\n    const arrivalValue   = arrivalInput.value;\n    const departureValue = departureInput.value;\n    if (!arrivalValue || !departureValue) return false;\n    if (!isDateInSeason(arrivalValue) || !isDateInSeason(departureValue)) {\n        showAlert(translations[currentLang].error_date_range);\n        return false;\n    }\n    if (departureValue <= arrivalValue) {\n        showAlert(translations[currentLang].error_date_order);\n        return false;\n    }\n    return true;\n}\n\nfunction setupDateInputs() {\n    const arrivalInput   = document.querySelector('input[name=\"arrival_date\"]');\n    const departureInput = document.querySelector('input[name=\"departure_date\"]');\n\n    arrivalInput.setAttribute('min', SEASON_START);\n    arrivalInput.setAttribute('max', SEASON_END);\n    departureInput.setAttribute('min', SEASON_START);\n    departureInput.setAttribute('max', SEASON_END);\n\n    arrivalInput.addEventListener('change', function() {\n        const arrivalValue = this.value;\n        if (arrivalValue && isDateInSeason(arrivalValue)) {\n            const d = new Date(arrivalValue);\n            d.setDate(d.getDate() + 1);\n            const minDeparture = d.toISOString().split('T')[0];\n            if (minDeparture <= SEASON_END) departureInput.setAttribute('min', minDeparture);\n            if (departureInput.value && departureInput.value <= arrivalValue) {\n                departureInput.value = '';\n                showAlert(translations[currentLang].error_date_order);\n            }\n        }\n    });\n\n    arrivalInput.addEventListener('input', function() {\n        if (this.value && !isDateInSeason(this.value)) {\n            this.value = '';\n            showAlert(translations[currentLang].error_date_range);\n        }\n    });\n\n    departureInput.addEventListener('change', function() {\n        const departureValue = this.value;\n        const arrivalValue   = arrivalInput.value;\n        if (departureValue) {\n            if (!isDateInSeason(departureValue)) {\n                this.value = '';\n                showAlert(translations[currentLang].error_date_range);\n                return;\n            }\n            if (arrivalValue && departureValue <= arrivalValue) {\n                this.value = '';\n                showAlert(translations[currentLang].error_date_order);\n            }\n        }\n    });\n\n    departureInput.addEventListener('input', function() {\n        if (this.value && !isDateInSeason(this.value)) {\n            this.value = '';\n            showAlert(translations[currentLang].error_date_range);\n        }\n    });\n}\n\n\/\/ \u2500\u2500 CONDITIONAL FIELDS \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nfunction setupConditionalFields() {\n    const accommodationSelect = document.getElementById('accommodationSelect');\n    const vehicleSelect       = document.getElementById('vehicleSelect');\n    const motorhomeTypeGroup  = document.getElementById('motorhomeTypeGroup'); \n    const motorhomeSizeGroup  = document.getElementById('motorhomeSizeGroup');\n    const tentSizeGroup       = document.getElementById('tentSizeGroup');\n    const tentModelGroup      = document.getElementById('tentModelGroup');\n    const carLengthGroup      = document.getElementById('carLengthGroup');\n\n    function updateAccommodationFields() {\n        const value = accommodationSelect.value;\n        motorhomeTypeGroup.style.display = 'none'; \n        motorhomeSizeGroup.style.display = 'none';\n        tentSizeGroup.style.display      = 'none';\n        tentModelGroup.style.display     = 'none';\n        if (value === 'camper') {\n            motorhomeTypeGroup.style.display = 'block';\n            motorhomeSizeGroup.style.display = 'block';\n        }\n        else if (value === 'tent') {\n            tentSizeGroup.style.display  = 'block';\n            tentModelGroup.style.display = 'block';\n        }\n    }\n\n    function updateVehicleFields() {\n        carLengthGroup.style.display = (vehicleSelect.value === 'car') ? 'block' : 'none';\n    }\n\n    if (accommodationSelect) {\n        accommodationSelect.addEventListener('change', updateAccommodationFields);\n        updateAccommodationFields();\n    }\n    if (vehicleSelect) {\n        vehicleSelect.addEventListener('change', updateVehicleFields);\n        updateVehicleFields();\n    }\n}\n\n\/\/ \u2500\u2500 LANGUAGE \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nfunction setupLanguageSwitcher() {\n    const langBtns = document.querySelectorAll('.lang-btn');\n    langBtns.forEach(btn => {\n        btn.addEventListener('click', function() {\n            langBtns.forEach(b => b.classList.remove('active'));\n            this.classList.add('active');\n            currentLang = this.dataset.lang;\n            translatePage();\n        });\n    });\n}\n\nfunction translatePage() {\n    document.querySelectorAll('[data-translate]').forEach(el => {\n        const key = el.dataset.translate;\n        if (translations[currentLang][key]) {\n            if (el.tagName === 'INPUT' || el.tagName === 'TEXTAREA') {\n                el.placeholder = translations[currentLang][key];\n            } else if (el.tagName === 'OPTION') {\n                el.textContent = translations[currentLang][key];\n            } else {\n                el.textContent = translations[currentLang][key];\n            }\n        }\n    });\n    const closeBtn = document.getElementById('popupClose');\n    if (closeBtn) closeBtn.textContent = popupTranslations[currentLang].popup_close;\n}\n\n\/\/ \u2500\u2500 VALIDATION \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nfunction validateStep(step) {\n    const currentStepEl = document.querySelector(`.form-step[data-step=\"${step}\"]`);\n    const inputs = currentStepEl.querySelectorAll('input[required], select[required]');\n    let isValid = true;\n\n    inputs.forEach(input => {\n        const errorMsg = input.parentElement.querySelector('.error-message');\n        if (!input.value.trim()) {\n            input.classList.add('error');\n            if (errorMsg) errorMsg.style.display = 'block';\n            isValid = false;\n        } else if (input.type === 'email' && !isValidEmail(input.value)) {\n            input.classList.add('error');\n            if (errorMsg) { errorMsg.textContent = translations[currentLang].error_email; errorMsg.style.display = 'block'; }\n            isValid = false;\n        } else {\n            input.classList.remove('error');\n            if (errorMsg) errorMsg.style.display = 'none';\n        }\n    });\n\n    if (step === 2) {\n        if (!areDatesValid()) {\n            isValid = false;\n            document.querySelector('input[name=\"arrival_date\"]').classList.add('error');\n            document.querySelector('input[name=\"departure_date\"]').classList.add('error');\n        }\n    }\n\n    return isValid;\n}\n\nfunction isValidEmail(email) {\n    return \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email);\n}\n\n\/\/ \u2500\u2500 FORM DISPLAY \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nfunction updateForm() {\n    document.querySelectorAll('.form-step').forEach(s => s.classList.remove('active'));\n    document.querySelector(`.form-step[data-step=\"${currentStep}\"]`).classList.add('active');\n    document.querySelectorAll('.progress-step').forEach((s, i) => {\n        s.classList.remove('active', 'completed');\n        if (i + 1 < currentStep) s.classList.add('completed');\n        else if (i + 1 === currentStep) s.classList.add('active');\n    });\n    updateProgressBar();\n    prevBtn.style.display   = currentStep === 1 ? 'none' : 'block';\n    nextBtn.style.display   = currentStep === totalSteps ? 'none' : 'block';\n    submitBtn.style.display = currentStep === totalSteps ? 'block' : 'none';\n}\n\nfunction updateProgressBar() {\n    if (progressBar) progressBar.style.width = ((currentStep - 1) \/ (totalSteps - 1) * 100) + '%';\n}\n<\/script>\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<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Contact Us and ask for a free price quotation IT EN FR DE 1 Dati Personali 2 Soggiorno 3 Preferenze Nome Campo obbligatorio Cognome Campo obbligatorio Email Email non valida Telefono Numero di adulti Campo obbligatorio Numero di bambini Et\u00e0 dei bambini (separate da virgola) Data di arrivo Campo obbligatorio Data di partenza Deve essere successiva all&#8217;arrivo Tipo di sistemazione Seleziona un&#8217;opzioneBungalowMotorhome \/ CaravanTenda Campo obbligatorio Tipo di mezzo Seleziona un&#8217;opzioneCamperRoulotteFurgone camperizzato Lunghezza Motorhome\/Caravan (metri) Dimensione tenda Seleziona un&#8217;opzioneTenda mini (fino a 4,9 mq)Tenda piccola (da 5 a 9,9 mq)Tenda media (da 10 a 14,99 mq)Tenda grande (oltre 15 mq) Marca e modello tenda Veicolo Seleziona un&#8217;opzioneNessunoAutoMotoBicicletta Campo obbligatorio Modello auto Fascia d&#8217;et\u00e0 Seleziona un&#8217;opzioneSotto i 1818-2425-3435-44Sopra i 45 Viaggi con Seleziona un&#8217;opzioneDa soloAmiciPartnerFamiglia Richieste particolari Interessato a offerte last minute per: Tende Bungalow Canale di contatto preferito EmailTelefono Lingua preferita di risposta \ud83c\uddee\ud83c\uddf9 Italiano \ud83c\uddec\ud83c\udde7 English Indietro Avanti Invia Richiesta Chiudi<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-4283","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Availability - Camping San Sebastiano<\/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:\/\/www.campingsansebastiano.com\/de\/availability\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Availability - Camping San Sebastiano\" \/>\n<meta property=\"og:description\" content=\"Contact Us and ask for a free price quotation IT EN FR DE 1 Dati Personali 2 Soggiorno 3 Preferenze Nome Campo obbligatorio Cognome Campo obbligatorio Email Email non valida Telefono Numero di adulti Campo obbligatorio Numero di bambini Et\u00e0 dei bambini (separate da virgola) Data di arrivo Campo obbligatorio Data di partenza Deve essere successiva all&#8217;arrivo Tipo di sistemazione Seleziona un&#8217;opzioneBungalowMotorhome \/ CaravanTenda Campo obbligatorio Tipo di mezzo Seleziona un&#8217;opzioneCamperRoulotteFurgone camperizzato Lunghezza Motorhome\/Caravan (metri) Dimensione tenda Seleziona un&#8217;opzioneTenda mini (fino a 4,9 mq)Tenda piccola (da 5 a 9,9 mq)Tenda media (da 10 a 14,99 mq)Tenda grande (oltre 15 mq) Marca e modello tenda Veicolo Seleziona un&#8217;opzioneNessunoAutoMotoBicicletta Campo obbligatorio Modello auto Fascia d&#8217;et\u00e0 Seleziona un&#8217;opzioneSotto i 1818-2425-3435-44Sopra i 45 Viaggi con Seleziona un&#8217;opzioneDa soloAmiciPartnerFamiglia Richieste particolari Interessato a offerte last minute per: Tende Bungalow Canale di contatto preferito EmailTelefono Lingua preferita di risposta \ud83c\uddee\ud83c\uddf9 Italiano \ud83c\uddec\ud83c\udde7 English Indietro Avanti Invia Richiesta Chiudi\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.campingsansebastiano.com\/de\/availability\/\" \/>\n<meta property=\"og:site_name\" content=\"Camping San Sebastiano\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-08T08:25:35+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data1\" content=\"1\u00a0Minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/availability\\\/\",\"url\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/availability\\\/\",\"name\":\"Availability - Camping San Sebastiano\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/#website\"},\"datePublished\":\"2024-07-09T15:48:52+00:00\",\"dateModified\":\"2026-07-08T08:25:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/availability\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.campingsansebastiano.com\\\/availability\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/availability\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Availability\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/#website\",\"url\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/\",\"name\":\"Camping San Sebastiano\",\"description\":\"Campeggio San Sebastiano\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.campingsansebastiano.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Availability - Camping San Sebastiano","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:\/\/www.campingsansebastiano.com\/de\/availability\/","og_locale":"de_DE","og_type":"article","og_title":"Availability - Camping San Sebastiano","og_description":"Contact Us and ask for a free price quotation IT EN FR DE 1 Dati Personali 2 Soggiorno 3 Preferenze Nome Campo obbligatorio Cognome Campo obbligatorio Email Email non valida Telefono Numero di adulti Campo obbligatorio Numero di bambini Et\u00e0 dei bambini (separate da virgola) Data di arrivo Campo obbligatorio Data di partenza Deve essere successiva all&#8217;arrivo Tipo di sistemazione Seleziona un&#8217;opzioneBungalowMotorhome \/ CaravanTenda Campo obbligatorio Tipo di mezzo Seleziona un&#8217;opzioneCamperRoulotteFurgone camperizzato Lunghezza Motorhome\/Caravan (metri) Dimensione tenda Seleziona un&#8217;opzioneTenda mini (fino a 4,9 mq)Tenda piccola (da 5 a 9,9 mq)Tenda media (da 10 a 14,99 mq)Tenda grande (oltre 15 mq) Marca e modello tenda Veicolo Seleziona un&#8217;opzioneNessunoAutoMotoBicicletta Campo obbligatorio Modello auto Fascia d&#8217;et\u00e0 Seleziona un&#8217;opzioneSotto i 1818-2425-3435-44Sopra i 45 Viaggi con Seleziona un&#8217;opzioneDa soloAmiciPartnerFamiglia Richieste particolari Interessato a offerte last minute per: Tende Bungalow Canale di contatto preferito EmailTelefono Lingua preferita di risposta \ud83c\uddee\ud83c\uddf9 Italiano \ud83c\uddec\ud83c\udde7 English Indietro Avanti Invia Richiesta Chiudi","og_url":"https:\/\/www.campingsansebastiano.com\/de\/availability\/","og_site_name":"Camping San Sebastiano","article_modified_time":"2026-07-08T08:25:35+00:00","twitter_card":"summary_large_image","twitter_misc":{"Gesch\u00e4tzte Lesezeit":"1\u00a0Minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.campingsansebastiano.com\/availability\/","url":"https:\/\/www.campingsansebastiano.com\/availability\/","name":"Availability - Camping San Sebastiano","isPartOf":{"@id":"https:\/\/www.campingsansebastiano.com\/#website"},"datePublished":"2024-07-09T15:48:52+00:00","dateModified":"2026-07-08T08:25:35+00:00","breadcrumb":{"@id":"https:\/\/www.campingsansebastiano.com\/availability\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.campingsansebastiano.com\/availability\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.campingsansebastiano.com\/availability\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.campingsansebastiano.com\/"},{"@type":"ListItem","position":2,"name":"Availability"}]},{"@type":"WebSite","@id":"https:\/\/www.campingsansebastiano.com\/#website","url":"https:\/\/www.campingsansebastiano.com\/","name":"Camping San Sebastiano","description":"Campeggio San Sebastiano","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.campingsansebastiano.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"}]}},"_links":{"self":[{"href":"https:\/\/www.campingsansebastiano.com\/de\/wp-json\/wp\/v2\/pages\/4283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.campingsansebastiano.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.campingsansebastiano.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.campingsansebastiano.com\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.campingsansebastiano.com\/de\/wp-json\/wp\/v2\/comments?post=4283"}],"version-history":[{"count":323,"href":"https:\/\/www.campingsansebastiano.com\/de\/wp-json\/wp\/v2\/pages\/4283\/revisions"}],"predecessor-version":[{"id":8162,"href":"https:\/\/www.campingsansebastiano.com\/de\/wp-json\/wp\/v2\/pages\/4283\/revisions\/8162"}],"wp:attachment":[{"href":"https:\/\/www.campingsansebastiano.com\/de\/wp-json\/wp\/v2\/media?parent=4283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}