#vlb-compact-root{font-family:Arial,Helvetica,sans-serif;color:#243a3f;background:#f8f6f1;font-synthesis:none;--green:#204c42;--heading:#17332d;--muted:#69747c;--line:#e5e4de;--cream:#f6f5f0}
#vlb-compact-root *{box-sizing:border-box}#vlb-compact-root{margin:0;min-width:320px;-webkit-font-smoothing:antialiased}#vlb-compact-root button,#vlb-compact-root input,#vlb-compact-root select,#vlb-compact-root textarea{font:inherit}#vlb-compact-root button,#vlb-compact-root a,#vlb-compact-root input,#vlb-compact-root select,#vlb-compact-root textarea{-webkit-tap-highlight-color:transparent}#vlb-compact-root button{cursor:pointer;color:inherit}#vlb-compact-root a{color:var(--green);text-underline-offset:4px}#vlb-compact-root button:disabled{cursor:not-allowed}#vlb-compact-root button:focus-visible,#vlb-compact-root a:focus-visible,#vlb-compact-root input:focus-visible,#vlb-compact-root select:focus-visible,#vlb-compact-root textarea:focus-visible{outline:3px solid #ba9637;outline-offset:3px}#vlb-compact-root h1,#vlb-compact-root h2,#vlb-compact-root h3,#vlb-compact-root p{margin:0}#vlb-compact-root h1,#vlb-compact-root h2,#vlb-compact-root h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--heading)}#vlb-compact-root input[type=radio],#vlb-compact-root input[type=checkbox]{accent-color:var(--green);flex-shrink:0}#vlb-compact-root input[type=radio]{width:23px;height:23px;margin:0}#vlb-compact-root input[type=checkbox]{width:20px;height:20px;margin:0}#vlb-compact-root fieldset{padding:0;margin:0;border:0}#vlb-compact-root .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#vlb-compact-root .site-header{max-width:1364px;margin:auto;height:89px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ddd9ce;gap:24px}#vlb-compact-root .logo{width:133px;height:auto;display:block}#vlb-compact-root .site-header nav{display:flex;align-items:center;font-size:17px;font-weight:600;gap:26px}#vlb-compact-root .site-header nav>a{text-decoration:none}#vlb-compact-root .language{display:flex;align-items:center;gap:12px;border-left:1px solid #b9b9b0;padding-left:26px}#vlb-compact-root .language img{width:25px}#vlb-compact-root .preview-badge{font-size:11px;letter-spacing:.02em;color:#69664d;border:1px solid #ddd7c6;border-radius:5px;padding:6px 10px;background:#faf9f5}
#vlb-compact-root .booking-layout{max-width:1364px;margin:30px auto 0;display:grid;grid-template-columns:minmax(0,864fr) minmax(0,474fr);gap:24px;align-items:start}#vlb-compact-root .intro{margin-bottom:25px}#vlb-compact-root .intro h1{font-size:clamp(40px,4.3vw,64px);line-height:1.17;letter-spacing:-1.9px;white-space:nowrap}#vlb-compact-root .intro p{font-size:21px;line-height:1.5;color:var(--muted);margin-top:6px}#vlb-compact-root .booking-panel,#vlb-compact-root .summary{background:#fff;border:1px solid #eeede7;border-radius:9px;box-shadow:0 6px 22px #27393105}#vlb-compact-root .booking-panel{padding:20px}#vlb-compact-root .room-picker,#vlb-compact-root .guest-picker{display:grid;grid-template-columns:1fr 1fr;gap:14px}#vlb-compact-root .room-tile{display:flex;gap:17px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:12px 15px;min-height:80px;cursor:pointer;background:#fff}#vlb-compact-root .room-tile.active{border-color:#387669;background:#f5f9f7;box-shadow:inset 0 0 0 .3px #387669}#vlb-compact-root .room-tile img{width:94px;height:54px;object-fit:cover;border-radius:6px}#vlb-compact-root .room-tile span{font:21px/1.2 Georgia,serif;color:var(--heading)}#vlb-compact-root .guest-picker{margin-top:17px}#vlb-compact-root .stepper{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:79px;padding:16px 18px;border-radius:10px;background:var(--cream)}#vlb-compact-root .stepper strong{display:block;font-size:18px;font-weight:600}#vlb-compact-root .stepper span{display:block;font-size:16px;color:var(--muted);margin-top:5px}#vlb-compact-root .step-buttons{display:flex;align-items:center;gap:13px}#vlb-compact-root .step-buttons button{border:1px solid #ddded8;border-radius:50%;width:41px;height:41px;display:grid;place-items:center;background:white;color:#65747b}#vlb-compact-root .step-buttons button:hover:not(:disabled){border-color:var(--green);background:#edf4ef}#vlb-compact-root .step-buttons button:disabled{opacity:.4}#vlb-compact-root .step-buttons output{font-size:18px;font-weight:600;min-width:14px;text-align:center}
#vlb-compact-root .calendar-section{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}#vlb-compact-root .calendar-section h2{font-size:24px;line-height:1.35;margin-bottom:14px}#vlb-compact-root .calendars{display:grid;grid-template-columns:1fr 1fr;gap:20px}#vlb-compact-root .month{padding:9px 12px 10px;border:1px solid var(--line);border-radius:12px;min-height:344px}#vlb-compact-root .month-heading{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:9px}#vlb-compact-root .month-heading h3{font-size:23px;text-align:center}#vlb-compact-root .month-heading button{border:0;background:transparent;padding:0;min-width:35px;height:37px;display:grid;place-items:center;border-radius:6px}#vlb-compact-root .month-heading button:hover:not(:disabled){background:#edf4ef}#vlb-compact-root .month-heading button:disabled{opacity:.25}#vlb-compact-root .weekdays,#vlb-compact-root .days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}#vlb-compact-root .weekdays{margin-bottom:8px}#vlb-compact-root .weekdays span{text-align:center;font-size:13px;color:#617078;font-weight:600;line-height:20px}#vlb-compact-root .day{height:42px;border:0;border-radius:6px;font-size:14px;color:#476559;background:#e8f3ec;padding:0;transition:background .12s}#vlb-compact-root .day:hover:not(:disabled){background:#c6e1d1;box-shadow:inset 0 0 0 1px #397162}#vlb-compact-root .day.unavailable{background:#efefed;color:#838b8e}#vlb-compact-root .day.range{background:#cfeadb;color:#204c42}#vlb-compact-root .day.selected{background:var(--green);color:white;font-weight:700}#vlb-compact-root .day.checkout-only{background:#e8f3ec;color:var(--green);border:1px dashed #387669}#vlb-compact-root .date-fields{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:25px;margin-top:17px}#vlb-compact-root .date-fields label{font-size:15px;min-width:0}#vlb-compact-root .date-fields input{width:100%;height:46px;margin-top:5px;border:1px solid #d7dcdd;border-radius:7px;background:white;color:#34505b;padding:8px 12px;font-size:16px}#vlb-compact-root .text-button{border:0;background:transparent;color:#387c72;text-decoration:underline;text-underline-offset:3px;font-size:14px;min-height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;gap:8px}#vlb-compact-root .calendar-meta{display:flex;gap:17px;align-items:center;font-size:11px;color:#69766f;margin-top:13px;flex-wrap:wrap}#vlb-compact-root .calendar-meta>span{display:flex;align-items:center;gap:6px}#vlb-compact-root .calendar-meta>span:last-child{margin-left:auto}#vlb-compact-root .calendar-meta i{display:inline-block;width:10px;height:10px;border-radius:2px}#vlb-compact-root .legend-available{background:#d4e9da}#vlb-compact-root .legend-unavailable{background:#e8e8e5}#vlb-compact-root .error{color:#963e26;font-size:13px;line-height:1.4}#vlb-compact-root .error:not(:empty){margin-top:12px;background:#fff5ed;padding:9px 11px;border-radius:5px}
#vlb-compact-root .summary{overflow:hidden}#vlb-compact-root .room-photo{width:100%;height:233px;object-fit:cover;display:block}#vlb-compact-root .summary-content{padding:19px 24px 20px}#vlb-compact-root .summary h2{font-size:35px;line-height:1.18;letter-spacing:-.6px}#vlb-compact-root .room-facts{font-size:18px;color:var(--muted);line-height:1.5;margin-top:4px}#vlb-compact-root .stay{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:17px;padding:17px 0}#vlb-compact-root .stay h3{font-size:24px}#vlb-compact-root .stay p{font-size:17px;color:var(--muted);margin-top:7px}#vlb-compact-root .rates{padding:21px 0 22px;border-bottom:1px solid var(--line);display:grid;gap:22px}#vlb-compact-root .rate{display:flex;align-items:flex-start;gap:15px;cursor:pointer}#vlb-compact-root .rate>span{flex:1;min-width:0}#vlb-compact-root .rate input{margin-top:1px}#vlb-compact-root .rate-title{display:flex;gap:10px;justify-content:space-between;font-size:16px;line-height:1.5}#vlb-compact-root .rate-title strong{font-weight:600}#vlb-compact-root .rate-title b{white-space:nowrap;font-weight:600}#vlb-compact-root .rate small{font-size:13px;color:var(--muted);display:block;line-height:1.5;margin-top:5px}#vlb-compact-root .price-lines{margin:18px 0 22px}#vlb-compact-root .price-lines>div{display:flex;justify-content:space-between;gap:10px;line-height:1.5;margin-bottom:8px;font-size:16px;color:#47606c}#vlb-compact-root .price-lines dd{margin:0}#vlb-compact-root .price-lines .total{margin:15px -8px 0;padding:14px 18px;border-radius:8px;background:#f2f5ef;color:#17332d;font-weight:600;font-size:22px}#vlb-compact-root .primary{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--green);border-radius:11px;width:100%;min-height:66px;background:var(--green);color:white;font:600 23px/1.2 Georgia,serif;padding:16px 18px;box-shadow:0 5px 14px #204c4210;transition:background .15s}#vlb-compact-root .primary:hover:not(:disabled){background:#163d33}#vlb-compact-root .primary:disabled{background:#e0e6e1;border-color:#e0e6e1;color:#79877d;box-shadow:none}#vlb-compact-root .preview-note{font-size:11px;line-height:1.4;color:#767d76;text-align:center;margin-top:11px}#vlb-compact-root .page-footer{display:flex;align-items:center;gap:22px;max-width:1364px;margin:32px auto 25px;font-size:15px}#vlb-compact-root .page-footer>span{height:1px;flex:1;background:#ddd7c6}#vlb-compact-root .page-footer a{display:flex;gap:13px;align-items:center;text-decoration:none;color:#425b63}#vlb-compact-root .empty-summary{min-height:210px;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;text-align:center;color:#61756a;line-height:1.7}#vlb-compact-root .mobile-summary{display:none}
#vlb-compact-root .checkout-dialog{border:1px solid #e2e1d8;border-radius:16px;padding:35px;max-width:690px;width:calc(100% - 28px);max-height:92dvh;color:#243a3f;background:#fffdf9;box-shadow:0 24px 90px #122c3740}#vlb-compact-root .checkout-dialog::backdrop{background:#132b2ac4}#vlb-compact-root .close-dialog{position:absolute;right:16px;top:14px;border:0;border-radius:50%;background:transparent;width:40px;height:40px;display:grid;place-items:center}#vlb-compact-root .close-dialog:hover{background:#f1f1e8}#vlb-compact-root .eyebrow{font-size:10px;letter-spacing:1.3px;color:#6a725d;margin:5px 0 10px}#vlb-compact-root .checkout-dialog h2{font-size:35px;outline:none;line-height:1.2;padding-right:8px}#vlb-compact-root .dialog-note{font-size:13px;color:#77796d;line-height:1.5;margin:10px 0 24px}#vlb-compact-root .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}#vlb-compact-root .form-grid label{display:flex;flex-direction:column;gap:6px;font-size:14px}#vlb-compact-root .form-grid input,#vlb-compact-root .form-grid select,#vlb-compact-root .form-grid textarea{width:100%;min-height:45px;border:1px solid #cfd6cf;background:#fff;border-radius:7px;padding:10px;color:#243a3f}#vlb-compact-root .form-grid small{display:contents;color:#728074}#vlb-compact-root .full-field{grid-column:1/-1}#vlb-compact-root .consent{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:12px;line-height:1.8;margin-top:16px}#vlb-compact-root .consent input{margin-right:4px}#vlb-compact-root .dialog-actions{display:flex;gap:25px;align-items:center;justify-content:space-between;margin-top:27px}#vlb-compact-root .dialog-actions .primary{width:auto;font-family:Arial,sans-serif;font-size:15px;min-height:49px}#vlb-compact-root .review-card{display:flex;gap:17px;align-items:center;background:#f3f5ee;border-radius:9px;overflow:hidden}#vlb-compact-root .review-card img{width:140px;height:115px;object-fit:cover}#vlb-compact-root .review-card h3{font-size:24px}#vlb-compact-root .review-card p{margin-top:6px;font-size:14px}#vlb-compact-root .review-details{margin:25px 0;display:grid;gap:19px}#vlb-compact-root .review-details>div{display:grid;grid-template-columns:150px 1fr;gap:20px;font-size:14px;line-height:1.5}#vlb-compact-root .review-details dt{color:#6a7772}#vlb-compact-root .review-details dd{margin:0}#vlb-compact-root .review-details small{display:block;margin-top:4px;color:#6a7772}#vlb-compact-root .safe-note{display:flex;gap:12px;font-size:13px;line-height:1.6;padding:15px;background:#f2f4ed;border-radius:7px}#vlb-compact-root .safe-note svg{flex-shrink:0}#vlb-compact-root .success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:25px 0;color:var(--green);gap:18px}#vlb-compact-root .success h3{font-size:28px}#vlb-compact-root .success p{line-height:1.6;color:#627066}#vlb-compact-root .success .primary{margin-top:12px}
@media(min-width:1450px){#vlb-compact-root .intro p{font-size:23px}}
@media(max-width:1440px){#vlb-compact-root .site-header,#vlb-compact-root .booking-layout,#vlb-compact-root .page-footer{margin-left:4%;margin-right:4%}#vlb-compact-root .intro h1{font-size:clamp(37px,4.3vw,62px)}#vlb-compact-root .room-tile{gap:12px;padding:12px}#vlb-compact-root .room-tile img{width:72px}#vlb-compact-root .room-tile span{font-size:18px}#vlb-compact-root .stepper{padding:14px}#vlb-compact-root .step-buttons{gap:10px}#vlb-compact-root .step-buttons button{width:36px;height:36px}#vlb-compact-root .month{padding:9px;min-height:329px}#vlb-compact-root .day{height:40px}#vlb-compact-root .rate-title{font-size:14px}#vlb-compact-root .rate small{font-size:12px}#vlb-compact-root .summary-content{padding:19px 20px}#vlb-compact-root .date-fields{gap:14px}#vlb-compact-root .reset{font-size:12px}#vlb-compact-root .room-photo{height:220px}#vlb-compact-root .summary h2{font-size:32px}#vlb-compact-root .intro p{font-size:18px}#vlb-compact-root .room-facts{font-size:16px}#vlb-compact-root .calendar-section h2{font-size:22px}#vlb-compact-root .month-heading h3{font-size:20px}}
@media(max-width:1100px) and (min-width:901px){#vlb-compact-root .room-tile img{width:48px;height:44px}#vlb-compact-root .room-tile{gap:9px}#vlb-compact-root .room-tile span{font-size:16px}#vlb-compact-root .stepper{padding:12px 9px}#vlb-compact-root .stepper strong{font-size:15px}#vlb-compact-root .stepper span{font-size:12px}#vlb-compact-root .step-buttons{gap:7px}#vlb-compact-root .step-buttons button{width:29px;height:29px}#vlb-compact-root .booking-panel{padding:16px}#vlb-compact-root .calendars{gap:10px}#vlb-compact-root .month{padding:7px}#vlb-compact-root .days,#vlb-compact-root .weekdays{gap:3px}#vlb-compact-root .month-heading h3{font-size:17px}#vlb-compact-root .month-heading button{min-width:25px}#vlb-compact-root .calendar-section h2{font-size:20px}#vlb-compact-root .rate{gap:10px}#vlb-compact-root .rate-title{flex-wrap:wrap;gap:1px}#vlb-compact-root .summary h2{font-size:29px}#vlb-compact-root .summary-content{padding:17px}#vlb-compact-root .stay h3{font-size:21px}#vlb-compact-root .date-fields{grid-template-columns:1fr 1fr}#vlb-compact-root .reset{grid-column:1/-1;min-height:22px;justify-self:end}#vlb-compact-root .intro p{font-size:16px}#vlb-compact-root .room-photo{height:200px}}
@media(max-width:900px){#vlb-compact-root .booking-layout{grid-template-columns:1fr;max-width:740px;margin-left:auto;margin-right:auto;width:92%;gap:25px}#vlb-compact-root .intro h1{font-size:52px}#vlb-compact-root .intro p{font-size:19px}#vlb-compact-root .summary{display:grid;grid-template-columns:.8fr 1fr}#vlb-compact-root .room-photo{height:100%;min-height:350px}#vlb-compact-root .summary-content{padding:22px}#vlb-compact-root .site-header{height:89px}#vlb-compact-root .preview-badge{font-size:10px}#vlb-compact-root .site-header nav{font-size:14px;gap:16px}#vlb-compact-root .language{padding-left:16px}#vlb-compact-root .room-tile img{width:90px}#vlb-compact-root .room-tile span{font-size:21px}#vlb-compact-root .step-buttons button{width:40px;height:40px}#vlb-compact-root .day{height:44px}#vlb-compact-root .month{min-height:348px}#vlb-compact-root .date-fields{grid-template-columns:1fr 1fr auto}#vlb-compact-root .summary h2{font-size:32px}#vlb-compact-root .rate-title{flex-wrap:wrap;gap:2px}}
@media(max-width:700px){#vlb-compact-root .site-header{height:102px;margin:0 20px;flex-wrap:wrap;align-content:center;gap:8px}#vlb-compact-root .logo{width:109px}#vlb-compact-root .site-header nav{font-size:13px;gap:12px}#vlb-compact-root .language{gap:7px;padding-left:12px}#vlb-compact-root .language img{width:20px}#vlb-compact-root .preview-badge{order:3;width:100%;text-align:center;font-size:10px;border:0;padding:3px;background:transparent}#vlb-compact-root .booking-layout{width:auto;margin:22px 16px 0;gap:22px}#vlb-compact-root .intro{margin:0 4px 20px}#vlb-compact-root .intro h1{font-size:38px;letter-spacing:-1.1px;white-space:normal;line-height:1.12;max-width:350px}#vlb-compact-root .intro p{font-size:15px;line-height:1.5;margin-top:10px;max-width:360px}#vlb-compact-root .booking-panel{padding:14px;border-radius:11px}#vlb-compact-root .room-picker{gap:10px}#vlb-compact-root .room-tile{position:relative;display:grid;grid-template-columns:21px 1fr;gap:9px;padding:10px;min-height:135px;align-content:start;align-items:center}#vlb-compact-root .room-tile img{grid-column:1/-1;grid-row:1;width:100%;height:64px;border-radius:5px}#vlb-compact-root .room-tile input{width:18px;height:18px;grid-row:2}#vlb-compact-root .room-tile span{font:17px/1.1 Georgia,serif}#vlb-compact-root .guest-picker{gap:10px;margin-top:12px}#vlb-compact-root .stepper{padding:12px 10px;display:block;min-height:112px}#vlb-compact-root .stepper strong{font-size:15px}#vlb-compact-root .stepper span{font-size:12px;margin-top:3px}#vlb-compact-root .step-buttons{justify-content:space-between;margin-top:10px;gap:8px}#vlb-compact-root .step-buttons button{width:34px;height:34px}#vlb-compact-root .step-buttons output{font-size:16px}#vlb-compact-root .calendar-section{margin-top:17px;padding-top:17px}#vlb-compact-root .calendar-section h2{font-size:21px;margin-bottom:13px;line-height:1.25}#vlb-compact-root .calendars{display:block}#vlb-compact-root .month{padding:8px 9px 12px;min-height:0}#vlb-compact-root .month-heading h3{font-size:22px}#vlb-compact-root .month-heading button{width:40px;height:40px}#vlb-compact-root .weekdays{margin-bottom:7px}#vlb-compact-root .days,#vlb-compact-root .weekdays{gap:4px}#vlb-compact-root .day{height:42px;font-size:14px}#vlb-compact-root .date-fields{grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}#vlb-compact-root .date-fields label{font-size:13px}#vlb-compact-root .date-fields input{padding:9px 8px;font-size:14px;min-width:0}#vlb-compact-root .reset{grid-column:1/-1;justify-self:center;min-height:30px;font-size:13px}#vlb-compact-root .calendar-meta{justify-content:center;gap:12px;font-size:10px;margin-top:5px}#vlb-compact-root .calendar-meta>span:last-child{margin-left:0}#vlb-compact-root .summary{display:block}#vlb-compact-root .room-photo{width:100%;height:210px;min-height:0;object-fit:cover}#vlb-compact-root .summary-content{padding:20px}#vlb-compact-root .summary h2{font-size:31px}#vlb-compact-root .room-facts{font-size:15px}#vlb-compact-root .rate-title{flex-wrap:nowrap;font-size:14px}#vlb-compact-root .rate small{font-size:12px}#vlb-compact-root .primary{min-height:54px;font-size:21px}#vlb-compact-root .page-footer{margin:27px 20px 125px;font-size:12px;gap:10px}#vlb-compact-root .page-footer a{gap:9px;text-align:center;line-height:1.5}#vlb-compact-root .page-footer svg{flex-shrink:0}#vlb-compact-root .page-footer>span{min-width:5px}#vlb-compact-root .mobile-summary{position:fixed;bottom:0;left:0;right:0;z-index:5;display:flex;gap:18px;justify-content:space-between;align-items:center;padding:12px 18px max(12px,env(safe-area-inset-bottom));background:#fffdf9;box-shadow:0 -3px 22px #20372a12;border-top:1px solid #e0e3d9}#vlb-compact-root .mobile-summary>div{display:flex;flex-direction:column;gap:3px;flex-shrink:0}#vlb-compact-root .mobile-summary small{font-size:10px;color:#687568}#vlb-compact-root .mobile-summary strong{font-size:21px;font-family:Georgia,serif;color:var(--heading)}#vlb-compact-root .mobile-summary .primary{width:auto;font-size:17px;min-height:48px;padding:12px 15px}#vlb-compact-root .checkout-dialog{padding:26px 20px 22px;max-height:94dvh}#vlb-compact-root .checkout-dialog h2{font-size:30px}#vlb-compact-root .eyebrow{font-size:8px;letter-spacing:1px;padding-right:20px}#vlb-compact-root .form-grid{grid-template-columns:1fr;gap:14px}#vlb-compact-root .form-grid input,#vlb-compact-root .form-grid select,#vlb-compact-root .form-grid textarea{font-size:16px}#vlb-compact-root .dialog-actions{gap:15px;flex-direction:column-reverse}#vlb-compact-root .dialog-actions .primary{width:100%}#vlb-compact-root .review-card img{width:100px;height:120px}#vlb-compact-root .review-card h3{font-size:22px}#vlb-compact-root .review-card p{font-size:12px}#vlb-compact-root .review-details>div{grid-template-columns:110px 1fr;gap:12px}#vlb-compact-root .consent{font-size:11px}#vlb-compact-root .close-dialog{top:7px;right:7px}}
@media(max-width:360px){#vlb-compact-root .booking-layout{margin-left:10px;margin-right:10px}#vlb-compact-root .booking-panel{padding:10px}#vlb-compact-root .intro h1{font-size:34px}#vlb-compact-root .room-tile{padding:8px}#vlb-compact-root .room-tile span{font-size:15px}#vlb-compact-root .rate-title{font-size:12px}#vlb-compact-root .mobile-summary{gap:10px;padding-left:12px;padding-right:12px}}
@media(prefers-reduced-motion:reduce){#vlb-compact-root *{transition:none!important;scroll-behavior:auto!important}}
/* Comparison pass 2: keep the complete desktop journey within the chosen frame. */
@media(min-width:901px){#vlb-compact-root .intro{margin-bottom:16px}#vlb-compact-root .month{min-height:344px}#vlb-compact-root .month-heading{margin-bottom:6px}#vlb-compact-root .month-heading button{height:31px}#vlb-compact-root .weekdays{margin-bottom:5px}#vlb-compact-root .days{gap:4px}#vlb-compact-root .day{height:39px}#vlb-compact-root .booking-panel{padding-bottom:12px}#vlb-compact-root .summary-content{padding-bottom:14px}#vlb-compact-root .page-footer{margin-top:24px}}
@media(max-width:700px){#vlb-compact-root .site-header{height:88px}#vlb-compact-root .intro{margin-bottom:16px}#vlb-compact-root .intro h1{font-size:35px}#vlb-compact-root .room-tile{min-height:115px}#vlb-compact-root .room-tile img{height:49px}#vlb-compact-root .stepper{min-height:99px;padding-top:10px;padding-bottom:10px}#vlb-compact-root .step-buttons{margin-top:7px}#vlb-compact-root .calendar-section h2{font-size:19px}#vlb-compact-root .calendar-section{padding-top:14px;margin-top:14px}}
@media(max-width:360px){#vlb-compact-root{min-width:280px}#vlb-compact-root .site-header{gap:6px}#vlb-compact-root .logo{width:90px}#vlb-compact-root .site-header nav{font-size:11px;gap:8px}#vlb-compact-root .language{gap:6px;padding-left:8px}#vlb-compact-root .language img{width:17px}#vlb-compact-root .intro h1{font-size:32px}#vlb-compact-root .intro p{font-size:14px}#vlb-compact-root .mobile-summary>div{min-width:0;flex-shrink:1}#vlb-compact-root .mobile-summary strong{font-size:18px}#vlb-compact-root .mobile-summary .primary{flex-shrink:0;font-size:15px;white-space:nowrap;padding:12px}}
@media(min-width:1101px){#vlb-compact-root .rate-title{font-size:18px}#vlb-compact-root .rate small{font-size:14px}#vlb-compact-root .rates{padding-top:17px;padding-bottom:18px}#vlb-compact-root .price-lines{margin-top:12px}#vlb-compact-root .price-lines>div{font-size:18px}#vlb-compact-root .price-lines .total{font-size:22px}}
/* Approved design refinement: clearer availability and selected-range greens. */
#vlb-compact-root .day.available:not(.selected):not(.range){background:#bcdcc8;color:#234b39;box-shadow:inset 0 0 0 1px #9cc3ac}
#vlb-compact-root .day.available:not(.selected):not(.range):hover{background:#a6ceb7;box-shadow:inset 0 0 0 1px #56876b}
#vlb-compact-root .day.range{background:#87bc9e;color:#153d2a;font-weight:600}
#vlb-compact-root .day.range:hover{background:#76ad8e}
#vlb-compact-root .day.selected:hover{background:#173d33}
#vlb-compact-root .day.checkout-only{background:#bcdcc8;color:#234b39}
#vlb-compact-root .legend-available{background:#bcdcc8;box-shadow:inset 0 0 0 1px #9cc3ac}
#vlb-compact-root .gallery-stage{position:relative;overflow:hidden;background:#edf0e9;touch-action:pan-y}
#vlb-compact-root .gallery-stage .room-photo{height:290px;min-height:0;object-fit:cover;object-position:center;background:#edf0e9}
#vlb-compact-root .gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid #d9e1d9;border-radius:50%;background:#fffffff2;display:grid;place-items:center;color:var(--green);box-shadow:0 2px 10px #0002}
#vlb-compact-root .gallery-arrow.previous{left:12px}#vlb-compact-root .gallery-arrow.next{right:12px}
#vlb-compact-root .gallery-counter{position:absolute;right:13px;bottom:12px;background:#17332deb;color:white;padding:6px 10px;border-radius:20px;font-size:14px}
#vlb-compact-root .gallery-caption{font-size:14px;line-height:1.5;padding:12px 18px 8px;min-height:62px;color:#42574d}
#vlb-compact-root .gallery-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:0 14px 14px}
#vlb-compact-root .gallery-thumbs button{padding:2px;border:2px solid transparent;background:white;border-radius:5px;min-width:0}
#vlb-compact-root .gallery-thumbs button[aria-pressed=true]{border-color:var(--green)}
#vlb-compact-root .gallery-thumbs img{width:100%;height:42px;object-fit:cover;display:block;border-radius:2px}
#vlb-compact-root .photo-error{height:290px;display:grid;place-items:center;padding:60px;line-height:1.6}
#vlb-compact-root .room-story{margin-top:25px;background:white;border:1px solid #eeede7;border-radius:10px;padding:30px;line-height:1.75;font-size:16px}
#vlb-compact-root .story-eyebrow{font-size:12px;letter-spacing:1.5px;color:#65735b;margin-bottom:8px}
#vlb-compact-root .room-story h2{font-size:32px;line-height:1.2;margin-bottom:18px}
#vlb-compact-root .room-story h3{font-size:23px;margin:24px 0 8px;line-height:1.3}
#vlb-compact-root .room-story p+p{margin-top:14px}
#vlb-compact-root .spa-story{background:#f2f6f1;border-left:3px solid #387669;margin-top:25px;padding:1px 22px 22px;border-radius:0 8px 8px 0}
@media(max-width:900px){#vlb-compact-root .summary{display:block}#vlb-compact-root .gallery-stage .room-photo{height:360px}#vlb-compact-root .gallery-thumbs img{height:66px}}
@media(max-width:700px){#vlb-compact-root .gallery-stage .room-photo{height:240px}#vlb-compact-root .gallery-thumbs img{height:38px}#vlb-compact-root .room-story{padding:22px}#vlb-compact-root .room-story h2{font-size:28px}#vlb-compact-root .spa-story{padding-left:15px;padding-right:15px}}
/* Owner feedback: restore the compact booking card; photos without thumbnails. */
#vlb-compact-root .language select{border:0;background:transparent;color:var(--green);font:inherit;padding:8px 20px 8px 0;max-width:125px;cursor:pointer}
#vlb-compact-root .intro h1{white-space:normal}
#vlb-compact-root .rate-title{flex-wrap:wrap}
#vlb-compact-root .rate-title strong{overflow-wrap:normal}
#vlb-compact-root .weekdays span{font-size:12px}
#vlb-compact-root .gallery-stage .room-photo,#vlb-compact-root .photo-error{height:220px;min-height:0}
#vlb-compact-root .gallery-arrow{width:28px;height:28px;border:0;box-shadow:0 1px 5px #0002;background:#ffffffdf;padding:0}
#vlb-compact-root .gallery-arrow::after{content:'';position:absolute;inset:-8px}
#vlb-compact-root .gallery-arrow.previous{left:10px}#vlb-compact-root .gallery-arrow.next{right:10px}
#vlb-compact-root .gallery-counter{font-size:12px;padding:4px 7px;right:10px;bottom:9px}
#vlb-compact-root .room-story{padding:24px 28px;line-height:1.65}
#vlb-compact-root .room-story h2{font-size:28px;margin-bottom:14px}
#vlb-compact-root .stay-details{margin-top:20px;border-top:1px solid var(--line);padding-top:4px}
#vlb-compact-root .stay-details summary{cursor:pointer;padding:12px 0;color:var(--green);font-size:15px;font-weight:600}
#vlb-compact-root .stay-details summary:focus-visible{outline:3px solid #ba9637;outline-offset:3px}
#vlb-compact-root .stay-details p{font-size:14px;line-height:1.65;margin-top:10px}
@media(max-width:700px){#vlb-compact-root .room-story{padding:20px}#vlb-compact-root .room-story h2{font-size:26px}#vlb-compact-root .gallery-stage .room-photo{height:210px}}
#vlb-compact-root .primary.booking-action{display:grid;grid-template-rows:auto 17px;gap:2px;padding:10px 18px}
#vlb-compact-root .checkout-policy{padding:18px 0;border-top:1px solid var(--line);line-height:1.55}#vlb-compact-root .checkout-policy h3{font-size:23px;margin-bottom:12px}#vlb-compact-root .checkout-policy p{font-size:14px;margin:8px 0}#vlb-compact-root .checkout-check{min-height:24px;font-size:14px;line-height:1.5;margin:12px 0;color:var(--green)}
#vlb-compact-root .booking-action .refresh-status{display:block;min-height:17px;font:500 14px/17px Arial,sans-serif;color:inherit;white-space:nowrap}
#vlb-compact-root .primary.booking-action:disabled[aria-busy="true"]{background:var(--green);border-color:var(--green);color:#fff;opacity:1;cursor:progress}
@media(max-width:700px){#vlb-compact-root .primary.booking-action{grid-template-rows:auto 15px;padding:5px 10px}#vlb-compact-root .booking-action .refresh-status{font-size:12px;line-height:15px;min-height:15px}}

/* Apartment picker: photographs lead, labels stay quiet and readable. */
#vlb-compact-root .room-picker .room-tile{display:grid;grid-template-columns:23px minmax(90px,120px) minmax(0,1fr);gap:12px;padding:12px;min-height:116px}
#vlb-compact-root .room-picker .room-tile input{grid-column:1;grid-row:1;width:21px;height:21px}
#vlb-compact-root .room-picker .room-tile img{grid-column:2;grid-row:1;width:100%;height:90px;object-fit:cover;border-radius:6px}
#vlb-compact-root .room-picker .room-tile span{grid-column:3;grid-row:1;font-size:17px;line-height:1.3;min-width:0}
@media(min-width:701px) and (max-width:1100px){
 #vlb-compact-root .room-picker .room-tile{grid-template-columns:21px minmax(75px,100px) minmax(0,1fr);gap:9px;padding:10px}
 #vlb-compact-root .room-picker .room-tile span{font-size:16px}
}
@media(min-width:701px){
 #vlb-compact-root .room-picker .room-tile{grid-template-columns:21px minmax(0,1fr) 21px;grid-template-rows:140px auto;gap:12px 8px;padding:12px;min-height:0;align-content:start}
 #vlb-compact-root .room-picker .room-tile img{grid-column:1/-1;grid-row:1;width:100%;height:140px;object-fit:cover;object-position:center}
 #vlb-compact-root .room-picker .room-tile input{grid-column:1;grid-row:2;align-self:center}
 #vlb-compact-root .room-picker .room-tile span{grid-column:2;grid-row:2;font-size:17px;line-height:1.3;text-align:center;align-self:center}
}
@media(max-width:700px){
 #vlb-compact-root .room-picker .room-tile{grid-template-columns:20px minmax(0,1fr);grid-template-rows:auto auto;gap:11px 8px;padding:10px;min-height:0;align-content:start}
 #vlb-compact-root .room-picker .room-tile img{grid-column:1/-1;grid-row:1;width:100%;height:clamp(108px,32vw,156px);object-fit:cover}
 #vlb-compact-root .room-picker .room-tile input{grid-column:1;grid-row:2;width:19px;height:19px;align-self:center}
 #vlb-compact-root .room-picker .room-tile span{grid-column:2;grid-row:2;font-size:16px;line-height:1.3;align-self:center}
}

/* Only the selection page loads this stylesheet. Contact/footer are untouched. */
body.page-id-280 .vl-booking-main .vl-wrap > .vl-eye,
body.page-id-280 .vl-booking-main .vl-wrap > h1,
body.page-id-280 .vl-booking-main .vl-wrap > .vl-lead,
body.page-id-280 .vl-booking-main .vl-wrap > .vl-booking-intro,
body.page-id-280 .vl-booking-main .vl-wrap > .vl-note { display:none; }
body.page-id-280 .vl-booking-main { padding-top:30px; padding-bottom:40px; background:#f8f6f1; }
body.page-id-280 .vl-booking-main > .vl-wrap { width:100%; max-width:1364px; margin:auto; padding:0 24px; }
#villa-larnia-native-booking { width:100%; min-width:0; }
#vlb-compact-root { display:block; width:100%; min-width:0; line-height:1.5; text-align:left; }
#vlb-compact-root .booking-layout { margin:0; width:100%; max-width:none; }
#vlb-compact-root .intro h1 { font-size:clamp(34px,4vw,54px)!important; line-height:1.12!important; }
#vlb-compact-root .intro p { font-size:18px; }
#vlb-compact-root button { text-transform:none; letter-spacing:normal; }
#vlb-compact-root .calendar-meta { font-size:12px; }
#vlb-compact-root .summary { position:sticky; top:110px; }
@media(max-width:900px){
 #vlb-compact-root .summary { position:static; }
 #vlb-compact-root .booking-layout { margin:0 auto; max-width:740px; }
}
@media(max-width:700px){
 body.page-id-280 .vl-booking-main { padding-top:24px; }
 body.page-id-280 .vl-booking-main > .vl-wrap { padding:0 16px; }
 #vlb-compact-root .intro h1 { font-size:35px!important; }
 #vlb-compact-root .intro p { font-size:16px; }
 #vlb-compact-root .date-fields input { font-size:16px; }
 #vlb-compact-root .mobile-summary { z-index:90; }
}
