/* Ocean: reference measurements, concept identity, locally owned interactions. */
html{scroll-behavior:smooth}body{overflow-x:hidden}.elementor-invisible{visibility:visible!important}.content-wrap{overflow:clip}#stickyheader{position:fixed!important;top:0;left:0;width:100%!important;z-index:50}.ocean-wordmark{display:block;width:100%;height:auto;overflow:visible;color:inherit}.ocean-wordmark text{fill:currentColor}.elementor-66f4d61 .ocean-wordmark{max-height:48px}.elementor-icon svg.ocean-wordmark{fill:none}.ocean-form-status{font-family:latienne-pro,Georgia,serif!important;font-size:16px!important;letter-spacing:0!important;margin-top:12px!important;max-width:38em}.ocean-dialog{border:0;background:#00829a;color:#e2d2c9;padding:80px;max-width:min(960px,95vw);max-height:92dvh;width:90vw;box-shadow:none}.ocean-dialog::backdrop,#ocean-lightbox::backdrop{background:rgb(0 0 0 / .72)}.ocean-dialog h2{font:500 52px/1.1 latienne-pro,Georgia,serif;text-transform:uppercase}.ocean-dialog p{font:400 20px/1.4 latienne-pro,Georgia,serif;max-width:600px}.ocean-close{position:absolute;right:22px;top:14px;font:300 40px/1 latienne-pro,serif!important;border:0!important;background:none!important;color:inherit!important;padding:8px!important;cursor:pointer}.ocean-dialog nav{display:flex;flex-direction:column;gap:14px}.ocean-dialog nav a{font:500 42px/1.1 latienne-pro,serif;text-transform:uppercase;text-decoration:none;width:fit-content}.ocean-dialog nav a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.ocean-nav-social{display:flex;gap:25px;font:400 20px latienne-pro,serif;margin-top:35px}.ocean-outline{display:inline-block;border:1px solid currentColor;padding:12px 20px;text-transform:uppercase;letter-spacing:3px;font:500 18px latienne-pro,serif;margin-top:20px}.ocean-notice{position:fixed;bottom:0;left:0;width:100%;z-index:45;background:#689c75;color:#0d5464;display:flex;align-items:stretch;min-height:77px;font:400 18px/1.35 latienne-pro,Georgia,serif;box-shadow:0 -1px 0 #689c75}.ocean-notice>div{display:flex;align-items:center;gap:24px;padding:12px 16px;flex:1}.ocean-notice-title{font-size:24px;font-weight:500;white-space:nowrap;border-right:1px solid #0d546433;padding-right:24px}.ocean-notice p{margin:0;font-size:17px;max-width:700px}.ocean-notice button{border:0;background:none;border-radius:0;color:inherit;min-width:38px;font:300 45px latienne-pro,serif;padding:0 10px;cursor:pointer}.ocean-notice button:hover{background:#0d546418}.ocean-notice .ocean-notice-close{background:#0a5640;color:#e2d2c9;min-width:49px;font-size:40px}.elementor-gallery__container{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;height:auto!important}.e-gallery-item{position:relative!important;display:block;inset:auto!important;width:auto!important;aspect-ratio:1;transform:none!important;overflow:hidden}.e-gallery-image{position:absolute;inset:0;background-position:center;background-size:cover;transition:transform .5s}.e-gallery-item:hover .e-gallery-image{transform:scale(1.035)}#ocean-lightbox{padding:0;border:0;background:#071d21;max-width:96vw;width:96vw;height:94dvh;max-height:94dvh;color:#fff;overflow:hidden}#ocean-lightbox>img{width:100%;height:100%;object-fit:contain}#ocean-lightbox>button{position:absolute;border:0;background:#0005;color:white;border-radius:0;font-size:40px;z-index:2}.ocean-lightbox-prev{left:0;top:48%}.ocean-lightbox-next{right:0;top:48%}.ocean-tabs{display:flex;justify-content:center;gap:50px;flex-wrap:wrap;border-bottom:1px solid #00829a40;margin:20px 0 60px;padding-bottom:20px}.ocean-tabs button{font:500 25px/1.2 metallophile-sp8,sans-serif;text-transform:uppercase;color:#00829a;background:none;border:0;padding:10px 0;border-radius:0;cursor:pointer}.ocean-tabs button[aria-selected=true]{text-decoration:underline;text-underline-offset:10px}.ocean-menu-columns{display:grid;grid-template-columns:1fr 1fr;gap:80px;text-align:left}.ocean-menu-category h3,.ocean-dessert-note h3{font:500 40px/1.15 metallophile-sp8,sans-serif;color:#cd7b29;margin-bottom:35px;text-transform:uppercase}.ocean-dish{margin:0 0 30px;color:#00829a}.ocean-dish>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.ocean-dish h4,.ocean-dish span{font:500 22px/1.3 latienne-pro,Georgia,serif;margin:0 0 8px}.ocean-dish h4{text-transform:uppercase}.ocean-dish p,.ocean-menu-extra,.ocean-dessert-note p{font:400 20px/1.4 latienne-pro,Georgia,serif;color:#00829a}.ocean-menu-extra{text-align:center;margin:30px 0 50px}.ocean-dessert-note{max-width:600px;margin:0 auto 100px;text-align:center}[role=tabpanel][hidden]{display:none!important}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:5px}.ocean-demo-form button{cursor:pointer}
@media(max-width:1024px){.ocean-menu-columns{gap:40px}.ocean-notice-title{font-size:21px}.ocean-notice p{font-size:15px}.ocean-notice>div{gap:18px}.ocean-notice-title{padding-right:18px}.elementor-gallery__container{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}}
@media(max-width:767px){.ocean-dialog{padding:65px 25px 35px;max-height:96dvh}.ocean-dialog nav a{font-size:32px}.ocean-dialog h2{font-size:36px}.ocean-dialog p{font-size:18px}.ocean-notice{min-height:76px}.ocean-notice>div{display:block;padding:10px 12px}.ocean-notice-title{font-size:19px;border:0;padding:0;white-space:normal}.ocean-notice p{font-size:13px;line-height:1.15;margin-top:4px}.ocean-notice button{min-width:22px;padding:0 5px;font-size:32px}.ocean-notice .ocean-notice-close{min-width:30px;font-size:30px}.ocean-menu-columns{grid-template-columns:1fr;gap:25px}.ocean-tabs{gap:25px;margin-bottom:40px}.ocean-tabs button{font-size:22px}.ocean-menu-category h3{font-size:32px}.ocean-dish h4,.ocean-dish span{font-size:20px}.ocean-dish p{font-size:18px}.elementor-gallery__container{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

#ocean-lightbox .ocean-close{background:#071d21!important;width:48px;height:48px;border-radius:50%!important}.ocean-wine-group{font:500 22px/1.3 metallophile-sp8,sans-serif;color:#cd7b29;margin:20px 0 30px;text-transform:uppercase}
/* Keep menu text legible on the reference's deep-green panel. */
#menu-tabs,#menu-tabs>.elementor-widget-container,#menu-tabs .elementor-tabs{width:100%!important;max-width:100%!important;min-width:0}
.ocean-menu-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.ocean-menu-category{min-width:0}
.ocean-tabs{border-bottom-color:#e2d2c940}.ocean-tabs button,.ocean-dish,.ocean-dish h4,.ocean-dish span,.ocean-dish p,.ocean-menu-extra,.ocean-dessert-note p{color:#e2d2c9}
.ocean-wine-group{color:#cd7b29}
@media(max-width:767px){.ocean-menu-columns{grid-template-columns:minmax(0,1fr)}}
/* Ocean concept: local assets, inert business controls, and directional header. */
#stickyheader.ocean-header-hidden{transform:translateY(-115%)!important;pointer-events:none}
#stickyheader.ocean-header-shown{transform:translateY(0)!important;pointer-events:auto}
#stickyheader{transition:transform .35s ease!important;will-change:transform}
.ocean-static-control{cursor:default!important;text-decoration:none}
.elementor-social-icon svg,.ocean-nav-social svg{width:1em;height:1em;display:block;color:inherit}
.elementor-social-icon svg{width:24px;height:24px}
.ocean-nav-social .ocean-static-control{display:inline-flex;color:#e2d2c9}
.ocean-featured-plate{border-radius:50%;aspect-ratio:1;object-fit:cover}
.ocean-footer-monogram{width:100%;height:100%;max-width:34px;fill:currentColor}
#ocean-nav{position:fixed;inset:76px 0 0;margin:0;padding:74px 30px 40px;width:100%;max-width:100%;height:calc(100dvh - 76px);max-height:calc(100dvh - 76px);border:0;background:rgb(13 84 100 / .91);color:#e2d2c9;overflow-y:auto;box-shadow:none;box-sizing:border-box}
#ocean-nav[open]{display:flex;flex-direction:column;align-items:center;animation:ocean-menu-down .45s ease both}
#ocean-nav::backdrop{background:transparent}
#ocean-nav nav{align-items:center;gap:18px;width:100%}
#ocean-nav nav a,#ocean-nav nav>span{font:500 40px/1.2 metallophile-sp8,sans-serif;text-transform:uppercase;color:#e2d2c9;letter-spacing:0;text-align:center;text-decoration:none;padding:0 0 5px;background:none}
#ocean-nav nav a:hover,#ocean-nav nav a[aria-current=page]{color:#cd7b29;background:url('assets/wave-underline.svg') repeat-x bottom left;background-size:90px 6px}
#ocean-nav .ocean-close{top:20px;right:25px;font:300 38px/1 Georgia,serif!important}
#ocean-nav .ocean-nav-social{gap:25px;font-size:25px;margin-top:35px}
@keyframes ocean-menu-down{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}
@media(max-width:767px){#ocean-nav{inset:70px 0 0;height:calc(100dvh - 70px);max-height:calc(100dvh - 70px);padding:65px 20px 30px}#ocean-nav nav{gap:15px}#ocean-nav nav a,#ocean-nav nav>span{font-size:32px}#ocean-nav .ocean-close{top:12px;right:15px}#ocean-nav .ocean-nav-social{margin-top:25px}}
@media(prefers-reduced-motion:reduce){#ocean-nav[open]{animation:none}#stickyheader{transition:none!important}}

.elementor-widget-image img.ocean-featured-plate{border-radius:50%!important;aspect-ratio:1;object-fit:cover!important}

.elementor-social-icon.ocean-static-control{color:#00829a!important}.elementor-43 .elementor-social-icon.ocean-static-control,footer .elementor-social-icon.ocean-static-control{color:#e2d2c9!important}.elementor-social-icon.ocean-static-control svg{color:inherit!important}

/* The original blue plate has its own clean transparent cutout. */
.elementor-widget-image img.ocean-featured-plate{border-radius:0!important;object-fit:contain!important}

/* Responsive interaction polish: keep desktop composition intact. */
#ocean-nav{top:var(--ocean-header-height,76px);height:calc(100dvh - var(--ocean-header-height,76px));max-height:calc(100dvh - var(--ocean-header-height,76px))}
#ocean-nav.ocean-closing{animation:ocean-menu-up .24s ease both;pointer-events:none}
@keyframes ocean-menu-up{to{opacity:0;transform:translateY(-24px)}}
#ocean-lightbox>img{opacity:0;transition:opacity .18s ease;touch-action:pan-y}
#ocean-lightbox>img.ocean-image-ready{opacity:1}
@media(hover:none){.e-gallery-item:hover .e-gallery-image{transform:none}}
@media(max-width:767px){
 body{padding-bottom:var(--ocean-notice-space,0px)}
 #ocean-nav{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));overscroll-behavior:contain}
 #ocean-nav nav a,#ocean-nav nav>span{min-height:44px;display:flex;align-items:center;justify-content:center}
 .ocean-notice{padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:border-box;min-height:80px}
 .ocean-notice>div{min-width:0;padding:10px 8px 10px 12px}
 .ocean-notice button{min-width:36px;min-height:44px;padding:0 4px}
 .ocean-notice .ocean-notice-close{min-width:44px}
 .ocean-notice-title{font-size:18px;line-height:1.2}
 .ocean-notice p{line-height:1.25}
 .ocean-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}
 .ocean-tabs button{min-height:44px;min-width:0;font-size:clamp(17px,5.5vw,22px);letter-spacing:1.5px}
 .ocean-dish h4{min-width:0;overflow-wrap:anywhere}
 .ocean-dish span{flex-shrink:0;white-space:nowrap}
 .e-gallery-item{aspect-ratio:var(--ocean-photo-ratio,1)!important}
 .elementor-gallery__container{gap:0!important}
 #ocean-lightbox{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;inset:0;margin:0;box-sizing:border-box;padding:64px 0 calc(60px + env(safe-area-inset-bottom,0px))}
 #ocean-lightbox>button{min-width:48px;min-height:48px;touch-action:manipulation}
 #ocean-lightbox .ocean-close{top:8px;right:8px}
 .ocean-lightbox-prev,.ocean-lightbox-next{top:auto;bottom:calc(8px + env(safe-area-inset-bottom,0px))}
 .ocean-lightbox-prev{left:calc(50% - 60px)}.ocean-lightbox-next{right:calc(50% - 60px)}
 .ocean-demo-form input,.ocean-demo-form textarea{max-width:100%;box-sizing:border-box;scroll-margin-top:90px}
}
@media(max-width:374px){.ocean-notice p{font-size:12px}.ocean-notice button{min-width:30px}.ocean-notice .ocean-notice-close{min-width:44px}#ocean-nav{padding-top:52px}#ocean-nav nav{gap:8px}#ocean-nav nav a,#ocean-nav nav>span{font-size:29px}}
@media(prefers-reduced-motion:reduce){#ocean-nav.ocean-closing{animation:none}#ocean-lightbox>img{transition:none}}

/* Opening composition and deliberate editorial line breaks. */
.elementor-43 #home-hero{margin-top:calc(var(--ocean-header-height,77px) - 100px)}
.elementor-43 .elementor-element-3a164eb .ocean-about-line{display:block}
@media(max-width:767px){
 .elementor-43 #home-hero{background-size:cover;background-position:center center}
 .elementor-43 .elementor-element-3a164eb{width:min(370px,100%)}
 .elementor-43 .elementor-element-3a164eb h3{font-size:1.75rem;line-height:1.2}
}
