/* V50: artwork belongs to the complete page canvas, not a viewport pseudo-element. */
html body.outmaps-framing-v50[class][class][class]{display:flex!important;flex-direction:column!important;position:relative!important;isolation:isolate!important;min-height:100vh!important;min-height:100dvh!important;height:auto!important;margin:0!important;padding:0!important}
html body.outmaps-framing-v50[class][class][class]>.theme-content{position:relative!important;z-index:1!important;flex:1 0 auto!important;min-height:calc(100vh - var(--outmaps-framing-footer-height,40px))!important;min-height:calc(100dvh - var(--outmaps-framing-footer-height,40px))!important;margin:0!important;background-color:var(--theme-bg,#dceefa)!important;background-image:var(--theme-image)!important;background-size:cover!important;background-position:center bottom!important;background-repeat:no-repeat!important}
html body.outmaps-framing-v50.outmaps-background-ready[class][class]::before{display:none!important;content:none!important}
html body.outmaps-framing-v50[class][class][class] .theme-content>header,
html body.outmaps-framing-v50[class][class][class] .theme-content>header .header-inner,
html body.outmaps-framing-v50[class][class][class] .theme-content>header .header-inner>img,
html body.outmaps-framing-v50[class][class][class] .theme-content>header .brand{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
html body.outmaps-framing-v50[class][class][class]>.site-footer{position:relative!important;inset:auto!important;z-index:2!important;margin:0!important;flex-shrink:0!important}
@media print{html body.outmaps-framing-v50[class][class][class]>.theme-content{background:white!important}}

/* Site-wide rule: keep artwork proportional and continuous behind the header. */
html body.outmaps-framing-v50[class][class][class]>.theme-content{width:100%!important;max-width:none!important;box-sizing:border-box!important;background-size:cover!important;background-position:center bottom!important;background-repeat:no-repeat!important;background-attachment:scroll!important;border-top:0!important;padding-top:0!important}
html body.outmaps-framing-v50[class][class][class] .theme-content>header{background-color:transparent!important;background-image:none!important;margin-top:0!important}

html body.outmaps-beach-chairs .theme-content>.outmaps-deckchairs{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden;}
.outmaps-deckchairs[hidden]{display:none!important;}
.outmaps-deckchairs img{position:absolute;height:auto;object-fit:contain;bottom:2%;}
.outmaps-deckchairs .chair-left{left:3%;width:clamp(95px,16vw,320px);}
.outmaps-deckchairs .chair-right{right:3%;width:clamp(65px,9vw,180px);bottom:5%;}
html body.outmaps-beach-chairs .theme-content>header,html body.outmaps-beach-chairs .theme-content>main{position:relative;z-index:1;}
html body.outmaps-framing-v50[class][class][class] .theme-content>main:not(.map-shell):not(.map-finder-main){background-color:rgba(255,255,255,.8)!important;opacity:1!important;}
html body.outmaps-framing-v50[class][class][class] .advertiser-public,html body.outmaps-framing-v50[class][class][class] .contributor-panel{background-color:rgba(255,255,255,.8)!important;opacity:1!important;}

/* Soft contact shadows on the sand beneath the chair feet. */
.outmaps-deckchairs::before,.outmaps-deckchairs::after{content:"";position:absolute;pointer-events:none;background:radial-gradient(ellipse at center,rgba(38,34,25,.52) 0%,rgba(38,34,25,.30) 36%,rgba(38,34,25,0) 72%);border-radius:50%;filter:blur(3px);transform:translateY(50%);}
.outmaps-deckchairs::before{left:3%;bottom:2%;width:clamp(95px,16vw,320px);height:clamp(12px,2.4vw,46px);}
.outmaps-deckchairs::after{right:3%;bottom:5%;width:clamp(65px,9vw,180px);height:clamp(9px,1.5vw,28px);}
.outmaps-deckchairs img{z-index:1;}

/* Shadows are inside each chair SVG and share its coordinate system. */
.outmaps-deckchairs::before,.outmaps-deckchairs::after{display:none!important;content:none!important;}

/* One transparent header, matching the Where to Eat page. */
html body.outmaps-unified[class][class][class] header,html body.outmaps-unified[class][class][class] header .header-inner,html body.outmaps-unified[class][class][class] header nav.site-nav{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;border-radius:0!important}
html body.outmaps-unified[class][class][class] header{position:relative!important;z-index:1000!important;overflow:visible!important;padding:10px 0!important}
html body.outmaps-unified[class][class][class] header .header-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:calc(100% - 40px)!important;max-width:1080px!important;margin:0 auto!important;padding:10px 16px!important;box-sizing:border-box!important}
html body.outmaps-unified[class][class][class] header .header-inner>img,html body.outmaps-unified[class][class][class] header .header-inner>a>img{display:block!important;width:clamp(230px,24vw,330px)!important;height:auto!important;background:none!important;box-shadow:none!important;filter:none!important}
html body.outmaps-unified[class][class][class] header nav.site-nav{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;overflow:visible!important;margin:0!important;padding:0!important;width:auto!important}
html body.outmaps-unified[class][class][class] header nav.site-nav>a,html body.outmaps-unified[class][class][class] header nav.site-nav .nav-menu>summary{font:700 18px/1.25 Arial,Helvetica,sans-serif!important;padding:10px 14px!important;min-height:44px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--outmaps-header-ink,#173c4e)!important;text-shadow:none!important;text-transform:none!important;text-decoration:none!important;cursor:pointer}
html body.outmaps-unified[class][class][class] header nav.site-nav>a:hover,html body.outmaps-unified[class][class][class] header nav.site-nav .nav-menu>summary:hover{background:transparent!important;text-decoration:underline!important;text-underline-offset:5px}
html body.outmaps-unified[class][class][class] header nav.site-nav .nav-submenu{background:rgba(255,255,255,.95)!important;color:#173c4e!important;border:1px solid #173c4e30!important;border-radius:8px!important;box-shadow:0 8px 22px #0002!important;min-width:240px!important;z-index:1100!important}
html body.outmaps-unified[class][class][class] header nav.site-nav .nav-submenu>a,html body.outmaps-unified[class][class][class] header nav.site-nav .nav-group-label{color:#173c4e!important;background:transparent!important;text-shadow:none!important;font:700 16px/1.3 Arial,Helvetica,sans-serif!important;text-transform:none!important}
html body.outmaps-unified[class][class][class] header nav.site-nav .nav-submenu>a:hover{background:#173c4e12!important}
html body.outmaps-unified[class][class][class] header nav.site-nav a:focus-visible,html body.outmaps-unified[class][class][class] header nav.site-nav summary:focus-visible{outline:2px solid currentColor!important;outline-offset:3px!important}
@media(max-width:850px){html body.outmaps-unified[class][class][class] header .header-inner{flex-wrap:wrap!important;justify-content:center!important}html body.outmaps-unified[class][class][class] header nav.site-nav{justify-content:center!important;gap:3px!important}html body.outmaps-unified[class][class][class] header nav.site-nav>a,html body.outmaps-unified[class][class][class] header nav.site-nav .nav-menu>summary{font-size:16px!important;padding:10px!important}}
@media(max-width:480px){html body.outmaps-unified[class][class][class] header .header-inner{width:calc(100% - 20px)!important;padding:8px 0!important}html body.outmaps-unified[class][class][class] header .header-inner>img{width:220px!important}html body.outmaps-unified[class][class][class] header nav.site-nav>a,html body.outmaps-unified[class][class][class] header nav.site-nav .nav-menu>summary{font-size:14px!important;padding:10px 7px!important}html body.outmaps-unified[class][class][class] header .nav-menu:last-child .nav-submenu{left:auto!important;right:0!important}}
/* Keep the entry homepage's large centred branding. */
html body.coming-soon-page header .header-inner{justify-content:center!important;max-width:760px!important;width:90%!important;padding:0!important}
html body.coming-soon-page header .header-inner>img{width:100%!important;max-width:760px!important}
html body:has(>footer.om-guide-footer){padding-bottom:0!important}
html body.outmaps-beach-chairs .theme-content> :not(.outmaps-deckchairs){position:relative;z-index:1}

html body.outmaps-unified[class][class][class] header .nav-menu{position:relative!important}html body.outmaps-unified[class][class][class] header .nav-menu>summary{list-style:none!important;display:inline-flex!important;align-items:center!important}html body.outmaps-unified[class][class][class] header .nav-menu>summary::-webkit-details-marker{display:none}html body.outmaps-unified[class][class][class] header .nav-menu>summary::after{content:"⌄";margin-left:7px;font-size:13px}html body.outmaps-unified[class][class][class] header .nav-menu .nav-submenu{position:absolute!important;top:100%!important;left:0;display:none!important;padding:8px!important}html body.outmaps-unified[class][class][class] header .nav-menu[open] .nav-submenu{display:flex!important;flex-direction:column!important}html body.outmaps-unified[class][class][class] header .nav-menu .nav-submenu>a{display:block!important;padding:10px 12px!important;text-decoration:none!important}html body.outmaps-unified[class][class][class] header .nav-group-label{display:block!important;padding:12px!important;border-top:1px solid #173c4e20!important}
