*{box-sizing:border-box}body{margin:0;background:#f4f9fc;color:#123c61;font:16px/1.55 Arial,sans-serif}a{color:#075da8}.top{background:#064677;color:white;padding:18px max(4%,calc((100% - 1140px)/2));display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap}.top a{color:white;text-decoration:none}.brand{font-weight:900;font-size:22px}.top nav{display:flex;gap:20px}.wrap{max-width:1140px;margin:36px auto;padding:0 18px;min-height:65vh}h1,h2,h3{color:#063b72}h1{font-size:clamp(30px,4vw,46px);line-height:1.12}.lead{color:#5b7284}.panel,.property{background:#fff;border:1px solid #dbeaf4;border-radius:16px;padding:22px;box-shadow:0 6px 22px #063b7210;margin:20px 0}.filters{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:12px;align-items:end}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.property{padding:0;overflow:hidden;margin:0}.property img{width:100%;height:205px;object-fit:cover}.property .info{padding:20px}.property h3{margin:0 0 8px}.photo-placeholder{height:205px;background:linear-gradient(135deg,#075da8,#9bdaf5)}.hero-img{width:100%;max-height:430px;object-fit:cover;border-radius:16px}.pill{display:inline-block;background:#eaf5fc;border-radius:30px;padding:5px 10px;margin:3px;font-size:13px}.price{font-weight:bold;color:#dd6418}.button,button{background:#ff7518;color:white;border:0;padding:12px 20px;border-radius:24px;font-weight:bold;cursor:pointer;text-decoration:none;display:inline-block}label{display:block;font-weight:bold;font-size:14px;margin-bottom:12px}input,select,textarea{display:block;width:100%;padding:11px;border:1px solid #c5d8e7;border-radius:8px;margin-top:5px;font:inherit}textarea{min-height:90px}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.notice{background:#e7f6ec;border-radius:10px;padding:15px}.error{background:#ffeded;border-radius:10px;padding:15px}.muted{color:#657e90}footer{background:#063b72;color:white;padding:24px;text-align:center;margin-top:50px}.back{display:inline-block;margin-bottom:12px}@media(max-width:800px){.grid{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}}@media(max-width:550px){.grid,.two,.filters{grid-template-columns:1fr}.top nav{gap:10px}}
/* V3 accommodation catalogue design — scoped to browse page */
body:has(.stay-hero){background:#f6fbfe}.wrap:has(.stay-hero){max-width:none;padding:0;margin:0}.stay-hero{min-height:420px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(4,43,79,.93),rgba(5,70,118,.78) 60%,rgba(5,70,118,.42)),url('cape-town-coast.jpg') center/cover;color:white;padding:70px max(5%,calc((100% - 1140px)/2))}.stay-hero-copy{max-width:710px}.stay-kicker{font-size:11px;letter-spacing:2.3px;font-weight:900;color:#f57a27}.stay-hero .stay-kicker{color:#ffd2ae}.stay-hero h1{color:white;font-size:clamp(38px,5vw,64px);line-height:1.07;margin:13px 0}.stay-hero h1 em{font-style:normal;color:#74d5ff}.stay-hero p{font-size:18px;max-width:620px;color:#e6f5ff}.stay-hero-link{display:inline-block;margin-top:14px;color:white;border-bottom:2px solid #ff7518;text-decoration:none;font-weight:bold}.stay-search,.stay-results,.stay-help{max-width:1180px;margin:0 auto;padding:44px 20px}.stay-search{margin-top:-24px;position:relative;z-index:2;background:#fff;border-radius:18px;box-shadow:0 15px 40px #063b7218}.stay-search-heading{text-align:center}.stay-search-heading h2,.stay-results-head h2,.stay-help h2{font-size:clamp(27px,3vw,38px);margin:6px 0;color:#063b72}.stay-search-heading p{color:#647f93;margin:0 0 18px}.stay-search .filters{box-shadow:none;border:0;margin:0;padding:10px 0 0;grid-template-columns:1fr 1.2fr 1fr auto}.stay-search .filters label{margin:0;color:#0b4777}.stay-search .filters button{min-height:47px}.stay-results{padding-top:60px;padding-bottom:60px}.stay-results-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:25px}.stay-results-head h2{margin-bottom:0}.stay-results-head p{margin:5px 0 0}.stay-clear{font-weight:800;text-decoration:none}.stay-results .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.stay-results .property{box-shadow:0 10px 26px #063b7212;border-radius:17px;transition:transform .2s,box-shadow .2s}.stay-results .property:hover{transform:translateY(-3px);box-shadow:0 14px 30px #063b7226}.stay-photo{position:relative}.stay-photo img,.stay-photo .photo-placeholder{height:215px;width:100%;object-fit:cover}.stay-photo .photo-placeholder{display:grid;place-items:center}.stay-photo .photo-placeholder span{font-size:58px;color:#ffffffbb}.stay-photo-label{position:absolute;top:14px;left:14px;background:#fff;color:#075da8;font-size:12px;font-weight:900;border-radius:22px;padding:6px 12px}.stay-results .property .info{padding:21px}.stay-location{font-size:12px;color:#698397;font-weight:800;margin:0 0 6px}.stay-results .property h3{font-size:22px;line-height:1.25}.stay-desc{color:#60798c;font-size:14px;min-height:21px}.stay-meta{min-height:43px}.stay-meta .pill{font-size:11px;margin:2px 3px 2px 0}.stay-card-bottom{border-top:1px solid #e3edf4;margin-top:15px;padding-top:15px;display:flex;justify-content:space-between;gap:10px;align-items:end;flex-wrap:wrap}.stay-card-bottom .price{font-size:20px;margin:0}.stay-card-bottom small{font-size:11px;color:#71869a}.stay-card-bottom .button{font-size:13px;padding:10px 14px}.stay-empty{text-align:center;padding:42px}.stay-help{margin-bottom:48px;border-radius:20px;background:linear-gradient(115deg,#063b72,#0875bb);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:25px}.stay-help h2{color:white}.stay-help p{max-width:620px;color:#e3f2fc}.stay-help .button{flex-shrink:0}@media(max-width:900px){.stay-search .filters{grid-template-columns:1fr 1fr}.stay-results .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.stay-hero{min-height:360px;padding:45px 6% 70px}.stay-hero p{font-size:16px}.stay-search{margin:0 12px;border-radius:14px;padding:28px 16px}.stay-search .filters,.stay-results .grid{grid-template-columns:1fr}.stay-results{padding:38px 16px}.stay-results-head{align-items:start}.stay-help{margin:0 12px 30px;padding:28px 20px;display:block}.stay-help .button{margin-top:12px}}
