
.vanvaas-stay-booking-builder{background:#f2efe6;color:#17372d}
.vanvaas-stay-booking-builder .site-main{max-width:none}
.vv-sb{--ink:#17372d;--accent:#a76438;--line:#d4cfc2;--paper:#f7f3ea;max-width:1240px;margin:0 auto;padding:clamp(56px,8vw,110px) 24px 90px;font-family:Arial,sans-serif}
.vv-sb__hero{max-width:820px;margin-bottom:48px}.vv-sb__hero>p,.vv-sb__step p,.vv-sb__summary>p,.vv-sb__experience>div>p{margin:0 0 8px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.16em}
.vv-sb__hero h1{margin:0;font-family:Georgia,serif;font-size:clamp(48px,7vw,86px);font-weight:400;line-height:.95;letter-spacing:-.05em}.vv-sb__hero span{display:block;max-width:650px;margin-top:22px;color:#56645c;font-size:15px;line-height:1.7}
.vv-sb__error{margin:0 0 24px;padding:14px 16px;border-left:3px solid #9d4b36;background:#fff;color:#7d3227}
.vv-sb__layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:48px;align-items:start}.vv-sb__section{padding:34px 0;border-top:1px solid var(--line)}.vv-sb__step{display:flex;gap:18px;align-items:flex-start;margin-bottom:24px}.vv-sb__step>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;font-size:11px;font-weight:800}.vv-sb__step h2{margin:0;font:400 clamp(28px,4vw,42px)/1.05 Georgia,serif}
.vv-sb__experiences{display:grid;gap:10px}.vv-sb__experience{display:grid;grid-template-columns:minmax(0,1fr) 180px 100px;gap:16px;align-items:end;padding:18px;background:var(--paper);border:1px solid var(--line)}.vv-sb__experience h3{margin:0 0 7px;font:400 24px/1.1 Georgia,serif}.vv-sb__experience strong{font-size:12px}.vv-sb label{display:grid;gap:7px;font-size:11px;font-weight:700}.vv-sb input[type=date],.vv-sb input[type=number]{min-height:46px;padding:0 12px;border:1px solid #bbb6aa;background:#fff;color:var(--ink);font:500 13px Arial,sans-serif}
.vv-sb__empty{padding:22px;border:1px solid var(--line);background:var(--paper)}.vv-sb__empty p{margin:0 0 12px;line-height:1.6}.vv-sb__empty a{color:var(--ink);font-weight:800}
.vv-sb__toggle{grid-template-columns:auto 1fr!important;align-items:start;gap:14px!important;padding:18px;border:1px solid var(--line);background:var(--paper);cursor:pointer}.vv-sb__toggle input{margin-top:4px}.vv-sb__toggle span{display:grid;gap:4px}.vv-sb__toggle strong{font-size:14px}.vv-sb__toggle small{color:#69746d;font-size:12px;font-weight:400}
.vv-sb__stay{margin-top:18px}.vv-sb__stay[hidden]{display:none}.vv-sb__rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vv-sb__room{position:relative;display:block!important;cursor:pointer}.vv-sb__room input{position:absolute;opacity:0}.vv-sb__room>span{display:block;height:100%;padding:8px;border:1px solid var(--line);background:var(--paper)}.vv-sb__room input:checked+span{outline:2px solid var(--ink);outline-offset:2px}.vv-sb__room img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:10px}.vv-sb__room b,.vv-sb__room em{display:block;padding:0 4px}.vv-sb__room b{font:400 18px/1.2 Georgia,serif}.vv-sb__room em{margin-top:5px;color:#5d675f;font-size:11px;font-style:normal}
.vv-sb__dates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
.vv-sb__summary{position:sticky;top:30px;padding:26px;background:#12372d;color:#fff}.vv-sb__summary h2{margin:0 0 22px;font:400 34px/1 Georgia,serif}.vv-sb__summary [data-vv-sb-summary]{display:grid;gap:10px;padding-block:16px;border-block:1px solid #46685d}.vv-sb__sumrow{display:flex;justify-content:space-between;gap:14px;font-size:12px;line-height:1.4}.vv-sb__sumrow span:last-child{text-align:right;color:#d9c7a5}.vv-sb__note{color:#b9c9c1;font-size:11px;line-height:1.6}.vv-sb__summary button{width:100%;min-height:50px;margin-top:16px;border:0;border-radius:28px;background:#dfbd84;color:#12372d;font-weight:800;cursor:pointer}.vv-sb__summary>a{display:block;margin-top:15px;color:#fff;text-align:center;font-size:11px}
@media(max-width:900px){.vv-sb__layout{grid-template-columns:1fr}.vv-sb__summary{position:static}.vv-sb__rooms{grid-template-columns:repeat(2,minmax(0,1fr))}.vv-sb__dates{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.vv-sb{padding-inline:16px}.vv-sb__experience{grid-template-columns:1fr 1fr}.vv-sb__experience>div{grid-column:1/-1}.vv-sb__rooms{display:flex;overflow-x:auto}.vv-sb__room{flex:0 0 78vw}.vv-sb__dates{grid-template-columns:1fr 1fr}}

/* 3.2.1 saved-plan controls */
.vv-sb__remove{display:block;margin-top:8px;padding:0;border:0;background:transparent;color:#8a5439;font-weight:600;font-size:11px;line-height:1.4;font-family:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* 3.3.0 unified saved plan + transparent price breakdown */
.vv-sb__experience{position:relative}.vv-sb__experience:before{content:'IN YOUR PLAN';position:absolute;top:10px;right:12px;color:#6e765f;font-size:9px;font-weight:800;letter-spacing:.14em}.vv-sb__sumrow>span:first-child{display:grid;gap:3px}.vv-sb__sumrow strong{font-weight:700}.vv-sb__sumrow small{color:#b9c9c1;font-size:10px;line-height:1.35}.vv-sb__sumrow--subtotal{margin-top:8px;padding-top:12px;border-top:1px solid #46685d}.vv-sb__sumrow--tax span:last-child{color:#fff}.vv-sb__sumrow--total{margin-top:2px;padding-top:10px;border-top:1px solid #46685d;font-size:14px}.vv-sb__sumrow--total strong,.vv-sb__sumrow--total span:last-child{font-weight:800;color:#dfbd84}


/* 3.4.0: party-aware experience pricing and fully itemised summary. */
.vv-sb__experience{grid-template-columns:minmax(0,1fr) 160px 92px 92px}
.vv-sb__experience>label{min-width:0}
.vv-sb__experience>label input{width:100%;box-sizing:border-box}
.vv-sb__sumrow--item{padding:9px 0;border-bottom:1px solid rgb(255 255 255 / 8%)}
.vv-sb__sumrow--item small{max-width:205px}
.vv-sb__summary [data-vv-sb-summary]{gap:2px}
@media(max-width:760px){.vv-sb__experience{grid-template-columns:1fr 1fr}.vv-sb__experience>div{grid-column:1/-1}.vv-sb__experience>label:first-of-type{grid-column:1/-1}}
