
:root{--detail-blue:#003171;--detail-accent:#007cc2;--detail-border:#d6e4f0;--detail-text:#101c31}*{box-sizing:border-box}html{scroll-behavior:smooth}body{overflow-x:hidden}.detail-container{width:min(1224px,calc(100% - 40px));margin:0 auto;padding:25px 0 45px;color:var(--detail-text);font-family:Arial,Helvetica,sans-serif}.detail-container a{text-decoration:none}.breadcrumbs{font-size:12px;margin-bottom:16px;color:#41536a}.breadcrumbs a{color:#003171}.hotel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.hotel-heading h1{font-size:clamp(24px,2.5vw,34px);letter-spacing:-.7px;margin:0 0 10px;font-weight:800}.location{font-size:13px;margin:0}.muted{color:#69788c}.rating-pill{background:#edf6ff;color:#003171;padding:10px 14px;border-radius:30px;font-size:12px;white-space:nowrap}.panel{background:white;border:1px solid var(--detail-border);box-shadow:0 4px 13px #082b4a12;border-radius:14px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(290px,.85fr);gap:18px;align-items:start}.gallery{padding:10px}.gallery-main{position:relative}.gallery-main>img{width:100%;height:365px;object-fit:cover;border-radius:9px;display:block}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#003171;font-size:19px;cursor:pointer;box-shadow:0 3px 12px #0002}.gallery-arrow.prev{left:12px}.gallery-arrow.next{right:12px}.thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:9px}.thumb{padding:0;border:2px solid transparent;background:none;border-radius:8px;overflow:hidden;cursor:pointer}.thumb.active{border-color:#007cc2}.thumb img{display:block;width:100%;height:64px;object-fit:cover}.booking h2{background:linear-gradient(135deg,#003171,#007cc2);color:white;text-align:center;font-size:18px;padding:17px 10px;margin:0}.booking form{padding:16px;display:grid;gap:7px}.booking label{font-size:12px;font-weight:700;margin-top:5px}.booking input,.booking select{height:40px;width:100%;border:1px solid #c8d4df;border-radius:7px;padding:0 11px;background:#fff;font:inherit;font-size:13px;min-width:0}.btn-primary{border:0;background:linear-gradient(135deg,#003171,#007cc2);color:white;font-size:12px;font-weight:700;padding:11px 15px;border-radius:8px;cursor:pointer;text-decoration:none;white-space:nowrap}.btn-primary:hover{filter:brightness(1.1)}.wide{width:100%;margin-top:12px;font-size:14px}.form-note{font-size:11px;line-height:1.5;text-align:center;color:#637186;margin:5px 0 0}.content-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,.7fr);gap:18px;margin-top:18px;align-items:start}.primary-column,.sidebar{display:grid;gap:16px;min-width:0}.partner-notice{display:flex;align-items:center;gap:20px;padding:17px 22px;background:linear-gradient(110deg,#fff,#e9f5ff)}.partner-icon{flex:none;display:grid;place-items:center;width:65px;height:65px;border-radius:50%;background:#003171;color:white;font-size:35px}.detail-container h2{font-size:19px;line-height:1.3;margin:0 0 10px}.partner-notice p,.overview p,.sidebar p{font-size:13px;line-height:1.6;margin:0}.overview{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:20px;padding:18px}.overview>img{width:100%;height:160px;object-fit:cover;border-radius:9px}.amenities{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;font-size:12px;color:#003171}.rooms{padding:17px}.room-intro{font-size:11px;margin:0 0 10px}.room-row{display:grid;grid-template-columns:112px minmax(0,1fr) 165px;align-items:center;gap:14px;padding:13px 0;border-top:1px solid #e0e8f0}.room-row>img{width:112px;height:80px;object-fit:cover;border-radius:7px}.room-info h3{font-size:14px;margin:0 0 8px}.room-info p{font-size:11px;color:#607085;line-height:1.6;margin:0}.room-action{text-align:right;display:flex;flex-direction:column;align-items:end;gap:4px}.room-action>span{font-weight:800;font-size:15px}.room-action small{color:#69788c;font-size:10px}.room-action button{margin-top:6px}.sidebar-card{padding:20px}.help-phone{display:inline-block;color:#003171;font-size:19px;font-weight:800;margin:10px 0}.check-list{list-style:none;padding:0;margin:0}.check-list li{padding:8px 0;font-size:13px;border-bottom:1px solid #eef2f6}.check-list li:before{content:'✓';display:inline-grid;place-items:center;width:19px;height:19px;background:#007cc2;color:white;border-radius:50%;margin-right:8px}.policy{padding:11px 0;border-top:1px solid #e5edf3}.policy b{font-size:13px}.policy p{margin-top:5px;font-size:12px}.location-section{margin-top:20px;padding:20px}.location-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:24px}.map-placeholder{min-height:190px;background:linear-gradient(130deg,#dff0e6,#e5f3ff);border-radius:10px;padding:22px;display:flex;flex-direction:column;justify-content:center;gap:12px}.map-placeholder strong{font-size:16px}.map-placeholder span{font-size:12px}.map-placeholder a{color:#003171;font-size:13px;font-weight:bold}.location-grid h3{margin:4px 0 12px;font-size:16px}.location-grid p{font-size:13px;line-height:1.6}.mobile-actions{display:none}@media(max-width:900px){.hero-grid,.content-grid{grid-template-columns:1fr}.booking{max-width:none}.booking form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.booking label{grid-column:span 1}.booking input,.booking select{grid-column:span 1}.booking .wide,.booking .form-note{grid-column:1/-1}.gallery-main>img{height:350px}.sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-card:last-child{grid-column:1/-1}}@media(max-width:600px){.detail-container{width:calc(100% - 24px);padding-top:16px;padding-bottom:75px}.hotel-heading{display:block}.rating-pill{display:inline-block;margin-top:12px}.gallery-main>img{height:240px}.thumbs{gap:5px}.thumb img{height:49px}.booking form{display:flex;flex-direction:column;gap:6px}.booking label{margin-top:5px}.overview{grid-template-columns:1fr}.overview>img{height:170px}.partner-notice{padding:14px;gap:12px}.partner-icon{width:45px;height:45px;font-size:26px}.detail-container h2{font-size:17px}.room-row{grid-template-columns:80px minmax(0,1fr);gap:10px}.room-row>img{width:80px;height:75px}.room-action{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left;gap:4px}.room-action small{grid-column:1}.room-action button{grid-column:2;grid-row:1/3;margin:0}.sidebar{grid-template-columns:1fr}.sidebar-card:last-child{grid-column:auto}.location-grid{grid-template-columns:1fr}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;background:white;padding:9px 12px;box-shadow:0 -4px 18px #0002;z-index:999}.mobile-actions a{text-align:center;background:#003171;color:white;padding:12px;border-radius:8px;font-weight:bold;font-size:13px}.mobile-actions a:last-child{background:#007cc2}}
/* Reference-style rating and room thumbnail carousels */
.hotel-heading{align-items:flex-start}.hotel-heading h1{margin-bottom:8px}
.rating-pill{display:flex;align-items:center;gap:10px;background:transparent;padding:6px 0;white-space:normal}
.stars{color:#f5a900;font-size:21px;letter-spacing:2px}.rating-score{background:#e9f3fc;color:#003171;border-radius:20px;padding:6px 10px;font-weight:700}
.room-row{grid-template-columns:112px minmax(0,1fr) 165px;padding:10px 0}
.room-photo-slider{position:relative;width:112px;height:82px;overflow:hidden;border-radius:8px;background:#e8f3fb}
.room-photo-slider img{width:100%;height:100%;object-fit:cover;display:block}
.room-photo-slider button{position:absolute;top:36%;background:#fffdf0e8;border:0;border-radius:50%;width:22px;height:22px;cursor:pointer;color:#003171;font-weight:800}
.room-photo-prev{left:3px}.room-photo-next{right:3px}.room-photo-count{position:absolute;bottom:3px;right:5px;background:#102d4bbd;color:#fff;font-size:9px;border-radius:6px;padding:2px 4px}
.room-features{display:flex;gap:13px;flex-wrap:wrap;color:#003171!important}
.room-info h3{font-size:14px;font-weight:800}
@media(max-width:600px){.room-row{grid-template-columns:90px minmax(0,1fr)}.room-photo-slider{width:90px;height:80px}.rating-pill{margin-top:5px}.stars{font-size:16px}.room-features{gap:6px}.room-features span{font-size:10px}}

/* Reference screenshot: centered heading, gold rating, black/gold form */
.hotel-heading{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;margin-bottom:20px}.hotel-heading h1{font-size:clamp(26px,3vw,36px);margin:0;font-weight:800}.reference-rating{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.gold-stars{color:#f5a000;letter-spacing:2px;font-size:20px}.rating-outline{border:1px solid #d6a873;border-radius:22px;padding:3px 12px;font-size:12px;font-weight:800}.hotel-heading .location{font-size:13px;margin:0}.hero-grid{grid-template-columns:minmax(0,2.36fr) minmax(310px,1fr)}.gallery-main>img{height:375px}.booking h2{background:#000!important;color:white;font-size:18px;padding:15px}.booking form{display:flex;flex-direction:column;gap:0;padding:16px}.booking label{font-size:11px;font-weight:800;margin:0 0 7px;color:#111}.booking input,.booking select{height:41px;width:100%;border:1px solid #e5cba9;border-radius:5px;margin-bottom:12px;font-size:12px}.booking-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.booking-pair>div{min-width:0}.reference-submit{background:#d6a873;color:#fff;border:0;border-radius:5px;height:40px;font-size:13px;font-weight:800;cursor:pointer;margin-bottom:12px}.reference-security{border:1px solid #e5cba9;border-radius:6px;padding:11px 8px;text-align:center;font-size:10px;font-weight:800;margin:0}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.booking form{display:flex;flex-direction:column}}@media(max-width:600px){.hotel-heading h1{font-size:26px}.gallery-main>img{height:235px}.booking-pair{gap:9px}}

/* V23: responsive jQuery UI and Select2 booking controls */
.booking{overflow:visible!important}.booking form{overflow:visible!important}
.booking .select2-container{width:100%!important;max-width:100%;margin-bottom:12px}
.booking .select2-container--default .select2-selection--single{height:41px;border:1px solid #e5cba9;border-radius:5px;display:flex;align-items:center}
.booking .select2-container--default .select2-selection--single .select2-selection__rendered{padding-left:12px;font-size:12px;color:#343b45;line-height:39px}
.booking .select2-container--default .select2-selection--single .select2-selection__arrow{height:39px;right:6px}
.booking .select2-dropdown{border:1px solid #e5cba9;border-radius:5px;box-shadow:0 8px 22px #102a4522;overflow:hidden}
.booking .select2-results__option{font-size:12px;padding:9px 12px}
.booking .select2-container--default .select2-results__option--highlighted[aria-selected]{background:#003171}
.ui-datepicker{z-index:99999!important;width:290px;max-width:calc(100vw - 24px);padding:9px;border:1px solid #e5cba9;border-radius:9px;box-shadow:0 12px 32px #17263d25;font:12px Arial,sans-serif}
.ui-datepicker .ui-datepicker-header{background:#edf5fd;border:0;border-radius:6px;color:#003171}
.ui-datepicker .ui-state-default{border:1px solid #e4e9ee;background:#fff;text-align:center;padding:7px 0;border-radius:4px}
.ui-datepicker .ui-state-active,.ui-datepicker .ui-state-hover{background:#003171;color:white;border-color:#003171}
.room-photo-slider img{width:100%;height:100%;object-fit:cover;border-radius:7px}
.policy-list{list-style:none;padding:0;margin:8px 0}.policy-list li{padding:7px 0;border-bottom:1px solid #e9eef3;font-size:12px}.policy-list li:before{content:'✓';color:#078a5a;font-weight:800;margin-right:9px}
@media(max-width:600px){.booking .select2-container--default .select2-selection--single{height:43px}.booking .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:41px}.booking .select2-container--default .select2-selection--single .select2-selection__arrow{height:41px}}

/* V24 – Professional property detail refinement, original layout retained */
:root{--tarangi-blue:#003171;--tarangi-blue-light:#087cc3;--tarangi-sky:#eaf5fd}
.booking>h2{background:linear-gradient(105deg,#003171,#006198)!important;color:#fff!important}
.reference-submit{background:linear-gradient(105deg,#003171,#0078b7)!important;box-shadow:0 6px 12px #00317124}
.reference-submit:hover{background:linear-gradient(105deg,#002659,#006198)!important}
.partner-notice{display:grid!important;grid-template-columns:100px minmax(0,1fr) 185px;gap:20px;align-items:center;padding:22px 24px!important;background:linear-gradient(110deg,#f7fbff,#e9f4fc)!important;border:1px solid #c8e2f6!important;box-shadow:0 7px 23px #002e6610}
.partner-notice .badge-art{height:94px;width:94px;display:grid;place-items:center}
.partner-notice .badge-art img{width:100%;height:100%;object-fit:contain}
.partner-notice .badge-art.badge-fallback:before{content:'✓';display:grid;place-items:center;width:78px;height:78px;background:linear-gradient(135deg,#003171,#0094d4);border:5px solid #d3eaff;outline:2px solid #003171;border-radius:50%;color:#fff;font-size:44px;font-weight:800}
.partner-notice .notice-copy h2{margin:5px 0 8px;font-size:21px;color:#0a1d3e}
.partner-notice .notice-copy p{font-size:12.5px;line-height:1.75;color:#3c5067;margin:0}
.section-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;color:#007ebc;text-transform:uppercase}
.notice-aside{border-left:1px solid #a9cce3;padding-left:19px;display:flex;flex-direction:column;gap:5px;color:#003171}
.notice-aside>span{display:grid;place-items:center;background:#d9efff;color:#007bb5;width:35px;height:35px;border-radius:10px;font-size:23px}
.notice-aside strong{font-size:13px;line-height:1.35}.notice-aside small{font-size:11px;line-height:1.5;color:#536b83}
.premium-overview{display:grid!important;grid-template-columns:minmax(0,1.75fr) minmax(230px,.8fr);gap:23px;align-items:stretch;padding:25px!important;background:linear-gradient(140deg,#fff 60%,#f0f8ff)}
.premium-overview .overview-copy{min-width:0}
.premium-overview h2{font-size:23px!important;line-height:1.35;color:#071b3b;margin:10px 0 14px!important}
.premium-overview h2 span{color:#006198}
.premium-overview p{font-size:12.7px!important;line-height:1.85!important;color:#3e5066!important;margin:0 0 12px!important}
.overview-advisory{display:flex;align-items:flex-start;gap:10px;background:#eaf5fd;border-left:3px solid #0488c5;border-radius:0 8px 8px 0;padding:11px 13px;margin:16px 0}
.overview-advisory .advisory-icon{color:#0076b2;font-size:21px;font-weight:800}
.overview-advisory p{margin:0!important;font-size:12px!important;line-height:1.65!important}
.overview-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.overview-tags span{padding:7px 10px;background:#f0f8fe;border:1px solid #d5eaf9;color:#003171;font-size:10.5px;font-weight:700;border-radius:20px}
.premium-overview .overview-visual{min-width:0;position:relative;overflow:hidden;border-radius:12px;min-height:290px;background:#e5f2fb}
.premium-overview .overview-visual>img{width:100%;height:100%;min-height:290px;object-fit:cover;display:block}
.visual-overlay{position:absolute;bottom:0;left:0;right:0;padding:28px 18px 17px;background:linear-gradient(transparent,#001a3bcb);color:#fff;display:flex;flex-direction:column;gap:4px}
.visual-overlay span{font-size:9px;letter-spacing:1.8px}.visual-overlay strong{font-size:16px}
.sidebar-card{border:1px solid #d7e7f4!important;box-shadow:0 5px 17px #002c5610!important}
.sidebar-card h2{color:#081d3b!important}
.inclusion-list{list-style:none;padding:0;margin:12px 0 0}
.inclusion-list li{font-size:12px;line-height:1.5;padding:10px 0 10px 27px;position:relative;border-bottom:1px solid #eaf0f6;color:#344a61}
.inclusion-list li:last-child{border:0}
.inclusion-list li:before{content:'✓';position:absolute;left:0;top:10px;background:#0079b7;color:#fff;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800}
.location-grid iframe{width:100%;height:260px;border:0;border-radius:10px}
@media(max-width:1100px){.partner-notice{grid-template-columns:85px minmax(0,1fr)}.notice-aside{grid-column:2;border-left:0;border-top:1px solid #c9dfea;padding:12px 0 0}.premium-overview{grid-template-columns:1fr}.premium-overview .overview-visual{height:250px;min-height:250px}.premium-overview .overview-visual>img{min-height:250px}}
@media(max-width:650px){.partner-notice{grid-template-columns:65px minmax(0,1fr);padding:15px!important;gap:12px}.partner-notice .badge-art{width:65px;height:65px}.partner-notice .badge-art.badge-fallback:before{width:50px;height:50px;font-size:30px;border-width:3px}.partner-notice .notice-copy h2{font-size:17px}.partner-notice .notice-copy p{font-size:11.5px}.notice-aside{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;flex-wrap:wrap}.notice-aside small{width:100%}.premium-overview{padding:16px!important;gap:15px}.premium-overview h2{font-size:19px!important}.premium-overview .overview-visual{height:210px;min-height:210px}.premium-overview .overview-visual>img{min-height:210px}.overview-tags span{font-size:10px}}

/* V25 – precise map width, external badge asset, floating quick actions */
.location-section{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden;margin:18px 0 0!important;padding:22px!important}
.primary-column>.location-section{grid-column:auto}
.location-section>h2{display:flex;align-items:center;gap:9px;font-size:21px!important;font-weight:800!important;margin:0 0 16px!important;color:#0a1d3b}
.location-grid{display:grid!important;grid-template-columns:minmax(0,1.6fr) minmax(210px,.8fr)!important;align-items:stretch;gap:18px;min-width:0;width:100%}
.location-grid iframe{width:100%!important;min-width:0;height:265px!important;border-radius:12px!important}
.location-address{background:linear-gradient(140deg,#f4faff,#e7f3fd);border:1px solid #d4e9f7;border-radius:12px;padding:20px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0}
.location-address-icon{width:42px;height:42px;display:grid;place-items:center;background:#e0f2ff;color:#006198;border-radius:11px;font-size:21px;margin-bottom:12px}
.location-address h3{font-size:17px;margin:0 0 10px;color:#0a1d3b}
.location-address p{font-size:13px;line-height:1.8;color:#43536a;margin:0 0 17px;overflow-wrap:anywhere}
.location-map-link{color:#006198;font-size:12px;font-weight:800;text-decoration:none;border:1px solid #a8d4ed;border-radius:8px;padding:10px 12px;background:white}
.partner-notice .badge-art.badge-fallback:before{content:none!important;display:none!important}
.partner-notice .badge-art img{display:block;width:100%;height:100%;object-fit:contain}
.rrd-quick-float{position:fixed;right:17px;top:50%;transform:translateY(-50%);z-index:999;display:flex;flex-direction:column;gap:9px;align-items:stretch}
.rrd-quick-float a,.rrd-quick-float button{appearance:none;border:0;text-decoration:none;cursor:pointer;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:75px;min-height:66px;border-radius:10px;color:#fff;box-shadow:0 6px 17px #061b3240;font:700 11px/1.15 Arial,sans-serif;text-align:center;padding:8px}
.rrd-quick-call{background:linear-gradient(150deg,#0068a8,#003171)}
.rrd-quick-enq{background:linear-gradient(150deg,#e3bb82,#c7985e)}
.rrd-quick-float i{font-size:23px}
.rrd-quick-float a:hover,.rrd-quick-float button:hover{filter:brightness(1.08);transform:translateY(-1px)}
@media(max-width:950px){.location-grid{grid-template-columns:1fr!important}.location-grid iframe{height:280px!important}.location-address{padding:18px}}
@media(max-width:650px){.location-section{padding:15px!important;margin-top:14px!important}.location-section>h2{font-size:19px!important}.location-grid{gap:12px}.location-grid iframe{height:240px!important}.rrd-quick-float{right:8px;gap:7px}.rrd-quick-float a,.rrd-quick-float button{width:57px;min-height:55px;font-size:9px;border-radius:8px;padding:5px}.rrd-quick-float i{font-size:18px}}

/* V26: independent left call / right WhatsApp and blue quick enquiry */
.rrd-quick-float{right:16px;top:calc(50% - 80px);transform:translateY(-50%)}
.rrd-quick-enq{background:linear-gradient(150deg,#0488c5,#003171)!important}
.call-icon,.whatsapp-float{position:fixed;z-index:1000;top:60%;transform:translateY(-50%);line-height:0}
.call-icon{left:18px}.whatsapp-float{right:18px;top:calc(60% + 65px)}
.call-icon a,.whatsapp-float a{display:block;line-height:0}
.call-icon img,.whatsapp-float img{width:50px;height:50px;object-fit:contain;display:block;filter:drop-shadow(0 3px 6px #10263b24)}
.reference-security{display:flex!important;align-items:center;justify-content:center;gap:8px;line-height:1.45;text-align:center}
.reference-security img{width:19px;height:19px;flex:none;object-fit:contain}
@media(max-width:650px){.call-icon{left:8px}.whatsapp-float{right:8px;top:calc(60% + 58px)}.call-icon img,.whatsapp-float img{width:43px;height:43px}.rrd-quick-float{right:8px;top:calc(50% - 75px)}.reference-security{font-size:10px;gap:5px}}

/* V27: right-hand Call + Quick Enquiry restored, side icons pinned neatly */
.rrd-quick-float{position:fixed!important;right:16px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;z-index:1002!important;gap:9px!important}
.rrd-quick-call{background:linear-gradient(145deg,#006198,#003171)!important}
.rrd-quick-enq{background:linear-gradient(145deg,#0488c5,#003171)!important}
.call-icon{position:fixed!important;left:18px!important;right:auto!important;top:90%!important;bottom:auto!important;transform:translateY(-50%)!important;z-index:1000!important}
.whatsapp-float{position:fixed!important;right:18px!important;left:auto!important;top:90%!important;bottom:auto!important;transform:translateY(-50%)!important;z-index:1000!important}
@media(max-width:650px){
 .rrd-quick-float{right:8px!important;top:48%!important;gap:7px!important}
 .call-icon{left:8px!important;top:76%!important}
 .whatsapp-float{right:8px!important;top:78%!important}
}
