.collection{background:#f1eee6}
.collection-head{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:52px}
.collection-head h2{font:400 clamp(3rem,5vw,4.75rem)/.98 "Newsreader",serif;letter-spacing:-.035em;margin:0}
.collection-head>p{max-width:360px;margin:0 0 8px;font-size:1.05rem}
.stay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.stay-card{background:#fff;min-width:0;display:grid;grid-template-columns:minmax(210px,.9fr) minmax(250px,1.1fr);min-height:355px;box-shadow:0 16px 40px rgba(13,44,48,.07);transition:transform .25s,box-shadow .25s}
.stay-card:hover{transform:translateY(-4px);box-shadow:0 24px 54px rgba(13,44,48,.12)}
.stay-card.featured{grid-column:1/-1;grid-template-columns:1.15fr .85fr;min-height:440px}
.stay-image{display:block;position:relative;overflow:hidden;min-height:100%;width:100%;padding:0;border:0;background:#d7dedc;cursor:pointer;text-align:left}
.stay-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.stay-card:hover .stay-image img{transform:scale(1.025)}
.stay-image>span{position:absolute;left:18px;top:18px;background:rgba(250,248,242,.94);color:#16353a;border-radius:999px;padding:7px 12px;font-size:.75rem;font-weight:600;letter-spacing:.04em}
.stay-card-body{padding:34px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.stay-card-body h3{font:400 clamp(2rem,3vw,2.8rem)/1 "Newsreader",serif;letter-spacing:-.025em;margin:4px 0 14px}
.stay-card-body p{margin:0}
.card-kicker{color:#1c666b;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600}
.stay-card-body div>p:last-child{font-size:.94rem;line-height:1.55;color:#456064}
.card-meta{display:flex;flex-wrap:wrap;gap:6px 14px;padding-top:16px;border-top:1px solid rgba(22,53,58,.13);font-size:.76rem;color:#456064}
.card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px}.card-link{align-self:flex-start;border:0;border-bottom:1px solid currentColor;background:transparent;color:#16353a;font-size:.82rem;font-weight:600;padding:0 0 3px;cursor:pointer}.card-booking{display:inline-flex;align-items:center;background:#db765f;color:#fff;padding:9px 13px;border-radius:3px;font-size:.78rem;font-weight:600;transition:transform .2s,background .2s}.card-booking:hover{transform:translateY(-2px);background:#c96550}
#property-dialog{width:min(1040px,94vw);max-width:1040px;max-height:92vh;background:#faf8f2;color:#16353a;padding:0;overflow:auto;border:0}
#property-dialog::backdrop{background:rgba(4,20,22,.86)}
#property-dialog .property-close{position:fixed;z-index:4;top:20px;right:24px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#16353a;font-size:1.6rem;line-height:1;cursor:pointer;box-shadow:0 8px 30px rgba(0,0,0,.18)}
.property-dialog-content{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);min-height:650px}
.property-dialog-hero{position:sticky;top:0;height:92vh;max-height:800px;background:#123f45}
#property-dialog .property-dialog-hero img{width:100%;height:100%;max-height:none;object-fit:cover}
.property-dialog-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,29,32,.48),transparent 45%);pointer-events:none}
.property-type{position:absolute;z-index:1;left:24px;bottom:24px;background:#faf8f2;border-radius:999px;padding:8px 13px;font-size:.76rem;font-weight:600}
.property-dialog-body{padding:54px clamp(30px,5vw,64px) 48px}
.property-dialog-body h2{font:400 clamp(2.7rem,5vw,4.4rem)/.98 "Newsreader",serif;letter-spacing:-.035em;margin:0 0 22px}
.property-stats{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:28px}
.property-stats span{border:1px solid rgba(22,53,58,.18);border-radius:999px;padding:6px 10px;font-size:.76rem}
.property-description{font:400 1.25rem/1.55 "Newsreader",serif;margin:0 0 38px}
.property-columns{display:grid;grid-template-columns:1fr 1fr;gap:36px;padding-top:30px;border-top:1px solid rgba(22,53,58,.15)}
.property-columns h3{font:500 1.55rem/1.1 "Newsreader",serif;margin:0 0 16px}
.property-columns ul{padding-left:18px;margin:0;color:#456064;font-size:.9rem;line-height:1.55}
.property-columns li{margin-bottom:8px}
.property-note{background:#eee5d4;padding:20px 22px;margin:34px 0 24px;font-size:.9rem}
.property-note strong{font:500 1.15rem "Newsreader",serif}.property-note p{margin:5px 0 0}
.booking-link{background:#1c666b}
.payment-note{font-size:.76rem;color:#64777a;margin:12px 0 0;max-width:460px}
@media(max-width:1100px){.stay-grid{grid-template-columns:1fr}.stay-card.featured{grid-column:auto}.stay-card,.stay-card.featured{grid-template-columns:.9fr 1.1fr;min-height:360px}}
@media(max-width:700px){.collection-head{display:block;margin-bottom:34px}.collection-head>p{margin-top:20px}.stay-card,.stay-card.featured{display:block;min-height:0}.stay-image{height:280px}.stay-card-body{padding:28px}.stay-card-body h3{font-size:2.3rem}.card-meta{gap:6px 12px}.property-dialog-content{display:block}.property-dialog-hero{position:relative;height:300px}.property-dialog-body{padding:36px 24px}.property-columns{grid-template-columns:1fr;gap:28px}#property-dialog .property-close{top:12px;right:12px}}
