PageSourceSearch

https://coopmanhuijs.co.za/contact-us

html coopmanhuijs.co.za collected 2026-10-08 21:06:00 UTC 76,611 bytes, 600 lines download raw bytes

1<!DOCTYPE html> <html itemscope itemtype="https://schema.org/WebPage" lang="en" data-page-type="contact"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=yes, initial-scale=1"><title>Contact Us | Coopmanhuijs Boutique Hotel &amp; Spa</title> <link rel="preconnect" href="https://fonts.profitroom.com" crossorigin> <link rel="preconnect" href="https://wa-uploads.profitroom.com"> <link rel="stylesheet" href="/templates/berlin/9.662e6761.css"><link rel="stylesheet" href="/templates/berlin/app.4f6d78bf.css"> 
vendor: 1,642 bytes, lines 1-3
1<script>
2    !function(e){var n;if("function"==typeof define&&define.amd&&(define(e),n=!0),"object"==typeof exports&&(module.exports=e(),n=!0),!n){var t=window.Cookies,o=window.Cookies=e();o.noConflict=function(){return window.Cookies=t,o}}}(function(){function f(){for(var e=0,n={};e<arguments.length;e++){var t=arguments[e];for(var o in t)n[o]=t[o]}return n}function a(e){return e.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}return function e(u){function c(){}function t(e,n,t){if("undefined"!=typeof document){"number"==typeof(t=f({path:"/"},c.defaults,t)).expires&&(t.expires=new Date(1*new Date+864e5*t.expires)),t.expires=t.expires?t.expires.toUTCString():"";try{var o=JSON.stringify(n);/^[\{\[]/.test(o)&&(n=o)}catch(e){}n=u.write?u.write(n,e):encodeURIComponent(String(n)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),e=encodeURIComponent(String(e)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var r="";for(var i in t)t[i]&&(r+="; "+i,!0!==t[i]&&(r+="="+t[i].split(";")[0]));return document.cookie=e+"="+n+r}}function n(e,n){if("undefined"!=typeof document){for(var t={},o=document.cookie?document.cookie.split("; "):[],r=0;r<o.length;r++){var i=o[r].split("="),c=i.slice(1).join("=");n||'"'!==c.charAt(0)||(c=c.slice(1,-1));try{var f=a(i[0]);if(c=(u.read||u)(c,f)||a(c),n)try{c=JSON.parse(c)}catch(e){}if(t[f]=c,e===f)break}catch(e){}}return e?t[e]:t}}return c.set=t,c.get=function(e){return n(e,!1)},c.getJSON=function(e){return n(e,!0)},c.remove=function(e,n){t(e,"",f(n,{expires:-1}))},c.defaults={},c.withConverter=e,c}(function(){})});
3</script>
3 
3<script>
4
5    function matchConsent(val, accepted) {
6        return accepted.find(el => el === val);
7    }
8
9    function googleConsentModeMapping(consents, acceptedConsents, state) {
10        
11        function gtag(){dataLayer.push(arguments);}
12        
13        let consObj = {}
14
15        Object.entries(consents).forEach(entry => {
16            const [key, value] = entry;
17            consObj[key] = (matchConsent(value, acceptedConsents) === value) ? 'granted' : 'denied';
18        });
19        
20        gtag('consent', state, consObj);
21    
22    } 
23
24    function initGTMLayer(window) {
25        window.dataLayer = window.dataLayer || [];
26        function gtag(){dataLayer.push(arguments);}
27
28        gtag('consent', 'default', {
29            'ad_storage': 'denied',
30            'ad_user_data': 'denied',
31            'ad_personalization': 'denied',
32            'analytics_storage': 'denied',
33            'security_storage': 'granted',
34            'functionality_storage': 'denied',
35            'personalization_storage': 'denied',
36            'wait_for_update': 2500
37        });
38        
39        var jsonCookiesPolicy = Cookies.get("_CookiesPolicyAccepted");
40
41        if (typeof jsonCookiesPolicy !== "undefined") {
42
43            var cookiesPolicy = JSON.parse(jsonCookiesPolicy);
44
45            window.dataLayer.push({
46                'cookieConsentCategory': cookiesPolicy
47            });
48
49             googleConsentModeMapping({
50                "ad_storage": "marketing",
51                "ad_user_data": "marketing",
52                "ad_personalization": "marketing",
53                "analytics_storage": "analytics",
54                "security_storage": "necessary",
55                "functionality_storage": "necessary",
56                "personalization_storage": "marketing"
57            }, cookiesPolicy, 'update');
58
59            window.beAcceptedCookiePolicies = cookiesPolicy;
60
61        }
62    }
63    initGTMLayer(window);
64</script>
64 
64<script>
vendor: 359 bytes, lines 64-68
64(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
65          new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
66        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
67        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
68      })(window,document,'script','dataLayer','
68GTM-WTRG5G6
vendor: 3 bytes, line 68
68');
68</script>
68 
68<script>
69    window.dataLayer = window.dataLayer || [];
70    window.dataLayer.push({
71        'templateCode': 'berlin'
72                    });
73</script>
73 <link rel="preload" href="https://fonts.profitroom.com/playfairdisplay/websites/400-600-700.css" as="style"> <link rel="stylesheet" href="https://fonts.profitroom.com/playfairdisplay/websites/400-600-700.css" media="print" onload="this.media='all'"> <link rel="preload" href="https://fonts.profitroom.com/opensans/websites/300-400-600-700.css" as="style"> <link rel="stylesheet" href="https://fonts.profitroom.com/opensans/websites/300-400-600-700.css" media="print" onload="this.media='all'"> <style> #cookieWarning { z-index: 9999999999; position: fixed; bottom: 0; right: 0; left: 0; top: 0; width: 100%; background: rgba(0, 0, 0, .5) !important; color: #141416; text-shadow: none; line-height: 20px; padding: 0 !important; transform: translateY(-200vh); will-change: transform; transition: transform 0.01s; transition-delay: 0s; visibility: hidden; } #cookieWarning.preview { transform: translateY(0); transition-delay: 1.4s; visibility: visible; } #cookieWarning .cookieContent { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); margin: 0 auto; padding: 25px 40px 35px; font-size: 0; width: 670px; background-color: #fff; box-sizing: border-box; } #cookieWarning .cookieContent .cookieContentItem.description { font-size: 13px; line-height: 1.7; text-align: left; } [dir='rtl'] #cookieWarning .cookieContent .cookieContentItem.description { text-align: right; } #cookieWarning .cookieContent .cookieContentItem.actions { margin-top: 30px; text-align: right; } #cookieWarning .cookieContent .cookiePrivacy { text-decoration: underline; color: inherit; } .cookieBtn:first-child { margin-right: 30px; } [dir='rtl'] .cookieBtn:first-child { margin-left: 30px; margin-right: 0; } .cookieBtn:nth-child(2) { margin-right: 20px; } [dir='rtl'] .cookieBtn:nth-child(2) { margin-left: 20px; margin-right: 0; } .cookieBtn--underline { position: relative; background: transparent; border: 0; padding: 0 0 7px 0; overflow: hidden; color: #141416; } .cookieBtn--underline:hover::after { transform: translatex(0); } .cookieBtn--underline::before { content: ''; position: absolute; right: 0; bottom: 0; left: 0; z-index: -1; background: #938767; height: 1px; opacity: 0.8; } .cookieBtn--underline::after { content: ''; position: absolute; right: 0; bottom: 0; left: 0; z-index: 1; background: #938767; height: 1px; transform: translatex(-100%); transition: transform 0.3s; } .cookieBtn--underline .content { font-size: 13px; font-weight: 600; } .cookieBtn--outline { background: transparent; padding: 15px 35px; border: 1px solid #938767; border-radius: 2px; color: #141416; transition: all 0.3s; } .cookieBtn--outline:hover { background-color: #938767; color: #fff; } .cookieBtn--outline .content { font-size: 13px; font-weight: 600; } .cookieBtn--normal { position: relative; background: transparent; background: #938767; padding: 15px 35px; border: 1px solid #938767; border-radius: 2px; color: #fff; transition: all 0.3s; } .cookieBtn--normal .content { font-size: 13px; font-weight: 600; } .cookieBtn--normal::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: #0c292c; } .cookieBtn--normal::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: #fff; opacity: 0; transition: opacity 0.3s; } .cookieBtn--normal .content { position: relative; z-index: 1; } .cookieBtn--normal:hover::after { opacity: 0.2; } #cookieWarning .manageCookieSettings, #cookieWarning .cookiePolicies { display: inline-block; background-color: transparent; color: #141416; font-weight: 400; text-decoration: underline; cursor: pointer; padding: 0; border: none; } #cookieWarning .cookiePolicies:focus-visible { outline: -webkit-focus-ring-color auto 1px; } @media (max-width: 767px) { #cookieWarning .cookieContent { width: 90%; } } @media (max-width: 480px) { #cookieWarning .cookieContent .cookieContentItem.actions { margin-top: 20px; text-align: center; } #cookieWarning .cookieContent .cookieContentItem.description { max-height: 250px; overflow: scroll; } #cookieWarning .cookieContent p { line-height: 1.5; } #cookieWarning .cookieContent { padding: 10px 25px 25px; } .cookieBtn:nth-child(2) { margin-right: 0; } .cookieBtn:nth-child(3) { margin-top: 20px; } } @media (max-width: 375px) { .cookieBtn:first-child { align-self: center; margin-right: 0; margin-bottom: 20px; }
73 #cookieWarning .cookieContent .cookieContentItem.actions { display: flex; flex-direction: column; } } @media (max-width: 360px) { #cookieWarning .cookieContent { padding: 15px; } #cookieWarning .cookieContent p { margin-top: 0; } #cookieWarning .cookieContent .cookieContentItem.description { font-size: 12px; } #cookieWarning .cookieContent .cookieContentItem.actions { margin-top: 15px; } .cookieBtn:first-child { margin-bottom: 15px; } .cookieBtn:nth-child(3) { margin-top: 15px; } .cookieBtn--underline .content, .cookieBtn--outline .content, .cookieBtn--normal .content { font-size: 12px; } } @media (max-width: 320px) { .cookieBtn--outline, .cookieBtn--normal { padding-top: 12px; padding-bottom: 12px; } } @media (max-width: 320px) and (max-height: 480px) { #cookieWarning .cookieContent { width: 100%; } } #cookie-privacy-iframe { z-index: 99999; position: fixed; top: 20px; bottom: 20px; left: 5%; right: 5%; overflow: auto; display: none; box-shadow: 0 0 0 5px rgba(0, 0, 0, .5); background-color: rgba(0, 0, 0, .5); } #cookie-privacy-iframe .cookie-privacy-iframe-inner { width: 100%; height: 100%; position: relative; } #cookie-privacy-iframe iframe { border: 0; background-color: #fff; width: 100%; height: 100%; overflow: auto; } .custom-close-popup { position: absolute; opacity: 0.8; cursor: pointer; width: 39px; height: 39px; background: #000; color: #FFF; text-align: center; right: 0; top: 0; } .custom-close-popup:hover { opacity: 1; } .custom-close-popup:after, .custom-close-popup:before { content: ''; position: absolute; top: 6px; right: 18px; width: 3px; height: 26px; border-radius: 2px; background-color: #fff; } .custom-close-popup:before { transform: rotate(45deg); } .custom-close-popup:after { transform: rotate(-45deg); } </style><style> body.active-cookies-modal { overflow: hidden; padding-right: 15px; } body.site-body.active-cookies-modal #cookieWarning { right: 15px; width: auto !important; } body.site-body.active-cookies-modal .site-top { right: 15px; width: auto; } .cookies-modal, .cookies-modal *, .cookies-modal *:before, .cookies-modal *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .cookies-modal { will-change: visibility, opacity; position: fixed; top: 0; left: 0; right: 0; bottom: 0; overflow-y: auto; overflow-x: hidden; z-index: 9999999999; visibility: hidden; opacity: 0; transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1); background-color: rgba(0, 0, 0, 0.4); } .cookies-modal__table { width: 100%; height: 100%; display: table; table-layout: fixed; } .cookies-modal__cell { display: table-cell; vertical-align: middle; width: 100%; } .cookies-modal--active { visibility: visible; opacity: 1; } .cookies-modal__dialog { max-width: 835px; padding: 1.2rem; margin: 0 auto; } .cookies-modal__content { will-change: transform, opacity; position: relative; padding: 40px 50px 30px; background: #fff; background-clip: padding-box; box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.4); opacity: 0; } .cookies-modal__content--active { opacity: 1; } .cookies-modal__header { font-size: 18px; padding: 10px 0 20px; color: #000; font-weight: 900; } .cookies-modal__section { padding: 10px 0; } .cookies-modal__checkbox { padding: 0 15px 0 0; } [dir='rtl'] .cookies-modal__checkbox { padding: 0 0 0 15px; } .cookies-modal__checkbox label { position: relative; display: flex; gap: 18px; font-size: 14px; line-height: 20px; font-weight: 400; } .cookies-modal__checkbox label input { position: absolute; width: 20px; height: 20px; } .cookies-modal__checkbox label span { font-size: 14px; font-weight: 400; line-height: 1.4285714286em; display: block; position: relative; min-height: 20px; padding: 0 0 0 20px; cursor: pointer; } .cookies-modal__checkbox label span:before, .cookies-modal__checkbox label span:after { content: ''; position: absolute; left: 0; top: 0; height: 20px; width: 20px; border-color: #bdbdbd; } .cookies-modal__checkbox label span:before { background-color: #fff; border: 2px rgba(0, 0, 0, 0.5) solid; border-radius: 2px; transition: background .3s ease; } .cookies-modal__checkbox label span:after { position: absolute; top: 5px; display: flex; content: ''; background: #000; width: 14px; height: 7px; left: 3px; border-bottom: solid 2px #ffffff; border-left: solid 2px #ffffff; background: none; transform: rotate(-45deg) scale(0); transition: transform .1s ease, opacity .1s ease; transform-origin: center center; z-index: 1; } .cookies-modal__checkbox label input:checked ~ span:before { border-color: #6c7a30; background: #6c7a30; } .cookies-modal__checkbox label input:disabled ~ span:before { border-color: #bdbdbd !important; background: #bdbdbd !important; } .cookies-modal__checkbox label input:checked ~ span:after { opacity: 1; transform: rotate(-45deg) scale(.8); } .cookies-modal__text { font-size: 14px; line-height: 1.79; color: #000; padding-left: 39px; } .cookies-modal__text strong { line-height: 20px; display: block; } .cookies-modal__text p { margin: 10px 0; font-weight: 300; } .cookies-modal__close { position: absolute; opacity: 0.8; cursor: pointer; width: 39px; height: 39px; background: #000; color: #FFF; text-align: center; right: 0; top: 0; border: none; } .cookies-modal__close:hover { opacity: 1; } .cookies-modal__close:after, .cookies-modal__close:before { content: ''; position: absolute; top: 11px; right: 18px; width: 2px; height: 18px; border-radius: 2px; background-color: #fff; } .cookies-modal__close:before { transform: rotate(45deg); } .cookies-modal__close:after { transform: rotate(-45deg); } .cookies-modal__submit { /*float: right;*/ } .cookies-modal__section--action { display: flex; justify-content: flex-end; padding-bottom: 0; } [dir='rtl'] .cookies-modal__section--action { flex-direction: row-reverse; } .cookies-modal__notification { margin-right: 22px; display: none; } .cookies-modal__notification-text { font-size: 13px; line-height: 36px; background-color: #e1e1e1; border-radius: 2px; opacity: 0.7; color: #141416; margin-top: 5px; padding: 0 20px; position: relative; } .cookies-modal__notification-text::after { top: 10px; position: absolute; right: -6px; width: 0; height: 0; content: ''; border-style: solid; border-width: 8px 0 8px 6px; border-color: transparent transparent transparent #e1e1e1; } .cookies-modal__notification-text--success { background-color: #6c7a30; color: #fff; } .cookies-modal__notification-text--success::after { border-color: transparent transparent transparent #6c7a30; } .cookies-modal__submit button { height: 46px; padding: 0 20px; border-radius: 2px; background-color: #6c7a30; display: inline-block; font-size: 16px; border: 0; color: #fff; cursor: pointer; -webkit-filter: brightness(100%); -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; -ms-transition: all 0.3s ease; transition: all 0.3s ease; } .cookies-modal__submit button:hover { -webkit-filter: brightness(90%); } @media (max-width: 960px) { .cookies-modal__section--action { justify-content: center; } .cookies-modal__content { padding: 40px 20px 20px; } body.active-cookies-modal { padding-right: 0; } body.site-body.active-cookies-modal #cookieWarning { right: 0; } body.site-body.active-cookies-modal .site-top { right: 0; } .cookies-modal__submit, .cookies-modal__submit button { width: 100%; } } @media (max-width: 375px) { .cookies-modal__notification-text { padding: 10px; line-height: 1.6; } .cookies-modal__submit button { font-size: 14px; } .cookies-modal__dialog { padding: 15px; } .cookies-modal__content { padding: 40px 15px 15px; } } </style> <style> #cookieWarning .cookieBtn--underline::before { background: #4F3423; } #cookieWarning .cookieBtn--underline::after { background: #4F3423; } #cookieWarning .cookieBtn--outline { border-color: #4F3423; } #cookieWarning .cookieBtn--outline:hover { background-color: #4F3423; } #cookieWarning .cookieBtn--normal { border-color: #4F3423; } #cookieWarning .cookieBtn--normal::before { background: #4F3423; } .cookies-modal__notification-text--success { background-color: #4F3423; } .cookies-modal__notification-text--success::after { border-color: transparent transparent transparent #4F3423; } .cookies-modal__submit button { background-color: #4F3423; } .cookies-modal__checkbox label input:checked ~ span:before { border-color: #4F3423; background: #4F3423 } </style> <link rel="canonical" href="https://coopmanhuijs.co.za/contact-us"/> <link rel="alternate" href="https://coopmanhuijs.co.za/contact-us" hreflang="en"> <meta name="format-detection" content="telephone=no"> <meta name="google" content="notranslate"><meta name="description" content="Our team is standing at the ready to assist you with your booking. Contact us today to book your stay or to ask any questions you might have while planning."><meta property="og:title" content="Contact Us"> <meta property="og:description" content="Our team is standing at the ready to assist you with your booking. Contact us today to book your stay or to ask any questions you might have while planning."> <meta property="og:image" content="https://r.profitroom.pl/coopmanhuijsboutiquehotelspa/images/202507071157430.CoopmanhuijsFinal.jpg"> <style type="text/css"> .l-wrapper-center { display: flex; align-items: center; justify-content: center; } </style> </head> <body class="wa-site site-body wa-headings-color--h wa-paragraph-font wa-global-heading page-contact en wa-primary-border-color-list-dot--before" data-page-id="499c644c-043e-4da1-a231-640a3ca3b0b5" data-site-id="13680" > <style type="text/css">
73 .wa-primary-color {color: #4F3423} .wa-primary-color--hover:hover {color: #4F3423} .wa-primary-color--hover-text:hover .text {color: #4F3423} .wa-primary-color--is-active.is-active {color: #4F3423} .wa-primary-color--a-before a::before {color: #4F3423} .wa-primary-color--a-mailto-hover a[href^='mailto']:hover {color: #4F3423} .wa-primary-color--strong strong {color: #4F3423} .wa-primary-color--before::before {color: #4F3423} .wa-primary-background-color {background-color: #4F3423} .wa-primary-background-color--hover:hover {background-color: #4F3423} .wa-primary-background-color--before::before {background-color: #4F3423} .wa-primary-background-color--after::after {background-color: #4F3423} .wa-primary-background-color--hover-after:hover::after {background-color: #4F3423} .wa-primary-background-color--is-active.is-active {background-color: #4F3423} .wa-primary-background-color--is-active-after.is-active::after {background-color: #4F3423} .wa-primary-border-color {border-color: #4F3423} .wa-primary-border-color.is-active {border-color: #4F3423} .wa-primary-border-color--hover:hover {border-color: #4F3423} .wa-primary-border-color--before::before {border-color: #4F3423} .wa-primary-border-color-list-dot--before .t-content li::before {border-color: #4F3423} .wa-primary-border-color--hover-before:hover::before {border-color: #4F3423} .wa-primary-border-top-color--after::after {border-top-color: #4F3423} .wa-button-link-primary:hover {background-color: #4F3423} .wa-primary-border-color--input-focus input:focus {border-color: #4F3423} .wa-primary-border-color--input-focus textarea:focus {border-color: #4F3423} .wa-primary-border-color--input-focus select:focus {border-color: #4F3423} .wa-secondary-background-color--is-active--before.is-active:before {background-color: #4F3423} .wa-primary-background-color-dots--hover:hover .dot {background-color: #4F3423} .wa-primary-border-color--is-active.is-active {border-color: #4F3423} .contact-form__button {background-color: #4F3423} .photo-text-tabs__tab.is-active {color: #4F3423} .photo-text-tabs__tab.is-active {border-color: #4F3423} .photo-text-tabs__tab:hover {border-color: #4F3423} .photo-text-tabs__tab:before {background-color: #4F3423} .wa-secondary-color {color: #F2F2F2} .wa-secondary-background-color {background-color: #F2F2F2} .wa-secondary-background-color--hover:hover {background-color: #F2F2F2} .wa-secondary-background-color--before::before {background-color: #F2F2F2} .wa-secondary-background-color--after::after {background-color: #F2F2F2} .wa-secondary-background-color--is-active.is-active {background-color: #F2F2F2} .wa-secondary-border-color {border-color: #F2F2F2} .wa-button-link-primary {background-color: #F2F2F2} .wa-headings-color {color: #111111} .wa-headings-color--h h1, h2, h3, h4, h5, h6 {color: #111111} .wa-headings-color--text .text {color: #111111} .wa-headings-color--hover-icon:hover .icon {color: #111111} .wa-headings-background-color--before:before {background-color: #111111} .wa-button-link-primary {color: #111111} .wa-button-link-primary::before {color: #111111} .rs-contact__download .text {background-image: linear-gradient(#111111,#111111) } .wa-content-color {color: #3A3A3A} .wa-content-color--strong strong {color: #3A3A3A} .wa-content-background-color--before::before {background-color: #3A3A3A} .wa-content-input::placeholder {color: #3A3A3A} .wa-primary-background-color-dots .dot {background-color: #3A3A3A} .t-content {color: #3A3A3A} .t-content a:not([href^='tel:']):not(.wa-button-link-primary), .contact-form-swal .swal2-html-container a:not([href^='tel:']):not(.wa-button-link-primary), .rs-contact__download a:not([href^='tel:']):not(.wa-button-link-primary), .newsletter-swal .swal2-html-container a:not([href^='tel:']):not(.wa-button-link-primary) {background-image: linear-gradient(#3A3A3A,#3A3A3A) } .t-content a[href$='.pdf']:not(.wa-button-link-primary):before {color: #3A3A3A} .attractions-filters__item .text::before {background-color: #3A3A3A} .attraction-details-sidebar__link--mail .text:before {background-color: #3A3A3A} .conference-sidebar__link--mail .text:before {background-color: #3A3A3A} .contact-form__item--select::before {border-top-color: #3A3A3A} .wa-background-box-background-color {background-color: #FCFCFC} .wa-background-box-background-color--before::before {background-color: #FCFCFC} .wa-background-box-background-color--after::after {background-color: #FCFCFC} .wa-background-box-background-color--input input {background-color: #FCFCFC} .wa-background-box-background-color--textarea textarea {background-color: #FCFCFC} .wa-background-box-background-color--textarea select {background-color: #FCFCFC} .wa-frames-border-color {border-color: #c5c5c5} .wa-frames-border-color--before::before {border-color: #c5c5c5} .wa-frames-background-color--before::before {background-color: #c5c5c5} .wa-frames-border-color--input input {border-color: #c5c5c5} .wa-frames-border-color--textarea textarea {border-color: #c5c5c5} .wa-frames-border-color--textarea select {border-color: #c5c5c5} .restaurant-menu-item__dish:not(:last-child) {border-color: #c5c5c5} .a11y {border-color: #c5c5c5} .wa-background-primary-background-color {background-color: #ffffff} .wa-background-primary-background-color--before::before {background-color: #ffffff} .wa-background-secondary-background-color {background-color: #f8f8f8} .wa-background-secondary-background-color--before::before {background-color: #f8f8f8} .wa-background-footer-background-color {background-color: #292929} .wa-content-footer-color {color: #f9f9f9} .wa-button-text-color {color: #4F3423}
73 .intro__btn .text.wa-headings-color {color: #4F3423} .prolt__btn .text.wa-headings-color {color: #4F3423} .twh__btn .text.wa-headings-color {color: #4F3423} .conference-item__button .text.wa-headings-color {color: #4F3423} .attraction-item__btn .text.wa-headings-color {color: #4F3423} .attraction-others__btn .text.wa-headings-color {color: #4F3423} .event-filters__btn .text.wa-headings-color {color: #4F3423} .event-details__other-btn .text.wa-headings-color {color: #4F3423} .wa-headline-font { font-family: Playfair Display !important} .wa-paragraph-font { font-family: Open Sans !important} .wa-global-heading h1, h2, h3, h4, h5, h6 { font-family: Playfair Display} .contact-box__text strong { font-family: Playfair Display} </style> <a class="skip-link js-scroll-to" href="#main-content" data-scroll-to="#main-content" data-scroll-px="-150px">Skip to main content</a> <header class="header"> <div class="site-top-bar js-check-scroll js-site-header js-scroll-header "> <div class="site-top-bar__logo-hld js-logo-hld"> <a class="site-logo site-top-bar__logo js-logo" href="/" data-logo="true" style="transform: scale(1.5)"> <img class="js-lazy" src="/templates/berlin/images/img-blank.gif" data-src="https://r.profitroom.com/coopmanhuijsboutiquehotelspa/images/007a52ab-d24e-4d59-b7a1-e832ec9a8c45.png" alt="Coopmanhuijs Boutique Hotel &amp; Spa - Homepage"/> </a> </div> <div class="site-top-bar__nav-hld"> <nav class="single-nav" aria-label="Main menu"> <ul class="single-nav__list js-nav" role="menu"> <li class="js-nav-item js-nav-item-top single-nav__item " role="presentation"> <a role="menuitem" class="js-nav-link single-nav__link " href="/view-our-rooms-coopmanhuijs-hotel" > <span class="single-nav__text wa-primary-background-color--before" data-menu-page="2900743"> Accommodation </span> </a> </li> <li class="js-nav-item js-nav-item-top single-nav__item " role="presentation"> <a role="menuitem" class="js-nav-link single-nav__link " href="/new-specials-and-offers" > <span class="single-nav__text wa-primary-background-color--before" data-menu-page="3944577"> Specials </span> </a> </li> <li class="js-nav-item js-nav-item-top single-nav__item " role="presentation"> <a role="menuitem" class="js-nav-link single-nav__link " href="/services-amenities" > <span class="single-nav__text wa-primary-background-color--before" data-menu-page="2833263"> Services </span> </a> </li> <li class="js-nav-item js-nav-item-top single-nav__item " role="presentation"> <a role="menuitem" class="js-nav-link single-nav__link " href="/dine-at-helena-s-restaurant" > <span class="single-nav__text wa-primary-background-color--before" data-menu-page="3984441"> Restaurant </span> </a> </li> <li class="js-nav-item js-nav-item-top single-nav__item " role="presentation"> <a role="menuitem" class="js-nav-link single-nav__link " href="/unwind-in-our-spa" > <span class="single-nav__text wa-primary-background-color--before" data-menu-page="3944579"> Spa </span> </a> </li> <li class="js-nav-item js-nav-item-top single-nav__item " role="presentation"> <a role="menuitem" class="js-nav-link single-nav__link " href="/conference-facilities" > <span class="single-nav__text wa-primary-background-color--before" data-menu-page="2833271"> Conferences </span> </a> </li> <li class="js-nav-item js-nav-item-top single-nav__item is-active" role="presentation"> <a role="menuitem" class="js-nav-link single-nav__link " href="/contact-us" > <span class="single-nav__text wa-primary-background-color--before" data-menu-page="2833265"> Contact </span> </a> </li> </ul> </nav> </div> <div class="site-top-bar__right-box"> <div class="socials"> <ul class="socials__list"> <li class="socials__item"> <a href="https://www.facebook.com/CoopmanhuijsBoutiqueHotelSpa" rel="nofollow" title="facebook" class="socials__link is-facebook wa-headings-color" target="_blank"> <span class="socials__icon socials__icon--facebook icon icon-facebook " aria-hidden="true"></span> <span class="sr-only">facebook</span> </a> </li> <li class="socials__item"> <a href="https://www.instagram.com/coopmanhuijs/?hl=en" rel="nofollow" title="instagram" class="socials__link is-instagram wa-headings-color" target="_blank"> <span class="socials__icon socials__icon--instagram icon icon-instagram " aria-hidden="true"></span> <span class="sr-only">instagram</span> </a> </li> </ul> </div> <div class="site-top-bar__booking-btn"> <button class="site-btn site-btn--dark js-open-upper wa-primary-background-color"> <span class="text">Book online</span> </button> </div> </div> </div> <button class="a11y js-a11y-contrast" aria-label="High contrast mode" data-label-on="Deactivate high contrast mode" data-label-off="Activate high contrast mode"> <span class="icon icon-wcag-contrast-icon js-contrast-off" aria-hidden="true"></span> <span class="icon icon-wcag-eye-on js-contrast-on" style="display: none;" aria-hidden="true"></span> </button> <div class="site-top-mobile hamburger-classic js-site-top-mobile js-site-top-mobile "> <div class="hamburger-classic__inner"> <div class="hamburger-classic__col hamburger-classic__col--left"> <a class="hamburger-classic__signet" href="/"> <img class="hamburger-classic__signet-img js-lazy" data-src="https://r.profitroom.com/coopmanhuijsboutiquehotelspa/images/007a52ab-d24e-4d59-b7a1-e832ec9a8c45.png" alt="Coopmanhuijs Boutique Hotel &amp; Spa"/> </a> </div> <div class="hamburger-classic__col hamburger-classic__col--center"> <button class="hamburger-classic__booking-btn site-btn js-open-upper wa-primary-background-color"> Book online </button> </div> <div class="hamburger-classic__col hamburger-classic__col--right"> <button class="hamburger-classic__nav-btn js-mobile-btn" aria-label="Hamburger, opens menu"> <span class="icons-hld" aria-hidden="true"> <span class="menu-icon"> <span></span> <span></span> <span></span> </span> <span class="close-icon"></span> </span> <span class="text">Menu</span> </button> </div> </div> <nav class="mobile-nav js-mobile-nav" aria-label="Mobile menu"> <div class="mobile-nav__inner"> <ul class="mobile-nav__ul"> <li class="mobile-nav__li"> <a class="mobile-nav__link wa-primary-color--hovered wa-primary-color--is-active " href="/"> <span class="text">Homepage</span> </a> </li> <li class="mobile-nav__li"> <a class="mobile-nav__link wa-primary-color--hovered wa-primary-color--is-active " href="/view-our-rooms-coopmanhuijs-hotel" > <span class="text">Accommodation</span> </a> </li> <li class="mobile-nav__li"> <a class="mobile-nav__link wa-primary-color--hovered wa-primary-color--is-active " href="/new-specials-and-offers" > <span class="text">Specials</span> </a> </li> <li class="mobile-nav__li"> <a class="mobile-nav__link wa-primary-color--hovered wa-primary-color--is-active " href="/services-amenities" > <span class="text">Services</span> </a> </li> <li class="mobile-nav__li"> <a class="mobile-nav__link wa-primary-color--hovered wa-primary-color--is-active " href="/dine-at-helena-s-restaurant" > <span class="text">Restaurant</span> </a> </li> <li class="mobile-nav__li"> <a class="mobile-nav__link wa-primary-color--hovered wa-primary-color--is-active " href="/unwind-in-our-spa" > <span class="text">Spa</span> </a> </li> <li class="mobile-nav__li"> <a class="mobile-nav__link wa-primary-color--hovered wa-primary-color--is-active " href="/conference-facilities" > <span class="text">Conferences</span> </a> </li> <li class="mobile-nav__li"> <a class="mobile-nav__link wa-primary-color--hovered wa-primary-color--is-active is-active" href="/contact-us" > <span class="text">Contact</span> </a> </li> </ul> </div> <div class="mobile-nav__bottom"> <div class="lang-horizontal-nav"> <ul class="lang-horizontal-nav__list"> <li class="lang-horizontal-nav__item wa-primary-background-color--before wa-primary-color--is-active is-active"> <span> en </span> </li> </ul> </div> </div> </nav> </div> </header>
73 <main id="main-content" data-gjs-type="wrapper" tabindex="-1"> <div data-component-id='19084093' > <section class="banner " > <div class="slider-video "> <div class="slider-video__inner"> <div class="slider-video__background"> <picture class="cvr-pic"> <source type="image/webp" srcset="https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/768x1024/17599275861911_.maafrika7911.webp" media="(max-width: 767px)"> <source srcset="https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/768x1024/17599275861911_maafrika7911.jpg" media="(max-width: 767px)"> <source type="image/webp" srcset="https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/1366x768/17599275861911_.maafrika7911.webp" media="(max-width: 1366px)"> <source srcset="https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/1366x768/17599275861911_maafrika7911.jpg" media="(max-width: 1366px)"> <source type="image/webp" srcset="https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/1920x1080/17599275861911_.maafrika7911.webp"/> <img class="cvr-pic__img" src="https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/1920x1080/17599275861911_maafrika7911.jpg" alt="image" fetchpriority="high"> </picture> </div> </div> </div> <div class="banner__holder "> <div class="hero hero--right"> <h1 class="hero__title wa-headline-font " > Contact Us </h1> </div> <div data-component-id='28155619' > <div class="site-panel site-panel--right"> <div class="site-panel__holder"> <div class="site-panel__dates"> <button type="button" aria-label="Arrival" class="site-panel__box site-panel__box--arrival js-checkin-box"> <span class="site-panel-input wa-primary-border-color--hover wa-headings-color wa-paragraph-font"> <span class="site-panel-input__day-number js-input-hld__day-number">08</span> <span class="site-panel-input__separator" aria-hidden="true">-</span> <span class="site-panel-input__month js-input-hld__month">10</span> <span class="site-panel-input__separator" aria-hidden="true">-</span> <span class="site-panel-input__year js-input-hld__year">2026</span> </span> <span class="site-panel__icon icon icon-calendar wa-primary-color" aria-hidden="true"></span> <input type="hidden" class="js-input-checkin" name="checkin" value="08.10.2026"> </button> <button type="button" aria-label="Departure" class="site-panel__box site-panel__box--departure js-checkout-box"> <span class="site-panel-input wa-primary-border-color--hover wa-headings-color wa-paragraph-font"> <span class="site-panel-input__day-number js-input-hld__day-number">09</span> <span class="site-panel-input__separator" aria-hidden="true">-</span> <span class="site-panel-input__month js-input-hld__month">10</span> <span class="site-panel-input__separator" aria-hidden="true">-</span> <span class="site-panel-input__year js-input-hld__year">2026</span> </span> <span class="site-panel__icon icon icon-calendar wa-primary-color" aria-hidden="true"></span> <input type="hidden" class="js-input-checkout" name="checkout" value="09.10.2026"> </button> </div> <button class="site-panel__button site-btn site-btn--dark js-open-upper wa-primary-background-color"> <span class="text">Book online</span> </button> </div> </div> </div> </div> <button class="banner__control banner__control--video banner-control" data-video-controls="banner-video" data-text-play="Play video" data-text-pause="Pause video" aria-pressed="false"> <span class="u-sr-only">Play video</span> <span class="icon" aria-hidden="true"></span> </button> <button class="banner__control banner__control--slider banner-control" data-slider-controls="banner-slider" data-text-play="Resume slider autoplay" data-text-pause="Stop slider autoplay" aria-pressed="false"> <span class="u-sr-only">Stop slider autoplay</span> <span class="icon icon-pause" aria-hidden="true"></span> </button> </section> <nav aria-label="breadcrumbs"> <ul class="breadcrumb "> <li class="breadcrumb__item wa-content-color "> <a href="/">Homepage</a> <span class="icon icon-arrow-bold-right wa-primary-color" aria-hidden="true"></span> </li> <li class="breadcrumb__item wa-content-color active"> <span aria-current="Contact">Contact</span> </li> </ul> </nav> 
73<script type="application/ld+json">
74		{
75    "@context": "https:\/\/schema.org",
76    "@type": "BreadcrumbList",
77    "itemListElement": [
78        {
79            "@type": "ListItem",
80            "position": 1,
81            "name": "Homepage",
82            "item": "https:\/\/coopmanhuijs.co.za\/"
83        },
84        {
85            "@type": "ListItem",
86            "position": 2,
87            "name": "Contact",
88            "item": "https:\/\/coopmanhuijs.co.za\/contact-us"
89        }
90    ]
91}
92	</script>
92 </div><div data-component-id='19084095' > <section class="l-section l-section--contact-box"> <div class="contact-box__title-box"> <h2 class="contact-box__main-title t-section-title wa-headings-color wa-headline-font" > Contact </h2> </div> <div class="contact-box wa-primary-background-color--before"> <div class="l-wrapper"> <div class="contact-box__holder"> <div class="contact-box__info-box"> <h3 class="contact-box__title wa-headline-font wa-headings-color"> Coopmanhuijs Boutique Hotel &amp; Spa </h3> <div class="contact-box__text t-content"> <span class="contact-box__street">33 Church Street<br /></span> <span class="contact-box__city">7600 Stellenbosch</span> <span class="contact-box__country">, ZA</span> </div> <div class="contact-box__text wa-content-color wa-primary-color--a-before wa-primary-color--a-mailto-hover"> <a href="tel:+27 21 883 8207" title="+27 21 883 8207" aria-label="Call us: +27 21 883 8207"> +27 21 883 8207 </a> <a href="mailto:[email protected]" title="[email protected]" aria-label="Write to us: [email protected]"> [email protected] </a> </div> <div class="contact-box__text wa-content-color wa-primary-color--a-before wa-primary-color--strong wa-paragraph-font wa-primary-color--a-mailto-hover" > <p></p> </div> <div class="contact-box__text wa-content-color wa-primary-color--a-before wa-primary-color--strong wa-primary-color--a-mailto-hover" > <p></p> </div> <div class="contact-box__text wa-content-color wa-primary-color--a-before wa-primary-color--strong wa-primary-color--a-mailto-hover" > <p></p> </div> </div> <div class="contact-box__map-box"> <div class="contact-box__custom-map t-content" > <iframe title="Map" class="contact-box__map-iframe js-lazy" src="https://maps.google.com/maps?q=Coopmanhuijs+Boutique+Hotel+&+Spa&output=embed" width="100%" height="500px" frameborder="0" style="border:0" allowfullscreen></iframe> </div> </div> </div> </div> </div> </section> </div><div data-component-id='19084097' > <section class="l-section l-section--contact-form is-paddington"> <div class="l-wrapper"> <h2 class="contact-form__title t-section-title wa-headings-color wa-headline-font" > Get in touch </h2> <div class="contact-form__text t-content wa-content-color" > <p>We will reply as soon as possible</p> </div> <div class="contact-form" > <div class="contact-form__holder js-form-holder" data-captcha-error-title="Captcha validation failed" data-captcha-error-setup="Captcha is not set up correctly. Please contact the site administrator." data-captcha-error-validation="Captcha validation failed. Please try again." data-token="/contact/token" data-request="/contact/form-variable/157555521?lang=en" data-policy-title="Confirm sending the form" data-policy-info="By clicking the &quot;CONFIRM&quot; button, you agree to the processing of your personal data in order to process your inquiry" data-button-confirm="Confirm" data-button-cancel="Cancel" data-success-title="Message sent" data-success-info="Thank you for filling up the form!" data-server-error-title="Server error" data-server-error-info="Sorry, we can&#039;t process this application right now, reapply later" data-token-error-title="Problem occurred" data-token-error-info="Please send the form again" data-spam-error-title="Spam detected" data-spam-error-info="The message has not been sent" data-valid-error-title="The form contains errors" data-valid-error-field="Field" data-not-valid-email="has an invalid format" data-not-valid-phone="has an invalid format" data-cannot-empty="shouldn&#039;t be empty" data-connect-error="Connection error has occurred" data-uuid="fe708d14-be48-4564-9e46-2907a1aa369f"> <form aria-label="Contact us" class="contact-form__form js-form wa-primary-border-color--input-focus wa-primary-border-color--textarea-focus wa-primary-border-color--select-focus wa-frames-border-color--input wa-frames-border-color--textarea wa-frames-border-color--select wa-background-box-background-color--input wa-background-box-background-color--textarea wa-background-box-background-color--select" action="#" data-uuid="fe708d14-be48-4564-9e46-2907a1aa369f" id="157555521"> <div class="contact-form__row "> <div class="contact-form__col "> <div class="contact-form__item"> <label for="name" class="contact-form__label u-sr-only">Name and surname</label> <input id="name" class="js-form__value contact-form__input wa-content-color wa-content-input wa-paragraph-font " type="text" name="name" data-name="Name and surname" placeholder="Name and surname * " required> </div> <div class="contact-form__item"> <label for="email" class="contact-form__label u-sr-only">E-mail</label> <input id="email" class="js-form__value contact-form__input wa-content-color wa-content-input wa-paragraph-font " type="email" name="email" data-name="E-mail" placeholder="E-mail * " required> </div> <div class="contact-form__item"> <label for="phone" class="contact-form__label u-sr-only">Phone</label> <input id="phone" class="js-form__value contact-form__input wa-content-color wa-content-input wa-paragraph-font " type="tel" name="phone" data-name="Phone" placeholder="Phone " > </div> <label for="name321" class="u-sr-only">name321</label> <input id="name321" class="js-form__value contact-form__input contact-form__input" type="text" name="name321" placeholder="name" value="" autocomplete="off" aria-hidden="true" hidden> </div> <div class="contact-form__col "> <div class="contact-form__item"> <label for="message" class="contact-form__label u-sr-only">Message</label> <textarea id="message" class="js-form__value contact-form__textarea wa-content-color wa-content-input wa-paragraph-font " name="message" data-name="Message" placeholder="Message * " required></textarea> </div> </div> </div> <div class="contact-form__row"> <div class="contact-form__col contact-form__col--big"> <p class="contact-form__rodo wa-content-color wa-content-color--link"> The administrator of personal data is Coopmanhuijs Boutique Hotel & Spa, Stellenbosch 7600, 33 Church Street, the data provided by you will be processed in order to answer the question sent (Article 6 (1) (f) of the GDPR). More in the website's <a href="/privacy" target="_blank">Privacy Policy</a>. </p> </div> </div> <div class="contact-form__row"> <div class="contact-form__col"> <div class="contact-form__item"> <p class="contact-form__required wa-content-color">*required fields</p> </div> </div> <div class="contact-form__col"> <div class="contact-form__item contact-form__item--btn-hld"> <button class="contact-form__button site-btn wa-primary-background-color--hover wa-primary-color wa-form-border-color" type="submit" name="submit"> <span class="text">
92 Send </span> </button> </div> </div> </div> </form> </div> </div> </div> </section> </div> </main> <div data-component-id='18674681' > <section class="l-section l-section--newsletter" > <div class="newsletter js-newsletter-holder" data-token="/contact/token" data-request="/contact/newsletter?lang=en" data-policy-title="Confirm sending the form" data-policy-info="By clicking the &quot;CONFIRM&quot; button, you agree to the processing of your personal data in order to process your inquiry" data-button-confirm="Confirm" data-button-cancel="Cancel" data-success-title="Confirm your registration" data-success-info="Check your mail. We have sent you a message asking you to confirm your e-mail address." data-server-error-title="Server error" data-server-error-info="Sorry, we can&#039;t process this application right now, reapply later" data-token-error-title="Problem occurred" data-token-error-info="Please send the form again" data-spam-error-title="Spam detected" data-spam-error-info="The message has not been sent" data-valid-error-title="The form contains errors" data-valid-error-field="Field" data-not-valid-email="has an invalid format" data-cannot-empty="shouldn&#039;t be empty" data-connect-error="Connection error has occurred" data-already-added-text="This e-mail address already subscribes to the newsletter." data-already-added-error-title="newsletter.already_added_error_title" data-captcha-error-title="Captcha validation failed" data-captcha-error-setup="Captcha is not set up correctly. Please contact the site administrator." data-captcha-error-validation="Captcha validation failed. Please try again." data-consent-url="/contact/newsletter/consent?lang=en" > <div class="newsletter__img-hld"> <picture class="newsletter__img cvr-pic"> <source srcset="/templates/berlin/images/img-blank.gif" media="(max-width: 768px)" data-srcset="https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/768x678/17538983858833_coopmanhuijshotelpool1024x683.jpg" /> <img src="/templates/berlin/images/img-blank.gif" alt="newsletter bg" class="cvr-pic__img js-lazy" data-src="https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/1140x700/17538983858833_coopmanhuijshotelpool1024x683.jpg?updated=2025-09-17_13-57" /> </picture> </div> <div class="newsletter__text-box wa-frames-border-color wa-background-box-background-color"> <h2 class="newsletter__title wa-headline-font wa-headings-color"> Subscribe to the newsletter </h2> <div class="newsletter__description t-content"> Be the first to know about the latest events, offers and promotions! </div> <form class="newsletter-form js-newsletter-form wa-frames-border-color--input wa-primary-border-color--input-focus" action="#" aria-label="Subscribe to the newsletter"> <div class="newsletter-form__inner"> <label class="u-sr-only" for="newsletter-email">E-mail</label> <input class="js-newsletter__value newsletter-form__input wa-content-color wa-content-input" id="newsletter-email" type="email" name="email" data-name= "E-mail" placeholder="E-mail*" required> <label for="name321nwsl" class="u-sr-only">name321</label> <input id="name321nwsl" class="js-newsletter__value newsletter-form__input wa-content-color wa-content-input" type="text" name="name321" placeholder="name" value="" autocomplete="off" aria-hidden="true" hidden> <button class="newsletter-form__button site-btn site-btn--dark wa-primary-background-color" type="submit" name="submit" aria-label="Sign up"> <span class="text"> Sign up </span> </button> </div> </form> </div> </div> </section> </div> <footer class="site-footer "> <button class="scroll-to-top js-scroll-to-top" aria-label="Scroll to the top of the page"> <span class="icon icon-arrow-normal-up" aria-hidden="true"></span> </button> <div class="site-footer-top wa-background-secondary-background-color wa-content-color"> <span class="sr-only"> Coopmanhuijs Boutique Hotel &amp; Spa </span> <div class="site-footer-top__inner"> <div class="site-footer-top__col site-footer-top__col--left"> <div class="site-footer-top__line"> <span class="site-footer-top__text">33 Church Street</span><br/> <span class="site-footer-top__text">7600</span> <span class="site-footer-top__text"> Stellenbosch</span> <span class="site-footer-top__text">, ZA</span> </div> </div> <div class="site-footer-top__col site-footer-top__col--center"> <span class="site-footer-top__line"> <a class="site-footer-top__text" href="tel:+27 21 883 8207" aria-label="Call us: +27 21 883 8207"> <span class="icon icon-phone wa-primary-color" aria-hidden="true"></span> <span>+27 21 883 8207</span> </a> </span> <span class="site-footer-top__line"> <a class="site-footer-top__text site-footer-top__mail wa-primary-color--hover" href="mailto:[email protected]" title="[email protected]" aria-label="Write to us: [email protected]"> <span class="icon icon-mail wa-primary-color" aria-hidden="true"></span> <span>[email protected]</span> </a> </span> <div class="site-footer-top__schema-img"> <meta content="https://r.profitroom.pl/coopmanhuijsboutiquehotelspa/images/202507071157430.CoopmanhuijsFinal.jpg"/> </div> </div> <div class="site-footer-top__col site-footer-top__col--right"> <div class="site-footer-top__btn-hld"> </div> </div> </div> </div> <div class="site-footer-bottom wa-background-footer-background-color wa-content-footer-color"> <div class="site-footer-bottom__inner"> <div class="site-footer-bottom__col site-footer-bottom__col--left"> <div class="copyright"> <span class="copyright__text">&copy; </span> <span class="copyright__text"> Coopmanhuijs Boutique Hotel &amp; Spa </span> <span class="copyright__text">2026</span> </div> </div> <div class="site-footer-bottom__col site-footer-bottom__col--center"> <div data-component-id='18674683' > <div class="footer-navigation" > <ul class="footer-navigation__list"> <li class="footer-navigation__item"> <a class="footer-navigation__link wa-secondary-background-color--before " href="/testimonials" >Testimonials</a> </li> <li class="footer-navigation__item"> <a class="footer-navigation__link wa-secondary-background-color--before " href="/events" >Blog</a> </li> <li class="footer-navigation__item"> <a class="footer-navigation__link wa-secondary-background-color--before " href="/terms-and-conditions" >Terms and Conditions</a> </li> </ul> </div> </div> </div> <div class="site-footer-bottom__col site-footer-bottom__col--right"> <button type="button" class="manageCookieSettings wa-content-footer-color" onclick="openCookieModal();">Cookies settings</button> <div class="socials"> <ul class="socials__list"> <li class="socials__item"> <a href="https://www.facebook.com/CoopmanhuijsBoutiqueHotelSpa" rel="nofollow" title="facebook" class="socials__link is-facebook " target="_blank"> <span class="socials__icon socials__icon--facebook icon icon-facebook " aria-hidden="true"></span> <span class="sr-only">facebook</span> </a> </li> <li class="socials__item"> <a href="https://www.instagram.com/coopmanhuijs/?hl=en" rel="nofollow" title="instagram" class="socials__link is-instagram " target="_blank"> <span class="socials__icon socials__icon--instagram icon icon-instagram " aria-hidden="true"></span> <span class="sr-only">instagram</span> </a> </li> </ul> </div> <div class="created"> <span class="created__line"> <span class="created__text">created by</span> <a class="created__link" href="https://www.profitroom.com" target="_blank" rel="nofollow" aria-label="Link to Profitroom website"> <span class="icon icon-profitroom" aria-hidden="true"></span> </a> </span> </div> </div> </div> </div> </footer> <div id="cookieWarning" role="dialog" aria-modal="true" tabindex="-1" aria-label="Cookie policy window"> <div id="cookieAnnouncement" aria-live="assertive" role="alert" class="u-sr-only"></div> <div class="cookieContent"> <div class="cookieContentItem description" id="cookies-modal-text"> <p class="wa-paragraph-font"> In order to provide services at the highest level, the Website uses co
92okies saved in the browser's memory. Detailed information about the purpose of their use, including processing of user activity data and advertising personalization, as well as the possibility to change cookie settings, can be found in the <a class="cookiePolicies" href="/privacy" target="_blank">Privacy Policy.</a> By clicking ACCEPT ALL, you consent to the use of technologies such as cookies and to the processing by Coopmanhuijs Boutique Hotel & Spa, 33 Church Street, 7600, Stellenbosch, of your personal data collected on the Internet, such as IP addresses and cookie identifiers, for analytical and marketing purposes (including automated ad targeting, measuring their effectiveness, and processing user data for analytical purposes). You can change cookie settings and detailed consent preferences in <button class="manageCookieSettings" onclick="openCookieModal();">the settings</button>. </p> </div> <div class="cookieContentItem actions"> <button class="cookieBtn cookieBtn--underline" type="button" onclick="openCookieModal();return false;"> <span class="content wa-paragraph-font">Cookies settings</span> </button> <button class="cookieBtn cookieBtn--outline" type="button" onclick="acceptOnlyRequiredCookies();return false;"> <span class="content wa-paragraph-font">Reject</span> </button> <button class="cookieBtn cookieBtn--normal js-cookieBtn-focus" type="button" onclick="_acceptCookiesPolicy();return false;"> <span class="content wa-paragraph-font">Accept all</span> </button> </div> </div> </div> <div id="cookies-modal" class="cookies-modal"> <div class="cookies-modal__table" role="dialog" aria-modal="true" aria-live="assertive" aria-label="Manage privacy settings"> <div class="cookies-modal__cell"> <div class="cookies-modal__dialog"> <div class="cookies-modal__content"> <form action="#" id="cookies-privacy-settings"> <div class="cookies-modal__header wa-headline-font"> Manage privacy settings</div> <div class="cookies-modal__section"> <div class="cookies-modal__checkbox"> <label for="necessary-cookies"> <input type="checkbox" value="necessary" checked="" name="necessary-cookies" aria-label="Essential cookies" aria-description="Cookies necessary for the operation of services available on the website, enabling browsing offers or making reservations, supporting security mechanisms, including user authentication and abuse detection. These files are required for the proper functioning of the website. They do not require your consent." disabled="" id="necessary-cookies"> <span></span> <strong class="wa-headline-font">Essential cookies </strong> </label> </div> <div class="cookies-modal__text"> <p class="wa-paragraph-font"> Cookies necessary for the operation of services available on the website, enabling browsing offers or making reservations, supporting security mechanisms, including user authentication and abuse detection. These files are required for the proper functioning of the website. They do not require your consent. </p> </div> </div> <div class="cookies-modal__section"> <div class="cookies-modal__checkbox"> <label for="analytics-cookies"> <input type="checkbox" value="analytics" name="analytics-cookies" id="analytics-cookies" aria-label="Analytical cookies" aria-description="privacy.modal.analytics_cookies.descriptiopn"> <span></span> <strong class="wa-headline-font">Analytical cookies</strong> </label> </div> <div class="cookies-modal__text"> <p class="wa-paragraph-font"> Cookies allowing the collection of information about the user&#039;s use of the website in order to optimize its functioning and adapt it to user expectations. By consenting to these cookies, you agree to the processing of data regarding your activity on the site for analytical purposes. </p> </div> </div> <div class="cookies-modal__section"> <div class="cookies-modal__checkbox"> <label for="marketing-cookies"> <input type="checkbox" value="marketing" name="marketing-cookies" id="marketing-cookies" aria-label="Marketing cookies" aria-description="privacy.modal.marketing_cookies.descriptiopn"> <span></span> <strong class="wa-headline-font">Marketing cookies</strong> </label> </div> <div class="cookies-modal__text"> <p class="wa-paragraph-font"> Cookies enabling the display of marketing content tailored to the user&#039;s preferences and directing marketing offers to them corresponding to their interests, including information about user activity, products, and services of the site administrator and third parties. Consent to these cookies means that your data may be used for advertising personalization and analysis of the effectiveness of our advertising campaigns. </p> </div> </div> <div class="cookies-modal__section cookies-modal__section--action"> <div class="cookies-modal__notification"> <div class="cookies-modal__notification-text"> <span class="wa-paragraph-font">Your preferences have not yet been saved</span> </div> </div> <div class="cookies-modal__submit"> <button type="submit" class="wa-paragraph-font" aria-label="Save and Close">Save and Close</button> </div> </div> </form> <button type="button" class="cookies-modal__close js-cookies-modal__close" aria-label="Close cookies window"></button> </div> </div> </div> </div> </div> 
92<script>
93    var footerBtnClicked = false;
94    var footerLink = document.querySelector('.manageCookieSettings');
95    footerLink.addEventListener('click', () => footerBtnClicked = true);
96
97    function focusFirstInteractiveElement() {
98        if (footerBtnClicked) {
99            footerLink.focus();
100        }
101    }
102
103    function _acceptCookiesPolicy(acceptedCategories) {
104
105        if (typeof acceptedCategories === 'undefined') {
106            acceptedCategories = ["necessary", "marketing", "analytics"];
107        }
108
109        var options = {};
110
111        if (acceptedCategories.length > 1) {
112            options['expires'] = 365;
113        }
114
115        Cookies.set('_CookiesPolicyAccepted', JSON.stringify(acceptedCategories), options);
116
117        /** Send Info to GTM */
118        window.dataLayer = window.dataLayer || [];
119        function gtag() { dataLayer.push(arguments); }
120
121        googleConsentModeMapping({
122            "ad_storage": "marketing",
123            "ad_user_data": "marketing",
124            "ad_personalization": "marketing",
125            "analytics_storage": "analytics",
126            "security_storage": "necessary",
127            "functionality_storage": "necessary",
128            "personalization_storage": "marketing",
129        }, acceptedCategories, 'update');
130
131        window.dataLayer.push({
132            'event': 'cookieConsent',
133            'cookieConsentCategory': acceptedCategories
134        });
135
136        window.beAcceptedCookiePolicies = acceptedCategories;
137
138        if (localStorage) {
139            localStorage.setItem('cookiesManager', JSON.stringify({
140                acceptedCategories: acceptedCategories
141            }));
142        }
143
144        window.dispatchEvent(new CustomEvent('success-save-cookies', { 'detail': { 'acceptedCategories': acceptedCategories } }));
145
146        focusFirstInteractiveElement();
147
148        if (window.activateGA) {
149            activateGA();
150        }
151    }
152
153    function _checkCookiesPolicy() {
154
155        var cookiesPolicy = Cookies.get("_CookiesPolicyAccepted");
156
157        if (typeof cookiesPolicy !== "undefined") {
158            if (!window.beAcceptedCookiePolicies) {
159                cookiesPolicy = JSON.parse(cookiesPolicy);
160                window.beAcceptedCookiePolicies = cookiesPolicy;
161            }
162        } else {
163
164            showCookieDiv();
165
166            var cookiePrivacyIframe = document.getElementById('cookie-privacy-iframe');
167
168            if (cookiePrivacyIframe) {
169
170                var iframe = document.querySelector('#cookie-privacy-iframe iframe');
171
172                if (iframe) {
173                    document.getElementsByClassName('cookiePolicies')[0].addEventListener('click', function (e) {
174                        e.preventDefault();
175                        iframe.src = this.href;
176                        cookiePrivacyIframe.style.display = 'block';
177                    });
178                }
179
180                document.querySelector('#cookie-privacy-iframe .custom-close-popup').addEventListener('click', function (e) {
181                    e.preventDefault();
182                    cookiePrivacyIframe.style.display = 'none';
183                });
184
185            }
186
187            var receiveCookieSettings = false;
188
189            if (localStorage) {
190                window.addEventListener('storage', function (e) {
191
192                    if (e.key !== 'cookiesManager' || receiveCookieSettings) {
193                        return;
194                    }
195
196                    if (e.storageArea.hasOwnProperty('cookiesManager')) {
197                        receiveCookieSettings = true;
198                        var dataCookies = JSON.parse(e.storageArea.cookiesManager);
199                        _acceptCookiesPolicy(dataCookies.acceptedCategories);
200                        if (cookiePrivacyIframe) {
201                            cookiePrivacyIframe.style.display = 'none';
202                        }
203                    }
204
205                });
206            }
207
208            window.addEventListener('success-save-cookies', function () {
209                document.getElementById('cookieWarning').classList.remove('preview');
210            });
211
212        }
213
214        window.dispatchEvent(new CustomEvent('load-cookies'));
215
216    }
217
218    function showCookieDiv() {
219        const cookieDiv = document.getElementById('cookieWarning');
220        const cookieAnnouncement = document.getElementById('cookieAnnouncement');
221        const cookieText = document.querySelector('.cookieContentItem');
222
223        if (cookieDiv) {
224            if (cookieAnnouncement) {
225                cookieAnnouncement.textContent = cookieText.textContent;
226                cookieAnnouncement.setAttribute('aria-live', 'assertive');
227                setTimeout(() => {
228                    cookieAnnouncement.textContent = '';
229                    cookieAnnouncement.setAttribute('aria-live', 'off');
230                }, 1000);
231            }
232            cookieDiv.classList.add('preview');
233            document.querySelector('.js-cookieBtn-focus').focus();
234        }
235
236        cookieDiv.classList.add('preview');
237        setTimeout(() => {
238            document.querySelector('.js-cookieBtn-focus').focus();
239        }, 100);
240    }
241    
242
243    const focusableElements = 'button, [href], input:not([disabled])';
244
245    function trapFocus(modal) {
246        const focusableContent = modal.querySelectorAll(focusableElements);
247        return {
248            first: focusableContent[0],
249            last: focusableContent[focusableContent.length - 1]
250        };
251    }
252
253    function loadScriptsForConsent() {
254        const cookiesPolicy = window.beAcceptedCookiePolicies || JSON.parse(Cookies.get('_CookiesPolicyAccepted') || '[]');
255
256        const scripts = document.querySelectorAll('script[data-cookie-consent][type="text/plain"]');
257
258        scripts.forEach((script) => {
259            const requiredConsent = script.getAttribute('data-cookie-consent');
260
261            if (cookiesPolicy.includes(requiredConsent)) {
262                const newScript = document.createElement('script');
263
264                Array.from(script.attributes).forEach(attr => {
265                    newScript.setAttribute(attr.name, attr.value);
266                });
267
268                if (script.src) {
269                    newScript.removeAttribute('type');
270                } else {
271                    newScript.type = 'text/javascript';
272                    newScript.textContent = script.textContent;
273                }
274
275                script.parentNode.replaceChild(newScript, script);
276            }
277        });
278    }
279
280    const cookiesModal = document.querySelector('.cookieContent');
281    const cookiesSecondModal = document.querySelector('.cookies-modal');
282    const cookieWarning = document.getElementById('cookieWarning');
283
284    document.addEventListener('keydown', function (e) {
285
286        if (cookieWarning && !cookieWarning.classList.contains('preview')) {
287            return;
288        }
289
290        if (e.key !== 'Tab' && e.keyCode !== 9) return;
291
292        const modal = cookiesSecondModal.classList.contains('cookies-modal--active') ? cookiesSecondModal : cookiesModal;
293        const { first, last } = trapFocus(modal);
294
295        if (e.shiftKey && document.activeElement === first) {
296            last.focus();
297            e.preventDefault();
298        } else if (!e.shiftKey && document.activeElement === last) {
299            first.focus();
300            e.preventDefault();
301        }
302
303    });
304
305    window.addEventListener('load', function () {
306        _checkCookiesPolicy();
307        loadScriptsForConsent();
308    });
309
310    window.addEventListener('success-save-cookies', function () {
311        loadScriptsForConsent();
312    });
313
314
315</script>
315 
315<script type="text/javascript">
316    (function () {
317        var cookieForm = null;
318
319        window.openCookieModal = function () {
320            document.querySelector('.cookies-modal').classList.add('cookies-modal--active');
321            document.querySelector('.cookies-modal__content').classList.add('cookies-modal__content--active');
322            document.querySelector('body').classList.add('active-cookies-modal');
323            setTimeout(function () {
324                document.querySelector('#analytics-cookies').focus();
325            }, 400);
326
327            document.querySelector('.cookies-modal').addEventListener('keydown', (e) => {
328                const { first, last } = trapFocus(document.querySelector('.cookies-modal'));
329
330                if (e.key !== 'Tab') return;
331                if (e.shiftKey && document.activeElement === first) {
332                    last.focus();
333                    e.preventDefault();
334                } else if (!e.shiftKey && document.activeElement === last) {
335                    first.focus();
336                    e.preventDefault();
337                }
338            })
339        };
340
341        window.acceptOnlyRequiredCookies = function () {
342            _acceptCookiesPolicy(["necessary"]);
343        };
344
345        function closeCookieModal() {
346            document.querySelector('.cookies-modal').classList.remove('cookies-modal--active');
347            document.querySelector('.cookies-modal__content').classList.remove('cookies-modal__content--active');
348            document.querySelector('body').classList.remove('active-cookies-modal');
349            document.querySelector('.js-cookieBtn-focus').focus();
350            focusFirstInteractiveElement();
351        }
352
353        function _saveCookiesPolicy(acceptedCategories) {
354
355            var options = {};
356
357            /** If check all categories, remember this for 1 year */
358            if (acceptedCategories.length === cookieForm.querySelectorAll('input[type="checkbox"]').length) {
359                options['expires'] = 365;
360            }
361
362            Cookies.set('_CookiesPolicyAccepted', JSON.stringify(acceptedCategories), options);
363
364            /** Send Info to GTM */
365            window.dataLayer = window.dataLayer || [];
366            function gtag() { dataLayer.push(arguments); }
367
368            googleConsentModeMapping({
369                "ad_storage": "marketing",
370                "ad_user_data": "marketing",
371                "ad_personalization": "marketing",
372                "analytics_storage": "analytics",
373                "security_storage": "necessary",
374                "functionality_storage": "necessary",
375                "personalization_storage": "marketing"
376            }, acceptedCategories, 'update');
377
378            window.dataLayer.push({
379                'event': 'cookieConsent',
380                'cookieConsentCategory': acceptedCategories
381            });
382
383            window.beAcceptedCookiePolicies = acceptedCategories;
384
385            if (window.activateGA) {
386                activateGA();
387            }
388        }
389
390        function eventHandlers() {
391            const cookieFormBtn = cookieForm.querySelector('.cookies-modal__submit button');
392            cookieFormBtn.addEventListener('click', function (e) {
393
394                e.preventDefault();
395
396                var inputs = cookieForm.querySelectorAll('input[type="checkbox"]:checked'),
397                    chooses = [];
398
399                inputs.forEach(function (ele) {
400                    chooses = chooses.concat(ele.value.split(','));
401                });
402
403                _saveCookiesPolicy(chooses);
404
405                if (localStorage) {
406                    localStorage.setItem('cookiesManager', JSON.stringify({
407                        acceptedCategories: chooses
408                    }));
409                }
410
411                window.dispatchEvent(new CustomEvent('success-save-cookies', { 'detail': { 'acceptedCategories': chooses } }));
412                cookieForm.querySelector('.cookies-modal__notification').style.display = 'none';
413                closeCookieModal();
414
415            });
416
417            document.querySelector('#cookies-modal .js-cookies-modal__close').addEventListener('click', function (e) {
418                e.preventDefault();
419                closeCookieModal();
420            });
421
422            document.addEventListener('keydown', function (event) {
423                const modalContent = document.querySelector('.cookies-modal__content');
424                if (modalContent.classList.contains('cookies-modal__content--active')) {
425                    if (event.key === 'Escape') {
426                        closeCookieModal();
427                    }
428                }
429            });
430
431        }
432
433        function init() {
434
435            cookieForm = document.getElementById('cookies-privacy-settings');
436            var inputs = cookieForm.querySelectorAll('input[type="checkbox"]:not(:disabled)'),
437                jsonCookiesPolicy = Cookies.get("_CookiesPolicyAccepted");
438
439            if (typeof jsonCookiesPolicy !== "undefined") {
440
441                var cookiesPolicy = JSON.parse(jsonCookiesPolicy);
442
443                inputs.forEach(function (ele) {
444
445                    var values = ele.value.split(',');
446
447                    ele.checked = cookiesPolicy.some(function (element) {
448                        return values.indexOf(element) > -1
449                    });
450
451                });
452
453            } else {
454
455                inputs.forEach(function (ele) {
456                    if (!ele.checked && ele.hasAttribute('data-default-checked')) {
457                        ele.checked = true;
458                    }
459                });
460
461                cookieForm.querySelector('.cookies-modal__notification').style.display = 'block';
462
463            }
464
465            eventHandlers();
466
467        }
468
469        window.addEventListener('load', function () {
470            init();
471        });
472
473    })();
474
475</script>
475 
475<script id="translations-data" type="application/json">
476	{
477	        "prevSlide": "Previous slide",
478	        "nextSlide": "Next slide",
479	        "paginationNext": "Slide to number",
480	        "firstSlide": "First slide",
481	        "lastSlide": "Last slide",
482	        "contrastActivate": "Activate high contrast mode",
483	        "contrastDeactivate": "Deactivate high contrast mode",
484	        "changeTheContrast": "a11y.change_the_contrast",
485			"contrastMode": "High contrast mode",
486	        "moreInformations": "More"
487	    }
488</script>
488 
488<script src="/templates/berlin/runtime.073334a7.js"></script>
488<script src="/templates/berlin/global.323f5766.js"></script>
488 
488<script src="/templates/berlin/1.53223860.js"></script>
488<script src="/templates/berlin/9.14784903.js"></script>
488<script src="/templates/berlin/app.6a347ac3.js"></script>
488 
488<script defer src="//open.upperbooking.com/coopmanhuijsboutiquehotelspa/Booking.min.js?locale=en"></script>
488 
488<script>
489    document.addEventListener('DOMContentLoaded', function () {
490
491        if (window.matchMedia("(max-width: 768px)").matches) {
492            return;
493        };
494
495        const today = new Date();
496        const tomorrow = new Date();
497        tomorrow.setDate(today.getDate() + 1);
498
499        const formatDateWithZero = (str) => {
500            return String(str).padStart(2, '0');
501        };
502
503        const formatDate = (date) => {
504            const day = formatDateWithZero(date.getDate());
505            const month = formatDateWithZero(date.getMonth() + 1);
506            const year = date.getFullYear();
507            return `${day}.${month}.${year}`;
508        };
509
510        const getMonthName = (date) => {
511            const monthIndex = date.getMonth();
512            if (monthTranslations.length > 0) {
513                return monthTranslations[monthIndex];
514            } else {
515                return formatDateWithZero(date.getMonth() + 1);
516            }
517        };
518
519        const calcDatePatternSeparator = (inputValue) => {
520            if (inputValue.length === 0) return '';
521            const lastChar = inputValue.charAt(inputValue.length - 1);
522
523            return /\p{L}|\p{N}|\s/u.test(lastChar) ? '' : lastChar;
524        };
525
526        const updateDate = (input, boxSelector, date) => {
527            const box = input.closest(boxSelector);
528            if (!box) return;
529
530            const useShortYear = box.hasAttribute('data-short-year');
531            input.value = formatDate(date);
532
533            const dayElement = box.querySelector('.js-input-hld__day-number');
534            const monthElement = box.querySelector('.js-input-hld__month');
535            const yearElement = box.querySelector('.js-input-hld__year');
536
537            if (dayElement)
538                dayElement.textContent = formatDateWithZero(date.getDate()) + calcDatePatternSeparator(dayElement.textContent);
539
540            if (monthElement)
541                monthElement.textContent = getMonthName(date) + calcDatePatternSeparator(monthElement.textContent);
542
543            if (yearElement) {
544                yearElement.textContent = (useShortYear ? String(date.getFullYear()).slice(-2) : date.getFullYear()) + calcDatePatternSeparator(yearElement.textContent);
545            }
546        };
547
548        const panelElement = document.querySelector('.js-site-panel-month');
549        const monthTranslations = [];
550
551        if (panelElement && document.documentElement.lang !== 'ar') {
552            for (let i = 1; i <= 12; i++) {
553                const monthName = panelElement.getAttribute(`data-month-name-${i}`) ||
554                                panelElement.querySelector(`[data-month-name-${i}]`)?.getAttribute(`data-month-name-${i}`);
555
556                if (monthName) {
557                    monthTranslations.push(monthName);
558                } else {
559                    break;
560                }
561            }
562        };
563
564        const checkinInputs = document.querySelectorAll('.js-input-checkin');
565        const checkoutInputs = document.querySelectorAll('.js-input-checkout');
566
567        checkinInputs.forEach((input) => {
568            updateDate(input, '.js-checkin-box', today);
569        });
570
571        checkoutInputs.forEach((input) => {
572            updateDate(input, '.js-checkout-box', tomorrow);
573        });
574    });
575</script>
575 <link rel="stylesheet" href="/templates/berlin/icon-packages/berlin-icon/style.55465511.css"> 
575<script type="application/ld+json">
576            {"@context":"https:\/\/schema.org","@type":"Hotel","name":"Coopmanhuijs Boutique Hotel & Spa","url":"https:\/\/coopmanhuijs.co.za\/contact-us","address":{"@type":"PostalAddress","streetAddress":"33 Church Street","addressLocality":"Stellenbosch","postalCode":"7600","addressCountry":"ZA"},"geo":{"@type":"GeoCoordinates","latitude":-33.9380081,"longitude":18.8619545},"telephone":"+27 21 883 8207","email":"[email protected]","image":"https:\/\/r.profitroom.pl\/coopmanhuijsboutiquehotelspa\/images\/202507071157430.CoopmanhuijsFinal.jpg","logo":{"@type":"ImageObject","contentUrl":"https:\/\/r.profitroom.com\/coopmanhuijsboutiquehotelspa\/images\/007a52ab-d24e-4d59-b7a1-e832ec9a8c45.png"}}
577        </script>
577 
577<script type="application/ld+json">
578            {"@context":"https:\/\/schema.org","@type":"ContactPage","url":"https:\/\/coopmanhuijs.co.za\/contact-us","name":"Contact","mainEntity":{"@type":"Hotel","name":"Coopmanhuijs Boutique Hotel & Spa","url":"https:\/\/coopmanhuijs.co.za\/contact-us","address":{"@type":"PostalAddress","streetAddress":"33 Church Street","addressLocality":"Stellenbosch","postalCode":"7600","addressCountry":"ZA"},"geo":{"@type":"GeoCoordinates","latitude":-33.9380081,"longitude":18.8619545},"telephone":"+27 21 883 8207","email":"[email protected]","image":"https:\/\/r.profitroom.pl\/coopmanhuijsboutiquehotelspa\/images\/202507071157430.CoopmanhuijsFinal.jpg","logo":{"@type":"ImageObject","contentUrl":"https:\/\/r.profitroom.com\/coopmanhuijsboutiquehotelspa\/images\/007a52ab-d24e-4d59-b7a1-e832ec9a8c45.png"}}}
579        </script>
579 
579<script type="text/javascript">
580document.addEventListener("DOMContentLoaded", function () {
581  const parent = document.querySelector(".site-footer");
582  if (!parent) return;
583
584  // tworzymy elementy
585  const wrapper = document.createElement("div");
586  wrapper.className = "l-wrapper-center site-footer-top wa-background-secondary-background-color";
587
588  const img = document.createElement("img");
589  img.src = "https://wa-uploads.profitroom.com/coopmanhuijsboutiquehotelspa/17718550620675_instagramstickersbluera2026.png";
590  img.title = "Traveller Review Awards 2026";
591  img.alt = "Traveller Review Awards 2026";
592  img.width = 250;
593
594  // składanie struktury
595  wrapper.appendChild(img);
596
597  // dodanie na koniec sekcji
598  parent.prepend(wrapper);
599});
600</script>
600 </body> </html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.