/* APD 788. Narrow scope: discovery rails, service detail and its location sheet. */
html body #main-content.apd40-home .apd30-show-all-card{display:flex!important;flex-direction:column!important;flex:0 0 220px;min-width:0!important;align-self:flex-start;color:#222;text-decoration:none;scroll-snap-align:start}
html body #main-content.apd40-home .apd30-show-all-collage{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;position:relative!important;aspect-ratio:1.04/1!important;width:100%!important;height:auto!important;min-height:0!important;gap:3px!important;overflow:hidden!important;border-radius:16px!important;background:#f2f2f2}
html body #main-content.apd40-home .apd30-show-all-collage img{display:block!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-height:100%!important;object-fit:cover!important;margin:0!important;border:0!important}
html body #main-content.apd40-home .apd30-show-all-collage img:first-child{grid-row:1/3!important}
html body #main-content.apd40-home .apd30-show-all-card>strong{display:block;margin:8px 0 0!important;line-height:1.3!important;text-align:center;font-size:14px;color:#222}
@media(max-width:767px){
  html body #main-content.apd40-home{--apd788-side:16px;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
  html body #main-content.apd40-home .apd130-return{width:100%!important;max-width:100%!important;margin:20px 0 26px!important;padding:0!important;box-sizing:border-box!important}
  html body #main-content.apd40-home #apd130-return-title{margin:0 0 14px!important;padding:0 var(--apd788-side)!important;font-size:21px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important;box-sizing:border-box!important}
  html body #main-content.apd40-home :is(.apd130-return-grid,.apd130-recent-rail,.apd5-card-rail){display:flex!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:4px var(--apd788-side) 12px!important;gap:12px!important;box-sizing:border-box!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-padding-inline:var(--apd788-side)!important;scroll-snap-type:x mandatory!important;overscroll-behavior-x:contain;scrollbar-width:none}
  html body #main-content.apd40-home :is(.apd130-return-grid,.apd130-recent-rail,.apd5-card-rail)::-webkit-scrollbar{display:none}
  html body #main-content.apd40-home .apd130-return-card{box-sizing:border-box!important;min-width:0!important;flex:0 0 90%!important;margin:0!important;scroll-snap-align:start}
  html body #main-content.apd40-home .apd130-return-grid.count-1 .apd130-return-card{flex-basis:100%!important}
  html body #main-content.apd40-home .apd130-return-copy{min-width:0;overflow-wrap:anywhere}
  html body #main-content.apd40-home :is(.apd130-return-copy strong,.apd130-recent-card strong,.apd5-card-title-row h3,.apd5-card-title-row h3 a){white-space:normal!important;overflow-wrap:anywhere!important;text-overflow:clip!important;-webkit-line-clamp:unset!important;height:auto!important;max-height:none!important;line-height:1.3!important}
  html body #main-content.apd40-home .apd5-section-head{width:100%!important;margin-left:0!important;margin-right:0!important;padding-left:var(--apd788-side)!important;padding-right:var(--apd788-side)!important;box-sizing:border-box!important}
  html body #main-content.apd40-home .apd5-card-rail>.apd30-show-all-card{flex:0 0 calc((100vw - 64px)/2)!important;width:calc((100vw - 64px)/2)!important;min-width:calc((100vw - 64px)/2)!important;max-width:calc((100vw - 64px)/2)!important;margin:0!important;padding:0!important}
}

