/* Casa Palma Vista — reserveren specifieke stijlen */
.res-grid-top{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:stretch;margin-top:clamp(32px,4vw,48px)}
.cal-wrap{background:#fff;border:1px solid var(--sand-200);border-radius:var(--rl);overflow:hidden;box-shadow:var(--sh-sm)}
.cal-hd{background:#C9A898;color:#3A2D1A;padding:16px 22px;display:flex;align-items:center;gap:10px}
.cal-hd svg{width:18px;height:18px}.cal-hd span{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.cal-body{padding:22px}
.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.cal-btn{background:none;border:1px solid var(--sand-200);border-radius:var(--r);padding:6px 10px;cursor:pointer;color:var(--wenge-mid);font-size:14px;min-width:36px;min-height:36px;transition:background .2s;display:flex;align-items:center;justify-content:center}
.cal-btn:hover{background:var(--sand-100)}
.cal-month{font-family:var(--font-serif);font-size:17px;font-weight:600;color:var(--wenge)}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.cal-wday{text-align:center;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--stone-light);padding:6px 0}
.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--wenge);border-radius:var(--r);cursor:default;transition:background .15s;position:relative}
.cal-day.av{background:rgba(125,102,79,.06)}.cal-day.av:hover{background:rgba(125,102,79,.14);cursor:pointer}
.cal-day.bk{background:var(--sand-200);color:var(--stone-light);text-decoration:line-through}
.cal-day.td{font-weight:700;color:#D0A096}
.cal-day.td::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:#D0A096}
.cal-leg{display:flex;gap:16px;margin-top:14px;flex-wrap:wrap}
.cal-leg-item{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--wenge-mid)}
.cal-leg-dot{width:12px;height:12px;border-radius:3px}
.sync-box{margin-top:14px;background:var(--sand-100);border:1px solid var(--sand-200);border-radius:var(--r);padding:14px 16px;display:flex;align-items:flex-start;gap:12px}
.sync-box svg{width:18px;height:18px;color:var(--terra-mid);flex-shrink:0;margin-top:2px}
.sync-box p{font-size:12px;color:var(--wenge-mid);line-height:1.6}
.sync-box a{color:var(--terra-dark);font-weight:600;text-decoration:none}
.sync-box a:hover{text-decoration:underline}
.form-card{background:#fff;border:1px solid var(--sand-200);border-radius:var(--rl);overflow:hidden;box-shadow:var(--sh-sm)}
.form-hd{background:#C9A898;color:#3A2D1A;padding:18px 24px}
.form-hd h3{font-family:var(--font-serif);font-size:18px;font-weight:400;margin-bottom:4px}
.form-hd p{font-size:12px;color:rgba(58,45,26,.85);font-weight:500}
.form-body{padding:24px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.fg{display:flex;flex-direction:column;gap:5px}.fg.full{grid-column:1/-1}
.fg label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--wenge-mid)}
.fg input,.fg select,.fg textarea{font-family:var(--font-sans);font-size:14px;color:var(--wenge);background:var(--sand-50);border:1px solid var(--sand-300);border-radius:var(--r);padding:10px 12px;width:100%;min-height:44px;transition:border-color .2s,box-shadow .2s}
.fg textarea{min-height:90px;resize:vertical}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--terra-mid);box-shadow:0 0 0 3px rgba(229,186,144,.2);outline:none}
.f-submit{width:100%;margin-top:8px;background:#C9A898;color:#3A2D1A;border:none;border-radius:var(--r);font-family:var(--font-sans);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:15px;min-height:50px;cursor:pointer;transition:background .22s,transform .18s}
.f-submit:hover{background:var(--wenge);color:#fff;transform:translateY(-1px)}
.f-note{font-size:11px;color:#4A3828;text-align:center;margin-top:10px;line-height:1.5}
@media(max-width:900px){.res-grid-top{grid-template-columns:1fr}.frow{grid-template-columns:1fr}}

/* NRA informatieblok */
.nra-block{background:var(--sand-100);border:1px solid var(--sand-200);border-left:3px solid var(--terra-mid);border-radius:var(--rl);padding:16px 20px;margin-top:24px;display:flex;align-items:flex-start;gap:14px}
.nra-block svg{width:18px;height:18px;color:var(--terra-mid);flex-shrink:0;margin-top:2px}
.nra-block-body h4{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--wenge-mid);margin-bottom:4px}
.nra-block-body p{font-size:12px;color:var(--stone);line-height:1.6;word-break:break-all}
.nra-block-body .nra-code{font-family:monospace;font-size:11px;color:var(--wenge);background:var(--sand-200);padding:3px 7px;border-radius:4px;display:inline-block;margin-top:4px;word-break:break-all;letter-spacing:.03em}

.nra-wide{margin-top:28px;grid-column:1/-1}
.fg input::placeholder,.fg textarea::placeholder{color:#6B5A47;opacity:1}
.form-title{font-family:var(--font-serif);font-size:18px;font-weight:400;margin-bottom:4px}
/* RentalBeam kalender */
.rentalbeam-calendar{width:100% !important}
.cal-body{padding:0 !important}

/* Datumvelden — gelijke breedte op mobiel */
input[type="date"]{width:100%;box-sizing:border-box}
.fg input[type="date"]{-webkit-appearance:none;appearance:none}
