/* Public hotel details: layout and spacing from UI/hotel, with existing site data. */
#page #main.hotel-detail-template{background:#fff;color:var(--brand-ink);font:400 14px/1.6 'ZP Poppins',Poppins,sans-serif;margin:0;padding:0;max-width:none;width:100%}
#main.hotel-detail-template *{box-sizing:border-box}
#main.hotel-detail-template :is(h1,h2,h3,p,figure,ul){margin:0;padding:0;letter-spacing:normal;color:inherit}
#main.hotel-detail-template :is(button,input,select,textarea,a){font:inherit;letter-spacing:normal}
#main.hotel-detail-template a{color:inherit;text-decoration:none}
#main.hotel-detail-template button{cursor:pointer;box-shadow:none}
#main.hotel-detail-template [hidden]{display:none!important}
#main.hotel-detail-template .hd-container{width:100%;max-width:1280px;margin:0 auto!important;padding:0 24px}
#main.hotel-detail-template .hd-heading{padding:40px 0 104px;background:var(--brand-surface)}
.hd-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;color:var(--brand-muted);font-size:13px}
#main .hd-breadcrumbs [aria-current]{color:var(--brand-ink)}
.hd-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:10px}
#main.hotel-detail-template h1{font-size:clamp(30px,5vw,52px);font-weight:600;line-height:1.25}
.hd-category{border-radius:999px;padding:5px 12px;background:#f3e3d3;color:#8a4b1f;font-size:11px;font-weight:600;line-height:1}
.hd-category[data-category=standard]{background:#f0f1f3;color:#5b5f66}.hd-category[data-category=deluxe]{background:var(--brand-badge);color:var(--brand-accent-strong)}
.hd-stars{font-size:12px;color:var(--brand-muted)}.hd-stars>span,.hd-meta-star{color:var(--brand-accent)}
.hd-meta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:4px;font-size:13.5px;line-height:1.5}
.hd-meta a{display:inline-flex;align-items:center;gap:8px}
.hd-meta a:not(:last-child){border-right:1px solid var(--brand-border);padding-right:20px}
.hd-meta svg{flex-shrink:0;width:16px;height:16px;fill:none;stroke:var(--brand-accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#main.hotel-detail-template .hd-gallery-wrap{position:relative;z-index:1;margin-top:-56px!important;margin-bottom:18px!important}
.hd-gallery{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,.5fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;height:440px;overflow:hidden;border-radius:16px;background:var(--brand-surface)}
#main.hotel-detail-template .hd-photo{position:relative;display:block;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;padding:0;border:0;border-radius:0;background:#f0f1f3}
.hd-photo:first-child{grid-row:1/4}
#main .hd-photo img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform .25s ease}
.hd-photo:hover img{transform:scale(1.035)}
.hd-gallery[data-photo-count="1"]{grid-template-columns:1fr}.hd-gallery[data-photo-count="2"]{grid-template-columns:1.6fr 1fr}.hd-gallery[data-photo-count="2"] .hd-photo{grid-row:1/4}
.hd-gallery[data-photo-count="3"]{grid-template-columns:1.6fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr))}.hd-gallery[data-photo-count="3"] .hd-photo:first-child{grid-row:1/3}
.hd-gallery[data-photo-count="4"]{grid-template-columns:1.6fr 1fr}.hd-gallery[data-photo-count="5"]{grid-template-rows:repeat(2,minmax(0,1fr))}.hd-gallery[data-photo-count="5"] .hd-photo:first-child{grid-row:1/3}
.hd-gallery[data-photo-count="6"] .hd-photo:last-child{grid-column:2/4}
.hd-photo-more{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(var(--brand-primary-rgb),0.533);color:#fff;font-size:14px;font-weight:500}
#main.hotel-detail-template .hd-all-photos{position:absolute;bottom:16px;right:40px;padding:9px 14px;border:1px solid var(--brand-border);border-radius:8px;background:#fff;color:var(--brand-ink);font-size:12px;box-shadow:0 4px 16px #0001}
#main.hotel-detail-template .hd-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:56px;padding-top:36px;padding-bottom:64px}
.hd-content,.hd-sidebar{min-width:0}
#main.hotel-detail-template .hd-section{margin:0 0 32px!important;padding:0 0 32px;border-bottom:1px solid var(--brand-border);scroll-margin-top:calc(var(--zp-header-height,129px) + 20px)}
#main.hotel-detail-template h2{margin-bottom:14px;font-size:22px;font-weight:600;line-height:1.4}
#main.hotel-detail-template h3{margin-bottom:14px;font-size:18px;font-weight:600;line-height:1.4}
.hd-description{font-size:16px;line-height:1.7;color:rgba(var(--brand-ink-rgb),0.702);overflow-wrap:anywhere}
#main .hd-section>p{margin-bottom:16px;color:rgba(var(--brand-ink-rgb),0.749);font-size:14.5px}
#main.hotel-detail-template .hd-rooms{display:flex;flex-wrap:wrap;gap:10px;list-style:none}
.hd-rooms li{display:flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid var(--brand-border);border-radius:8px;font-size:13px}
.hd-amenities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 16px}
.hd-amenities>div{display:flex;align-items:center;gap:10px;font-size:13px}
#main .zp-detail-icon{display:inline-flex;flex:0 0 22px;width:22px;height:22px;color:var(--brand-accent)}
#main .zp-detail-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.hd-map{position:relative;height:220px;overflow:hidden;border-radius:16px;background:#eaf1ec}
.hd-map iframe{display:block;width:100%;height:100%;border:0}
#main .hd-map>a{position:absolute;bottom:14px;right:16px;padding:8px 14px;border-radius:8px;background:#fff;font-size:12.5px;box-shadow:0 6px 16px #1010101f}
.hd-sidebar{position:sticky;top:calc(var(--zp-header-height,129px) + 24px)}
.hd-enquiry-card{padding:22px;border:1px solid var(--brand-border);border-radius:16px;background:#fff;box-shadow:0 8px 26px #00000007}
#main .hd-enquiry-card h2{margin-bottom:6px;font-size:15px}
#main .hd-enquiry-card>p{margin-bottom:16px;color:var(--brand-muted);font-size:12.5px;line-height:1.65}
.hd-price{margin-bottom:16px;color:var(--brand-ink);font-size:18px;font-weight:600}.hd-price>span{color:var(--brand-muted);font-size:11px;font-weight:400}
.hd-enquiry-form{display:grid;gap:12px;margin:0}
#main.hotel-detail-template .hd-enquiry-form .form-captcha{grid-template-columns:120px minmax(0,1fr) 34px;align-items:center;gap:6px;margin:0;padding:0;border:0;background:transparent}
#main.hotel-detail-template .hd-enquiry-form .form-captcha-challenge{display:contents}
#main.hotel-detail-template .hd-enquiry-form .form-captcha-challenge img{grid-column:1;grid-row:1;width:120px!important;height:39px!important;border-color:var(--brand-border)}
#main.hotel-detail-template .hd-enquiry-form .form-captcha button[data-captcha-refresh]{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:center;width:34px;height:39px;min-height:0;padding:0;border-color:var(--brand-border);color:var(--brand-ink)!important}
#main.hotel-detail-template .hd-enquiry-form .form-captcha input[name=captcha_answer]{grid-column:2;grid-row:1;min-height:39px;height:39px;padding:7px 8px;text-align:center;font-size:12px;border-color:var(--brand-border)}
#main.hotel-detail-template .hd-enquiry-form .form-captcha>label,#main.hotel-detail-template .hd-enquiry-form .form-captcha small:not(.form-captcha-status){position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
#main.hotel-detail-template .hd-enquiry-form .form-captcha-status{grid-column:1/-1;font-size:10px;line-height:1.4}
.hd-field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hd-phone-fields{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px}
.hd-beds-field{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:2px}
#main.hotel-detail-template .hd-beds-field>label{margin:0;color:var(--brand-ink);font-size:13px;line-height:1.5}
.hd-bed-counter{display:flex;align-items:center;gap:12px;border:0;background:transparent}
#main.hotel-detail-template .hd-bed-counter input[name=number-of-beds]{flex:0 0 auto;width:14px;min-width:14px;min-height:28px;height:28px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--brand-ink);font-size:13.5px;font-weight:500;text-align:center;appearance:textfield;-moz-appearance:textfield}
#main.hotel-detail-template .hd-bed-counter input::-webkit-inner-spin-button,#main.hotel-detail-template .hd-bed-counter input::-webkit-outer-spin-button{appearance:none;-webkit-appearance:none;margin:0}
#main.hotel-detail-template .hd-bed-counter button{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;margin:0;padding:0;border:1px solid var(--brand-border);border-radius:50%;background:#fff!important;color:var(--brand-ink)!important;font-size:16px;font-weight:400;line-height:1}
#main.hotel-detail-template .hd-bed-counter button:hover:enabled{background:#f5f5f5!important;border-color:#bdbdbd}
#main.hotel-detail-template .hd-bed-counter button:disabled{opacity:.45;cursor:default}
#main.hotel-detail-template .hd-bed-counter :is(button,input):focus-visible{outline-offset:3px}
.hd-enquiry-form label{display:grid;min-width:0;gap:5px;color:var(--brand-muted);font-size:11px}
#main.hotel-detail-template :is(input:not([type=hidden]),select,textarea){width:100%;min-width:0;min-height:42px;padding:10px 12px;margin:0;border:1px solid var(--brand-border);border-radius:8px;background:#fff;color:var(--brand-ink);font-size:12px;line-height:1.5;box-shadow:none}
#main.hotel-detail-template textarea{resize:vertical}
#main.hotel-detail-template :is(input,textarea)::placeholder{color:var(--brand-muted);opacity:1}
#main.hotel-detail-template :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--brand-accent);outline-offset:3px}
#main.hotel-detail-template .hd-button,#main.hotel-detail-template .review-submit-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 18px;border:0;border-radius:8px;background:var(--brand-accent)!important;color:#fff!important;font-size:13px;font-weight:500;text-decoration:none}
#main .hd-button:hover,#main .review-submit-btn:hover{background:var(--brand-accent-strong)!important}
#main .hd-button:disabled,#main .review-submit-btn:disabled{cursor:wait;opacity:.65}
#main .hotel-form-status{font-size:12px}.hotel-form-status:empty{display:none}
.hd-help{margin-top:20px;padding:20px;border:1px solid #d8eadf;border-radius:16px;background:#f3faf6}
.hd-help-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.hd-help-heading>div{min-width:0}
.hd-help-icon{display:flex;align-items:center;justify-content:center;flex:0 0 42px;height:42px;border:1px solid #d8eadf;border-radius:12px;background:#fff;color:#006124}
.hd-help-icon svg{display:block;width:23px;height:23px;fill:currentColor}
#main.hotel-detail-template .hd-help h3{margin:0 0 5px;color:#174b36;font-size:15px;font-weight:600;line-height:1.4}
#main.hotel-detail-template .hd-help p{margin:0;color:#657b6f;font-size:12px;line-height:1.65}
#main.hotel-detail-template .hd-help-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:44px;padding:11px 14px;border:1px solid #006124;border-radius:9px;background:#006124;color:#fff;font-size:12px;font-weight:500;text-align:center;transition:background-color .15s ease,border-color .15s ease}
#main.hotel-detail-template .hd-help-button:hover{background:#0b4a34;border-color:#0b4a34}
.hd-help-button svg{flex-shrink:0}
.hd-review-heading,.hd-related-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
#main .hd-review-heading h2,#main .hd-related-heading h2{margin:0}#main .hd-review-heading>a,#main .hd-related-heading>a{flex-shrink:0;color:var(--brand-accent);font-size:12px}
.hd-review-summary{display:flex;align-items:center;gap:22px;margin-bottom:22px;padding:16px 19px;border:1px solid var(--brand-border);border-radius:14px;background:#fff}
.hd-review-score{position:relative;display:grid;min-width:126px;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:10px;padding-right:20px;border-right:1px solid var(--brand-border);font-size:10px;color:var(--brand-muted)}.hd-review-score strong{grid-row:1/3;color:var(--brand-ink);font-size:28px;font-weight:600;line-height:1.15}.hd-review-stars{color:#ff821e;font-size:12px;letter-spacing:1px;white-space:nowrap}
#main .rating-breakdown{display:grid;flex:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px;width:100%}#main .rating-bar{display:flex;align-items:center;gap:8px;min-width:0;font-size:10.5px}#main .rating-bar>span{width:64px;flex:0 0 auto;white-space:nowrap}#main .rating-bar>div{display:flex;align-items:center;gap:8px;flex:1;min-width:0}#main .rating-bar>div>span{width:32px;flex:0 0 auto;text-align:right;color:var(--brand-muted)}#main .bar{flex:1;height:5px;border-radius:999px;background:#eee;overflow:hidden}#main .filled-bar{height:100%;border-radius:inherit;background:#ff821e}
.hd-review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 14px;color:var(--brand-ink);font-size:12px}.hd-review-toolbar label{min-width:140px}.hd-review-toolbar select{width:100%;min-height:40px;padding:8px 30px 8px 12px;border:1px solid var(--brand-border);border-radius:9px;background:#fff;color:var(--brand-ink);font-size:12px}
#main .reviews-list{display:block}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.review-item{position:relative;display:flex;min-width:0;min-height:220px;flex-direction:column;padding:17px 18px;border:1px solid var(--brand-border);border-radius:14px;background:#fff}.review-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.review-card-heading h3{min-width:0;font-size:12.5px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}.review-card-heading strong{flex:0 0 auto;color:#9a742d;font-size:11px;font-weight:600}.review-card-heading strong span{color:#ff821e}.review-item .review-country{margin:3px 0 0;color:var(--brand-muted);font-size:10.5px}.review-item .review-feedback{margin:11px 0 14px;color:rgba(var(--brand-ink-rgb),.82);font-size:12px;line-height:1.65;overflow-wrap:anywhere}.review-item .review-stay{margin:auto 0 0;color:var(--brand-muted);font-size:10px}.reviews-empty{padding:28px 0;color:var(--brand-muted);font-size:13px}
.review-pagination{display:flex;align-items:center;justify-content:center;gap:7px;margin:22px 0}.review-pagination button,.review-pagination span{display:grid;min-width:36px;height:36px;place-items:center;padding:0 10px;border:1px solid var(--brand-border);border-radius:9px;background:#fff;color:var(--brand-ink);font-size:12px}.review-pagination button:hover,.review-pagination span[aria-current=page]{border-color:#ff821e;background:#ff821e;color:#fff}
.hd-review-share{display:flex;justify-content:center;margin:22px 0 2px}.hd-share-review{min-height:44px;padding:10px 20px;border:1px solid var(--brand-border);border-radius:11px;background:#fff!important;color:var(--brand-ink);font-size:12px;font-weight:500}.hd-share-review:hover{border-color:#ff821e;color:#d86608}
.hd-review-dialog:not([open]){display:none}#main .hd-review-dialog{position:fixed;inset:0;width:min(720px,calc(100% - 28px));max-width:720px;max-height:min(92dvh,900px);margin:auto;padding:25px;border:1px solid var(--brand-border);border-radius:18px;background:#fff;color:var(--brand-ink);box-shadow:0 28px 90px #071d1740;overflow:auto}#main .hd-review-dialog::backdrop{background:rgba(9,28,24,.66);backdrop-filter:blur(3px)}.hd-review-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;padding-bottom:17px;border-bottom:1px solid var(--brand-border)}.hd-review-dialog-header>div>span{color:var(--brand-accent);font-size:9px;font-weight:600;letter-spacing:1.2px}.hd-review-dialog-header h2{margin-top:5px!important;color:var(--brand-ink)!important;font-size:21px!important;font-weight:600}.hd-review-dialog-close{display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center;padding:0;border:1px solid var(--brand-border);border-radius:50%;background:#fff!important;color:var(--brand-ink);font-size:24px;line-height:1}
.hd-review-details{margin-top:18px;padding:14px 0;border-top:1px solid var(--brand-border)}.hd-review-details summary{cursor:pointer;font-size:14px;font-weight:500}.hd-review-details[open]>summary{margin-bottom:20px}.hd-review-details{scroll-margin-top:calc(var(--zp-header-height,129px) + 20px)}
.hd-input-fields-wrapper{margin:0;display:grid;gap:20px}.hd-star-review-rating-wrapper{display:flex;flex-wrap:wrap;gap:18px}.hd-star-review-rating-wrap>p{font-size:11px;color:var(--brand-muted)}.hd-star-group{display:flex;gap:2px}
#main.hotel-detail-template .hd-star{margin:0;padding:2px;border:0;background:transparent!important;color:#d1d1d1!important;font-size:22px;line-height:1.1}#main.hotel-detail-template .hd-star[aria-pressed=true]{color:var(--brand-accent)!important}
.hd-input-fields-wrap,.hd-input-fields-wrap>div{display:grid;gap:12px}.hd-input-fields-wrap>div{grid-template-columns:repeat(3,minmax(0,1fr))}.hd-input-fields-wrap textarea{min-height:100px}.hd-saperator{display:none}.hd-share{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--brand-muted)}#main .hd-share a{color:var(--brand-ink)}
#main.hotel-detail-template .hd-related{padding-top:16px;padding-bottom:80px}
.hd-related .ht-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
#main.hotel-detail-template .ht-card h3{font-size:16px;font-weight:500;line-height:1.4}
#main.hotel-detail-template .home-whatsapp-banner{color:#fff}
#main.hotel-detail-template .home-whatsapp-heading h2{margin:0;color:#fff;font-size:22px;font-weight:500;line-height:1.25}
#main.hotel-detail-template .home-whatsapp-subtitle{margin-top:6px;color:#ffffffbf;font-size:13px}
#main.hotel-detail-template .home-whatsapp-description{color:#ffffffbf}
.hd-sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
#main .hd-lightbox:not([open]){display:none}#main .hd-lightbox{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:64px 60px;border:0;background:rgba(var(--brand-primary-rgb),0.949);color:#fff}#main .hd-lightbox::backdrop{background:var(--brand-primary)}body.hd-gallery-open{overflow:hidden}#main .hd-lightbox figure{text-align:center;max-width:100%;color:#fff}#main .hd-lightbox img{display:block;max-width:100%;max-height:76dvh;width:auto;height:auto;object-fit:contain;border-radius:8px;margin:auto}#main .hd-lightbox figcaption{margin-top:12px;font-size:13px;color:#ffffffb3}#main .hd-lightbox button{position:absolute;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:#ffffff1a!important;color:#fff!important;font-size:34px;line-height:1}#main .hd-lightbox-close{top:18px;right:20px}#main .hd-lightbox-prev{left:10px}#main .hd-lightbox-next{right:10px}
#main .hd-error{padding-top:80px;padding-bottom:80px}#main .hd-error h1{margin-bottom:24px}
@media(max-width:1023px){#main.hotel-detail-template .hd-layout{grid-template-columns:minmax(0,1fr);gap:32px}.hd-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:24px}.hd-help{margin-top:0}.hd-enquiry-card{order:0}.hd-amenities{grid-template-columns:repeat(3,minmax(0,1fr))}.hd-related .ht-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){#main.hotel-detail-template .hd-heading{padding-top:28px;padding-bottom:90px}.hd-meta{font-size:12px;gap:10px}.hd-meta a:not(:last-child){border:0;padding:0}.hd-meta a:first-child{width:100%}.hd-title-row{gap:10px}.hd-breadcrumbs{font-size:11px}.hd-gallery{height:256px;grid-auto-flow:column;grid-auto-columns:42%;grid-template-columns:none!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:8px;background:#fff}.hd-gallery::-webkit-scrollbar{display:none}.hd-gallery .hd-photo{grid-row:auto!important;grid-column:auto!important;scroll-snap-align:start;border-radius:8px!important}.hd-gallery[data-photo-count="1"]{grid-template-columns:1fr!important}.hd-gallery[data-photo-count="1"] .hd-photo{grid-row:1/3!important}.hd-gallery[data-photo-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hd-gallery[data-photo-count="2"] .hd-photo{grid-row:1/3!important}#main.hotel-detail-template .hd-all-photos{bottom:10px;right:34px;padding:7px 10px;font-size:11px}#main.hotel-detail-template .hd-layout{padding-top:24px;padding-bottom:40px;gap:24px}.hd-description{font-size:14px}.hd-amenities{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.hd-sidebar{display:block}.hd-help{margin-top:20px}.hd-input-fields-wrap>div{grid-template-columns:1fr}.hd-review-summary{gap:16px;padding:16px}.hd-review-score{min-width:64px}.hd-review-heading{align-items:flex-start}#main.hotel-detail-template h2{font-size:20px}.hd-review-search{gap:8px}.hd-review-search label:last-child{max-width:135px}.hd-related .ht-grid{grid-template-columns:1fr}.hd-lightbox{padding-left:48px!important;padding-right:48px!important}.hd-enquiry-card{padding:20px}#main.hotel-detail-template .hd-related{padding-bottom:56px}}
@media(prefers-reduced-motion:reduce){.hd-photo img{transition:none}}
@media(max-width:950px){.hd-review-summary{align-items:flex-start;flex-direction:column;gap:14px}.hd-review-score{width:100%;grid-template-columns:auto auto 1fr;grid-template-rows:auto;align-items:center;justify-content:start;padding:0 0 12px;border-right:0;border-bottom:1px solid var(--brand-border)}.hd-review-score strong{grid-row:auto}.hd-review-score>span:last-child{justify-self:end}.hd-review-score .hd-review-stars[hidden]{display:none}.hd-review-score .hd-review-stars{grid-column:2}.hd-review-score>span:last-child{grid-column:3;grid-row:1}#main .hd-review-summary .rating-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.review-item{min-height:200px;padding:14px}.review-card-heading h3{font-size:11.5px}.review-item .review-feedback{font-size:11px}.hd-review-dialog{padding:18px!important}.hd-review-dialog-header h2{font-size:19px!important}}
@media(max-width:520px){.review-grid{grid-template-columns:minmax(0,1fr)}.review-item{min-height:unset}.review-item .review-stay{margin-top:10px}#main .hd-review-summary .rating-breakdown{grid-template-columns:minmax(0,1fr)}.hd-review-toolbar label{min-width:128px}}

/* Keep review controls legible when theme-wide button rules are applied. */
#main.hotel-detail-template .hd-share-review{display:inline-flex!important;align-items:center;justify-content:center;min-width:190px;min-height:44px;padding:10px 20px;border:1px solid var(--brand-border)!important;border-radius:11px;background:#fff!important;color:var(--brand-ink)!important;font-size:13px!important;font-weight:600!important;line-height:1.3!important;opacity:1!important;visibility:visible!important}
#main.hotel-detail-template .hd-share-review:hover{border-color:#ff821e!important;color:#b85b10!important}
#main.hotel-detail-template .hd-review-dialog-close{display:grid!important;flex:0 0 36px;width:36px;height:36px;place-items:center;padding:0;border:1px solid #d9ded9!important;border-radius:50%;background:#f7f8f6!important;color:#173b34!important;opacity:1!important;visibility:visible!important}
#main.hotel-detail-template .hd-review-dialog-close svg{display:block;width:17px;height:17px;stroke:currentColor;stroke-width:2;stroke-linecap:round}
#main.hotel-detail-template .hd-review-dialog-close:hover{background:#eaf1ed!important;color:#092d28!important}
#main.hotel-detail-template .hd-star{display:inline-flex!important;align-items:center;justify-content:center;min-width:25px;min-height:28px;padding:0;border:0!important;background:transparent!important;color:#a5aaa7!important;font-size:25px!important;line-height:1!important;opacity:1!important;visibility:visible!important}
#main.hotel-detail-template .hd-star[aria-pressed=true]{color:#b56b20!important}
#main.hotel-detail-template .review-pagination button{display:grid!important;min-width:36px;height:36px;place-items:center;padding:0 10px;border:1px solid var(--brand-border)!important;border-radius:9px;background:#fff!important;color:var(--brand-ink)!important;font-size:13px!important;opacity:1!important;visibility:visible!important}
#main.hotel-detail-template .review-pagination button:hover,#main.hotel-detail-template .review-pagination span[aria-current=page]{border-color:#ff821e!important;background:#ff821e!important;color:#fff!important}
#main.hotel-detail-template .hd-review-dialog .review-submit-btn{display:inline-flex!important;align-items:center;justify-content:center;min-width:140px;min-height:44px;padding:11px 22px;border:1px solid #a95d1c!important;border-radius:9px;background:#a95d1c!important;color:#fff!important;font-size:14px!important;font-weight:600!important;opacity:1!important;visibility:visible!important}
#main.hotel-detail-template .hd-review-dialog .form-captcha{display:grid;grid-template-columns:120px auto;align-items:center;gap:6px 8px;margin:10px 0;padding:10px 12px;border:1px solid var(--brand-border);border-radius:10px;background:#faf9f6}
#main.hotel-detail-template .hd-review-dialog .form-captcha>label{grid-column:1/-1;margin:0;font-size:12px;line-height:1.35}
#main.hotel-detail-template .hd-review-dialog .form-captcha-challenge{display:contents}
#main.hotel-detail-template .hd-review-dialog .form-captcha-challenge img{grid-column:1;grid-row:2;width:120px!important;height:39px!important;object-fit:cover;border:1px solid var(--brand-border);border-radius:6px}
#main.hotel-detail-template .hd-review-dialog .form-captcha button[data-captcha-refresh]{grid-column:2;grid-row:2;display:grid!important;width:36px;height:36px;min-height:36px;place-items:center;padding:0;border:1px solid var(--brand-border)!important;border-radius:8px;background:#fff!important;color:var(--brand-ink)!important}
#main.hotel-detail-template .hd-review-dialog .form-captcha button[data-captcha-refresh] svg{display:block;width:16px;height:16px;stroke:currentColor}
#main.hotel-detail-template .hd-review-dialog .form-captcha input[name=captcha_answer]{grid-column:1/-1;grid-row:3;min-height:38px;height:38px;padding:7px 10px;border:1px solid var(--brand-border);border-radius:8px;font-size:13px}
#main.hotel-detail-template .hd-review-dialog .form-captcha small:not(.form-captcha-status){grid-column:1/-1;margin:0;color:var(--brand-muted);font-size:10px;line-height:1.3}
#main.hotel-detail-template .hd-review-dialog .form-captcha-status{grid-column:1/-1;font-size:11px}
