:root{--background: #FAF7F2;--foreground: #2C2420;--primary: #867A6C;--primary-foreground: #FFFFFF;--secondary: #867A6C;--secondary-foreground:#FFFFFF;--card: #FFFFFF;--muted: #EFE9E0;--muted-foreground: #7a6f66;--border: #E0D8CE;--radius: 1rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{min-height:100vh;background-color:var(--background);color:var(--foreground);font-family:Inter,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}address{font-style:normal}.container{margin:0 auto;max-width:72rem;padding:0 1rem}@media (min-width: 640px){.container{padding:0 1.5rem}}.btn{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;font-size:.875rem;font-weight:500;transition:opacity .15s;white-space:nowrap;cursor:pointer}.btn:hover{opacity:.88}.btn-sm{padding:.5rem 1rem}.btn-md{padding:.75rem 1.5rem}.btn-sec{background:var(--secondary);color:var(--secondary-foreground)}.btn-pri{background:var(--primary);color:var(--primary-foreground)}.btn-ghost-light{border:1.5px solid rgba(255,255,255,.35);color:#fff;transition:background .15s}.btn-ghost-light:hover{background:#ffffff1a;opacity:1}.shadow-soft{box-shadow:0 2px 20px #00000012,0 1px 4px #0000000a}.section-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--secondary);font-weight:500}header{position:sticky;top:0;z-index:50;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#f7f7f5d9;border-bottom:1px solid var(--border)}nav{height:4rem;display:flex;align-items:center;justify-content:space-between}.nav-logo{display:flex;align-items:center;gap:.5rem;font-family:Playfair Display,serif;font-size:1.25rem;font-weight:600;color:var(--primary)}.nav-logo svg{color:var(--secondary)}.nav-links{display:none;list-style:none;align-items:center;gap:2rem}@media (min-width: 768px){.nav-links{display:flex}}.nav-links a{font-size:.875rem;color:var(--foreground);transition:color .15s}.nav-links a:hover{color:var(--secondary)}.nav-boek-btn{display:none}@media (min-width: 768px){.nav-boek-btn{display:inline-flex}}.nav-hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;background:none;border:none;cursor:pointer;flex-shrink:0}@media (min-width: 768px){.nav-hamburger{display:none}}.nav-hamburger span{display:block;width:22px;height:2px;background:var(--primary);border-radius:2px;transition:transform .25s ease,opacity .2s ease;transform-origin:center}.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-mobile-drawer{overflow:hidden;max-height:0;transition:max-height .32s ease,padding .32s ease;background:#f7f7f5fa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border);padding:0 1rem}.nav-mobile-drawer.open{max-height:500px;padding:.75rem 1rem 1.5rem}@media (min-width: 768px){.nav-mobile-drawer{display:none}}.nav-mobile-drawer ul{list-style:none}.nav-mobile-drawer ul li a{display:block;padding:.9rem 0;font-size:1.0625rem;font-weight:500;color:var(--foreground);border-bottom:1px solid var(--border);transition:color .15s}.nav-mobile-drawer ul li:last-child a{border-bottom:none}.nav-mobile-drawer ul li a:hover{color:var(--secondary)}.nav-mobile-boek{display:flex;justify-content:center;width:100%;margin-top:1.25rem}#top{position:relative;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0}.hero-bg img{height:100%;width:100%;object-fit:cover}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#4b4b4bd9,#4b4b4b8c 55%,#4b4b4b26)}.hero-inner{position:relative;padding:7rem 1rem;max-width:72rem;margin:0 auto}@media (min-width: 640px){.hero-inner{padding:7rem 1.5rem}}@media (min-width: 768px){.hero-inner{padding:10rem 1.5rem}}.hero-content{max-width:42rem;color:#fff}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;background:var(--secondary);padding:.25rem .75rem;font-size:.75rem;font-weight:500;color:var(--secondary-foreground);text-transform:uppercase;letter-spacing:.1em}.hero-h1{margin-top:1.5rem;font-family:Playfair Display,serif;font-size:clamp(3rem,8vw,4.5rem);font-weight:600;line-height:1.05;color:#fff}.hero-p{margin-top:1.5rem;font-size:1.125rem;color:#ffffffd9;max-width:32rem}.hero-ctas{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem}#diensten{padding:5rem 0}@media (min-width: 768px){#diensten{padding:7rem 0}}.section-header{max-width:36rem}.section-h2{margin-top:.75rem;font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,3rem);font-weight:600}.section-p{margin-top:1rem;color:var(--muted-foreground)}.diensten-grid{margin-top:3rem;display:grid;gap:1.5rem}@media (min-width: 768px){.diensten-grid{grid-template-columns:repeat(3,1fr)}}.dienst-card{overflow:hidden;border-radius:var(--radius);background:var(--card)}.dienst-card-img{aspect-ratio:4/5;overflow:hidden}.dienst-card-img img{height:100%;width:100%;object-fit:cover;transition:transform .7s ease}.dienst-card:hover .dienst-card-img img{transform:scale(1.05)}.dienst-card-body{padding:1.5rem}.dienst-card-body h3{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600}.dienst-card-body p{margin-top:.5rem;font-size:.875rem;color:var(--muted-foreground)}#prijzen{background:var(--muted);padding:5rem 0}@media (min-width: 768px){#prijzen{padding:7rem 0}}.prijzen-grid{margin-top:3rem;display:grid;gap:1.5rem}@media (min-width: 768px){.prijzen-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.prijzen-grid{grid-template-columns:repeat(3,1fr)}}.prijs-card{border-radius:var(--radius);background:var(--card);padding:1.75rem}.prijs-card-title{display:flex;align-items:center;gap:.5rem;font-family:Playfair Display,serif;font-size:1.2rem;font-weight:600;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid var(--secondary)}.prijs-card-title svg{color:var(--secondary);flex-shrink:0}.prijs-list{list-style:none}.prijs-list li{display:flex;justify-content:space-between;align-items:baseline;padding:.6rem 0;font-size:.9rem;border-bottom:1px solid var(--border)}.prijs-list li:last-child{border-bottom:none}.prijs-list .prijs-name{color:var(--foreground)}.prijs-list .prijs-val{font-weight:600;color:var(--primary);white-space:nowrap;margin-left:1rem}.prijzen-note{margin-top:1.5rem;font-size:.8rem;color:var(--muted-foreground);font-style:italic;text-align:center}.prijzen-loading{margin-top:3rem;text-align:center;color:var(--muted-foreground);font-size:.9rem;padding:2rem 0}#team{padding:5rem 0}@media (min-width: 768px){#team{padding:7rem 0}}.team-grid{margin-top:3rem;display:grid;gap:2rem}@media (min-width: 640px){.team-grid{grid-template-columns:repeat(3,1fr)}}.team-card{border-radius:var(--radius);background:var(--card);padding:2rem 1.5rem;text-align:center}.team-avatar{width:7rem;height:7rem;border-radius:9999px;overflow:hidden;margin:0 auto 1.25rem;border:3px solid var(--secondary);box-shadow:0 4px 12px #0000001a}.team-avatar img{width:100%;height:100%;object-fit:cover;display:block}.team-card h3{font-family:Playfair Display,serif;font-size:1.3rem;font-weight:600}.team-card p{margin-top:.4rem;font-size:.875rem;color:var(--muted-foreground)}.team-card .team-brands{margin-top:1rem;display:flex;justify-content:center;gap:.4rem;flex-wrap:wrap}.brand-tag{font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:var(--muted);color:var(--muted-foreground);padding:.2rem .5rem;border-radius:9999px}.team-voorkeur{margin-top:2.5rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;color:var(--foreground)}.team-voorkeur svg{flex-shrink:0;color:var(--primary)}.team-voorkeur p{flex:1;font-size:.9rem;line-height:1.5;min-width:200px}.team-voorkeur p strong{color:var(--foreground)}@media (max-width: 640px){.team-voorkeur{flex-direction:column;align-items:flex-start}.team-voorkeur .btn{width:100%;justify-content:center}}#uren-locatie{background:var(--muted);padding:5rem 0}@media (min-width: 768px){#uren-locatie{padding:7rem 0}}.uren-locatie-grid{display:grid;gap:2rem}@media (min-width: 768px){.uren-locatie-grid{grid-template-columns:1fr 1fr}}.info-card{border-radius:var(--radius);background:var(--card);padding:2rem;display:flex;flex-direction:column}@media (min-width: 768px){.info-card{padding:2.5rem}}.info-card-header{display:flex;align-items:center;gap:.75rem}.info-card-header svg{color:var(--secondary);flex-shrink:0}.info-card-h2{font-family:Playfair Display,serif;font-size:1.75rem;font-weight:600}.hours-list{margin-top:1.5rem;list-style:none}.hours-list li{display:flex;justify-content:space-between;padding:.75rem 0;font-size:.875rem;border-bottom:1px solid var(--border)}.hours-list li:last-child{border-bottom:none}.hours-list .day{font-weight:500}.hours-list .closed{color:var(--muted-foreground)}.hours-lunch-note{display:flex;align-items:center;gap:.4rem;margin-top:1rem;font-size:.8rem;color:var(--secondary);font-weight:500}.hours-note{margin-top:.5rem;font-size:.75rem;color:var(--muted-foreground)}.next-closure{margin-top:1.25rem;background:var(--muted);border-left:3px solid var(--secondary);border-radius:0 .5rem .5rem 0;padding:.65rem .875rem;display:flex;align-items:flex-start;gap:.6rem}.next-closure svg{color:var(--secondary);flex-shrink:0;margin-top:1px}.next-closure-text{font-size:.8rem;line-height:1.5}.next-closure-text strong{display:block;font-weight:600;color:var(--foreground)}.next-closure-text span{color:var(--muted-foreground);font-size:.75rem}.sluitingen-toggle{margin-top:.6rem;border:1px solid var(--border);border-radius:.6rem;overflow:hidden}.sluitingen-toggle summary{display:flex;align-items:center;justify-content:space-between;padding:.55rem .875rem;font-size:.75rem;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;color:var(--muted-foreground);transition:background .15s,color .15s}.sluitingen-toggle summary:hover{background:var(--muted);color:var(--foreground)}.sluitingen-toggle summary::-webkit-details-marker{display:none}.sluitingen-toggle summary svg{transition:transform .25s}.sluitingen-toggle[open] summary svg{transform:rotate(180deg)}.sluitingen-list{list-style:none}.sluitingen-list li{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.5rem .875rem;font-size:.8rem;border-top:1px solid var(--border)}.sluitingen-list li.past{opacity:.38}.sluitingen-list li.next{background:color-mix(in srgb,var(--secondary) 8%,transparent)}.sluit-date{font-weight:600;white-space:nowrap;color:var(--foreground)}.sluit-label{color:var(--muted-foreground);text-align:right}.sluit-next-badge{font-size:.6rem;font-weight:700;text-transform:uppercase;background:var(--secondary);color:var(--secondary-foreground);padding:.1rem .35rem;border-radius:9999px;margin-left:.3rem;vertical-align:middle;white-space:nowrap}.locatie-address{margin-top:1.5rem;font-size:.875rem;line-height:1.8}.locatie-extra{margin-top:.5rem;font-size:.8rem;color:var(--muted-foreground)}.map-wrapper{margin-top:1.25rem;flex:1;overflow:hidden;border-radius:.75rem;border:1px solid var(--border);min-height:240px}.map-wrapper iframe{height:100%;width:100%;min-height:240px;border:none;display:block}.maps-link{margin-top:1rem;justify-content:center}@media (max-width: 640px){.maps-link{width:100%}}#boeken{padding:5rem 0}@media (min-width: 768px){#boeken{padding:7rem 0}}.booking-grid{margin-top:3rem;display:grid;gap:2rem}@media (min-width: 768px){.booking-grid{grid-template-columns:1fr 1fr;gap:3rem}}.booking-app-card{border-radius:var(--radius);background:var(--primary);color:#fff;padding:2.5rem;display:flex;flex-direction:column;justify-content:space-between}.booking-app-card h3{font-family:Playfair Display,serif;font-size:1.75rem;font-weight:600;margin-bottom:1rem}.booking-app-card p{color:#ffffffbf;font-size:.9rem;line-height:1.7;margin-bottom:1.5rem}.booking-app-card ul{list-style:none;margin-bottom:2rem}.booking-app-card ul li{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#ffffffd9;margin-bottom:.5rem}.booking-app-card ul li:before{content:"";display:inline-block;width:6px;height:6px;border-radius:9999px;background:var(--secondary);flex-shrink:0}.booking-form-card{border-radius:var(--radius);background:var(--card);padding:2.5rem}.booking-form-card h3{font-family:Playfair Display,serif;font-size:1.4rem;font-weight:600;margin-bottom:.5rem}.booking-form-card p{font-size:.875rem;color:var(--muted-foreground);margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8rem;font-weight:500;margin-bottom:.35rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .875rem;border:1px solid var(--border);border-radius:.5rem;font-family:inherit;font-size:.875rem;background:var(--background);color:var(--foreground);transition:border-color .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--secondary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.form-submit{width:100%;padding:.75rem;background:var(--secondary);color:var(--secondary-foreground);border:none;border-radius:9999px;font-family:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .15s;margin-top:.5rem}.form-submit:hover{opacity:.88}#reviews{background:var(--muted);padding:5rem 0}@media (min-width: 768px){#reviews{padding:7rem 0}}.reviews-grid{margin-top:3rem;display:grid;gap:1.5rem}@media (min-width: 768px){.reviews-grid{grid-template-columns:repeat(3,1fr)}}.review-card{border-radius:var(--radius);background:var(--card);padding:1.75rem;display:flex;flex-direction:column}.review-stars{display:flex;gap:.2rem;margin-bottom:1rem}.review-stars svg{color:var(--secondary)}.review-card blockquote{font-size:.9rem;line-height:1.7;color:var(--foreground);flex:1;font-style:italic}.review-author{margin-top:1.25rem;font-size:.8rem;font-weight:600;color:var(--muted-foreground)}#contact{padding:5rem 0}@media (min-width: 768px){#contact{padding:7rem 0}}.contact-inner{max-width:56rem;margin:0 auto;text-align:center;padding:0 1rem}.contact-h2{margin-top:.75rem;font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,3rem);font-weight:600}.contact-p{margin:1rem auto 0;color:var(--muted-foreground);max-width:36rem}.contact-ctas{margin-top:2rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}@media (max-width: 640px){.contact-ctas{flex-direction:column}.contact-ctas .btn{width:100%;justify-content:center}}footer{border-top:1px solid var(--border);background:var(--primary);color:#fff;padding:2.5rem 0}.footer-inner{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:1rem}@media (min-width: 768px){.footer-inner{flex-direction:row}}.footer-logo{display:flex;align-items:center;gap:.5rem;font-family:Playfair Display,serif;font-size:1.125rem}.footer-logo svg{color:var(--secondary)}.footer-social{display:flex;align-items:center;gap:1rem}.footer-social a{color:#fff;transition:color .15s}.footer-social a:hover{color:var(--secondary)}.footer-copy{font-size:.75rem;color:#ffffff8c;display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;align-items:center}.footer-copy-item{display:flex;align-items:center;gap:.35rem}.footer-copy-item svg{flex-shrink:0;opacity:.7}.footer-copy-cr{margin-left:auto}@media (max-width: 640px){.footer-copy{flex-direction:column;align-items:flex-start}.footer-copy-cr{margin-left:0}}.footer-signature{border-top:1px solid rgba(255,255,255,.08);margin-top:1.5rem;padding-top:1.25rem;display:flex;align-items:center;justify-content:center;gap:.6rem;font-size:.75rem;color:#ffffff59}.footer-signature a{display:flex;align-items:center;gap:.5rem;color:#ffffff8c;transition:color .15s;text-decoration:none}.footer-signature a:hover{color:var(--secondary)}.footer-signature img{height:32px;width:auto;object-fit:contain;mix-blend-mode:screen;transition:opacity .2s}.footer-signature a:hover img{opacity:.85}.float-stack{position:fixed;bottom:1.5rem;right:1.5rem;z-index:99;display:flex;flex-direction:column;gap:.6rem;width:10rem}.float-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;border-radius:9999px;padding:.7rem 1.2rem;font-size:.875rem;font-weight:600;color:#fff;text-decoration:none;box-shadow:0 4px 14px #0000002e;transition:transform .2s,box-shadow .2s,opacity .15s;white-space:nowrap}.float-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000038;color:#fff;opacity:1}.float-btn-whatsapp{background:#25d366}.float-btn-whatsapp:hover{color:#fff}.float-btn-boek{background:var(--secondary);color:var(--secondary-foreground)}.float-btn-boek:hover{color:var(--secondary-foreground)}@media (max-width: 480px){.float-stack{width:auto}.float-btn span{display:none}.float-btn{padding:.85rem;width:auto}}#announcement-bar{width:100%;background:var(--secondary);color:var(--secondary-foreground);font-size:.8rem;font-weight:500;overflow:hidden;max-height:0;transition:max-height .4s ease,padding .4s ease,opacity .3s ease;opacity:0}#announcement-bar.visible{max-height:80px;opacity:1}.announcement-inner{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.65rem 1rem;position:relative;max-width:72rem;margin:0 auto}.announcement-text{flex:1;text-align:center;line-height:1.4}.announcement-dismiss{flex-shrink:0;background:none;border:none;cursor:pointer;color:var(--secondary-foreground);opacity:.6;padding:.25rem;border-radius:.25rem;display:flex;align-items:center;transition:opacity .15s}.announcement-dismiss:hover{opacity:1}@media (max-width: 480px){.announcement-text{font-size:.75rem}}#cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:200;background:#fff;border-top:1px solid var(--border);box-shadow:0 -4px 20px #00000014;padding:1.25rem 1.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem;justify-content:space-between}#cookie-banner.hidden{display:none}.cookie-text{font-size:.85rem;color:var(--muted-foreground);max-width:640px;line-height:1.6}.cookie-text a{color:var(--secondary);text-decoration:underline}.cookie-actions{display:flex;gap:.75rem;flex-wrap:wrap}.cookie-btn{padding:.5rem 1.25rem;border-radius:9999px;font-size:.8rem;font-weight:600;cursor:pointer;border:none}.cookie-accept{background:var(--secondary);color:var(--secondary-foreground)}.cookie-decline{background:var(--muted);color:var(--muted-foreground)}
