/* One quiet, compact footer across customer pages. */
footer.dp-site-foot{display:block;background:#17130f;border-top:1px solid rgba(201,149,42,.22);padding:22px 20px 14px;color:#bcb5ac;font-family:var(--font-body,'DM Sans',system-ui,sans-serif);font-size:13px;line-height:1.5;text-align:left;border-radius:0}
.dp-site-foot *{box-sizing:border-box}
/* Eén raster voor de hele voeter: menu | contact (met naam + bedrijfsgegevens) | openingsuren,
   daaronder één lijn met juridische links links en copyright rechts. */
.dp-site-foot .footer-inner{max-width:calc(var(--site-w,1280px) - 40px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.1fr);column-gap:44px;row-gap:0;align-items:start}
.dp-site-foot .footer-top{display:contents}
.dp-site-foot .footer-top>.footer-links:nth-of-type(2){grid-column:1;grid-row:1/4}
.dp-site-foot .footer-top>.footer-links:nth-of-type(3){display:contents}
.dp-site-foot .footer-top>.footer-links:nth-of-type(3)>h5{grid-column:2;grid-row:1}
.dp-site-foot .footer-top>.footer-links:nth-of-type(3)>ul{grid-column:2;grid-row:3}
.dp-site-foot .footer-top>.footer-links:nth-of-type(4){grid-column:3;grid-row:1/4}
.dp-site-foot .footer-inner::before{content:"";grid-column:1/-1;grid-row:4;margin-top:12px;border-top:1px solid rgba(255,255,255,.1)}
/* Naam, plaats, bedrijfsgegevens en socials: bovenaan in de contactkolom. */
.dp-site-foot .footer-id{grid-column:2;grid-row:2;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 10px;margin:0 0 5px;padding:0;border:0}
.dp-site-foot .footer-brand{margin:0;color:#fff;font-family:var(--font-head,'Playfair Display',Georgia,serif);font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.dp-site-foot .footer-tagline{margin:0;color:#bcb5ac;font-size:12px}
.dp-site-foot .footer-company{flex-basis:100%;margin:0;color:#938b80;font-size:11px;line-height:1.4;text-align:left;overflow-wrap:anywhere}
.dp-site-foot .footer-social{flex-basis:100%;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px;margin-top:5px}
.dp-site-foot .footer-social a{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 10px;border:1px solid #494036;border-radius:7px;color:#d5cec4;font-size:12px;text-decoration:none}
.dp-site-foot h5{margin:0 0 6px;color:#f0e7da;font-size:12px;font-weight:700;letter-spacing:.04em}
.dp-site-foot ul{display:flex;flex-direction:column;gap:3px;list-style:none;margin:0;padding:0}
.dp-site-foot li{margin:0;padding:0;font-size:13px;overflow-wrap:anywhere}
.dp-site-foot a{color:#bcb5ac;text-decoration:none;transition:color .12s}
.dp-site-foot a:hover,.dp-site-foot a:focus-visible,.dp-site-foot button:hover{color:#e8c06a}
.dp-site-foot a:focus-visible,.dp-site-foot button:focus-visible{outline:2px solid #e8c06a;outline-offset:4px}
.dp-site-foot .footer-accent{display:inline-block;margin-top:0;color:#e8c06a;font-weight:600}
/* Openingsuren: alle dagen onder elkaar in één kolom. */
.dp-site-foot .footer-hours{display:flex;flex-direction:column;gap:0}
.dp-site-foot .footer-hours li{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:10px;padding:1px 0;border-bottom:1px solid rgba(255,255,255,.045);font-size:12px;font-variant-numeric:tabular-nums;line-height:1.5}
.dp-site-foot .footer-hours li span:first-child{white-space:nowrap}
.dp-site-foot .footer-hours li span:last-child{text-align:right}
.dp-site-foot .footer-hours li.today{color:#e8c06a;font-weight:600}
.dp-site-foot .footer-hours li.closed{color:#938b80}
.dp-site-foot .footer-hours li.today.closed{color:#e8c06a}
.dp-site-foot .menu-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding:0;border:0;max-width:none}
.dp-site-foot .menu-tools button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 10px;border:1px solid #494036;border-radius:7px;background:transparent;color:#d5cec4;font:600 12px var(--font-body,'DM Sans',system-ui,sans-serif);cursor:pointer}
.dp-site-foot .menu-tools .ft-gold{border-color:#756037;color:#e8c06a;background:rgba(201,149,42,.06)}
.dp-site-foot .footer-legal{grid-column:1/3;grid-row:5;align-self:center;border:0;padding-top:8px}
.dp-site-foot .footer-legal h5{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.dp-site-foot .footer-legal ul{flex-direction:row;flex-wrap:wrap;gap:4px 20px}
.dp-site-foot .legal-link{border:0;background:none;padding:2px 0;margin:0;color:#a69d91;font:inherit;font-size:12px;cursor:pointer;text-align:left;text-decoration:none}
.dp-site-foot .footer-bottom{grid-column:3;grid-row:5;align-self:center;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 16px;margin:0;padding-top:8px;border:0;color:#938b80;font-size:11px;text-align:right}
body.dp-has-reservation-footer .dpr-wrap{min-height:0;padding-bottom:40px}
body.dp-has-reservation-footer .dpr-foot{display:none}
/* Tablet: menu | contact, openingsuren eronder over de volle breedte. */
@media(max-width:900px){.dp-site-foot .footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}.dp-site-foot .footer-top>.footer-links:nth-of-type(4){grid-column:1/-1;grid-row:4;max-width:520px;width:100%;margin-top:14px}.dp-site-foot .footer-inner::before{grid-row:5}.dp-site-foot .footer-legal{grid-column:1;grid-row:6}.dp-site-foot .footer-bottom{grid-column:2;grid-row:6}}
/* Telefoon: alles onder elkaar. */
@media(max-width:600px){footer.dp-site-foot{padding:20px 16px calc(16px + env(safe-area-inset-bottom))}.dp-site-foot .footer-inner{grid-template-columns:minmax(0,1fr)}.dp-site-foot .footer-top>.footer-links:nth-of-type(2){grid-column:1;grid-row:1}.dp-site-foot .footer-top>.footer-links:nth-of-type(3)>h5{grid-column:1;grid-row:2;margin-top:14px}.dp-site-foot .footer-id{grid-column:1;grid-row:3}.dp-site-foot .footer-top>.footer-links:nth-of-type(3)>ul{grid-column:1;grid-row:4}.dp-site-foot .footer-top>.footer-links:nth-of-type(4){grid-column:1;grid-row:5;max-width:440px}.dp-site-foot .footer-inner::before{grid-row:6}.dp-site-foot .footer-legal{grid-column:1;grid-row:7}.dp-site-foot .footer-bottom{grid-column:1;grid-row:8;justify-content:flex-start;text-align:left;padding-top:6px}.dp-site-foot .footer-social a,.dp-site-foot .menu-tools button{min-height:36px}.dp-site-foot .footer-legal ul{gap:6px 18px}}@media(max-width:1199px){body:has(.mobile-bar) footer.dp-site-foot{padding-bottom:calc(96px + env(safe-area-inset-bottom))}}

.dp-legal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(14,10,6,.62);backdrop-filter:blur(4px)}
.dp-legal.open{display:flex}
.dp-legal-box{position:relative;width:min(720px,100%);max-height:min(86vh,900px);overflow:auto;padding:26px 24px 22px;border-radius:18px;background:#fffdf9;color:var(--ink,#0e0a06);box-shadow:0 30px 80px rgba(0,0,0,.35);font-family:var(--font-body,'DM Sans',system-ui,sans-serif)}
.dp-legal-box h3{margin:0 40px 12px 0;font:800 22px/1.25 var(--font-head,'Playfair Display',Georgia,serif)}
.dp-legal-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border:1px solid var(--line,#e4d9cc);border-radius:50%;background:#fff;color:var(--ink,#0e0a06);font-size:20px;line-height:1;cursor:pointer}
.legal-document{font-size:13.5px;line-height:1.6;color:var(--ink,#0e0a06)}
.legal-document h4{font:800 17px/1.3 var(--font-head,'Playfair Display',Georgia,serif);margin:17px 0 6px}
.legal-document h4:first-child{margin-top:0}
.legal-document p{margin:6px 0}
.legal-document .legal-version{margin-top:18px;color:var(--muted,#6a5b49);font-size:11px}
