*{box-sizing:border-box}body{margin:0;background:#ffffff;color:#222222;font:16px/1.5 system-ui,sans-serif}.widget-shell{max-width:980px;margin:auto;padding:24px}header{border-bottom:1px solid #dddddd;margin-bottom:24px;padding-bottom:20px}h1{font-size:30px;margin:4px 0}h2{font-size:21px;margin:4px 0 12px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#717171}.accommodation-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.accommodation{background:white;border:1px solid #dddddd;border-radius:16px;padding:22px;margin:16px 0}.price{font-size:23px;font-weight:700}small{font-weight:400}.primary{display:inline-block;background:#e31c5f;color:white;padding:12px 20px;border-radius:8px;text-decoration:none}a{color:#e31c5f}.back{display:inline-block;margin-bottom:8px}.selection{display:flex;gap:20px;align-items:center;flex-wrap:wrap;background:#f7f7f7;padding:16px;border-radius:12px}.selection div{flex:1;min-width:110px}.selection span{font-size:11px;letter-spacing:1px;display:block}.selection strong{display:block}button,select{font:inherit}button{cursor:pointer;border:1px solid #b0b0b0;background:white;border-radius:8px;color:#222222;padding:9px 13px}button:disabled{cursor:default;color:#b0b0b0}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #222222;outline-offset:3px}.month-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:25px}.month-nav h2{margin:0}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekdays{color:#717171;text-align:center;font-size:12px;padding:12px 0}.day{min-height:74px;padding:8px 2px;border-color:#dddddd;display:flex;flex-direction:column;align-items:center;justify-content:center}.day small{font-size:11px;margin-top:5px;white-space:nowrap}.day:not(:disabled):hover{background:#fff0f3}.day.unavailable{background:#f7f7f7;border-color:transparent;color:#b0b0b0}.day.unavailable span{text-decoration:line-through}.day.selected{background:#e31c5f!important;color:white!important}.day.in-range{background:#fff0f3}.day.checkout-only{border:1px dashed #e31c5f;color:#e31c5f;background:#fff}.day.checkout-only span{text-decoration:none}.legend,.policy,.selection-note,footer{font-size:13px;color:#717171}.legend{margin:20px 0}select{padding:10px;margin:0 12px;border:1px solid #b0b0b0;border-radius:6px}.quote{margin-top:22px;background:white;border:1px solid #dddddd;border-radius:12px;padding:20px}.quote p{display:flex;justify-content:space-between;gap:16px}.preview{background:#fff1cc;padding:12px;border-radius:8px}footer{margin-top:28px;border-top:1px solid #dddddd;padding-top:18px}[hidden]{display:none!important}@media(max-width:430px){.widget-shell{padding:14px}.day{min-height:65px}.day small{font-size:9px}.calendar-days{gap:3px}.month-nav h2{font-size:18px}.selection{gap:10px}}

.cover-photo{width:240px;max-width:100%;aspect-ratio:4/3;background:#f7f7f7;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#717171;margin-bottom:12px}.cover-photo img{display:block;width:100%;height:100%;object-fit:cover}

.bedroom-count{font-size:14px;font-weight:600;margin:12px 0 4px}.bedroom-layout{font-size:14px;line-height:1.5;margin:0 0 10px;padding-left:18px}.bedroom-layout li{margin:2px 0}

.accommodation{padding:18px}.accommodation h2{font-size:18px;line-height:1.3}.accommodation p{font-size:14px;line-height:1.5;margin:8px 0}.accommodation .price{font-size:20px;margin:12px 0}.accommodation .price small{display:block;font-size:12px;color:#717171}.accommodation .primary{font-size:14px;min-height:44px}.accommodation .bedroom-count{margin:12px 0 4px}.cover-photo span{font-size:13px}
