.msm-vakantiehuis-huizen{--hz-p:var(--m-primary,#5b4a6b);--hz-bg:var(--m-bg,#f3eee5);--hz-ink:var(--m-ink,#2a2522);--hz-s:var(--m-surface,#fffbf4);--hz-mu:var(--m-muted,#6d635a);--hz-a:var(--m-accent2,#6e7d4c);--hz-l:color-mix(in srgb,var(--hz-ink) 14%,var(--hz-bg));--hz-r:var(--m-radius,18px);position:relative;scroll-margin-top:112px;padding:clamp(72px,9vw,128px) 0;background:var(--hz-bg);color:var(--hz-ink);font-family:var(--m-font-body,"Instrument Sans","Segoe UI",system-ui,sans-serif);font-size:16px;line-height:1.55;overflow:hidden}
.msm-vakantiehuis-huizen *{box-sizing:border-box}
.msm-vakantiehuis-huizen [hidden]{display:none!important}
.msm-vakantiehuis-huizen .hz-wrap{width:min(1240px,100% - 32px);margin:0 auto}
.msm-vakantiehuis-huizen .hz-head{max-width:720px;margin-bottom:clamp(28px,4vw,48px)}
.msm-vakantiehuis-huizen .hz-kicker{margin:0 0 10px;color:var(--hz-p);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.msm-vakantiehuis-huizen .hz-title{margin:0;font:500 clamp(36px,5.2vw,62px)/1.05 var(--m-font-display,"Fraunces",Georgia,serif);letter-spacing:-.015em}
.msm-vakantiehuis-huizen .hz-intro{margin:16px 0 0;max-width:60ch;color:var(--hz-mu);font-size:18px}
.msm-vakantiehuis-huizen .hz-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.msm-vakantiehuis-huizen .hz-item{display:flex;flex-direction:column;background:var(--hz-s);border:1px solid var(--hz-l);border-radius:var(--hz-r);overflow:hidden}
.msm-vakantiehuis-huizen .hz-img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;background:color-mix(in srgb,var(--hz-p) 10%,var(--hz-bg))}
.msm-vakantiehuis-huizen .hz-body{display:flex;flex-direction:column;gap:8px;padding:18px 18px 20px;flex:1}
.msm-vakantiehuis-huizen .hz-name{margin:0;font:500 24px/1.15 var(--m-font-display,"Fraunces",Georgia,serif)}
.msm-vakantiehuis-huizen .hz-meta{margin:0;color:var(--hz-p);font-weight:600;font-size:14px}
.msm-vakantiehuis-huizen .hz-text{margin:0;color:var(--hz-mu);font-size:15px}
.msm-vakantiehuis-huizen .hz-price{margin:4px 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:14px;color:var(--hz-mu)}
.msm-vakantiehuis-huizen .hz-price strong{color:var(--hz-ink);font:500 22px/1.1 var(--m-font-display,"Fraunces",Georgia,serif)}
.msm-vakantiehuis-huizen .hz-plan{align-self:flex-start;margin-top:auto;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:999px;background:var(--hz-p);color:var(--hz-s);font-weight:600;font-size:15px;text-decoration:none;transition:background-color .2s ease}
.msm-vakantiehuis-huizen .hz-plan::after{content:"";width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
.msm-vakantiehuis-huizen .hz-plan:hover{background:color-mix(in srgb,var(--hz-p) 82%,var(--hz-ink))}
.msm-vakantiehuis-huizen .hz-plan:focus-visible,.msm-vakantiehuis-huizen .card-spread-hit:focus-visible{outline:3px solid var(--hz-a);outline-offset:3px}
.msm-vakantiehuis-huizen .hz-note{margin:18px 0 0;color:var(--hz-mu);font-size:13px}
.msm-vakantiehuis-huizen .hz-hint{margin:0 0 14px;color:var(--hz-mu);font-size:14px}
/* Live: waaier links, keuze rechts. */
.msm-vakantiehuis-huizen.is-live .hz-stage{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.msm-vakantiehuis-huizen.is-live .hz-list{display:block}
.msm-vakantiehuis-huizen.is-live .hz-item{display:none;border-radius:calc(var(--hz-r) + 4px)}
.msm-vakantiehuis-huizen.is-live .hz-item.is-on{display:flex}
.msm-vakantiehuis-huizen.is-live .hz-item .hz-img{display:none}
.msm-vakantiehuis-huizen.is-live .hz-body{padding:clamp(22px,3vw,34px);gap:12px}
.msm-vakantiehuis-huizen.is-live .hz-name{font-size:clamp(30px,3.4vw,40px)}
.msm-vakantiehuis-huizen.is-live .hz-text{font-size:17px}
.msm-vakantiehuis-huizen.is-live .hz-plan{margin-top:10px}
.msm-vakantiehuis-huizen .hz-fan{position:relative;height:clamp(340px,38vw,480px);min-width:0}
/* Ruimte binnen de schil voor de duw opzij (push valt buiten measure()). */
.msm-vakantiehuis-huizen .hz-fan .card-spread{padding:16px clamp(24px,5vw,56px)}
/* card-spread.css (React Bits Pro), gescoped. */
.msm-vakantiehuis-huizen .card-spread{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}
.msm-vakantiehuis-huizen .card-spread-rig{position:relative;flex:none}
.msm-vakantiehuis-huizen .card-spread-orbit{position:absolute}
.msm-vakantiehuis-huizen .card-spread-lift{width:100%;height:100%}
.msm-vakantiehuis-huizen .card-spread-card{width:100%;height:100%;overflow:hidden;background:var(--hz-s)}
.msm-vakantiehuis-huizen .card-spread-image{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;-webkit-user-drag:none;user-select:none}
.msm-vakantiehuis-huizen .card-spread-hit{display:block;width:100%;height:100%;padding:0;margin:0;border:0;background:none;font:inherit;color:inherit;cursor:pointer;border-radius:14px;-webkit-tap-highlight-color:transparent}
.msm-vakantiehuis-huizen .card-spread-hit[aria-pressed="true"] .card-spread-card{box-shadow:0 0 0 3px var(--hz-p),0 18px 40px rgba(0,0,0,.24)!important}
@media (max-width:1100px){.msm-vakantiehuis-huizen .hz-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){
.msm-vakantiehuis-huizen.is-live .hz-stage{grid-template-columns:1fr}
.msm-vakantiehuis-huizen .hz-fan{height:clamp(260px,68vw,380px)}
.msm-vakantiehuis-huizen .hz-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
.msm-vakantiehuis-huizen .hz-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:16px;gap:12px;margin:0 -16px;padding:0 16px 8px}
.msm-vakantiehuis-huizen .hz-list>.hz-item{flex:0 0 78%;scroll-snap-align:start}
.msm-vakantiehuis-huizen.is-live .hz-list{margin:0;padding:0}
}
@media (prefers-reduced-motion:reduce){.msm-vakantiehuis-huizen .hz-plan{transition:none}}
