/* Destination Hub Studio — clean visual system, V10.
   This stylesheet controls ALL layouts. Legacy CSS is loaded only to retain
   supplier widgets, booking dialogs and filter primitives. */
:root{--dh-ink:#0c3454;--dh-muted:#647a8f;--dh-teal:#007d96;--dh-deep:#005c74;--dh-accent:#00a1ae;--dh-pale:#e8f8fc;--dh-edge:#deebf2;--dh-page:#f8fcff;--dh-white:#fff;--dh-shadow:0 9px 26px rgba(26,71,93,.09);--dh-radius:14px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
html body.dh-studio-v10{margin:0;background:#fff;color:var(--dh-ink);font-family:Inter,'Segoe UI',Arial,sans-serif;font-size:14px;line-height:1.5;overflow-x:clip}
html body.dh-studio-v10 button,html body.dh-studio-v10 input,html body.dh-studio-v10 select,html body.dh-studio-v10 textarea{font:inherit}
html body.dh-studio-v10 a{text-decoration:none}
html body.dh-studio-v10 img{max-width:100%}
html body.dh-studio-v10 .wrap{max-width:1312px;width:calc(100% - 64px);margin:0 auto}
html body.dh-studio-v10 h1,html body.dh-studio-v10 h2,html body.dh-studio-v10 h3,html body.dh-studio-v10 h4{color:var(--dh-ink);letter-spacing:-.025em;line-height:1.18}
html body.dh-studio-v10 button,html body.dh-studio-v10 a,html body.dh-studio-v10 select{touch-action:manipulation}
html body.dh-studio-v10 :focus-visible{outline:3px solid rgba(6,175,193,.5);outline-offset:3px}
html body.dh-studio-v10 :is(.btn,.live-search-submit,.rate-book-btn,.popular-hotel-action,.location-card-actions .btn){border-radius:9px;background:linear-gradient(110deg,#0086a2,#006f8a);border:0;color:#fff;font-weight:750;box-shadow:none;transition:background .2s ease,transform .2s ease}
html body.dh-studio-v10 :is(.btn,.live-search-submit,.rate-book-btn,.popular-hotel-action,.location-card-actions .btn):hover{background:#005b74;transform:translateY(-1px)}
html body.dh-studio-v10 :is(.btn.secondary,.btn-secondary,.dh9-rate-policy){background:#fff;color:var(--dh-teal);border:1px solid #abdfe7}
/* Masthead: genuine transparent logo, one nav, small desktop actions. */
html body.dh-studio-v10 .dhcs-global-header{position:relative;top:auto;z-index:150;background:linear-gradient(110deg,#00677f,#008ca0);box-shadow:none;border:0}
html body.dh-studio-v10 .dhcs-global-nav{max-width:1380px;width:calc(100% - 64px);min-height:75px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:6px 0}
html body.dh-studio-v10 .dhcs-global-logo{display:flex;flex:none;align-items:center;background:none!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
html body.dh-studio-v10 .dhcs-global-logo img{display:block;width:194px!important;height:60px!important;object-fit:contain;object-position:left center;background:transparent!important;filter:none;border:0!important}
html body.dh-studio-v10 .dhcs-global-links{display:flex;align-items:center;gap:clamp(13px,2vw,28px);margin-left:auto}
html body.dh-studio-v10 .dhcs-global-links a{color:#fff;font-size:13px;font-weight:720;opacity:.98;white-space:nowrap}
html body.dh-studio-v10 .dhcs-global-links a:hover{text-decoration:underline;text-underline-offset:5px}
html body.dh-studio-v10 .dhcs-global-actions{display:flex;gap:14px;align-items:center}
html body.dh-studio-v10 .dh-studio-header-search,html body.dh-studio-v10 .dh-studio-header-account{width:27px;height:27px;display:flex;justify-content:center;align-items:center;color:#fff}
html body.dh-studio-v10 .dh-studio-header-search svg,html body.dh-studio-v10 .dh-studio-header-account svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
html body.dh-studio-v10 .dh-studio-header-currency{white-space:nowrap;color:#fff;font-size:12px;font-weight:700}
html body.dh-studio-v10 .dhcs-menu-toggle{display:flex;flex-direction:column;gap:5px;width:32px;height:32px;padding:5px;background:transparent!important;border:0!important;justify-content:center;align-items:center;box-shadow:none!important}
html body.dh-studio-v10 .dhcs-menu-toggle>span{display:block;width:19px;height:2px;background:#fff;border-radius:2px}
html body.dh-studio-v10 .dhcs-mobile-nav{position:absolute;top:calc(100% - 3px);right:24px;width:min(300px,calc(100vw - 40px));padding:12px;background:#fff;box-shadow:0 18px 45px rgba(10,51,67,.24);border:1px solid var(--dh-edge);border-radius:12px;z-index:600}
html body.dh-studio-v10 .dhcs-mobile-nav[hidden]{display:none!important}
html body.dh-studio-v10 .dhcs-mobile-nav a{display:block;padding:12px;color:var(--dh-ink);font-weight:750;border-radius:8px}
html body.dh-studio-v10 .dhcs-mobile-nav a:hover{background:var(--dh-pale)}
html body.dh-studio-v10 .dhcs-global-search{display:none!important}
/* Home hero image and typography. */
html body.dh-studio-home .search-first-hero{position:relative;min-height:370px;height:390px;padding:0!important;background:linear-gradient(95deg,rgba(0,80,99,.55),rgba(0,96,124,.08)),var(--dh-ref-hero) center 45%/cover no-repeat!important;overflow:visible}
html body.dh-studio-home .search-first-hero:before{content:none!important}
html body.dh-studio-home .search-first-layout{display:block!important;height:100%;padding:57px 0 0!important;position:relative;z-index:1}
html body.dh-studio-home .search-first-copy{width:min(650px,70%);max-width:none;text-align:left;color:#fff!important}
html body.dh-studio-home .search-first-copy h1{font-size:clamp(37px,3.5vw,57px);margin:0 0 14px!important;font-weight:850;color:#fff!important;line-height:1.03;letter-spacing:-.04em}
html body.dh-studio-home .search-first-lead{max-width:600px;font-size:clamp(15px,1.35vw,19px);line-height:1.35;color:#fff!important;margin:0!important}
html body.dh-studio-home .search-first-trust,html body.dh-studio-home .eyebrow,html body.dh-studio-home .local-hotel-showcase{display:none!important}
/* Compact overlapping search panel. Live IDs and handlers retained. */
html body.dh-studio-home .live-search-section{position:relative;z-index:10;margin:-109px auto 0!important;padding:0!important;background:transparent!important}
html body.dh-studio-home .live-search-shell{width:100%;margin:0;background:#fff;border-radius:20px;box-shadow:0 14px 35px rgba(17,77,99,.16);padding:19px 22px!important;border:1px solid rgba(221,232,240,.8);min-height:0!important}
html body.dh-studio-home .live-search-body{padding:0!important;margin:0}
html body.dh-studio-home .search-mode-toggle{display:inline-flex!important;align-items:center;gap:4px;background:#f0f6f9;padding:4px;border-radius:11px;margin:0 0 10px!important;width:auto}
html body.dh-studio-home .search-mode-btn{border:none;background:transparent;color:#557086;font-weight:750;padding:9px 20px!important;min-width:105px;min-height:36px;box-shadow:none;border-radius:8px}
html body.dh-studio-home .search-mode-btn.is-active{background:var(--dh-teal);color:#fff;box-shadow:0 2px 9px rgba(0,115,146,.12)}
html body.dh-studio-home .dh-ref-transfers{opacity:.53;cursor:not-allowed}
html body.dh-studio-home #liveHotelSearchForm,html body.dh-studio-home #liveAttractionSearchForm{margin:0!important}
html body.dh-studio-home .live-search-grid{display:grid!important;grid-template-columns:minmax(220px,2fr) minmax(148px,1.15fr) minmax(148px,1.15fr) minmax(175px,1.05fr) minmax(156px,.9fr)!important;gap:10px!important;align-items:end!important}
html body.dh-studio-home .live-search-grid>.live-field{min-width:0}
html body.dh-studio-home .live-field label{color:#577085;font-size:11px;font-weight:750;display:block;margin-bottom:4px}
html body.dh-studio-home .live-field input,html body.dh-studio-home .live-field select,html body.dh-studio-home .dh-v8-guest-select>summary{width:100%;height:46px;min-height:46px!important;padding:7px 12px!important;border:1px solid #dce8ef!important;border-radius:9px!important;background:#fff!important;color:var(--dh-ink);font-weight:560;font-size:13px;box-shadow:none!important}
html body.dh-studio-home #liveHotelName{padding-left:34px!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23008aa4' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7zm0 10a3 3 0 1 1 0-6 3 3 0 0 1 0 6z'/%3E%3C/svg%3E") no-repeat 10px center / 16px!important}
html body.dh-studio-home .dh-v8-guest-select{grid-column:4;position:relative;min-width:0}
html body.dh-studio-home .dh-v8-guest-select>summary{display:flex!important;gap:8px;justify-content:space-between;align-items:center;white-space:nowrap;cursor:pointer;list-style:none;min-width:0}
html body.dh-studio-home .dh-v8-guest-select>summary::-webkit-details-marker{display:none}
html body.dh-studio-home #dhV8GuestCount{font-size:12px!important;color:var(--dh-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.dh-studio-home .dh-v8-guest-icon{color:var(--dh-teal)}
html body.dh-studio-home .dh-v8-guest-arrow{margin-left:auto;color:var(--dh-teal)}
html body.dh-studio-home .dh-v8-guest-fields{position:absolute;top:calc(100% + 6px);right:0;width:280px;z-index:300;background:#fff;border:1px solid #dbeaf0;border-radius:12px;padding:14px;box-shadow:0 14px 38px rgba(10,62,84,.16)}
html body.dh-studio-home .dh-guest-field-group{display:grid;grid-template-columns:1fr 1fr;gap:9px}
html body.dh-studio-home .live-search-submit{grid-column:5;min-height:46px!important;height:46px!important;padding:10px 13px!important;margin:0!important;font-size:13px;border-radius:9px;width:100%;white-space:nowrap}
html body.dh-studio-home .dh-search-advanced{grid-column:1/-1;order:20;margin:0!important;min-width:0!important;border:0!important;background:#fff!important}
html body.dh-studio-home .dh-search-advanced>summary{color:var(--dh-teal);padding:5px 0!important;font-weight:740;font-size:11px;cursor:pointer}
html body.dh-studio-home .dh-search-advanced>summary span{font-size:11px;color:#71899a;font-weight:500;margin-left:8px}
html body.dh-studio-home .dh-search-advanced-fields{display:flex!important;flex-wrap:wrap;gap:12px;align-items:start;padding:9px 0!important;background:#fff!important}
html body.dh-studio-home .dh-search-advanced-fields>.live-field{flex:0 1 260px;width:260px}
html body.dh-studio-home .child-ages{max-width:450px;display:flex;flex-wrap:wrap;gap:9px;margin:9px 0 0}
html body.dh-studio-home .child-ages:empty{display:none}
html body.dh-studio-home .live-search-foot{margin:5px 0 0!important;padding:5px 0 0!important;border-top:0!important;font-size:10px;color:#78909f}
html body.dh-studio-home .live-search-message:not(.is-visible){display:none!important}
html body.dh-studio-home .dh9-results-stage:empty{display:none}
/* Trust benefits and homepage sections. */
html body.dh-studio-v10 .dh-ref-benefits{margin:20px 0 15px!important;padding:0!important;background:#fff}
html body.dh-studio-v10 .dh-ref-benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:12px 0!important}
html body.dh-studio-v10 .dh-ref-benefit{display:flex;align-items:center;gap:12px;background:none!important;border:0!important;box-shadow:none!important;padding:6px 0!important}
html body.dh-studio-v10 .dh-ref-benefit>span{background:var(--dh-pale);border-radius:50%;height:39px;width:39px;display:grid;place-items:center;flex:none;font-size:20px;color:var(--dh-teal)}
html body.dh-studio-v10 .dh-ref-benefit strong{display:block;font-size:12px;color:var(--dh-ink)}
html body.dh-studio-v10 .dh-ref-benefit small{display:block;font-size:10px;color:#7891a0}
html body.dh-studio-v10 .popular-hotels-section{padding:24px 0 18px!important;background:#fff!important}
html body.dh-studio-v10 .popular-hotels-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:0 0 13px!important}
html body.dh-studio-v10 .popular-hotels-head>div{width:100%;position:relative}
html body.dh-studio-v10 .popular-hotels-head h2{font-size:24px;margin:0;color:var(--dh-ink);letter-spacing:-.03em}
html body.dh-studio-v10 .dh9-view-all{float:right;margin-top:-25px;color:var(--dh-teal);font-size:12px;font-weight:800}
html body.dh-studio-v10 .dh9-comparison-disclaimer{font-size:10px;color:#77919f;margin:4px 0 0}
html body.dh-studio-v10 .dh-ref-carousel-actions{display:flex;justify-content:flex-end;gap:6px;margin:0 0 6px}
html body.dh-studio-v10 .dh-ref-carousel-actions button{border-radius:50%;border:1px solid #e2edf2;background:#fff;color:var(--dh-teal);width:30px;height:30px;font-size:21px;line-height:1;cursor:pointer}
html body.dh-studio-v10 .popular-hotels-grid{display:flex!important;gap:12px!important;overflow-x:auto!important;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 2px 10px!important;scroll-padding:2px;max-width:100%}
html body.dh-studio-v10 .popular-hotels-grid::-webkit-scrollbar{display:none}
html body.dh-studio-v10 .popular-hotel-card{flex:0 0 calc((100% - 36px)/4)!important;width:calc((100% - 36px)/4)!important;min-width:205px;max-width:none!important;border:1px solid var(--dh-edge);border-radius:10px!important;box-shadow:none!important;scroll-snap-align:start;background:#fff;overflow:hidden;position:relative}
html body.dh-studio-v10 .popular-hotel-media{height:138px!important;overflow:hidden;position:relative;border-radius:0!important}
html body.dh-studio-v10 .popular-hotel-media img{width:100%;height:100%;object-fit:cover}
html body.dh-studio-v10 .popular-hotel-body{padding:9px 10px 11px!important;min-height:0!important}
html body.dh-studio-v10 .popular-hotel-body h3{font-size:12px;line-height:1.2;margin:2px 0 3px!important;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
html body.dh-studio-v10 .popular-hotel-location{font-size:10px;color:#7890a1}
html body.dh-studio-v10 .popular-latest-beat{background:transparent;border:0;box-shadow:none;padding:0!important;margin:6px 0!important}
html body.dh-studio-v10 .popular-latest-checked{font-size:9px;color:#728d99}
html body.dh-studio-v10 .popular-latest-prices{display:flex!important;gap:9px;align-items:baseline;margin:4px 0 3px}
html body.dh-studio-v10 .popular-latest-price{padding:0!important;border:0!important;background:none!important;display:flex!important;gap:3px;align-items:baseline}
html body.dh-studio-v10 .popular-latest-price span{font-size:9px;color:#7893a0;display:none}
html body.dh-studio-v10 .popular-latest-price strong{font-size:17px;color:#009d9c;line-height:1.1}
html body.dh-studio-v10 .popular-latest-price:not(.is-ours) strong{font-size:11px;color:#8c9caa;text-decoration:line-through}
html body.dh-studio-v10 .popular-latest-saving{display:inline-flex;gap:4px;background:#159b64;color:#fff;border-radius:7px;padding:4px 6px;position:absolute;top:8px;left:8px;font-size:9px;font-weight:800}
html body.dh-studio-v10 .popular-latest-saving span{font-size:9px}
html body.dh-studio-v10 .popular-latest-saving strong{font-size:9px;color:#fff}
html body.dh-studio-v10 .popular-hotel-action{display:block;width:100%;padding:7px 6px;min-height:29px!important;background:#fff!important;color:var(--dh-teal)!important;border:1px solid var(--dh-teal)!important;border-radius:8px;font-size:10px!important;line-height:1.2}
html body.dh-studio-v10 .popular-hotels-loading{min-height:100px}
/* Visual destination strip */
html body.dh-studio-v10 .destination-showcase-section{background:#eaf7fc!important;border:0!important;border-radius:18px;margin:10px auto 24px;width:calc(100% - 64px);max-width:1312px;padding:19px 0 16px!important}
html body.dh-studio-v10 .destination-showcase-section>.wrap{max-width:none;width:calc(100% - 36px)}
html body.dh-studio-v10 .destination-showcase-head{margin:0 0 12px!important}
html body.dh-studio-v10 .destination-showcase-head .section-kicker{display:none}
html body.dh-studio-v10 .destination-showcase-head h2{font-size:19px;margin:0!important}
html body.dh-studio-v10 .destination-showcase-head p{font-size:11px;color:#63879c;margin:2px 0 0}
html body.dh-studio-v10 .destination-showcase-grid{display:flex!important;gap:11px;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 1px 5px!important}
html body.dh-studio-v10 .destination-showcase-grid::-webkit-scrollbar{display:none}
html body.dh-studio-v10 .destination-card{flex:0 0 calc((100% - 55px)/6);min-width:128px;max-width:200px;position:relative;overflow:hidden;border:0!important;border-radius:10px!important;background:#ddeaf4;box-shadow:none!important;scroll-snap-align:start;min-height:100px}
html body.dh-studio-v10 .destination-card-media,html body.dh-studio-v10 .destination-card-media img{height:108px!important;width:100%;object-fit:cover;display:block}
html body.dh-studio-v10 .destination-card-media:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.65));pointer-events:none}
html body.dh-studio-v10 .destination-card-body{position:absolute;z-index:1;bottom:0;left:0;right:0;padding:12px 9px 8px!important;color:#fff}
html body.dh-studio-v10 .destination-card-body h3{color:#fff;font-size:13px;margin:0!important}
html body.dh-studio-v10 .destination-card-actions{position:absolute;inset:0;opacity:0;margin:0!important}
html body.dh-studio-v10 .destination-card-actions a:first-child{position:absolute;inset:0;z-index:2}
html body.dh-studio-v10 .catalogue-proof-section{padding:0 0 18px!important;font-size:12px}
html body.dh-studio-v10 .dh-ref-attractions-teaser{padding:12px 0 28px}
html body.dh-studio-v10 .dh-ref-section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
html body.dh-studio-v10 .dh-ref-section-heading h2{font-size:23px;margin:0}
html body.dh-studio-v10 .dh-ref-kicker{display:none}
html body.dh-studio-v10 .dh-ref-attractions-cards{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory}
html body.dh-studio-v10 .dh-ref-attraction-card{flex:0 0 calc((100% - 36px)/4);min-width:190px;border:1px solid var(--dh-edge);border-radius:12px;overflow:hidden;background:#fff;scroll-snap-align:start}
html body.dh-studio-v10 .dh-ref-attraction-card img{width:100%;height:150px;object-fit:cover}
html body.dh-studio-v10 .dh-ref-attraction-card>span{display:block;padding:10px;font-weight:700;color:var(--dh-ink)}
html body.dh-studio-v10 .dh-ref-attraction-card small{display:block;font-weight:650;color:var(--dh-teal);font-size:11px;margin-top:6px}
html body.dh-studio-v10 .how{padding:32px 0;background:#f6fbfe}
html body.dh-studio-v10 .faq{padding:30px 0}
/* Search results: a new two-column results layout and real full-width images on mobile. */
html body.dh-studio-v10 .dh9-results-stage{margin:10px auto 18px!important;padding:4px 0 22px!important;scroll-margin-top:80px;background:#fff}
html body.dh-studio-v10 .dh9-results-stage:not(.dh-studio-has-results):has(#liveResults:empty){display:none!important}
html body.dh-studio-v10 .location-results-panel{background:#fff!important;border:0!important;padding:0!important;box-shadow:none!important}
html body.dh-studio-v10 .location-results-head{padding:9px 0!important;margin:0!important}
html body.dh-studio-v10 .location-results-head h2{font-size:22px!important;color:var(--dh-ink)!important}
html body.dh-studio-v10 .location-results-toolbar{margin:10px 0 12px!important}
html body.dh-studio-v10 .dh-studio-results-grid{display:grid;grid-template-columns:225px minmax(0,1fr);gap:22px;align-items:start}
html body.dh-studio-v10 .dh-studio-results-aside{position:sticky;top:24px;background:#fff;border-right:1px solid var(--dh-edge);padding:8px 16px 30px 2px;max-height:calc(100vh - 40px);overflow:auto}
html body.dh-studio-v10 .dh-studio-results-content{min-width:0}
html body.dh-studio-v10 .location-results-tools{background:#fff!important;border:0!important;padding:0!important;box-shadow:none!important;max-height:none}
html body.dh-studio-v10 #locationAdvancedFilters{background:#fff!important;box-shadow:none!important;border:0!important;max-width:100%}
html body.dh-studio-v10 .location-hotel-list{display:grid!important;grid-template-columns:1fr!important;gap:11px!important;margin:0!important}
html body.dh-studio-v10 .location-hotel-card{display:grid!important;grid-template-columns:clamp(175px,23%,245px) minmax(0,1fr) minmax(145px,185px)!important;grid-template-rows:1fr;align-items:stretch;gap:0!important;min-height:150px!important;max-width:none!important;width:100%!important;border:1px solid #e1ebf1!important;border-radius:13px!important;overflow:hidden!important;background:#fff!important;box-shadow:none!important;padding:0!important;margin:0!important}
html body.dh-studio-v10 .location-hotel-media{height:100%!important;min-height:150px;width:100%!important;position:relative;max-height:190px;overflow:hidden;border-radius:0!important}
html body.dh-studio-v10 .location-hotel-media>img,html body.dh-studio-v10 .location-hotel-media .location-card-image{width:100%!important;height:100%!important;object-fit:cover!important;display:block}
html body.dh-studio-v10 .location-card-carousel{width:100%!important;height:100%!important}
html body.dh-studio-v10 .location-hotel-copy{padding:14px 15px!important;min-width:0!important;display:flex;flex-direction:column;justify-content:center;gap:4px!important}
html body.dh-studio-v10 .location-hotel-name{font-size:16px!important;margin:0!important;font-weight:820;line-height:1.25}
html body.dh-studio-v10 .location-hotel-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
html body.dh-studio-v10 .location-hotel-stars{font-size:12px!important;color:#f5a400}
html body.dh-studio-v10 .location-hotel-review{font-size:11px;color:#597f90}
html body.dh-studio-v10 .location-hotel-address{font-size:11px;color:#698598;line-height:1.35}
html body.dh-studio-v10 .location-distance-note{font-size:11px;color:#557d8f;font-weight:650}
html body.dh-studio-v10 .location-hotel-price{border-left:1px solid #e8eff3;padding:14px!important;display:flex!important;flex-direction:column!important;justify-content:center;align-items:stretch;text-align:right;gap:11px}
html body.dh-studio-v10 .location-price-summary{min-width:0}
html body.dh-studio-v10 .location-hotel-price .from-label{font-size:9px;letter-spacing:.03em;text-transform:uppercase;color:#718c9c}
html body.dh-studio-v10 .location-hotel-price strong{font-size:24px;color:var(--dh-ink);line-height:1.1}
html body.dh-studio-v10 .location-hotel-price small{font-size:10px;color:#8399a8}
html body.dh-studio-v10 .location-card-actions{margin:0!important}
html body.dh-studio-v10 .location-card-actions .btn{width:100%;font-size:11px;min-height:38px!important;padding:9px 8px}
html body.dh-studio-v10 .location-card-image-nav{border:0;background:rgba(255,255,255,.92);color:var(--dh-ink);border-radius:50%;width:28px;height:28px}
html body.dh-studio-v10 .location-card-image-count{font-size:10px;border-radius:7px;background:rgba(0,45,59,.66);color:#fff}
html body.dh-studio-v10 .location-results-buttons,html body.dh-studio-v10 .location-sort-row{margin:8px 0}
html body.dh-studio-v10 .dh-studio-results-aside select{width:100%;border:1px solid var(--dh-edge);border-radius:9px;padding:9px;color:var(--dh-ink);background:#fff}
html body.dh-studio-v10 .dh-studio-results-aside label{display:block;color:var(--dh-muted);font-size:12px;margin:8px 0}
/* Hotel details: image, hotel copy and compact live rate panel in right column. */
html body.dh-studio-v10.dhcs-hotel-page{background:#f9fcfe!important}
html body.dh-studio-v10 .crumbs{padding:14px 0 11px;color:#70899b;font-size:12px}
html body.dh-studio-v10 .hero-shell{padding:0!important}
html body.dh-studio-v10.dhcs-hotel-page .hero-grid{display:grid!important;grid-template-columns:minmax(0,1fr) 295px!important;grid-template-areas:"media sidebar" "summary sidebar"!important;gap:12px 18px!important;align-items:start!important}
html body.dh-studio-v10.dhcs-hotel-page .media-card{grid-area:media;border:1px solid var(--dh-edge);background:#fff;border-radius:12px!important;overflow:hidden!important;box-shadow:none!important;min-width:0}
html body.dh-studio-v10.dhcs-hotel-page .hero-media{height:345px!important;min-height:0!important;position:relative}
html body.dh-studio-v10.dhcs-hotel-page .hero-media img{width:100%;height:100%!important;object-fit:cover}
html body.dh-studio-v10.dhcs-hotel-page .thumbs{display:flex;gap:7px!important;padding:7px!important;overflow-x:auto;scrollbar-width:none;background:#fff}
html body.dh-studio-v10.dhcs-hotel-page .thumbs button{flex:0 0 85px!important;width:85px!important;height:55px!important;border-radius:6px;overflow:hidden;border:0!important;padding:0!important}
html body.dh-studio-v10.dhcs-hotel-page .thumbs button img{width:100%;height:100%;object-fit:cover}
html body.dh-studio-v10.dhcs-hotel-page .summary-card{grid-area:summary;padding:13px 16px!important;border:1px solid var(--dh-edge)!important;border-radius:12px!important;background:#fff;box-shadow:none!important}
html body.dh-studio-v10.dhcs-hotel-page .summary-card .kicker{display:none}
html body.dh-studio-v10.dhcs-hotel-page .summary-card h1{font-size:27px;line-height:1.1;margin:4px 0 7px!important}
html body.dh-studio-v10.dhcs-hotel-page .summary-card .location{font-size:12px;margin-bottom:5px}
html body.dh-studio-v10.dhcs-hotel-page .summary-card .lead{font-size:12px;line-height:1.45;margin:6px 0!important}
html body.dh-studio-v10.dhcs-hotel-page .summary-card .chips{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0!important}
html body.dh-studio-v10.dhcs-hotel-page .summary-card .chip{padding:4px 7px;border-radius:6px;background:#eaf9fc;color:#007c94;font-size:10px}
html body.dh-studio-v10.dhcs-hotel-page .availability-actions{display:none!important}
html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-overview{grid-area:sidebar;position:sticky;top:18px;align-self:start;min-width:0;max-height:calc(100vh - 35px);overflow-y:auto;background:#fff!important;padding:15px!important;border:1px solid var(--dh-edge)!important;border-radius:13px!important;box-shadow:none!important}
html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--dh-teal);font-weight:850}
html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-from{margin:7px 0 13px;display:flex;flex-direction:column;gap:2px}
html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-from strong{font-size:26px;line-height:1.1;color:var(--dh-ink)}
html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-from small{font-size:10px;color:#76909d}
html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-primary,html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-policy{width:100%;margin:4px 0!important;min-height:38px;font-size:11px;padding:9px 8px;text-align:center}
html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-teasers{border-top:1px solid #e4eff2;margin-top:13px;padding-top:8px}
html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-teasers p{font-size:11px;color:#758b9b}
html body.dh-studio-v10.dhcs-hotel-page .dh9-teaser{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:7px;width:100%;text-align:left;border:0;background:#fff;padding:7px 0;border-bottom:1px solid #e8eff3}
html body.dh-studio-v10.dhcs-hotel-page .dh9-teaser img{width:52px;height:49px;object-fit:cover;border-radius:6px}
html body.dh-studio-v10.dhcs-hotel-page .dh9-teaser strong{font-size:11px;display:block;color:var(--dh-ink)}
html body.dh-studio-v10.dhcs-hotel-page .dh9-teaser small{font-size:9px;display:block;color:var(--dh-muted)}
html body.dh-studio-v10.dhcs-hotel-page .dh9-teaser-price{grid-column:2;color:var(--dh-teal);font-weight:800}
html body.dh-studio-v10.dhcs-hotel-page .dh9-all-rates-link{display:block;text-align:center;margin-top:9px;color:var(--dh-teal);font-weight:720;font-size:11px}
html body.dh-studio-v10.dhcs-hotel-page .section{padding:10px 0!important}
html body.dh-studio-v10.dhcs-hotel-page .content-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin:0 auto}
html body.dh-studio-v10.dhcs-hotel-page .content-card{border-radius:12px;padding:16px!important;border:1px solid var(--dh-edge);box-shadow:none!important;background:#fff}
html body.dh-studio-v10.dhcs-hotel-page .content-card h2{font-size:18px;margin:0 0 10px}
html body.dh-studio-v10.dhcs-hotel-page .content-card p{font-size:12px;color:#617a89;line-height:1.6}
html body.dh-studio-v10.dhcs-hotel-page .facts{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px}
html body.dh-studio-v10.dhcs-hotel-page .fact{background:#f8fcfe;border:1px solid var(--dh-edge);border-radius:9px;padding:8px}
html body.dh-studio-v10.dhcs-hotel-page .fact span{color:#7d94a0;text-transform:uppercase;display:block;font-size:9px}
html body.dh-studio-v10.dhcs-hotel-page .fact strong{font-size:12px;color:var(--dh-ink)}
html body.dh-studio-v10.dhcs-hotel-page .dh-ref-availability-anchor{text-align:left!important;padding:26px 0 3px}
html body.dh-studio-v10.dhcs-hotel-page .dh-ref-availability-anchor>span{font-size:23px;font-weight:850;color:var(--dh-ink)}
html body.dh-studio-v10.dhcs-hotel-page .availability-wrap{padding:10px 0 28px!important}
html body.dh-studio-v10.dhcs-hotel-page .availability-card{padding:20px!important;background:#fff;border:1px solid var(--dh-edge);border-radius:13px;box-shadow:none!important}
html body.dh-studio-v10.dhcs-hotel-page .availability-head h2{font-size:21px}
html body.dh-studio-v10.dhcs-hotel-page .room-group{border:1px solid #dfeaf0;border-radius:13px;overflow:hidden;margin-bottom:11px;background:#fff;box-shadow:none!important}
html body.dh-studio-v10.dhcs-hotel-page .room-group-header{background:#eef9fc;padding:0!important}
html body.dh-studio-v10.dhcs-hotel-page .group-head{padding:12px 14px!important;background:#eef9fc!important}
html body.dh-studio-v10.dhcs-hotel-page .group-head h3{font-size:16px;margin:0}
html body.dh-studio-v10.dhcs-hotel-page .room-group-gallery{padding:8px 12px!important}
html body.dh-studio-v10.dhcs-hotel-page .room-group-gallery img{border-radius:7px;object-fit:cover}
html body.dh-studio-v10.dhcs-hotel-page .rate-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px!important}
html body.dh-studio-v10.dhcs-hotel-page .rate-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;border:1px solid #e1ebf0;border-radius:11px;padding:11px!important;background:#fff!important;box-shadow:none}
html body.dh-studio-v10.dhcs-hotel-page .rate-price{text-align:right!important;min-width:102px!important}
html body.dh-studio-v10.dhcs-hotel-page .rate-price strong{font-size:18px;color:var(--dh-ink)}
html body.dh-studio-v10.dhcs-hotel-page .rate-book-btn{padding:9px!important;min-height:35px!important;font-size:11px!important}
/* Booking dialogs stay above other dialogs, retain supplier verification and rates. */
html body.dh-studio-v10 .booking-modal,html body.dh-studio-v10 .image-lightbox{z-index:100900!important;position:fixed;inset:0}
html body.dh-studio-v10 .booking-modal.is-open{display:flex!important;align-items:center;justify-content:center;padding:14px}
html body.dh-studio-v10 .booking-modal .booking-dialog{position:relative;z-index:2;width:min(670px,100%);max-height:calc(100dvh - 28px);overflow:auto;border-radius:17px;background:#fff;box-shadow:0 22px 80px rgba(3,42,61,.2)}
html body.dh-studio-v10 .booking-head{padding:18px;border-bottom:1px solid var(--dh-edge)}
html body.dh-studio-v10 .booking-head h2{font-size:23px}
html body.dh-studio-v10 .booking-summary{background:#f5fbfe;border-radius:10px;border:1px solid var(--dh-edge);padding:12px}
html body.dh-studio-v10 .booking-dialog .field input,html body.dh-studio-v10 .booking-dialog .field select,html body.dh-studio-v10 .booking-dialog .field textarea{min-height:42px;border:1px solid var(--dh-edge);border-radius:8px;background:#fff}
html body.dh-studio-v10 .booking-dialog .booking-submit{width:100%;min-height:44px;font-size:14px}
/* Normal pages and legal/footer. */
html body.dh-studio-v10 .dh-theme-main{padding:45px 0}
html body.dh-studio-v10 .dh-page-shell{max-width:1120px;width:calc(100% - 44px);margin:auto}
html body.dh-studio-v10 .dh-studio-footer{background:#103b4b;color:#fff;margin-top:45px;padding:35px max(28px,calc((100vw - 1312px)/2)) 20px;border-top:4px solid var(--dh-teal)}
html body.dh-studio-v10 .dh-studio-footer-inner{display:grid;grid-template-columns:1.4fr .9fr .9fr 1.4fr;gap:28px;align-items:start;max-width:1312px;margin:auto}
html body.dh-studio-v10 .dh-studio-footer-brand img{width:195px;height:auto;display:block;margin:0 0 8px}
html body.dh-studio-v10 .dh-studio-footer p{font-size:12px;color:#c4d7df;line-height:1.8}
html body.dh-studio-v10 .dh-studio-footer h3{font-size:12px;text-transform:uppercase;letter-spacing:.045em;color:#fff;margin:0 0 12px}
html body.dh-studio-v10 .dh-studio-footer-links a,html body.dh-studio-v10 .dh-studio-privacy-trigger,html body.dh-studio-v10 .dh-studio-footer-company a{display:block;color:#cbdfe5;margin:0 0 9px;text-align:left;font-size:12px;line-height:1.45;background:none;border:0;padding:0;cursor:pointer}
html body.dh-studio-v10 .dh-studio-footer a:hover,html body.dh-studio-v10 .dh-studio-privacy-trigger:hover{text-decoration:underline;color:#fff}
html body.dh-studio-v10 .dh-studio-footer-bottom{max-width:1312px;margin:25px auto 0;border-top:1px solid #446372;padding:15px 0 0;color:#9bbbc9;font-size:11px}
/* Do not hide access to cookie settings until the footer button has a working consent manager. */
html body.dh-studio-v10.dh-studio-privacy-ready #dh-privacy-choices,
html body.dh-studio-v10.dh-studio-privacy-ready .cky-btn-revisit-wrapper,
html body.dh-studio-v10.dh-studio-privacy-ready .cmplz-manage-consent,
html body.dh-studio-v10.dh-studio-privacy-ready #cmplz-manage-consent,
html body.dh-studio-v10.dh-studio-privacy-ready #ot-sdk-btn-floating{display:none!important}
/* Mobile bottom tab bar — four evenly spaced controls, no privacy overlay. */
html body.dh-studio-v10 .dh-ref-bottom-nav{display:none}
@media(max-width:1080px){
 html body.dh-studio-v10 .dhcs-global-nav{width:calc(100% - 34px);gap:15px;min-height:64px}
 html body.dh-studio-v10 .dhcs-global-links{gap:11px}
 html body.dh-studio-v10 .dhcs-global-links a{font-size:11px}
 html body.dh-studio-v10 .dhcs-global-logo img{width:155px!important;height:48px!important}
 html body.dh-studio-home .live-search-grid{grid-template-columns:minmax(180px,2fr) repeat(2,minmax(105px,1fr)) minmax(152px,1fr) 135px!important}
 html body.dh-studio-v10 .popular-hotel-card{flex-basis:calc((100% - 24px)/3)!important;width:calc((100% - 24px)/3)!important}
 html body.dh-studio-v10.dhcs-hotel-page .hero-grid{grid-template-columns:minmax(0,1fr) 275px!important}
}
@media(max-width:760px){
 html body.dh-studio-v10{font-size:13px}
 html body.dh-studio-v10 .wrap{width:calc(100% - 28px)}
 html body.dh-studio-v10 .dhcs-global-header{position:relative!important}
 html body.dh-studio-v10 .dhcs-global-nav{min-height:62px;width:calc(100% - 26px)}
 html body.dh-studio-v10 .dhcs-global-logo img{width:160px!important;height:52px!important}
 html body.dh-studio-v10 .dhcs-global-links,html body.dh-studio-v10 .dh-studio-header-account,html body.dh-studio-v10 .dh-studio-header-currency{display:none!important}
 html body.dh-studio-v10 .dhcs-global-actions{margin-left:auto;gap:10px}
 html body.dh-studio-v10 .dhcs-menu-toggle{width:33px;height:34px;border-radius:9px;background:rgba(255,255,255,.14)!important}
 html body.dh-studio-home .search-first-hero{height:295px!important;min-height:295px!important;background-position:center center!important}
 html body.dh-studio-home .search-first-layout{padding:26px 0 0!important}
 html body.dh-studio-home .search-first-copy{width:92%;text-align:left;margin:0!important}
 html body.dh-studio-home .search-first-copy h1{font-size:clamp(27px,7vw,40px);line-height:1.06;margin:0 0 8px!important}
 html body.dh-studio-home .search-first-lead{font-size:12px;max-width:310px;line-height:1.4}
 html body.dh-studio-home .live-search-section{margin-top:-108px!important}
 html body.dh-studio-home .live-search-shell{border-radius:17px!important;padding:10px 11px!important}
 html body.dh-studio-home .search-mode-toggle{display:grid!important;grid-template-columns:repeat(3,1fr);width:100%!important;margin:0 0 7px!important}
 html body.dh-studio-home .search-mode-btn{min-width:0!important;padding:9px 4px!important;font-size:12px;min-height:35px}
 html body.dh-studio-home .live-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
 html body.dh-studio-home .live-search-grid>.live-field.hotel-name{grid-column:1/-1}
 html body.dh-studio-home .live-field label{font-size:10px}
 html body.dh-studio-home .live-field input,html body.dh-studio-home .live-field select{height:41px!important;min-height:41px!important;font-size:12px;padding:7px 10px!important}
 html body.dh-studio-home .dh-v8-guest-select{grid-column:1/-1}
 html body.dh-studio-home .dh-v8-guest-select>summary{height:41px;min-height:41px!important}
 html body.dh-studio-home .dh-v8-guest-fields{top:calc(100% + 3px);left:0;right:0;width:100%;z-index:500}
 html body.dh-studio-home .live-search-submit{grid-column:1/-1;min-height:44px!important;height:44px!important;font-size:13px}
 html body.dh-studio-home .dh-search-advanced>summary{font-size:11px}
 html body.dh-studio-home .dh-search-advanced-fields>.live-field{width:100%;flex-basis:100%}
 html body.dh-studio-home .live-search-foot{display:none}
 html body.dh-studio-v10 .dh-ref-benefits{display:none}
 html body.dh-studio-v10 .popular-hotels-section{padding:20px 0 12px!important}
 html body.dh-studio-v10 .popular-hotels-head h2{font-size:20px}
 html body.dh-studio-v10 .dh9-view-all{font-size:11px;margin-top:-22px}
 html body.dh-studio-v10 .popular-hotel-card{flex:0 0 min(82%,320px)!important;width:min(82%,320px)!important;min-width:0!important}
 html body.dh-studio-v10 .popular-hotel-media{height:163px!important}
 html body.dh-studio-v10 .popular-hotel-body h3{font-size:13px}
 html body.dh-studio-v10 .popular-hotel-action{min-height:37px!important}
 html body.dh-studio-v10 .destination-showcase-section{margin:8px 14px 20px;width:calc(100% - 28px);padding:13px 0!important}
 html body.dh-studio-v10 .destination-showcase-section>.wrap{width:calc(100% - 24px)}
 html body.dh-studio-v10 .destination-showcase-head h2{font-size:18px}
 html body.dh-studio-v10 .destination-card{flex:0 0 43%;min-width:130px}
 html body.dh-studio-v10 .destination-card-media,html body.dh-studio-v10 .destination-card-media img{height:110px!important}
 html body.dh-studio-v10 .dh-ref-attraction-card{flex-basis:72%}
 html body.dh-studio-v10 .dh9-results-stage{padding:5px 0 22px!important}
 html body.dh-studio-v10 .dh-studio-results-grid{display:block}
 html body.dh-studio-v10 .dh-studio-results-aside{display:none!important}
 html body.dh-studio-v10 .location-hotel-list{gap:12px!important}
 html body.dh-studio-v10 .location-hotel-card{display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:auto 1fr auto!important;min-height:0!important;border-radius:13px!important}
 html body.dh-studio-v10 .location-hotel-media{grid-column:1/-1;grid-row:1;width:100%!important;height:205px!important;max-height:none!important;min-height:205px!important}
 html body.dh-studio-v10 .location-hotel-media img{height:100%!important;width:100%!important;object-fit:cover!important}
 html body.dh-studio-v10 .location-hotel-copy{grid-column:1/-1;grid-row:2;padding:12px 13px 10px!important;justify-content:start}
 html body.dh-studio-v10 .location-hotel-name{font-size:15px!important}
 html body.dh-studio-v10 .location-hotel-price{grid-column:1/-1;grid-row:3;display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:end;text-align:left;padding:10px 13px 13px!important;border:0;border-top:1px solid #e7eff3;gap:10px}
 html body.dh-studio-v10 .location-hotel-price strong{font-size:23px}
 html body.dh-studio-v10 .location-card-actions{min-width:134px;max-width:165px}
 html body.dh-studio-v10.dhcs-hotel-page .hero-grid{grid-template-columns:1fr!important;grid-template-areas:'media' 'summary' 'sidebar'!important;gap:11px!important}
 html body.dh-studio-v10.dhcs-hotel-page .hero-media{height:235px!important}
 html body.dh-studio-v10.dhcs-hotel-page .thumbs button{flex-basis:67px!important;width:67px!important;height:47px!important}
 html body.dh-studio-v10.dhcs-hotel-page .summary-card h1{font-size:22px}
 html body.dh-studio-v10.dhcs-hotel-page .dh9-rate-overview{position:static;max-height:none;padding:13px!important}
 html body.dh-studio-v10.dhcs-hotel-page .content-grid{grid-template-columns:1fr!important;gap:10px!important}
 html body.dh-studio-v10.dhcs-hotel-page .availability-card{padding:13px!important}
 html body.dh-studio-v10.dhcs-hotel-page .rate-grid{grid-template-columns:1fr!important}
 html body.dh-studio-v10.dhcs-hotel-page .rate-card{grid-template-columns:minmax(0,1fr) auto!important;padding:10px!important}
 html body.dh-studio-v10.dhcs-hotel-page .rate-price strong{font-size:17px}
 html body.dh-studio-v10 .booking-modal.is-open{padding:7px!important}
 html body.dh-studio-v10 .booking-modal .booking-dialog{max-height:calc(100dvh - 14px)!important;width:100%!important}
 html body.dh-studio-v10 .dh-studio-footer{padding:28px 18px 96px;margin-top:30px}
 html body.dh-studio-v10 .dh-studio-footer-inner{grid-template-columns:1fr 1fr;gap:24px 14px}
 html body.dh-studio-v10 .dh-studio-footer-brand,html body.dh-studio-v10 .dh-studio-footer-company{grid-column:1/-1}
 html body.dh-studio-v10 .dh-studio-footer-brand img{width:165px}
 html body.dh-studio-v10 .dh-ref-bottom-nav{position:fixed;inset:auto 0 0;z-index:700;display:grid!important;grid-template-columns:repeat(4,1fr);height:calc(64px + env(safe-area-inset-bottom));padding:5px 5px env(safe-area-inset-bottom);background:#fff;border-top:1px solid #e1ecf1;box-shadow:0 -5px 21px rgba(18,60,85,.07)}
 html body.dh-studio-v10 .dh-ref-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#607a8e;font-size:10px;font-weight:650;min-width:0!important;text-align:center}
 html body.dh-studio-v10 .dh-ref-bottom-nav a:first-child{color:var(--dh-teal)}
 html body.dh-studio-v10 .dh-ref-bottom-nav a svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}
 html body.dh-studio-v10 .dh-ref-bottom-nav a:first-child svg{fill:rgba(0,139,163,.14)}
 html body.dh-studio-v10{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
 html body.dh-studio-v10:not(.dh-studio-privacy-ready) #dh-privacy-choices{bottom:calc(75px + env(safe-area-inset-bottom))!important;left:14px!important}
}
@media(max-width:380px){
 html body.dh-studio-home .live-search-shell{padding:9px!important}
 html body.dh-studio-home .search-mode-btn{font-size:11px}
 html body.dh-studio-v10 .wrap{width:calc(100% - 22px)}
 html body.dh-studio-v10.dhcs-hotel-page .facts{grid-template-columns:1fr 1fr!important}
}

/* -------------------------------------------------------------------------
 * Final Studio 2.0 template layer: overrides *only* compatibility widget UI.
 * All actual supplier amounts and actions continue to come from plugin data.
 * ------------------------------------------------------------------------- */
html body.dh-studio-v10 .dhcs-global-header .dhcs-global-links a,
html body.dh-studio-v10 .dhcs-global-header .dhcs-global-links a:visited{color:#fff!important;font-weight:720!important;text-shadow:none!important}
html body.dh-studio-v10 .dhcs-global-header .dhcs-global-links a:hover{color:#d8fcff!important}
html body.dh-studio-v10 .dhcs-global-header .dhcs-menu-toggle{display:flex!important}
html body.dh-studio-v10 .dhcs-global-header .dhcs-menu-toggle>span{background:#fff!important}
html body.dh-studio-home .live-search-grid{background:transparent!important;box-shadow:none!important;border:0!important;padding:0!important;margin:0!important;max-width:none!important;min-height:0!important}
html body.dh-studio-home .live-search-grid .live-field{margin:0!important;padding:0!important}
html body.dh-studio-home .live-search-grid .live-field>div{margin:0!important}
html body.dh-studio-home .live-search-shell{min-height:0!important}
html body.dh-studio-home .live-search-body{border:0!important;box-shadow:none!important}
html body.dh-studio-home .search-mode-toggle{max-width:none!important}
html body.dh-studio-home .search-mode-btn{flex:1!important;min-width:0!important}
html body.dh-studio-home .live-search-submit{white-space:nowrap!important}
html body.dh-studio-v10 .dh-studio-results-aside{word-break:normal!important;overflow-wrap:normal!important}
html body.dh-studio-v10 .dh-studio-results-aside :is(.dh-filter-fields,.location-filter-fields,.location-filter-controls){display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;grid-template-columns:none!important;min-width:0!important}
html body.dh-studio-v10 .dh-studio-results-aside :is(label,.location-filter-label,.dh-filter-label){display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;width:100%!important;white-space:normal!important;line-height:1.5!important;word-break:normal!important;overflow-wrap:normal!important}
html body.dh-studio-v10 .dh-studio-results-aside input[type=checkbox]{flex:0 0 auto!important;width:15px!important;height:15px!important;margin:0!important}
html body.dh-studio-v10 .dh-studio-results-aside select{min-width:100%!important;max-width:100%!important}
html body.dh-studio-v10 .location-hotel-price .location-card-actions{display:block!important;min-width:0!important;width:100%!important;max-width:none!important}
html body.dh-studio-v10 .location-hotel-price .location-card-actions .btn{display:block!important;text-align:center!important;width:100%!important;max-width:none!important;min-width:0!important;white-space:nowrap!important}
html body.dh-studio-v10 .dhcs-menu-toggle:focus-visible{outline:2px solid #fff!important}
/* Dedicated destination and category pages: not inherited generic block layouts. */
html body.dh-studio-v10.dhopt2-city .hero,html body.dh-studio-v10.dhopt2-collection .hero,html body.dh-studio-v10.dhopt2-country .hero{padding:0!important;margin:0!important}
html body.dh-studio-v10.dhopt2-city .hero .wrap,html body.dh-studio-v10.dhopt2-collection .hero .wrap,html body.dh-studio-v10.dhopt2-country .hero .wrap{width:100%!important;max-width:none!important}
html body.dh-studio-v10.dhopt2-city .hero-box,html body.dh-studio-v10.dhopt2-collection .hero-box,html body.dh-studio-v10.dhopt2-country .hero-box{border:0!important;border-radius:0!important;box-shadow:none!important;min-height:226px!important;padding:42px max(38px,calc((100% - 1312px)/2))!important;display:flex!important;gap:24px;align-items:center!important;justify-content:space-between!important;background:linear-gradient(100deg,rgba(0,69,91,.79),rgba(0,103,131,.2)),var(--dh-ref-hero) center 54%/cover no-repeat!important;color:#fff!important}
html body.dh-studio-v10.dhopt2-city .hero-box h1,html body.dh-studio-v10.dhopt2-collection .hero-box h1,html body.dh-studio-v10.dhopt2-country .hero-box h1{color:#fff!important;font-size:clamp(27px,3.3vw,43px)!important;margin:9px 0!important}
html body.dh-studio-v10.dhopt2-city .hero-box .lead,html body.dh-studio-v10.dhopt2-collection .hero-box .lead,html body.dh-studio-v10.dhopt2-country .hero-box .lead{color:#edfbff!important;font-size:13px!important;max-width:680px!important}
html body.dh-studio-v10.dhopt2-city .hero-box .kicker,html body.dh-studio-v10.dhopt2-collection .hero-box .kicker,html body.dh-studio-v10.dhopt2-country .hero-box .kicker{color:#d8fbff!important;font-size:10px!important}
html body.dh-studio-v10.dhopt2-city .hero-stat,html body.dh-studio-v10.dhopt2-collection .hero .stat,html body.dh-studio-v10.dhopt2-country .hero .stat{background:rgba(255,255,255,.92)!important;border-radius:13px!important;padding:13px 18px!important;max-width:230px;flex:0 0 auto;box-shadow:none!important}
html body.dh-studio-v10.dhopt2-city .hero-stat strong,html body.dh-studio-v10.dhopt2-country .stat strong{font-size:25px!important;color:var(--dh-ink)!important}
html body.dh-studio-v10.dhopt2-city .hero-stat span,html body.dh-studio-v10.dhopt2-country .stat span{font-size:11px!important;color:var(--dh-muted)!important}
html body.dh-studio-v10.dhopt2-city .search-strip,html body.dh-studio-v10.dhopt2-collection .collection-search{padding:16px 0!important;background:#f4fafc!important}
html body.dh-studio-v10.dhopt2-city .search-card,html body.dh-studio-v10.dhopt2-collection .search-card{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(140px,.9fr)!important;gap:10px!important;align-items:end!important;border:1px solid var(--dh-edge)!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important;padding:13px!important}
html body.dh-studio-v10.dhopt2-city .search-card .field label,html body.dh-studio-v10.dhopt2-collection .search-card .field label{font-size:10px!important;text-transform:none!important;margin-bottom:3px!important}
html body.dh-studio-v10.dhopt2-city .search-card :is(input,select),html body.dh-studio-v10.dhopt2-collection .search-card :is(input,select){border:1px solid var(--dh-edge)!important;border-radius:9px!important;min-height:40px!important;background:#fff!important;font-size:12px!important}
html body.dh-studio-v10.dhopt2-city .search-card>.btn,html body.dh-studio-v10.dhopt2-collection .search-card>.btn{height:40px!important;min-height:40px!important;box-shadow:none!important;border-radius:9px!important;padding:8px!important}
html body.dh-studio-v10.dhopt2-city .dh-ref-city-layout.is-hotel-results{max-width:1312px;width:calc(100% - 64px);margin:20px auto 40px;display:grid!important;grid-template-columns:225px minmax(0,1fr)!important;align-items:start;gap:22px}
html body.dh-studio-v10.dhopt2-city .dh-ref-city-layout .wrap{width:100%!important;max-width:none!important}
html body.dh-studio-v10.dhopt2-city .dh-ref-results-sidebar{position:sticky;top:18px;background:#fff;padding:12px!important;border:1px solid var(--dh-edge);border-radius:12px;min-width:0!important;max-width:none!important;overflow:visible;grid-column:1!important;grid-row:1!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse{grid-column:2!important;grid-row:1!important;margin:0!important;padding:0!important;min-width:0!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .section-head{margin:0 0 14px!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .section-head h2{font-size:23px!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card{display:grid!important;grid-template-columns:200px minmax(0,1fr)!important;min-height:143px!important;max-width:none!important;border:1px solid var(--dh-edge)!important;border-radius:12px!important;box-shadow:none!important;background:#fff!important;overflow:hidden!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card-media{width:200px!important;height:100%!important;min-height:143px!important;border-radius:0!important;align-self:stretch;overflow:hidden!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card-media img{height:100%!important;width:100%!important;object-fit:cover!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card-body{padding:12px 15px!important;display:block!important;min-width:0!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card h3{font-size:15px!important;margin:4px 0 5px!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card .hotel-key-chips{margin:4px 0!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card .hotel-live-panel{background:transparent!important;border:0!important;padding:2px 0!important;margin:0!important;box-shadow:none!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card .hotel-price-row{display:flex!important;gap:10px!important;justify-content:space-between;align-items:center!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card .hotel-total-price{font-size:19px!important;color:var(--dh-ink)!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card .hotel-card-actions{margin:8px 0 0!important}
html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card .hotel-card-actions .btn{font-size:11px!important;min-height:32px!important;padding:5px 11px!important;box-shadow:none!important}
html body.dh-studio-v10.dhopt2-city .dh-city-filters{display:block!important;border:0!important;background:#fff!important;padding:0!important;box-shadow:none!important}
html body.dh-studio-v10.dhopt2-city .dh-city-filters summary{font-size:13px!important;font-weight:800!important;padding:0 0 10px!important;color:var(--dh-ink)!important}
html body.dh-studio-v10.dhopt2-city .hotel-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:11px!important;min-width:0!important;padding:0!important;background:transparent!important}
html body.dh-studio-v10.dhopt2-city .hotel-toolbar label{width:100%!important;display:block!important;min-width:0!important}
html body.dh-studio-v10.dhopt2-city .hotel-toolbar select{min-width:0!important;max-width:100%!important;width:100%!important;padding:9px;border:1px solid var(--dh-edge);border-radius:8px;background:#fff}
html body.dh-studio-v10.dhopt2-city .dh-filter-actions{margin-top:10px!important}
/* Collection and attraction cards: photograph on top, compact contents below. */
html body.dh-studio-v10.dhopt2-collection #collectionGrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:13px!important}
html body.dh-studio-v10.dhopt2-collection #collectionGrid .card{border:1px solid var(--dh-edge)!important;box-shadow:none!important;border-radius:11px!important;overflow:hidden!important;padding:0!important}
html body.dh-studio-v10.dhopt2-collection #collectionGrid .card .media{width:100%!important;height:165px!important;display:block!important;overflow:hidden!important}
html body.dh-studio-v10.dhopt2-collection #collectionGrid .card .media img{width:100%!important;height:100%!important;object-fit:cover!important}
html body.dh-studio-v10.dhopt2-collection #collectionGrid .card .body{padding:10px 12px!important;display:flex;flex-direction:column;gap:5px}
html body.dh-studio-v10.dhopt2-collection #collectionGrid .card h3{font-size:14px!important;line-height:1.25;margin:0!important}
html body.dh-studio-v10.dhopt2-collection #collectionGrid .card .btn{padding:8px!important;min-height:32px!important;font-size:10px!important}
html body.dh-studio-v10.dhopt2-collection .toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center!important;background:#fff;border:0;padding:12px 0!important}
html body.dh-studio-v10.dhopt2-collection .toolbar label{flex:1 1 170px;max-width:250px;font-size:11px}
html body.dh-studio-v10.dhopt2-collection .toolbar select{width:100%;border:1px solid var(--dh-edge);border-radius:8px;padding:9px;background:#fff}
html body.dh-studio-v10.dhopt2-country .hero .stat{display:none!important}
html body.dh-studio-v10.dhopt2-country .hero-box{min-height:265px!important}
html body.dh-studio-v10.dhopt2-country .city-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
html body.dh-studio-v10.dhopt2-country .city-card{min-height:143px!important;padding:13px!important;border:1px solid var(--dh-edge);box-shadow:none;border-radius:11px;background:#fff!important}
html body.dh-studio-v10.dhopt2-country .city-card h3{font-size:16px!important;margin:9px 0!important}
html body.dh-studio-v10.dhopt2-country .city-card .btn{margin-top:auto;font-size:11px;padding:7px!important;min-height:31px!important}
html body.dh-studio-v10.dhopt2-country .section-head h2{font-size:23px!important}
html body.dh-studio-v10.dhopt2-city.city-attractions .dh-ref-city-layout{max-width:1312px;margin:18px auto}
html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .card{display:flex!important;flex-direction:column!important;min-width:0!important;box-shadow:none!important;border:1px solid var(--dh-edge)!important;border-radius:11px!important;overflow:hidden!important}
html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .card-media{height:135px!important;min-height:0!important;width:100%!important}
html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .card-body{padding:10px!important}
html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .card h3{font-size:14px!important}
html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .card-foot{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:10px!important}
html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .card-foot .btn{font-size:10px!important;padding:6px!important;min-height:32px!important}
@media(max-width:760px){
 html body.dh-studio-v10 .dhcs-global-header .dhcs-global-links{display:none!important}
 html body.dh-studio-v10.dhopt2-city .hero-box,html body.dh-studio-v10.dhopt2-collection .hero-box,html body.dh-studio-v10.dhopt2-country .hero-box{padding:22px 20px!important;min-height:200px!important}
 html body.dh-studio-v10.dhopt2-city .hero-box h1,html body.dh-studio-v10.dhopt2-collection .hero-box h1,html body.dh-studio-v10.dhopt2-country .hero-box h1{font-size:27px!important}
 html body.dh-studio-v10.dhopt2-city .hero-stat,html body.dh-studio-v10.dhopt2-collection .stat{display:none!important}
 html body.dh-studio-v10.dhopt2-city .search-card,html body.dh-studio-v10.dhopt2-collection .search-card{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:10px!important}
 html body.dh-studio-v10.dhopt2-city .search-card>.btn,html body.dh-studio-v10.dhopt2-collection .search-card>.btn{grid-column:1/-1}
 html body.dh-studio-v10.dhopt2-city .dh-ref-city-layout.is-hotel-results{display:block!important;width:calc(100% - 28px)!important;margin:10px auto!important}
 html body.dh-studio-v10.dhopt2-city .dh-ref-results-sidebar{position:static!important;display:block!important;margin:0 0 10px!important}
 html body.dh-studio-v10.dhopt2-city .dh-city-filters:not([open]) .hotel-toolbar,html body.dh-studio-v10.dhopt2-city .dh-city-filters:not([open]) .dh-filter-actions{display:none!important}
 html body.dh-studio-v10.dhopt2-city .dh-v8-browse .grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
 html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card{display:flex!important;flex-direction:column!important;min-height:0!important}
 html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card-media{height:190px!important;width:100%!important;min-height:190px!important}
 html body.dh-studio-v10.dhopt2-city .dh-v8-browse .card-body{padding:11px!important}
 html body.dh-studio-v10.dhopt2-city .dh-v8-browse .section-head h2{font-size:20px!important}
 html body.dh-studio-v10.dhopt2-collection #collectionGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 html body.dh-studio-v10.dhopt2-collection #collectionGrid .card .media{height:128px!important}
 html body.dh-studio-v10.dhopt2-country .city-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body.dh-studio-v10.dhopt2-city.city-attractions .dh-v8-browse .card-media{height:120px!important;min-height:0!important}
 html body.dh-studio-home .search-mode-toggle{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:3px!important;width:100%!important;padding:4px!important}
 html body.dh-studio-home .search-mode-toggle>.search-mode-btn{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:8px 2px!important;white-space:nowrap!important}
 html body.dh-studio-home .live-search-grid{padding:0!important;border:0!important;background:transparent!important}
 html body.dh-studio-v10 .popular-hotels-section{padding-top:17px!important}
 html body.dh-studio-v10 .dh-studio-footer{margin-top:16px!important}
}
/* Filter widget base engine used a horizontal grid; force genuine sidebar. */
html body.dh-studio-v10 .dh-studio-results-aside #locationAdvancedFilters,
html body.dh-studio-v10 .dh-studio-results-aside .location-results-tools{
 display:block!important;width:100%!important;min-width:100%!important;max-width:none!important;
 padding:0!important;margin:0!important;grid-template-columns:none!important;align-items:stretch!important;
}
html body.dh-studio-v10 .dh-studio-results-aside #locationAdvancedFilters > :is(h3,h4,strong,div,label,fieldset){width:100%!important;max-width:none!important;min-width:0!important}
html body.dh-studio-v10 .dh-studio-results-aside .dh-filter-fields{display:flex!important;flex-direction:column!important;gap:6px!important;width:100%!important;max-width:none!important;align-items:stretch!important}
html body.dh-studio-v10 .dh-studio-results-aside .dh-filter-fields label{display:flex!important;width:100%!important;flex:0 0 auto!important;gap:8px!important;align-items:center!important;justify-content:flex-start!important;word-break:normal!important;white-space:normal!important;margin:3px 0!important}
html body.dh-studio-v10 .dh-studio-results-aside .dh-filter-fields label:has(select){display:block!important}
html body.dh-studio-v10 .dh-studio-results-aside select{width:100%!important;min-width:0!important;max-width:100%!important;display:block!important}
@media (min-width:761px){html body.dh-studio-v10 .dhcs-menu-toggle{display:none!important}}


/* Destination Hub Collage 3.0 — parity rules authored for the supplied
   Travel UI Collage. Theme-owned styles, NOT a separate WP styling plugin.
   The existing supplier widget and booking DOM stays in place. */
:root {--dh-teal:#007f98;--dh-deep:#006b86;--dh-ink:#102f50;--dh-muted:#617a93;--dh-edge:#dae8f0;--dh-pale:#eaf7fb;--dh-radius:11px;--dh-shadow:0 7px 20px rgba(13,65,93,.085)}
html body.dh-collage-v11{font-family:Inter,"Segoe UI",Arial,sans-serif;background:#fff;color:var(--dh-ink);font-size:13px;line-height:1.45}
html body.dh-collage-v11 :is(h1,h2,h3,h4){font-family:Inter,"Segoe UI",Arial,sans-serif;line-height:1.18;letter-spacing:-.025em;color:var(--dh-ink)}
html body.dh-collage-v11 :is(button,input,select,textarea){font-family:inherit}
html body.dh-collage-v11 .wrap{width:calc(100% - 76px);max-width:1280px}
/* Header: 1:1 navy/teal treatment, no white wrapper and no second logo. */
html body.dh-collage-v11 .dhcs-global-header{background:linear-gradient(110deg,#006a83,#00849b)!important;position:relative;z-index:500;box-shadow:none!important;backdrop-filter:none!important}
html body.dh-collage-v11 .dhcs-global-nav{width:calc(100% - 76px);max-width:1340px;min-height:65px!important;height:65px;padding:4px 0;gap:24px}
html body.dh-collage-v11 .dhcs-global-logo{margin:0 auto 0 0;box-shadow:none!important;border:0!important;max-width:200px;background:transparent!important;padding:0!important}
html body.dh-collage-v11 .dhcs-global-logo img{width:174px!important;height:54px!important;max-width:174px!important;object-fit:contain;object-position:left center;filter:none!important;box-shadow:none!important}
html body.dh-collage-v11 .dhcs-global-links{margin-left:auto;gap:clamp(14px,2.2vw,29px)}
html body.dh-collage-v11 .dhcs-global-links a{color:#fff;font-size:13px;line-height:1.15;white-space:nowrap;font-weight:700}
html body.dh-collage-v11 .dhcs-global-actions{gap:13px}
html body.dh-collage-v11 .dh-studio-header-search,html body.dh-collage-v11 .dh-studio-header-account{color:#fff}
html body.dh-collage-v11 .dh-studio-header-currency{color:#fff}
html body.dh-collage-v11 .dhcs-menu-toggle{display:flex!important;background:transparent!important;border:0!important;box-shadow:none!important}
html body.dh-collage-v11 .dhcs-menu-toggle span{background:#fff!important}
/* Coastal hero and search panel: one headline; form becomes a shallow one-row card. */
html body.dh-collage-v11.dh-studio-home .search-first-hero{min-height:337px!important;height:337px!important;background-position:center 42%!important}
html body.dh-collage-v11.dh-studio-home .search-first-layout{padding:51px 0 0!important}
html body.dh-collage-v11.dh-studio-home .search-first-copy{width:min(570px,75%);text-align:left}
html body.dh-collage-v11.dh-studio-home .search-first-copy h1{font-size:clamp(39px,3.9vw,56px)!important;line-height:1.04;max-width:550px;margin:0 0 7px!important;letter-spacing:-.04em;font-weight:800;color:#fff!important}
html body.dh-collage-v11.dh-studio-home .search-first-copy .search-first-lead{font-size:15px!important;line-height:1.25;color:#fff!important}
html body.dh-collage-v11.dh-studio-home .live-search-section{margin-top:-126px!important;z-index:30}
html body.dh-collage-v11.dh-studio-home .live-search-shell{position:relative;overflow:visible;border-radius:16px!important;box-shadow:0 12px 29px rgba(15,71,89,.16)!important;padding:13px 18px 15px!important;border:1px solid #e5eef3;min-height:0!important}
html body.dh-collage-v11.dh-studio-home :is(.live-search-head,.live-search-foot){display:none!important}
html body.dh-collage-v11.dh-studio-home .search-mode-toggle{display:inline-flex!important;width:auto!important;margin:0 0 8px!important;padding:0!important;border-radius:8px;background:#f0f6f8;gap:2px}
html body.dh-collage-v11.dh-studio-home .search-mode-btn{font-size:12px;min-height:31px!important;min-width:0;padding:7px 17px!important;border-radius:7px!important}
html body.dh-collage-v11.dh-studio-home .search-mode-btn.is-active{background:#007d96!important;color:#fff!important}
html body.dh-collage-v11.dh-studio-home .live-search-grid{display:grid!important;grid-template-columns:minmax(200px,1.85fr) minmax(134px,1.1fr) minmax(134px,1.1fr) minmax(140px,.9fr) minmax(140px,.88fr)!important;align-items:end;gap:8px!important}
html body.dh-collage-v11.dh-studio-home .live-field{min-width:0}
html body.dh-collage-v11.dh-studio-home .live-field>label{font-size:10px!important;color:#657d90!important;font-weight:680;margin:0 0 3px!important}
html body.dh-collage-v11.dh-studio-home .live-field :is(input,select),html body.dh-collage-v11.dh-studio-home .dh-v8-guest-select>summary{height:41px!important;min-height:41px!important;max-height:41px!important;border:1px solid #d9e6ef!important;border-radius:8px!important;background-color:#fff!important;color:#334e68;font-size:12px!important;padding:6px 10px!important;box-shadow:none!important;max-width:100%}
html body.dh-collage-v11.dh-studio-home .live-search-grid .live-field:first-child input{padding-left:32px!important}
html body.dh-collage-v11.dh-studio-home .dh-v8-guest-select>summary{display:flex;align-items:center;gap:7px;white-space:nowrap}
html body.dh-collage-v11.dh-studio-home .dh-v8-guest-select>summary :is(span){font-size:11px}
html body.dh-collage-v11.dh-studio-home .live-search-submit{grid-column:5;height:41px!important;min-height:41px!important;margin:0!important;padding:7px 9px!important;border-radius:8px!important;font-size:12px!important;font-weight:800;background:#007e99!important;color:#fff!important;white-space:nowrap}
/* Advanced controls are an accessible popover, instead of two extra form rows. */
html body.dh-collage-v11.dh-studio-home .dh-collage-hotel-form{position:relative}
html body.dh-collage-v11.dh-studio-home .dh-collage-advanced{position:absolute!important;right:0;top:-34px;z-index:25;width:auto!important;max-width:none!important;grid-column:auto!important;margin:0!important;border:0!important;background:transparent!important;padding:0!important}
html body.dh-collage-v11.dh-studio-home .dh-collage-advanced>summary{display:flex;gap:4px;justify-content:center;align-items:center;color:#59788a!important;font-size:10px!important;padding:4px 8px!important;background:#f5f9fb;border:1px solid #e3edf3;border-radius:7px;white-space:nowrap;cursor:pointer}
html body.dh-collage-v11.dh-studio-home .dh-collage-advanced>summary span{color:#007f98;font-size:16px!important;margin:0!important}
html body.dh-collage-v11.dh-studio-home .dh-collage-advanced .dh-search-advanced-fields{display:flex!important;flex-direction:column;gap:9px!important;position:absolute;right:0;top:calc(100% + 6px);width:min(330px,calc(100vw - 30px));padding:14px!important;border:1px solid #d8e8ef!important;border-radius:11px;background:#fff!important;box-shadow:0 17px 35px rgba(7,55,76,.18);z-index:100}
html body.dh-collage-v11.dh-studio-home .dh-collage-advanced:not([open]) .dh-search-advanced-fields{display:none!important}
html body.dh-collage-v11.dh-studio-home .dh-collage-advanced .live-field{flex:1 1 auto;width:100%!important}
html body.dh-collage-v11.dh-studio-home .child-ages{max-width:100%;margin-top:0}
html body.dh-collage-v11.dh-studio-home .child-ages:not(:empty){margin:8px 0 0;padding:9px;border:1px solid #e0edf3;border-radius:9px;background:#fff}
html body.dh-collage-v11.dh-studio-home .search-first-trust{display:none!important}
/* Reference hero terminates after panel (no needless whitespace). */
html body.dh-collage-v11 .dh-ref-benefits{margin:17px 0 8px!important}
html body.dh-collage-v11 .dh-ref-benefits-grid{padding:12px 0!important;border-bottom:1px solid #edf2f5}
html body.dh-collage-v11 .dh-ref-benefit>span{width:32px;height:32px;font-size:16px}
html body.dh-collage-v11 .popular-hotels-section{padding:16px 0 12px!important}
html body.dh-collage-v11 .popular-hotels-head h2{font-size:20px!important;font-weight:800}
html body.dh-collage-v11 .popular-hotel-card{border-radius:9px!important;box-shadow:none!important}
html body.dh-collage-v11 .popular-hotel-media{height:131px!important}
html body.dh-collage-v11 .popular-hotel-body{padding:9px!important}
html body.dh-collage-v11 .popular-hotel-body h3{font-size:12px!important}
html body.dh-collage-v11 .popular-latest-price.is-ours strong{font-size:18px}
html body.dh-collage-v11 .popular-hotel-action{border-radius:8px;font-size:10px!important;min-height:28px!important}
html body.dh-collage-v11 .destination-showcase-section{margin:12px auto 19px;width:calc(100% - 76px);max-width:1280px;padding:12px 0!important;border-radius:13px}
html body.dh-collage-v11 .destination-showcase-head h2{font-size:19px!important}
html body.dh-collage-v11 .destination-card-media,html body.dh-collage-v11 .destination-card-media img{height:105px!important}
/* Filter layout: side panel is a genuine separate column, same card anatomy as collage. */
html body.dh-collage-v11 .dh9-results-stage{background:#fff;scroll-margin-top:30px;padding:10px 0!important}
html body.dh-collage-v11 .dh-studio-results-grid{display:grid!important;grid-template-columns:207px minmax(0,1fr)!important;gap:17px!important;align-items:start}
html body.dh-collage-v11 .dh-studio-results-aside{display:block;min-width:0;border-right:1px solid #edf1f4;padding:7px 17px 4px 0}
html body.dh-collage-v11 .dh-studio-results-aside h3{margin:0 0 15px;font-size:15px;font-weight:800}
html body.dh-collage-v11 .dh-studio-results-aside label{display:block;font-size:11px;margin:8px 0;color:#657d90}
html body.dh-collage-v11 .dh-studio-results-aside input[type=checkbox]{accent-color:#007f98;width:14px;height:14px;vertical-align:middle;margin-right:6px}
html body.dh-collage-v11 .dh-studio-results-aside input[type=range]{accent-color:#009cad;width:100%}
html body.dh-collage-v11 .location-hotel-list{gap:9px!important}
html body.dh-collage-v11 .location-hotel-card{grid-template-columns:210px minmax(0,1fr) 148px!important;min-height:144px!important;max-height:none!important;border-radius:10px!important;gap:0!important}
html body.dh-collage-v11 .location-hotel-media{height:145px!important;min-height:145px!important;max-height:145px!important}
html body.dh-collage-v11 .location-hotel-copy{padding:12px 13px!important;justify-content:flex-start!important;gap:6px!important}
html body.dh-collage-v11 .location-hotel-name{font-size:13px!important;order:1}
html body.dh-collage-v11 .location-hotel-meta{order:0;font-size:11px}
html body.dh-collage-v11 .location-hotel-address{order:2;font-size:10px!important}
html body.dh-collage-v11 .location-distance-note{order:3;font-size:10px!important}
html body.dh-collage-v11 .location-hotel-price{border-left:0!important;padding:10px!important;align-items:stretch;gap:12px!important}
html body.dh-collage-v11 .location-hotel-price strong{font-size:20px!important}
html body.dh-collage-v11 .location-card-actions .btn{font-size:10px!important;min-height:32px!important;padding:7px 8px!important}
html body.dh-collage-v11 .location-card-image-count{bottom:5px;right:5px}
/* Hotel page: photo/gallery, property copy, and a short sticky booking summary. */
html body.dh-collage-v11.dhcs-hotel-page{background:#fbfdff!important}
html body.dh-collage-v11.dhcs-hotel-page .hero-grid{grid-template-columns:minmax(0,1fr) 285px!important;grid-template-areas:'media sidebar' 'summary sidebar'!important;gap:12px 17px!important}
html body.dh-collage-v11.dhcs-hotel-page .hero-media{height:332px!important}
html body.dh-collage-v11.dhcs-hotel-page .summary-card h1{font-size:23px!important;letter-spacing:-.03em}
html body.dh-collage-v11.dhcs-hotel-page .dh9-rate-overview{max-height:600px!important;position:sticky;top:10px;overflow-y:auto;padding:12px!important}
html body.dh-collage-v11.dhcs-hotel-page .dh9-rate-from strong{font-size:25px!important}
html body.dh-collage-v11.dhcs-hotel-page .dh9-rate-teasers{max-height:340px;overflow-y:auto}
html body.dh-collage-v11.dhcs-hotel-page .dh9-teaser{grid-template-columns:43px minmax(0,1fr) auto!important;gap:6px!important}
html body.dh-collage-v11.dhcs-hotel-page .dh9-teaser img{width:43px;height:42px}
html body.dh-collage-v11.dhcs-hotel-page .dh9-teaser-price{grid-column:3;white-space:nowrap}
html body.dh-collage-v11.dhcs-hotel-page .content-card h2{font-size:17px!important}
html body.dh-collage-v11.dhcs-hotel-page .section{padding:10px 0!important}
html body.dh-collage-v11.dhcs-hotel-page .availability-card{max-width:100%;padding:18px!important}
html body.dh-collage-v11.dhcs-hotel-page .availability-head h2{font-size:20px!important}
html body.dh-collage-v11.dhcs-hotel-page .rate-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body.dh-collage-v11.dhcs-hotel-page .room-group-gallery .room-image-open{max-width:145px}
/* Booking modals and management forms: reference uses smaller titles & form labels. */
html body.dh-collage-v11 .booking-modal.is-open{z-index:100010!important}
html body.dh-collage-v11 .hotel-policy-modal.is-open{z-index:100030!important}
html body.dh-collage-v11 .booking-dialog{border-radius:14px!important;border:1px solid #e0edf2;box-shadow:0 19px 45px rgba(13,49,75,.21)!important}
html body.dh-collage-v11 .booking-head{padding:14px 17px}
html body.dh-collage-v11 .booking-head h2{font-size:21px!important;margin:0!important}
html body.dh-collage-v11 .booking-body{padding:17px}
html body.dh-collage-v11 .booking-form-grid input,html body.dh-collage-v11 .booking-form-grid select{border-radius:8px;min-height:40px!important}
html body.dh-collage-v11 .dh-theme-main h1{font-size:clamp(28px,3.5vw,42px)!important;line-height:1.08!important}
html body.dh-collage-v11 :is(.dh-theme-main,.dh-page-shell) p{font-size:14px;line-height:1.55}
html body.dh-collage-v11 :is(.dh-theme-main,.dh-page-shell) :is(input,select,textarea){min-height:43px!important;font-size:13px!important;border-radius:9px!important}
/* Tight cohesive 4-column footer, not the oversized floating grid. */
html body.dh-collage-v11 .dh-studio-footer{background:#113a4b!important;margin-top:23px!important;padding:28px max(32px,calc((100vw - 1280px)/2)) 18px!important;border-top:3px solid #007f98!important;color:#dae7ed!important}
html body.dh-collage-v11 .dh-studio-footer-inner{max-width:1280px;margin:0 auto;display:grid!important;grid-template-columns:1.25fr .82fr .95fr 1.15fr!important;gap:30px;align-items:start!important}
html body.dh-collage-v11 .dh-studio-footer-brand img{width:164px!important;max-width:100%;height:auto;margin:0 0 9px!important}
html body.dh-collage-v11 .dh-studio-footer :is(h3){margin:0 0 12px!important;color:#fff!important;font-size:12px!important;font-weight:780;text-transform:uppercase;letter-spacing:.07em}
html body.dh-collage-v11 .dh-studio-footer :is(p,a,button){font-size:11px!important;color:#d3e1e8!important;line-height:1.65!important}
html body.dh-collage-v11 .dh-studio-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
html body.dh-collage-v11 .dh-studio-footer-links a,html body.dh-collage-v11 .dh-studio-privacy-trigger{display:block;background:none!important;border:none!important;padding:0!important;min-height:0!important;text-align:left;text-decoration:none;cursor:pointer}
html body.dh-collage-v11 .dh-studio-footer-bottom{max-width:1280px;border-top:1px solid rgba(255,255,255,.18);margin:24px auto 0!important;padding:13px 0 0;color:#afc6d1;font-size:10px}
html body.dh-collage-v11.dh-studio-privacy-ready :is(.cky-btn-revisit-wrapper,#cookie-law-info-again,#cmplz-manage-consent,.cc-revoke,.osano-cm-widget,#ot-sdk-btn-floating){display:none!important}
/* Medium screens: preserve usability instead of squashing five 1-line controls. */
@media(max-width:1050px) and (min-width:761px){
 html body.dh-collage-v11 .dhcs-global-links{gap:12px}
 html body.dh-collage-v11 .dhcs-global-links a{font-size:11px}
 html body.dh-collage-v11.dh-studio-home .live-search-grid{grid-template-columns:1.7fr 1fr 1fr!important}
 html body.dh-collage-v11.dh-studio-home .dh-v8-guest-select{grid-column:1/2!important}
 html body.dh-collage-v11.dh-studio-home .live-search-submit{grid-column:2/4!important}
 html body.dh-collage-v11 .location-hotel-card{grid-template-columns:170px minmax(0,1fr) 145px!important}
}
@media(max-width:760px){
 html body.dh-collage-v11{padding-bottom:0}
 html body.dh-collage-v11 .wrap{width:calc(100% - 26px)!important}
 html body.dh-collage-v11 .dhcs-global-nav{height:64px!important;min-height:64px!important;width:calc(100% - 26px)!important}
 html body.dh-collage-v11 .dhcs-global-logo img{width:155px!important;height:49px!important;max-width:155px!important}
 html body.dh-collage-v11 .dhcs-global-links,html body.dh-collage-v11 .dh-studio-header-account,html body.dh-collage-v11 .dh-studio-header-currency{display:none!important}
 html body.dh-collage-v11 .dh-studio-header-search{display:none!important}
 html body.dh-collage-v11.dh-studio-home .search-first-hero{height:294px!important;min-height:294px!important;background-position:center center!important}
 html body.dh-collage-v11.dh-studio-home .search-first-layout{padding:24px 0 0!important}
 html body.dh-collage-v11.dh-studio-home .search-first-copy{width:100%;text-align:center}
 html body.dh-collage-v11.dh-studio-home .search-first-copy h1{font-size:29px!important;line-height:1.07!important;max-width:340px;margin:0 auto 8px!important;text-align:center}
 html body.dh-collage-v11.dh-studio-home .search-first-lead{font-size:12px!important;max-width:310px;margin:0 auto!important;text-align:center}
 html body.dh-collage-v11.dh-studio-home .live-search-section{margin-top:-101px!important}
 html body.dh-collage-v11.dh-studio-home .live-search-shell{border-radius:14px!important;padding:10px 10px 12px!important}
 html body.dh-collage-v11.dh-studio-home .search-mode-toggle{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;margin:0 0 8px!important;padding:3px!important}
 html body.dh-collage-v11.dh-studio-home .search-mode-btn{padding:8px 4px!important;font-size:11px;min-width:0;min-height:34px!important}
 html body.dh-collage-v11.dh-studio-home .live-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 html body.dh-collage-v11.dh-studio-home .live-search-grid>.hotel-name{grid-column:1/-1}
 html body.dh-collage-v11.dh-studio-home .live-field>label{font-size:9px!important;margin:0 0 2px!important}
 html body.dh-collage-v11.dh-studio-home .live-field :is(input,select),html body.dh-collage-v11.dh-studio-home .dh-v8-guest-select>summary{height:42px!important;min-height:42px!important;max-height:42px!important;font-size:12px!important}
 html body.dh-collage-v11.dh-studio-home #liveHotelName{padding-left:32px!important}
 html body.dh-collage-v11.dh-studio-home .dh-v8-guest-select{grid-column:1/-1!important}
 html body.dh-collage-v11.dh-studio-home .dh-v8-guest-fields{width:100%;left:0;right:0}
 html body.dh-collage-v11.dh-studio-home .live-search-submit{grid-column:1/-1!important;min-height:42px!important;height:42px!important;font-size:13px!important}
 html body.dh-collage-v11.dh-studio-home .dh-collage-advanced{top:-43px!important;right:4px!important}
 html body.dh-collage-v11.dh-studio-home .dh-collage-advanced>summary{font-size:0!important;width:25px;height:28px;background:#fff;border:0}
 html body.dh-collage-v11.dh-studio-home .dh-collage-advanced>summary>span{font-size:21px!important}
 html body.dh-collage-v11.dh-studio-home .popular-hotel-card{flex:0 0 min(94%,350px)!important;width:min(94%,350px)!important}
 html body.dh-collage-v11.dh-studio-home .popular-hotel-media{height:165px!important}
 html body.dh-collage-v11.dh-studio-home .popular-hotel-action{min-height:36px!important}
 html body.dh-collage-v11 .dh-ref-benefits{display:none!important}
 html body.dh-collage-v11 .popular-hotels-section{padding:13px 0!important}
 html body.dh-collage-v11 .popular-hotels-head h2{font-size:19px!important}
 html body.dh-collage-v11 .destination-showcase-section{width:calc(100% - 26px)!important;margin:10px auto 20px!important}
 html body.dh-collage-v11 .dh-studio-results-grid{display:block!important}
 html body.dh-collage-v11 .dh-studio-results-aside{display:none!important}
 html body.dh-collage-v11 .location-hotel-card{grid-template-columns:1fr!important;display:flex!important;flex-direction:column!important;min-height:0!important;max-height:none!important}
 html body.dh-collage-v11 .location-hotel-media{height:200px!important;max-height:none!important;min-height:200px!important;width:100%!important}
 html body.dh-collage-v11 .location-hotel-copy{display:flex;flex-direction:column;padding:11px 13px!important;gap:5px!important}
 html body.dh-collage-v11 .location-hotel-price{border:0!important;border-top:1px solid #e2edf2!important;display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:end!important;padding:10px 12px!important}
 html body.dh-collage-v11 .location-hotel-price strong{font-size:23px!important}
 html body.dh-collage-v11 .location-card-actions{min-width:115px}
 html body.dh-collage-v11.dhcs-hotel-page .hero-grid{grid-template-columns:1fr!important;grid-template-areas:'media' 'summary' 'sidebar'!important}
 html body.dh-collage-v11.dhcs-hotel-page .hero-media{height:228px!important}
 html body.dh-collage-v11.dhcs-hotel-page .dh9-rate-overview{position:static!important;max-height:none!important}
 html body.dh-collage-v11.dhcs-hotel-page .content-grid{grid-template-columns:1fr!important}
 html body.dh-collage-v11.dhcs-hotel-page .rate-grid{grid-template-columns:1fr!important}
 html body.dh-collage-v11 .dh-studio-footer{padding:26px 18px 100px!important;margin-top:18px!important}
 html body.dh-collage-v11 .dh-studio-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 15px!important}
 html body.dh-collage-v11 .dh-studio-footer-brand,html body.dh-collage-v11 .dh-studio-footer-company{grid-column:1/-1!important}
 html body.dh-collage-v11 .dh-studio-footer-brand img{width:145px!important}
 html body.dh-collage-v11 .dh-ref-bottom-nav{z-index:700!important;min-height:61px}
}
/* Booking management and contact screens have separate inline styles; normalise
   their type scales so they cannot inherit giant marketing-hero typography. */
html body.dh-collage-v11.dhopt2-utility .hero{padding:36px 0 12px!important}
html body.dh-collage-v11.dhopt2-utility .hero h1{font-size:clamp(31px,3.4vw,47px)!important;line-height:1.1!important;letter-spacing:-.04em!important;margin:9px 0 10px!important}
html body.dh-collage-v11.dhopt2-utility .hero .lead{font-size:14px!important;line-height:1.55!important;max-width:760px!important;margin:0!important}
html body.dh-collage-v11.dhopt2-utility .hero .eyebrow{font-size:10px;letter-spacing:.1em;color:#007c94}
html body.dh-collage-v11.dhopt2-utility .panel{box-shadow:0 7px 27px rgba(16,61,82,.06)!important;border:1px solid #e0ebf0!important;border-radius:14px!important;padding:21px!important}
html body.dh-collage-v11.dhopt2-utility .panel .field label{font-size:11px!important}
html body.dh-collage-v11.dhopt2-utility .panel button.primary{height:43px!important;min-height:43px!important;border-radius:8px!important;font-size:12px!important}
html body.dh-collage-v11.dhopt2-utility .dh-privacy-notice{padding:12px!important;font-size:11px;line-height:1.5;border-radius:9px}
@media (min-width:1051px){
 html body.dh-collage-v11.dhcs-hotel-page .content-grid{max-width:978px!important;width:calc(min(100vw - 76px, 1280px) - 302px)!important;margin-left:max(38px,calc((100vw - 1280px)/2))!important;margin-right:auto!important}
}
@media(max-width:760px){
 /* No floating plus badge over the Transfers tab. The advanced selector is
    accessible below the search button and opens its own dropdown. */
 html body.dh-collage-v11.dh-studio-home .dh-collage-advanced{position:relative!important;top:auto!important;right:auto!important;grid-column:1/-1!important;order:20!important;width:100%!important;margin:0!important;text-align:right}
 html body.dh-collage-v11.dh-studio-home .dh-collage-advanced>summary{display:inline-flex!important;width:auto!important;height:21px!important;font-size:10px!important;border:0!important;padding:1px 4px!important;background:transparent!important}
 html body.dh-collage-v11.dh-studio-home .dh-collage-advanced>summary span{font-size:13px!important}
 html body.dh-collage-v11.dh-studio-home .live-search-submit{order:10!important}
 html body.dh-collage-v11.dh-studio-home .dh-collage-advanced .dh-search-advanced-fields{top:calc(100% + 4px);left:auto;right:0;max-width:100%}
 html body.dh-collage-v11.dhopt2-utility .hero{padding:24px 0 10px!important}
 html body.dh-collage-v11.dhopt2-utility .hero h1{font-size:30px!important}
 html body.dh-collage-v11.dhopt2-utility .panel{padding:14px!important}
 html body.dh-collage-v11.dhcs-hotel-page .content-grid{margin-left:auto!important;margin-right:auto!important}
}


/* DH_MOBILE_SEARCH_VIEWPORT_FIX_V1 */
@media (max-width: 767px) {

  html,
  body {
    max-width: 100%;
    overflow-x: clip;
  }

  body.dh-studio-home .search-first-hero,
  body.dh-studio-home .search-first-hero *,
  body.dh-studio-home .search-first-hero *::before,
  body.dh-studio-home .search-first-hero *::after {
    box-sizing: border-box;
  }

  body.dh-studio-home .search-first-hero form,
  body.dh-studio-home .search-first-hero input,
  body.dh-studio-home .search-first-hero select,
  body.dh-studio-home .search-first-hero textarea {
    max-width: 100%;
    min-width: 0;
  }

  body.dh-studio-home .search-first-hero input,
  body.dh-studio-home .search-first-hero select {
    font-size: 16px;
  }

  body.dh-studio-home .search-first-hero :is(
    .search-form,
    .search-fields,
    .search-field,
    .search-box,
    .form-row,
    .form-group
  ) {
    min-width: 0;
    max-width: 100%;
  }

  body.dh-studio-home .search-first-hero :is(
    input,
    select,
    textarea
  ):focus {
    scroll-margin-top: 120px;
    scroll-margin-bottom: 180px;
  }
}

/* DH_MOBILE_SEARCH_INSET_FOCUS_RING_V1 */
@media (max-width: 767px) {
  html body.dh-studio-home #liveSearchEngine
  .live-field :is(input, select, textarea):focus,
  html body.dh-studio-home #liveSearchEngine
  .live-field :is(input, select, textarea):focus-visible,
  html body.dh-studio-home #liveSearchEngine
  .dh-v8-guest-select > summary:focus,
  html body.dh-studio-home #liveSearchEngine
  .dh-v8-guest-select > summary:focus-visible {
    box-sizing: border-box !important;
    max-width: 100% !important;
    transform: none !important;
    outline: none !important;
    outline-offset: 0 !important;
    border-color: rgba(6, 175, 193, .7) !important;
    box-shadow: inset 0 0 0 2px rgba(6, 175, 193, .38) !important;
  }
}


/* DH_HIDE_LATEST_PRICES_BEATEN_V1 */
#popular-hotels,
.popular-hotels-section,
a[href="#popular-hotels"],
a[href="#popularHotelsGrid"] {
    display: none !important;
}
