{"id":11,"date":"2023-06-26T13:08:11","date_gmt":"2023-06-26T11:08:11","guid":{"rendered":"https:\/\/la-ramorie.webticastage.be\/?page_id=11"},"modified":"2026-05-11T14:41:03","modified_gmt":"2026-05-11T12:41:03","slug":"home","status":"publish","type":"page","link":"https:\/\/la-ramorie.webticastage.be\/fr\/","title":{"rendered":"Accueil"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"11\" class=\"elementor elementor-11\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e629770 e-flex e-con-boxed e-con e-parent\" data-id=\"e629770\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;video&quot;,&quot;background_video_link&quot;:&quot;https:\\\/\\\/la-ramorie.webticastage.be\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Video-Header-portrait-3.mp4&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-background-video-container elementor-hidden-mobile\">\n\t\t\t\t\t\t\t<video class=\"elementor-background-video-hosted\" role=\"presentation\" autoplay muted playsinline loop><\/video>\n\t\t\t\t\t<\/div>\t\t<div class=\"elementor-element elementor-element-4bf89de animated-slow elementor-widget elementor-widget-heading\" data-id=\"4bf89de\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;none&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Priv\u00e9 Ch\u00e2teau-Domein<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a9682cd animated-slow elementor-widget elementor-widget-heading\" data-id=\"a9682cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;none&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Voor wie bewust samenkomt<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4c988f7 e-flex e-con-boxed e-con e-parent\" data-id=\"4c988f7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-595dffe e-flex e-con-boxed e-con e-child\" data-id=\"595dffe\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-666dd74 elementor-widget elementor-widget-html\" data-id=\"666dd74\" 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<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300&family=Jost:wght@300;400;500;600&display=swap\" rel=\"stylesheet\">\r\n<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/flatpickr\/dist\/flatpickr.min.css\">\r\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/flatpickr\"><\/script>\r\n<script src=\"https:\/\/js.stripe.com\/v3\/\"><\/script>\r\n\r\n<div id=\"cgb-wrap\" class=\"cgb-search-only\">\r\n\r\n<div class=\"cgb-search-bar\" id=\"cgb-search\">\r\n  <div class=\"cgb-field\">\r\n    <span class=\"cgb-field-lbl\">Arriv\u00e9e<\/span>\r\n    <div class=\"cgb-field-inner\">\r\n      <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\"\/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"\/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"\/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"\/><\/svg>\r\n      <input type=\"text\" id=\"cgb-ci-display\" placeholder=\"S\u00e9lectionner une date\" class=\"cgb-date-input\" style=\"cursor:pointer;-webkit-user-select:none;user-select:none\" readonly \/>\r\n      <input type=\"hidden\" id=\"cgb-ci\" \/>\r\n    <\/div>\r\n  <\/div>\r\n  <div class=\"cgb-sep\"><\/div>\r\n  <div class=\"cgb-field\">\r\n    <span class=\"cgb-field-lbl\">D\u00e9part<\/span>\r\n    <div class=\"cgb-field-inner\">\r\n      <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\"\/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"\/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"\/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"\/><\/svg>\r\n      <input type=\"text\" id=\"cgb-co-display\" placeholder=\"S\u00e9lectionner une date\" class=\"cgb-date-input\" style=\"cursor:pointer;-webkit-user-select:none;user-select:none\" readonly \/>\r\n      <input type=\"hidden\" id=\"cgb-co\" \/>\r\n    <\/div>\r\n  <\/div>\r\n  <div class=\"cgb-sep\"><\/div>\r\n  <div class=\"cgb-field cgb-field--sm\">\r\n    <span class=\"cgb-field-lbl\">Voyageurs<\/span>\r\n    <div class=\"cgb-field-inner\">\r\n      <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"\/><circle cx=\"9\" cy=\"7\" r=\"4\"\/><path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"\/><path d=\"M16 3.13a4 4 0 0 1 0 7.75\"\/><\/svg>\r\n      <select id=\"cgb-guests\" class=\"cgb-select\">\r\n        <option value=\"1\">1 voyageur<\/option><option value=\"2\">2 voyageurs<\/option><option value=\"3\">3 voyageurs<\/option><option value=\"4\">4 voyageurs<\/option><option value=\"5\">5 voyageurs<\/option><option value=\"6\">6 voyageurs<\/option><option value=\"7\">7 voyageurs<\/option><option value=\"8\">8 voyageurs<\/option><option value=\"9\">9 voyageurs<\/option><option value=\"10\">10 voyageurs<\/option><option value=\"11\">11 voyageurs<\/option><option value=\"12\">12 voyageurs<\/option><option value=\"13\">13 voyageurs<\/option><option value=\"14\">14 voyageurs<\/option><option value=\"15\">15 voyageurs<\/option>      <\/select>\r\n    <\/div>\r\n  <\/div>\r\n  <button id=\"cgb-search-btn\" class=\"cgb-btn-search\">\r\n    <span id=\"cgb-search-lbl\">Rechercher<\/span>\r\n    <span id=\"cgb-search-spin\" style=\"display:none\"><svg class=\"cgb-spin\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><path d=\"M21 12a9 9 0 1 1-6.219-8.56\"\/><\/svg><\/span>\r\n  <\/button>\r\n<\/div>\r\n\r\n<div id=\"cgb-err\" class=\"cgb-error\" style=\"display:none\"><\/div>\r\n\r\n<div id=\"cgb-result\" style=\"display:none\">\r\n  <div class=\"cgb-result-card\">\r\n    <div class=\"cgb-result-photo\">\r\n      <img decoding=\"async\" src=\"https:\/\/hostaway-platform.s3.us-west-2.amazonaws.com\/listing\/185820-500179-vKw97r--zsyCTtrguubOM2vpyGRrM9xAMghDF4AUofyE-69c2616757563\" alt=\"Ch\u00e2teau Guillermo\" \/>\r\n    <\/div>\r\n    <div class=\"cgb-result-info\">\r\n      <div class=\"cgb-result-name\">Ch\u00e2teau Guillermo<\/div>\r\n    <\/div>\r\n    <div class=\"cgb-result-price\">\r\n      <div class=\"cgb-rp-nights-row\">\r\n        <div class=\"cgb-rp-nights\"><span id=\"cgb-r-nights\">0<\/span> <span id=\"cgb-r-nights-lbl\"><\/span><\/div>\r\n        <div class=\"cgb-rp-dates\" id=\"cgb-r-dates-bar\"><\/div>\r\n      <\/div>\r\n      <div class=\"cgb-rp-row\"><span>R\u00e9servation du ch\u00e2teau<\/span><span id=\"cgb-rb-stay\">\u20ac0<\/span><\/div>\r\n      <div class=\"cgb-rp-row cgb-hide-cleaning\" style=\"display:none!important\"><span>Frais de m\u00e9nage<\/span><span id=\"cgb-rb-clean\">\u20ac0<\/span><\/div>\r\n      <div class=\"cgb-rp-row cgb-rp-tax\" style=\"display:none\"><span id=\"cgb-rb-taxname\">Tax<\/span><span id=\"cgb-rb-tax\">\u20ac0<\/span><\/div>\r\n      <div class=\"cgb-rp-total\"><span>Total<\/span><span id=\"cgb-rb-total\">\u20ac0<\/span><\/div>\r\n      <div class=\"cgb-rp-deposit\">+ \u20ac750 + caution remboursable<\/div>\r\n      <button id=\"cgb-book-now\" class=\"cgb-btn-book\">R\u00e9server maintenant<\/button>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<div id=\"cgb-checkout\" style=\"display:none\">\r\n\r\n  <div class=\"cgb-progress\">\r\n    <div class=\"cgb-prog-step active\" data-s=\"1\">1. Options flexibles<\/div>\r\n    <div class=\"cgb-prog-step\" data-s=\"2\">2. Vos coordonn\u00e9es<\/div>\r\n    <div class=\"cgb-prog-step\" data-s=\"3\">3. R\u00e9capitulatif & r\u00e9duction<\/div>\r\n    <div class=\"cgb-prog-step\" data-s=\"4\">4. Conditions g\u00e9n\u00e9rales<\/div>\r\n    <div class=\"cgb-prog-step\" data-s=\"5\">5. Paiement s\u00e9curis\u00e9<\/div>\r\n  <\/div>\r\n\r\n  <div class=\"cgb-co-layout\">\r\n    <div class=\"cgb-co-left\">\r\n\r\n      <!-- STEP 1: Flexible Options -->\r\n      <div class=\"cgb-step\" id=\"cgb-step-1\">\r\n        <h2 class=\"cgb-step-title\">Options flexibles<\/h2>\r\n        <p class=\"cgb-step-desc\">Choisissez ce qui vous convient.<\/p>\r\n        <div class=\"cgb-extras-list\">\r\n                    <div class=\"cgb-extra-row\" data-id=\"1137103\" data-amount=\"75\" data-per=\"stay\" data-sel=\"0\" data-max=\"1\">\r\n            <div class=\"cgb-extra-info\">\r\n              <div class=\"cgb-extra-name\">Arriv\u00e9e anticip\u00e9e 10h (selon disponibilit\u00e9)<\/div>\r\n              <div class=\"cgb-extra-desc\">Confirmation le jour de l&#039;arriv\u00e9e<\/div>\r\n            <\/div>\r\n            <div class=\"cgb-extra-price\">\u20ac75<\/div>\r\n                        <label class=\"cgb-checkbox-wrap\">\r\n              <input type=\"checkbox\" class=\"cgb-toggle-cb cgb-checkbox-inp\" \/>\r\n              <span class=\"cgb-checkbox-box\">\r\n                <svg class=\"cgb-checkbox-tick\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"><polyline points=\"2,6 5,9 10,3\" stroke=\"#141414\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\r\n              <\/span>\r\n            <\/label>\r\n                      <\/div>\r\n                    <div class=\"cgb-extra-row\" data-id=\"1124334\" data-amount=\"125\" data-per=\"stay\" data-sel=\"0\" data-max=\"1\">\r\n            <div class=\"cgb-extra-info\">\r\n              <div class=\"cgb-extra-name\">Arriv\u00e9e anticip\u00e9e 10h (garantie)<\/div>\r\n              <div class=\"cgb-extra-desc\">Journ\u00e9e enti\u00e8re imm\u00e9diatement bloqu\u00e9e<\/div>\r\n            <\/div>\r\n            <div class=\"cgb-extra-price\">\u20ac125<\/div>\r\n                        <label class=\"cgb-checkbox-wrap\">\r\n              <input type=\"checkbox\" class=\"cgb-toggle-cb cgb-checkbox-inp\" \/>\r\n              <span class=\"cgb-checkbox-box\">\r\n                <svg class=\"cgb-checkbox-tick\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"><polyline points=\"2,6 5,9 10,3\" stroke=\"#141414\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\r\n              <\/span>\r\n            <\/label>\r\n                      <\/div>\r\n                    <div class=\"cgb-extra-row\" data-id=\"1137105\" data-amount=\"175\" data-per=\"stay\" data-sel=\"0\" data-max=\"1\">\r\n            <div class=\"cgb-extra-info\">\r\n              <div class=\"cgb-extra-name\">D\u00e9part tardif 19h (selon disponibilit\u00e9)<\/div>\r\n              <div class=\"cgb-extra-desc\">Confirmation le jour de l&#039;arriv\u00e9e<\/div>\r\n            <\/div>\r\n            <div class=\"cgb-extra-price\">\u20ac175<\/div>\r\n                        <label class=\"cgb-checkbox-wrap\">\r\n              <input type=\"checkbox\" class=\"cgb-toggle-cb cgb-checkbox-inp\" \/>\r\n              <span class=\"cgb-checkbox-box\">\r\n                <svg class=\"cgb-checkbox-tick\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"><polyline points=\"2,6 5,9 10,3\" stroke=\"#141414\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\r\n              <\/span>\r\n            <\/label>\r\n                      <\/div>\r\n                    <div class=\"cgb-extra-row\" data-id=\"1137107\" data-amount=\"295\" data-per=\"stay\" data-sel=\"0\" data-max=\"1\">\r\n            <div class=\"cgb-extra-info\">\r\n              <div class=\"cgb-extra-name\">D\u00e9part tardif 19h (garanti)<\/div>\r\n              <div class=\"cgb-extra-desc\">Journ\u00e9e enti\u00e8re imm\u00e9diatement bloqu\u00e9e<\/div>\r\n            <\/div>\r\n            <div class=\"cgb-extra-price\">\u20ac295<\/div>\r\n                        <label class=\"cgb-checkbox-wrap\">\r\n              <input type=\"checkbox\" class=\"cgb-toggle-cb cgb-checkbox-inp\" \/>\r\n              <span class=\"cgb-checkbox-box\">\r\n                <svg class=\"cgb-checkbox-tick\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"><polyline points=\"2,6 5,9 10,3\" stroke=\"#141414\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\r\n              <\/span>\r\n            <\/label>\r\n                      <\/div>\r\n                    <div class=\"cgb-extra-row\" data-id=\"1137148\" data-amount=\"250\" data-per=\"stay\" data-sel=\"0\" data-max=\"1\">\r\n            <div class=\"cgb-extra-info\">\r\n              <div class=\"cgb-extra-name\">Assurance annulation<\/div>\r\n              <div class=\"cgb-extra-desc\">Changement gratuit jusqu&#039;\u00e0 1 jour avant l&#039;arriv\u00e9e<\/div>\r\n            <\/div>\r\n            <div class=\"cgb-extra-price\">\u20ac250<\/div>\r\n                        <label class=\"cgb-checkbox-wrap\">\r\n              <input type=\"checkbox\" class=\"cgb-toggle-cb cgb-checkbox-inp\" \/>\r\n              <span class=\"cgb-checkbox-box\">\r\n                <svg class=\"cgb-checkbox-tick\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\"><polyline points=\"2,6 5,9 10,3\" stroke=\"#141414\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\r\n              <\/span>\r\n            <\/label>\r\n                      <\/div>\r\n                  <\/div>\r\n        <div class=\"cgb-step-nav\">\r\n          <div><\/div>\r\n          <button class=\"cgb-btn-continue\" id=\"cgb-s1-next\">Continuer \u2192<\/button>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- STEP 2: Details -->\r\n      <div class=\"cgb-step\" id=\"cgb-step-2\" style=\"display:none\">\r\n        <h2 class=\"cgb-step-title\">Vos coordonn\u00e9es<\/h2>\r\n        <div class=\"cgb-form-row\">\r\n          <div class=\"cgb-fw\"><label>Pr\u00e9nom *<\/label><input type=\"text\" id=\"cgb-fn\" class=\"cgb-inp\" placeholder=\"Marie\" \/><\/div>\r\n          <div class=\"cgb-fw\"><label>Nom de famille *<\/label><input type=\"text\" id=\"cgb-ln\" class=\"cgb-inp\" placeholder=\"Dupont\" \/><\/div>\r\n        <\/div>\r\n        <div class=\"cgb-form-row\">\r\n          <div class=\"cgb-fw\"><label>Adresse e-mail *<\/label><input type=\"email\" id=\"cgb-em\" class=\"cgb-inp\" placeholder=\"marie@example.com\" \/><\/div>\r\n          <div class=\"cgb-fw\"><label>Num\u00e9ro de t\u00e9l\u00e9phone *<\/label>\r\n            <div class=\"cgb-phone-wrap\">\r\n              <select id=\"cgb-ph-code\" class=\"cgb-inp cgb-inp--code\">\r\n                <option value=\"+32\">\ud83c\udde7\ud83c\uddea +32<\/option><option value=\"+31\">\ud83c\uddf3\ud83c\uddf1 +31<\/option>\r\n                <option value=\"+33\">\ud83c\uddeb\ud83c\uddf7 +33<\/option><option value=\"+49\">\ud83c\udde9\ud83c\uddea +49<\/option>\r\n                <option value=\"+44\">\ud83c\uddec\ud83c\udde7 +44<\/option><option value=\"+352\">\ud83c\uddf1\ud83c\uddfa +352<\/option>\r\n                <option value=\"+43\">\ud83c\udde6\ud83c\uddf9 +43<\/option><option value=\"+41\">\ud83c\udde8\ud83c\udded +41<\/option>\r\n                <option value=\"+34\">\ud83c\uddea\ud83c\uddf8 +34<\/option><option value=\"+39\">\ud83c\uddee\ud83c\uddf9 +39<\/option>\r\n                <option value=\"+351\">\ud83c\uddf5\ud83c\uddf9 +351<\/option><option value=\"+48\">\ud83c\uddf5\ud83c\uddf1 +48<\/option>\r\n                <option value=\"+1\">\ud83c\uddfa\ud83c\uddf8 +1<\/option><option value=\"+61\">\ud83c\udde6\ud83c\uddfa +61<\/option>\r\n                <option value=\"+63\">\ud83c\uddf5\ud83c\udded +63<\/option>\r\n              <\/select>\r\n              <input type=\"tel\" id=\"cgb-ph\" class=\"cgb-inp\" placeholder=\"470 00 00 00\" \/>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cgb-form-section-lbl\">Adres \/ Address \/ Adresse<\/div>\r\n        <div class=\"cgb-form-row\">\r\n          <div class=\"cgb-fw cgb-fw--2\"><label>Rue & num\u00e9ro *<\/label><input type=\"text\" id=\"cgb-addr\" class=\"cgb-inp\" placeholder=\"Rue de la Paix 12\" \/><\/div>\r\n          <div class=\"cgb-fw\"><label>Code postal *<\/label><input type=\"text\" id=\"cgb-zip\" class=\"cgb-inp\" placeholder=\"1000\" \/><\/div>\r\n        <\/div>\r\n        <div class=\"cgb-form-row\">\r\n          <div class=\"cgb-fw\"><label>Ville *<\/label><input type=\"text\" id=\"cgb-city\" class=\"cgb-inp\" placeholder=\"Brussels\" \/><\/div>\r\n          <div class=\"cgb-fw\">\r\n            <label>Pays *<\/label>\r\n            <select id=\"cgb-country\" class=\"cgb-inp\">\r\n              <option value=\"\">S\u00e9lectionner un pays\u2026<\/option>\r\n              <option value=\"BE\">Belgium<\/option><option value=\"NL\">Netherlands<\/option>\r\n              <option value=\"FR\">France<\/option><option value=\"DE\">Germany<\/option>\r\n              <option value=\"GB\">United Kingdom<\/option><option value=\"LU\">Luxembourg<\/option>\r\n              <option value=\"AT\">Austria<\/option><option value=\"CH\">Switzerland<\/option>\r\n              <option value=\"ES\">Spain<\/option><option value=\"IT\">Italy<\/option>\r\n              <option value=\"PT\">Portugal<\/option><option value=\"PL\">Poland<\/option>\r\n              <option value=\"US\">United States<\/option><option value=\"CA\">Canada<\/option>\r\n              <option value=\"AU\">Australia<\/option><option value=\"other\">Other<\/option>\r\n            <\/select>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"cgb-fw\"><label>Motif de votre s\u00e9jour *<\/label><textarea id=\"cgb-msg\" class=\"cgb-inp cgb-ta\" rows=\"3\" placeholder=\"Ex. anniversaire, f\u00eate de famille, s\u00e9minaire\u2026\"><\/textarea><\/div>\r\n        <div id=\"cgb-step2-err\" class=\"cgb-field-err\" style=\"display:none\"><\/div>\r\n        <div class=\"cgb-step-nav\">\r\n          <button class=\"cgb-btn-back\" id=\"cgb-s2-back\">\u2190 Retour<\/button>\r\n          <button class=\"cgb-btn-continue\" id=\"cgb-s2-next\">V\u00e9rifier la r\u00e9servation \u2192<\/button>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- STEP 3: Review -->\r\n      <div class=\"cgb-step\" id=\"cgb-step-3\" style=\"display:none\">\r\n        <h2 class=\"cgb-step-title\">R\u00e9capitulatif & r\u00e9duction<\/h2>\r\n        <div class=\"cgb-review-box\">\r\n          <div class=\"cgb-review-lbl\">D\u00e9tails du prix<\/div>\r\n          <div class=\"cgb-review-row\"><span id=\"rv-stay-lbl\">R\u00e9servation du ch\u00e2teau<\/span><span id=\"rv-stay\">\u20ac0<\/span><\/div>\r\n          <div class=\"cgb-review-row cgb-hide-cleaning\" style=\"display:none!important\"><span>Frais de m\u00e9nage<\/span><span id=\"rv-clean\">\u20ac0<\/span><\/div>\r\n          <div class=\"cgb-review-row cgb-review-tax\" style=\"display:none\"><span id=\"rv-taxname\">Tax<\/span><span id=\"rv-tax\">\u20ac0<\/span><\/div>\r\n          <div id=\"rv-extras-list\"><\/div>\r\n          <div class=\"cgb-review-row cgb-review-discount\" style=\"display:none\"><span>Discount<\/span><span id=\"rv-discount\" style=\"color:#15803d\">-\u20ac0<\/span><\/div>\r\n          <div class=\"cgb-review-total\"><span>Total<\/span><span id=\"rv-total\">\u20ac0<\/span><\/div>\r\n          <div class=\"cgb-review-deposit\"><span>Refundable deposit<\/span><span>\u20ac750<\/span><\/div>\r\n        <\/div>\r\n        <div class=\"cgb-review-lbl\" style=\"margin-top:20px\">Code de r\u00e9duction<\/div>\r\n        <div class=\"cgb-coupon-row\">\r\n          <input type=\"text\" id=\"cgb-coupon\" class=\"cgb-inp\" placeholder=\"Code de r\u00e9duction\u2026\" style=\"text-transform:uppercase\" \/>\r\n          <button type=\"button\" id=\"cgb-coupon-apply\" class=\"cgb-btn-apply\">Appliquer<\/button>\r\n        <\/div>\r\n        <div id=\"cgb-coupon-msg\" style=\"display:none;font-size:16px;margin-top:8px\"><\/div>\r\n        <div class=\"cgb-review-lbl\" style=\"margin-top:20px\">Coordonn\u00e9es du voyageur<\/div>\r\n        <div class=\"cgb-review-guest\" id=\"rv-guest-summary\"><\/div>\r\n        <div class=\"cgb-review-lbl\" style=\"margin-top:16px\">Demandes sp\u00e9ciales<\/div>\r\n        <textarea id=\"cgb-msg2\" class=\"cgb-inp cgb-ta\" rows=\"3\" placeholder=\"\"><\/textarea>\r\n        <div class=\"cgb-step-nav\">\r\n          <button class=\"cgb-btn-back\" id=\"cgb-s3-back\">\u2190 Retour<\/button>\r\n          <button class=\"cgb-btn-continue\" id=\"cgb-s3-next\">Continuer \u2192<\/button>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- STEP 4: Terms -->\r\n      <div class=\"cgb-step\" id=\"cgb-step-4\" style=\"display:none\">\r\n        <h2 class=\"cgb-step-title\">Conditions g\u00e9n\u00e9rales<\/h2>\r\n        <div class=\"cgb-terms-box\">\r\n                    <div class=\"cgb-terms-section\"><strong>Annulation<\/strong>\r\n            <p>Jusqu'\u00e0 60 jours avant l'arriv\u00e9e : remboursement de 50% moins \u20ac75 de frais administratifs.<br>\r\n            59 \u00e0 45 jours : remboursement de 25%.<br>\r\n            45 jours ou moins \/ no-show \/ d\u00e9part anticip\u00e9 : 0% de remboursement.<\/p>\r\n          <\/div>\r\n          <div class=\"cgb-terms-section\"><strong>R\u00e8glement int\u00e9rieur<\/strong>\r\n            <p>Arriv\u00e9e : 16h00 \u00b7 D\u00e9part : 10h00<br>\r\n            Interdit de fumer \u00e0 l'int\u00e9rieur. Amende \u20ac250 + frais suppl\u00e9mentaires.<br>\r\n            Max 15 personnes (enfants\/b\u00e9b\u00e9s inclus).<br>\r\n            Pas de musique amplifi\u00e9e. Silence de 22h00 \u00e0 08h00.<br>\r\n            Animaux autoris\u00e9s si signal\u00e9s \u00e0 l'avance (suppl\u00e9ment \u20ac15\/animal).<\/p>\r\n          <\/div>\r\n          <div class=\"cgb-terms-section\"><strong>Caution<\/strong>\r\n            <p>Une caution remboursable de \u20ac750 est requise au plus tard 14 jours avant l'arriv\u00e9e.<\/p>\r\n          <\/div>\r\n          <div class=\"cgb-terms-section\"><strong>Complet<\/strong>\r\n            <p><a href=\"https:\/\/la-ramorie.webticastage.be\/algemene-voorwaarden\/\" target=\"_blank\" style=\"color:var(--gold)\">Voir les conditions g\u00e9n\u00e9rales compl\u00e8tes \u2192<\/a><\/p>\r\n          <\/div>\r\n                  <\/div>\r\n        <label class=\"cgb-check-row\"><input type=\"checkbox\" id=\"cgb-tc1\" \/><span>J'ai lu et j'accepte le r\u00e8glement int\u00e9rieur, la politique d'annulation, les conditions de caution et la politique de confidentialit\u00e9.<\/span><\/label>\r\n        <label class=\"cgb-check-row\"><input type=\"checkbox\" id=\"cgb-tc2\" \/><span>Oui, je souhaite recevoir des offres exclusives de Ch\u00e2teau Guillermo. <span class=\"cgb-opt\">(Optionnel)<\/span><\/span><\/label>\r\n        <div id=\"cgb-step4-err\" class=\"cgb-field-err\" style=\"display:none\"><\/div>\r\n        <div class=\"cgb-step-nav\">\r\n          <button class=\"cgb-btn-back\" id=\"cgb-s4-back\">\u2190 Retour<\/button>\r\n          <button class=\"cgb-btn-continue\" id=\"cgb-s4-next\">J'accepte & continuer \u2192<\/button>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- STEP 5: Payment -->\r\n      <div class=\"cgb-step\" id=\"cgb-step-5\" style=\"display:none\">\r\n        <h2 class=\"cgb-step-title\">Paiement s\u00e9curis\u00e9<\/h2>\r\n        <p class=\"cgb-step-desc\" id=\"cgb-pay-intro\">\r\n          Comment souhaitez-vous payer ?        <\/p>\r\n\r\n        <!-- Payment plan options \u2014 shown when >45 days before arrival -->\r\n        <div id=\"cgb-plan-options\" class=\"cgb-pay-methods\">\r\n          <label class=\"cgb-pay-method\" id=\"cgb-pm-full\">\r\n            <input type=\"radio\" name=\"cgb_plan\" value=\"full\" checked \/>\r\n            <div class=\"cgb-pm-body\">\r\n              <div class=\"cgb-pm-title\">Payer la totalit\u00e9 maintenant<\/div>\r\n              <div class=\"cgb-pm-desc\">Payez __TOTAL__ en totalit\u00e9 aujourd'hui. R\u00e9servation confirm\u00e9e instantan\u00e9ment.<\/div>\r\n            <\/div>\r\n            <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#EBC683\" stroke-width=\"1.5\"><rect x=\"1\" y=\"4\" width=\"22\" height=\"16\" rx=\"2\"\/><line x1=\"1\" y1=\"10\" x2=\"23\" y2=\"10\"\/><\/svg>\r\n          <\/label>\r\n          <label class=\"cgb-pay-method\" id=\"cgb-pm-split\">\r\n            <input type=\"radio\" name=\"cgb_plan\" value=\"split\" \/>\r\n            <div class=\"cgb-pm-body\">\r\n              <div class=\"cgb-pm-title\">Paiement en deux fois \u2014 30% maintenant, 70% plus tard<\/div>\r\n              <div class=\"cgb-pm-desc\">Payez __DEPOSIT__ aujourd'hui (30%) pour confirmer votre r\u00e9servation. Le solde restant __BALANCE__ est d\u00fb 45 jours avant l'arriv\u00e9e.<\/div>\r\n            <\/div>\r\n            <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#EBC683\" stroke-width=\"1.5\"><path d=\"M12 2v20M2 12h20\"\/><\/svg>\r\n          <\/label>\r\n        <\/div>\r\n\r\n        <!-- Full-only notice \u2014 shown when \u226445 days -->\r\n        <div id=\"cgb-plan-full-only\" style=\"display:none\">\r\n          <div class=\"cgb-pay-method cgb-pay-method--active\">\r\n            <div class=\"cgb-pm-body\">\r\n              <div class=\"cgb-pm-title\">Paiement int\u00e9gral par Stripe<\/div>\r\n              <div class=\"cgb-pm-desc\">Votre arriv\u00e9e est dans moins de 45 jours. Le paiement int\u00e9gral est requis maintenant.<\/div>\r\n            <\/div>\r\n            <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#EBC683\" stroke-width=\"1.5\"><rect x=\"1\" y=\"4\" width=\"22\" height=\"16\" rx=\"2\"\/><line x1=\"1\" y1=\"10\" x2=\"23\" y2=\"10\"\/><\/svg>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- Balance method sub-choice \u2014 shown only when split is selected -->\r\n        <div id=\"cgb-balance-method-wrap\" style=\"display:none;margin-top:16px\">\r\n          <p class=\"cgb-step-desc\" style=\"margin-bottom:10px\">Comment souhaitez-vous r\u00e9gler le solde restant (70%) ?<\/p>\r\n          <div class=\"cgb-pay-methods\">\r\n            <label class=\"cgb-pay-method\" id=\"cgb-bm-stripe\">\r\n              <input type=\"radio\" name=\"cgb_balance_method\" value=\"stripe\" checked \/>\r\n              <div class=\"cgb-pm-body\">\r\n                <div class=\"cgb-pm-title\">Lien de paiement Stripe<\/div>\r\n                <div class=\"cgb-pm-desc\">Nous vous enverrons un lien de paiement s\u00e9curis\u00e9 45 jours avant l'arriv\u00e9e.<\/div>\r\n              <\/div>\r\n              <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#EBC683\" stroke-width=\"1.5\"><rect x=\"1\" y=\"4\" width=\"22\" height=\"16\" rx=\"2\"\/><line x1=\"1\" y1=\"10\" x2=\"23\" y2=\"10\"\/><\/svg>\r\n            <\/label>\r\n            <label class=\"cgb-pay-method\" id=\"cgb-bm-bank\">\r\n              <input type=\"radio\" name=\"cgb_balance_method\" value=\"bank_transfer\" \/>\r\n              <div class=\"cgb-pm-body\">\r\n                <div class=\"cgb-pm-title\">Virement bancaire<\/div>\r\n                <div class=\"cgb-pm-desc\">Nous vous enverrons les coordonn\u00e9es bancaires 45 jours avant l'arriv\u00e9e.<\/div>\r\n              <\/div>\r\n              <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#EBC683\" stroke-width=\"1.5\"><rect x=\"2\" y=\"5\" width=\"20\" height=\"14\" rx=\"2\"\/><path d=\"M2 10h20\"\/><path d=\"M6 15h2\"\/><path d=\"M10 15h6\"\/><\/svg>\r\n            <\/label>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- Stripe payment element (always card\/Stripe) -->\r\n        <div id=\"cgb-card-section\" style=\"margin-top:20px\">\r\n          <div class=\"cgb-stripe-wrap\">\r\n            <label class=\"cgb-stripe-lbl\">D\u00e9tails de paiement<\/label>\r\n            <div id=\"cgb-stripe-el\"><\/div>\r\n          <\/div>\r\n          <div id=\"cgb-stripe-err\" class=\"cgb-field-err\" style=\"display:none\"><\/div>\r\n        <\/div>\r\n\r\n        <div id=\"cgb-step5-err\" class=\"cgb-field-err\" style=\"display:none\"><\/div>\r\n\r\n        <div class=\"cgb-step-nav\">\r\n          <button class=\"cgb-btn-back\" id=\"cgb-s5-back\">\u2190 Retour<\/button>\r\n          <button class=\"cgb-btn-pay\" id=\"cgb-pay-btn\" disabled>\r\n            <span id=\"cgb-pay-lbl\">Confirmer & payer <span id=\"cgb-pay-amt\"><\/span><\/span>\r\n            <span id=\"cgb-pay-spin\" style=\"display:none\"><svg class=\"cgb-spin\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><path d=\"M21 12a9 9 0 1 1-6.219-8.56\"\/><\/svg> Traitement\u2026<\/span>\r\n          <\/button>\r\n        <\/div>\r\n        <div class=\"cgb-secure\">\ud83d\udd12 S\u00e9curis\u00e9 par Stripe \u00b7 Chiffrement SSL \u00b7 Conforme PCI<\/div>\r\n      <\/div>\r\n\r\n    <\/div><!-- \/.cgb-co-left -->\r\n\r\n    <aside class=\"cgb-co-right\">\r\n      <div class=\"cgb-summary-card\">\r\n        <div class=\"cgb-sum-overview-title\">\r\n          R\u00e9capitulatif de votre r\u00e9servation        <\/div>\r\n        <hr class=\"cgb-sum-hr\" \/>\r\n        <div class=\"cgb-sum-section\">\r\n          <div class=\"cgb-sum-lbl\">D\u00e9tails du s\u00e9jour<\/div>\r\n          <div class=\"cgb-sum-trip-row\">\r\n            <span id=\"sum-dates\">\u2014<\/span>\r\n            <button type=\"button\" class=\"cgb-edit-btn\" id=\"sum-edit-dates\">Modifier<\/button>\r\n          <\/div>\r\n          <div class=\"cgb-sum-trip-row\">\r\n            <span id=\"sum-guests-lbl\">\u2014<\/span>\r\n            <button type=\"button\" class=\"cgb-edit-btn\" id=\"sum-edit-guests\">Modifier<\/button>\r\n          <\/div>\r\n          <div id=\"cgb-inline-date-edit\" style=\"display:none\">\r\n            <div id=\"cgb-inline-calendar\"><\/div>\r\n            <div style=\"font-size:14px;color:var(--muted);text-align:center;margin-top:6px\" id=\"cgb-inline-hint\">S\u00e9lectionner la date d'arriv\u00e9e<\/div>\r\n            <button type=\"button\" class=\"cgb-btn-apply\" id=\"cgb-inline-date-confirm\" style=\"width:100%;margin-top:10px;display:none\">Mettre \u00e0 jour les dates<\/button>\r\n          <\/div>\r\n          <div id=\"cgb-inline-guest-edit\" style=\"display:none;margin-top:12px\">\r\n            <label style=\"font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;display:block;margin-bottom:6px\">Nombre de voyageurs<\/label>\r\n            <select id=\"cgb-inline-guests\" class=\"cgb-inp\">\r\n              <option value=\"1\">1 voyageur<\/option><option value=\"2\">2 voyageurs<\/option><option value=\"3\">3 voyageurs<\/option><option value=\"4\">4 voyageurs<\/option><option value=\"5\">5 voyageurs<\/option><option value=\"6\">6 voyageurs<\/option><option value=\"7\">7 voyageurs<\/option><option value=\"8\">8 voyageurs<\/option><option value=\"9\">9 voyageurs<\/option><option value=\"10\">10 voyageurs<\/option><option value=\"11\">11 voyageurs<\/option><option value=\"12\">12 voyageurs<\/option><option value=\"13\">13 voyageurs<\/option><option value=\"14\">14 voyageurs<\/option><option value=\"15\">15 voyageurs<\/option>            <\/select>\r\n            <button type=\"button\" class=\"cgb-btn-apply\" id=\"cgb-inline-guest-confirm\" style=\"width:100%;margin-top:10px\">Mettre \u00e0 jour les voyageurs<\/button>\r\n          <\/div>\r\n        <\/div>\r\n        <hr class=\"cgb-sum-hr\" \/>\r\n        <div class=\"cgb-sum-section\">\r\n          <div class=\"cgb-sum-lbl\">D\u00e9tails du prix<\/div>\r\n          <div class=\"cgb-sum-price-row\"><span id=\"sum-stay-lbl\">R\u00e9servation du ch\u00e2teau<\/span><span id=\"sum-stay\">\u20ac0<\/span><\/div>\r\n          <div class=\"cgb-sum-price-row cgb-hide-cleaning\" style=\"display:none!important\"><span>Frais de m\u00e9nage<\/span><span id=\"sum-clean\">\u20ac0<\/span><\/div>\r\n          <div class=\"cgb-sum-price-row cgb-sum-tax\" style=\"display:none\"><span id=\"sum-taxname\">Tax<\/span><span id=\"sum-tax\">\u20ac0<\/span><\/div>\r\n          <div id=\"sum-extras-list\"><\/div>\r\n          <div class=\"cgb-sum-price-row cgb-sum-discount-row\" style=\"display:none\"><span>R\u00e9duction<\/span><span id=\"sum-discount\" style=\"color:#15803d\">-\u20ac0<\/span><\/div>\r\n        <\/div>\r\n        <hr class=\"cgb-sum-hr\" \/>\r\n        <div class=\"cgb-sum-total-row\"><span>Total<\/span><span id=\"sum-total\">\u20ac0<\/span><\/div>\r\n        <div class=\"cgb-sum-deposit-row\"><span>+ Caution remboursable<\/span><span>\u20ac750<\/span><\/div>\r\n        <!-- Due today row \u2014 shows 30% or 100% depending on plan -->\r\n        <div class=\"cgb-sum-due-row\" id=\"sum-due-row\"><span><strong>\u00c0 payer aujourd'hui<\/strong><\/span><span id=\"sum-due\"><strong>\u20ac0<\/strong><\/span><\/div>\r\n        <!-- Due later row \u2014 shown only on Step 5 with split plan + >45 days -->\r\n        <div class=\"cgb-sum-due-row cgb-sum-due-later cgb-hidden\" id=\"sum-due-later-row\">\r\n          <span style=\"color:var(--muted);font-size:13px\">D\u00fb 45 jours avant l'arriv\u00e9e<\/span>\r\n          <span id=\"sum-due-later\" style=\"color:var(--muted);font-size:13px\">\u20ac0<\/span>\r\n        <\/div>\r\n        <div class=\"cgb-sum-coupon-wrap\">\r\n          <button type=\"button\" class=\"cgb-sum-coupon-btn\" id=\"sum-add-coupon\">\r\n            <span id=\"sum-coupon-btn-lbl\">+ Ajouter un coupon<\/span>\r\n          <\/button>\r\n          <div id=\"sum-coupon-panel\" style=\"display:none;padding:12px 16px;border-top:1px solid var(--border)\">\r\n            <div class=\"cgb-coupon-row\">\r\n              <input type=\"text\" id=\"sum-coupon-input\" class=\"cgb-inp\" placeholder=\"Code de r\u00e9duction\u2026\" style=\"text-transform:uppercase;font-size:15px\" \/>\r\n              <button type=\"button\" id=\"sum-coupon-apply\" class=\"cgb-btn-apply\">Appliquer<\/button>\r\n            <\/div>\r\n            <div id=\"sum-coupon-msg\" style=\"display:none;font-size:14px;margin-top:8px\"><\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/aside>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n<div id=\"cgb-success\" style=\"display:none\">\r\n  <div class=\"cgb-success-inner\">\r\n    <div class=\"cgb-success-icon\">\ud83c\udff0<\/div>\r\n    <h2 class=\"cgb-success-title\">Votre ch\u00e2teau vous attend.<\/h2>\r\n    <p class=\"cgb-success-msg\" id=\"cgb-success-msg\">Votre r\u00e9servation est confirm\u00e9e. Tous les d\u00e9tails sont dans votre e-mail.<\/p>\r\n    <div class=\"cgb-success-ref\">Booking reference: <strong id=\"cgb-success-ref\">\u2014<\/strong><\/div>\r\n    <p class=\"cgb-success-contact\">Questions? <a href=\"mailto:info@la-ramorie.webticastage.be\">info@la-ramorie.webticastage.be<\/a><\/p>\r\n  <\/div>\r\n<\/div>\r\n\r\n<\/div><!-- \/#cgb-wrap -->\r\n\r\n\r\n<style>\r\n:root{--gold:#EBC683;--gold-hover:#d4a85a;--dark:#141414;--cream:#FAF8F3;--border:#E2DDD4;--muted:#888;--text:#2a2a2a;--err:#b91c1c;--ok:#15803d;--r:8px;--fd:'Cormorant Garamond',Georgia,serif;--fb:'Jost',sans-serif}\r\n#cgb-wrap,#cgb-wrap *{box-sizing:border-box!important;font-family:var(--fb)!important}\r\n#cgb-wrap.cgb-search-only{margin-bottom:80px!important;padding-bottom:16px!important}\r\n#cgb-wrap h2{all:unset!important;display:block!important;font-family:var(--fd)!important;font-size:24px!important;font-weight:400!important;color:var(--dark)!important;margin-bottom:20px!important}\r\n#cgb-wrap input,#cgb-wrap select,#cgb-wrap textarea,#cgb-wrap button{font-family:var(--fb)!important}\r\n#cgb-wrap label{font-weight:400!important;margin:0!important;cursor:default!important}\r\n#cgb-wrap img{max-width:100%!important}\r\n#cgb-wrap{max-width:980px!important;margin:0 auto!important;padding:0!important}\r\n\r\n.cgb-search-bar{display:flex!important;align-items:center!important;background:#fff!important;border:1px solid var(--border)!important;border-radius:12px!important;padding:10px 10px 10px 20px!important;box-shadow:0 2px 20px rgba(0,0,0,.06)!important;flex-wrap:wrap!important;gap:0!important;margin-bottom:0!important}\r\n.cgb-field{flex:1!important;min-width:120px!important;padding:8px 14px!important}\r\n.cgb-field--sm{flex:0 0 150px!important}\r\n.cgb-field-lbl{display:block!important;font-size:14px!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--muted)!important;font-weight:600!important;margin-bottom:6px!important}\r\n.cgb-field-inner{display:flex!important;align-items:center!important;gap:8px!important;color:#ccc!important}\r\n.cgb-date-input,.cgb-select{border:none!important;outline:none!important;background:transparent!important;font-size:17px!important;color:var(--text)!important;width:100%!important;padding:0!important;cursor:pointer!important;-webkit-appearance:none!important;appearance:none!important;box-shadow:none!important;height:auto!important}\r\n.cgb-sep{width:1px!important;height:32px!important;background:var(--border)!important;flex-shrink:0!important}\r\n.cgb-btn-search{background:var(--gold)!important;color:var(--dark)!important;border:none!important;border-radius:8px!important;padding:13px 26px!important;font-size:15px!important;font-weight:600!important;letter-spacing:.08em!important;text-transform:uppercase!important;cursor:pointer!important;white-space:nowrap!important;display:flex!important;align-items:center!important;gap:8px!important;margin-left:8px!important;flex-shrink:0!important;transition:background .2s!important}\r\n.cgb-btn-search:hover{background:#d4a85a!important}\r\n.cgb-spin{animation:cgb-spin .8s linear infinite!important}\r\n@keyframes cgb-spin{to{transform:rotate(360deg)}}\r\n.cgb-error{background:#fef2f2!important;border:1px solid #fecaca!important;color:var(--err)!important;border-radius:var(--r)!important;padding:12px 16px!important;font-size:16px!important;margin-top:12px!important}\r\n\r\n.cgb-result-card{display:grid!important;grid-template-columns:200px 1fr auto!important;border:1px solid var(--border)!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 2px 20px rgba(0,0,0,.06)!important;margin-top:16px!important;animation:cgb-fade .3s ease!important}\r\n@keyframes cgb-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}\r\n.cgb-result-photo img{width:200px!important;height:100%!important;min-height:180px!important;object-fit:cover!important;display:block!important}\r\n.cgb-result-info{padding:22px!important;border-right:1px solid var(--border)!important}\r\n.cgb-result-name{font-family:var(--fd)!important;font-size:23px!important;font-weight:400!important;color:var(--dark)!important;margin-bottom:6px!important}\r\n.cgb-result-price{padding:22px 26px!important;display:flex!important;flex-direction:column!important;gap:6px!important;min-width:220px!important;align-items:flex-end!important}\r\n.cgb-rp-nights-row{display:flex!important;justify-content:space-between!important;align-items:baseline!important;width:100%!important;margin-bottom:4px!important}\r\n.cgb-rp-nights{font-size:16px!important;color:var(--muted)!important}\r\n.cgb-rp-dates{font-size:16px!important;color:var(--muted)!important;text-align:right!important}\r\n.cgb-rp-row{display:flex!important;justify-content:space-between!important;width:100%!important;font-size:15px!important;color:#555!important;gap:16px!important}\r\n.cgb-rp-total{display:flex!important;justify-content:space-between!important;width:100%!important;font-family:var(--fd)!important;font-size:22px!important;color:var(--dark)!important;border-top:1px solid var(--border)!important;padding-top:8px!important;margin-top:4px!important;gap:16px!important}\r\n.cgb-rp-deposit{font-size:14px!important;color:#bbb!important}\r\n.cgb-btn-book{width:100%!important;padding:13px!important;background:var(--gold)!important;color:var(--dark)!important;border:none!important;border-radius:var(--r)!important;font-size:16px!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase!important;cursor:pointer!important;margin-top:6px!important;transition:background .2s!important}\r\n.cgb-btn-book:hover{background:#d4a85a!important}\r\n\r\n#cgb-checkout{margin-top:28px!important}\r\n.cgb-progress{display:flex!important;gap:0!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;overflow:hidden!important;margin-bottom:24px!important}\r\n.cgb-prog-step{flex:1!important;text-align:center!important;padding:10px 6px!important;font-size:16px!important;color:var(--muted)!important;background:var(--cream)!important;border-right:1px solid var(--border)!important;transition:all .3s!important}\r\n.cgb-prog-step:last-child{border-right:none!important}\r\n.cgb-prog-step.active{background:var(--dark)!important;color:#fff!important;font-weight:600!important}\r\n.cgb-prog-step.done{background:#f0ede6!important;color:var(--gold)!important}\r\n.cgb-co-layout{display:grid!important;grid-template-columns:1fr 340px!important;gap:32px!important;align-items:start!important}\r\n.cgb-co-right{position:sticky!important;top:90px!important}\r\n.cgb-step{background:#fff!important;border:1px solid var(--border)!important;border-radius:12px!important;padding:28px!important;box-shadow:0 2px 16px rgba(0,0,0,.05)!important}\r\n.cgb-step-title{font-family:var(--fd)!important;font-size:22px!important;font-weight:400!important;color:var(--dark)!important;margin:0 0 4px 0!important;display:flex!important;align-items:baseline!important;gap:12px!important}\r\n#cgb-wrap h2.cgb-step-title{margin:0 0 4px 0!important;padding:0!important}\r\n.cgb-step-sub{font-family:var(--fb)!important;font-size:16px!important;color:var(--muted)!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:400!important}\r\n.cgb-step-desc{font-size:16px!important;color:var(--muted)!important;margin:0 0 16px 0!important;padding:0!important}\r\n.cgb-form-section-lbl{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--muted)!important;font-weight:600!important;margin:16px 0 10px!important}\r\n.cgb-form-row{display:flex!important;gap:14px!important;margin-bottom:0!important}\r\n.cgb-fw{flex:1!important;margin-bottom:14px!important}\r\n.cgb-fw--2{flex:2!important}\r\n.cgb-fw label{display:block!important;font-size:14px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--muted)!important;margin-bottom:5px!important;font-weight:500!important}\r\n.cgb-inp{display:block!important;width:100%!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;padding:12px 14px!important;font-size:17px!important;color:var(--text)!important;background:#fff!important;outline:none!important;transition:border-color .2s!important;box-shadow:none!important;height:auto!important}\r\n.cgb-inp:focus{border-color:var(--gold)!important;box-shadow:0 0 0 3px rgba(235,198,131,.1)!important}\r\n.cgb-inp::placeholder{color:#ccc!important}\r\n.cgb-phone-wrap{display:flex!important;gap:8px!important}\r\n.cgb-inp--code{flex:0 0 100px!important;font-size:16px!important}\r\n.cgb-opt{font-size:16px!important;color:var(--muted)!important;text-transform:none!important;letter-spacing:0!important}\r\n.cgb-field-err{font-size:16px!important;color:var(--err)!important;background:#fef2f2!important;border:1px solid #fecaca!important;border-radius:var(--r)!important;padding:10px 14px!important;margin-top:10px!important}\r\n.cgb-step-nav{display:flex!important;gap:12px!important;justify-content:flex-end!important;margin-top:20px!important;flex-wrap:wrap!important}\r\n.cgb-btn-continue{padding:12px 28px!important;background:var(--gold)!important;color:var(--dark)!important;border:none!important;border-radius:var(--r)!important;font-size:14px!important;font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase!important;cursor:pointer!important;transition:background .2s!important}\r\n.cgb-btn-continue:hover{background:#d4a85a!important}\r\n.cgb-btn-back{padding:12px 20px!important;background:transparent!important;color:var(--muted)!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;font-size:14px!important;cursor:pointer!important;transition:border-color .2s!important}\r\n.cgb-btn-back:hover{border-color:var(--gold)!important;color:var(--gold)!important}\r\n.cgb-extras-list{display:flex!important;flex-direction:column!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;overflow:hidden!important;margin-bottom:20px!important}\r\n.cgb-extra-row{display:flex!important;align-items:center!important;gap:14px!important;padding:0 16px!important;background:#fff!important;border-bottom:1px solid var(--border)!important;transition:background .15s!important;height:72px!important;box-sizing:border-box!important}\r\n.cgb-extra-row:last-child{border-bottom:none!important}\r\n.cgb-extra-row.active{background:#fdfaf2!important}\r\n.cgb-extra-info{flex:1!important;min-width:0!important;overflow:hidden!important}\r\n.cgb-extra-name{font-size:14px!important;font-weight:500!important;color:var(--text)!important;margin-bottom:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}\r\n.cgb-extra-desc{font-size:13px!important;color:var(--muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}\r\n.cgb-extra-price{font-size:14px!important;font-weight:600!important;color:var(--dark)!important;white-space:nowrap!important;min-width:60px!important;text-align:right!important}\r\n.cgb-qty-ctrl{display:flex!important;align-items:center!important;gap:10px!important}\r\n.cgb-qty-btn{width:28px!important;height:28px!important;border:1px solid var(--border)!important;border-radius:50%!important;background:#fff!important;font-size:16px!important;line-height:1!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .2s!important;padding:0!important;color:var(--text)!important}\r\n.cgb-qty-btn:hover{border-color:var(--gold)!important;color:var(--gold)!important}\r\n.cgb-qty-val{font-size:15px!important;font-weight:600!important;min-width:20px!important;text-align:center!important;color:var(--dark)!important}\r\n.cgb-toggle-wrap{cursor:pointer!important;display:flex!important;align-items:center!important}\r\n.cgb-toggle-cb{display:none!important}\r\n.cgb-toggle{width:40px!important;height:22px!important;background:var(--border)!important;border-radius:11px!important;position:relative!important;transition:background .2s!important;flex-shrink:0!important}\r\n.cgb-toggle::after{content:''!important;position:absolute!important;width:16px!important;height:16px!important;background:#fff!important;border-radius:50%!important;top:3px!important;left:3px!important;transition:left .2s!important}\r\n.cgb-toggle-cb:checked + .cgb-toggle{background:var(--gold)!important}\r\n.cgb-toggle-cb:checked + .cgb-toggle::after{left:21px!important}\r\n\/* Checkbox replacement for extras *\/\r\n.cgb-checkbox-wrap{cursor:pointer!important;display:flex!important;align-items:center!important;flex-shrink:0!important}\r\n.cgb-checkbox-inp{display:none!important}\r\n.cgb-checkbox-box{width:22px!important;height:22px!important;border:2px solid var(--border)!important;border-radius:5px!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .18s!important;background:#fff!important;flex-shrink:0!important}\r\n.cgb-checkbox-tick{opacity:0!important;transition:opacity .15s!important}\r\n.cgb-checkbox-inp:checked + .cgb-checkbox-box{background:var(--gold)!important;border-color:var(--gold)!important}\r\n.cgb-checkbox-inp:checked + .cgb-checkbox-box .cgb-checkbox-tick{opacity:1!important}\r\n.cgb-extra-row:has(.cgb-checkbox-inp:checked){background:#fdfaf2!important}\r\n.cgb-review-box{background:var(--cream)!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;padding:18px 20px!important;margin-bottom:16px!important}\r\n.cgb-review-lbl{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--muted)!important;font-weight:600!important;margin-bottom:10px!important}\r\n.cgb-review-row{display:flex!important;justify-content:space-between!important;font-size:16px!important;padding:5px 0!important;color:#555!important;border-bottom:1px solid var(--border)!important}\r\n.cgb-review-total{display:flex!important;justify-content:space-between!important;font-size:17px!important;font-family:var(--fd)!important;font-weight:600!important;color:var(--dark)!important;padding-top:10px!important;margin-top:6px!important;border-top:2px solid var(--dark)!important}\r\n.cgb-review-deposit{display:flex!important;justify-content:space-between!important;font-size:16px!important;color:var(--muted)!important;padding-top:6px!important}\r\n.cgb-coupon-row{display:flex!important;gap:10px!important;margin-bottom:4px!important}\r\n.cgb-coupon-row .cgb-inp{flex:1!important}\r\n.cgb-btn-apply{padding:10px 18px!important;background:var(--dark)!important;color:var(--gold)!important;border:none!important;border-radius:var(--r)!important;font-size:16px!important;font-weight:600!important;cursor:pointer!important;white-space:nowrap!important;transition:background .2s!important}\r\n.cgb-btn-apply:hover{background:#222!important}\r\n.cgb-review-guest{background:var(--cream)!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;padding:14px 16px!important;font-size:15px!important;color:#555!important;line-height:1.8!important}\r\n.cgb-terms-box{background:var(--cream)!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;padding:18px 20px!important;margin-bottom:20px!important;max-height:220px!important;overflow-y:auto!important}\r\n.cgb-terms-section{margin-bottom:14px!important;font-size:15px!important;color:#555!important;line-height:1.6!important}\r\n.cgb-terms-section strong{display:block!important;font-size:14px!important;font-weight:600!important;color:var(--dark)!important;text-transform:uppercase!important;letter-spacing:.06em!important;margin-bottom:6px!important}\r\n.cgb-check-row{display:flex!important;align-items:flex-start!important;gap:10px!important;font-size:15px!important;color:#555!important;margin-bottom:12px!important;cursor:pointer!important;line-height:1.5!important}\r\n.cgb-check-row input{margin-top:2px!important;flex-shrink:0!important;accent-color:var(--gold)!important;width:15px!important;height:15px!important}\r\n.cgb-pay-methods{display:flex!important;flex-direction:column!important;gap:10px!important;margin-bottom:12px!important}\r\n.cgb-pay-method{display:flex!important;align-items:center!important;gap:14px!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;padding:16px!important;cursor:pointer!important;transition:border-color .2s!important}\r\n.cgb-pay-method:has(input:checked){border-color:var(--gold)!important;background:#fdfaf2!important}\r\n.cgb-pay-method--active{border-color:var(--gold)!important;background:#fdfaf2!important}\r\n.cgb-pay-method input{display:none!important}\r\n.cgb-pm-body{flex:1!important}\r\n.cgb-pm-title{font-size:14px!important;font-weight:600!important;color:var(--dark)!important;margin-bottom:2px!important}\r\n.cgb-pm-desc{font-size:16px!important;color:var(--muted)!important}\r\n.cgb-stripe-wrap{background:var(--cream)!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;padding:16px!important;margin-bottom:14px!important}\r\n.cgb-stripe-lbl{display:block!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--muted)!important;font-weight:600!important;margin-bottom:12px!important}\r\n.cgb-btn-pay{flex:1!important;padding:14px 24px!important;background:var(--gold)!important;color:var(--dark)!important;border:none!important;border-radius:var(--r)!important;font-size:15px!important;font-family:var(--fd)!important;font-weight:600!important;letter-spacing:.04em!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;transition:background .2s!important;min-width:200px!important}\r\n.cgb-btn-pay:hover:not(:disabled){background:#d4a85a!important}\r\n.cgb-btn-pay:disabled{opacity:.35!important;cursor:not-allowed!important}\r\n.cgb-secure{font-size:16px!important;color:var(--muted)!important;text-align:center!important;margin-top:12px!important}\r\n.cgb-summary-card{background:#fff!important;border:1px solid var(--border)!important;border-radius:12px!important;overflow:hidden!important;box-shadow:0 2px 16px rgba(0,0,0,.06)!important}\r\n.cgb-sum-hr{border:none!important;border-top:1px solid var(--border)!important;margin:0!important}\r\n.cgb-sum-section{padding:14px 16px!important}\r\n.cgb-sum-lbl{font-size:14px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:700!important;color:var(--dark)!important;margin-bottom:8px!important}\r\n.cgb-sum-text{font-size:14px!important;color:#555!important;line-height:1.7!important}\r\n.cgb-sum-trip-row{display:flex!important;justify-content:space-between!important;align-items:center!important;font-size:16px!important;color:var(--dark)!important;font-weight:600!important;margin-bottom:6px!important}\r\n.cgb-edit-btn{background:none!important;border:none!important;color:var(--gold)!important;font-size:14px!important;cursor:pointer!important;padding:0!important;text-decoration:underline!important;font-family:var(--fb)!important;font-weight:400!important}\r\n.cgb-sum-price-row{display:flex!important;justify-content:space-between!important;font-size:14px!important;color:#555!important;padding:5px 0!important}\r\n.cgb-sum-total-row{display:flex!important;justify-content:space-between!important;font-size:18px!important;font-weight:600!important;color:var(--dark)!important;padding:14px 16px 4px!important}\r\n.cgb-sum-deposit-row{display:flex!important;justify-content:space-between!important;font-size:16px!important;color:var(--muted)!important;padding:0 16px 4px!important}\r\n.cgb-sum-due-row{display:flex!important;justify-content:space-between!important;font-size:15px!important;color:var(--dark)!important;padding:4px 16px 12px!important}\r\n.cgb-hidden{display:none!important;visibility:hidden!important}\r\n.cgb-sum-coupon-wrap{border-top:1px solid var(--border)!important}\r\n.cgb-sum-coupon-btn{display:block!important;width:100%!important;background:none!important;border:none!important;padding:12px!important;font-size:16px!important;color:var(--gold)!important;cursor:pointer!important;text-align:center!important;font-family:var(--fb)!important;transition:background .15s!important}\r\n.cgb-sum-coupon-btn:hover{background:var(--cream)!important}\r\n.cgb-sum-overview-title{font-family:var(--fd)!important;font-size:20px!important;font-weight:400!important;color:var(--dark)!important;padding:18px 18px 14px!important;letter-spacing:.01em!important}\r\n#cgb-success{text-align:center!important;padding:60px 20px!important}\r\n.cgb-success-inner{max-width:480px!important;margin:0 auto!important}\r\n.cgb-success-icon{font-size:64px!important;margin-bottom:20px!important}\r\n.cgb-success-title{font-family:var(--fd)!important;font-size:32px!important;font-weight:300!important;color:var(--dark)!important;margin-bottom:14px!important}\r\n.cgb-success-msg{font-size:15px!important;color:var(--muted)!important;line-height:1.7!important;margin-bottom:20px!important}\r\n.cgb-success-ref{display:inline-block!important;background:var(--cream)!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;padding:10px 20px!important;font-size:16px!important;margin-bottom:16px!important}\r\n.cgb-success-contact{font-size:16px!important;color:var(--muted)!important}\r\n.cgb-success-contact a{color:var(--gold)!important}\r\n#cgb-inline-date-edit,#cgb-inline-guest-edit{margin-top:12px!important;padding-top:12px!important;border-top:1px solid var(--border)!important}\r\n.cgb-hide-cleaning{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important;padding:0!important;margin:0!important;border:none!important}\r\n.cgb-booking-active #cgb-result{display:none!important}\r\n.cgb-booking-active #cgb-avail-section{display:none!important}\r\n\r\n\/* Flatpickr *\/\r\n.flatpickr-calendar{font-family:var(--fb)!important;border:1px solid var(--border)!important;box-shadow:0 8px 32px rgba(0,0,0,.12)!important;border-radius:12px!important;padding:12px!important;width:308px!important}\r\n.flatpickr-months{padding:6px 0 12px!important;display:flex!important;align-items:center!important}\r\n.flatpickr-month{flex:1!important}\r\n.flatpickr-current-month{font-size:18px!important;font-weight:600!important;text-align:center!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important}\r\n.flatpickr-current-month .flatpickr-monthDropdown-months{font-weight:700!important;font-size:18px!important;-webkit-appearance:none!important;background:transparent!important;border:none!important;color:var(--dark)!important;padding:0!important;cursor:default!important}\r\n.flatpickr-current-month input.cur-year{font-size:18px!important;font-weight:600!important;color:var(--dark)!important;padding:0!important;width:52px!important}\r\n.flatpickr-current-month .numInputWrapper{width:52px!important}\r\n.numInputWrapper span{display:none!important}\r\n.flatpickr-weekdays,.flatpickr-days{width:280px!important;margin:0 auto!important}\r\n.flatpickr-weekdaycontainer{display:flex!important;width:280px!important}\r\n.flatpickr-weekday{font-size:12px!important;font-weight:600!important;color:var(--muted)!important;text-transform:uppercase!important;text-align:center!important;width:40px!important;flex:0 0 40px!important}\r\n.dayContainer{width:280px!important;min-width:280px!important;max-width:280px!important}\r\n.flatpickr-day{border-radius:50%!important;font-size:14px!important;height:38px!important;line-height:38px!important;width:38px!important;max-width:38px!important;margin:1px!important}\r\n.flatpickr-day:hover:not(.flatpickr-disabled){background:rgba(235,198,131,.2)!important;border-color:transparent!important}\r\n.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:var(--dark)!important;color:var(--gold)!important;border-color:var(--dark)!important;font-weight:700!important}\r\n.flatpickr-day.inRange{background:rgba(235,198,131,.15)!important;border-color:transparent!important;color:var(--dark)!important;border-radius:0!important;box-shadow:-5px 0 0 rgba(235,198,131,.15),5px 0 0 rgba(235,198,131,.15)!important}\r\n.flatpickr-day.today{border:2px solid var(--gold)!important;color:var(--dark)!important}\r\n.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{color:#bbb!important;text-decoration:line-through!important;background:transparent!important;cursor:not-allowed!important}\r\n#cgb-inline-calendar .flatpickr-calendar{box-shadow:none!important;border:1px solid var(--border)!important;border-radius:var(--r)!important;width:100%!important}\r\n#cgb-inline-calendar .flatpickr-day.selected,#cgb-inline-calendar .flatpickr-day.startRange,#cgb-inline-calendar .flatpickr-day.endRange{background:var(--dark)!important;border-color:var(--dark)!important;color:var(--gold)!important}\r\n#cgb-inline-calendar .flatpickr-day.inRange{background:rgba(235,198,131,.15)!important;border-color:transparent!important;box-shadow:none!important}\r\n\r\n\/* Availability calendar *\/\r\n#cgb-avail-section{max-width:980px!important;margin:32px auto 0!important}\r\n#cgb-avail-cal{background:#fff!important;border:1px solid var(--border)!important;border-radius:12px!important;padding:28px!important;box-shadow:0 2px 16px rgba(0,0,0,.05)!important}\r\n.cgb-cal-header{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:24px!important}\r\n.cgb-cal-title{font-family:var(--fd)!important;font-size:22px!important;font-weight:400!important;color:var(--dark)!important}\r\n.cgb-cal-nav{display:flex!important;gap:8px!important}\r\n.cgb-cal-arrow{width:36px!important;height:36px!important;border:1px solid var(--border)!important;border-radius:50%!important;background:#fff!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;color:var(--dark)!important;transition:all .2s!important;padding:0!important}\r\n.cgb-cal-arrow:hover{border-color:var(--gold)!important;color:var(--gold)!important}\r\n.cgb-cal-loading{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;padding:40px!important;color:var(--muted)!important;font-size:16px!important}\r\n.cgb-cal-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:32px!important}\r\n.cgb-month-title{text-align:center!important;margin-bottom:16px!important}\r\n.cgb-month-year{display:block!important;font-size:16px!important;color:var(--muted)!important;text-transform:uppercase!important;letter-spacing:.1em!important;margin-bottom:2px!important}\r\n.cgb-month-name{display:block!important;font-family:var(--fd)!important;font-size:18px!important;font-weight:400!important;color:var(--dark)!important;text-transform:uppercase!important;letter-spacing:.08em!important}\r\n.cgb-month-grid{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:2px!important}\r\n.cgb-weekday{text-align:center!important;font-size:10px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--muted)!important;padding:6px 0 10px!important}\r\n.cgb-day{text-align:center!important;padding:8px 4px!important;font-size:16px!important;color:var(--text)!important;border-radius:4px!important;cursor:pointer!important;transition:background .15s!important;line-height:1!important;user-select:none!important}\r\n.cgb-day:hover:not(.cgb-day--booked):not(.cgb-day--past):not(.cgb-day--empty){background:rgba(235,198,131,.15)!important}\r\n.cgb-day--empty,.cgb-day--past{color:#ddd!important;cursor:default!important;pointer-events:none!important}\r\n.cgb-day--booked{background:transparent!important;color:#bbb!important;cursor:not-allowed!important;text-decoration:line-through!important;border-radius:0!important}\r\n.cgb-day--booked-start{border-radius:6px 0 0 6px!important}\r\n.cgb-day--booked-end{border-radius:0 6px 6px 0!important}\r\n.cgb-day--today{font-weight:700!important;outline:2px solid var(--gold)!important;outline-offset:-2px!important;border-radius:4px!important}\r\n.cgb-day--sel-start,.cgb-day--sel-end{background:var(--dark)!important;color:var(--gold)!important;border-radius:4px!important;font-weight:600!important}\r\n.cgb-day--in-range{background:rgba(235,198,131,.15)!important;border-radius:0!important}\r\n\r\n@media(max-width:700px){\r\n  \/* \u2500\u2500 Search bar \u2500\u2500 *\/\r\n  .cgb-search-bar{flex-direction:column!important;padding:0!important;gap:0!important;border-radius:12px!important;overflow:hidden!important}\r\n  .cgb-field{flex:1!important;width:100%!important;padding:14px 16px!important;border-bottom:1px solid #e5e7eb!important;min-width:unset!important}\r\n  .cgb-field--sm{border-bottom:1px solid #e5e7eb!important}\r\n  .cgb-sep{display:none!important}\r\n  .cgb-btn-search{width:100%!important;justify-content:center!important;margin-left:0!important;border-radius:0 0 12px 12px!important;padding:16px!important}\r\n\r\n  \/* \u2500\u2500 Progress bar \u2500\u2500 *\/\r\n  .cgb-progress{flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important;border-radius:var(--r)!important}\r\n  .cgb-progress::-webkit-scrollbar{display:none!important}\r\n  .cgb-prog-step{padding:10px 8px!important;font-size:10px!important;white-space:nowrap!important;flex:0 0 auto!important;min-width:70px!important}\r\n\r\n  \/* \u2500\u2500 Result card \u2500\u2500 *\/\r\n  .cgb-result-card{grid-template-columns:100px 1fr!important;grid-template-rows:auto auto!important}\r\n  .cgb-result-photo{grid-column:1!important;grid-row:1 \/ 3!important}\r\n  .cgb-result-photo img{width:100px!important;height:100%!important;min-height:130px!important;object-fit:cover!important}\r\n  .cgb-result-info{grid-column:2!important;grid-row:1!important;border-right:none!important;padding:12px 12px 4px!important}\r\n  .cgb-result-name{font-size:17px!important}\r\n  .cgb-result-price{grid-column:2!important;grid-row:2!important;align-items:stretch!important;padding:4px 12px 12px!important;min-width:0!important;gap:4px!important}\r\n  .cgb-rp-nights{font-size:12px!important}\r\n  .cgb-rp-row{font-size:13px!important}\r\n  .cgb-rp-total{font-size:18px!important}\r\n  .cgb-rp-deposit{font-size:11px!important}\r\n  .cgb-btn-book{width:100%!important;padding:12px!important;font-size:14px!important}\r\n\r\n  \/* \u2500\u2500 Checkout layout \u2014 sidebar goes below on mobile \u2500\u2500 *\/\r\n  .cgb-co-layout{grid-template-columns:1fr!important;gap:16px!important}\r\n  .cgb-co-right{position:static!important;order:2!important;margin-top:0!important}\r\n\r\n  \/* \u2500\u2500 Step card \u2500\u2500 *\/\r\n  .cgb-step{padding:16px!important}\r\n  .cgb-step-title{font-size:20px!important}\r\n\r\n  \/* \u2500\u2500 Forms \u2500\u2500 *\/\r\n  .cgb-form-row{flex-direction:column!important}\r\n  .cgb-fw{margin-bottom:10px!important}\r\n  .cgb-phone-wrap{flex-direction:row!important}\r\n  .cgb-inp--code{flex:0 0 90px!important;font-size:14px!important}\r\n  .cgb-inp{font-size:16px!important;padding:11px 12px!important}\r\n\r\n  \/* \u2500\u2500 Extras list \u2500\u2500 *\/\r\n  .cgb-extra-row{height:auto!important;min-height:64px!important;padding:12px!important;gap:10px!important}\r\n  .cgb-extra-name{font-size:13px!important;white-space:normal!important}\r\n  .cgb-extra-desc{font-size:12px!important;white-space:normal!important}\r\n  .cgb-extra-price{font-size:13px!important;min-width:44px!important}\r\n\r\n  \/* \u2500\u2500 Payment plan & balance method cards \u2500\u2500 *\/\r\n  .cgb-pay-methods{gap:8px!important}\r\n  .cgb-pay-method{padding:12px!important;gap:10px!important;align-items:flex-start!important}\r\n  .cgb-pm-title{font-size:13px!important}\r\n  .cgb-pm-desc{font-size:12px!important;line-height:1.5!important}\r\n  .cgb-pay-method svg{flex-shrink:0!important;width:20px!important;height:20px!important}\r\n\r\n  \/* \u2500\u2500 Stripe element wrapper \u2500\u2500 *\/\r\n  .cgb-stripe-wrap{padding:12px!important}\r\n\r\n  \/* \u2500\u2500 Step nav buttons \u2500\u2500 *\/\r\n  .cgb-step-nav{flex-direction:column-reverse!important;gap:8px!important;margin-top:16px!important}\r\n  .cgb-btn-continue,.cgb-btn-back{width:100%!important;text-align:center!important;padding:14px!important;font-size:14px!important}\r\n  .cgb-btn-pay{width:100%!important;font-size:15px!important;padding:15px!important;min-width:unset!important}\r\n\r\n  \/* \u2500\u2500 Summary card \u2500\u2500 *\/\r\n  .cgb-sum-overview-title{font-size:17px!important;padding:14px 14px 10px!important}\r\n  .cgb-sum-section{padding:12px 14px!important}\r\n  .cgb-sum-lbl{font-size:12px!important}\r\n  .cgb-sum-trip-row{font-size:14px!important}\r\n  .cgb-sum-price-row{font-size:13px!important;padding:4px 0!important}\r\n  .cgb-sum-total-row{font-size:16px!important;padding:12px 14px 4px!important}\r\n  .cgb-sum-deposit-row{font-size:13px!important;padding:0 14px 3px!important}\r\n  .cgb-sum-due-row{font-size:14px!important;padding:3px 14px 10px!important}\r\n  .cgb-sum-coupon-btn{font-size:14px!important;padding:10px!important}\r\n  .cgb-edit-btn{font-size:13px!important}\r\n\r\n  \/* \u2500\u2500 Review box \u2500\u2500 *\/\r\n  .cgb-review-box{padding:14px!important}\r\n  .cgb-review-row{font-size:14px!important}\r\n  .cgb-review-total{font-size:15px!important}\r\n\r\n  \/* \u2500\u2500 Terms \u2500\u2500 *\/\r\n  .cgb-terms-box{max-height:180px!important;padding:14px!important}\r\n  .cgb-terms-section{font-size:14px!important}\r\n  .cgb-check-row{font-size:14px!important}\r\n\r\n  \/* \u2500\u2500 Success screen \u2500\u2500 *\/\r\n  .cgb-success-title{font-size:26px!important}\r\n  .cgb-success-msg{font-size:14px!important}\r\n\r\n  \/* \u2500\u2500 Availability calendar \u2500\u2500 *\/\r\n  .cgb-cal-grid{grid-template-columns:1fr!important}\r\n  #cgb-avail-cal{padding:16px!important}\r\n  .cgb-cal-header{flex-direction:row!important;align-items:center!important}\r\n}\r\n<\/style>\r\n\r\n<script>\r\n(function(){\r\nconst AJAX  = 'https:\/\/la-ramorie.webticastage.be\/wp-admin\/admin-ajax.php';\r\nconst NONCE = 'fc2236aa96';\r\nconst SK    = 'pk_live_AEfSo2R78jyQYLrJRvJQF0tM';\r\nconst DEP   = 750;\r\nconst HIDE_CAL = true;\r\n\r\nconst LANG = (function(){\r\n  const path = window.location.pathname;\r\n  if (path.startsWith('\/en\/') || path.startsWith('\/en')) return 'en';\r\n  if (path.startsWith('\/fr\/') || path.startsWith('\/fr')) return 'fr';\r\n  return 'nl';\r\n})();\r\n\r\nconst T = {\r\n  success_confirmed:    'Votre r\u00e9servation est confirm\u00e9e. Tous les d\u00e9tails sont dans votre e-mail.',\r\n  success_split:        'Votre acompte de 30% est confirm\u00e9. Consultez votre e-mail pour votre calendrier de paiement et les d\u00e9tails de r\u00e9servation.',\r\n  confirm_pay:          'Confirmer &amp; payer',\r\n  select_checkin:       'S\u00e9lectionner la date d\\'arriv\u00e9e',\r\n  select_checkout:      'S\u00e9lectionner maintenant la date de d\u00e9part',\r\n  update_dates:         'Mettre \u00e0 jour les dates',\r\n  reservation_fee:      'R\u00e9servation du ch\u00e2teau',\r\n  nights:               'nuits',\r\n  night:                'nuit',\r\n  guest_singular:       'voyageur',\r\n  guest_plural:         'voyageurs',\r\n  due_today:            '\u00c0 payer aujourd\\'hui',\r\n  due_later:            'D\u00fb 45 jours avant l\\'arriv\u00e9e',\r\n  pay_split_title:      'Paiement en deux fois \u2014 30% maintenant, 70% plus tard',\r\n};\r\n\r\nconst $  = id => document.getElementById(id);\r\nconst $$ = s  => document.querySelectorAll(s);\r\n\r\nlet S = {\r\n  checkin:'', checkout:'', guests:1,\r\n  nights:0, nightly_total:0, cleaning_fee:0,\r\n  tax_amount:0, tax_name:'', subtotal:0,\r\n  extras:[], extras_total:0, extras_lines:[],\r\n  discount:0, coupon:'', total:0,\r\n  firstname:'', lastname:'', email:'', phone:'',\r\n  address:'', postcode:'', city:'', country:'', message:'',\r\n  \/\/ Payment plan state\r\n  payment_plan:'full',           \/\/ 'split' | 'full' \u2014 full is default (checked first)\r\n  balance_payment_method:'stripe', \/\/ 'stripe' | 'bank_transfer' (split only)\r\n  days_until_checkin: 999,       \/\/ set from quote response\r\n  deposit_amount:0,              \/\/ 30% of total (split) or full total\r\n  stripeReady:false,\r\n  guest_language:'',\r\n};\r\n\r\nlet stripe, elements, paymentEl, clientSecret;\r\nlet blockedDates=[], fpIn, fpOut;\r\nlet currentStep = 0;\r\n\r\n\/\/ \u2500\u2500 45-day rule helper \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\r\nfunction isSplitEligible() {\r\n  return S.days_until_checkin > 45;\r\n}\r\n\r\nfunction getDepositAmount() {\r\n  if (S.payment_plan === 'split') return Math.round(S.total * 0.30 * 100) \/ 100;\r\n  return S.total;\r\n}\r\n\r\n\/\/ \u2500\u2500 Flatpickr locale \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\r\nconst fpLocale = LANG === 'nl' ? {\r\n  firstDayOfWeek:1,\r\n  weekdays:{shorthand:['zo','ma','di','wo','do','vr','za'],longhand:['Zondag','Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag']},\r\n  months:{shorthand:['jan','feb','mrt','apr','mei','jun','jul','aug','sep','okt','nov','dec'],longhand:['Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December']},\r\n} : LANG === 'fr' ? {\r\n  firstDayOfWeek:1,\r\n  weekdays:{shorthand:['dim','lun','mar','mer','jeu','ven','sam'],longhand:['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi']},\r\n  months:{shorthand:['jan','f\u00e9v','mar','avr','mai','jun','juil','ao\u00fb','sep','oct','nov','d\u00e9c'],longhand:['Janvier','F\u00e9vrier','Mars','Avril','Mai','Juin','Juillet','Ao\u00fbt','Septembre','Octobre','Novembre','D\u00e9cembre']},\r\n} : { firstDayOfWeek:1 };\r\n\r\ninitPickers();\r\n\r\nlet LIVE_NONCE = NONCE;\r\nfunction refreshNonce() {\r\n  return fetch(AJAX + '?action=cg_refresh_nonce')\r\n    .then(r => r.json())\r\n    .then(d => { if(d.success && d.data.nonce) LIVE_NONCE = d.data.nonce; })\r\n    .catch(()=>{});\r\n}\r\n\r\nrefreshNonce().then(()=>{\r\n  fetch(AJAX+'?action=cg_availability')\r\n    .then(r=>r.json())\r\n    .then(d=>{\r\n      if(d.success) {\r\n        blockedDates = d.data.blocked || [];\r\n        if(fpIn)  fpIn.set('disable', blockedDates);\r\n        if(fpOut) fpOut.set('disable', blockedDates);\r\n      }\r\n      if(!HIDE_CAL) renderAvailabilityCalendar(blockedDates);\r\n    })\r\n    .catch(()=>{ if(!HIDE_CAL) renderAvailabilityCalendar([]); });\r\n});\r\n\r\nfunction initPickers(){\r\n  const locale = LANG==='nl'?'nl-BE':LANG==='fr'?'fr-BE':'en-GB';\r\n  const maxBookDate = new Date();\r\n  maxBookDate.setMonth(maxBookDate.getMonth() + 23);\r\n  const MAX_DATE = maxBookDate.toISOString().split('T')[0];\r\n\r\n  const cfg = {\r\n    dateFormat:'Y-m-d', altInput:false, minDate:'today', maxDate: MAX_DATE,\r\n    disable:[], disableMobile:true, allowInput:false,\r\n    locale:fpLocale, monthSelectorType:'static', showMonths:1, position:'auto',\r\n  };\r\n\r\n  fpIn = flatpickr('#cgb-ci-display', { ...cfg, mode:'single',\r\n    onChange([d]){\r\n      if(!d) return;\r\n      const ci = fpIn.formatDate(d,'Y-m-d');\r\n      $('cgb-ci').value = ci; $('cgb-ci-display').value = d.toLocaleDateString(locale);\r\n      S.checkin = ci; S.checkout = '';\r\n      $('cgb-co').value = ''; $('cgb-co-display').value = '';\r\n      const minCo = new Date(d.getTime() + 86400000);\r\n      fpOut.set('minDate', minCo);\r\n      const firstBlocked = getFirstBlockedAfter(ci);\r\n      fpOut.set('disable', firstBlocked ? blockedDates.filter(b=>b!==firstBlocked) : blockedDates);\r\n      if(firstBlocked) fpOut.set('maxDate', firstBlocked);\r\n      else fpOut.set('maxDate', null);\r\n      setTimeout(()=>{ fpOut.jumpToDate(ci, true); fpOut.open(); }, 80);\r\n    }\r\n  });\r\n\r\n  fpOut = flatpickr('#cgb-co-display', { ...cfg, mode:'single',\r\n    onOpen(){ if(S.checkin && fpOut) fpOut.jumpToDate(S.checkin, true); },\r\n    onChange([d]){\r\n      if(!d) return;\r\n      const co = fpOut.formatDate(d,'Y-m-d');\r\n      if(S.checkin && hasBlockedInRange(S.checkin, co)){\r\n        fpOut.clear();\r\n        alert(LANG==='nl'?'Deze periode bevat bezette datums.':LANG==='fr'?'Cette p\u00e9riode contient des dates r\u00e9serv\u00e9es.':'This period includes unavailable dates.');\r\n        return;\r\n      }\r\n      if(S.checkin){\r\n        const ciD = new Date(S.checkin+'T00:00:00'), coD = new Date(co+'T00:00:00');\r\n        const nights = Math.round((coD-ciD)\/86400000), day = ciD.getDay();\r\n        if((day===5||day===6) && nights < 2){\r\n          fpOut.clear();\r\n          alert(LANG==='nl'?'Minimaal 2 nachten vereist in het weekend.':LANG==='fr'?'Minimum 2 nuits requis le week-end.':'Minimum 2 nights required for weekend stays.');\r\n          return;\r\n        }\r\n      }\r\n      $('cgb-co').value = co; $('cgb-co-display').value = d.toLocaleDateString(locale);\r\n      S.checkout = co;\r\n    }\r\n  });\r\n\r\n  document.getElementById('cgb-ci-display').closest('.cgb-field').addEventListener('click', ()=> fpIn && fpIn.open());\r\n  document.getElementById('cgb-co-display').closest('.cgb-field').addEventListener('click', ()=> fpOut && fpOut.open());\r\n  document.getElementById('cgb-ci-display').addEventListener('click', ()=> fpIn && fpIn.open());\r\n  document.getElementById('cgb-co-display').addEventListener('click', ()=> fpOut && fpOut.open());\r\n}\r\n\r\nfunction hasBlockedInRange(checkin, checkout) {\r\n  const start = new Date(checkin+'T00:00:00'), end = new Date(checkout+'T00:00:00');\r\n  return blockedDates.some(bd => { const d = new Date(bd+'T00:00:00'); return d >= start && d < end; });\r\n}\r\nfunction getFirstBlockedAfter(checkin) {\r\n  const start = new Date(checkin+'T00:00:00');\r\n  const future = blockedDates.filter(bd => new Date(bd+'T00:00:00') > start).sort();\r\n  return future.length ? future[0] : null;\r\n}\r\n\r\n$('cgb-search-btn').addEventListener('click', doSearch);\r\n\r\nfunction doSearch(){\r\n  const ci = $('cgb-ci').value, co = $('cgb-co').value, g = $('cgb-guests').value;\r\n  const errEl = $('cgb-err');\r\n  errEl.style.display='none'; $('cgb-result').style.display='none';\r\n  if(!ci||!co){ errEl.textContent='Please select your check-in and check-out dates.'; errEl.style.display=''; return; }\r\n  $('cgb-search-lbl').style.display='none'; $('cgb-search-spin').style.display='';\r\n\r\n  const fd = new FormData();\r\n  fd.append('action','cg_quote'); fd.append('nonce',LIVE_NONCE);\r\n  fd.append('checkin',ci); fd.append('checkout',co); fd.append('guests',g);\r\n\r\n  fetch(AJAX,{method:'POST',body:fd})\r\n    .then(r=>r.json())\r\n    .then(d=>{\r\n      $('cgb-search-lbl').style.display=''; $('cgb-search-spin').style.display='none';\r\n      if(!d.success){ errEl.textContent=d.data||'Could not retrieve pricing.'; errEl.style.display=''; return; }\r\n      const q = d.data;\r\n      S.checkin=ci; S.checkout=co; S.guests=parseInt(g);\r\n      S.nights=q.nights; S.nightly_total=q.nightly_total;\r\n      S.cleaning_fee=q.cleaning_fee; S.tax_amount=q.tax_amount;\r\n      S.tax_name=q.tax_name; S.subtotal=q.subtotal; S.total=q.subtotal;\r\n      S.days_until_checkin = q.days_until_checkin ?? 999;\r\n      S.extras_total=0; S.extras=[]; S.extras_lines=[]; S.discount=0;\r\n      \/\/ Default plan based on 45-day rule\r\n      S.payment_plan = isSplitEligible() ? 'split' : 'full';\r\n      updateResultCard(q);\r\n      if($('cgb-checkout').style.display !== 'none') { updateSummary(); }\r\n      $('cgb-result').style.display='';\r\n      if($('cgb-cal-grid')) renderAvailabilityCalendar(blockedDates);\r\n      setTimeout(()=>{ scrollToTop(); }, 80);\r\n    })\r\n    .catch(()=>{ $('cgb-search-lbl').style.display=''; $('cgb-search-spin').style.display='none'; errEl.textContent='Connection error.'; errEl.style.display=''; });\r\n}\r\n\r\nfunction updateResultCard(q){\r\n  $('cgb-r-nights').textContent = q.nights;\r\n  $('cgb-r-nights-lbl').textContent = q.nights > 1 ? T.nights : T.night;\r\n  const datesBar = $('cgb-r-dates-bar');\r\n  if(datesBar && S.checkin && S.checkout){\r\n    const fmtD = s => new Date(s+'T00:00:00').toLocaleDateString(LANG==='nl'?'nl-BE':LANG==='fr'?'fr-BE':'en-GB',{day:'numeric',month:'short'});\r\n    datesBar.textContent = fmtD(S.checkin) + ' \u2013 ' + fmtD(S.checkout);\r\n  }\r\n  $('cgb-rb-stay').textContent  = '\u20ac'+fmtMoney(q.nightly_total + q.cleaning_fee);\r\n  $('cgb-rb-clean').textContent = '\u20ac'+fmtMoney(q.cleaning_fee);\r\n  $('cgb-rb-total').textContent = '\u20ac'+fmtMoney(q.subtotal);\r\n  if(q.tax_amount>0){\r\n    $('cgb-rb-taxname').textContent = q.tax_name;\r\n    $('cgb-rb-tax').textContent = '\u20ac'+fmtMoney(q.tax_amount);\r\n    document.querySelector('.cgb-rp-tax').style.display='';\r\n  }\r\n}\r\n\r\n$('cgb-book-now').addEventListener('click', ()=>{\r\n  const availSection = document.getElementById('cgb-avail-section');\r\n  if(availSection) availSection.style.display = 'none';\r\n  $('cgb-result').style.display = 'none';\r\n  document.getElementById('cgb-wrap').classList.add('cgb-booking-active');\r\n  $('cgb-checkout').style.display='';\r\n  goStep(1);\r\n});\r\n\r\n\/\/ \u2500\u2500 Payment plan radio listeners \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\r\n$$('input[name=\"cgb_plan\"]').forEach(r => {\r\n  r.addEventListener('change', () => {\r\n    S.payment_plan = r.value;\r\n    $('cgb-balance-method-wrap').style.display = (r.value === 'split') ? '' : 'none';\r\n    \/\/ Reset Stripe so a new PaymentIntent is created for the correct amount\r\n    \/\/ (30% for split, 100% for full) when the guest proceeds to pay\r\n    stripe = null; elements = null; paymentEl = null; clientSecret = null;\r\n    S.stripeReady = false;\r\n    $('cgb-stripe-el').innerHTML = '';\r\n    $('cgb-stripe-err').style.display = 'none';\r\n    $('cgb-pay-btn').disabled = true;\r\n    initStripe();\r\n    injectPaymentAmounts();\r\n    updateSummary();\r\n  });\r\n});\r\n\r\n\/\/ \u2500\u2500 Balance method radio listeners \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\r\n$$('input[name=\"cgb_balance_method\"]').forEach(r => {\r\n  r.addEventListener('change', () => {\r\n    S.balance_payment_method = r.value;\r\n  });\r\n});\r\n\r\n\/\/ \u2500\u2500 Inject live euro amounts into radio option descriptions \u2500\r\n\/\/ Replaces __DEPOSIT__, __BALANCE__, __TOTAL__ tokens once\r\n\/\/ per page load (tokens come from PHP-rendered strings).\r\n\/\/ Safe to call multiple times \u2014 once tokens are replaced the\r\n\/\/ replace() calls are no-ops on already-rendered text.\r\nfunction injectPaymentAmounts() {\r\n  const deposit = Math.round(S.total * 0.30 * 100) \/ 100;\r\n  const balance = Math.max(0, Math.round((S.total - deposit) * 100) \/ 100);\r\n\r\n  const splitDesc = document.querySelector('#cgb-pm-split .cgb-pm-desc');\r\n  const fullDesc  = document.querySelector('#cgb-pm-full .cgb-pm-desc');\r\n\r\n  if (splitDesc) {\r\n    splitDesc.textContent = splitDesc.textContent\r\n      .replace('__DEPOSIT__', '\u20ac' + fmt(deposit))\r\n      .replace('__BALANCE__', '\u20ac' + fmt(balance));\r\n  }\r\n  if (fullDesc) {\r\n    fullDesc.textContent = fullDesc.textContent\r\n      .replace('__TOTAL__', '\u20ac' + fmt(S.total));\r\n  }\r\n}\r\n\r\n\/\/ \u2500\u2500 Step 5: render payment UI based on 45-day rule \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\nfunction renderPaymentStep() {\r\n  const eligible = isSplitEligible();\r\n  $('cgb-plan-options').style.display   = eligible ? '' : 'none';\r\n  $('cgb-plan-full-only').style.display = eligible ? 'none' : '';\r\n\r\n  if (!eligible) {\r\n    S.payment_plan = 'full';\r\n    $('cgb-balance-method-wrap').style.display = 'none';\r\n  } else {\r\n    const checked = document.querySelector('input[name=\"cgb_plan\"]:checked');\r\n    S.payment_plan = checked ? checked.value : 'full';\r\n    $('cgb-balance-method-wrap').style.display = (S.payment_plan === 'split') ? '' : 'none';\r\n  }\r\n\r\n  \/\/ Inject live amounts into radio descriptions\r\n  injectPaymentAmounts();\r\n  updateSummary();\r\n}\r\n\r\n\/\/ \u2500\u2500 Inline date\/guest edit \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\r\nlet inlineFp = null, inlineCheckin = null, inlineCheckout = null;\r\n\r\n$('sum-edit-dates').addEventListener('click', ()=>{\r\n  const datePanel = $('cgb-inline-date-edit'), guestPanel = $('cgb-inline-guest-edit');\r\n  guestPanel.style.display = 'none';\r\n  const isOpen = datePanel.style.display !== 'none';\r\n  datePanel.style.display = isOpen ? 'none' : '';\r\n  if (!isOpen && !inlineFp) {\r\n    inlineFp = flatpickr('#cgb-inline-calendar', {\r\n      mode:'range', inline:true, minDate:'today', disable:blockedDates,\r\n      dateFormat:'Y-m-d', locale:fpLocale, defaultDate:[S.checkin, S.checkout],\r\n      onChange(selected) {\r\n        inlineCheckin  = selected[0] ? inlineFp.formatDate(selected[0],'Y-m-d') : null;\r\n        inlineCheckout = selected[1] ? inlineFp.formatDate(selected[1],'Y-m-d') : null;\r\n        $('cgb-inline-hint').textContent = selected.length === 1 ? T.select_checkout :\r\n          (inlineFp.formatDate(selected[0],'d M Y') + ' \u2192 ' + inlineFp.formatDate(selected[1],'d M Y'));\r\n        $('cgb-inline-date-confirm').style.display = selected.length === 2 ? '' : 'none';\r\n      }\r\n    });\r\n  } else if (!isOpen && inlineFp) {\r\n    inlineFp.setDate([S.checkin, S.checkout]);\r\n  }\r\n});\r\n\r\n$('cgb-inline-date-confirm').addEventListener('click', ()=>{\r\n  if (!inlineCheckin || !inlineCheckout) return;\r\n  S.checkin = inlineCheckin; S.checkout = inlineCheckout;\r\n  inlineCheckin = null; inlineCheckout = null;\r\n  const locale = LANG==='nl'?'nl-BE':LANG==='fr'?'fr-BE':'en-GB';\r\n  $('cgb-ci').value = S.checkin; $('cgb-co').value = S.checkout;\r\n  $('cgb-ci-display').value = new Date(S.checkin+'T00:00:00').toLocaleDateString(locale);\r\n  $('cgb-co-display').value = new Date(S.checkout+'T00:00:00').toLocaleDateString(locale);\r\n  if(fpIn) fpIn.setDate(S.checkin); if(fpOut) fpOut.setDate(S.checkout);\r\n  $('cgb-inline-date-edit').style.display = 'none';\r\n  $('cgb-inline-hint').textContent = T.select_checkin;\r\n  $('cgb-inline-date-confirm').style.display = 'none';\r\n  S.extras_total=0; S.extras=[]; S.extras_lines=[]; S.discount=0;\r\n  const fd = new FormData();\r\n  fd.append('action','cg_quote'); fd.append('nonce',LIVE_NONCE);\r\n  fd.append('checkin',S.checkin); fd.append('checkout',S.checkout); fd.append('guests',S.guests);\r\n  fetch(AJAX,{method:'POST',body:fd}).then(r=>r.json()).then(d=>{\r\n    if(d.success){\r\n      const q=d.data;\r\n      S.nights=q.nights; S.nightly_total=q.nightly_total; S.cleaning_fee=q.cleaning_fee;\r\n      S.tax_amount=q.tax_amount; S.tax_name=q.tax_name; S.subtotal=q.subtotal; S.total=q.subtotal;\r\n      S.days_until_checkin = q.days_until_checkin ?? 999;\r\n      S.payment_plan = isSplitEligible() ? 'split' : 'full';\r\n      updateResultCard(q); updateSummary();\r\n    }\r\n  });\r\n});\r\n\r\n$('sum-edit-guests').addEventListener('click', ()=>{\r\n  const guestPanel = $('cgb-inline-guest-edit'), datePanel = $('cgb-inline-date-edit');\r\n  datePanel.style.display = 'none';\r\n  const isOpen = guestPanel.style.display !== 'none';\r\n  guestPanel.style.display = isOpen ? 'none' : '';\r\n  if (!isOpen) $('cgb-inline-guests').value = S.guests;\r\n});\r\n\r\n$('cgb-inline-guest-confirm').addEventListener('click', ()=>{\r\n  S.guests = parseInt($('cgb-inline-guests').value);\r\n  $('cgb-guests').value = S.guests;\r\n  $('cgb-inline-guest-edit').style.display = 'none';\r\n  updateSummary();\r\n  if (S.checkin && S.checkout) {\r\n    const fd = new FormData();\r\n    fd.append('action','cg_quote'); fd.append('nonce',LIVE_NONCE);\r\n    fd.append('checkin',S.checkin); fd.append('checkout',S.checkout); fd.append('guests',S.guests);\r\n    fetch(AJAX,{method:'POST',body:fd}).then(r=>r.json()).then(d=>{\r\n      if(d.success){ const q=d.data; S.nightly_total=q.nightly_total; S.cleaning_fee=q.cleaning_fee;\r\n        S.tax_amount=q.tax_amount; S.tax_name=q.tax_name; S.subtotal=q.subtotal;\r\n        S.days_until_checkin = q.days_until_checkin ?? 999;\r\n        S.total=S.subtotal+S.extras_total-S.discount; updateSummary(); }\r\n    });\r\n  }\r\n});\r\n\r\n\/\/ \u2500\u2500 Step navigation \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\r\n$('cgb-s1-next').addEventListener('click', ()=>{ calcExtras(); goStep(2); });\r\n$('cgb-s2-back').addEventListener('click', ()=>goStep(1));\r\n$('cgb-s2-next').addEventListener('click', ()=>{ if(!validateStep2()) return; saveStep2(); goStep(3); });\r\n$('cgb-s3-back').addEventListener('click', ()=>goStep(2));\r\n$('cgb-s3-next').addEventListener('click', ()=>goStep(4));\r\n$('cgb-s4-back').addEventListener('click', ()=>goStep(3));\r\n$('cgb-s4-next').addEventListener('click', ()=>{\r\n  if(!$('cgb-tc1').checked){\r\n    $('cgb-step4-err').textContent = LANG==='nl'?'Gelieve de voorwaarden te accepteren.':LANG==='fr'?'Veuillez accepter les conditions.':'Please accept the required terms.';\r\n    $('cgb-step4-err').style.display=''; return;\r\n  }\r\n  $('cgb-step4-err').style.display='none';\r\n  goStep(5);\r\n  renderPaymentStep();\r\n  initStripe();\r\n});\r\n$('cgb-s5-back').addEventListener('click', ()=>goStep(4));\r\n\r\nfunction stickyNavHeight(){\r\n  let h=0;\r\n  document.querySelectorAll('header, nav, [class*=\"nav\"], [class*=\"header\"], [id*=\"nav\"], [id*=\"header\"]').forEach(el=>{\r\n    const s=window.getComputedStyle(el);\r\n    if((s.position==='fixed'||s.position==='sticky') && el.offsetHeight>0) h=Math.max(h,el.offsetHeight);\r\n  });\r\n  return h||0;\r\n}\r\nfunction scrollToTop(){ const wrap=document.getElementById('cgb-wrap'); if(!wrap) return; const offset=stickyNavHeight()+12; const top=wrap.getBoundingClientRect().top+window.scrollY-offset; window.scrollTo({top:Math.max(0,top),behavior:'smooth'}); }\r\nfunction scrollToEl(el){ if(!el) return; const offset=stickyNavHeight()+12; const top=el.getBoundingClientRect().top+window.scrollY-offset; window.scrollTo({top:Math.max(0,top),behavior:'smooth'}); }\r\n\r\nfunction goStep(n){\r\n  currentStep=n;\r\n  for(let i=1;i<=5;i++){ const el=$('cgb-step-'+i); if(el) el.style.display=i===n?'':'none'; }\r\n  $$('.cgb-prog-step').forEach((s,i)=>{ s.classList.remove('active','done'); if(i+1===n) s.classList.add('active'); if(i+1<n) s.classList.add('done'); });\r\n  updateSummary();\r\n  setTimeout(()=>{ const prog=document.querySelector('.cgb-progress'); if(prog) scrollToEl(prog); },50);\r\n}\r\n\r\nfunction validateStep2(){\r\n  const fn=$('cgb-fn').value.trim(), ln=$('cgb-ln').value.trim(), em=$('cgb-em').value.trim(),\r\n        ph=$('cgb-ph').value.trim(), ad=$('cgb-addr').value.trim(), zi=$('cgb-zip').value.trim(),\r\n        ci=$('cgb-city').value.trim(), co=$('cgb-country').value, msg=$('cgb-msg').value.trim();\r\n  const err=$('cgb-step2-err');\r\n  if(!fn||!ln||!em||!ph||!ad||!zi||!ci||!co||!msg){\r\n    err.textContent=LANG==='nl'?'Vul alle verplichte velden in.':LANG==='fr'?'Veuillez remplir tous les champs obligatoires.':'Please fill in all required fields.';\r\n    err.style.display=''; return false;\r\n  }\r\n  if(!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(em)){\r\n    err.textContent=LANG==='nl'?'Voer een geldig e-mailadres in.':LANG==='fr'?'Veuillez saisir une adresse e-mail valide.':'Please enter a valid email address.';\r\n    err.style.display=''; return false;\r\n  }\r\n  err.style.display='none'; return true;\r\n}\r\n\r\nfunction saveStep2(){\r\n  S.firstname=$('cgb-fn').value.trim(); S.lastname=$('cgb-ln').value.trim();\r\n  S.email=$('cgb-em').value.trim();\r\n  const dialCode=$('cgb-ph-code')?$('cgb-ph-code').value:'';\r\n  const phoneNum=$('cgb-ph').value.trim().replace(\/^0+\/,'');\r\n  S.phone = dialCode && phoneNum ? dialCode+phoneNum : $('cgb-ph').value.trim();\r\n  S.address=$('cgb-addr').value.trim(); S.postcode=$('cgb-zip').value.trim();\r\n  S.city=$('cgb-city').value.trim(); S.country=$('cgb-country').value;\r\n  S.message=$('cgb-msg').value.trim();\r\n  const countryLangMap={'BE':'nl','NL':'nl','FR':'fr','LU':'fr','DE':'de','AT':'de','CH':'de','GB':'en','US':'en','CA':'en','AU':'en','ES':'es','IT':'it','PT':'pt','PL':'pl'};\r\n  S.guest_language = countryLangMap[S.country] || LANG;\r\n}\r\n\r\n$$('.cgb-extra-row').forEach(row=>{\r\n  const per=row.dataset.per, amt=parseFloat(row.dataset.amount), sel=row.dataset.sel==='1', max=parseInt(row.dataset.max||1), id=row.dataset.id;\r\n  if(sel){\r\n    const minus=row.querySelector('.cgb-qty-minus'), plus=row.querySelector('.cgb-qty-plus'), val=row.querySelector('.cgb-qty-val');\r\n    let qty=0;\r\n    minus.addEventListener('click',()=>{ if(qty>0){qty--;val.textContent=qty;row.classList.toggle('active',qty>0);updateExtrasPreview();} });\r\n    plus.addEventListener('click',()=>{ if(qty<max){qty++;val.textContent=qty;row.classList.add('active');updateExtrasPreview();} });\r\n  } else {\r\n    const cb=row.querySelector('.cgb-toggle-cb');\r\n    cb.addEventListener('change',()=>{ row.classList.toggle('active',cb.checked); updateExtrasPreview(); });\r\n  }\r\n});\r\n\r\nfunction calcExtras(){\r\n  S.extras=[]; S.extras_total=0; S.extras_lines=[];\r\n  $$('.cgb-extra-row').forEach(row=>{\r\n    const id=row.dataset.id, amt=parseFloat(row.dataset.amount), per=row.dataset.per, sel=row.dataset.sel==='1';\r\n    let qty=0;\r\n    if(sel){ qty=parseInt(row.querySelector('.cgb-qty-val').textContent); }\r\n    else   { qty=row.querySelector('.cgb-toggle-cb').checked?1:0; }\r\n    if(qty<1) return;\r\n    const total_amt=(per==='person'||sel)?amt*qty:amt;\r\n    S.extras.push({id,qty});\r\n    S.extras_lines.push({id,title:row.querySelector('.cgb-extra-name').textContent,qty,per,unit:amt,amount:total_amt});\r\n    S.extras_total+=total_amt;\r\n  });\r\n  S.total=S.subtotal+S.extras_total-S.discount;\r\n}\r\n\r\nfunction updateExtrasPreview(){ calcExtras(); updateSummary(); }\r\n\r\n\/\/ \u2500\u2500 Coupon \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\u2500\u2500\r\nconst COUPONS = { 'FIFTYOFF':50, 'WELCOME50':50, 'CASTLE10':10 };\r\n\r\nfunction applyCouponCode(code, inputEl, msgEl) {\r\n  code=(code||'').trim().toUpperCase();\r\n  if(!code) return;\r\n  if(COUPONS[code]){\r\n    S.discount=COUPONS[code]; S.coupon=code;\r\n    msgEl.style.display=''; msgEl.style.color='var(--ok)';\r\n    msgEl.textContent='\u2713 '+(LANG==='nl'?'Kortingscode toegepast':LANG==='fr'?'Code appliqu\u00e9':'Coupon applied')+' \u2014 \u20ac'+COUPONS[code];\r\n    const lbl=$('sum-coupon-btn-lbl');\r\n    if(lbl) lbl.textContent=(LANG==='nl'?'Kortingscode: ':LANG==='fr'?'Code : ':'Coupon: ')+code;\r\n    const s3i=$('cgb-coupon'), s3m=$('cgb-coupon-msg');\r\n    if(s3i) s3i.value=code;\r\n    if(s3m){ s3m.style.display=''; s3m.style.color='var(--ok)'; s3m.textContent=msgEl.textContent; }\r\n    updateSummary();\r\n  } else {\r\n    S.discount=0; S.coupon='';\r\n    msgEl.style.display=''; msgEl.style.color='var(--err)';\r\n    msgEl.textContent=LANG==='nl'?'Ongeldige kortingscode.':LANG==='fr'?'Code de r\u00e9duction invalide.':'Invalid coupon code.';\r\n    updateSummary();\r\n  }\r\n}\r\n\r\n$('sum-add-coupon').addEventListener('click',()=>{\r\n  const panel=$('sum-coupon-panel'), isOpen=panel.style.display!=='none';\r\n  panel.style.display=isOpen?'none':'';\r\n  if(!isOpen) setTimeout(()=>{ const i=$('sum-coupon-input'); if(i) i.focus(); },50);\r\n});\r\n$('sum-coupon-apply').addEventListener('click',()=>{ applyCouponCode($('sum-coupon-input')?.value,$('sum-coupon-input'),$('sum-coupon-msg')); });\r\nconst _sideInp=document.getElementById('sum-coupon-input');\r\nif(_sideInp) _sideInp.addEventListener('keydown',e=>{ if(e.key==='Enter'){ e.preventDefault(); $('sum-coupon-apply')?.click(); } });\r\n$('cgb-coupon-apply').addEventListener('click',()=>{\r\n  applyCouponCode($('cgb-coupon')?.value,$('cgb-coupon'),$('cgb-coupon-msg'));\r\n  const si=$('sum-coupon-input'), sm=$('sum-coupon-msg'), m=$('cgb-coupon-msg');\r\n  if(si) si.value=($('cgb-coupon')?.value||'').trim().toUpperCase();\r\n  if(sm&&m){ sm.style.display=m.style.display; sm.style.color=m.style.color; sm.textContent=m.textContent; }\r\n});\r\n\r\n\/\/ \u2500\u2500 Update summary sidebar \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\r\nfunction updateSummary(){\r\n  if(S.checkin&&S.checkout){\r\n    $('sum-dates').textContent=fmtDate(S.checkin)+' \u2013 '+fmtDate(S.checkout);\r\n    $('sum-guests-lbl').textContent=S.guests+' '+(S.guests>1?T.guest_plural:T.guest_singular);\r\n  }\r\n\r\n  $('sum-stay').textContent  ='\u20ac'+fmtMoney(S.nightly_total+S.cleaning_fee);\r\n  $('sum-clean').textContent ='\u20ac'+fmtMoney(S.cleaning_fee);\r\n  $('sum-stay-lbl').textContent=T.reservation_fee+' ('+S.nights+' '+(S.nights>1?T.nights:T.night)+')';\r\n  if(S.tax_amount>0){ $('sum-taxname').textContent=S.tax_name; $('sum-tax').textContent='\u20ac'+fmtMoney(S.tax_amount); document.querySelector('.cgb-sum-tax').style.display=''; }\r\n\r\n  const sumExtrasList=$('sum-extras-list');\r\n  if(sumExtrasList){\r\n    sumExtrasList.innerHTML='';\r\n    S.extras_lines.forEach(line=>{\r\n      const label=line.qty>1?line.title+' \u00d7'+line.qty:line.title;\r\n      sumExtrasList.innerHTML+=`<div class=\"cgb-sum-price-row cgb-sum-extra-item\"><span style=\"color:var(--muted)\">${label}<\/span><span>\u20ac${fmtMoney(line.amount)}<\/span><\/div>`;\r\n    });\r\n  }\r\n  if(S.discount>0){ $('sum-discount').textContent='-\u20ac'+fmtMoney(S.discount); document.querySelector('.cgb-sum-discount-row').style.display=''; }\r\n\r\n  S.total=Math.max(0,S.subtotal+S.extras_total-S.discount);\r\n  $('sum-total').textContent='\u20ac'+fmtMoney(S.total);\r\n\r\n  \/\/ Due today \/ due later logic\r\n  \/\/ Read from the checked radio directly \u2014 S.payment_plan can lag on fast clicks.\r\n  \/\/ Radios only exist in the DOM on Step 5, so checkedPlan is null on all other steps.\r\n  const checkedPlan  = document.querySelector('input[name=\"cgb_plan\"]:checked');\r\n  const onStep5      = currentStep === 5;\r\n  const activePlan   = (onStep5 && checkedPlan) ? checkedPlan.value : (onStep5 ? S.payment_plan : 'full');\r\n  const isSplit      = onStep5 && activePlan === 'split' && isSplitEligible();\r\n  if(onStep5) S.payment_plan = activePlan;\r\n  S.deposit_amount   = isSplit ? Math.round(S.total * 0.30 * 100) \/ 100 : S.total;\r\n\r\n  $('sum-due').innerHTML='<strong>\u20ac'+fmtMoney(S.deposit_amount)+'<\/strong>';\r\n\r\n  const dueLaterRow = $('sum-due-later-row');\r\n  if(dueLaterRow){\r\n    if(currentStep === 5 && isSplit){\r\n      const balance = Math.max(0, S.total - S.deposit_amount);\r\n      $('sum-due-later').textContent='\u20ac'+fmtMoney(balance);\r\n      dueLaterRow.classList.remove('cgb-hidden');\r\n    } else {\r\n      dueLaterRow.classList.add('cgb-hidden');\r\n    }\r\n  }\r\n\r\n  $('cgb-pay-amt').textContent='\u20ac'+fmtMoney(S.deposit_amount);\r\n\r\n  \/\/ Review step\r\n  $('rv-stay-lbl').textContent=T.reservation_fee+' ('+S.nights+' '+(S.nights>1?T.nights:T.night)+')';\r\n  $('rv-stay').textContent='\u20ac'+fmtMoney(S.nightly_total+S.cleaning_fee);\r\n  $('rv-clean').textContent='\u20ac'+fmtMoney(S.cleaning_fee);\r\n  $('rv-total').textContent='\u20ac'+fmtMoney(S.total);\r\n  if(S.tax_amount>0){ $('rv-taxname').textContent=S.tax_name; $('rv-tax').textContent='\u20ac'+fmtMoney(S.tax_amount); document.querySelector('.cgb-review-tax').style.display=''; }\r\n  const rvExtrasList=$('rv-extras-list');\r\n  if(rvExtrasList){\r\n    rvExtrasList.innerHTML='';\r\n    S.extras_lines.forEach(line=>{\r\n      const label=line.qty>1?line.title+' \u00d7'+line.qty:line.title;\r\n      rvExtrasList.innerHTML+=`<div class=\"cgb-review-row\"><span style=\"color:var(--muted)\">${label}<\/span><span>\u20ac${fmtMoney(line.amount)}<\/span><\/div>`;\r\n    });\r\n  }\r\n  if(S.discount>0){ $('rv-discount').textContent='-\u20ac'+fmtMoney(S.discount); document.querySelector('.cgb-review-discount').style.display=''; }\r\n  if(S.firstname){ $('rv-guest-summary').innerHTML=S.firstname+' '+S.lastname+'<br>'+S.email+'<br>'+S.phone+'<br>'+S.address+', '+S.postcode+' '+S.city+', '+S.country; }\r\n\r\n  updatePayBtn();\r\n}\r\n\r\nfunction updatePayBtn(){\r\n  const btn=$('cgb-pay-btn');\r\n  if(!btn) return;\r\n  btn.disabled=!S.stripeReady;\r\n}\r\n\r\nasync function initStripe(){\r\n  if(stripe) return;\r\n  stripe = Stripe(SK);\r\n\r\n  const fd = buildFormData('cg_pay_intent');\r\n  let piData;\r\n  try {\r\n    const res = await fetch(AJAX,{method:'POST',body:fd});\r\n    piData = await res.json();\r\n  } catch(e) {\r\n    $('cgb-step5-err').textContent='Payment service unavailable. Please try again.';\r\n    $('cgb-step5-err').style.display='';\r\n    return;\r\n  }\r\n  if(!piData.success){\r\n    $('cgb-step5-err').textContent=piData.data||'Payment setup failed.';\r\n    $('cgb-step5-err').style.display='';\r\n    return;\r\n  }\r\n  clientSecret = piData.data.client_secret;\r\n\r\n  elements = stripe.elements({\r\n    clientSecret,\r\n    appearance:{\r\n      theme:'stripe',\r\n      variables:{colorPrimary:'#EBC683',colorBackground:'#FAF8F3',colorText:'#141414',colorDanger:'#b91c1c',fontFamily:'Jost, sans-serif',borderRadius:'8px'}\r\n    }\r\n  });\r\n  paymentEl = elements.create('payment');\r\n  paymentEl.mount('#cgb-stripe-el');\r\n  paymentEl.on('change', e=>{\r\n    S.stripeReady=e.complete;\r\n    $('cgb-stripe-err').textContent=e.error?e.error.message:'';\r\n    $('cgb-stripe-err').style.display=e.error?'':'none';\r\n    updatePayBtn();\r\n  });\r\n}\r\n\r\n$('cgb-pay-btn').addEventListener('click', async()=>{\r\n  S.message=($('cgb-msg2').value||$('cgb-msg').value||'').trim();\r\n  const err=$('cgb-step5-err');\r\n  err.style.display='none';\r\n  $('cgb-pay-lbl').style.display='none';\r\n  $('cgb-pay-spin').style.display='';\r\n  $('cgb-pay-btn').disabled=true;\r\n\r\n  try {\r\n    await doCardPayment(err);\r\n  } catch(e){\r\n    err.textContent=e.message||'Something went wrong. Please try again.';\r\n    err.style.display='';\r\n    $('cgb-pay-lbl').style.display='';\r\n    $('cgb-pay-spin').style.display='none';\r\n    $('cgb-pay-btn').disabled=false;\r\n  }\r\n});\r\n\r\nasync function doCardPayment(err){\r\n  if(!stripe||!elements||!clientSecret) throw new Error('Payment not initialised. Please refresh and try again.');\r\n  const {paymentIntent, error} = await stripe.confirmPayment({\r\n    elements,\r\n    confirmParams:{\r\n      return_url: window.location.href,\r\n      payment_method_data:{ billing_details:{ name:S.firstname+' '+S.lastname, email:S.email, phone:S.phone } }\r\n    },\r\n    redirect:'if_required',\r\n  });\r\n  if(error) throw new Error(error.message);\r\n  if(paymentIntent && paymentIntent.status==='succeeded'){\r\n    showSuccess(null, null, S.payment_plan==='split');\r\n  }\r\n}\r\n\r\nfunction buildFormData(action){\r\n  const fd=new FormData();\r\n  fd.append('action',action); fd.append('nonce',LIVE_NONCE);\r\n  fd.append('checkin',S.checkin);     fd.append('checkout',S.checkout);\r\n  fd.append('guests',S.guests);       fd.append('nights',S.nights);\r\n  fd.append('firstname',S.firstname); fd.append('lastname',S.lastname);\r\n  fd.append('email',S.email);         fd.append('phone',S.phone);\r\n  fd.append('address',S.address);     fd.append('postcode',S.postcode);\r\n  fd.append('city',S.city);           fd.append('country',S.country);\r\n  fd.append('message',S.message);\r\n  fd.append('nightly_total',S.nightly_total);\r\n  fd.append('cleaning_fee',S.cleaning_fee);\r\n  fd.append('tax_amount',S.tax_amount);\r\n  fd.append('tax_name',S.tax_name);\r\n  fd.append('extras_total',S.extras_total);\r\n  fd.append('extras',JSON.stringify(S.extras));\r\n  fd.append('discount',S.discount);\r\n  fd.append('coupon',S.coupon);\r\n  fd.append('total',S.total);\r\n  fd.append('pets', S.extras.find(e=>e.id==='pet')?.qty||0);\r\n  fd.append('language', S.guest_language || LANG);\r\n  \/\/ Payment plan fields\r\n  fd.append('payment_plan', S.payment_plan);\r\n  fd.append('deposit_amount', S.deposit_amount);\r\n  fd.append('balance_payment_method', S.balance_payment_method);\r\n  return fd;\r\n}\r\n\r\nfunction showSuccess(ref, portalUrl, isSplit){\r\n  $('cgb-checkout').style.display='none';\r\n  $('cgb-result').style.display='none';\r\n  $('cgb-success').style.display='';\r\n  const refEl=$('cgb-success-ref');\r\n  if(ref){ if(portalUrl){ refEl.innerHTML='<a href=\"'+portalUrl+'\" target=\"_blank\" style=\"color:var(--gold);text-decoration:underline\">'+ref+'<\/a>'; } else { refEl.textContent=ref; } }\r\n  $('cgb-success-msg').textContent = isSplit ? T.success_split : T.success_confirmed;\r\n  window.scrollTo({top:0,behavior:'smooth'});\r\n}\r\n\r\nfunction fmt(n){ return Number(n).toLocaleString('nl-BE',{minimumFractionDigits:0,maximumFractionDigits:0}); }\r\nfunction fmtMoney(n){ return Number(n).toLocaleString('nl-BE',{minimumFractionDigits:2,maximumFractionDigits:2}); }\r\nfunction fmtDate(s){ return new Date(s+'T00:00:00').toLocaleDateString('nl-BE',{day:'numeric',month:'short',year:'numeric'}); }\r\n\r\n\/\/ \u2500\u2500 Availability calendar \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\r\nconst WEEKDAYS_NL=['Ma','Di','Wo','Do','Vr','Za','Zo'];\r\nconst WEEKDAYS_FR=['Lu','Ma','Me','Je','Ve','Sa','Di'];\r\nconst WEEKDAYS_EN=['Mo','Tu','We','Th','Fr','Sa','Su'];\r\nconst MONTHS_NL=['Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December'];\r\nconst MONTHS_FR=['Janvier','F\u00e9vrier','Mars','Avril','Mai','Juin','Juillet','Ao\u00fbt','Septembre','Octobre','Novembre','D\u00e9cembre'];\r\nconst MONTHS_EN=['January','February','March','April','May','June','July','August','September','October','November','December'];\r\nconst WD=LANG==='fr'?WEEKDAYS_FR:(LANG==='en'?WEEKDAYS_EN:WEEKDAYS_NL);\r\nconst MONS=LANG==='fr'?MONTHS_FR:(LANG==='en'?MONTHS_EN:MONTHS_NL);\r\nlet calOffset=0;\r\n\r\nfunction renderAvailabilityCalendar(blocked){\r\n  const grid=$('cgb-cal-grid'); if(!grid) return;\r\n  const today=new Date(); today.setHours(0,0,0,0);\r\n  const todayStr=toISO2(today);\r\n  if(S.checkin){ const ciDate=new Date(S.checkin+'T00:00:00'); const monthsDiff=(ciDate.getFullYear()-today.getFullYear())*12+(ciDate.getMonth()-today.getMonth()); if(monthsDiff>0) calOffset=monthsDiff; }\r\n  const blockedSet=new Set(blocked); grid.innerHTML='';\r\n  for(let m=0;m<2;m++){\r\n    const d=new Date(today.getFullYear(),today.getMonth()+calOffset+m,1);\r\n    const year=d.getFullYear(),month=d.getMonth();\r\n    let firstDay=d.getDay(); firstDay=firstDay===0?6:firstDay-1;\r\n    const daysInMonth=new Date(year,month+1,0).getDate();\r\n    let html=`<div class=\"cgb-month\"><div class=\"cgb-month-title\"><span class=\"cgb-month-year\">${year}<\/span><span class=\"cgb-month-name\">${MONS[month]}<\/span><\/div><div class=\"cgb-month-grid\">`;\r\n    WD.forEach(w=>{ html+=`<div class=\"cgb-weekday\">${w}<\/div>`; });\r\n    for(let i=0;i<firstDay;i++) html+=`<div class=\"cgb-day cgb-day--empty\"><\/div>`;\r\n    for(let day=1;day<=daysInMonth;day++){\r\n      const dateStr=`${year}-${String(month+1).padStart(2,'0')}-${String(day).padStart(2,'0')}`;\r\n      const isPast=dateStr<todayStr,isToday=dateStr===todayStr,isBooked=blockedSet.has(dateStr);\r\n      const prevStr=`${year}-${String(month+1).padStart(2,'0')}-${String(day-1).padStart(2,'0')}`;\r\n      const nextStr=`${year}-${String(month+1).padStart(2,'0')}-${String(day+1).padStart(2,'0')}`;\r\n      const prevBooked=blockedSet.has(prevStr),nextBooked=blockedSet.has(nextStr);\r\n      let cls='cgb-day';\r\n      if(isPast) cls+=' cgb-day--past';\r\n      if(isToday&&!isPast) cls+=' cgb-day--today';\r\n      if(isBooked){ cls+=' cgb-day--booked'; if(!prevBooked) cls+=' cgb-day--booked-start'; if(!nextBooked) cls+=' cgb-day--booked-end'; }\r\n      html+=`<div class=\"${cls}\" data-date=\"${dateStr}\">${String(day).padStart(2,'0')}<\/div>`;\r\n    }\r\n    html+=`<\/div><\/div>`; grid.innerHTML+=html;\r\n  }\r\n  const prevBtn=$('cgb-cal-prev'), nextBtn=$('cgb-cal-next'), calMax=21;\r\n  if(prevBtn){ prevBtn.disabled=calOffset<=0; prevBtn.style.opacity=calOffset<=0?'.3':'1'; }\r\n  if(nextBtn){ nextBtn.disabled=calOffset>=calMax; nextBtn.style.opacity=calOffset>=calMax?'.3':'1'; }\r\n  grid.querySelectorAll('.cgb-day:not(.cgb-day--booked):not(.cgb-day--past):not(.cgb-day--empty)').forEach(el=>{\r\n    el.addEventListener('click',()=>{\r\n      const date=el.dataset.date;\r\n      if(!S.checkin||(S.checkin&&S.checkout)){\r\n        S.checkin=date; S.checkout='';\r\n        $('cgb-ci').value=date; $('cgb-ci-display').value=new Date(date+'T00:00:00').toLocaleDateString('nl-BE');\r\n        $('cgb-co').value=''; $('cgb-co-display').value='';\r\n        if(fpIn) fpIn.setDate(date); if(fpOut) fpOut.clear();\r\n      } else if(date>S.checkin){\r\n        S.checkout=date;\r\n        $('cgb-co').value=date; $('cgb-co-display').value=new Date(date+'T00:00:00').toLocaleDateString('nl-BE');\r\n        if(fpOut) fpOut.setDate(date);\r\n        setTimeout(doSearch,200);\r\n      }\r\n      highlightCalRange();\r\n    });\r\n  });\r\n  highlightCalRange();\r\n}\r\n\r\nfunction highlightCalRange(){\r\n  document.querySelectorAll('#cgb-cal-grid .cgb-day').forEach(el=>{\r\n    el.classList.remove('cgb-day--sel-start','cgb-day--sel-end','cgb-day--in-range');\r\n    const d=el.dataset.date; if(!d) return;\r\n    if(d===S.checkin) el.classList.add('cgb-day--sel-start');\r\n    if(d===S.checkout) el.classList.add('cgb-day--sel-end');\r\n    if(S.checkin&&S.checkout&&d>S.checkin&&d<S.checkout&&!el.classList.contains('cgb-day--booked')) el.classList.add('cgb-day--in-range');\r\n  });\r\n}\r\n\r\nif(!HIDE_CAL){\r\n  const CAL_MAX_OFFSET=21;\r\n  $('cgb-cal-prev').addEventListener('click',()=>{ if(calOffset<=0) return; calOffset--; renderAvailabilityCalendar(blockedDates); });\r\n  $('cgb-cal-next').addEventListener('click',()=>{ if(calOffset>=CAL_MAX_OFFSET) return; calOffset++; renderAvailabilityCalendar(blockedDates); });\r\n}\r\n\r\nfunction toISO2(d){ return d.getFullYear()+'-'+String(d.getMonth()+1).padStart(2,'0')+'-'+String(d.getDate()).padStart(2,'0'); }\r\n\r\n})();\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-aa4959e e-flex e-con-boxed e-con e-parent\" data-id=\"aa4959e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-64a8903 e-con-full e-flex e-con e-child\" data-id=\"64a8903\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1d46039 animated-fast elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"1d46039\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInUp&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Welkom bij Ch\u00e2teau Guillermo,<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1686b41 animated-fast elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"1686b41\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeInUp&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\"Een unieke, magische plek te midden van de Ardense natuur.\"<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-279e689 e-con-full e-flex e-con e-child\" data-id=\"279e689\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-922fcb0 elementor-align-center elementor-mobile-align-justify elementor-widget elementor-widget-button\" data-id=\"922fcb0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/la-ramorie.webticastage.be\/het-kasteel\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Ontdek<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-54492e3 elementor-align-center elementor-mobile-align-justify elementor-widget elementor-widget-button\" data-id=\"54492e3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/la-ramorie.webticastage.be\/reviews\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Ervaringen<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1920238 e-con-full e-flex e-con e-child\" data-id=\"1920238\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-056120f elementor-widget elementor-widget-image\" data-id=\"056120f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"2560\" height=\"1707\" src=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-32-scaled.jpg\" class=\"attachment-full size-full wp-image-911\" alt=\"\" srcset=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-32-scaled.jpg 2560w, https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-32-300x200.jpg 300w, https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-32-1024x683.jpg 1024w, https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-32-768x512.jpg 768w, https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-32-1536x1024.jpg 1536w, https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-32-2048x1365.jpg 2048w, https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-32-18x12.jpg 18w\" sizes=\"(max-width: 2560px) 100vw, 2560px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-024652d e-flex e-con-boxed e-con e-parent\" data-id=\"024652d\" 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-af1390c elementor-widget elementor-widget-heading\" data-id=\"af1390c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Wat onze gasten zeggen:<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b152100 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"b152100\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d358aba e-flex e-con-boxed e-con e-parent\" data-id=\"d358aba\" 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-332ce94 elementor-widget elementor-widget-html\" data-id=\"332ce94\" 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<div class=\"elfsight-app-2cf4a23d-6793-458b-ac8e-03b2fae66adb\" data-elfsight-app-lazy><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-07abe29 e-con-full e-flex e-con e-parent\" data-id=\"07abe29\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-1ca9974 e-con-full e-flex e-con e-child\" data-id=\"1ca9974\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b789df5 elementor-skin-carousel elementor-widget elementor-widget-media-carousel\" data-id=\"b789df5\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;space_between&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:20,&quot;sizes&quot;:[]},&quot;slides_per_view_tablet&quot;:&quot;2&quot;,&quot;slides_to_scroll_tablet&quot;:&quot;1&quot;,&quot;speed&quot;:8000,&quot;autoplay_speed&quot;:0,&quot;lazyload&quot;:&quot;yes&quot;,&quot;skin&quot;:&quot;carousel&quot;,&quot;effect&quot;:&quot;slide&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;loop&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;space_between_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;space_between_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]}}\" data-widget_type=\"media-carousel.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-swiper\">\n\t\t\t\t\t<div class=\"elementor-main-swiper swiper\" role=\"region\" aria-roledescription=\"carousel\" aria-label=\"Slides\">\n\t\t\t\t<div class=\"swiper-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"huur-een-kasteel-in-frankrijk\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/huur-een-kasteel-in-frankrijk.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"kasteel huren private chateau a louer location ardenne nature natuur 81\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-81-scaled.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"kasteel huren private chateau a louer location ardenne nature natuur 20\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-20-scaled.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"kasteel huren private chateau a louer location ardenne nature natuur 100\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-100-scaled.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"kasteel huren private chateau a louer location ardenne nature natuur 112\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-112-scaled.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"kasteel huren private chateau a louer location ardenne nature natuur 71\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-71.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"kasteel huren private chateau a louer location ardenne nature natuur 31\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-31-scaled.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"kasteel huren private chateau a louer location ardenne nature natuur 23\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-23.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"home cinema private caslte\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/home-cinema-private-caslte.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"kasteel huren private chateau a louer location ardenne nature natuur 13\" data-background=\"https:\/\/la-ramorie.webticastage.be\/wp-content\/uploads\/2024\/08\/kasteel-huren-private-chateau-a-louer-location-ardenne-nature-natuur-13.jpg\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Priv\u00e9 Ch\u00e2teau-Domein Voor wie bewust samenkomt Welkom bij Ch\u00e2teau Guillermo, &#8220;Een unieke, magische plek te midden van de Ardense natuur.&#8221; Ontdek Ervaringen Wat onze gasten zeggen:<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_angie_page":false,"footnotes":""},"class_list":["post-11","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/la-ramorie.webticastage.be\/fr\/wp-json\/wp\/v2\/pages\/11","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/la-ramorie.webticastage.be\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/la-ramorie.webticastage.be\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/la-ramorie.webticastage.be\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/la-ramorie.webticastage.be\/fr\/wp-json\/wp\/v2\/comments?post=11"}],"version-history":[{"count":81,"href":"https:\/\/la-ramorie.webticastage.be\/fr\/wp-json\/wp\/v2\/pages\/11\/revisions"}],"predecessor-version":[{"id":2792,"href":"https:\/\/la-ramorie.webticastage.be\/fr\/wp-json\/wp\/v2\/pages\/11\/revisions\/2792"}],"wp:attachment":[{"href":"https:\/\/la-ramorie.webticastage.be\/fr\/wp-json\/wp\/v2\/media?parent=11"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}