html body.single-apd_service.apd781-service{padding-top:0!important;padding-bottom:0!important;--apd-mobile-nav-height:0px}
html body.single-apd_service.apd781-service #apd5-header,
html body.single-apd_service.apd781-service .apd10-mobile-nav{display:none!important}
html body.single-apd_service.apd781-service :is(.apd267-mobile-nav,.apd271-mobile-nav,.apd264-mobile-nav,.apd7-mobile-nav){display:none!important}
html body.single-apd_service.apd781-service #main-content.apd781-detail{padding-top:0!important;margin-top:0!important}
html body.single-apd_service #main-content .apd781-tools{position:absolute!important;inset:12px 16px auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;width:auto!important;margin:0!important;padding:0!important;z-index:3}
html body.single-apd_service #main-content .apd781-tools>div{display:flex!important;align-items:center!important;gap:10px!important}
html body.single-apd_service #main-content .apd781-tools :is(a,button){position:relative!important;inset:auto!important;display:grid!important;place-items:center!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-height:44px!important;min-width:44px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:#ffffffb8!important;color:#111!important;box-shadow:none!important;filter:none!important;transform:none!important;text-decoration:none!important}
html body.single-apd_service #main-content .apd781-tools :is(a,button)::before,
html body.single-apd_service #main-content .apd781-tools :is(a,button)::after{display:none!important}
html body.single-apd_service #main-content .apd781-tools svg{display:block!important;width:24px!important;height:24px!important;stroke:currentColor!important;stroke-width:1.7!important;fill:none!important;filter:none!important;transform:none!important}
html body.single-apd_service #main-content .apd781-tools .is-favorite{color:#e90063!important}
html body.single-apd_service #main-content .apd781-tools .is-favorite svg{fill:#e90063!important}
html body.single-apd_service #main-content .apd781-booking-bar{z-index:1100!important;bottom:calc(12px + env(safe-area-inset-bottom))!important}
html body.single-apd_service #main-content .apd781-offer-body{min-width:0;overflow-wrap:anywhere}
html body.single-apd_service #main-content .apd781-offer-price>span{white-space:normal}
@media(max-width:767px){
  html body.single-apd_service #main-content .apd781-booking-bar{left:16px!important;right:16px!important;grid-template-columns:minmax(0,1fr) minmax(112px,38%)!important;gap:10px!important;padding:8px 8px 8px 20px!important}
  html body.single-apd_service #main-content .apd781-booking-bar>[data-apd237-open]{font-size:19px!important;white-space:normal!important;padding:10px 14px!important}
  html body.single-apd_service #main-content .apd781-intro h1{font-size:28px!important;line-height:1.15!important}
}
@media(max-width:360px){html body.single-apd_service #main-content .apd781-booking-bar{left:10px!important;right:10px!important;padding-left:14px!important;gap:8px!important;grid-template-columns:minmax(0,1fr) 104px!important}html body.single-apd_service #main-content .apd781-booking-bar>[data-apd237-open]{font-size:17px!important}}

/* Keep the native dialog above the page, and within the keyboard's visible area. */
html body.single-apd_service.apd781-service #apd782-contact[data-panel="place"]{top:var(--apd788-viewport-top,0px)!important;bottom:auto!important;height:var(--apd788-viewport-height,100dvh)!important;max-height:var(--apd788-viewport-height,100dvh)!important;margin:0 auto!important;border-radius:0!important}
html body.single-apd_service #apd782-contact[data-panel="place"] .apd782-header{flex:0 0 64px!important;height:64px!important}
html body.single-apd_service #apd782-contact[data-panel="place"] .apd782-scroll{padding:16px 24px 24px!important;scroll-padding-top:80px}
html body.single-apd_service #apd782-contact[data-panel="place"] .apd782-search{position:sticky!important;top:0!important;z-index:2;display:flex!important;align-items:center!important;height:56px!important;min-height:56px!important;width:100%!important;margin:0!important;padding:0 16px!important;gap:12px!important;border:1px solid #ddd!important;border-radius:32px!important;background:#fff!important;overflow:hidden!important;box-sizing:border-box!important}
html body.single-apd_service #apd782-contact[data-panel="place"] .apd782-search:focus-within{border-color:#777!important;box-shadow:0 0 0 1px #777!important}
html body.single-apd_service #apd782-contact #apd782-place-search,
html body.single-apd_service #apd782-contact #apd782-place-search:focus,
html body.single-apd_service #apd782-contact #apd782-place-search:focus-visible{display:block!important;position:static!important;flex:1 1 0%!important;width:0!important;min-width:0!important;max-width:100%!important;height:52px!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;outline:none!important;box-shadow:none!important;border-radius:0!important;background:transparent!important;color:#222!important;-webkit-text-fill-color:#222!important;font:400 18px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;appearance:none!important;-webkit-appearance:none!important}
html body.single-apd_service #apd782-contact .apd782-search>svg{flex:0 0 24px!important;width:24px!important;height:24px!important}
html body.single-apd_service #apd782-contact .apd782-search [data-apd782-clear-place]{flex:0 0 26px!important;width:26px!important;height:26px!important;padding:5px!important;background:#eee!important;color:#222!important}
html body.single-apd_service #apd782-contact .apd782-search [data-apd782-clear-place] svg{width:16px!important;height:16px!important}
html body.single-apd_service #apd782-contact .apd782-place{min-height:74px;gap:14px!important;padding:10px 0!important;white-space:normal!important}
html body.single-apd_service #apd782-contact .apd782-place>span:first-child{width:48px!important;height:48px!important;border-radius:14px!important;background:#f7f7f7!important}
html body.single-apd_service #apd782-contact .apd782-place strong{font-size:18px!important;line-height:1.3!important;font-weight:500!important;overflow-wrap:anywhere}
html body.single-apd_service #apd782-contact .apd782-place small{font-size:15px!important;line-height:1.35!important;overflow-wrap:anywhere}
html body.single-apd_service #apd782-contact .apd782-search-status:empty{display:none!important}
html body.single-apd_service #apd782-contact #apd782-places{margin-top:18px}
html body.single-apd_service #apd782-contact .apd788-places-attribution{font-size:11px;margin:14px 0;color:#666;text-align:right}
@media(min-width:800px){html body.single-apd_service.apd781-service #apd782-contact[data-panel="place"]{top:24px!important;max-height:calc(100dvh - 48px)!important;border-radius:24px!important;height:min(850px,calc(100dvh - 48px))!important}}
@media(max-width:360px){html body.single-apd_service #apd782-contact[data-panel="place"] .apd782-scroll{padding-left:16px!important;padding-right:16px!important}}

/* One interactive Google map, moved into a dialog when expanded. */
html body.single-apd_service .apd788-map-wrap{position:relative;width:100%;aspect-ratio:1/1;margin:24px 0 14px;border-radius:24px;overflow:hidden;background:#f1f0ed;isolation:isolate}
html body.single-apd_service .apd788-map-canvas,
html body.single-apd_service .apd788-map-fallback{position:absolute;inset:0;width:100%;height:100%;border:0;margin:0;border-radius:inherit}
html body.single-apd_service .apd788-map-canvas{visibility:hidden}
html body.single-apd_service .apd788-map-wrap.is-ready .apd788-map-canvas{visibility:visible}
html body.single-apd_service .apd788-map-wrap.is-ready .apd788-map-fallback{display:none}
html body.single-apd_service .apd788-map-canvas img{max-width:none!important;max-height:none!important}
html body.single-apd_service .apd788-map-expand{position:absolute!important;top:16px;right:16px;width:44px!important;height:44px!important;min-width:0!important;min-height:0!important;padding:11px!important;border:0!important;border-radius:50%!important;display:grid;place-items:center;background:#fff!important;color:#222!important;box-shadow:0 4px 16px #0002!important;z-index:2}
html body.single-apd_service .apd788-map-expand svg{width:22px;height:22px}
html body.single-apd_service :is(.apd788-map-expand,[data-apd788-map-retry])[hidden]{display:none!important}
html body.single-apd_service .apd788-map-pin{position:absolute;transform:translate(-50%,-100%);width:42px;height:48px;filter:drop-shadow(0 3px 3px #0005);pointer-events:none}
html body.single-apd_service .apd788-map-pin svg{display:block;width:42px!important;height:48px!important}
html body.single-apd_service p.apd788-map-status{font:400 13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#717171;margin:8px 0}
html body.single-apd_service #apd788-map-dialog{position:fixed;inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:#fff;color:#222;overflow:hidden}
html body.single-apd_service #apd788-map-dialog:not([open]){display:none!important}
html body.single-apd_service #apd788-map-dialog[open]{display:flex;flex-direction:column}
html body.single-apd_service #apd788-map-dialog>header{display:flex;align-items:center;gap:16px;padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));flex:none}
html body.single-apd_service #apd788-map-dialog>header button{display:grid;place-items:center;border:0;border-radius:50%;background:#f7f7f7;color:#222;width:44px;height:44px;padding:10px}
html body.single-apd_service #apd788-map-dialog>header svg{width:24px;height:24px}
html body.single-apd_service #apd788-map-dialog [data-apd788-map-slot]{flex:1;min-height:0}
html body.single-apd_service #apd788-map-dialog .apd788-map-wrap{height:100%;aspect-ratio:auto;margin:0;border-radius:0}
html body.single-apd_service #apd788-map-dialog .apd788-map-expand{display:none}
html body.apd788-map-open{position:fixed!important;top:var(--apd788-scroll,0px)!important;left:0;right:0;overflow:hidden!important}
html body.apd788-map-open :is(.apd781-booking-bar,#apd782-prompt,#apd782-receipt){visibility:hidden!important}
