.dnt-hotels-page{margin:0;background:#f8fafc;color:#1a2d47;font-family:"Be Vietnam Pro","Segoe UI",sans-serif;font-size:12px}
.dnt-hotels-page h1,.dnt-hotels-page h2,.dnt-hotels-page h3{font-family:"Be Vietnam Pro","Segoe UI",sans-serif!important}
.hotel-hero{height:245px;background-image:linear-gradient(90deg,rgba(2,50,99,.93),rgba(0,70,124,.48) 58%,rgba(0,39,70,.05)),var(--hotel-hero);background-size:cover;background-position:center 51%;color:#fff}
.hotel-hero-inner{height:100%;display:flex;align-items:center;position:relative}
.hotel-hero h1{color:#fff!important;font-size:30px;font-weight:800;letter-spacing:-.025em;margin:0 0 8px}
.hotel-hero p{font-size:12px;line-height:1.75;margin:0}
.hotel-facts{display:flex;margin-top:20px}
.hotel-facts>span{display:flex;align-items:center;gap:8px;min-width:140px;padding-right:18px;margin-right:18px;border-right:1px solid rgba(255,255,255,.2)}
.hotel-facts>span:last-child{border-right:0}
.hotel-facts i{font-size:20px;font-style:normal}
.hotel-facts b{font-size:11px}
.hotel-facts small{display:block;margin-top:3px;font-size:10px;font-weight:400}
.hotel-search{position:absolute;right:0;bottom:9px;width:590px;height:60px;display:grid;grid-template-columns:1.45fr 1fr 1fr 1.1fr 98px;align-items:center;padding:6px;border-radius:9px;background:#fff;box-shadow:0 10px 25px rgba(0,38,78,.2)}
.hotel-search label{height:42px;padding:3px 11px;border-right:1px solid #e4eaf0}
.hotel-search small{display:block;color:#68778b;font-size:9px;font-weight:600}
.hotel-search input{width:100%;height:22px;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:#8290a1!important;font-size:9px!important}
.hotel-search button{height:43px;margin:0;border:0;border-radius:6px;background:#0875e1;color:#fff;font-size:11px;font-weight:700}
.hotel-layout{grid-template-columns:205px minmax(0,1fr)}
.hotel-results{min-width:0}
.hotel-results .results-head{height:auto;margin-bottom:20px;padding:2px 0 0}
.hotel-results .results-head h2{font-size:20px;letter-spacing:-.02em}
.hotel-results .results-head p{font-size:9px}
.hotel-grid{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 17px}
.hotel-card{min-width:0;display:flex;flex-direction:column;min-height:470px;overflow:hidden;border:1px solid #dce6ef;border-radius:12px;background:#fff;box-shadow:0 6px 20px rgba(22,59,97,.075);transition:transform .2s,box-shadow .2s,border-color .2s}
.hotel-card:hover{transform:translateY(-5px);border-color:#c8dbea;box-shadow:0 17px 34px rgba(22,59,97,.14)}
.hotel-image{height:185px;flex:none;position:relative;overflow:hidden;background:#eaf0f5}
.hotel-image:after{content:"";position:absolute;inset:auto 0 0;height:45px;background:linear-gradient(transparent,rgba(5,28,51,.13));pointer-events:none}
.hotel-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.hotel-card:hover .hotel-image img{transform:scale(1.045)}
.hotel-image>span{z-index:1;position:absolute;left:11px;top:11px;padding:6px 9px;border-radius:6px;background:#ff6048;color:#fff;font-size:9px;font-weight:800;box-shadow:0 5px 12px rgba(150,47,31,.2)}
.hotel-card:nth-child(2) .hotel-image>span{background:#1aac62}
.hotel-image>button{position:absolute;right:10px;top:9px;width:30px;height:30px;padding:0;border:0;background:transparent;color:#fff;font-size:23px;text-shadow:0 2px 7px rgba(0,0,0,.4)}
.hotel-body{display:flex;flex:1;flex-direction:column;padding:14px 14px 13px}
.hotel-body h3{min-height:42px;display:-webkit-box;overflow:hidden;color:#152a46!important;font-size:13px;font-weight:800;line-height:1.5;margin:0 0 5px;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.hotel-body h3 a{color:inherit;text-decoration:none}
.hotel-rating-row{min-height:20px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.hotel-stars{min-height:16px;color:#ffad00;font-size:10px;letter-spacing:1.5px}
.hotel-location{height:35px;display:-webkit-box;overflow:hidden;color:#69798d;font-size:10px;line-height:1.65;margin:7px 0 8px;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.hotel-location svg{width:12px;height:12px;margin-right:4px;vertical-align:-2px}
.hotel-summary{height:50px;display:-webkit-box;overflow:hidden;margin:0 0 9px;color:#4a5f76;font-size:10px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.hotel-amenities{height:38px;display:-webkit-box;overflow:hidden;padding:6px 8px;border-radius:7px;background:#f3f8fd;color:#55708c;font-size:9px;font-weight:550;line-height:1.55;margin:0 0 10px;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.hotel-price{display:flex;align-items:baseline;gap:3px;margin-top:auto;padding-top:2px}
.hotel-price b{color:#076edb;font-size:14px}
.hotel-price span{color:#7b899a;font-size:9px}
.hotel-detail{height:34px;display:grid;place-items:center;margin-top:auto;border:1px solid #bdd8f2;border-radius:7px;background:#f6faff;color:#0875e1;font-size:10px;font-weight:750;text-decoration:none;transition:background .2s,border-color .2s,color .2s}
.hotel-price+.hotel-detail{margin-top:10px}
.hotel-detail:hover{border-color:#0875e1;background:#0875e1;color:#fff}
.hotel-trust{margin-top:0}
@media(max-width:1200px){.hotel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){.hotel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-layout{grid-template-columns:190px minmax(0,1fr);gap:22px}.hotel-search{width:520px}}
@media(max-width:800px){.hotel-hero{height:315px}.hotel-hero-inner{align-items:flex-start;padding-top:45px}.hotel-search{left:0;right:0;width:auto}.hotel-layout{grid-template-columns:1fr}.hotel-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.hotel-hero h1{font-size:25px}.hotel-hero p br{display:none}.hotel-facts>span:nth-child(n+3){display:none}.hotel-facts>span{min-width:0}.hotel-search{grid-template-columns:1fr 95px}.hotel-search label:nth-child(n+2){display:none}.hotel-grid{display:flex;overflow:auto}.hotel-card{min-width:275px}}
